:root{--brand:#165b45;--accent:#e3f3b0;--ink:#1d3028;--muted:#57685f;--line:#dce4dc;--bg:#f6f7f1;--white:#fff;--danger:#a12b29;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none}*{box-sizing:border-box}body{margin:0}a{color:var(--brand)}button,input,select,textarea{font:inherit}button,.button{border:0;border-radius:12px;padding:.8rem 1.05rem;background:var(--brand);color:white;font-weight:650;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:44px}button:hover{filter:brightness(.92)}button:disabled{opacity:.55;cursor:wait}.secondary{background:#edf2ec;color:var(--ink);border:1px solid var(--line)}.danger{background:var(--danger)}:focus-visible{outline:3px solid #af6b0c;outline-offset:4px}.skip{position:absolute;top:-100px;background:white;padding:1rem;z-index:20}.skip:focus{top:0}.topbar{display:flex;align-items:center;gap:1.4rem;justify-content:space-between;max-width:1340px;margin:auto;padding:1.4rem 2rem;border-bottom:1px solid var(--line)}.brand{font-size:1.35rem;font-weight:850;display:flex;align-items:center;gap:.65rem;text-decoration:none;letter-spacing:-.05em}.brand-icon{display:grid;place-items:center;background:var(--brand);color:var(--accent);width:40px;height:40px;border-radius:13px}.muted,small{color:var(--muted)}main{max-width:1280px;padding:1.5rem 2rem 4rem;margin:auto;min-height:75vh}footer{text-align:center;padding:2rem;border-top:1px solid var(--line);line-height:1.8;font-size:.9rem}h1{font-size:clamp(2.2rem,5vw,3.9rem);line-height:1.06;letter-spacing:-.055em;margin:.7rem 0 1rem}h2{font-size:1.5rem;letter-spacing:-.03em;margin:0 0 1rem}h3{margin:.2rem 0 .7rem;font-size:1.1rem}p{line-height:1.6}.hero{padding:2rem 0 2.5rem;max-width:780px}.eyebrow{text-transform:uppercase;font-size:.75rem;letter-spacing:.15em;font-weight:800;color:var(--brand)}.pill{display:inline-block;background:#e7f1e8;padding:.35rem .65rem;border-radius:999px;font-size:.8rem;font-weight:700}.layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:1.5rem;align-items:start}.menu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.1rem}.card{background:white;border:1px solid var(--line);border-radius:20px;padding:1.4rem;box-shadow:0 6px 28px #18342605}.product{padding:0;overflow:hidden;display:flex;flex-direction:column}.product img,.image-placeholder{width:100%;height:180px;object-fit:cover;background:#e8eddf}.image-placeholder{display:grid;place-items:center;font-size:3rem;color:#72886b}.product-body{padding:1.2rem;display:flex;flex:1;flex-direction:column}.product-body p{margin:.3rem 0 1rem;font-size:.9rem;flex:1}.row{display:flex;align-items:center;gap:.7rem;justify-content:space-between;flex-wrap:wrap}.stack{display:grid;gap:1rem}.cart{position:sticky;top:1rem}.cart-line{padding:.8rem 0;border-bottom:1px solid var(--line)}.qty{display:flex;align-items:center;gap:.65rem}.qty button{min-width:40px;padding:.4rem .7rem}.total{font-size:1.25rem;font-weight:800;padding:1rem 0}.full{width:100%}.notice{padding:1rem;border-radius:12px;margin:0 0 1rem;background:#e7f1e8;border:1px solid #c6d9c4}.notice.error,.error{background:#fff1ef;color:var(--danger);border-color:#e9beb9}.notice:empty{display:none}.auth{max-width:510px;margin:2rem auto}.field{display:grid;gap:.4rem;font-size:.9rem;font-weight:650}.field input,.field select,.field textarea{width:100%;border:1px solid #aebfb0;border-radius:10px;padding:.8rem;background:white;color:var(--ink);min-height:44px}.field textarea{min-height:88px}.check{display:flex;align-items:flex-start;gap:.6rem;line-height:1.5;font-size:.88rem}.check input{width:20px;height:20px;flex-shrink:0}.form-error{color:var(--danger);font-size:.9rem;white-space:pre-wrap}.form-error:empty{display:none}.tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0 1.5rem}.tabs button[aria-pressed=true]{background:var(--brand);color:white}.admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:1rem}.order-item{border-top:1px solid var(--line);padding:.9rem 0}.status{border-left:4px solid var(--brand);padding:1rem;background:#edf4e8;border-radius:8px}.account{white-space:pre-wrap;overflow-wrap:anywhere;font-weight:600}.empty{padding:2rem;text-align:center;color:var(--muted);border:1px dashed #bccbbe;border-radius:16px}.loading{padding:2rem;color:var(--muted)}details summary{cursor:pointer;font-weight:750;padding:.6rem 0}.toolbar{display:flex;gap:.5rem;flex-wrap:wrap}.compact{font-size:.85rem}.qr{max-width:250px;display:block;margin:1rem auto}.logo{width:40px;height:40px;object-fit:contain}.history{font-size:.85rem}.badge{font-size:.75rem;border:1px solid var(--line);padding:.25rem .5rem;border-radius:7px}.divider{border:0;border-top:1px solid var(--line);margin:1rem 0}@media(max-width:900px){.layout{grid-template-columns:1fr}.cart{position:static}.topbar{padding:1rem}.topbar>.muted{display:none}main{padding:1rem}.hero{padding:1rem 0 2rem}}@media(max-width:520px){.menu-grid{grid-template-columns:1fr}.product{display:grid;grid-template-columns:110px 1fr}.product img,.image-placeholder{height:100%;min-height:170px}.product-body{padding:1rem}.topbar{gap:.5rem}.brand{font-size:1.1rem}.card{padding:1rem}.product{padding:0}.admin-grid{grid-template-columns:1fr}h1{font-size:2.5rem}}@media(prefers-reduced-motion:no-preference){button{transition:filter .15s} .card{animation:appear .25s ease-out}@keyframes appear{from{opacity:.5;transform:translateY(4px)}to{opacity:1;transform:none}}}
.wa-modal{box-sizing:border-box;border:0;border-radius:12px;background:#fff;color:#202020;width:min(480px,calc(100vw - 24px));max-height:calc(100dvh - 24px);padding:28px;text-align:center;overflow:auto;box-shadow:0 20px 80px #0004}
.wa-modal::backdrop{background:#17212c99}
.wa-modal h2{font-size:1.85rem;margin:8px 0 20px}.wa-modal strong{display:block;margin:8px 0;font-size:.85rem}.wa-symbol{color:#ed8a00;font-size:36px}.wa-modal .qr{display:block;width:280px;height:280px;max-width:100%;object-fit:contain;margin:12px auto;background:white;border:1px solid #ddd;border-radius:8px;padding:10px;box-sizing:border-box}.wa-actions{display:flex;justify-content:center;gap:10px;margin:16px 0}.wa-modal small{display:block;margin-top:16px}.wa-modal [hidden]{display:none}.wa-modal button:focus-visible{outline:3px solid #ca7100;outline-offset:3px}
@media(max-width:420px){.wa-modal{padding:20px 16px}.wa-modal h2{font-size:1.6rem}}

/* FoodSpark: warm food tones, branded actions, explicit operational status. */
:root{--bg:#f7f5ef;--ink:#172c32;--muted:#52646a;--line:#dce3df}
body{background:radial-gradient(ellipse at 90% 0,#ffdfb34d,transparent 45%),var(--bg)}
.topbar{max-width:none;background:#ffffffed;border-bottom:1px solid #dce3df;padding-inline:max(2rem,calc((100vw - 1216px)/2));box-shadow:0 3px 18px #172c3207}
.brand-icon{background:var(--brand);color:#ffdc83;box-shadow:4px 4px 0 #ffd48c}
.hero{max-width:none;padding:2rem 2.4rem;margin:0 0 1.7rem;border:1px solid #ead6b7;border-radius:24px;background:linear-gradient(115deg,#fff3d9,#ffe0b2 80%,#ffd088);position:relative;overflow:hidden}
.hero h1{max-width:850px}.hero .muted{max-width:660px;color:#485548}.hero .eyebrow{color:#3e5943}
.hero::after{content:'✦';position:absolute;right:2%;top:-40px;font-size:240px;line-height:1;color:#a34b0010;pointer-events:none}
.card{box-shadow:0 8px 28px #1e35320a;border-color:#dfe5df}.card h2{color:var(--brand)}
.tabs{background:white;border:1px solid var(--line);padding:.55rem;border-radius:17px;gap:.4rem}
.tabs .secondary{background:transparent;border-color:transparent}.tabs button[aria-pressed=true]{box-shadow:0 4px 12px #165b4526}
.product{border-color:#e4dccc}.product-body h3{font-size:1.2rem}.product-body strong{color:var(--brand);font-size:1.15rem}.cart{border-top:5px solid var(--brand)}
.admin-product-image{width:100%;height:170px;object-fit:cover;border-radius:12px}.admin-grid>details>.image-placeholder{height:170px;border-radius:12px}
.status{font-size:1.05rem;font-weight:750}.pill[data-status],.status[data-status]{border:1px solid transparent}
[data-status=pending_payment]{background:#fff1cb;color:#754b00;border-color:#e8cd86!important}
[data-status=paid]{background:#e4efff;color:#204d87;border-color:#b1cbee!important}
[data-status=preparing]{background:#fff0e3;color:#874209;border-color:#e8c49e!important}
[data-status=ready]{background:#eee8ff;color:#58368c;border-color:#cab8e6!important}
[data-status=called]{background:#daf5e4;color:#145b38;border-color:#9bd4ae!important}
[data-status=delivered]{background:#eaf0f0;color:#42585b;border-color:#c9d6d8!important}
[data-status=cancelled]{background:#ffe8e5;color:#8d2828;border-color:#e4afaa!important}
[data-status]::before{content:'●';font-size:.65em;margin-right:.55em;vertical-align:middle}
.app-modal{border:1px solid #dce3df;border-radius:24px;padding:2rem;width:min(510px,calc(100vw - 28px));max-height:calc(100dvh - 28px);overflow:auto;color:var(--ink);box-shadow:0 25px 100px #102c3655;text-align:center}
.app-modal::backdrop{background:#10242db3;backdrop-filter:blur(3px)}.app-modal h2{font-size:1.8rem;line-height:1.2;margin:1rem 0}.modal-symbol{display:grid;place-items:center;width:64px;height:64px;margin:auto;background:#fff0d1;color:#895407;border-radius:20px;font-size:2rem}.pickup .modal-symbol{background:#d9f6e4;color:#145b38}.pickup-detail{background:#f0f5ef;border-radius:12px;padding:1rem;font-weight:750;font-size:1.2rem;overflow-wrap:anywhere}.modal-actions{display:flex;gap:.75rem;justify-content:center;margin-top:1.5rem;flex-wrap:wrap}.modal-actions button{flex:1}
.card,.layout>*{min-width:0}small,.history{overflow-wrap:anywhere}
@media(max-width:520px){.topbar{padding:1rem}.hero{padding:1.5rem 1.2rem;border-radius:19px}.hero h1{font-size:2.35rem}.tabs{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.tabs button{padding:.7rem .45rem}.app-modal{padding:1.5rem 1.1rem}.product-body h3{font-size:1.05rem}.product{grid-template-columns:96px minmax(0,1fr)}.product-body{padding:.85rem}.product-body .row{gap:.6rem}.product-body strong{font-size:1rem}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important}}

.floating-cart{position:fixed;z-index:20;right:max(16px,env(safe-area-inset-right));bottom:calc(16px + env(safe-area-inset-bottom));box-shadow:0 8px 30px #0004;max-width:calc(100vw - 32px);border-radius:999px}.menu-grid{padding-bottom:100px}.cart-modal{width:min(620px,calc(100vw - 24px));max-height:calc(100dvh - 32px);overflow:auto}.cart-image{width:48px;height:48px;object-fit:cover;border-radius:8px}.cart-modal .image-placeholder{display:none}.preparation progress{display:block;width:100%;accent-color:var(--brand);height:18px}.preparation{margin:16px 0}.cart-line{margin-bottom:16px}
.floating-cart{display:flex;gap:10px;align-items:center}.cart-icon{width:22px;height:22px}.cart-badge{border-radius:999px;background:#fff;color:#153d30;min-width:24px;padding:2px 6px}.cart .total{flex-wrap:wrap;gap:8px}.cart-modal .cart{position:static}
.cart-modal .modal-symbol{display:none}.cart-modal h2{margin:8px 0}.cart-modal .cart>h2{display:none}.cart-modal .cart{border-top:0;padding-top:0}.cart-modal p{margin:8px 0}.cart-modal .modal-actions{position:sticky;bottom:0;background:white;padding-top:8px}.cart-modal .cart>.full{position:sticky;bottom:64px}.cart-modal .total{font-size:1.1rem}

/* Session identity is read-only and remains visible in every staff view. */
.staff-scope h1{max-width:none;font-size:clamp(1.65rem,4vw,3.2rem);line-height:1.15;overflow-wrap:anywhere}
.staff-scope .scope-label{display:block;font-size:.8rem;font-weight:750;letter-spacing:.07em;line-height:1.6;margin-bottom:.3rem}
.staff-scope .scope-branch{font-size:clamp(1.25rem,2.8vw,2rem);line-height:1.25;margin:.8rem 0;overflow-wrap:anywhere}
.staff-scope .scope-caption{margin:1.2rem 0 0;font-size:.9rem}

/* Print preview chrome only. The isolated ticket document is deliberately unchanged. */
.thermal-modal{border:0;border-radius:24px;padding:0;width:560px;max-width:calc(100% - 24px);height:820px;max-height:calc(100vh - 24px);max-height:calc(100dvh - max(24px, env(safe-area-inset-top)) - max(24px, env(safe-area-inset-bottom)));color:#183b30;background:#fff;box-shadow:0 24px 80px #102b3540;overflow:hidden}
.thermal-modal[open]{display:flex;flex-direction:column}
.thermal-modal::backdrop{background:#102a30b8;backdrop-filter:blur(5px)}
.thermal-modal svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linejoin:round;stroke-linecap:round;flex:none}
.thermal-header{display:flex;align-items:center;gap:14px;padding:24px;flex:none;border-bottom:1px solid #e3eae5}
.thermal-symbol{display:grid;place-items:center;background:#165b45;color:#e3f3b0;border-radius:16px;width:48px;height:48px;flex:none}
.thermal-symbol svg{width:26px;height:26px}
.thermal-heading{min-width:0;flex:1}
.thermal-heading h2{font-size:1.25rem;line-height:1.25;letter-spacing:-.025em;margin:0}
.thermal-heading p{color:#52665d;font-size:.85rem;line-height:1.5;margin:6px 0 0}
.thermal-modal .thermal-dismiss{padding:0;min-width:44px;width:44px;height:44px;background:#f0f4f0;color:#315b49;font-size:1.7rem;font-weight:400;flex:none}
.thermal-body{padding:20px 24px 0;display:flex;flex-direction:column;min-height:0;flex:1;overflow:auto;overscroll-behavior:contain}
.thermal-settings{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;flex:none}
.thermal-formats{border:0;padding:0;margin:0;min-width:0}
.thermal-formats legend{font-size:.8rem;font-weight:700;margin-bottom:8px;padding:0;color:#52665d}
.thermal-segments{display:flex;gap:4px;padding:4px;background:#eff3ef;border:1px solid #dce5de;border-radius:14px}
.thermal-option{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:8px 14px;border-radius:10px;font-size:.9rem;font-weight:700;cursor:pointer;color:#365447}
.thermal-option:has(:checked){background:#165b45;color:white;box-shadow:0 2px 5px #163b3020}
.thermal-option input{margin:0;width:16px;height:16px;accent-color:#165b45;flex:none}
.thermal-option:has(:focus-visible){outline:3px solid #a55e00;outline-offset:3px}
.thermal-badge{border:1px solid #d4dfb6;border-radius:999px;padding:6px 10px;font-size:.75rem;font-weight:750;background:#f0f5de;color:#40551a;white-space:nowrap}
.thermal-help{flex:none;margin:6px 0 8px;font-size:.8rem;color:#52665d}
.thermal-help summary{min-height:44px;align-content:center;padding:10px 0;width:fit-content;color:#315b49}
.thermal-help p{margin:0 0 12px;line-height:1.6;max-width:48ch}
.thermal-status{font-size:.9rem;line-height:1.5;margin:10px 0 20px}
.thermal-preview{display:flex;justify-content:center;flex:1;min-height:160px;padding:20px 12px 0;background:#edf1eb;border:1px solid #e1e7df;border-bottom:0;border-radius:16px 16px 0 0}
.thermal-paper{display:block;width:var(--thermal-paper-width,80mm);max-width:100%;min-height:0;height:100%;border:0;background:white;box-shadow:0 3px 18px #193b3020}
.thermal-actions{display:flex;flex-wrap:wrap;gap:12px;padding:18px 24px;background:#fff;border-top:1px solid #e1e7df;flex:none}
.thermal-modal .thermal-back{background:#fff;color:#315b49;border:1px solid #c6d4cb;flex:1}
.thermal-modal .thermal-print{background:#165b45;color:white;flex:2}
.thermal-modal button{min-height:48px}
.thermal-actions>button{flex:1 1 140px;min-width:120px;overflow-wrap:normal}
.thermal-actions>.thermal-payment{flex-basis:100%}
.thermal-actions>.thermal-back,.thermal-actions>.thermal-print{flex:1 1 140px}
.thermal-modal [hidden]{display:none}
.thermal-modal :focus-visible{outline:3px solid #a55e00;outline-offset:3px}
@media(max-width:400px){.thermal-modal{border-radius:20px;max-width:calc(100% - 16px)}.thermal-header{padding:16px;gap:10px}.thermal-symbol{display:none}.thermal-heading h2{font-size:1.1rem}.thermal-body{padding:16px 16px 0}.thermal-actions{padding:14px 16px;gap:8px}.thermal-actions button{padding:10px;font-size:.85rem}.thermal-preview{padding:12px 6px 0}.thermal-option{padding:8px 10px}}
@media(max-height:540px){.thermal-header{padding-top:12px;padding-bottom:12px}.thermal-heading p{display:none}.thermal-body{flex-basis:160px}.thermal-actions{padding-top:12px;padding-bottom:12px}.thermal-preview{flex:none;height:240px}}
@media(prefers-reduced-motion:reduce){.thermal-modal *{animation:none;transition:none}}

/* Staff workspace: compact context, full readable names, no customer/print overrides. */
.staff-app .topbar{padding:10px 24px;min-height:64px}
.staff-app #context-label{display:none}
.staff-app main{padding-top:16px}
.staff-app #app{min-width:0}
.staff-app .staff-scope{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px 24px;padding:16px 20px;margin:0 0 16px;background:#fffdf6;border:1px solid #e4ddcb;border-left:4px solid #b77c20;border-radius:16px;box-shadow:0 3px 14px #193b3004}
.staff-app .staff-scope>.eyebrow{grid-column:1/-1;font-size:.7rem;letter-spacing:.1em}
.staff-app .staff-scope .scope-label{font-size:.75rem;line-height:1.4;letter-spacing:.02em;color:#59675f;margin:0 0 3px}
.staff-app .scope-company,.staff-app .staff-scope .scope-branch{font-size:1.12rem;font-weight:750;line-height:1.4;margin:0;overflow-wrap:anywhere;min-width:0}
.staff-app .scope-branch{border-left:1px solid #e4ddcb;padding-left:24px}
.staff-app .tabs{margin:0 0 16px;gap:6px}
.staff-app .card{border-radius:16px;box-shadow:0 4px 18px #193b3006}
.staff-app #app .card{min-width:0;overflow-wrap:anywhere}
.staff-app .detail-toolbar{justify-content:space-between;align-items:center;margin-bottom:14px;gap:10px}
.staff-app .back-orders{background:transparent;border-color:transparent;padding-left:0;color:var(--brand)}
.staff-app .order-detail{gap:20px;grid-template-columns:minmax(0,1fr) minmax(280px,340px)}
.staff-app .order-detail.no-operation{grid-template-columns:minmax(0,1fr)}
.staff-app .order-summary{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:16px;align-items:center}
.staff-app .order-summary>h2{grid-column:1;grid-row:1;margin:0;font-size:1.4rem;line-height:1.4;overflow-wrap:anywhere}
.staff-app .order-summary>.status{grid-column:2;grid-row:1;padding:7px 12px;border:1px solid #cbdcd0;border-radius:999px;font-size:.85rem;font-weight:750}
.staff-app .order-summary>.order-disclaimer{grid-column:1/-1;background:none;color:var(--muted);padding:0;margin:5px 0 14px;font-size:.75rem;font-weight:500}
.staff-app .order-summary>:not(h2):not(.status):not(.order-disclaimer){grid-column:1/-1}
.staff-app .pickup-notice{margin:0 0 10px;font-size:.85rem}
.staff-app .preparation{margin:0 0 16px;font-size:.85rem}
.staff-app .preparation progress{height:10px;margin-top:6px}
.staff-app .order-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;padding:12px 0;font-size:.95rem;line-height:1.5}
.staff-app .order-item strong{white-space:nowrap;font-variant-numeric:tabular-nums}
.staff-app .order-summary .total{border-top:2px solid #dce4dc;padding:16px 0 10px}
.staff-app .order-summary>small{font-size:.75rem;line-height:1.5}
.staff-app .operation-empty{margin:0;padding-top:14px;border-top:1px solid var(--line);font-size:.85rem;color:var(--muted)}
.staff-app .order-actions{border-top:3px solid #b77c20}
.staff-app .order-actions h2{margin:0;font-size:1.15rem}
.staff-app .order-actions p{margin:0;line-height:1.5;font-size:.9rem}
.staff-app .payment-details{border:1px solid var(--line);border-radius:10px;padding:0 12px;background:#f8faf6}
.staff-app .payment-details summary{min-height:44px;align-content:center}
.staff-app #app button,.staff-app #app summary{min-height:44px}
@media(max-width:900px){.staff-app .order-detail{grid-template-columns:minmax(0,1fr)}.staff-app main{padding:16px}}
@media(max-width:520px){.staff-app .topbar{padding:8px 16px}.staff-app .staff-scope{gap:12px;padding:14px;grid-template-columns:minmax(0,1fr)}.staff-app .scope-branch{padding-left:0;border-left:0}.staff-app .staff-scope>.eyebrow{font-size:.65rem}.staff-app .scope-company,.staff-app .staff-scope .scope-branch{font-size:1rem}.staff-app .detail-tools{width:100%;display:grid;grid-template-columns:1fr 1fr}.staff-app .detail-tools button{padding:10px;font-size:.85rem}.staff-app .order-summary{grid-template-columns:minmax(0,1fr);gap:0}.staff-app .order-summary>.status{grid-column:1;grid-row:3;justify-self:start;margin-bottom:14px}.staff-app .order-summary>h2{font-size:1.2rem}.staff-app .order-item{font-size:.85rem;gap:10px}.staff-app .order-summary .total{font-size:1.1rem}}
@media(prefers-reduced-motion:reduce){.staff-app #app *{animation:none;transition:none}}

/* Mesas y QR only: separate editing from read-only access actions. */
.table-record{min-width:0;overflow-wrap:anywhere}
.table-record .field{min-width:0}
.table-access{margin-top:16px;padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--bg);display:grid;gap:16px;min-width:0}
.table-access-heading h3,.table-access-heading p{margin:0}
.table-access-heading p{margin-top:4px}
.table-access-actions{display:flex;flex-wrap:wrap;align-items:stretch;gap:12px}
.table-access-actions>.button,.table-access-actions>button{min-height:44px;max-width:100%;text-align:center}
.table-access-feedback{margin:0;font-size:.85rem;overflow-wrap:anywhere}
.table-access-feedback:empty,.table-qr-preview[hidden]{display:none}
.table-qr-preview{padding:16px;background:white;border:1px solid var(--line);border-radius:12px;justify-self:start;max-width:100%}
.table-qr-preview .qr{display:block;width:250px;max-width:100%;height:auto;margin:0}
@media(max-width:520px){.table-record form>button[type=submit]{width:100%}.table-access-actions{flex-direction:column}.table-access-actions>*{width:100%}.table-qr-preview{justify-self:center}}

.floating-billing{position:fixed;bottom:6.4rem;right:1rem;z-index:20;box-shadow:0 4px 20px #0002}.app-modal input{max-width:100%}.app-modal{max-height:90dvh;overflow:auto}

.company-logo-preview{width:100%;max-width:320px;height:150px;object-fit:contain;border:1px solid var(--line);border-radius:10px;background:repeating-conic-gradient(#eee 0% 25%,white 0% 50%) 50%/16px 16px}.company-logo-editor input[type=file]{max-width:100%;font-size:.85rem}

.entity-grid form>.company-logo-editor{grid-column:1/-1}

/* Staff orders: keep cards, expose business date hierarchy. */
.order-filters{display:flex;align-items:end;flex-wrap:wrap;gap:12px;margin:0 0 24px;padding:16px;border:1px solid var(--line,#dce3d9);border-radius:14px;background:var(--surface,#fff)}
.order-filters .field{flex:1 1 160px;min-width:0;margin:0}.order-filters input{width:100%;min-width:0}.order-filters .field-error:empty,.order-filters .form-error:empty{display:none}.order-range-help,.order-filters .form-error{flex-basis:100%;margin:0}
.order-company+.order-company{margin-top:32px}.order-company-title{font-size:1.3rem;border-bottom:2px solid #dce3d9;padding-bottom:10px;overflow-wrap:anywhere}.order-branch-title{font-size:1.1rem;margin:22px 0 12px;overflow-wrap:anywhere}.order-day-title{font-size:.95rem;margin:20px 0 12px;color:#49604e}.order-day+.order-day{margin-top:24px}.order-groups .order-card{height:100%}
@media(max-width:540px){.order-filters{gap:10px;padding:12px}.order-filters .field{flex-basis:calc(50% - 10px)}.order-filters>button{flex:1}.order-company-title{font-size:1.2rem}}

/* Tables reuse the order hierarchy, without dates or redundant scope levels. */
[data-tables]>.create-record{margin-bottom:24px}.table-groups,.table-groups section,.table-groups .card{min-width:0}.table-groups summary,.table-groups p{overflow-wrap:anywhere}[data-tables] select{min-width:0;max-width:100%;width:100%}
