/* Mobile layout; business actions and permission checks remain shared. */
#mobile-more,.catalog-mobile-family{display:none}
textarea{font:inherit;max-width:100%;min-width:0;box-sizing:border-box}
@media(max-width:700px){
  html{scroll-padding-bottom:100px}
  body{overflow-wrap:break-word}
  #app{padding-bottom:calc(86px + env(safe-area-inset-bottom))}
  aside{padding:14px 16px;padding-top:max(14px,env(safe-area-inset-top))}
  aside .brand{letter-spacing:1px}
  .sidebar-foot{top:14px}
  .sidebar-foot button{min-height:44px}
  nav{grid-template-columns:repeat(5,minmax(0,1fr));gap:2px;padding:8px 8px calc(8px + env(safe-area-inset-bottom));overflow:hidden}
  nav [data-page="mappings"],nav [data-page="history"],nav [data-page="settings"],nav [data-page="clients"]{display:none}
  nav button,#mobile-more{display:flex;font-size:11px;min-height:56px;padding:7px 2px;gap:6px}
  nav button span:last-child{overflow-wrap:normal}
  main{padding:18px 14px}
  header{flex-wrap:wrap;gap:10px;margin-bottom:20px}
  header>div{min-width:0;flex:1 1 180px}
  header .pill{max-width:100%;flex:0 1 auto;text-align:left;font-size:9px}
  h1{font-size:25px;line-height:1.2}
  h2{font-size:19px;line-height:1.3}
  h3{line-height:1.3}
  button,input,select,summary{touch-action:manipulation}
  button,summary{min-height:44px}
  input,select,textarea{font-size:16px;max-width:100%}
  input:not([type="checkbox"]),select,textarea{width:100%}
  summary{display:flex;align-items:center;gap:8px}
  summary::before{content:'›';font-size:22px}
  details[open]>summary::before{content:'⌄'}
  form{gap:16px;margin-top:20px}
  .card{min-width:0;padding:16px}
  .card-head{flex-wrap:wrap}
  .help{padding:12px 14px;font-size:13px}
  .empty{padding:20px 8px}
  .settings-actions{display:grid;grid-template-columns:1fr;width:100%}
  .client-card ul{padding-left:18px}
  .client-card li{margin-bottom:12px}
  .client-card li button{display:block;width:100%;margin-top:8px}
  .client-card p,.license-details strong{overflow-wrap:anywhere}
  .license-details{min-width:0}
  .client-store-row{min-width:0}
  .toolbar input{flex-basis:100%;width:100%}
  dialog,#catalog-dialog,#table-dialog,#receipt-dialog,#invitation-dialog,#mobile-menu{
    inset:0;margin:auto;width:100%;max-width:100%;height:100dvh;max-height:100dvh;
    border-radius:0;padding:0 16px calc(22px + env(safe-area-inset-bottom));
    overflow-y:auto;overscroll-behavior:contain;background:#fff;
  }
  dialog .dialog-heading{position:sticky;top:0;padding:calc(14px + env(safe-area-inset-top)) 0 14px;margin-bottom:16px;gap:12px;border-bottom:1px solid var(--border);z-index:3}
  .dialog-heading h2{font-size:18px;min-width:0;overflow-wrap:anywhere;line-height:1.35}
  .dialog-heading>button{flex-shrink:0;padding:10px 12px;min-height:44px}
  .mobile-menu-options{display:grid;gap:12px}
  .mobile-menu-options button{text-align:left;min-height:54px;font-size:16px}
  #mobile-menu{inset:auto 0 0;height:auto;max-height:85dvh;border-radius:20px 20px 0 0}
  #import-description{font-size:12px;line-height:1.6;margin:0 0 12px}
  #bdp-connection>p{font-size:13px;padding:10px 12px;border-radius:10px;background:#edf7f3;margin:10px 0}
  #bdp-connection details{font-size:12px}
  .catalog-tools{gap:10px;margin:18px 0 12px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end}
  .catalog-tools label{min-width:0;grid-column:1 / -1}
  .catalog-tools button{grid-column:2;font-size:12px;padding:10px}
  .catalog-mobile-family{display:grid;grid-column:1 / -1;font-size:13px;margin-bottom:8px}
  .catalog-layout{display:block}
  .catalog-family-panel{display:none}
  #catalog-count{font-size:12px;margin:10px 0}
  .catalog-selected{padding:14px;margin:12px 0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;align-items:center}
  .catalog-selected h3{font-size:18px;margin:5px 0}
  .catalog-selected p{font-size:12px;margin:6px 0}
  .catalog-selected>strong{font-size:23px;white-space:nowrap}
  .catalog-selected .help{grid-column:1 / -1;padding:8px 10px;margin:0;font-size:11px}
  #bdp-price-editor form{margin:16px 0 10px;gap:12px}
  #bdp-price-editor button{min-height:48px;width:100%;font-size:15px}
  #bdp-price-editor .card{padding:14px}
  #bdp-price-editor .card p{font-size:13px}
  #bdp-price-editor .help{font-size:12px}
  .catalog-product-panel .scroll-table{overflow:visible}
  .catalog-product-panel table,.catalog-product-panel tbody{display:block;width:100%}
  .catalog-product-panel thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
  .catalog-product-panel tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 8px;border-bottom:1px solid var(--border);padding:9px 0}
  .catalog-product-panel td{border:0;padding:0;min-width:0;overflow-wrap:anywhere}
  .catalog-product-panel td:first-child{grid-column:1;grid-row:1}
  .catalog-product-panel td:nth-child(2){grid-column:1;grid-row:2;font-size:11px;color:var(--muted);padding:0 10px 4px}
  .catalog-product-panel td:last-child{grid-column:2;grid-row:1 / 3;align-self:center;font-size:15px;font-weight:700;white-space:nowrap;padding-right:4px}
  .catalog-article{padding:9px 8px;min-height:52px;font-size:14px}
  .catalog-article small{font-size:11px}
  #login{min-height:100dvh}
  .login-card{padding:calc(32px + env(safe-area-inset-top)) 24px 32px}
  .login-card .eyebrow{margin-top:42px}
  .login-card h1{font-size:31px}
  .login-card form button{min-height:50px}
}

.live-sections{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 12px}.live-sections button{min-height:44px}.live-sections button[aria-pressed="true"]{background:#007f76;color:white}.live-table summary{display:flex;align-items:center;gap:12px;min-height:52px;cursor:pointer}.live-table summary>span{flex:1;min-width:0}.live-table summary small{display:block;font-size:12px;color:var(--muted);margin-top:6px}.live-table summary>b{font-size:22px;white-space:nowrap}.live-table-lines{margin-top:12px;border-top:1px solid var(--border)}

#bdp-reports-dialog{width:min(1100px,96vw)} .report-filters{display:flex;flex-wrap:wrap;gap:12px;align-items:end}.report-filters label{flex:1;min-width:150px}.report-table{overflow-x:auto}.report-table table{width:100%;border-collapse:collapse}.report-table td,.report-table th{padding:10px;text-align:left;border-bottom:1px solid #ddd}
.report-menu{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 24px;overflow:visible}.report-menu button{display:block;min-height:68px;white-space:normal;background:#eef4f3;color:#18353f;border:1px solid #cadbd7;text-align:center;font-weight:700;padding:12px}.report-menu button[aria-pressed="true"]{background:#007f76;color:white;border-color:#007f76}.report-menu small{display:block;font-size:11px;font-weight:400;margin-top:5px}.report-menu button:focus-visible{outline:3px solid #c48b28;outline-offset:2px}
@media(max-width:700px){.report-menu{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.report-menu button{min-height:62px;font-size:13px}}
@media print{.report-menu{display:none!important}[data-report-section][hidden]{display:none!important}}
@media print{body.printing-bdp>*:not(#bdp-reports-dialog){display:none!important}body.printing-bdp #bdp-reports-dialog{position:static;display:block!important;max-height:none!important;height:auto!important;width:100%!important;max-width:none!important;overflow:visible!important;border:0;padding:0}body.printing-bdp .report-filters,body.printing-bdp .dialog-heading,body.printing-bdp .report-status{display:none!important}body.printing-bdp .report-table{overflow:visible}body.printing-bdp tr,body.printing-bdp .order{break-inside:avoid}body.printing-bdp dialog::backdrop{display:none}}


#bdp-article-dialog .catalog-selected { display:flex; gap:1rem; align-items:center; flex-wrap:wrap; }
#bdp-article-dialog [data-attributes] { margin-top:1.5rem; }
#bdp-article-dialog fieldset { padding:0; border:0; }

.report-filters [hidden]{display:none!important}.quarterly-store{margin-top:28px}.quarterly-store table small{display:block;font-weight:400;font-size:11px;white-space:normal;margin-top:5px}.quarterly-store td:not(:first-child){font-variant-numeric:tabular-nums}.quarterly-store tfoot{font-weight:700;background:#eef4f3}
@media print{.quarterly-store{break-inside:auto}.quarterly-store h3{break-after:avoid}.quarterly-store thead{display:table-header-group}.quarterly-store tfoot{display:table-row-group}.quarterly-store table{font-size:9px}.quarterly-store th,.quarterly-store td{padding:5px}.quarterly-store table small{font-size:8px}}

.quarter-month{margin-top:24px}.quarter-month>h4{text-transform:capitalize;font-size:18px}.quarter-totals{margin:16px 0 26px;padding:14px 18px;border:1px solid #cadbd7;background:#eef4f3;border-radius:8px}.quarter-totals h4{margin:0 0 8px}.quarter-totals p{margin:6px 0}.quarter-document-group+.quarter-document-group{margin-top:36px}
.daily-report-day{margin:22px 0;border-top:2px solid #c9ded8;padding-top:16px}.daily-report-day h4{font-size:19px;margin:8px 0}.daily-report-shift,.daily-report-total{padding:16px;border:1px solid #dce7e3;border-radius:10px;margin:12px 0}.daily-report-day h5{font-size:16px;margin:0 0 12px}.daily-report-total{background:#edf7f3}.daily-payment-list small{display:block;color:#62766f}.daily-report-day .order{gap:12px}.daily-report-day .order strong{white-space:nowrap}@media print{.daily-report-day h4,.daily-report-day h5{break-after:avoid}.daily-report-total{break-inside:avoid}}
