@font-face{font-family:Oswald;src:url('/assets/fonts/oswald-semibold.ttf') format('truetype');font-weight:600;font-display:swap}
@font-face{font-family:'DM Sans';src:url('/assets/fonts/dm-sans-regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:'DM Sans';src:url('/assets/fonts/dm-sans-semibold.ttf') format('truetype');font-weight:600 900;font-display:swap}
:root{color-scheme:light;font-family:'DM Sans',Arial,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);min-width:320px}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.shell{min-height:100dvh}.login-view{min-height:100dvh;display:grid;place-items:center;padding:24px}.login-card{width:min(100%,470px);padding:clamp(24px,6vw,48px);border:1px solid var(--line);border-radius:24px;background:var(--card);box-shadow:0 24px 80px #191a1812}.brand-mark{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:var(--ink);color:var(--accent);font:600 28px Oswald,sans-serif}.eyebrow{margin:22px 0 7px;color:var(--amber-ink);font-size:11px;font-weight:800;letter-spacing:.18em}.login-card h1,.page-heading h1{margin:0;font:600 clamp(32px,5vw,46px)/1.08 Oswald,sans-serif;letter-spacing:-.025em}.muted{color:var(--muted);line-height:1.55}.login-card form{display:grid;gap:9px;margin-top:26px}.login-card label{margin-top:7px;font-size:13px;font-weight:700}.login-card input{width:100%;min-height:48px;padding:12px 14px;border:1px solid var(--control-border);border-radius:10px;background:white;color:var(--ink)}.primary-button{display:flex;align-items:center;justify-content:space-between;min-height:50px;margin-top:12px;padding:0 18px;border:0;border-radius:10px;background:var(--accent);color:var(--ink);font-weight:800}.primary-button:hover{background:var(--accent-hover)}.security-note,.form-error{font-size:12px}.security-note{margin:22px 0 0;color:var(--muted)}.form-error{color:var(--red);font-weight:700}.topbar{height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(18px,4vw,56px);border-bottom:1px solid var(--line);background:var(--card)}.wordmark{display:flex;align-items:center;gap:12px;color:var(--ink);font-weight:800;text-decoration:none}.wordmark .brand-mark{width:38px;height:38px;font-size:23px}.wordmark small,.user-chip small{display:block;color:var(--muted);font-size:9px;letter-spacing:.15em}.header-right{display:flex;align-items:center;gap:22px}.connection,.live-clock{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.08em}.connection i,.live-clock i{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px #246b481a}.user-chip{display:flex;align-items:center;gap:10px;font-size:13px}.avatar{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--surface-subtle);font-weight:800}.user-chip small{margin-top:2px;text-transform:uppercase}.quiet-button{min-height:42px;padding:0 14px;border:1px solid var(--line);border-radius:9px;background:transparent;color:var(--ink);font-weight:700}.page-heading{display:flex;align-items:end;justify-content:space-between;gap:18px;max-width:1440px;margin:auto;padding:44px clamp(18px,4vw,56px) 28px}.page-heading .eyebrow{margin-top:0}.page-heading .muted{margin:9px 0 0}.live-clock{padding:10px 12px;border:1px solid var(--green-border);border-radius:999px;background:var(--green-soft);color:var(--green);white-space:nowrap}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;max-width:1440px;margin:auto;padding:0 clamp(18px,4vw,56px) 28px}.metric{min-height:88px;padding:17px 18px;border:1px solid var(--line);border-radius:13px;background:var(--card)}.metric span{display:block;color:var(--muted);font-size:12px}.metric strong{display:block;margin-top:4px;font:600 29px Oswald,sans-serif}.tabs{display:flex;gap:8px;max-width:1328px;margin:0 auto;padding:0 0 15px;border-bottom:1px solid var(--line)}.tab{display:flex;align-items:center;gap:10px;min-height:45px;padding:0 16px;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--muted);font-weight:800}.tab.active{border-color:var(--line);background:var(--card);color:var(--ink)}.count{display:grid;place-items:center;min-width:23px;height:23px;padding:0 5px;border-radius:20px;background:var(--line);font-size:11px}.queue-panel{max-width:1440px;margin:auto;padding:23px clamp(18px,4vw,56px) 60px}.queue-heading{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:16px}.queue-heading .eyebrow{margin:0 0 5px}.queue-heading h2{margin:0;font:600 28px Oswald,sans-serif}.last-updated{color:var(--muted);font-size:12px}.queue-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.order-card,.request-card{padding:19px;border:1px solid var(--line);border-radius:16px;background:var(--card);box-shadow:0 4px 16px #191a1810}.order-card[data-status="ready"]{border-color:var(--green-border);box-shadow:0 0 0 2px #246b482b}.card-heading{display:flex;align-items:start;justify-content:space-between;gap:12px;padding-bottom:14px;border-bottom:1px solid var(--line)}.card-heading strong{display:block;font-size:15px}.card-heading small,.order-line small{display:block;margin-top:4px;color:var(--muted);font-size:12px}.status-pill{display:inline-flex;align-items:center;min-height:26px;padding:0 10px;border-radius:99px;background:var(--surface-subtle);color:var(--muted);font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;white-space:nowrap}.order-lines{display:grid;gap:12px;margin:14px 0;padding:0;list-style:none}.order-line{display:flex;justify-content:space-between;gap:12px;font-size:14px}.order-line strong{font-weight:750}.order-line span{font-weight:800;white-space:nowrap}.order-total{display:flex;align-items:center;justify-content:space-between;padding-top:13px;border-top:1px solid var(--line);font-weight:800}.order-total strong{font-size:16px}.assignment-note{margin:10px 0 0;color:var(--green);font-size:12px;font-weight:700}.card-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.card-actions button{min-height:42px;padding:0 13px;border:1px solid var(--line);border-radius:9px;background:white;color:var(--ink);font-weight:800}.card-actions .action-primary{border-color:var(--accent);background:var(--accent)}.card-actions .action-danger{color:var(--red)}.request-card{display:flex;align-items:center;justify-content:space-between;gap:16px}.request-main{display:flex;align-items:center;gap:13px}.request-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:var(--surface-subtle);color:var(--muted);font-size:20px}.request-main strong{display:block}.request-main small{display:block;margin-top:4px;color:var(--muted)}.empty-state{grid-column:1/-1;padding:42px 20px;border:1px dashed var(--line-strong);border-radius:14px;color:var(--muted);text-align:center}.toast{position:fixed;right:20px;bottom:20px;z-index:20;max-width:min(420px,calc(100vw - 40px));padding:13px 17px;border-radius:11px;background:var(--ink);color:white;font-size:13px;opacity:0;pointer-events:none;transform:translateY(9px);transition:opacity .18s,transform .18s}.toast.show{opacity:1;transform:translateY(0)}[hidden]{display:none!important}
@media(max-width:850px){.queue-grid{grid-template-columns:1fr}.tabs{margin:0 18px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.header-right{gap:12px}.connection{display:none}.page-heading{align-items:start;flex-direction:column}}
@media(max-width:480px){.topbar{height:66px;padding:0 14px}.wordmark{gap:8px}.wordmark .brand-mark{width:34px;height:34px}.user-chip{gap:7px;font-size:11px}.avatar{width:31px;height:31px}.quiet-button{min-height:40px;padding:0 10px}.page-heading{padding:30px 17px 22px}.page-heading h1{font-size:36px}.live-clock{font-size:9px}.metrics{gap:8px;padding:0 14px 22px}.metric{min-height:75px;padding:13px}.metric span{font-size:11px}.metric strong{font-size:25px}.tabs{margin:0 14px}.tab{min-height:43px;padding:0 12px;font-size:13px}.queue-panel{padding:20px 14px 42px}.queue-heading{align-items:start;flex-direction:column}.queue-heading h2{font-size:25px}.order-card,.request-card{padding:15px}.card-heading{gap:8px}.status-pill{font-size:9px}.request-card{align-items:start;flex-direction:column}.request-card .card-actions{width:100%}.request-card .card-actions button{flex:1}.login-view{padding:16px}.login-card{padding:25px 21px;border-radius:19px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.auth-help-link{display:inline-block;margin-top:14px;color:var(--amber-ink);font-size:13px;font-weight:750;text-underline-offset:3px}.auth-flow-panel{margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}.auth-flow-title{margin:0;font:600 25px/1.15 Oswald,sans-serif}.auth-flow-panel>.muted{font-size:13px}.auth-flow-form{display:grid;gap:9px;margin-top:18px}.auth-flow-form label{display:grid;gap:6px;margin:0;font-size:13px;font-weight:700}.auth-flow-form input{width:100%;min-height:48px;padding:12px 14px;border:1px solid var(--control-border);border-radius:10px;background:white;color:var(--ink)}.auth-flow-form h3{margin:8px 0 0;font:600 20px Oswald,sans-serif}.form-error.success{color:var(--green)}.staff-email-summary{display:block;max-width:100%;overflow-wrap:anywhere;color:var(--muted);font-size:12px}.staff-recovery-button{justify-self:start}.security-dialog{width:min(100% - 32px,560px);max-height:min(88dvh,800px);overflow:auto;padding:clamp(20px,5vw,32px);border:1px solid var(--line);border-radius:20px;background:var(--card);color:var(--ink);box-shadow:0 24px 80px #191a1835}.security-dialog::backdrop{background:#191a188c;backdrop-filter:blur(3px)}.security-dialog h2{margin:0;font:600 30px/1.1 Oswald,sans-serif}.security-dialog>.muted{font-size:13px}.dialog-close-row{display:flex;justify-content:flex-end;margin:0 0 10px}.security-dialog form:not(.dialog-close-row){padding:14px 0;border-top:1px solid var(--line)}.security-dialog .quiet-button,.security-dialog .primary-button{min-height:46px}
@media(max-width:600px){.topbar{gap:8px}.header-right{gap:6px}.header-right .quiet-button{padding:0 8px;font-size:11px}.user-chip strong{max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.staff-admin-row{gap:10px}}
.language-control{display:flex;align-items:center;gap:8px}
.language-control label{color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.04em}
.language-control select{min-width:112px;min-height:44px;padding:0 34px 0 12px;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--ink);font:600 13px 'DM Sans',Arial,sans-serif}
.language-control select:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.login-language{justify-content:flex-end;margin:-8px 0 12px}
.page-tools{display:flex;align-items:center;gap:18px}
.page-tools .language-control{flex-direction:column;align-items:flex-start;gap:4px}
.page-tools .language-control select{min-width:126px}
@media(max-width:850px){.page-tools{width:100%;justify-content:space-between;flex-wrap:wrap;gap:10px}.page-tools .language-control{flex-direction:row;align-items:center;gap:8px}}
@media(max-width:480px){.page-tools{align-items:flex-end}.page-tools .language-control{align-items:flex-start;flex-direction:column;gap:4px}.page-tools .language-control select{min-width:116px}.login-language{margin:-6px 0 12px}}
@media(max-width:480px){.topbar{gap:7px}.wordmark{min-width:0;flex-shrink:1;gap:6px}.wordmark .brand-mark{width:30px;height:30px}.wordmark>span:last-child{font-size:14px;white-space:nowrap}.header-right{min-width:0;flex-shrink:0;gap:6px}.user-chip{gap:4px;font-size:10px}.user-chip>span:last-child{max-width:52px}.user-chip strong{display:block;max-width:52px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-chip small{font-size:8px;letter-spacing:.08em;white-space:nowrap}.avatar{width:29px;height:29px}.quiet-button{min-height:44px;padding:0 8px;font-size:11px;white-space:nowrap}.tab,.card-actions button{min-height:44px}}
.quiet-button,.card-actions button{min-height:44px}
.wordmark{min-height:44px}
.quiet-button{min-width:44px}
.wordmark:focus-visible{outline:3px solid var(--focus);outline-offset:3px}

/* Align navigation with the queue and keep request icons at their intended size. */
.tabs{width:calc(100% - 2 * clamp(18px,4vw,56px));margin-inline:auto}
.request-icon{flex:none}
@media(max-width:480px){.tabs{width:calc(100% - 28px)}}

/* Keep the queue switch within reach while staff review long service queues. */
@media(max-width:850px){
  .tabs{position:sticky;top:0;z-index:5;padding-top:8px;background:var(--paper);box-shadow:0 8px 14px #f4f5f2cc}
  .queue-panel{scroll-margin-top:62px}
}
.status-pill.pending{background:var(--accent-soft);color:var(--amber-ink)}
.status-pill.accepted{background:var(--blue-soft);color:var(--blue)}
.status-pill.preparing{background:var(--purple-soft);color:var(--purple)}
.status-pill.ready{background:var(--green-soft);color:var(--green)}
.status-pill.awaiting_waiter{background:var(--accent-soft);color:var(--amber-ink)}
.status-pill.completed{background:var(--green-soft);color:var(--green)}
.status-pill.cancelled{background:var(--red-soft);color:var(--red)}
.metric-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.metric-split-item{min-width:0}
.metric-split-item+ .metric-split-item{padding-left:12px;border-left:1px solid var(--line)}
.metric-split-item span{font-size:11px;line-height:1.3}
.metric-split-item strong{font-size:25px}
.status-updated .status-pill{animation:status-change .65s ease-out}
@keyframes status-change{0%{transform:scale(.94);box-shadow:0 0 0 0 #f2b23300}45%{transform:scale(1.06);box-shadow:0 0 0 5px #f2b23335}100%{transform:scale(1);box-shadow:0 0 0 0 #f2b23300}}

.admin-panel{max-width:1500px}.admin-layout{display:grid;grid-template-columns:minmax(260px,.82fr) minmax(0,1.8fr);align-items:start;gap:16px}.admin-card{min-width:0;padding:20px;border:1px solid var(--line);border-radius:16px;background:var(--card)}.admin-card-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.admin-card-heading .eyebrow{margin:0 0 4px}.admin-card-heading h3{margin:0;font:600 23px Oswald,sans-serif}.admin-form{display:grid;gap:11px}.admin-form label,.admin-field{display:grid;gap:6px;min-width:0;color:var(--muted);font-size:12px;font-weight:700}.admin-form input,.admin-form select,.admin-form textarea,.admin-field input,.admin-field select,.admin-field textarea{width:100%;min-width:0;min-height:44px;padding:10px 11px;border:1px solid var(--control-border);border-radius:9px;background:var(--card);color:var(--ink);font:500 14px 'DM Sans',Arial,sans-serif}.admin-form input[type=checkbox],.admin-field input[type=checkbox]{width:22px;height:22px;min-height:22px;accent-color:var(--green)}.admin-form input[type=file],.admin-field input[type=file]{padding:7px;font-size:12px}.admin-form .primary-button{width:100%;min-height:46px;margin:3px 0 0}.admin-list{display:grid;gap:10px;margin-top:16px}.staff-admin-row,.admin-product-row,.media-admin-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:12px;border:1px solid var(--line);border-radius:11px;background:var(--card)}.staff-admin-row{grid-template-columns:minmax(0,1fr) minmax(130px,.7fr) auto auto}.admin-product-row{grid-template-columns:minmax(0,1fr) auto}.staff-admin-identity{display:grid;gap:6px;min-width:0}.staff-admin-identity strong,.admin-product-summary strong{overflow-wrap:anywhere}.staff-admin-row .admin-field{font-size:10px}.staff-admin-row select{min-height:40px;font-size:12px}.admin-field.admin-check{display:flex;align-items:center;gap:8px}.admin-field.admin-check span{order:2}.admin-field.admin-check input{order:1;flex:0 0 auto}.admin-category-form{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:13px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface-subtle)}.admin-category-form>button{grid-column:1/-1}.admin-chip-list{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0 18px}.admin-chip{display:flex;align-items:center;gap:8px;max-width:100%;padding:6px 8px 6px 11px;border:1px solid var(--line);border-radius:999px;background:var(--card);font-size:12px}.admin-chip span{font-weight:800}.admin-chip small{color:var(--muted)}.admin-inline-button{min-height:32px;padding:3px 8px;border:0;border-radius:99px;background:var(--paper);color:var(--ink);font-weight:800}.admin-product-row{grid-template-columns:minmax(0,1fr) auto}.admin-product-summary{display:grid;gap:5px;min-width:0}.admin-product-summary small{color:var(--muted);font-size:11px}.admin-product-form{margin:18px 0;padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--card)}.admin-product-form>h4,.admin-media-section>h4{margin:0;font:600 22px Oswald,sans-serif}.admin-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.admin-locale-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:8px 0 13px;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--card)}.admin-locale-heading{grid-column:1/-1;color:var(--ink);font-size:12px}.admin-locale-fields .admin-field{font-size:10px}.admin-locale-fields input{min-height:42px;font-size:13px}.admin-variants>h4{margin:18px 0 10px;font:600 19px Oswald,sans-serif}.admin-variant,.admin-group,.admin-choice{min-width:0;margin:10px 0;padding:13px;border:1px solid var(--line-strong);border-radius:11px}.admin-variant{background:var(--card)}.admin-group{background:var(--surface-subtle)}.admin-choice{background:var(--card)}.admin-variant legend,.admin-group legend,.admin-choice legend{max-width:100%;padding:0 5px;font-size:12px;font-weight:800}.admin-remove-button{min-height:34px;padding:5px 9px;border:1px solid var(--red-border);border-radius:8px;background:var(--red-soft);color:var(--red);font-size:11px;font-weight:800}.admin-groups{margin-top:12px}.admin-groups h5,.admin-choices h6{margin:10px 0 6px;font-size:13px}.admin-form-footer{display:flex;gap:9px;margin-top:14px}.admin-form-footer .primary-button{flex:1;justify-content:center}.admin-form-footer .quiet-button{min-height:46px}.admin-media-section{display:grid;gap:10px;margin-top:18px;padding-top:15px;border-top:1px solid var(--line)}.media-upload-form{padding:12px;border-radius:10px;background:var(--surface-subtle)}.media-admin-row{grid-template-columns:1fr 1fr auto;align-items:start}.media-admin-row>strong{grid-column:1/-1;font-size:12px}.media-admin-row .admin-locale-fields{grid-column:1/-1}.admin-empty{color:var(--muted);font-size:13px}
@media(max-width:980px){.admin-layout{grid-template-columns:1fr}.admin-catalog-card{order:-1}}
@media(max-width:640px){.admin-card{padding:15px}.admin-card-heading{align-items:start;flex-direction:column}.admin-category-form,.admin-form-grid,.admin-locale-fields{grid-template-columns:1fr}.admin-locale-heading{grid-column:auto}.staff-admin-row{grid-template-columns:1fr 1fr}.staff-admin-identity{grid-column:1/-1}.admin-product-row{grid-template-columns:minmax(0,1fr) auto}.admin-product-summary{grid-row:auto}.media-admin-row{grid-template-columns:1fr}.media-admin-row>strong,.media-admin-row .admin-locale-fields{grid-column:auto}.admin-form-footer{flex-direction:column}.admin-form-footer button{width:100%}}

/* Keep the team language control beside the brand, matching the customer app. */
.locale-switcher{display:flex;flex:0 0 auto;align-items:center;gap:2px;padding:4px;border:1px solid var(--line);border-radius:999px;background:var(--card)}
.locale-switcher .language-option{display:grid;place-items:center;width:44px;min-width:44px;min-height:44px;padding:0;border:0;border-radius:999px;background:transparent;color:var(--muted);font-size:11px;font-weight:700}
.locale-switcher .language-option[aria-pressed="true"]{background:var(--ink);color:var(--card)}
.locale-switcher .language-option:not([aria-pressed="true"]):hover{background:var(--surface-subtle)}
.login-language{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:-8px 0 16px}
.login-language-label{color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.04em}
.login-locale-switcher{gap:2px;padding:3px;border-radius:999px}
.login-locale-switcher .language-option{width:44px;min-width:44px;min-height:44px;border-radius:999px}
@media(max-width:480px){.login-language{gap:8px;margin:-6px 0 16px}.login-language-label{font-size:10px}}
@media(max-width:640px){.topbar{height:auto;min-height:66px;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand locale" "actions actions";row-gap:8px;padding:9px 14px}.topbar>.wordmark{grid-area:brand}.locale-switcher{grid-area:locale}.header-right{grid-area:actions;justify-self:end;gap:8px}}
@media(max-width:360px){.topbar{column-gap:8px}.locale-switcher{gap:0;padding:3px}.topbar>.wordmark{gap:6px}.topbar>.wordmark .brand-mark{width:30px;height:30px}.topbar>.wordmark>span:last-child{font-size:14px}.header-right{gap:6px}}

/* Product logo uses the supplied artwork; density variants only crop margins and resample. */
.login-brand{display:flex;align-items:center;justify-content:center;width:100%;min-height:94px;margin:0 0 2px}
.product-logo{display:block;height:auto;max-width:100%;object-fit:contain;object-position:center}
.login-product-logo{width:min(100%,276px)}
.wordmark{min-width:0;gap:0}
.wordmark .product-logo{width:188px}
@media(max-width:480px){.wordmark .product-logo{width:150px}}
@media(max-width:360px){.wordmark .product-logo{width:128px}}

.table-management-panel .table-create-card,.table-management-panel .tables-list-card{margin-bottom:14px}
.table-management-help{max-width:760px;margin:-6px 0 12px;color:var(--muted);font-size:13px;line-height:1.5}
.table-create-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,.55fr);align-items:end;gap:12px;margin-top:14px}
.table-create-form .primary-button{min-height:44px;margin:0}
.table-link-result{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;margin:0 0 14px;padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--card)}
.table-link-result>div,.table-link-result .admin-field{grid-column:1/-1}
.table-link-result .eyebrow{margin:0 0 5px}
.table-link-result h3{margin:0;font:600 21px Oswald,sans-serif}
.table-link-result .admin-field{font-size:11px}
.table-link-result input{font-size:13px}
.table-link-result .quiet-button{min-height:44px}
.table-link-warning{margin:0;color:var(--muted);font-size:12px;line-height:1.45}
.table-admin-list{display:grid;gap:11px}
.table-admin-row{min-width:0;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--card)}
.table-admin-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}
.table-admin-identity{display:flex;align-items:center;flex-wrap:wrap;gap:9px;min-width:0}
.table-admin-identity strong{font-size:15px;overflow-wrap:anywhere}
.table-link-status{color:var(--muted);font-size:12px;font-weight:700;text-align:right}
.table-edit-form{display:grid;grid-template-columns:minmax(180px,1fr) auto;align-items:end;gap:12px}
.table-edit-form .admin-field{font-size:11px}
.table-edit-form input{min-height:44px}
.table-admin-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}
.table-admin-actions button{min-height:44px;padding-inline:12px;font-size:12px}
@media(max-width:640px){
  .table-create-form{grid-template-columns:1fr;gap:10px}
  .table-create-form .primary-button{width:100%}
  .table-link-result{grid-template-columns:1fr;padding:15px}
  .table-link-result>div,.table-link-result .admin-field{grid-column:auto}
  .table-link-result .quiet-button{width:100%}
  .table-admin-heading{align-items:flex-start;flex-direction:column;gap:7px}
  .table-link-status{text-align:left}
  .table-edit-form{grid-template-columns:1fr;gap:9px}
  .table-admin-actions{display:grid;grid-template-columns:1fr;justify-content:stretch}
  .table-admin-actions button{width:100%}
}
@media(prefers-reduced-motion:reduce){.admin-loading-indicator{animation:none}}

/* Administração: reduzir ruído visual e manter controles úteis em telas pequenas. */
.admin-card-heading h3{font-size:20px}
.admin-section-title{margin:18px 0 9px;font:600 17px Oswald,sans-serif}
.admin-products-title{padding-top:14px;border-top:1px solid var(--line)}
.admin-details{margin:12px 0;border:1px solid var(--line);border-radius:11px;background:var(--surface-subtle)}
.admin-details>summary{display:flex;align-items:center;min-height:44px;padding:0 12px;color:var(--ink);font-size:13px;font-weight:800;cursor:pointer;list-style-position:inside}
.admin-details[open]>summary{border-bottom:1px solid var(--line)}
.admin-details .admin-category-form{margin:0;padding:12px;border:0;border-radius:0;background:transparent}
.admin-catalog-tools{display:grid;grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(110px,1fr));gap:10px;margin:10px 0 6px}
.admin-catalog-tools .admin-field{font-size:11px}
.admin-catalog-tools input,.admin-catalog-tools select{min-height:44px;padding:9px 10px;font-size:13px}
.admin-result-count{min-height:18px;margin:8px 0;color:var(--muted);font-size:12px}
.admin-pagination{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line);color:var(--muted);font-size:12px}
.admin-pagination .quiet-button{min-height:44px;padding-inline:12px;font-size:12px}
.admin-pagination .quiet-button:disabled{cursor:not-allowed;opacity:.45}
.admin-load-state{display:flex;align-items:center;gap:11px;margin:0 0 18px;padding:13px 15px;border:1px solid var(--green-border);border-radius:12px;background:var(--green-soft);color:var(--green);font-size:13px;font-weight:700}
.admin-load-state.is-error{justify-content:space-between;border-color:var(--red-border);background:var(--red-soft);color:var(--red)}
.admin-loading-indicator{width:17px;height:17px;flex:none;border:2px solid var(--green-border);border-top-color:var(--green);border-radius:50%;animation:admin-spin .75s linear infinite}
.admin-load-state.is-error .admin-loading-indicator{display:none}
.admin-load-state .quiet-button{min-height:40px;padding-inline:11px;font-size:12px}
@keyframes admin-spin{to{transform:rotate(360deg)}}
@media(max-width:640px){
  .admin-card{padding:14px}
  .admin-card-heading{align-items:center;flex-direction:row;gap:8px}
  .admin-card-heading h3{font-size:19px}
  .admin-card-heading .quiet-button{min-height:44px;padding-inline:10px;font-size:12px;white-space:nowrap}
  .admin-catalog-tools{grid-template-columns:1fr}
  .admin-catalog-tools .admin-field{font-size:11px}
  .admin-product-row{gap:8px;padding:10px}
  .admin-product-row .quiet-button{min-height:40px;padding-inline:9px;font-size:11px}
  .admin-pagination{gap:6px}
  .admin-pagination .quiet-button{padding-inline:9px}
  .admin-load-state{align-items:flex-start;flex-wrap:wrap}
}
@media(max-width:640px){
  .header-right{width:100%;min-width:0;justify-self:stretch;justify-content:flex-end;gap:8px}
  .user-chip{min-width:0;flex:1;justify-content:flex-end}
  .user-chip>span:last-child{max-width:none;min-width:0}
  .user-chip strong,.user-chip small{max-width:100%;white-space:normal;overflow-wrap:anywhere}
  .user-chip strong{font-size:11px}
  .user-chip small{font-size:8px;line-height:1.2}
}
@media(max-width:360px){
  .tabs{gap:2px;overflow-x:auto;scrollbar-width:none}
  .tabs::-webkit-scrollbar{display:none}
  .tab{gap:5px;padding-inline:7px;font-size:12px;white-space:nowrap}
  .count{min-width:20px;height:20px;padding-inline:4px}
  .admin-card-heading h3{font-size:18px}
  .admin-card-heading .quiet-button{padding-inline:8px;font-size:11px}
}

.staff-account-dialog{width:min(100% - 24px,680px)}
.staff-account-summary{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}
.staff-account-summary strong{font-size:20px}
.staff-account-orders{display:grid;gap:9px;max-height:34dvh;overflow:auto;padding:12px 2px}
.staff-account-order{padding:11px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.staff-account-order-heading{display:flex;justify-content:space-between;gap:8px}
.staff-account-line{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;padding-top:7px;color:var(--muted);font-size:12px}
.staff-account-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding:14px 0;border-top:1px solid var(--line)}
.staff-account-form label{display:grid;gap:5px;font-size:12px;font-weight:700}
.staff-account-form input,.staff-account-form select{min-width:0;min-height:44px;padding:9px 11px;border:1px solid var(--control-border);border-radius:9px;background:var(--surface);color:var(--ink)}
.staff-account-form button{grid-column:1/-1;justify-self:start}
.staff-account-payments{margin:8px 0;color:var(--muted);font-size:12px;line-height:1.5}
@media(max-width:480px){.staff-account-form{grid-template-columns:1fr}.staff-account-form button{width:100%}}

/* Audit pass: reduce nested visual repetition in the catalog editor while retaining every editable API field. */
.skip-link{position:fixed;z-index:30;top:10px;left:10px;transform:translateY(calc(-100% - 14px));padding:12px 16px;border-radius:8px;background:var(--ink);color:var(--card);font-weight:700}
.skip-link:focus{transform:translateY(0)}
.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.admin-product-form{gap:12px;padding-bottom:8px;background:var(--card)}
.admin-product-form>.admin-form-grid{padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--card)}
.admin-product-form>.admin-locale-fields{margin:0;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--card)}
.admin-locale-fields{grid-template-columns:minmax(0,1fr);gap:5px;margin:0;padding:0;border:0;background:transparent}
.admin-locale-heading{font-size:12px}
.admin-locale-primary{max-width:100%;font-size:11px}
.admin-locale-primary input,.admin-locale-primary textarea{min-height:42px}
.admin-locale-translations{min-width:0;margin-top:3px;color:var(--muted)}
.admin-locale-translations>summary,.admin-advanced>summary{display:flex;align-items:center;min-height:40px;width:max-content;max-width:100%;padding:0 8px;border-radius:7px;color:var(--muted);font-size:11px;font-weight:700;cursor:pointer}
.admin-locale-translations>summary:hover,.admin-advanced>summary:hover{background:var(--surface-subtle);color:var(--ink)}
.admin-locale-translations>summary::after,.admin-advanced>summary::after{content:'+';display:inline-grid;place-items:center;width:18px;height:18px;margin-left:7px;border:1px solid var(--line-strong);border-radius:50%;font-size:12px;line-height:1}
.admin-locale-translations[open]>summary::after,.admin-advanced[open]>summary::after{content:'−'}
.admin-locale-extra-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding-top:7px}
.admin-locale-extra{font-size:10px}
.admin-locale-extra input,.admin-locale-extra textarea{min-height:40px;padding:8px 9px;font-size:13px}
.admin-variant{margin:5px 0 14px;padding:10px 12px 12px;border-color:var(--line-strong);border-radius:12px;background:var(--card)}
.admin-variant>legend{display:flex;align-items:center;gap:7px;padding-inline:5px;color:var(--ink);font-size:13px}
.admin-variant-core{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(135px,.55fr) auto;align-items:end;gap:10px}
.admin-variant-core>.admin-locale-fields{min-width:0}
.admin-variant-core>.admin-field{min-width:0}
.admin-variant-core .admin-check{min-height:44px;white-space:nowrap}
.admin-advanced{margin:5px 0 9px;border-top:1px solid var(--surface-subtle)}
.admin-advanced>summary{min-height:36px}
.admin-advanced>.admin-form-grid{padding:2px 0 8px}
.admin-groups{display:grid;gap:9px;margin-top:8px}
.admin-groups-heading{margin:5px 0 0!important;color:var(--muted);font-size:11px!important;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.admin-group{margin:0;border:1px solid var(--line-strong);border-left:3px solid var(--line-strong);border-radius:10px;background:var(--card);overflow:clip}
.admin-group-header{display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:start;gap:5px;min-width:0;padding:4px 6px 4px 10px}
.admin-group-content{min-width:0}
.admin-group-summary{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:48px;cursor:pointer;list-style:none}
.admin-group-summary::-webkit-details-marker{display:none}
.admin-group-summary::before{content:'+';display:grid;place-items:center;flex:0 0 24px;width:24px;height:24px;border-radius:6px;background:var(--surface-subtle);color:var(--ink);font-weight:900}
.admin-group-content[open]>.admin-group-summary::before{content:'−'}
.admin-group-summary>strong{flex:1;min-width:0;overflow-wrap:anywhere;font-size:13px}
.admin-option-count{flex:0 0 auto;padding:4px 8px;border:1px solid var(--line-strong);border-radius:99px;background:var(--card);color:var(--muted);font-size:10px;font-weight:700}
.admin-group-header>.admin-icon-button{grid-column:2;grid-row:1;align-self:start;margin-top:3px}
.admin-group-body{padding:3px 10px 12px;border-top:1px solid var(--line)}
.admin-group-body>.admin-locale-fields{padding:8px 0 5px}
.admin-group-body>.admin-advanced{margin:5px 0 10px}
.admin-group-body>.admin-advanced .admin-form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.admin-choices-heading{display:grid;grid-template-columns:minmax(120px,.5fr) minmax(180px,1fr);align-items:center;gap:10px;margin:6px 0}
.admin-choices-heading h6{margin:0;color:var(--muted);font-size:11px;letter-spacing:.05em;text-transform:uppercase}
.admin-choice-search-field{gap:0!important;font-size:0!important}
.admin-choice-search-field input{min-height:40px!important;font-size:13px!important}
.admin-choice-controls{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:36px;color:var(--muted);font-size:11px}
.admin-choice-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:7px}
.admin-choice-actions>button{min-height:44px;padding:7px 11px;font-size:11px}
.admin-choice-controls .admin-show-all-options{border-color:var(--button-secondary-border);background:var(--button-secondary-bg);color:var(--button-secondary-text)}
.admin-choice-controls .admin-show-all-options[hidden]{display:none!important}
.admin-choices{display:grid;gap:0}
.admin-choice{min-width:0;margin:0;padding:9px 2px;border:0;border-top:1px solid var(--surface-subtle);border-radius:0;background:transparent}
.admin-choice[hidden]{display:none}
.admin-choice-main{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(120px,.55fr) auto 44px;align-items:end;gap:8px}
.admin-choice-main>.admin-locale-fields{min-width:0}
.admin-choice-main>.admin-field{min-width:0}
.admin-choice-main>.admin-check{min-height:44px;white-space:nowrap}
.admin-choice .admin-locale-translations>summary{min-height:32px;padding-inline:4px;font-size:10px}
.admin-icon-button{display:grid;place-items:center;width:44px;min-width:44px;height:44px;min-height:44px;padding:0;border-radius:9px;font-size:22px;line-height:1}
.admin-form-footer{position:sticky;bottom:0;z-index:4;margin:8px -8px -8px;padding:10px 8px max(10px,env(safe-area-inset-bottom));border-top:1px solid var(--line-strong);background:#ffffffed;backdrop-filter:blur(12px)}
.admin-form-footer .primary-button{margin:0;min-height:48px}
.admin-form-footer .quiet-button{min-height:48px}
.admin-category-form>button{width:100%;min-height:46px;justify-content:center}
.admin-product-form details>summary:focus-visible,.admin-group-summary:focus-visible,.admin-locale-translations>summary:focus-visible,.admin-advanced>summary:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
@media(max-width:640px){
  .admin-product-form{padding:13px}
  .admin-variant-core{grid-template-columns:minmax(0,1fr) minmax(110px,.65fr)}
  .admin-variant-core>.admin-check{grid-column:1/-1;justify-self:start}
  .admin-group-body>.admin-advanced .admin-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin-choices-heading{grid-template-columns:1fr;gap:5px}
  .admin-choice-main{grid-template-columns:minmax(0,1fr) minmax(100px,.55fr) 44px;gap:7px}
  .admin-choice-main>.admin-check{grid-column:1/3;grid-row:2;justify-self:start}
  .admin-choice-main>.admin-icon-button{grid-column:3;grid-row:1/3;align-self:center}
  .admin-choice-controls{align-items:flex-start;flex-direction:column;padding:4px 0}
  .admin-choice-actions{justify-content:flex-start}
  .admin-form-footer{margin-inline:-3px;padding-inline:3px}
}
@media(max-width:360px){
  .admin-product-form{padding:10px}
  .admin-variant{padding-inline:9px}
  .admin-variant-core{grid-template-columns:minmax(0,1fr)}
  .admin-variant-core>.admin-check{grid-column:auto}
  .admin-group-body{padding-inline:7px}
  .admin-group-header{grid-template-columns:minmax(0,1fr) 44px;gap:3px;padding-inline:6px}
  .admin-group-summary{display:grid;grid-template-columns:24px minmax(0,1fr);grid-template-rows:auto auto;justify-content:start;gap:4px 7px;padding-block:5px}
  .admin-group-summary::before{grid-column:1;grid-row:1;align-self:start}
  .admin-group-summary>strong{grid-column:2;grid-row:1;overflow-wrap:break-word;word-break:normal}
  .admin-group-summary>.admin-option-count{grid-column:2;grid-row:2;justify-self:start}
  .admin-choice-main{grid-template-columns:minmax(0,1fr) 44px}
  .admin-choice-main>.admin-locale-fields{grid-column:1;grid-row:1}
  .admin-choice-main>.admin-field:not(.admin-check){grid-column:1;grid-row:2}
  .admin-choice-main>.admin-check{grid-column:1;grid-row:3}
  .admin-choice-main>.admin-icon-button{grid-column:2;grid-row:1/4}
  .admin-locale-extra-fields{grid-template-columns:1fr}
  .admin-form-footer{gap:6px}
}
@media(prefers-reduced-motion:reduce){.skip-link{transition:none}.admin-form-footer{backdrop-filter:none}.status-updated .status-pill{animation:none}}
@media(prefers-reduced-motion:reduce){.admin-loading-indicator{animation:none}}

/* Each operational area has a real URL and a clear, persistent app navigation. */
.primary-nav{display:flex;flex-wrap:wrap;align-items:center;gap:7px;width:calc(100% - 2 * clamp(18px,4vw,56px));max-width:1328px;margin:0 auto;padding:12px 0;border-bottom:1px solid var(--line)}
.primary-nav-link{display:flex;align-items:center;justify-content:center;gap:9px;min-height:44px;padding:0 15px;border:1px solid transparent;border-radius:10px;color:var(--muted);font-size:14px;font-weight:800;text-decoration:none;white-space:nowrap}
.primary-nav-link:hover{background:var(--surface-subtle);color:var(--ink)}
.primary-nav-link:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.primary-nav-link.active{border-color:var(--line);background:var(--card);color:var(--ink)}
.primary-nav-link .count{background:var(--line)}
.primary-nav-link.active .count{background:var(--accent-soft)}
.admin-subnav{display:flex;gap:8px;overflow-x:auto;margin:0 0 22px;padding:0 0 12px;border-bottom:1px solid var(--line);scrollbar-width:thin}
.admin-subnav-link{display:flex;align-items:center;justify-content:center;min-height:44px;padding:0 16px;border:1px solid transparent;border-radius:10px;color:var(--muted);font-size:14px;font-weight:800;text-decoration:none;white-space:nowrap}
.admin-subnav-link:hover{background:var(--surface-subtle);color:var(--ink)}
.admin-subnav-link:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.admin-subnav-link.active{border-color:var(--line);background:var(--card);color:var(--ink)}
.admin-page-section{min-width:0}
.admin-page-section>.queue-heading{margin-bottom:18px}
.admin-page-section>.queue-heading h2{font-size:25px}
@media(max-width:850px){.primary-nav{position:sticky;top:0;z-index:5;width:100%;padding:8px 18px;background:var(--paper);box-shadow:0 8px 14px #f4f5f2cc}.queue-panel{scroll-margin-top:62px}}
@media(max-width:480px){.primary-nav{gap:5px;padding-inline:14px}.primary-nav-link{min-height:44px;padding:0 11px;font-size:13px}}
@media(max-width:360px){.primary-nav{gap:4px}.primary-nav-link{gap:6px;padding-inline:9px;font-size:12px}}
.admin-inline-button,.admin-remove-button{min-height:44px}
.staff-admin-row select{min-height:44px}
.admin-load-state .quiet-button{min-height:44px}
.staff-admin-row{grid-template-columns:minmax(120px,1fr) auto auto}
.staff-admin-identity{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:8px}
.staff-admin-row>button{grid-column:1/-1;width:100%;justify-content:center}
.dashboard-view[data-role="restaurant_admin"] .page-heading h1{font-size:clamp(30px,4.5vw,40px)}
@media(max-width:640px){.admin-product-row .quiet-button{min-height:44px}}
@media(max-width:640px){.staff-admin-row{grid-template-columns:minmax(0,1fr) auto}.staff-admin-identity{grid-column:1/-1}.staff-admin-row>button{grid-column:1/-1}}


/* Shared native select styling across language, operations, and admin screens. */
select:not([multiple]),
.admin-form select:not([multiple]),
.admin-field select:not([multiple]),
.admin-catalog-tools select:not([multiple]),
.staff-admin-row select:not([multiple]),
.language-control select:not([multiple]),
.page-tools .language-control select:not([multiple]){
  -webkit-appearance:none;appearance:none;min-height:44px;padding:10px 40px 10px 12px;border:1px solid var(--line);border-radius:10px;
  background-color:var(--card);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2355524b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 12px center;background-size:16px 16px;color:var(--ink);font:500 14px 'DM Sans',Arial,sans-serif;line-height:1.25;cursor:pointer;
}
select:not([multiple]):hover:not(:disabled){border-color:var(--control-border)}
select:not([multiple]):focus{border-color:var(--accent-border);outline:none}
select:not([multiple]):focus-visible{outline:2px solid var(--ink);outline-offset:2px;box-shadow:0 0 0 4px #f2b23366}
select:not([multiple]):disabled{cursor:not-allowed;opacity:.62}

.password-field{position:relative;display:flex;align-items:center}.password-field input{padding-right:56px!important}.password-visibility-button{position:absolute;right:4px;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;border-radius:9px;background:transparent;color:var(--muted)}.password-visibility-button:hover{background:var(--surface-subtle);color:var(--ink)}.password-visibility-button svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.password-visibility-button:focus-visible{outline:3px solid var(--focus);outline-offset:1px}


.visits-help{max-width:760px;margin:0 0 18px;color:var(--muted);line-height:1.55}
.visit-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:14px;margin-top:16px}
.visit-card{display:grid;align-content:start;gap:12px;padding:18px;border:1px solid var(--line);border-radius:18px;background:var(--paper);box-shadow:0 6px 22px #11110b0a}
.visit-card-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.visit-card-heading h3{margin:0;font:600 22px/1.12 var(--font-display)}
.visit-card-detail{margin:0;color:var(--muted);line-height:1.5}
.visit-card-actions{display:flex;flex-wrap:wrap;gap:8px}
.visit-card-actions button{min-height:44px}
.visit-account-count{margin:0;color:var(--muted);font-size:14px}
.visit-account-row{display:grid;gap:8px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-subtle)}
.visit-account-heading,.visit-account-balance{display:flex;align-items:center;justify-content:space-between;gap:12px}
.visit-account-heading{flex-wrap:wrap}
.visit-account-heading small{color:var(--muted)}
.visit-account-balance strong{font-size:18px}
.visit-reconciliation-panel{display:grid;gap:12px;margin-top:28px;padding:18px;border:1px solid var(--line);border-radius:18px;background:var(--surface-subtle)}
.visit-reconciliation-panel[hidden]{display:none}
.visit-reconciliation-panel h3{margin:0;font:600 20px/1.2 var(--font-display)}
.visit-reconciliation-list{display:grid;gap:10px}
.visit-reconciliation-card{display:grid;gap:8px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--paper)}
.visit-reconciliation-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.visit-reconciliation-date{margin:0;color:var(--muted);font-size:14px}
.visit-close-action{border-color:var(--red-border);color:var(--red)}


/* Compact shared layouts so the work queue and key data appear sooner. */
.page-heading{gap:14px;padding-top:32px;padding-bottom:20px}
.page-heading h1{font-size:clamp(30px,4vw,40px)}
.page-heading .muted{max-width:58ch;margin-top:6px;font-size:13px;line-height:1.45}
.metrics{padding-bottom:22px}
.metric{min-height:82px;padding:14px 16px}
.tabs{padding-bottom:12px}
.queue-panel{padding-top:18px}
.queue-heading{margin-bottom:13px}
.queue-heading h2{font-size:25px}
.order-card,.request-card{padding:16px}
.card-heading{padding-bottom:11px}
.order-lines{gap:9px;margin:11px 0}
.order-total{padding-top:10px}
@media(max-width:480px){
  .page-heading{gap:8px;padding:20px 16px 14px}
  .page-heading h1{font-size:30px}
  .page-heading .muted{margin-top:4px;font-size:12px}
  .metrics{padding-bottom:18px}
  .queue-panel{padding:15px 14px 34px}
  .queue-heading{margin-bottom:11px}
  .queue-heading h2{font-size:22px}
  .order-card,.request-card{padding:13px}
}

/* Staff is a compact list; editing and account creation are disclosed on demand. */
.staff-admin-card{padding:16px}
.staff-admin-card .admin-card-heading{align-items:center;margin-bottom:12px}
.staff-admin-card .admin-card-heading .eyebrow{font-size:10px}
.staff-admin-card .admin-card-heading h3{font-size:19px}
.staff-admin-scope{flex:0 1 auto;text-align:right;font-size:11px}
.staff-create-details{margin:0 0 12px}
.staff-create-details>summary{justify-content:space-between;gap:12px;min-height:48px;padding:0 14px;border:1px solid var(--accent-border);border-radius:10px;background:var(--accent);color:var(--ink);font-size:13px;font-weight:800;cursor:pointer;touch-action:manipulation;transition:background-color .15s ease,border-color .15s ease,box-shadow .15s ease}
.staff-create-details>summary::-webkit-details-marker{display:none}
.staff-create-details>summary::marker{content:""}
.staff-create-details>summary:hover{border-color:var(--accent-hover-border);background:var(--accent-hover)}
.staff-create-details>summary:active{background:var(--accent-hover)}
.staff-create-details>summary:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
.staff-create-disclosure-icon{display:grid;place-items:center;flex:0 0 28px;width:28px;height:28px;border:1px solid currentColor;border-radius:50%}
.staff-create-disclosure-icon::before{content:"+";font-size:20px;line-height:1}
.staff-create-details[open]>summary .staff-create-disclosure-icon::before{content:"−";font-size:18px}
.staff-create-help{margin:10px 0 7px;font-size:12px;line-height:1.5}
.staff-temp-password-result{display:grid;gap:12px;margin:12px 0;padding:14px;border:1px solid var(--green-border);border-radius:12px;background:var(--green-soft);color:var(--ink)}
.staff-temp-password-result[hidden]{display:none}
.staff-temp-password-result strong{font-size:14px}
.staff-temp-password-result .staff-temp-password-username{margin:0;color:var(--ink);font-size:13px;font-weight:750}
.staff-temp-password-result p{margin:4px 0 0;color:var(--muted);font-size:12px;line-height:1.45}
.staff-temp-password-actions{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:7px;align-items:center}
.staff-temp-password-actions input{min-width:0;min-height:44px;padding:10px 12px;border:1px solid var(--control-border);border-radius:9px;background:var(--surface);color:var(--ink);font:600 13px/1.2 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.04em}
.staff-temp-password-actions button{min-height:44px;padding-inline:11px;font-size:11px}
@media(prefers-reduced-motion:reduce){.staff-create-details>summary{transition:none}}
.staff-create-form{grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end;gap:8px;padding:10px 12px}
.staff-create-form label{gap:4px;font-size:11px}
.staff-create-form .primary-button{min-height:44px;margin:0;padding-inline:12px;justify-content:center;gap:8px;white-space:nowrap}
.staff-admin-card .admin-list{gap:7px;margin-top:10px}
.staff-admin-row{grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:8px 10px}
.staff-admin-identity{display:flex;grid-column:auto;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:4px 8px;min-width:0}
.staff-admin-identity strong{font-size:13px;line-height:1.3}
.staff-admin-identity .status-pill{min-height:22px;padding-inline:8px;font-size:9px}
.staff-role-summary{max-width:100%;overflow-wrap:anywhere;color:var(--muted);font-size:11px}
.staff-admin-actions{grid-column:2;display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:6px;min-width:0}
.staff-admin-actions>.staff-recovery-button{min-height:44px;padding-inline:11px;font-size:11px;white-space:nowrap}
.staff-admin-edit{min-width:0}
.staff-admin-edit>summary{display:flex;align-items:center;justify-content:center;min-height:44px;padding-inline:12px;list-style:none;white-space:nowrap}
.staff-admin-edit>summary::-webkit-details-marker{display:none}
.admin-details>summary:focus-visible,.staff-admin-edit>summary:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.staff-admin-edit[open]{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;flex-basis:100%;width:100%;padding-top:8px;border-top:1px solid var(--line)}
.staff-admin-edit[open]>summary{grid-column:1/-1;justify-self:end}
.staff-admin-fields{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px}
.staff-admin-fields .admin-field{gap:4px;font-size:10px}
.staff-admin-fields select{min-width:0;min-height:44px;font-size:12px}
.staff-admin-fields .admin-check{min-height:44px;white-space:nowrap}
.staff-save-button{min-width:66px;min-height:44px;padding-inline:12px}
@media(max-width:640px){
  .staff-admin-card{padding:13px}
  .staff-create-form{grid-template-columns:repeat(2,minmax(0,1fr))}
  .staff-create-form .primary-button{width:100%;font-size:12px}
  .staff-admin-row{grid-template-columns:minmax(0,1fr)}
  .staff-admin-identity{gap:4px 7px}
  .staff-admin-actions{grid-column:1;justify-content:flex-start}
  .staff-admin-edit[open]{grid-template-columns:minmax(0,1fr) auto}
  .staff-admin-fields{grid-template-columns:minmax(0,1fr) auto}
  .staff-temp-password-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .staff-temp-password-actions input{grid-column:1/-1}
}
@media(max-width:360px){
  .staff-admin-card .admin-card-heading h3{font-size:17px}
  .staff-admin-scope{max-width:112px;font-size:10px;line-height:1.25}
  .staff-admin-row{padding-inline:7px}
  .staff-admin-edit>summary{padding-inline:9px;font-size:12px}
  .staff-admin-fields{grid-template-columns:minmax(0,1fr) auto;gap:6px}
  .staff-admin-fields select{padding-right:34px}
  .staff-admin-fields .admin-check{gap:6px;font-size:9px}
  .staff-save-button{min-width:60px;padding-inline:9px}
}


/* Shared button system: gold primary, blue secondary, tinted destructive. */
:root{
  --button-primary-bg:var(--accent);
  --button-primary-hover:var(--accent-hover);
  --button-primary-border:var(--accent-border);
  --button-secondary-bg:var(--blue-soft);
  --button-secondary-hover:color-mix(in srgb,var(--blue) 18%,var(--card));
  --button-secondary-border:var(--blue);
  --button-secondary-text:var(--blue);
  --button-danger-bg:var(--red-soft);
  --button-danger-hover:var(--red-soft);
  --button-danger-border:var(--red-border);
  --button-danger-text:var(--red);
}
.primary-button,.card-actions .action-primary{
  border:1px solid var(--button-primary-border);
  background:var(--button-primary-bg);
  color:var(--ink);
  font-weight:800;
  transition:background-color .15s ease,border-color .15s ease,transform .12s ease;
}
.primary-button:hover:not(:disabled),.card-actions .action-primary:hover:not(:disabled){
  border-color:var(--accent-hover-border);background:var(--button-primary-hover)
}
.quiet-button,.admin-inline-button,.card-actions button{
  border:1px solid var(--button-secondary-border);
  background:var(--button-secondary-bg);
  color:var(--button-secondary-text);
  font-weight:700;
  transition:background-color .15s ease,border-color .15s ease,transform .12s ease;
}
.quiet-button:hover:not(:disabled),.admin-inline-button:hover:not(:disabled),.card-actions button:hover:not(:disabled){
  border-color:var(--button-secondary-border);background:var(--button-secondary-hover)
}
.admin-remove-button,.visit-close-action,.card-actions .action-danger{
  border:1px solid var(--button-danger-border);
  background:var(--button-danger-bg);
  color:var(--button-danger-text);
  font-weight:800;
}
.admin-remove-button:hover:not(:disabled),.visit-close-action:hover:not(:disabled),.card-actions .action-danger:hover:not(:disabled){
  border-color:var(--red);background:var(--button-danger-hover);color:var(--red)
}
.staff-save-button{min-height:44px;margin:0;padding-inline:12px}
button:not(:disabled):active{transform:translateY(1px)}
button:disabled{cursor:not-allowed;opacity:.55}
.primary-button:focus-visible,.quiet-button:focus-visible,.admin-inline-button:focus-visible,
.admin-remove-button:focus-visible,.card-actions button:focus-visible,.staff-admin-edit>summary:focus-visible{
  outline:3px solid var(--focus);outline-offset:2px
}
@media(prefers-reduced-motion:reduce){.primary-button,.quiet-button,.admin-inline-button,.admin-remove-button,.card-actions button{transition:none}}


/* Operational screens prioritize queues and actions over display typography. */
:root{--type-page-title:clamp(22px,2.2vw,26px);--type-section-title:19px;--type-card-title:17px;--type-form-title:16px}
.login-card>.eyebrow{display:none}
.login-card h1{font:700 26px/1.2 'DM Sans',Arial,sans-serif;letter-spacing:0;text-wrap:balance}
.page-heading{align-items:center;gap:12px;padding:16px clamp(18px,4vw,56px) 12px}
.page-heading>div:first-child{min-width:0}
.page-heading>.page-tools{flex:0 0 auto}
.page-heading h1{font:700 var(--type-page-title)/1.2 'DM Sans',Arial,sans-serif;letter-spacing:0;text-wrap:balance}
.dashboard-view[data-role="restaurant_admin"] .page-heading h1{font-size:var(--type-page-title)}
.page-heading .eyebrow,.page-heading .muted{display:none}
.page-heading .live-clock{padding:7px 10px;font-size:11px;letter-spacing:0}
.queue-panel{padding-top:14px}
.queue-heading{align-items:center;margin-bottom:10px}
.queue-heading .eyebrow,.admin-card-heading .eyebrow{display:none}
.queue-heading h2,.admin-page-section>.queue-heading h2{font:700 var(--type-section-title)/1.25 'DM Sans',Arial,sans-serif;text-wrap:balance}
.admin-card-heading h3,.staff-admin-card .admin-card-heading h3{font:700 var(--type-card-title)/1.3 'DM Sans',Arial,sans-serif;text-wrap:balance}
.admin-product-form>h4,.admin-media-section>h4{font:700 var(--type-card-title)/1.3 'DM Sans',Arial,sans-serif;text-wrap:balance}
.admin-variants>h4,.admin-section-title{font:700 var(--type-form-title)/1.35 'DM Sans',Arial,sans-serif}
.table-link-result h3,.visit-card-heading h3,.visit-code-result h3{font:700 var(--type-card-title)/1.3 'DM Sans',Arial,sans-serif;text-wrap:balance}
.auth-flow-title,.auth-flow-form h3{font:700 var(--type-card-title)/1.3 'DM Sans',Arial,sans-serif}
.security-dialog h2{font:700 22px/1.25 'DM Sans',Arial,sans-serif;text-wrap:balance}
.admin-section-title{margin-top:14px}
@media(max-width:850px){.page-heading{flex-direction:row;align-items:center}}
@media(max-width:480px){.page-heading{flex-direction:row;align-items:center;gap:8px;padding:12px 14px 10px}.page-heading>.page-tools{margin-left:auto}.page-heading .live-clock{padding:6px 8px;font-size:10px}.queue-panel{padding-top:12px}.queue-heading h2,.admin-page-section>.queue-heading h2{font-size:18px}.login-card h1{font-size:24px}}

/* Keep the item list compact; expose catalog search and filters on request. */
.admin-filter-disclosure{margin:10px 0 6px}
.admin-filter-trigger{display:flex;align-items:center;gap:9px;width:max-content;max-width:100%;min-height:44px;list-style:none}
.admin-filter-trigger::-webkit-details-marker{display:none}
.admin-filter-trigger::after{content:'⌄';margin-left:2px;color:var(--muted);font-size:15px;line-height:1}
.admin-filter-disclosure[open]>.admin-filter-trigger::after{content:'⌃'}
.admin-filter-disclosure>summary:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
.admin-filter-count{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:var(--accent-soft);color:var(--amber-ink);font-size:11px;font-weight:800}
.admin-filter-count[hidden],.admin-filter-clear-row[hidden]{display:none!important}
.admin-catalog-tools{grid-template-columns:minmax(0,1.5fr) repeat(3,minmax(110px,1fr));gap:10px;margin:8px 0 6px;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--surface-subtle)}
.admin-filter-clear-row{grid-column:1/-1;display:flex;justify-content:flex-end}
.admin-filter-clear-row .quiet-button{min-height:40px;padding-inline:11px;font-size:12px}
@media(max-width:640px){
  .admin-filter-trigger{width:100%;justify-content:center}
  .admin-catalog-tools{grid-template-columns:minmax(0,1fr);padding:10px}
  .admin-filter-clear-row{grid-column:auto}
  .admin-filter-clear-row .quiet-button{width:100%;min-height:44px}
}

/* Catalog color carries meaning: blue identifies categories, status colors show publication. */
#add-product.primary-button{min-height:44px;margin:0;padding-inline:14px;justify-content:center;white-space:nowrap}
.admin-chip,.admin-product-category{--catalog-tone:hsl(var(--category-hue,210) 58% 34%);--catalog-tone-soft:hsl(var(--category-hue,210) 76% 95%)}
.admin-chip{border-color:color-mix(in srgb,var(--catalog-tone) 28%,var(--card));background:var(--catalog-tone-soft);color:var(--catalog-tone)}
.admin-chip>span{display:flex;align-items:center;min-width:0}
.admin-chip>span::before{content:"";width:8px;height:8px;flex:none;margin-right:7px;border-radius:50%;background:var(--catalog-tone)}
.admin-chip small{color:var(--catalog-tone);opacity:.78}
.admin-chip .admin-inline-button{border-color:color-mix(in srgb,var(--catalog-tone) 34%,var(--card));background:var(--catalog-tone-soft);color:var(--catalog-tone)}
.admin-chip .admin-inline-button:hover:not(:disabled){border-color:var(--catalog-tone);background:color-mix(in srgb,var(--catalog-tone) 18%,var(--card))}
#category-editor>summary{display:flex;align-items:center;gap:9px;width:100%;min-height:44px;padding:0 13px;border:1px solid var(--line-strong);border-radius:10px;background:var(--surface-subtle);color:var(--ink);font-weight:750;cursor:pointer;list-style:none}
#category-editor>summary::-webkit-details-marker{display:none}
#category-editor>summary::before{content:"+";display:grid;place-items:center;width:24px;height:24px;border-radius:7px;background:var(--action);color:#fff;font-size:17px;line-height:1}
#category-editor[open]>summary{border-color:var(--link);background:var(--selection);color:var(--link)}
#category-editor[open]>summary::before{background:#fff;color:var(--link)}
#category-editor>.admin-category-form{margin-top:10px;border-color:var(--line);background:var(--surface-subtle)}
.admin-filter-trigger{border-color:var(--line-strong);background:var(--surface-subtle);color:var(--ink)}
.admin-filter-trigger::after{color:var(--muted)}
.admin-result-count{display:flex;align-items:center;width:max-content;max-width:100%;margin:8px 0;padding:6px 9px;border-radius:7px;background:var(--selection);color:var(--link);font-size:12px;font-weight:700}
.admin-product-row{border-left:3px solid var(--line-strong)}
.admin-product-row[data-publication-status="published"]{border-left-color:var(--green)}
.admin-product-row[data-publication-status="draft"]{border-left-color:var(--accent-border)}
.admin-product-row[data-publication-status="removed"]{border-left-color:var(--red)}
.admin-product-meta{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:11px}
.fulfillment-settings-form{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:14px 16px;margin:0 0 16px;border:1px solid var(--line,#ded8cd);border-radius:14px;background:var(--surface-muted,#f7f3eb)}
.fulfillment-settings-form>div{min-width:180px;flex:1}
.fulfillment-settings-form strong{display:block;font-size:14px}
.fulfillment-settings-form .admin-help{margin:3px 0 0}
.category-route-label{display:block;font-size:10px;line-height:1.2;color:var(--muted,#666);font-weight:600}
.product-editor-nav+.product-details-panel .admin-field:has([data-field="stationCode"]){grid-column:1/-1}
.admin-product-category{display:inline-flex;align-items:center;max-width:100%;padding:3px 7px;border-radius:999px;background:var(--catalog-tone-soft);color:var(--catalog-tone);font-weight:700;overflow-wrap:anywhere}
.admin-publication-status{display:inline-flex;align-items:center;min-height:22px;padding:2px 7px;border-radius:999px;background:var(--accent-soft);color:var(--amber-ink);font-size:10px;font-weight:800}
.admin-publication-status.is-published{background:var(--green-soft);color:var(--green)}
.admin-publication-status.is-removed{background:var(--red-soft);color:var(--red)}
.admin-reel-status{display:inline-flex;align-items:center;min-height:22px;padding:2px 7px;border:1px solid var(--amber-border);border-radius:999px;background:var(--amber-soft);color:var(--amber-ink);font-size:10px;font-weight:800}
.admin-reel-status.is-ready{border-color:var(--green-border);background:var(--green-soft);color:var(--green)}
.admin-reel-status.is-archived{border-color:var(--red-border);background:var(--red-soft);color:var(--red)}
.admin-reel-status.is-unavailable{border-color:var(--line-strong);background:var(--surface-subtle);color:var(--muted)}
.admin-reel-filter-help{grid-column:1/-1;margin:0;color:var(--muted);font-size:12px;line-height:1.45}
.admin-product-price{color:var(--ink);font-weight:750;font-variant-numeric:tabular-nums}
.admin-product-row>[data-admin-action="edit-product"]{border-color:var(--button-secondary-border);background:var(--button-secondary-bg);color:var(--button-secondary-text)}
.admin-product-row>[data-admin-action="edit-product"]:hover:not(:disabled){border-color:var(--link);background:var(--selection);color:var(--link)}

@media(max-width:640px){
  #add-product.primary-button{width:100%}
  .admin-product-meta{gap:5px}
}

/* Staff directory: compact actions, clear status cues, searchable two-column cards. */
.staff-admin-card{width:100%;max-width:1120px;margin-inline:auto}
.staff-create-details{width:max-content;max-width:100%;border:0;background:transparent}
.staff-create-details>summary{display:inline-flex;width:max-content;max-width:100%;justify-content:flex-start}
.staff-create-details[open]>.staff-create-form{margin-top:8px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-subtle)}
.staff-directory-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;max-width:1000px;margin:14px 0 0}
.staff-directory-controls[hidden]{display:none!important}
.staff-search-field{position:relative;display:block;min-width:0}
.staff-search-field input{display:block;width:100%;min-width:0;min-height:46px;padding:10px 12px 10px 42px;border:1px solid var(--control-border);border-radius:10px;background:var(--card);color:var(--ink);font:500 14px 'DM Sans',Arial,sans-serif}
.staff-search-field input:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.staff-search-icon{position:absolute;top:50%;left:13px;width:18px;height:18px;transform:translateY(-50%);fill:none;stroke:var(--muted);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8;pointer-events:none}
.staff-filter-disclosure{position:relative;margin:0}
.staff-filter-trigger{width:max-content;min-width:104px;justify-content:center}
.staff-filter-trigger>svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}
.staff-filter-panel{position:absolute;top:calc(100% + 6px);right:0;z-index:8;width:min(290px,calc(100vw - 48px));padding:12px;border:1px solid var(--line-strong);border-radius:12px;background:var(--card);box-shadow:0 12px 30px #191a1820}
.staff-filter-panel .admin-field{font-size:11px}
.staff-filter-panel select{min-height:44px;font-size:13px}
.staff-filter-panel .admin-filter-clear-row{margin-top:8px}
.staff-filter-panel .admin-filter-clear-row .quiet-button{min-height:44px;padding-inline:11px;font-size:12px}
.staff-result-count{grid-column:1/-1;margin:0}
.staff-admin-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,390px),1fr));align-items:start;gap:10px;max-width:1000px;margin-top:10px}
.staff-admin-row{grid-template-columns:minmax(0,1fr);align-content:start;align-items:start;gap:9px;min-width:0;min-height:112px;padding:12px 13px;border-left:3px solid var(--blue)}
.staff-admin-row[data-staff-active="true"]{border-left-color:var(--green)}
.staff-admin-row[data-staff-active="false"]{border-left-color:var(--red)}
.staff-admin-identity{grid-column:1;display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:5px 8px;min-width:0}
.staff-admin-identity strong{max-width:100%;overflow-wrap:anywhere;font-size:13px;line-height:1.3}
.staff-admin-identity .status-pill{min-height:24px;padding-inline:8px;font-size:9px}
.staff-role-summary{max-width:100%;overflow-wrap:anywhere;color:var(--muted);font-size:11px}
.staff-admin-actions{grid-column:1;display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:6px;min-width:0}
.staff-admin-edit[open]{grid-column:1;grid-template-columns:minmax(0,1fr);width:100%;padding-top:8px;border-top:1px solid var(--line)}
.staff-admin-edit[open]>summary{grid-column:1;justify-self:start}
.staff-admin-fields{grid-template-columns:minmax(0,1fr) auto}
.staff-admin-fields .admin-check{min-height:44px}
.staff-empty-results{grid-column:1/-1;margin:0;padding:16px;border:1px dashed var(--line-strong);border-radius:10px;text-align:left}
@media(max-width:640px){
  .staff-create-details{width:fit-content}
  .staff-create-form{grid-template-columns:repeat(2,minmax(0,1fr))}
  .staff-create-form .primary-button{width:auto;max-width:100%;justify-self:start;font-size:12px}
  .staff-directory-controls{grid-template-columns:minmax(0,1fr) auto;gap:7px}
  .staff-search-field input{font-size:16px}
  .staff-filter-trigger{width:max-content;min-width:92px;justify-content:center;padding-inline:10px}
  .staff-admin-list{grid-template-columns:minmax(0,1fr)}
  .staff-admin-row{grid-template-columns:minmax(0,1fr);min-height:0}
  .staff-admin-actions{grid-column:1}
  .staff-admin-edit[open]{grid-template-columns:minmax(0,1fr)}
  .staff-result-count{font-size:11px}
}
@media(max-width:380px){
  .staff-admin-card{padding:11px}
  .staff-directory-controls{grid-template-columns:minmax(0,1fr) auto}
  .staff-search-field input{min-height:44px;padding-left:36px;font-size:16px}
  .staff-search-icon{left:10px;width:16px;height:16px}
  .staff-filter-trigger{min-width:82px;gap:6px;padding-inline:8px;font-size:12px}
}

/* Category overview labels are intentionally non-interactive. */
.admin-chip-list{align-items:center;gap:8px;margin:10px 0 12px}
.admin-chip.category-chip{display:inline-flex;align-items:center;justify-content:flex-start;gap:9px;width:auto;max-width:100%;min-height:40px;padding:4px 11px;border-color:color-mix(in srgb,var(--catalog-tone) 20%,var(--line));border-radius:999px;background:var(--catalog-tone-soft);color:var(--catalog-tone);font:700 12px/1.25 'DM Sans',Arial,sans-serif;text-align:left}
.category-chip .category-chip-name{display:inline-flex;align-items:center;min-width:0;overflow-wrap:anywhere}
.category-chip .category-chip-name::before{content:"";width:8px;height:8px;flex:0 0 8px;margin-right:8px;border-radius:50%;background:var(--catalog-tone)}
.category-manage-all{width:auto;min-height:44px}
.category-directory-card>.editor-back{display:inline-flex;margin:0 0 13px}
.category-directory-list{display:grid;gap:8px;margin-top:14px}
.category-directory-row{display:grid;grid-template-columns:10px minmax(0,1fr) auto auto;align-items:center;gap:12px;min-width:0;padding:12px;border:1px solid var(--line);border-radius:11px;background:var(--card)}
.category-directory-marker{width:9px;height:32px;border-radius:99px;background:hsl(var(--category-hue) 48% 48%)}
.category-directory-details{display:grid;gap:3px;min-width:0}
.category-directory-details strong{overflow-wrap:anywhere;font-size:13px}
.category-directory-meta{overflow-wrap:anywhere;color:var(--muted);font-size:11px}
.category-directory-edit{min-height:40px;padding-inline:13px}
.category-directory-order{display:flex;gap:4px}
.category-order-button{width:44px;min-height:44px;padding:0;font-size:17px;font-weight:800}
.category-order-button:disabled{opacity:.38;cursor:not-allowed}
.category-archive-impact{grid-column:1/-1;margin:2px 0;padding:10px 12px;border:1px solid var(--accent-border);border-radius:9px;background:var(--accent-soft);color:var(--amber-ink);font-size:12px;line-height:1.5}
.category-editor-archive,.category-editor-restore{width:auto;min-height:44px;padding-inline:14px}
.category-editor{width:max-content;max-width:100%;margin:8px 0 16px;border:0;background:transparent}
#category-editor>summary.category-editor-trigger{display:inline-flex;align-items:center;gap:9px;width:max-content;max-width:100%;min-height:44px;padding:0 13px;border:1px solid var(--line-strong);border-radius:10px;background:var(--surface-subtle);color:var(--ink);font-size:12px;font-weight:750;cursor:pointer;list-style:none}
#category-editor>summary.category-editor-trigger::-webkit-details-marker{display:none}
#category-editor>summary.category-editor-trigger::before{content:"+";display:grid;place-items:center;width:23px;height:23px;border-radius:7px;background:var(--action);color:#fff;font-size:17px;line-height:1}
#category-editor>summary.category-editor-trigger:hover{border-color:var(--link);background:var(--selection);color:var(--link)}
#category-editor[open]>summary.category-editor-trigger{border-color:var(--link);background:var(--selection);color:var(--link)}
#category-editor[open]>summary.category-editor-trigger::before{content:"−";background:#fff;color:var(--link)}
#category-editor>summary.category-editor-trigger:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
#category-editor>.admin-category-form{margin-top:9px;border-color:var(--line);background:var(--surface-subtle)}
.category-form-actions{grid-column:1/-1;display:flex;align-items:center;justify-content:flex-start;gap:8px;margin-top:2px}
.category-form-actions .primary-button,.category-form-actions .quiet-button{width:auto;min-height:44px;margin:0;padding-inline:14px}
@media(max-width:640px){
  .admin-chip-list{gap:7px}
  #category-editor>summary.category-editor-trigger{min-height:44px}
  .category-form-actions{flex-wrap:wrap}
}
@media(prefers-reduced-motion:reduce){.admin-chip.category-chip{transition:none}}


/* Navigation drawer: one role-filtered map for operational and administrative screens. */
.brand-cluster{display:flex;align-items:center;gap:12px;min-width:0;grid-area:brand}
.menu-toggle,.drawer-close{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;padding:0;border:1px solid var(--button-secondary-border);border-radius:10px;background:var(--button-secondary-bg);color:var(--button-secondary-text);touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.menu-toggle:hover,.drawer-close:hover{border-color:var(--line-strong);background:var(--surface-subtle)}
.menu-toggle svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-width:1.8}
.app-drawer{position:fixed;inset:0;margin:0;width:100vw;height:100dvh;max-width:none;max-height:none;overflow:hidden;padding:0;border:0;background:transparent;color:var(--ink);overscroll-behavior:contain}
.app-drawer::backdrop{background:rgb(20 22 20 / 46%);backdrop-filter:blur(2px)}
.app-drawer-sheet{display:flex;flex-direction:column;gap:20px;width:min(360px,calc(100vw - 32px));height:100%;overflow-y:auto;padding:20px 16px max(18px,env(safe-area-inset-bottom));border-right:1px solid var(--line);background:var(--card);box-shadow:18px 0 44px rgb(16 17 15 / 16%);overscroll-behavior:contain;animation:drawer-enter .18s ease-out both}
@keyframes drawer-enter{from{opacity:.72;transform:translateX(-18px)}to{opacity:1;transform:translateX(0)}}
.drawer-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 2px 16px;border-bottom:1px solid var(--line)}
.drawer-heading h2{margin:0;font:600 22px/1.15 Oswald,sans-serif}
.drawer-close{border-color:transparent;background:transparent;font-size:25px;line-height:1}
.drawer-navigation{display:grid;gap:22px}
.drawer-group,.drawer-account{display:grid;gap:5px;min-width:0}
.drawer-group h3,.drawer-account h3{margin:0 0 4px;padding:0 10px;color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.drawer-link{display:flex;align-items:center;gap:12px;width:100%;min-width:0;min-height:48px;padding:0 11px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--ink);font:650 14px/1.25 'DM Sans',Arial,sans-serif;text-align:left;text-decoration:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.drawer-link>span:nth-of-type(1){min-width:0;flex:1;overflow-wrap:anywhere}
.drawer-link>svg{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7;color:var(--muted)}
.drawer-link:hover{background:var(--surface-subtle);color:var(--ink)}
.drawer-link[aria-current="page"]{background:var(--accent-soft);color:var(--amber-ink);font-weight:800}
.drawer-link[aria-current="page"]>svg{color:var(--amber-ink)}
.drawer-link .count{margin-left:auto}
.drawer-account{gap:5px;margin-top:auto;padding-top:14px;border-top:1px solid var(--line)}
.drawer-action{cursor:pointer}
.drawer-signout{color:var(--red)}
.drawer-signout>svg{color:var(--red)}
.drawer-link:focus-visible,.menu-toggle:focus-visible,.drawer-close:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
@media(max-width:640px){.brand-cluster{gap:8px}.app-drawer-sheet{padding-top:14px}}
@media(max-width:360px){.brand-cluster{gap:6px}.wordmark .product-logo{width:108px}}
@media(prefers-reduced-motion:reduce){.app-drawer-sheet{animation:none}}

/* Keep queue cards wide enough for their content before adding a second column. */
.queue-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,460px),1fr))}

/* Bill requests share the waiter's work queue but retain a clear, text-backed visual identity. */
.request-card[data-request-type="bill"]{border-color:var(--accent-border);border-left:5px solid var(--accent-border);background:var(--accent-soft);box-shadow:none}
.request-card[data-request-type="bill"] .request-icon{background:var(--accent);color:var(--ink);font-size:12px;font-weight:800}
.request-card[data-request-type="bill"] .status-pill{background:var(--card);color:var(--amber-ink)}
.request-card[data-request-type="waiter"]{border-color:var(--blue);border-left:5px solid var(--blue);background:var(--blue-soft);box-shadow:none}
.request-card[data-request-type="waiter"] .request-icon{background:var(--blue);color:white;font-size:20px;font-weight:800}
.request-card[data-request-type="waiter"] .status-pill{background:var(--card);color:var(--blue)}
.request-card{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px}
.request-main{display:flex;align-items:center;gap:13px;min-width:0}.request-main>div{min-width:0;flex:1;overflow-wrap:anywhere}
@media(max-width:640px){.request-card{grid-template-columns:minmax(0,1fr) auto}.request-card .request-main{grid-column:1/-1}.request-card>.status-pill{justify-self:start}.request-card>.card-actions{width:auto;justify-self:end;margin:0}}
@media(max-width:360px){.request-card{grid-template-columns:minmax(0,1fr)}.request-card>.status-pill,.request-card>.card-actions{grid-column:1;justify-self:start}.request-card>.card-actions{width:auto}}

/* Kitchen tickets prioritize flavor and preparation details over price. */
.dashboard-view[data-role="kitchen"] .order-card{padding:17px;border-radius:13px;box-shadow:none}
.dashboard-view[data-role="kitchen"] .card-heading{align-items:center;padding-bottom:11px}
.dashboard-view[data-role="kitchen"] .card-heading strong{font-size:18px}
.dashboard-view[data-role="kitchen"] .order-lines{gap:9px;margin:12px 0 0}
.dashboard-view[data-role="kitchen"] .kitchen-order-line{display:grid;gap:7px;min-width:0;padding:12px;border:1px solid var(--line);border-left:4px solid var(--accent-border);border-radius:10px;background:var(--surface-subtle)}
.dashboard-view[data-role="kitchen"] .kitchen-item-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;min-width:0}
.dashboard-view[data-role="kitchen"] .kitchen-item-title{min-width:0;font:600 clamp(22px,2vw,28px)/1.08 Oswald,sans-serif;overflow-wrap:anywhere}
.dashboard-view[data-role="kitchen"] .kitchen-quantity{display:grid;place-items:center;flex:none;min-width:42px;min-height:42px;padding:0 8px;border-radius:10px;background:var(--accent);color:var(--ink);font-size:19px;font-weight:800;font-variant-numeric:tabular-nums}
.dashboard-view[data-role="kitchen"] .kitchen-size-label{justify-self:start;padding:4px 8px;border:1px solid var(--line-strong);border-radius:6px;background:var(--card);color:var(--muted);font-size:12px;font-weight:750}
.dashboard-view[data-role="kitchen"] .kitchen-choice-list{display:grid;gap:6px;min-width:0}
.dashboard-view[data-role="kitchen"] .kitchen-choice-group{display:grid;grid-template-columns:minmax(90px,auto) minmax(0,1fr);gap:6px;min-width:0;font-size:14px;line-height:1.4}
.dashboard-view[data-role="kitchen"] .kitchen-choice-label{color:var(--muted);font-size:12px;overflow-wrap:anywhere}
.dashboard-view[data-role="kitchen"] .kitchen-choice-group>span{min-width:0;font-weight:700;overflow-wrap:anywhere}
@media(max-width:480px){.dashboard-view[data-role="kitchen"] .order-card{padding:13px}.dashboard-view[data-role="kitchen"] .kitchen-order-line{padding:10px}.dashboard-view[data-role="kitchen"] .kitchen-choice-group{grid-template-columns:1fr;gap:2px}.dashboard-view[data-role="kitchen"] .kitchen-item-title{font-size:24px}}
.admin-suggestions-card>.muted{max-width:720px;margin:0;color:var(--muted);font-size:13px;line-height:1.55}
.admin-suggestion-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:11px;background:var(--card)}
.admin-suggestion-summary{display:grid;gap:5px;min-width:0}
.admin-suggestion-summary strong{overflow-wrap:anywhere;font-size:13px}
.admin-suggestion-summary>span:nth-child(2){color:var(--muted);font-size:11px}
.menu-suggestion-form{margin-top:16px;padding:15px;border:1px solid var(--line-strong);border-radius:12px;background:var(--surface-subtle)}
.menu-suggestion-form>h4{margin:0;font:600 19px Oswald,sans-serif}
.menu-suggestion-form>.muted{margin:0;color:var(--muted);font-size:12px;line-height:1.5}
.menu-suggestion-form .admin-locale-fields{margin:0;background:var(--card)}
.menu-suggestion-form [data-suggestion-target][hidden],
.menu-suggestion-form .suggestion-video-preview[hidden]{display:none}
.suggestion-target-note{margin:0;color:var(--muted);font-size:12px;line-height:1.45}
.suggestion-video-preview{display:grid;grid-template-columns:minmax(88px,132px) minmax(0,1fr);align-items:center;gap:12px;max-width:620px;padding:10px;border:1px solid var(--line);border-radius:11px;background:var(--card)}
.suggestion-video-preview video{display:block;width:100%;max-height:168px;aspect-ratio:9/14;object-fit:cover;border-radius:8px;background:#171717}
.suggestion-video-preview img{display:block;width:100%;max-height:168px;aspect-ratio:9/14;object-fit:cover;border-radius:8px;background:var(--paper)}
.suggestion-video-preview video[hidden],.suggestion-video-preview img[hidden]{display:none}
.suggestion-video-preview.is-text-only{grid-template-columns:minmax(0,1fr);background:color-mix(in srgb,var(--card) 72%,var(--paper))}
.suggestion-video-preview.is-text-only .suggestion-video-preview-copy{min-height:86px;align-content:center}
.suggestion-video-preview-copy{display:grid;gap:5px;min-width:0;color:var(--muted);font-size:12px;line-height:1.4}
.suggestion-video-preview-copy strong{color:var(--ink);font-size:13px}
.suggestion-video-preview-copy b{color:var(--ink);overflow-wrap:anywhere}
.suggestion-video-preview-copy small{font-size:11px}
.menu-suggestion-form option:disabled{color:var(--muted)}

@media(max-width:640px){.suggestion-video-preview{grid-template-columns:minmax(76px,96px) minmax(0,1fr);gap:9px;padding:8px}.suggestion-video-preview video,.suggestion-video-preview img{max-height:132px}.revision-compare{grid-template-columns:minmax(0,1fr)}.admin-suggestion-row{gap:8px;padding:10px}.admin-suggestion-row>.quiet-button{min-height:44px}.menu-suggestion-form{padding:11px}.menu-suggestion-form .admin-form-footer{flex-direction:row}.menu-suggestion-form .admin-form-footer button{width:auto}}

/* Product form validation: list every blocker and connect each message to its control. */
.admin-validation-summary{display:grid;gap:7px;padding:12px 14px;border:1px solid var(--red-border);border-radius:11px;background:var(--red-soft);color:var(--red);font-size:12px;line-height:1.45}
.admin-validation-summary:focus{outline:3px solid var(--red);outline-offset:3px}
.admin-validation-list{display:grid;gap:3px;margin:0;padding-left:18px}
.admin-validation-link{min-height:32px;padding:3px 0;border:0;background:transparent;color:var(--red);font:600 12px/1.4 'DM Sans',Arial,sans-serif;text-align:left;text-decoration:underline;text-underline-offset:2px}
.admin-validation-link:focus-visible{outline-color:var(--red)}
.admin-field.is-invalid{color:var(--red)}
.admin-field.is-invalid input,.admin-field.is-invalid select,.admin-field.is-invalid textarea{border:2px solid var(--red);background:#fffafa;box-shadow:0 0 0 2px #a9342b12}
.admin-locale-fields.is-invalid{border-color:var(--red);background:var(--red-soft)}
.admin-locale-fields.is-invalid .admin-locale-translations>summary{color:var(--red)}
.admin-field-error,.admin-validation-error{display:block;color:var(--red);font-size:11px;font-weight:700;line-height:1.4}
.admin-validation-error{margin:7px 2px}
.admin-variants.is-invalid,.admin-groups.is-invalid,.admin-choices.is-invalid{border:1px solid var(--red-border);border-radius:9px;background:var(--red-soft)}
.admin-variants.is-invalid,.admin-groups.is-invalid{padding:8px}
.admin-choices.is-invalid{padding:5px 8px}

/* Dedicated resource editors: list navigation and edit controls never compete. */
a.quiet-button,a.primary-button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;min-height:44px;white-space:normal;text-align:center}
a.quiet-button:focus-visible,a.primary-button:focus-visible,a.category-chip:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
.admin-card-heading>a.primary-button{margin:0;flex-shrink:0}
.dedicated-editor{max-width:1080px;padding-top:0}
.editor-back{margin-bottom:20px;gap:8px}
.editor-back.quiet-button:hover:not(:disabled){border-color:var(--line-strong);background:var(--surface-subtle);color:var(--ink)}
.dedicated-editor .admin-product-form,.dedicated-editor .admin-category-form,.dedicated-editor .table-create-card{margin:0;padding:0;border:0;background:transparent}
.dedicated-editor .admin-product-form>h4{display:none}
.dedicated-editor .dedicated-staff-form{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;padding:0;border:0;margin-bottom:20px}
.dedicated-staff-form h3{margin:0;overflow-wrap:anywhere;font-size:18px}
.dedicated-editor .primary-button{width:auto;justify-content:center}
.dedicated-editor .editor-cancel{margin-top:20px}
.dedicated-editor:has(#editor-product:not([hidden]))>.admin-card>.editor-cancel,
.dedicated-editor:has(#editor-menu-choice:not([hidden]))>.admin-card>.editor-cancel,
.dedicated-editor:has(#editor-category:not([hidden]))>.admin-card>.editor-cancel,
.dedicated-editor:has(#editor-suggestion:not([hidden]))>.admin-card>.editor-cancel{display:none}
.staff-admin-list .staff-admin-row{grid-template-columns:minmax(0,1fr) auto}
a.category-chip{color:var(--ink);text-decoration:none;min-height:44px}
#editor-content{min-width:0}
#editor-content :is(input,textarea,select){font-size:16px}
#editor-content .table-admin-row{border:0;padding:0}
#editor-content .admin-field:has(input[type=checkbox]){min-height:44px}
#editor-content :is(h3,p,strong){overflow-wrap:anywhere}
@media(max-width:640px){.dedicated-editor .admin-form-footer{flex-direction:column-reverse}.dedicated-editor .primary-button{width:100%}.dedicated-editor .table-create-form{grid-template-columns:1fr}.dedicated-editor .editor-cancel{width:100%}.admin-card-heading>a.primary-button{align-self:stretch}.staff-admin-list .staff-admin-row{grid-template-columns:minmax(0,1fr)}.staff-admin-actions{justify-content:flex-start}}

/* No polling badge on editors; compact, unobscured actions on short screens. */
.page-heading>.page-tools{width:auto}
.dedicated-editor .admin-form-footer{position:static;margin:18px 0 0;padding:16px 0 0;background:var(--card);backdrop-filter:none;flex-direction:row}
.dedicated-editor .admin-form-footer>.primary-button{flex:1}
.dedicated-editor .admin-form-footer>.quiet-button{width:auto;flex:0 0 auto}
.dedicated-editor .staff-create-form{grid-template-columns:minmax(0,1fr)}
.dedicated-editor .staff-create-form>.primary-button{justify-self:start}
@media(max-width:480px){.dedicated-editor .admin-form-footer{flex-wrap:wrap}.dedicated-editor .admin-form-footer>button{min-width:100px}.dedicated-editor .table-admin-actions{display:flex;flex-wrap:wrap}.dedicated-editor .table-admin-actions>button{flex:1 1 160px;white-space:normal}}
.admin-card-heading{flex-wrap:wrap}
.admin-card-heading>a.primary-button{width:auto;max-width:100%;flex:0 1 auto;white-space:normal}
.dedicated-editor #category-editor{width:100%;margin:0}
.dedicated-editor #category-editor>.admin-category-form{margin:0;background:transparent}
.dashboard-view:has(.dedicated-editor:not([hidden])) .page-heading{max-width:1080px}
.dedicated-editor .menu-suggestion-form{margin:0;padding:0;border:0;background:transparent}
.dedicated-editor .menu-suggestion-form>h4{display:none}
@media(max-width:480px){.admin-card-heading>a.primary-button{flex-basis:100%;width:100%}.admin-catalog-card .admin-card-heading{gap:12px}}

/* Native file actions and header icons use the same secondary palette. */
.menu-toggle:hover:not(:disabled),.drawer-close:hover:not(:disabled){background:var(--button-secondary-hover)}
.menu-toggle{border-color:transparent;background:transparent;color:var(--ink)}
.menu-toggle:hover:not(:disabled){border-color:var(--line);background:var(--surface-subtle)}
input[type=file]::file-selector-button{min-height:44px;margin-right:10px;padding:8px 12px;border:1px solid var(--button-secondary-border);border-radius:8px;background:var(--button-secondary-bg);color:var(--button-secondary-text);font:inherit;font-weight:700;cursor:pointer}
input[type=file]:hover:not(:disabled)::file-selector-button{background:var(--button-secondary-hover)}

/* Task-oriented editors: separate pricing from media and reveal extras on demand. */
.dedicated-editor #editor-content{background:var(--surface-subtle);padding:24px}
.product-editor-nav{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--line-strong)}
.product-editor-nav .quiet-button{min-height:44px;padding:10px 16px;font-size:14px}
.product-editor-nav [role=tab]:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.product-editor-nav [role=tab][aria-selected=true]{background:var(--ink);border-color:var(--ink);color:var(--card)}
.dedicated-editor .editor-help{max-width:68ch;color:var(--muted);font-size:13px;line-height:1.55;margin:4px 0 14px}
.dedicated-editor .editor-disclosure{margin:10px 0;padding:0;border:1px solid var(--line-strong);border-radius:10px;background:var(--paper)}
.dedicated-editor .editor-disclosure>summary{display:list-item;min-height:44px;padding:12px 16px;color:var(--ink);font-size:13px;font-weight:700;cursor:pointer;list-style-position:inside}
.dedicated-editor .editor-disclosure>summary:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
.dedicated-editor .editor-disclosure[open]>summary{border-bottom:1px solid var(--line-strong);margin-bottom:12px}
.dedicated-editor .editor-disclosure>:not(summary){margin:12px 16px}
.dedicated-editor .editor-disclosure>.admin-field{max-width:640px}
.dedicated-editor #editor-content :is(input:not([type=checkbox]):not([type=hidden]),textarea,select){background-color:#eef2f5;border-color:var(--control-border);border-radius:8px}
.dedicated-editor #editor-content :is(input,textarea,select):focus{background-color:var(--card)}
.dedicated-editor #editor-content .is-invalid :is(input,textarea,select){background-color:var(--red-soft);border-color:var(--red)}
.dedicated-editor .admin-product-form>.admin-form-grid,.dedicated-editor .admin-product-form>.admin-locale-fields{border:0;background:transparent;padding:0}
.dedicated-editor .admin-variant{background:transparent}
.dedicated-editor .admin-locale-fields{background:transparent;border:0;padding-inline:0}
.dedicated-editor .admin-media-section{border:0;margin:0;padding:0;gap:8px}
.dedicated-editor .media-upload-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:0;background:transparent}
.dedicated-editor .media-upload-form>.admin-field:first-child,.dedicated-editor .media-upload-form>.editor-disclosure{grid-column:1/-1}
.dedicated-editor .media-admin-row{display:flex;flex-direction:column;align-items:stretch;border:0;padding:0;background:transparent}
.dedicated-editor .media-library-heading{margin:18px 0 0;font-size:14px}
.dedicated-editor .media-admin-row>button{align-self:start}
.dedicated-editor .admin-form-footer{justify-content:flex-start;gap:10px;background:transparent}
.dedicated-editor .primary-button,.dedicated-editor .admin-form-footer>.primary-button,.dedicated-editor .admin-form .primary-button{flex:0 1 auto;width:auto;max-width:100%;min-height:44px;padding:10px 18px;font-size:14px;justify-self:start;margin-top:0}
.dedicated-editor .quiet-button{min-height:44px;padding:10px 14px;font-size:13px;white-space:normal}
.dedicated-editor .admin-form-footer>.quiet-button{flex:0 1 auto}
.dedicated-editor .menu-suggestion-form>.muted{max-width:68ch;font-size:14px;line-height:1.5;margin:0 0 10px}
.dedicated-editor .menu-suggestion-form .admin-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:640px){
 .dedicated-editor #editor-content{padding:16px}
 .dedicated-editor .media-upload-form,.dedicated-editor .menu-suggestion-form .admin-form-grid{grid-template-columns:minmax(0,1fr)}
 .dedicated-editor .editor-disclosure>:not(summary){margin:12px}
 .product-editor-nav{gap:6px;margin-bottom:18px}
 .product-editor-nav .quiet-button{flex:1;padding:9px;font-size:13px}
}
.product-editor-nav [role=tab][aria-selected=true]:hover:not(:disabled){background:var(--ink);border-color:var(--ink);color:var(--card)}
.editor-required-note{margin:0 0 12px;padding:12px 14px;border-left:3px solid var(--line-strong);background:var(--surface-subtle);color:var(--muted);font-size:13px;line-height:1.5}
#category-form>.editor-disclosure{grid-column:1/-1}
.dedicated-editor .admin-locale-translations>summary{white-space:normal;overflow-wrap:anywhere;min-height:44px}
@media(max-width:640px){
 .dedicated-editor .admin-variant-core{grid-template-columns:minmax(0,1fr) auto;align-items:center}
 .dedicated-editor .admin-variant-core>.admin-locale-fields{grid-column:1/-1}
 .dedicated-editor .admin-variant-core>.admin-field{align-self:center}
}

/* Product and pizza editors share the same media layout and save controls. */
.dedicated-editor #product-form{max-width:900px;margin-inline:auto}
.dedicated-editor :is(#product-form,.menu-choice-form) .admin-form-footer{position:sticky;bottom:8px;z-index:2;padding:9px;border:1px solid var(--line);border-radius:12px;background:color-mix(in srgb,var(--card) 94%,transparent);box-shadow:0 8px 24px #17181518;backdrop-filter:blur(10px)}
.dedicated-editor .admin-media-section.media-workspace{max-width:1080px;min-width:0;margin-inline:auto;padding:18px;border:1px solid var(--line-strong);border-radius:12px;background:var(--paper)}
.media-library-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.media-library-toolbar h3{margin:0;font:700 18px/1.3 'DM Sans',Arial,sans-serif}
.media-library-toolbar>.primary-button{min-height:44px}
.dedicated-editor .media-workspace>.editor-help{max-width:68ch;margin:0 0 8px}
.media-library-heading{margin:12px 0 0;font:700 15px/1.3 'DM Sans',Arial,sans-serif}
.dedicated-editor .media-upload-form>p{grid-column:1/-1;margin:0}
.media-library{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,400px),1fr));gap:10px}
.media-library-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:'media copy edit';align-items:center;gap:10px;min-width:0;padding:10px 12px;border:1px solid var(--line-strong);border-radius:10px;background:var(--paper)}
.media-library-item>.media-thumbnail-actions,.media-library-item>.admin-media-thumbnail,.media-library-item>.admin-media-preview{grid-area:media}
.media-library-copy{display:flex;flex-direction:column;align-items:flex-start;gap:4px;grid-area:copy;min-width:0;overflow-wrap:anywhere}
.media-thumbnail-actions{display:flex;align-items:center;gap:6px;flex:none}
.media-crop-shortcut{width:44px;min-width:44px;height:44px;min-height:44px;padding:0!important}
.media-library-copy strong{font:700 14px/1.35 'DM Sans',Arial,sans-serif;color:var(--ink)}
.media-library-copy>span,.media-library-copy>small{font-size:12px;line-height:1.4;color:var(--muted)}
.media-library-statuses{display:flex;flex-wrap:wrap;align-items:center;gap:5px}
.media-status-chip{display:inline-flex;width:max-content;max-width:100%;padding:3px 7px;border:1px solid var(--line);border-radius:999px;background:var(--surface-subtle);color:var(--ink);font-size:10px;font-weight:700;line-height:1.25;overflow-wrap:anywhere}
.media-status-chip--usage-menu,.media-status-chip--approval-approved{border-color:var(--green-border);background:var(--green-soft);color:var(--green)}
.media-status-chip--usage-presentation{border-color:var(--line-strong);background:var(--surface-subtle);color:var(--muted)}
.media-status-chip--approval-draft,.media-status-chip--unpublished{border-color:var(--amber-border);background:var(--amber-soft);color:var(--amber-ink)}
.media-status-chip--approval-rejected{border-color:var(--red-border);background:var(--red-soft);color:var(--red)}
.media-status-chip--poster{border-color:var(--brand-accent);background:var(--surface-subtle);color:var(--brand-ink)}
.media-library-order{padding-inline:3px;color:var(--muted);font-size:10px}
.media-library-item>.quiet-button{grid-area:edit;align-self:center;justify-self:end;flex:none;min-width:44px;min-height:44px}
.admin-media-thumbnail{display:block;flex:none;width:56px;height:56px;object-fit:cover;object-position:var(--menu-crop-x,50%) var(--menu-crop-y,50%);scale:var(--menu-crop-scale,1);transform-origin:center;border:1px solid var(--line);border-radius:9px;background:var(--surface-subtle)}
.media-library-item .admin-media-thumbnail{width:64px;height:64px}
.admin-media-preview{position:relative;display:block;flex:none;width:64px;height:64px;overflow:hidden;border:1px solid var(--line);border-radius:9px;background:#25251f}
.media-library-copy .media-ai-library-tag{width:max-content;max-width:100%;align-self:flex-start;overflow-wrap:anywhere}
.admin-media-preview>.admin-media-thumbnail{width:100%;height:100%;border:0;border-radius:0;opacity:0}
.admin-media-preview.is-ready>.admin-media-thumbnail{opacity:1}
.admin-media-preview.is-unavailable>.admin-media-thumbnail{display:none}
.admin-media-play-mark{position:absolute;inset:50% auto auto 50%;display:grid;place-items:center;width:30px;height:30px;transform:translate(-50%,-50%);border:1px solid rgb(255 255 255 / 68%);border-radius:50%;background:rgb(43 33 27 / 84%);box-shadow:0 2px 8px rgb(0 0 0 / 36%);color:#fff;backdrop-filter:blur(3px)}
.admin-media-play-mark .ds-icon{width:13px;height:13px;margin-left:2px;fill:currentColor;stroke:none}
.admin-media-preview-video{padding:0;cursor:pointer;color:inherit;text-align:initial}
.admin-media-preview-video:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
.admin-video-dialog{width:min(calc(100% - 24px),900px);max-height:90dvh;overflow:auto;padding:clamp(16px,3vw,28px);border:1px solid var(--line);border-radius:16px;background:var(--card);color:var(--ink);box-shadow:0 24px 80px #191a188c}
.admin-video-dialog::backdrop{background:#191a188c;backdrop-filter:blur(3px)}
.admin-video-dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}
.admin-video-dialog-heading h2{margin:0;font:600 24px/1.2 Oswald,sans-serif}
.admin-video-dialog-close{width:44px;min-width:44px;height:44px;padding:0;font-size:24px}
.admin-video-dialog-description{margin:8px 0;color:var(--muted);overflow-wrap:anywhere}
.admin-video-dialog-status{margin:8px 0;font-size:13px;color:var(--muted)}
.admin-video-player{display:block;width:100%;max-height:70dvh;margin-top:12px;border-radius:10px;background:#171717;object-fit:contain}
.admin-product-row.has-thumbnail{grid-template-columns:56px minmax(0,1fr) auto}
.media-library-item:has([aria-pressed=true]){border-color:var(--link);background:var(--selection)}

.admin-catalog-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.admin-catalog-actions>a{min-height:42px;padding:9px 13px;font-size:12px}
.pizza-catalog-help{margin:-7px 0 14px;color:var(--muted);font-size:13px;line-height:1.5}
.admin-product-row.menu-choice-row{grid-template-columns:92px minmax(0,1fr) auto;gap:12px}
.menu-choice-thumbnails{display:grid;grid-template-columns:repeat(2,42px);align-items:center;gap:5px;min-width:0}
.menu-choice-thumbnails>.admin-media-thumbnail,.menu-choice-thumbnails>.admin-media-preview{width:42px;height:42px;border-radius:8px}
.menu-choice-thumbnails>.admin-media-preview>.admin-media-thumbnail{width:100%;height:100%}
.menu-choice-no-media{display:grid;place-items:center;width:89px;height:42px;border:1px dashed var(--line-strong);border-radius:8px;background:var(--surface-subtle);color:var(--muted);font-size:10px;font-weight:700}
.menu-choice-summary>strong{font-size:16px}
.menu-choice-prices{display:flex;align-items:center;flex-wrap:wrap;gap:5px 10px;margin-top:1px}
.menu-choice-price{color:var(--muted);font-size:12px;line-height:1.4}
.menu-choice-edit{min-width:68px;text-align:center}
.menu-choice-form{max-width:900px;margin:0 auto}
.menu-choice-form>.admin-field{margin-top:10px}
.menu-choice-variants{margin-top:22px}
.menu-choice-variants>h3{margin:0;font:700 20px/1.25 Oswald,sans-serif}
.menu-choice-variant-editor{min-width:0;margin:10px 0;padding:13px;border:1px solid var(--line);border-radius:11px;background:var(--surface-subtle)}
.menu-choice-variant-editor>legend{padding:0 5px;color:var(--ink);font-size:13px;font-weight:800}
.menu-choice-variant-controls{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,.8fr);align-items:end;gap:12px}
.menu-choice-variant-controls>.admin-check{min-height:44px;padding:8px 10px;border:1px solid var(--line);border-radius:9px;background:var(--card)}
.menu-choice-variant-editor>.editor-help{display:block;margin:6px 0 0}
@media(max-width:640px){
 .dedicated-editor .admin-media-section.media-workspace{padding:12px}
 .media-library{grid-template-columns:minmax(0,1fr);gap:8px}
 .media-library-item{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:'media edit' 'copy copy';align-items:start;gap:8px;padding:10px}
 .media-library-item .admin-media-thumbnail{width:52px;height:52px}
 .media-library-item .media-thumbnail-actions .admin-media-thumbnail{width:52px;height:52px}
 .media-library-item>.admin-media-preview{width:52px;height:52px}
 .media-library-item>.quiet-button{align-self:start}
 .dedicated-editor :is(#product-form,.menu-choice-form) .admin-form-footer{bottom:4px}
 .media-library-toolbar{align-items:flex-start}
 .media-library-toolbar>.primary-button{padding:9px 12px;font-size:13px}
 .admin-product-row.has-thumbnail{grid-template-columns:52px minmax(0,1fr) auto}
 .admin-product-row.has-thumbnail>.admin-media-thumbnail{grid-column:1;grid-row:1;align-self:center}
 .admin-product-row.has-thumbnail>.admin-product-summary{grid-column:2;grid-row:1}
 .admin-product-row.has-thumbnail>.quiet-button{grid-column:3;grid-row:1}
 .admin-catalog-actions{width:100%;justify-content:flex-start}
 .admin-catalog-actions>a{flex:1 1 auto;justify-content:center}
 .admin-product-row.menu-choice-row{grid-template-columns:76px minmax(0,1fr) auto;gap:8px;padding:10px}
 .menu-choice-thumbnails{grid-template-columns:repeat(2,34px);gap:4px}
 .menu-choice-thumbnails>.admin-media-thumbnail,.menu-choice-thumbnails>.admin-media-preview{width:34px;height:38px}
 .menu-choice-no-media{width:72px;height:38px}
 .menu-choice-price{font-size:11px}
 .menu-choice-edit{min-width:56px;min-height:42px;padding-inline:8px}
 .menu-choice-variant-controls{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:380px){.admin-catalog-actions{display:grid;grid-template-columns:1fr}.admin-product-row.menu-choice-row{grid-template-columns:68px minmax(0,1fr) auto}.menu-choice-thumbnails{grid-template-columns:repeat(2,30px)}.menu-choice-thumbnails>.admin-media-thumbnail,.menu-choice-thumbnails>.admin-media-preview{width:30px;height:34px}.menu-choice-no-media{width:64px;height:34px}}

.customer-menu-preview{display:grid;gap:8px;margin:4px 0 8px;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface-subtle)}
.customer-menu-preview-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.customer-menu-preview-heading h5{margin:0;font:700 15px/1.3 'DM Sans',Arial,sans-serif;color:var(--ink)}
.customer-menu-preview-count{padding:4px 8px;border:1px solid var(--red-border);border-radius:999px;background:var(--red-soft);color:var(--red);font-size:11px;font-weight:700}
.customer-menu-preview-help,.customer-menu-preview-error,.customer-menu-preview-limit{margin:0;color:var(--muted);font-size:12px;line-height:1.45}
.customer-menu-preview-error,.customer-menu-preview-draft{padding:9px 10px;border:1px solid var(--amber-border);border-radius:8px;background:var(--amber-soft);color:var(--amber-ink);font-size:12px;line-height:1.45}
.customer-menu-preview-empty{margin:0;padding:12px;border:1px dashed var(--line-strong);border-radius:9px;color:var(--muted);font-size:12px;line-height:1.45}
.customer-menu-preview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),320px));gap:9px;align-items:start}
.customer-menu-preview-card{display:grid;align-content:start;gap:6px;min-width:0;padding:8px;border:1px solid var(--line);border-radius:10px;background:var(--card)}
.customer-menu-preview-name{overflow-wrap:anywhere;font-size:13px;line-height:1.3}
.customer-menu-preview-target{color:var(--muted);font-size:11px;line-height:1.35;overflow-wrap:anywhere}
.customer-menu-preview-photo{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:7px;background:var(--paper)}
.customer-menu-preview-video{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;border-radius:7px;background:#191a18}
.customer-menu-preview-source{color:var(--muted);font-size:10px;line-height:1.3}
.customer-menu-preview-missing,.customer-menu-preview-no-video{color:var(--muted);font-size:11px;line-height:1.35}
@media(max-width:640px){
 .customer-menu-preview{padding:10px}
 .customer-menu-preview-grid{grid-template-columns:minmax(0,1fr);gap:7px}
 .customer-menu-preview-card{padding:7px}
}

/* Compact operational views: keep the kitchen queue and staff actions within reach. */
@media(max-width:640px){
  .dashboard-view[data-role="kitchen"] .metrics{gap:6px;padding-bottom:14px}
  .dashboard-view[data-role="kitchen"] .metric{min-height:64px;padding:8px 10px}
  .dashboard-view[data-role="kitchen"] .metric span{min-height:22px;font-size:10px;line-height:1.15}
  .dashboard-view[data-role="kitchen"] .metric strong{margin-top:2px;font-size:22px;line-height:1}
  .staff-admin-card .admin-card-heading{flex-direction:row;align-items:center;gap:8px}
  .staff-admin-card .admin-card-heading>a.primary-button{align-self:center;flex:0 1 auto;flex-basis:auto;width:auto;min-height:44px;padding:0 12px;font-size:12px;line-height:1.2;text-align:center;white-space:normal}
  .staff-create-help{margin:8px 0;font-size:12px;line-height:1.35}
}
@media(max-width:360px){
  .dashboard-view[data-role="kitchen"] .page-heading{gap:6px;padding:14px 14px 10px}
  .dashboard-view[data-role="kitchen"] .page-heading h1{font-size:28px;line-height:1.05}
  .dashboard-view[data-role="kitchen"] .metrics{padding:0 14px 12px}
  .dashboard-view[data-role="kitchen"] .queue-panel{padding-top:12px}
  .dashboard-view[data-role="kitchen"] .queue-heading{margin-bottom:10px}
}

.table-nfc-card{display:grid;gap:8px;margin-top:12px;padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface-subtle)}
.table-nfc-card h4,.table-nfc-card p{margin:0}
.table-nfc-card>p{font-size:12px;line-height:1.5}
.table-nfc-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;align-items:end}
.table-nfc-form .admin-field{min-width:0}
.table-nfc-form input{min-width:0}
.table-nfc-form>button{grid-column:1/-1;justify-self:start}
.table-nfc-status{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:12px}
.table-nfc-status code{overflow-wrap:anywhere}
.queue-subheading{grid-column:1/-1;margin:8px 0 0;font-size:16px}
.cancellation-card{border-color:var(--red-soft)}
.cancellation-card p{margin:8px 0;white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:560px){.table-nfc-form{grid-template-columns:1fr}.table-nfc-form>button{width:100%}}


/* Keep infrequent catalog station settings out of the first-screen product list. */
.fulfillment-settings-disclosure{margin:0 0 8px}
.fulfillment-settings-disclosure>summary{display:flex;align-items:center;gap:10px;font-weight:750}.fulfillment-settings-disclosure>summary::after{content:"⌄";margin-left:auto;color:var(--muted);font-size:15px}.fulfillment-settings-disclosure[open]>summary::after{content:"⌃"}
.fulfillment-settings-disclosure>.fulfillment-settings-form{margin:0 0 10px;padding:12px 14px;border-color:var(--line);border-radius:0 0 10px 10px;background:var(--surface-subtle)}
.fulfillment-settings-form>.admin-help{flex:1 1 220px;margin:0}
@media(max-width:380px){
  .staff-directory-controls{grid-template-columns:minmax(0,1fr);align-items:stretch}
  .staff-filter-disclosure{justify-self:start}
  .staff-filter-panel{right:auto;left:0;width:min(290px,calc(100vw - 56px))}
}
.security-dialog>.dialog-close-row{position:sticky;top:calc(-1 * clamp(20px,5vw,32px));z-index:2;margin:calc(-1 * clamp(20px,5vw,32px)) 0 12px;padding:clamp(20px,5vw,32px) 0 8px;background:var(--card)}

.media-ai-library-tag{display:inline-flex;align-self:flex-start;padding:3px 7px;border:1px solid color-mix(in srgb,var(--brand-accent) 55%,var(--line));border-radius:999px;background:var(--brand-soft);color:var(--ink);font-size:10px;font-weight:700;line-height:1.2}


/* Keep staff screens aligned to one responsive content grid. */
.dashboard-view{width:100%;max-width:100%;min-width:0}
.dashboard-view>.page-heading,.dashboard-view>.metrics,.dashboard-view>.queue-panel{width:100%;min-width:0;margin-inline:auto;direction:ltr}
.page-heading{justify-content:space-between;text-align:left}
.page-heading>div:first-child{flex:1 1 auto;min-width:0}
.page-heading>.page-tools{flex:0 1 auto;min-width:0;margin-left:auto}
.metrics{grid-template-columns:repeat(4,minmax(0,1fr))}
.metrics>.metric{min-width:0}
.metric span{overflow-wrap:anywhere}
.queue-panel,.queue-heading,.queue-grid{min-width:0}
.queue-grid{width:100%;direction:ltr;grid-template-columns:repeat(auto-fit,minmax(min(100%,460px),1fr))}
.queue-grid>*{min-width:0}
.admin-panel,.admin-page-section{width:100%;min-width:0}

/* Catalog actions share a baseline and keep compact, content-sized hit areas. */
.admin-catalog-actions{align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.admin-catalog-actions>a{flex:0 1 auto;max-width:100%;min-height:44px;margin:0;padding:0 14px;line-height:1.2}
@media(max-width:850px){.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){
  .admin-catalog-actions{width:auto;justify-content:flex-start}
  .admin-catalog-actions>a{flex:0 1 auto}
}
@media(max-width:380px){.admin-catalog-actions{display:flex}}

/* Staff rows use the free horizontal space for their edit action. */
.staff-admin-list .staff-admin-row{grid-template-columns:minmax(0,1fr) auto;align-content:center;align-items:center;gap:8px 12px;min-height:0;padding:10px 12px}
.staff-admin-list .staff-admin-row>.staff-admin-identity{grid-column:1;min-width:0}
.staff-admin-list .staff-admin-row>.staff-admin-actions{grid-column:2;justify-content:flex-end}
@media(max-width:640px){
  .staff-admin-list .staff-admin-row{grid-template-columns:minmax(0,1fr);align-items:start}
  .staff-admin-list .staff-admin-row>.staff-admin-actions{grid-column:1;justify-content:flex-start}
}

.category-chip.is-archived{border-style:dashed;opacity:.75}.category-chip .category-archived-label{color:var(--red);font-weight:800}

/* Request cards need more room than their action controls at tablet widths. */
#requests-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,560px),1fr))}

.admin-category-entry{display:flex;align-items:center;gap:6px;max-width:100%;padding:3px;border:1px solid var(--line);border-radius:999px;background:var(--card)}.admin-category-entry .category-chip{border:0;background:transparent}.admin-category-entry .category-chip:hover{background:color-mix(in srgb,var(--catalog-tone) 12%,var(--card))}.category-archive-button,.category-restore-button{min-height:40px;padding-inline:10px;white-space:nowrap}.admin-category-entry .category-chip.is-archived{opacity:1}.admin-category-entry .category-archive-button{border-radius:999px}.admin-category-entry .category-restore-button{border:1px solid var(--green-border);background:var(--green-soft);color:var(--green);font-size:11px;font-weight:800;border-radius:999px}
@media(max-width:420px){.category-directory-row{grid-template-columns:8px minmax(0,1fr) auto auto;gap:7px;padding:9px}.category-directory-order{gap:2px}.category-order-button{width:40px;min-height:44px}.category-directory-edit{min-height:44px;padding-inline:9px}}

/* Each saved photo/video owns its own visible AI provenance control. */
.media-provenance-controls{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0;margin-top:2px}
.media-provenance-controls .media-ai-toggle{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:4px 9px;border:1px solid var(--line);border-radius:9px;background:var(--card);color:var(--ink);font-size:11px;font-weight:700;cursor:pointer}
.media-provenance-controls .media-ai-toggle input{width:20px;height:20px;min-height:20px;accent-color:var(--green)}
.media-provenance-controls .media-ai-toggle span{color:var(--ink);font-size:11px}
.media-ai-library-tag--ai{border-color:#c28b28;background:#fff2cf;color:#5b3d08}
.media-ai-library-tag--not-ai{border-color:#477562;background:#eaf4ed;color:#174936}
@media(max-width:640px){.media-provenance-controls{gap:5px}.media-provenance-controls .media-ai-toggle{max-width:100%;padding:4px 7px;font-size:10px}.media-provenance-controls .media-ai-toggle span{font-size:10px;white-space:normal}.media-ai-library-tag{font-size:9px}}


.product-lifecycle-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:22px;padding-top:16px;border-top:1px solid var(--line)}
.product-lifecycle-actions .editor-help{flex:1 1 260px;margin:0}
.product-lifecycle-actions>button{flex:0 0 auto}
.archived-product-notice{margin:0 0 16px;padding:12px 14px;border:1px solid var(--red-border);border-radius:10px;background:var(--red-soft);color:var(--red);font-size:13px;font-weight:700;line-height:1.5}
@media(max-width:640px){.product-lifecycle-actions{align-items:stretch;flex-direction:column;gap:10px}.product-lifecycle-actions>button{width:100%;justify-content:center}}

.option-picker-preview{display:grid;gap:8px;margin-top:12px;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--surface-muted,#f6f5f2)}.option-picker-preview>strong{font-size:12px}.option-picker-preview-row{display:flex;align-items:center;gap:8px;min-width:0}.option-picker-preview-row>span{flex:none;width:28px;color:var(--muted);font-size:10px;font-weight:700}.option-picker-preview-row button{min-height:36px;padding:6px 10px;font-size:11px;opacity:1}.option-picker-preview-row button:disabled{cursor:default}

.session-restore-view{display:none}
html.session-restoring #login-view,html.session-restoring #dashboard-view{display:none!important}
html.session-restoring #session-restore-view{display:grid;min-height:100dvh;place-content:center;justify-items:center;gap:14px;padding:24px;color:var(--muted);font-size:14px;font-weight:700;text-align:center}
html.session-restoring #session-restore-view .admin-loading-indicator{width:24px;height:24px}

.customer-access-panel { border-top: 1px solid var(--border, #d6d3d1); padding-top: 16px; margin-top: 16px; min-width: 0; }
.customer-access-panel h4 { margin: 0 0 8px; font-size: 16px; }
.customer-access-panel > p { font-size: 14px; line-height: 1.5; }
.customer-access-card { padding: 12px; margin-top: 12px; border: 1px solid #c9c6c2; border-radius: 12px; background: #f1eeea; min-width: 0; }
.customer-access-card-heading { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-bottom: 12px; }
.customer-access-marker { font-size: 18px; letter-spacing: .04em; overflow-wrap: anywhere; }
.customer-access-card .visit-card-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.customer-access-card button { min-height: 44px; max-width: 100%; white-space: normal; }
.customer-access-feedback { margin: 8px 0 0; font-size: 14px; color: #8d1533; }

.nfc-pairing-toolbar{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin:16px 0}.nfc-pairing-toolbar p{flex:1;min-width:180px;color:var(--muted,#626661);font-size:14px}.nfc-pairing-content{display:grid;gap:16px}.nfc-pairing-content img{display:block;width:min(100%,520px);height:auto;image-rendering:pixelated;background:#fff;margin-inline:auto}.nfc-pairing-content img[hidden]{display:none}.nfc-pairing-content form:not([hidden]){display:grid;gap:12px}.nfc-pairing-content button{min-height:44px}.nfc-pairing-content input{font-size:16px;width:100%;box-sizing:border-box}

.nfc-pairing-devices{border-top:1px solid var(--line);padding-top:16px;display:grid;gap:12px}.nfc-pairing-devices h3{font:600 16px/1.4 'DM Sans',sans-serif;margin:0}.nfc-device-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:12px 0}.nfc-device-row span{flex:1;min-width:140px;overflow-wrap:anywhere;font-size:14px}

.nfc-pairing-content>p{margin:0;font-size:14px;line-height:1.5}.nfc-pairing-devices p:empty{display:none}

/* Table setup keeps printing and NFC preparation at the table they belong to. */
.table-list-actions,.table-link-next{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.table-list-actions{justify-content:flex-end}
.table-list-actions .table-prepare-link,.table-link-next .primary-button,
.table-link-next .quiet-button,.table-nfc-card .table-prepare-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 14px;font-size:13px;text-decoration:none}
.table-list-actions .quiet-button{min-width:44px;min-height:44px}
.table-link-next{grid-column:1/-1;margin-top:2px}
.table-materials-intro h2{overflow-wrap:anywhere}
.table-nfc-guide{display:grid;gap:12px}
.table-nfc-guide .table-nfc-steps{margin:0;padding-left:24px;display:grid;gap:8px;line-height:1.5}
.table-nfc-guide .ops-button{justify-self:start;min-height:44px}
.table-nfc-status-copy{margin:0;color:var(--muted);font-size:13px;line-height:1.5}
@media(max-width:640px){.table-list-actions{justify-content:space-between;width:100%}.table-list-actions .table-prepare-link{flex:1}.table-link-next>*{width:100%}.table-nfc-guide .ops-button{width:100%}}
