@import"https://api.fontshare.com/v2/css?f[]=satoshi@300,301,400,401,500,501,700,701,900,901&display=swap";@import"https://fonts.googleapis.com/css2?family=Urbanist:wght@300;400;500;600;700&display=swap";:root{--font-display: "Satoshi", -apple-system, BlinkMacSystemFont, sans-serif;--font-ui: "Satoshi", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "Urbanist", -apple-system, BlinkMacSystemFont, sans-serif;--weight-light: 300;--weight-regular: 400;--weight-medium: 500;--weight-bold: 700;--tracking-display: -.025em;--tracking-tight: -.02em;--tracking-normal: -.01em;--tracking-mono: .06em;--tracking-eyebrow: .12em;--fs-display-1: 64px;--fs-display-2: 40px;--fs-display-3: 28px;--fs-body-lg: 17px;--fs-body: 15px;--fs-sm: 13px;--fs-xs: 12px;--fs-mono: 11px;--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 24px;--s-6: 32px;--s-7: 48px;--s-8: 64px;--s-9: 96px;--r-sm: 8px;--r-md: 12px;--r-lg: 16px;--r-xl: 20px;--r-pill: 999px;--ease: cubic-bezier(.2, .8, .2, 1);--t-fast: .16s;--t-base: .24s;--t-slow: .48s;--hit-sm: 36px;--hit-md: 40px;--hit-lg: 52px}:root,[data-theme=dark]{--bg: #0B0B0C;--bg-ambient: radial-gradient(1200px 600px at 80% -10%, rgba(124,196,255,.06), transparent 60%), radial-gradient(900px 500px at 0% 110%, rgba(245,245,244,.03), transparent 55%);--surface: #141416;--surface-2: #1C1C1F;--surface-hover: #202024;--border: rgba(255,255,255,.08);--border-strong: rgba(255,255,255,.14);--text: #F5F5F4;--text-muted: rgba(245,245,244,.58);--text-subtle: rgba(245,245,244,.36);--accent: #F5F5F4;--accent-ink: #0B0B0C;--chromatic: #9DD0FF;color-scheme:dark}[data-theme=light]{--bg: #F6F4EF;--bg-ambient: radial-gradient(1100px 600px at 85% -10%, rgba(37,99,204,.05), transparent 60%), radial-gradient(900px 500px at 0% 110%, rgba(15,15,17,.03), transparent 55%);--surface: #FFFFFF;--surface-2: #FBFAF6;--surface-hover: #F2F0EA;--border: rgba(15,15,17,.08);--border-strong: rgba(15,15,17,.14);--text: #0F0F11;--text-muted: rgba(15,15,17,.58);--text-subtle: rgba(15,15,17,.4);--accent: #0F0F11;--accent-ink: #FFFFFF;--chromatic: #1F4FA8;color-scheme:light}@media (prefers-color-scheme: light){:root:not([data-theme]){--bg: #F6F4EF;--surface: #FFFFFF;--surface-2: #FBFAF6;--surface-hover: #F2F0EA;--border: rgba(15,15,17,.08);--border-strong: rgba(15,15,17,.14);--text: #0F0F11;--text-muted: rgba(15,15,17,.58);--text-subtle: rgba(15,15,17,.4);--accent: #0F0F11;--accent-ink: #FFFFFF;--chromatic: #1F4FA8;color-scheme:light}}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font-ui);font-weight:var(--weight-regular);font-size:var(--fs-body);line-height:1.55;color:var(--text);background-color:var(--bg);background-image:var(--bg-ambient);background-attachment:fixed;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color var(--t-base) var(--ease),color var(--t-base) var(--ease)}::selection{background:var(--text);color:var(--bg)}.lumen-display-1{font-family:var(--font-display);font-weight:var(--weight-light);font-size:var(--fs-display-1);letter-spacing:var(--tracking-display);line-height:1}.lumen-display-2{font-family:var(--font-display);font-weight:var(--weight-light);font-size:var(--fs-display-2);letter-spacing:var(--tracking-display);line-height:1.05}.lumen-display-3{font-family:var(--font-display);font-weight:var(--weight-regular);font-size:var(--fs-display-3);letter-spacing:var(--tracking-tight);line-height:1.15}.lumen-eyebrow{font-family:var(--font-ui);font-size:var(--fs-sm);font-weight:var(--weight-medium);letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.lumen-muted{color:var(--text-muted)}.lumen-subtle{color:var(--text-subtle)}*{box-sizing:border-box}:root{--sidebar-w-collapsed: 72px;--sidebar-w-expanded: 240px;--bp-xs: 360px;--bp-sm: 480px;--bp-md: 768px;--bp-lg: 1024px;--bp-xl: 1280px;--density-scale: 1;--hit-min: 40px}[data-density=compact]{--density-scale: .85;--hit-min: 36px}[data-density=cozy]{--density-scale: 1;--hit-min: 40px}[data-density=comfortable]{--density-scale: 1.15;--hit-min: 44px}@media (pointer: coarse){:root:not([data-density]){--density-scale: 1.15;--hit-min: 44px}}[data-theme=light]{--bg: #FAFAFA;--surface: #FFFFFF;--surface-2: #F5F5F5;--surface-hover: #EFEFEF;--bg-ambient: none}[data-theme=dark]{--bg: #111113;--bg-ambient: radial-gradient(1200px 600px at 80% -10%, rgba(124,196,255,.04), transparent 60%), radial-gradient(900px 500px at 0% 110%, rgba(245,245,244,.02), transparent 55%)}html,body,#root{margin:0;padding:0;height:100%;background:var(--bg);color:var(--text);font-family:var(--font-ui);font-size:var(--fs-body);-webkit-font-smoothing:antialiased}.app{height:100dvh;display:grid;grid-template-columns:var(--sidebar-w-collapsed, 72px) 1fr}.app[data-sidebar=expanded]{grid-template-columns:var(--sidebar-w-expanded, 240px) 1fr}@media (max-width: 768px){.app{grid-template-columns:1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:min(86vw,320px);z-index:60;transform:translate(-100%);transition:transform var(--t-base) var(--ease);background:var(--surface);border-inline-end:1px solid var(--border);padding-block:calc(var(--s-5) + env(safe-area-inset-top));padding-inline:var(--s-4);overflow-y:auto;align-items:stretch}body[data-nav-open="1"] .sidebar{transform:translate(0)}body[data-nav-open="1"]{overflow:hidden}body[data-nav-open="1"]:after{content:"";position:fixed;inset:0;background:#00000073;backdrop-filter:blur(2px);z-index:59;animation:pos-fade-in var(--t-fast) var(--ease)}}@keyframes pos-fade-in{0%{opacity:0}to{opacity:1}}.app-main{min-height:0;min-width:0;overflow:hidden;display:flex;flex-direction:column}.app-main>*{flex:1;min-height:0}.sidebar{border-inline-end:1px solid var(--border);padding:var(--s-4) 0;display:flex;flex-direction:column;align-items:center;gap:var(--s-3);overflow:visible;background:var(--bg);position:relative}.sidebar:after{content:"";position:absolute;top:0;bottom:0;inset-inline-start:100%;width:clamp(220px,22vw,320px);background:linear-gradient(to right,rgba(0,0,0,.22) 0%,rgba(0,0,0,.08) 50%,transparent 100%);pointer-events:none;opacity:0;transition:opacity var(--t-base) var(--ease);z-index:250}[data-theme=dark] .sidebar:after{background:linear-gradient(to right,rgba(255,255,255,.12) 0%,rgba(255,255,255,.04) 45%,transparent 100%)}[data-contrast=hc] .sidebar:after,[data-theme=hc] .sidebar:after{background:linear-gradient(to right,rgba(255,255,255,.24) 0%,rgba(255,255,255,.08) 45%,transparent 100%)}.sidebar:has(.sidebar-subnav):after{opacity:1}@media (max-width: 768px){.sidebar:after{display:none}}.sidebar-section{display:flex;flex-direction:column;align-items:center;gap:var(--s-3);width:100%}.sidebar-brand{width:40px;height:40px;display:grid;place-items:center;color:var(--text);flex-shrink:0}.sidebar-brand svg{width:32px;height:32px}@keyframes spin{to{transform:rotate(360deg)}}.sidebar-spacer{flex:1;min-height:var(--s-3)}.sidebar-group{width:100%;display:flex;flex-direction:column;align-items:center;position:relative}.nav-circle{width:40px;height:40px;border-radius:50%;border:1px solid var(--border);background:transparent;color:var(--text-muted);display:grid;place-items:center;cursor:pointer;transition:all var(--t-fast) var(--ease);position:relative;flex-shrink:0;text-decoration:none}.nav-circle svg{width:18px;height:18px}.nav-circle:hover{background:var(--surface-hover);color:var(--text);border-color:var(--border-strong)}.nav-circle.active{background:var(--accent);color:var(--accent-ink);border-color:transparent}.nav-avatar{width:32px;height:32px;border-radius:50%;background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;font-weight:600;font-size:var(--fs-sm);cursor:pointer;border:1px solid transparent;transition:all var(--t-fast) var(--ease)}.nav-avatar:hover{border-color:var(--border-strong)}.nav-circle[data-label]:after,.nav-avatar[data-label]:after{content:attr(data-label);position:absolute;inset-inline-start:calc(100% + var(--s-2));top:50%;transform:translateY(-50%);white-space:nowrap;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);padding:var(--s-1) var(--s-3);font-family:var(--font-ui);font-size:var(--fs-xs);font-weight:var(--weight-medium);color:var(--text);opacity:0;pointer-events:none;transition:opacity var(--t-fast) var(--ease);z-index:400}.nav-circle[data-label]:hover:after,.nav-avatar[data-label]:hover:after{opacity:1}.nav-circle[aria-expanded=true][data-label]:after,.nav-circle[aria-expanded=true][data-label]:hover:after,.nav-avatar[aria-expanded=true][data-label]:after,.nav-avatar[aria-expanded=true][data-label]:hover:after{opacity:0}.sidebar-dropdown{position:absolute;inset-inline-start:calc(100% + var(--s-2));bottom:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);min-width:200px;padding:var(--s-2);display:flex;flex-direction:column;gap:2px;z-index:350}.sidebar-dropdown-header{padding:var(--s-2) var(--s-3);border-bottom:1px solid var(--border);display:flex;flex-direction:column;gap:2px}.sidebar-dropdown-name{font-size:var(--fs-sm);font-weight:500;color:var(--text)}.sidebar-dropdown-role{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-subtle);letter-spacing:var(--tracking-mono);text-transform:uppercase}.sidebar-dropdown-item{background:transparent;border:none;color:var(--text);font:inherit;font-size:var(--fs-sm);text-align:start;padding:var(--s-2) var(--s-3);border-radius:var(--r-sm);cursor:pointer;transition:background var(--t-fast) var(--ease)}.sidebar-dropdown-item:hover{background:var(--surface-hover)}.sidebar-dropdown-item{display:flex;align-items:center;gap:var(--s-2)}.sidebar-dropdown-item svg{width:16px;height:16px;flex-shrink:0}.sidebar-dropdown-item[aria-pressed=true]{color:var(--accent)}.sidebar-dropdown-divider{height:1px;background:var(--border);margin:var(--s-1) 0}.sidebar-subnav{position:absolute;inset-inline-start:calc(100% + var(--s-2));top:50%;transform:translateY(-50%);display:flex;flex-direction:column;align-items:flex-start;gap:var(--s-2);z-index:300;animation:pos-subnav-in var(--t-fast) var(--ease) both}@keyframes pos-subnav-in{0%{opacity:0;transform:translateY(-50%) translate(-6px)}to{opacity:1;transform:translateY(-50%) translate(0)}}.sidebar-subnav-item{height:40px;min-width:40px;padding:0 var(--s-3) 0 var(--s-2);border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--text-muted);display:inline-flex;align-items:center;gap:var(--s-2);text-decoration:none;cursor:pointer;transition:all var(--t-fast) var(--ease);position:relative;white-space:nowrap}.sidebar-subnav-item svg{width:18px;height:18px;flex:0 0 auto}.sidebar-subnav-label{font-family:var(--font-ui);font-size:var(--fs-xs);font-weight:var(--weight-medium);line-height:1}.sidebar-subnav-item:hover{background:var(--surface-hover);color:var(--text);border-color:var(--border-strong)}.sidebar-subnav-item.active{background:var(--accent);color:var(--accent-ink);border-color:transparent}.pos-cycle-shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,480px);gap:var(--s-4);padding:var(--s-5);min-height:0;overflow:hidden}.pos-cycle-shell:has(.pos-cycle-detail:empty),.pos-cycle-shell:not(:has(.pos-cycle-detail)){grid-template-columns:1fr}.pos-cycle-list{overflow:auto;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface)}.pos-cycle-list table tbody tr{cursor:pointer;transition:background var(--t-fast) var(--ease)}.pos-cycle-list table tbody tr:hover{background:var(--surface-hover)}.pos-cycle-list table tbody tr.selected{background:var(--surface-2);border-inline-start:2px solid var(--accent)}.pos-cycle-detail{overflow:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--s-4);display:flex;flex-direction:column;gap:var(--s-3)}.pos-cycle-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s-3);border-bottom:1px solid var(--border);padding-bottom:var(--s-3)}.pos-cycle-detail-head .title{font-size:var(--fs-body-lg);font-weight:600;letter-spacing:var(--tracking-tight)}.pos-cycle-detail-head .meta{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-muted);letter-spacing:var(--tracking-mono);text-transform:uppercase;margin-top:4px}.pos-cycle-detail-head .actions{display:flex;gap:var(--s-2);flex-wrap:wrap;justify-content:flex-end}.pos-cycle-detail .num.over{color:var(--text);font-weight:600}.pos-cycle-detail .num.short{color:var(--text-muted);font-weight:600}.pos-pill.open{color:var(--text);border-color:var(--border-strong)}.pos-pill.closed{color:var(--text-muted)}.pos-sig-pad{position:relative;display:flex;justify-content:center;padding:var(--s-3) 0}.pos-sig-pad canvas{border:1px solid var(--border-strong);border-radius:var(--r-md);background:#fff;cursor:crosshair;max-width:100%}.pos-sig-baseline{position:absolute;inset-inline:12%;bottom:24%;border-bottom:1px dashed rgba(0,0,0,.25);pointer-events:none}.pos-sig-hint{position:absolute;inset-inline-end:14%;bottom:calc(24% - 18px);color:#00000073;font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-mono);text-transform:uppercase;pointer-events:none}.pos-receipt-signature{display:flex;flex-direction:column;gap:4px;padding:var(--s-3) 0;border-top:1px solid var(--border)}.pos-receipt-signature .hint{color:var(--text-muted);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-mono);text-transform:uppercase}.pos-receipt-signature img{background:#fff;border:1px solid var(--border);border-radius:var(--r-sm);max-width:100%;max-height:120px;align-self:flex-start}.pos-tier-badge{display:inline-block;padding:2px 8px;border-radius:var(--r-pill);border:1px solid var(--border);background:var(--surface-2);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text-muted);vertical-align:middle}.pos-tier-badge.tier-bronze{color:#b97a2b;border-color:#b97a2b66}.pos-tier-badge.tier-silver{color:var(--text);border-color:var(--border-strong)}.pos-tier-badge.tier-gold{color:#c89b2c;border-color:#c89b2c80}.pos-tier-badge.tier-platinum,.pos-tier-badge.tier-vip{color:var(--accent);border-color:var(--accent)}.pos-cust-picker .pos-tier-badge{position:absolute;top:50%;inset-inline-end:10px;transform:translateY(-50%);z-index:1}.pos-locked-banner{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);padding:var(--s-3);border:1px dashed var(--border-strong);border-radius:var(--r-md);background:var(--surface-2);color:var(--text-muted);font-size:var(--fs-sm)}.pos-commander-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:var(--s-3);padding:var(--s-5)}.pos-commander-table{display:flex;flex-direction:column;gap:var(--s-2);padding:var(--s-4);border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);color:var(--text);cursor:pointer;text-align:start;font:inherit;transition:border-color var(--t-fast) var(--ease),background var(--t-fast) var(--ease)}.pos-commander-table:hover{border-color:var(--border-strong)}.pos-commander-table.busy{background:var(--surface-2);border-color:var(--border-strong)}.pos-commander-table .head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s-2)}.pos-commander-table .label{font-size:var(--fs-body-lg);font-weight:600;letter-spacing:var(--tracking-tight)}.pos-commander-table .seats{color:var(--text-subtle);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-mono);text-transform:uppercase}.pos-commander-table .meta{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s-2);color:var(--text-muted);font-size:var(--fs-sm)}.pos-commander-table .meta.empty{color:var(--text-subtle);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-mono);text-transform:uppercase}.pos-commander-table .meta .total{color:var(--text);font-weight:600;font-variant-numeric:tabular-nums}.pos-commander-table.has-ready{border-color:var(--c-success, #16a34a);box-shadow:0 0 0 1px color-mix(in srgb,var(--c-success, #16a34a) 25%,transparent) inset}.pos-commander-table .ready-pills{display:flex;flex-wrap:wrap;gap:4px;margin-top:var(--s-1)}.pos-commander-table .ready-pill{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;border-radius:var(--r-sm);background:color-mix(in srgb,var(--c-success, #16a34a) 12%,transparent);color:var(--c-success, #15803d);border:1px solid color-mix(in srgb,var(--c-success, #16a34a) 35%,transparent);font-size:var(--fs-xs);font-weight:500;line-height:1.2}.pos-commander-table .ready-pill .check{font-weight:700}.pos-commander-shell{display:grid;grid-template-columns:minmax(0,1fr) clamp(300px,28vw,380px);height:100%;min-height:0;overflow:hidden}@media (max-width: 1024px){.pos-commander-shell{grid-template-columns:1fr;grid-template-rows:1fr auto}}.pos-commander-main{display:grid;grid-template-rows:auto 1fr;min-height:0;overflow:hidden}.pos-page-header{display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);padding:var(--s-3) var(--s-5);border-bottom:1px solid var(--border);background:var(--surface);flex-shrink:0}.pos-page-header .title{font-size:var(--fs-body-lg);font-weight:600;letter-spacing:var(--tracking-tight)}.pos-page-header .actions{display:flex;align-items:center;gap:var(--s-2)}button{font:inherit;color:inherit}.pos-boot{display:grid;place-items:center;height:100dvh;color:var(--text-muted)}.pos-input{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);padding:10px 12px;color:var(--text);outline:none;transition:border-color var(--t-fast) var(--ease)}.pos-input:focus{border-color:var(--border-strong)}.pos-btn{background:var(--accent);color:var(--bg);border:1px solid var(--accent);border-radius:var(--r-md);padding:10px 16px;cursor:pointer;font-weight:500;transition:border-color var(--t-fast) var(--ease)}.pos-btn[disabled]{opacity:.5;cursor:not-allowed}.pos-btn.ghost{background:transparent;color:var(--text);border-color:var(--border)}.pos-btn.ghost:hover{border-color:var(--border-strong)}.pos-error{color:var(--text);background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--r-md);padding:var(--s-2) var(--s-3);font-size:var(--fs-sm)}.pos-shell{display:grid;grid-template-rows:auto 1fr;grid-template-columns:minmax(0,1fr) clamp(300px,28vw,380px);grid-template-areas:"topbar topbar" "main   cart";height:100%;min-height:0;container-type:inline-size;container-name:pos-shell}@media (max-width: 1024px){.pos-shell{grid-template-columns:1fr;grid-template-areas:"topbar" "main" "cart";grid-template-rows:auto 1fr auto}}.pos-topbar{grid-area:topbar;display:flex;align-items:center;justify-content:space-between;gap:var(--s-4);padding:var(--s-3) var(--s-5);border-bottom:1px solid var(--border);background:linear-gradient(to bottom,color-mix(in oklab,var(--surface) 88%,transparent),color-mix(in oklab,var(--surface) 78%,transparent));backdrop-filter:saturate(140%) blur(10px);-webkit-backdrop-filter:saturate(140%) blur(10px);position:relative;z-index:5;animation:pos-topbar-in .28s var(--ease) both}.pos-topbar:after{content:"";position:absolute;inset:auto 0 -1px;height:1px;background:linear-gradient(to right,transparent,var(--border-strong) 50%,transparent);opacity:.55;pointer-events:none}@keyframes pos-topbar-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.pos-topbar .brand{display:inline-flex;align-items:center;gap:var(--s-2);font-family:var(--font-mono);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text-muted);font-size:var(--fs-sm);min-width:0}.pos-topbar .brand .store-name{color:var(--text);font-weight:500}.pos-status-dot{appearance:none;border:0;background:transparent;padding:4px;margin:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;border-radius:999px;flex:0 0 auto;transition:background var(--t-fast) var(--ease),transform var(--t-fast) var(--ease)}.pos-status-dot[disabled]{cursor:default}.pos-status-dot:not([disabled]):hover{background:color-mix(in oklab,var(--surface-2) 80%,transparent);transform:scale(1.04)}.pos-status-dot__core{width:9px;height:9px;border-radius:50%;display:block;background:var(--accent);box-shadow:0 0 0 3px color-mix(in oklab,var(--accent) 22%,transparent);transition:background var(--t-fast) var(--ease),box-shadow var(--t-fast) var(--ease)}.pos-status-dot--ok .pos-status-dot__core{background:var(--success, #16a34a);box-shadow:0 0 0 3px color-mix(in oklab,var(--success, #16a34a) 22%,transparent)}.pos-status-dot--pending .pos-status-dot__core,.pos-status-dot--syncing .pos-status-dot__core{background:var(--warning, #d97706);box-shadow:0 0 0 3px color-mix(in oklab,var(--warning, #d97706) 22%,transparent);animation:pos-brand-pulse 1.6s ease-in-out infinite}.pos-status-dot--offline .pos-status-dot__core{background:var(--danger, #dc2626);box-shadow:0 0 0 3px color-mix(in oklab,var(--danger, #dc2626) 22%,transparent);animation:pos-brand-pulse 2.2s ease-in-out infinite}@keyframes pos-brand-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(.85)}}.pos-topbar-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border:1px solid var(--border);border-radius:var(--r-pill, 999px);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-mono);color:var(--text-muted);background:color-mix(in oklab,var(--surface-2) 70%,transparent);white-space:nowrap;flex:0 0 auto;transition:color var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease)}.pos-topbar-chip .pos-btn-icon{color:var(--text-subtle)}.pos-topbar-chip--accent{color:var(--accent);border-color:color-mix(in oklab,var(--accent) 40%,var(--border));background:color-mix(in oklab,var(--accent) 8%,transparent)}.pos-topbar-chip--accent .pos-topbar-chip__dot{width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 2px color-mix(in oklab,var(--accent) 22%,transparent);animation:pos-brand-pulse 2.6s ease-in-out infinite}.pos-topbar .who{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:var(--s-2);color:var(--text-muted);font-size:var(--fs-sm);min-width:0}.pos-topbar-divider{width:1px;height:22px;background:var(--border);margin:0 4px;flex:0 0 auto}.pos-topbar .pos-btn.ghost{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--r-pill, 999px);font-size:var(--fs-sm);transition:border-color var(--t-fast) var(--ease),background var(--t-fast) var(--ease),color var(--t-fast) var(--ease),transform var(--t-fast) var(--ease),padding var(--t-fast) var(--ease)}.pos-topbar .pos-btn.ghost:hover{background:var(--surface-2);border-color:var(--border-strong);transform:translateY(-1px)}.pos-topbar .pos-btn.ghost:active{transform:translateY(0) scale(.97)}.pos-topbar .pos-btn.ghost:focus-visible{outline:2px solid color-mix(in oklab,var(--accent) 60%,transparent);outline-offset:2px}.pos-topbar .pos-btn.ghost[disabled]{transform:none}.pos-topbar .pos-btn-icon{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;flex:0 0 auto;color:var(--text-muted);transition:color var(--t-fast) var(--ease),transform var(--t-fast) var(--ease)}.pos-topbar .pos-btn.ghost:hover .pos-btn-icon{color:var(--text);transform:scale(1.08)}.pos-topbar .pos-btn.ghost.active .pos-btn-icon{color:var(--accent)}.pos-topbar .pos-btn-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.pos-topbar .pos-btn.ghost.pos-btn--compact{padding:6px 8px;gap:0}.pos-topbar .pos-btn.ghost.pos-btn--compact .pos-btn-label{display:inline-block;max-width:0;opacity:0;margin-left:0;overflow:hidden;white-space:nowrap;transition:max-width var(--t-fast) var(--ease),opacity var(--t-fast) var(--ease),margin-left var(--t-fast) var(--ease)}.pos-topbar .pos-btn.ghost.pos-btn--compact:hover,.pos-topbar .pos-btn.ghost.pos-btn--compact:focus-visible{padding:6px 12px;gap:6px}.pos-topbar .pos-btn.ghost.pos-btn--compact:hover .pos-btn-label,.pos-topbar .pos-btn.ghost.pos-btn--compact:focus-visible .pos-btn-label{max-width:240px;opacity:1;margin-left:6px}@media (prefers-reduced-motion: reduce){.pos-topbar,.pos-status-dot--pending .pos-status-dot__core,.pos-status-dot--syncing .pos-status-dot__core,.pos-status-dot--offline .pos-status-dot__core,.pos-topbar-chip--accent .pos-topbar-chip__dot,.pos-status-pill--training{animation:none!important}.pos-topbar .pos-btn.ghost:hover,.pos-topbar .pos-btn.ghost:hover .pos-btn-icon{transform:none}.pos-topbar .pos-btn.ghost.pos-btn--compact .pos-btn-label{transition:none}}@media (max-width: 900px){.pos-topbar-chip__text{display:none}.pos-topbar-chip{padding:4px 8px}}.pos-main{grid-area:main;display:flex;flex-direction:column;min-height:0;min-width:0}.pos-main>*{flex:0 0 auto}.pos-main>.pos-grid{flex:1 1 auto;min-height:0}.pos-search{display:flex;gap:var(--s-2);padding:var(--s-4);border-bottom:1px solid var(--border);background:var(--surface)}.pos-search input{flex:1}.pos-grid{overflow-y:auto;padding:var(--s-4);display:grid;grid-template-columns:repeat(auto-fill,minmax(clamp(120px,22vw,180px),1fr));gap:var(--s-3);align-content:start;container-type:inline-size;container-name:pos-grid;scrollbar-gutter:stable}.pos-grid[data-density=list]{grid-template-columns:1fr}.pos-grid[data-density=compact]{grid-template-columns:repeat(auto-fill,minmax(96px,1fr))}.pos-card{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--s-3);cursor:pointer;display:flex;flex-direction:column;gap:var(--s-2);text-align:start;transition:border-color var(--t-fast) var(--ease)}.pos-card:hover{border-color:var(--border-strong)}.pos-card .name{font-weight:500}.pos-card .sku{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-subtle);letter-spacing:var(--tracking-mono)}.pos-card .price{margin-top:auto;font-size:var(--fs-body-lg);font-weight:600;color:var(--accent)}.pos-card .stock{font-size:var(--fs-xs);color:var(--text-muted)}.pos-cart{grid-area:cart;display:flex;flex-direction:column;border-inline-start:1px solid var(--border);background:var(--surface);min-height:0;min-width:0;overflow:hidden}.pos-cart>*{min-width:0;flex:0 0 auto}.pos-cart-header{padding:var(--s-4);border-bottom:1px solid var(--border);font-weight:500;min-width:0;overflow:hidden;text-overflow:ellipsis}.pos-cart-list{flex:1 1 0;min-height:0;overflow-y:auto;padding:var(--s-2) var(--s-4);display:flex;flex-direction:column;gap:var(--s-2)}.pos-cart-note{padding:0 var(--s-4) var(--s-2)}.pos-line{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--s-2);padding:var(--s-2) 0;border-bottom:1px solid var(--border);min-width:0}.pos-line:last-child{border-bottom:none}.pos-line .name{font-size:var(--fs-sm)}.pos-line .qty{display:flex;align-items:center;gap:var(--s-1);font-family:var(--font-mono);font-size:var(--fs-xs)}.pos-line .qty button{width:22px;height:22px;border-radius:var(--r-sm);background:var(--surface-2);border:1px solid var(--border);color:var(--text);cursor:pointer;display:grid;place-items:center}.pos-line .qty button:hover{border-color:var(--border-strong)}.pos-line .total{font-variant-numeric:tabular-nums;font-weight:500}.pos-line .remove{background:transparent;border:none;color:var(--text-muted);cursor:pointer;font-size:var(--fs-xs);padding:0}.pos-line .remove:hover{color:var(--text)}.pos-checkout{padding:var(--s-3) var(--s-4);border-top:1px solid var(--border);display:flex;flex-direction:column;gap:var(--s-2);flex:0 0 auto;max-height:60%;overflow-y:auto;width:100%;max-width:100%;min-width:0;overflow-x:hidden;box-sizing:border-box}.pos-checkout>*{min-width:0;max-width:100%;box-sizing:border-box}.pos-checkout.expanded{max-height:75%}.pos-checkout-toggle{align-self:stretch;display:flex;align-items:center;justify-content:space-between;gap:var(--s-2);padding:6px 10px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm);color:var(--text-muted);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-mono);text-transform:uppercase;cursor:pointer}.pos-checkout-toggle:hover{border-color:var(--border-strong);color:var(--text)}.pos-checkout-toggle .chev{transition:transform var(--t-fast) var(--ease)}.pos-checkout-toggle[aria-expanded=true] .chev{transform:rotate(180deg)}.pos-totals{display:flex;justify-content:space-between;align-items:baseline;gap:var(--s-3);min-width:0}.pos-totals .label{color:var(--text-muted);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-mono);text-transform:uppercase;flex-shrink:0}.pos-totals .amount{font-size:clamp(var(--fs-body-lg),5vw,var(--fs-display-3));font-weight:600;font-variant-numeric:tabular-nums;min-width:0;text-align:end;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pos-empty{padding:var(--s-6) var(--s-4);color:var(--text-subtle);text-align:center;font-size:var(--fs-sm)}.pos-receipt{display:grid;place-items:center;min-height:100dvh;padding:var(--s-6)}.pos-receipt-card{width:100%;max-width:480px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--s-6);display:flex;flex-direction:column;gap:var(--s-4)}.pos-receipt-card h1{margin:0;font-size:var(--fs-display-3);font-weight:600}.pos-receipt-list{display:flex;flex-direction:column;gap:var(--s-2)}.pos-receipt-row{display:grid;grid-template-columns:1fr auto auto;gap:var(--s-2);font-size:var(--fs-sm);border-bottom:1px solid var(--border);padding-bottom:var(--s-2)}.pos-receipt-actions{display:flex;gap:var(--s-2)}.pos-cat-bar{display:flex;flex-wrap:nowrap;flex-shrink:0;gap:var(--s-2);padding:var(--s-3) var(--s-4) var(--s-1);overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;-webkit-overflow-scrolling:touch}.pos-cat-bar>*{flex-shrink:0;white-space:nowrap}.pos-chip{background:var(--surface-2);border:1px solid var(--border);color:var(--text);border-radius:var(--r-pill);padding:6px 12px;font-size:var(--fs-sm);cursor:pointer;transition:border-color var(--t-fast) var(--ease)}.pos-chip:hover{border-color:var(--border-strong)}.pos-chip.active{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.pos-pay-row{display:flex;gap:var(--s-2)}.pos-disc-row{display:flex;align-items:center;justify-content:space-between;gap:var(--s-2)}.pos-disc-row label{color:var(--text-muted);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-mono);text-transform:uppercase}.pos-input-sm{width:90px;padding:6px 10px;text-align:end;font-variant-numeric:tabular-nums}.pos-totals-block{display:flex;flex-direction:column;gap:var(--s-1);padding-top:var(--s-2);border-top:1px solid var(--border);min-width:0}.pos-totals.sub{font-size:var(--fs-sm);color:var(--text-muted)}.pos-totals.sub span:last-child{font-variant-numeric:tabular-nums}.pos-checkout-actions{display:flex;flex-wrap:wrap;gap:var(--s-2);width:100%;max-width:100%;min-width:0;box-sizing:border-box}.pos-checkout-actions>*{min-width:0;max-width:100%;box-sizing:border-box}.pos-checkout-actions .pos-btn{flex:1 1 0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pos-checkout-actions .pos-charge-btn,.pos-checkout-actions .pos-charge-reason{flex:1 1 100%;width:100%;max-width:100%;min-width:0;box-sizing:border-box}.pos-checkout-actions .pos-charge-btn{overflow:hidden}.pos-checkout-actions .pos-charge-btn .label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.pos-checkout-actions .pos-charge-btn .amount{flex-shrink:0}.pos-checkout-actions .pos-charge-reason{overflow-wrap:anywhere;word-break:break-word}.pos-checkout-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:var(--s-2)}.pos-checkout-tile{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:8px 10px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);color:var(--text);cursor:pointer;text-align:start;min-width:0;transition:border-color var(--t-fast) var(--ease),background var(--t-fast) var(--ease)}.pos-checkout-tile:hover{border-color:var(--border-strong)}.pos-checkout-tile:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.pos-checkout-tile .label{color:var(--text-muted);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-mono);text-transform:uppercase}.pos-checkout-tile .value{font-size:var(--fs-body);font-weight:600;font-variant-numeric:tabular-nums;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pos-checkout-tile .meta{font-size:var(--fs-xs);font-variant-numeric:tabular-nums}.pos-checkout-tile .meta.success{color:var(--success, #10b981)}.pos-checkout-tile .meta.error{color:var(--danger, #ef4444)}.pos-checkout-tile.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--surface-2))}.pos-checkout-tile.warn{border-color:var(--danger, #ef4444);background:color-mix(in srgb,var(--danger, #ef4444) 8%,var(--surface-2))}.pos-checkout-tile--toggle{flex-direction:row;align-items:center;justify-content:space-between;gap:var(--s-2)}.pos-checkout-tile--toggle input[type=checkbox]{position:absolute;opacity:0;inset:0;cursor:pointer}.pos-checkout-tile--toggle .value{font-size:var(--fs-xs);font-family:var(--font-mono);letter-spacing:var(--tracking-mono);text-transform:uppercase;color:var(--text-muted)}.pos-checkout-tile--toggle.active .value{color:var(--accent)}@media (max-width: 720px){.pos-checkout-tiles{grid-template-columns:repeat(2,1fr)}}.pos-modal-backdrop{position:fixed;inset:0;background:#00000080;display:grid;place-items:center;z-index:100}.pos-modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);width:min(440px,92vw);max-height:min(80dvh,calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - var(--s-4)));display:flex;flex-direction:column;scrollbar-gutter:stable}.pos-modal-header{padding:var(--s-4);border-bottom:1px solid var(--border);font-weight:500;display:flex;align-items:center;justify-content:space-between}.pos-modal-body{padding:var(--s-4);display:flex;flex-direction:column;gap:var(--s-3);overflow-y:auto}.pos-modal-footer{padding:var(--s-3) var(--s-4);border-top:1px solid var(--border);display:flex;gap:var(--s-2);justify-content:flex-end}.pos-field{display:flex;flex-direction:column;gap:var(--s-1)}.pos-field span{color:var(--text-muted);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-mono);text-transform:uppercase}.pos-held-search{margin-bottom:var(--s-2)}.pos-held-empty-filter{padding:var(--s-4);text-align:center;color:var(--text-muted);font-size:var(--fs-sm)}.pos-held-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--s-2)}.pos-held-list li{display:grid;grid-template-columns:1fr auto;gap:var(--s-3);align-items:center;padding:var(--s-3);border:1px solid var(--border);border-radius:var(--r-md)}.pos-held-list li.is-selected{border-color:color-mix(in srgb,var(--c-accent, #2563eb) 55%,var(--border));background:color-mix(in srgb,var(--c-accent, #2563eb) 8%,var(--surface));box-shadow:0 0 0 1px color-mix(in srgb,var(--c-accent, #2563eb) 35%,transparent)}.pos-held-label{font-weight:500}.pos-held-meta{font-size:var(--fs-xs);color:var(--text-muted);margin-top:2px}.pos-held-actions{display:flex;gap:var(--s-2)}.pos-page{display:grid;grid-template-rows:auto 1fr;height:100%;min-height:0}.pos-history{overflow-y:auto;padding:var(--s-5)}.pos-history-table{width:100%;border-collapse:collapse}.pos-history-table th,.pos-history-table td{padding:var(--s-2) var(--s-3);text-align:start;border-bottom:1px solid var(--border);font-size:var(--fs-sm)}.pos-history-table th{color:var(--text-muted);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-mono);text-transform:uppercase}.pos-history-table td.mono{font-family:var(--font-mono)}.pos-history-table td.num,.pos-history-table th.num{text-align:end;font-variant-numeric:tabular-nums}.pos-history-table tbody tr{cursor:pointer;transition:background var(--t-fast) var(--ease)}.pos-history-table tbody tr:hover{background:var(--surface-hover)}.pos-cust-picker{position:relative}.pos-cust-presets{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:4px}.pos-cust-presets .pos-chip{padding:4px 10px;font-size:var(--fs-xs)}.pos-cust-preset{font-size:var(--fs-xs);cursor:pointer}.pos-cust-preset.active{background:var(--accent-soft, var(--surface-2));border-color:var(--accent);color:var(--accent)}.pos-checkout-extras{display:flex;flex-direction:column;gap:var(--s-2)}.pos-cust-results{position:absolute;z-index:30;top:calc(100% + 4px);inset-inline:0;margin:0;padding:4px;list-style:none;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);max-height:240px;overflow-y:auto;display:flex;flex-direction:column;gap:2px}.pos-cust-results li{padding:var(--s-2);border-radius:var(--r-sm);cursor:pointer}.pos-cust-results li:hover{background:var(--surface-hover)}.pos-cust-results li.create{border-top:1px dashed var(--border);margin-top:4px;padding-top:var(--s-2)}.pos-cust-results li.create .name{font-weight:600}.pos-cust-results .name{font-weight:500}.pos-cust-results .meta{font-size:var(--fs-xs);color:var(--text-muted);margin-top:2px}.pos-loc-select{background:var(--surface-2);border:1px solid var(--border);color:var(--text);border-radius:var(--r-md);padding:6px 10px;font:inherit}.pos-loc-kind{color:var(--text-subtle);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-mono);text-transform:uppercase}.pos-topbar .brand .store-name{color:var(--text);text-transform:none;letter-spacing:0;font-family:var(--font-ui)}.pos-card.out{opacity:.55}.pos-card.out .stock{color:var(--text-subtle)}.pos-line.over .name{color:var(--text)}.pos-line.over .qty span{color:var(--text);font-weight:600}.pos-line .warn{margin-top:4px;font-size:var(--fs-xs);color:var(--text-muted);font-family:var(--font-mono);letter-spacing:var(--tracking-mono)}.pos-totals.sub.warn .label,.pos-totals.sub.warn span:last-child{color:var(--text);font-weight:600}.pos-receipt-store{font-family:var(--font-ui);font-weight:600;font-size:var(--fs-body-lg);text-align:center;letter-spacing:var(--tracking-tight)}.pos-receipt-footer{white-space:pre-line;text-align:center;color:var(--text-muted);font-size:var(--fs-sm);border-top:1px solid var(--border);padding-top:var(--s-3)}.pos-operator-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--s-2);max-height:280px;overflow-y:auto}.pos-operator-list li.op{display:grid;grid-template-columns:1fr auto auto;gap:var(--s-2);align-items:center;padding:var(--s-2) var(--s-3);border:1px solid var(--border);border-radius:var(--r-sm);cursor:pointer;transition:border-color var(--t-fast) var(--ease)}.pos-operator-list li.op:hover{border-color:var(--border-strong)}.pos-operator-list li.op.picked{border-color:var(--accent)}.pos-operator-list li.op.active .name{font-weight:600}.pos-operator-list li.op .name{font-weight:500}.pos-operator-add{display:grid;grid-template-columns:1fr 100px auto;gap:var(--s-2);margin-top:var(--s-2);padding-top:var(--s-3);border-top:1px solid var(--border)}.pos-receipt-logo{display:block;max-width:160px;max-height:80px;object-fit:contain;margin:0 auto var(--s-2)}.pos-display-logo{max-height:56px;max-width:220px;object-fit:contain}.pos-logo-preview{display:flex;align-items:center;gap:var(--s-2);padding:var(--s-2);border:1px dashed var(--border);border-radius:var(--r-sm)}.pos-logo-preview img{max-width:120px;max-height:60px;object-fit:contain}.pos-audit-kind-chips{flex-wrap:wrap}.pos-tax-row{display:grid;grid-template-columns:1fr 100px auto;gap:var(--s-2);align-items:center;padding:4px 0}.pos-tax-row .cat{font-family:var(--font-mono);font-size:var(--fs-sm);letter-spacing:var(--tracking-mono);color:var(--text-muted)}.pos-import-results{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px;max-height:240px;overflow-y:auto}.pos-import-results li{display:grid;grid-template-columns:70px 1fr;gap:var(--s-2);padding:4px var(--s-2);font-size:var(--fs-xs);font-family:var(--font-mono);letter-spacing:var(--tracking-mono);border:1px solid var(--border);border-radius:var(--r-sm)}.pos-import-results li.ok{border-color:var(--border);color:var(--text-muted)}.pos-import-results li.fail{border-color:var(--border-strong);color:var(--text)}.pos-import-results .row{color:var(--text-subtle)}.pos-loyalty-row{display:flex;align-items:center;justify-content:space-between;gap:var(--s-2);padding:var(--s-2);border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2)}.pos-loyalty-row .balance{display:flex;flex-direction:column;gap:2px}.pos-loyalty-row .balance .label{color:var(--text-muted);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-mono);text-transform:uppercase}.pos-loyalty-row .balance .value{font-size:var(--fs-body-lg);font-weight:600;font-variant-numeric:tabular-nums}.pos-line .qty .line-disc.active{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.pos-line .line-fired{margin-inline-start:auto;font-size:var(--fs-xs)}.pos-kitchen{overflow-y:auto;padding:var(--s-5)}.pos-kitchen-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(clamp(220px,30vw,280px),1fr));gap:var(--s-3);container-type:inline-size}@media (max-width: 480px){.pos-kitchen-grid{grid-template-columns:1fr}}.pos-ticket{display:flex;flex-direction:column;gap:var(--s-2);padding:var(--s-3);border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);transition:border-color .2s ease,box-shadow .2s ease}.pos-ticket.sla-warn{border-color:#f59e0b8c;box-shadow:0 0 0 1px #f59e0b2e inset}.pos-ticket.sla-warn .meta{color:#f59e0bd9}.pos-ticket.sla-urgent{border-color:#ef4444b3;box-shadow:0 0 0 1px #ef444438 inset;animation:pos-ticket-urgent 1.6s ease-in-out infinite}.pos-ticket.sla-urgent .meta{color:#f87171}@keyframes pos-ticket-urgent{0%,to{box-shadow:0 0 0 1px #ef444438 inset}50%{box-shadow:0 0 0 1px #ef444473 inset}}.pos-ticket header{display:flex;flex-direction:column;gap:2px;border-bottom:1px solid var(--border);padding-bottom:var(--s-2)}.pos-ticket .ref{display:flex;gap:var(--s-2);align-items:baseline}.pos-ticket .num{font-weight:600}.pos-ticket .table{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--text-muted);letter-spacing:var(--tracking-mono)}.pos-ticket .meta{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-muted);letter-spacing:var(--tracking-mono);text-transform:uppercase}.pos-ticket ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.pos-ticket li{display:grid;grid-template-columns:auto 1fr;gap:var(--s-2);padding:4px 0}.pos-ticket li .qty{font-family:var(--font-mono);font-weight:600}.pos-ticket li .name{font-weight:500}.pos-ticket li .mods,.pos-ticket li .note{grid-column:2;font-size:var(--fs-xs);color:var(--text-muted);font-style:italic}.pos-ticket .actions{display:flex;gap:var(--s-2);margin-top:var(--s-2)}.pos-ticket-preparing{border-color:var(--border-strong)}.pos-ticket-ready{background:var(--surface-2);border-color:var(--border-strong)}.pos-ticket-recalled{opacity:.6}.pos-ticket li{cursor:pointer;border-radius:var(--r-sm);padding:4px 6px;transition:background var(--t-fast) var(--ease)}.pos-ticket li:hover{background:#ffffff0a}.pos-ticket li.line-ready{opacity:.6;background:#16a34a14}.pos-ticket li.line-ready .name{text-decoration:line-through}.pos-ticket li .line-check{color:var(--c-success, #16a34a);font-weight:700;margin-inline-start:6px}.pos-line .qty select.line-disc{background:transparent;border:1px solid var(--border);color:var(--text-muted);border-radius:var(--r-sm);height:22px;padding:0 6px;font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-mono)}.pos-line .line-mods{display:flex;flex-wrap:wrap;gap:4px;margin-top:4px}.pos-line .line-mods .mod-pill{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-pill);padding:2px 8px;font-size:var(--fs-xs);color:var(--text-muted);font-family:var(--font-mono);letter-spacing:var(--tracking-mono)}.pos-display-split{margin-top:var(--s-3);padding:var(--s-3);background:var(--surface-2);border-radius:var(--r-md);border:1px solid var(--border)}.pos-display-split .hint{color:var(--text-muted);font-size:var(--fs-sm);margin-bottom:var(--s-2)}.pos-display-split ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--s-2)}.pos-display-split li{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:var(--s-3);font-size:var(--fs-body)}.pos-display-split .guest{width:32px;height:32px;border-radius:var(--r-pill);background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;font-weight:600;font-size:var(--fs-sm)}.pos-display-split .method{color:var(--text-muted);text-transform:capitalize}.pos-display-split .amount{font-variant-numeric:tabular-nums;font-weight:500}.pos-display-tip{display:flex;flex-direction:column;gap:var(--s-2);padding:var(--s-3) 0 0;border-top:1px solid var(--border);margin-top:var(--s-3)}.pos-display-tip .hint{color:var(--text-muted);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-mono);text-transform:uppercase}.pos-display-tip .chips{display:flex;gap:var(--s-2);flex-wrap:wrap}.pos-display-tip .chip{flex:1;min-width:80px;display:flex;flex-direction:column;align-items:center;gap:2px;padding:var(--s-3) var(--s-3);border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2);color:var(--text);cursor:pointer;font-family:var(--font-ui)}.pos-display-tip .chip:hover{border-color:var(--border-strong)}.pos-display-tip .chip.active{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.pos-display-tip .chip .label{font-size:var(--fs-body-lg);font-weight:600}.pos-display-tip .chip .value{font-size:var(--fs-sm);font-variant-numeric:tabular-nums}.pos-floor-shell{display:grid;grid-template-columns:240px 1fr;height:100%;min-height:0;overflow:hidden}.pos-floor-tools{display:flex;flex-direction:column;gap:var(--s-2);padding:var(--s-4);border-inline-end:1px solid var(--border);background:var(--surface);overflow-y:auto}.pos-floor-canvas-wrap{overflow:auto;background:var(--bg);padding:var(--s-5);display:grid;place-items:start;position:relative}.pos-floor-badge{position:absolute;display:inline-flex;align-items:center;gap:4px;padding:2px 7px;border-radius:var(--r-pill, 999px);border:1px solid color-mix(in srgb,var(--accent, #f59e0b) 60%,var(--border));background:color-mix(in srgb,var(--accent, #f59e0b) 22%,var(--surface));color:var(--text);font-family:var(--font-mono, monospace);font-size:10px;font-weight:600;letter-spacing:.04em;cursor:pointer;z-index:2;transform:translate(0);white-space:nowrap;box-shadow:0 1px 3px #0000002e}.pos-floor-badge:hover{background:color-mix(in srgb,var(--accent, #f59e0b) 36%,var(--surface))}.pos-floor-badge.status-seated{background:color-mix(in srgb,var(--c-success, #16a34a) 24%,var(--surface));border-color:color-mix(in srgb,var(--c-success, #16a34a) 60%,var(--border));color:var(--c-success, #15803d)}.pos-floor-canvas{background:var(--surface);border-radius:var(--r-md);border:1px solid var(--border);cursor:crosshair;touch-action:none}.pos-floor-canvas.service{cursor:pointer}.pos-floor-bound-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.pos-floor-bound-list li{cursor:pointer;padding:var(--s-2) var(--s-3);border-radius:var(--r-sm);border:1px solid var(--border);transition:border-color var(--t-fast) var(--ease)}.pos-floor-bound-list li:hover{border-color:var(--border-strong)}.pos-floor-bound-list .head{font-weight:500;font-size:var(--fs-sm)}.pos-floor-bound-list .meta{font-size:var(--fs-xs);color:var(--text-muted);margin-top:2px}.pos-cart-bound{display:flex;align-items:center;gap:var(--s-2);flex-wrap:wrap}.pos-cart-bound .pos-btn.ghost{margin-inline-start:auto;padding:2px 8px}.pos-lock-overlay{position:fixed;inset:0;background:#000000db;backdrop-filter:blur(8px);display:grid;place-items:center;z-index:1000;padding:var(--s-4)}.pos-lock-shell{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-xl);padding:var(--s-7) var(--s-6) var(--s-6);width:min(440px,100%);max-height:calc(100dvh - 2 * var(--s-4) - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow-y:auto;scrollbar-gutter:stable;display:flex;flex-direction:column;align-items:center;gap:var(--s-4);text-align:center;box-shadow:0 30px 80px #00000073}.pos-lock-eyebrow{color:var(--text-subtle);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-mono);text-transform:uppercase}.pos-lock-title{margin:0;font-size:var(--fs-display-3);font-weight:600;letter-spacing:var(--tracking-tight)}.pos-lock-hint{margin:0;color:var(--text-muted);font-size:var(--fs-sm)}.pos-lock-error{margin:0;color:var(--c-danger, #f87171);font-size:var(--fs-sm);font-weight:500}.pos-lock-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:var(--s-3);width:100%}.pos-lock-op{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--s-4) var(--s-3);display:flex;flex-direction:column;align-items:center;gap:var(--s-2);cursor:pointer;color:var(--text);transition:background .12s ease,border-color .12s ease,transform .08s ease;-webkit-tap-highlight-color:transparent}.pos-lock-op:hover,.pos-lock-op:focus-visible{background:var(--surface-hover);border-color:var(--border-strong);outline:none}.pos-lock-op:active{transform:scale(.98)}.pos-lock-op .avatar{width:56px;height:56px;border-radius:var(--r-pill);background:var(--accent);color:var(--accent-ink);display:grid;place-items:center;font-weight:600;font-size:var(--fs-body-lg);letter-spacing:var(--tracking-tight)}.pos-lock-op .avatar.small{width:36px;height:36px;font-size:var(--fs-sm)}.pos-lock-op .name{font-size:var(--fs-body);font-weight:500}.pos-lock-op .role{font-family:var(--font-mono);font-size:var(--fs-mono);color:var(--text-subtle);letter-spacing:var(--tracking-mono);text-transform:uppercase}.pos-lock-who{display:flex;align-items:center;gap:var(--s-3)}.pos-lock-who .name{font-size:var(--fs-body);font-weight:500}.pos-lock-link{background:none;border:0;color:var(--text-muted);font-size:var(--fs-sm);cursor:pointer;padding:var(--s-1) var(--s-2);border-radius:var(--r-sm);transition:background .12s ease,color .12s ease}.pos-lock-link:hover,.pos-lock-link:focus-visible{background:var(--surface-hover);color:var(--text);outline:none}.pos-lock-dots{display:flex;gap:var(--s-3);align-items:center;justify-content:center;min-height:24px}.pos-lock-dots .dot{width:14px;height:14px;border-radius:var(--r-pill);background:transparent;border:2px solid var(--border-strong);transition:background .12s ease,border-color .12s ease,transform .12s ease}.pos-lock-dots .dot.filled{background:var(--text);border-color:var(--text);transform:scale(1.05)}@keyframes pos-lock-shake{0%,to{transform:translate(0)}20%{transform:translate(-8px)}40%{transform:translate(8px)}60%{transform:translate(-6px)}80%{transform:translate(4px)}}.pos-lock-dots.shake{animation:pos-lock-shake .36s ease-in-out}.pos-lock-keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s-3);width:100%;max-width:360px}.pos-lock-key{background:var(--surface-2);border:1px solid var(--border);color:var(--text);border-radius:var(--r-md);font-size:var(--fs-display-3);font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:var(--tracking-tight);height:72px;cursor:pointer;transition:background .12s ease,border-color .12s ease,transform .08s ease;-webkit-tap-highlight-color:transparent;user-select:none}.pos-lock-key:hover:not([disabled]),.pos-lock-key:focus-visible{background:var(--surface-hover);border-color:var(--border-strong);outline:none}.pos-lock-key:active:not([disabled]){transform:scale(.96)}.pos-lock-key[disabled]{opacity:.45;cursor:not-allowed}.pos-lock-key.util{font-size:var(--fs-body);font-weight:500;color:var(--text-muted);letter-spacing:0}.pos-audit-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--s-2);max-height:400px;overflow-y:auto}.pos-audit-list li{border:1px solid var(--border);border-radius:var(--r-sm);padding:var(--s-2) var(--s-3);display:flex;flex-direction:column;gap:4px}.pos-audit-list .meta{display:flex;align-items:center;gap:var(--s-2);font-size:var(--fs-xs);color:var(--text-muted)}.pos-audit-list .ts{font-family:var(--font-mono);letter-spacing:var(--tracking-mono)}.pos-audit-list .msg{font-size:var(--fs-sm)}.pos-audit-list .data{display:flex;flex-wrap:wrap;gap:var(--s-2);font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-subtle);letter-spacing:var(--tracking-mono)}.pos-audit-list .kv{white-space:nowrap}.pos-line .line-note{margin-top:4px;font-size:var(--fs-xs);color:var(--text-muted);font-style:italic}.pos-history-table tr.out td{color:var(--text-subtle)}.pos-history-table tr.out td:first-child:after{content:" · OUT";color:var(--text);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-mono)}.pos-tab-edit{background:transparent;border:none;outline:none;color:var(--text);font:inherit;font-size:var(--fs-sm);width:90px;padding:0}.pos-checkbox.compact{font-size:var(--fs-sm);gap:var(--s-2)}.pos-refund-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--s-2);max-height:320px;overflow-y:auto}.pos-refund-list li{border:1px solid var(--border);border-radius:var(--r-md);padding:var(--s-2) var(--s-3)}.pos-refund-list .name{font-weight:500;display:block}.pos-refund-list .meta{font-size:var(--fs-xs);color:var(--text-muted);font-family:var(--font-mono);letter-spacing:var(--tracking-mono)}.pos-eod-chart{width:100%;height:140px;display:block;color:var(--accent)}.pos-toaster{position:fixed;top:var(--s-3);inset-inline-end:var(--s-3);display:flex;flex-direction:column;gap:var(--s-2);z-index:200;max-width:min(360px,calc(100vw - 24px))}.pos-toast{display:flex;align-items:flex-start;gap:var(--s-2);padding:10px 12px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);font-size:var(--fs-sm);color:var(--text)}.pos-toast .msg{flex:1}.pos-toast .dismiss{background:transparent;border:none;color:var(--text-subtle);cursor:pointer;font-size:var(--fs-body-lg);line-height:1;padding:0 4px}.pos-toast .dismiss:hover{color:var(--text)}.pos-toast-warn,.pos-toast-error,.pos-toast-success{border-color:var(--border-strong)}.pos-toast-warn .msg:before{content:"⚠ ";color:var(--text)}.pos-toast-error .msg:before{content:"⊘ ";color:var(--text)}.pos-toast-success .msg:before{content:"✓ ";color:var(--text)}.pos-cust-history{display:flex;flex-direction:column;gap:4px;padding:var(--s-2) 0 0}.pos-cust-history .heading{color:var(--text-muted);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-mono);text-transform:uppercase}.pos-cust-history ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}.pos-cust-history li{display:grid;grid-template-columns:auto 1fr auto auto;gap:var(--s-2);padding:4px 0;font-size:var(--fs-xs);color:var(--text-muted);cursor:pointer;border-bottom:1px dashed var(--border)}.pos-cust-history li:hover{color:var(--text)}.pos-cust-history li:last-child{border-bottom:none}.pos-cust-history .mono{font-family:var(--font-mono)}.pos-cust-history .total{font-variant-numeric:tabular-nums}.pos-line .qty .line-disc{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-mono);background:transparent;border:1px solid var(--border);color:var(--text-muted);border-radius:var(--r-sm);height:22px;padding:0 6px;cursor:pointer}.pos-line .qty .line-disc:hover{border-color:var(--border-strong);color:var(--text)}.pos-line .total .strike{display:block;color:var(--text-subtle);text-decoration:line-through;font-size:var(--fs-xs);font-weight:400}.pos-topbar .pos-btn.ghost.active{background:color-mix(in oklab,var(--accent) 14%,transparent);border-color:color-mix(in oklab,var(--accent) 50%,var(--border));color:var(--text)}.pos-shift-z{display:flex;flex-direction:column;gap:4px;padding:var(--s-2) 0;border-bottom:1px solid var(--border)}.pos-shift-section{display:flex;flex-direction:column;gap:var(--s-2);padding:var(--s-3) 0;border-bottom:1px solid var(--border)}.pos-shift-section:last-child{border-bottom:none}.pos-drop-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.pos-drop-list li{display:grid;grid-template-columns:auto auto 1fr;gap:var(--s-2);align-items:center;font-size:var(--fs-xs)}.pos-drop-list .amount{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.pos-pill.in{color:var(--text);border-color:var(--border-strong)}.pos-pill.out{color:var(--text-muted)}.pos-history-filters{display:grid;grid-template-columns:1fr auto auto auto auto;gap:var(--s-2);margin-bottom:var(--s-3)}.pos-history-meta{color:var(--text-subtle);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-mono);text-transform:uppercase;margin-bottom:var(--s-2)}.pos-favorites{display:flex;gap:var(--s-2);padding:var(--s-3) var(--s-4) 0;overflow-x:auto}.pos-fav-key{display:flex;align-items:center;gap:var(--s-2);padding:6px 10px 6px 6px;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);color:var(--text);cursor:pointer;text-align:start;min-width:160px;flex-shrink:0;transition:border-color var(--t-fast) var(--ease)}.pos-fav-key:hover{border-color:var(--border-strong)}.pos-fav-key .pos-img-sm{width:36px;height:36px}.pos-fav-key .info{display:flex;flex-direction:column;gap:2px}.pos-fav-key .name{font-size:var(--fs-sm);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:140px}.pos-fav-key .price{font-size:var(--fs-xs);color:var(--accent);font-variant-numeric:tabular-nums}.pos-img-btn.active{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.pos-quick-amounts{display:flex;flex-wrap:wrap;gap:4px}.pos-quick-amounts .pos-chip{font-variant-numeric:tabular-nums;font-family:var(--font-mono);font-size:var(--fs-xs)}.pos-receipt-qr-row{display:flex;gap:var(--s-3);align-items:center;padding:var(--s-3) 0;border-top:1px solid var(--border)}.pos-qr{background:#fff;padding:8px;border-radius:var(--r-sm);border:1px solid var(--border);display:grid;place-items:center}.pos-qr-placeholder{width:144px;height:144px;background:var(--surface-2)}.pos-receipt-qr-meta{display:flex;flex-direction:column;gap:var(--s-1)}.pos-receipt-qr-meta .hint{color:var(--text-muted);font-size:var(--fs-sm)}.pos-receipt-qr-meta .mono{font-family:var(--font-mono);font-size:var(--fs-sm);letter-spacing:var(--tracking-mono)}.pos-receipt-status{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--s-2) var(--s-3);font-size:var(--fs-sm);color:var(--text-muted)}.pos-tabs{display:flex;align-items:stretch;gap:4px;padding:var(--s-2) var(--s-4) 0;background:var(--surface);border-bottom:1px solid var(--border)}.pos-tab{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid var(--border);border-bottom:none;border-radius:var(--r-sm) var(--r-sm) 0 0;background:var(--surface-2);color:var(--text-muted);cursor:pointer;font-size:var(--fs-sm);transition:border-color var(--t-fast) var(--ease),color var(--t-fast) var(--ease)}.pos-tab:hover{border-color:var(--border-strong)}.pos-tab.active{background:var(--bg);border-color:var(--border-strong);color:var(--text)}.pos-tab .label{font-family:var(--font-ui)}.pos-tab-close{width:18px;height:18px;border:none;background:transparent;color:var(--text-subtle);cursor:pointer;border-radius:var(--r-sm);display:grid;place-items:center;font-size:var(--fs-sm)}.pos-tab-close:hover{color:var(--text);background:var(--surface-hover)}.pos-tab-add{background:transparent;border:1px dashed var(--border);color:var(--text-muted);border-radius:var(--r-sm);padding:0 12px;cursor:pointer;margin-bottom:-1px;font-size:var(--fs-body-lg);align-self:stretch}.pos-tab-add:hover:not([disabled]){border-color:var(--border-strong);color:var(--text)}.pos-tab-add[disabled]{opacity:.4;cursor:not-allowed}.pos-checkbox{display:flex;align-items:center;gap:var(--s-2);cursor:pointer;user-select:none}.pos-checkbox input{width:16px;height:16px;accent-color:var(--accent)}.pos-pill{display:inline-block;padding:2px 8px;border-radius:var(--r-pill);border:1px solid var(--border);font-size:var(--fs-xs);color:var(--text-muted);font-family:var(--font-mono);letter-spacing:var(--tracking-mono);text-transform:uppercase}.pos-pill.cancelled{color:var(--text-subtle)}.pos-pill.warn{color:var(--danger, #c00);border-color:var(--danger, #c00)}.pos-display{height:100dvh;display:grid;grid-template-rows:auto 1fr auto;background:var(--bg)}.pos-display-header{display:flex;align-items:baseline;justify-content:space-between;padding:var(--s-5) var(--s-6) var(--s-3);border-bottom:1px solid var(--border)}.pos-display-header .brand{font-size:var(--fs-display-2);font-weight:600;letter-spacing:var(--tracking-tight)}.pos-display-header .role{color:var(--text-subtle);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-mono);text-transform:uppercase}.pos-display-empty{display:grid;place-content:center;text-align:center;gap:var(--s-3);padding:var(--s-9)}.pos-display-empty .big{font-size:var(--fs-display-1);font-weight:600;letter-spacing:var(--tracking-display)}.pos-display-empty .small{color:var(--text-muted);font-size:var(--fs-body-lg)}.pos-display-list{list-style:none;margin:0;padding:var(--s-4) var(--s-6);overflow-y:auto;display:flex;flex-direction:column;gap:var(--s-3)}.pos-display-row{display:grid;grid-template-columns:56px 1fr auto;align-items:center;gap:var(--s-4);padding:var(--s-3) 0;border-bottom:1px solid var(--border);font-size:var(--fs-body-lg)}.pos-display-row:last-child{border-bottom:none}.pos-display-row .pos-img-sm{width:56px;height:56px}.pos-display-row .info .name{font-weight:500}.pos-display-row .info .qty{color:var(--text-muted);font-family:var(--font-mono);font-size:var(--fs-body);letter-spacing:var(--tracking-mono);margin-top:2px}.pos-display-row .total{font-variant-numeric:tabular-nums;font-size:var(--fs-display-3)}.pos-display-totals{padding:var(--s-4) var(--s-6) var(--s-6);border-top:1px solid var(--border-strong);background:var(--surface)}.pos-display-totals-row{display:flex;justify-content:space-between;font-size:var(--fs-body-lg);color:var(--text-muted);padding:4px 0;font-variant-numeric:tabular-nums}.pos-display-totals .grand{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid var(--border);padding-top:var(--s-3);margin-top:var(--s-2);font-size:var(--fs-display-2);font-weight:600}.pos-display-totals .grand .amount{font-variant-numeric:tabular-nums}.pos-display-totals .pay{margin-top:var(--s-2);text-align:end;color:var(--text-subtle);font-family:var(--font-mono);font-size:var(--fs-sm);letter-spacing:var(--tracking-mono);text-transform:uppercase}.pos-img{position:relative;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm);overflow:hidden;display:grid;place-items:center;flex-shrink:0}.pos-img img{width:100%;height:100%;object-fit:cover;display:block}.pos-img-fallback{font-family:var(--font-ui);font-weight:600;color:var(--text-muted);font-size:var(--fs-display-3);letter-spacing:var(--tracking-tight)}.pos-img-sm{width:40px;height:40px}.pos-img-sm .pos-img-fallback{font-size:var(--fs-body-lg)}.pos-img-md{width:100%;aspect-ratio:4 / 3;border-radius:var(--r-sm)}.pos-img-lg{width:100%;aspect-ratio:1 / 1;border-radius:var(--r-md)}.pos-card-img-actions{position:absolute;top:var(--s-2);inset-inline-end:var(--s-2);display:flex;gap:4px;opacity:0;transition:opacity var(--t-fast) var(--ease)}.pos-card:hover .pos-card-img-actions,.pos-card:focus-within .pos-card-img-actions{opacity:1}.pos-tile-chips{display:flex;flex-wrap:wrap;gap:4px;margin-top:var(--s-1)}.pos-tile-chip{border:1px solid var(--border);border-radius:var(--r-pill, 999px);background:var(--surface);color:var(--text);font-size:var(--fs-caption, 11px);line-height:1;padding:4px 8px;min-height:24px;cursor:pointer;transition:background var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease)}.pos-tile-chip:hover,.pos-tile-chip:focus-visible{background:var(--surface-2, var(--surface));border-color:var(--accent)}@media (pointer: coarse){.pos-tile-chip{min-height:32px;padding:6px 10px}}.pos-img-btn{width:24px;height:24px;border-radius:var(--r-sm);background:var(--surface);border:1px solid var(--border);color:var(--text);cursor:pointer;display:grid;place-items:center;font-size:var(--fs-sm);line-height:1}.pos-img-btn:hover{border-color:var(--border-strong)}.pos-img-busy{font-size:var(--fs-xs);color:var(--text-muted);font-family:var(--font-mono);letter-spacing:var(--tracking-mono);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-sm);padding:2px 6px}.pos-eod{overflow-y:auto;padding:var(--s-5);display:flex;flex-direction:column;gap:var(--s-5)}.pos-eod-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(clamp(150px,24vw,180px),1fr));gap:var(--s-3);container-type:inline-size}.pos-stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--s-4);display:flex;flex-direction:column;gap:var(--s-1)}.pos-stat.highlight{background:var(--surface-2);border-color:var(--border-strong)}.pos-stat .label{color:var(--text-muted);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-mono);text-transform:uppercase}.pos-stat .value{font-size:var(--fs-display-3);font-weight:600;font-variant-numeric:tabular-nums}.pos-eod-section{display:flex;flex-direction:column;gap:var(--s-3)}.pos-eod-heading{color:var(--text-muted);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-mono);text-transform:uppercase}@media print{.pos-cart,.pos-topbar,.pos-search,.pos-cat-bar,.pos-favorites,.pos-tabs,.pos-receipt-actions,.pos-receipt-status{display:none!important}.pos-receipt-card{border:none;padding:0}}.pos-view-switch{display:inline-flex;border:1px solid var(--border);border-radius:var(--r-pill, 999px);background:var(--surface-2);padding:2px}.pos-view-btn{padding:4px 12px;border-radius:var(--r-pill, 999px);border:1px solid transparent;background:transparent;color:var(--text-muted);cursor:pointer;font-family:var(--font-mono, monospace);font-size:var(--fs-mono, 11px);letter-spacing:.06em;text-transform:uppercase;transition:background var(--t-fast, .16s) var(--ease),color var(--t-fast, .16s) var(--ease)}.pos-view-btn:hover{color:var(--text)}.pos-view-btn.is-active{background:var(--surface);color:var(--text);border-color:var(--border)}.pos-resmonth{padding:var(--s-5);display:flex;flex-direction:column;gap:var(--s-3)}.pos-resmonth-head{display:flex;align-items:center;gap:var(--s-2)}.pos-resmonth-label{flex:1;text-align:center;font-weight:600;font-size:var(--fs-body-lg, 17px);letter-spacing:var(--tracking-tight, -.01em)}.pos-resmonth-dow{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.pos-resmonth-dow>div{text-align:center;font-family:var(--font-mono, monospace);font-size:var(--fs-mono, 11px);color:var(--text-subtle);letter-spacing:.12em;text-transform:uppercase;padding:4px 0}.pos-resmonth-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.pos-resmonth-cell{min-height:92px;border:1px solid var(--border);border-radius:var(--r-md, 12px);background:var(--surface);padding:4px;display:flex;flex-direction:column;gap:3px;overflow:hidden;position:relative}.pos-resmonth-cell.is-other{background:var(--surface-2);opacity:.55}.pos-resmonth-cell.is-today{border-color:var(--accent, #f59e0b)}.pos-resmonth-num{font-family:var(--font-mono, monospace);font-size:var(--fs-mono, 11px);color:var(--text-muted);font-variant-numeric:tabular-nums;margin-bottom:2px}.pos-resmonth-cell.is-today .pos-resmonth-num{color:var(--accent, #f59e0b);font-weight:600}.pos-resmonth-chip{display:flex;align-items:center;gap:4px;padding:2px 6px;border-radius:var(--r-sm, 8px);border:1px solid color-mix(in srgb,var(--accent, #f59e0b) 50%,var(--border));background:color-mix(in srgb,var(--accent, #f59e0b) 18%,var(--surface));color:var(--text);font-size:11px;text-align:start;cursor:pointer;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:var(--font-ui, inherit)}.pos-resmonth-chip:hover{background:color-mix(in srgb,var(--accent, #f59e0b) 28%,var(--surface))}.pos-resmonth-chip .time{font-family:var(--font-mono, monospace);font-weight:600}.pos-resmonth-chip .name{overflow:hidden;text-overflow:ellipsis}.pos-resmonth-chip.status-seated{background:color-mix(in srgb,var(--c-success, #16a34a) 18%,var(--surface));border-color:color-mix(in srgb,var(--c-success, #16a34a) 50%,var(--border));color:var(--c-success, #15803d)}.pos-resmonth-chip.status-completed{opacity:.55;text-decoration:line-through}.pos-resmonth-chip.status-cancelled{opacity:.45;text-decoration:line-through}.pos-resmonth-chip.status-no_show{opacity:.55}.pos-resmonth-more{border:none;background:transparent;color:var(--text-muted);font-family:var(--font-mono, monospace);font-size:10px;text-align:start;cursor:pointer;padding:0 4px}.pos-resmonth-more:hover{color:var(--text)}.pos-resstatus{margin:var(--s-3) 0 var(--s-2);padding:var(--s-3);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md, 12px);display:flex;flex-direction:column;gap:var(--s-2)}.pos-resstatus-label{display:flex;align-items:center;gap:var(--s-2);font-family:var(--font-mono, monospace);font-size:var(--fs-mono, 11px);letter-spacing:.06em;text-transform:uppercase}.pos-resstatus-label span{color:var(--text-subtle)}.pos-resstatus-label strong{color:var(--text);font-weight:600}.pos-resstatus-label strong.status-seated{color:var(--c-success, #16a34a)}.pos-resstatus-label strong.status-no_show,.pos-resstatus-label strong.status-cancelled{color:var(--error, #b91c1c)}.pos-resstatus-actions{display:flex;flex-wrap:wrap;gap:var(--s-2)}.auth-shell{min-height:100dvh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden}.auth-bg-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:0}.auth-card{position:relative;z-index:1;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);padding:var(--s-7);width:100%;max-width:400px;animation:lumen-fade-up var(--t-slow) var(--ease) both}.auth-brand{width:48px;height:48px;margin:0 auto var(--s-5);color:var(--text)}.auth-brand svg{width:100%;height:100%}.auth-title{font-family:var(--font-display);font-weight:var(--weight-light);font-size:var(--fs-display-3);letter-spacing:var(--tracking-display);text-align:center;margin:0 0 var(--s-2)}.auth-sub{text-align:center;color:var(--text-muted);font-size:var(--fs-sm);margin:0 0 var(--s-5)}.auth-form{display:flex;flex-direction:column;gap:var(--s-3)}.auth-footer{text-align:center;margin-top:var(--s-5);color:var(--text-muted);font-size:var(--fs-xs)}.auth-link{color:var(--chromatic);font-weight:var(--weight-medium);text-decoration:none}.auth-link:hover{text-decoration:underline}@keyframes lumen-fade-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.pos-outbox-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--s-2)}.pos-outbox-list li{border:1px solid var(--border);border-radius:var(--r-md);padding:var(--s-3);display:flex;flex-direction:column;gap:var(--s-2)}.pos-outbox-list li.has-error{border-color:var(--danger, #c00)}.pos-outbox-meta{display:flex;flex-wrap:wrap;gap:var(--s-2);align-items:center;font-size:var(--fs-sm)}.pos-outbox-meta .kind{font-weight:600}.pos-outbox-meta .path{font-family:var(--font-mono);color:var(--text-muted);font-size:var(--fs-xs)}.pos-outbox-meta .time,.pos-outbox-meta .attempts{color:var(--text-muted);font-size:var(--fs-xs)}.pos-outbox-error{color:var(--danger, #c00);font-size:var(--fs-sm);font-family:var(--font-mono)}.pos-outbox-actions{display:flex;justify-content:flex-end}.pos-resstats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--s-3);margin-bottom:var(--s-4)}.pos-resstat{border:1px solid var(--border);border-radius:var(--r-md);padding:var(--s-3) var(--s-4);display:flex;flex-direction:column;gap:2px}.pos-resstat .label{color:var(--text-muted);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:var(--tracking-mono)}.pos-resstat .value{font-size:var(--fs-display-3);font-weight:600;font-variant-numeric:tabular-nums}.pos-resstat .sub{color:var(--text-muted);font-size:var(--fs-xs)}.pos-history-pager{display:flex;align-items:center;gap:var(--s-2);padding:var(--s-3) 0;flex-wrap:wrap}.pos-history-pager-status{color:var(--text-muted);font-size:var(--fs-sm);font-variant-numeric:tabular-nums;margin:0 var(--s-2)}.pos-btn:focus-visible,.pos-chip:focus-visible,.pos-pill:focus-visible,.pos-input:focus-visible{outline:2px solid var(--accent, #4f46e5);outline-offset:2px}@media (prefers-reduced-motion: reduce){.pos-toast{animation:none!important;transition:opacity .12s ease}.pos-toast-enter,.pos-toast-leave{transform:none!important}}.pos-skip-link{position:absolute;inset-inline-start:var(--s-3);inset-block-start:var(--s-3);z-index:10;padding:var(--s-2) var(--s-3);background:var(--surface, #fff);color:var(--text, #111);border:1px solid var(--border, #ccc);border-radius:var(--r-pill, 999px);text-decoration:none;font-size:var(--fs-sm, 14px);transform:translateY(-200%);transition:transform .16s ease}.pos-skip-link:focus,.pos-skip-link:focus-visible{transform:translateY(0);outline:2px solid var(--accent, #4f46e5);outline-offset:2px}.pos-floor-badge-wrap{position:absolute;display:inline-flex;flex-direction:column;gap:2px;align-items:flex-start;pointer-events:none}.pos-floor-badge-wrap>.pos-floor-badge{pointer-events:auto}.pos-floor-badge-action{pointer-events:auto;font-size:11px;padding:2px 8px;border-radius:var(--r-pill, 999px);background:var(--danger-soft, rgba(220, 38, 38, .12));color:var(--danger, #c00);border:1px solid var(--danger, #c00);cursor:pointer}.pos-floor-badge.overdue{background:var(--danger-soft, rgba(220, 38, 38, .18));color:var(--danger, #c00);border-color:var(--danger, #c00);animation:pos-overdue-pulse 1.6s ease-in-out infinite}@keyframes pos-overdue-pulse{0%,to{box-shadow:0 0 #dc262600}50%{box-shadow:0 0 0 4px #dc262633}}@media (prefers-reduced-motion: reduce){.pos-floor-badge.overdue{animation:none}}.pos-ticket.sla-stale{border-color:var(--danger, #c00);background:var(--danger-soft, rgba(220, 38, 38, .1));animation:pos-overdue-pulse 2s ease-in-out infinite}.pos-held-stale{margin-block-start:4px;display:flex;flex-wrap:wrap;gap:4px;align-items:center}.pos-held-stale-line{font-size:11px;color:var(--text-muted, #666)}.pos-outbox-dead-h{margin:var(--s-3) 0 var(--s-2);font-size:var(--fs-sm, 14px);color:var(--text-muted, #666)}.pos-outbox-meta .age{color:var(--text-muted, #888);font-variant-numeric:tabular-nums}.pos-cust-divider{font-size:11px;color:var(--text-muted, #888);text-transform:uppercase;letter-spacing:.04em;padding:4px 8px;pointer-events:none}.pos-receipt-skeleton{display:flex;flex-direction:column;gap:8px}.pos-skeleton-line{height:14px;width:100%;border-radius:var(--r-sm, 8px);background:linear-gradient(90deg,var(--surface-2, rgba(0, 0, 0, .06)) 0%,var(--surface-hover, rgba(0, 0, 0, .12)) 50%,var(--surface-2, rgba(0, 0, 0, .06)) 100%);background-size:200% 100%;animation:pos-skeleton-shimmer 1.4s ease-in-out infinite}@keyframes pos-skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion: reduce){.pos-skeleton-line{animation:none;background:var(--surface-2, rgba(0, 0, 0, .08))}}.pos-ticket-note{margin:4px 0 8px;padding:6px 10px;border-radius:var(--r-sm, 8px);background:var(--warn-soft, rgba(234, 179, 8, .16));color:var(--warn, #92400e);font-size:12px;font-weight:600;border:1px solid var(--warn, #ca8a04)}.topbar-conn-status{position:relative;display:inline-flex;align-items:center;justify-content:center;outline:none}.topbar-conn-status .pos-status-dot{cursor:help;padding:2px}.topbar-conn-popover{position:absolute;top:calc(100% + 6px);inset-inline-start:0;transform:translateY(-4px);z-index:60;min-width:200px;padding:var(--s-2) var(--s-3);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:var(--shadow-sm, 0 2px 8px rgba(0,0,0,.12));color:var(--text);font-size:var(--fs-xs);line-height:var(--lh-snug);display:flex;flex-direction:column;gap:2px;opacity:0;pointer-events:none;transition:opacity var(--t-fast) var(--ease),transform var(--t-fast) var(--ease)}.topbar-conn-status:hover .topbar-conn-popover,.topbar-conn-status:focus-visible .topbar-conn-popover,.topbar-conn-status:focus-within .topbar-conn-popover{opacity:1;transform:translateY(0);pointer-events:auto}.topbar-conn-popover__row{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s-3)}.topbar-conn-popover__label{color:var(--text-muted);text-transform:uppercase;font-size:10px;letter-spacing:.04em}.topbar-conn-popover__value{color:var(--text)}.topbar-conn-popover__state{text-transform:capitalize}.topbar-conn-popover__state--online{color:var(--success, #16a34a)}.topbar-conn-popover__state--degraded{color:var(--warning, #d97706)}.topbar-conn-popover__state--offline{color:var(--danger, #dc2626)}@media (prefers-reduced-motion: reduce){.topbar-conn-popover{transition:none}}.sidebar-idle-badge{margin:6px auto 0;font-size:11px;padding:2px 8px;border-radius:var(--r-pill, 999px);background:var(--warn-soft, rgba(234, 179, 8, .16));color:var(--warn, #92400e);border:1px solid var(--warn, #ca8a04);white-space:nowrap;cursor:default}.pos-cust-tags{display:flex;flex-wrap:wrap;gap:4px;margin:4px 0}.pos-cust-tags .pos-pill{display:inline-flex;align-items:center;gap:4px;font-size:11px;padding:2px 8px}.pos-cust-tags .pos-pill.ghost{background:transparent;color:var(--text-muted, #888);border-style:dashed;cursor:pointer}.pos-pill-x{background:transparent;border:none;color:inherit;cursor:pointer;font-size:12px;padding:0 2px;line-height:1}.pos-shortcuts{width:100%;border-collapse:collapse;font-size:var(--fs-sm, 14px)}.pos-shortcuts th{text-align:start;font-family:var(--font-mono, ui-monospace, monospace);font-weight:600;padding:6px 12px 6px 0;color:var(--text-muted, #666);white-space:nowrap;width:1%}.pos-shortcuts td{padding:6px 0}.pos-audit-json{margin:6px 0 0;padding:8px 10px;border-radius:var(--r-sm, 8px);background:var(--surface-2, rgba(0, 0, 0, .04));font-size:11px;font-family:var(--font-mono, ui-monospace, monospace);white-space:pre-wrap;word-break:break-word;max-height:240px;overflow:auto}.pos-display-stale{position:fixed;inset-inline:0;inset-block-start:0;z-index:50;padding:6px 12px;text-align:center;background:var(--warn, #ca8a04);color:#fff;font-size:13px;font-weight:600;letter-spacing:.04em}.pos-birthday-banner{margin:6px 0;padding:8px 12px;border-radius:var(--r-md, 12px);background:linear-gradient(90deg,var(--accent, #4f46e5),var(--ok, #16a34a));color:#fff;font-weight:600;text-align:center}.pos-logo-thermal{margin-block-start:6px;display:flex;flex-direction:column;gap:4px}.pos-logo-thermal-hint{font-size:10px;color:var(--text-muted, #888);font-family:var(--font-mono, ui-monospace, monospace)}.pos-logo-thermal-page{background:#fff;padding:8px;border:1px dashed var(--border, #ccc);display:inline-flex;justify-content:center}.pos-logo-thermal-page img{max-width:100%;filter:grayscale(1) contrast(1.4);image-rendering:pixelated}.pos-onboarding-steps{display:flex;gap:8px;flex-wrap:wrap;margin-block-end:var(--s-3);padding-block-end:var(--s-2);border-block-end:1px solid var(--border, #ddd);font-size:11px;color:var(--text-muted, #888);font-family:var(--font-mono, ui-monospace, monospace);text-transform:uppercase;letter-spacing:.04em}.pos-onboarding-steps .step.active{color:var(--accent, #4f46e5);font-weight:600}html[data-density=compact] .pos-input{padding:6px 8px}html[data-density=compact] .pos-btn{padding:6px 12px}html[data-density=compact] .pos-fieldset{padding:var(--s-2) var(--s-3)}html[data-density=compact] .pos-cart-line{padding:6px 8px}html[data-density=compact] .pos-product-card{padding:8px}html[data-density=compact] .pos-toast{padding:8px 12px}.pos-skeleton{background:linear-gradient(90deg,var(--surface-2) 0%,var(--surface) 50%,var(--surface-2) 100%);background-size:200% 100%;border-radius:var(--r-md);animation:posSkeletonPulse 1.4s ease-in-out infinite;border:1px solid var(--border)}.pos-skeleton-row{height:36px;margin:6px 0}.pos-skeleton-card{height:110px}.pos-skeleton-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:var(--s-3);padding:var(--s-3)}@keyframes posSkeletonPulse{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion: reduce){.pos-skeleton{animation:none}}.pos-cart-empty{display:grid;place-items:center;text-align:center;padding:var(--s-5) var(--s-4);color:var(--text-muted);gap:var(--s-2)}.pos-cart-empty .icon{width:40px;height:40px;display:grid;place-items:center;color:var(--text-subtle);opacity:.85;line-height:1}.pos-cart-empty .icon svg{width:32px;height:32px}.pos-cart-empty .title{font-weight:600;color:var(--text)}.pos-cart-empty .hint{font-size:var(--fs-sm);max-width:22ch}.pos-scan-ready{position:relative}.pos-scan-ready:after{content:"";position:absolute;right:10px;top:50%;width:8px;height:8px;border-radius:50%;transform:translateY(-50%);background:var(--accent);box-shadow:0 0 0 0 var(--accent);animation:posScanPulse 1.6s ease-out infinite;pointer-events:none}@keyframes posScanPulse{0%{box-shadow:0 0 color-mix(in srgb,var(--accent) 60%,transparent)}70%{box-shadow:0 0 0 12px color-mix(in srgb,var(--accent) 0%,transparent)}to{box-shadow:0 0 color-mix(in srgb,var(--accent) 0%,transparent)}}@media (prefers-reduced-motion: reduce){.pos-scan-ready:after{animation:none}}.pos-errboundary{display:grid;place-items:center;height:100dvh;padding:var(--s-5);text-align:center;gap:var(--s-3);color:var(--text);background:var(--bg)}.pos-errboundary .pos-errboundary-card{max-width:520px;display:grid;gap:var(--s-2);padding:var(--s-4);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg)}.pos-errboundary .pos-errboundary-msg{color:var(--text-muted);font-size:var(--fs-sm);white-space:pre-wrap;word-break:break-word;text-align:left;background:var(--surface-2);padding:var(--s-2) var(--s-3);border-radius:var(--r-md)}.pos-toast .pos-toast-action{margin-inline-start:var(--s-2);background:transparent;border:1px solid currentColor;color:inherit;border-radius:var(--r-sm);padding:2px 8px;cursor:pointer;font-weight:600;font-size:var(--fs-sm)}.pos-toast .pos-toast-action:hover{opacity:.85}.pos-toast .pos-toast-count{margin-inline-start:var(--s-2);padding:0 .5em;border-radius:999px;background:#00000026;font-size:var(--fs-sm);font-weight:600;font-variant-numeric:tabular-nums;line-height:1.6}:root{--lh-tight: 1.05;--lh-snug: 1.25;--lh-normal: 1.5;--lh-loose: 1.75;--tracking-wide: .04em;--c-success: #16a34a;--c-success-soft: rgba(22,163,74,.14);--c-danger: #dc2626;--c-danger-soft: rgba(220,38,38,.14);--c-warn: #d97706;--c-warn-soft: rgba(217,119,6,.14);--c-info: #2563eb;--c-info-soft: rgba(37,99,235,.14);--c-neutral: var(--text-muted)}[data-theme=dark]{--c-success: #22c55e;--c-danger: #f87171;--c-warn: #fbbf24;--c-info: #60a5fa}:root{--hit-sm: 40px}.pos-btn{min-height:var(--hit-md, 40px)}.pos-chip{min-height:var(--hit-sm, 40px)}.nav-circle,.pos-img-btn,.pos-pill-x{min-width:var(--hit-md, 40px);min-height:var(--hit-md, 40px)}html[data-density=compact] .pos-btn{min-height:36px}html[data-density=compact] .pos-chip{min-height:32px}html[data-density=compact] .nav-circle,html[data-density=compact] .pos-img-btn,html[data-density=compact] .pos-pill-x{min-width:32px;min-height:32px}.pos-pill{line-height:var(--lh-snug)}.pos-pill.success{color:var(--c-success);border-color:color-mix(in srgb,var(--c-success) 50%,transparent);background:var(--c-success-soft)}.pos-pill.error,.pos-pill.cancelled{color:var(--c-danger);border-color:color-mix(in srgb,var(--c-danger) 50%,transparent);background:var(--c-danger-soft)}.pos-pill.warn{color:var(--c-warn);border-color:color-mix(in srgb,var(--c-warn) 50%,transparent);background:var(--c-warn-soft)}.pos-pill.info{color:var(--c-info);border-color:color-mix(in srgb,var(--c-info) 50%,transparent);background:var(--c-info-soft)}.pos-pill.neutral{color:var(--text-muted);border-color:var(--border)}.pos-pill.out{color:var(--c-warn);border-color:color-mix(in srgb,var(--c-warn) 60%,transparent);background:var(--c-warn-soft);font-weight:600}.pos-modal{width:min(440px,92vw)}.pos-modal--sm{width:min(320px,92vw)}.pos-modal--md{width:min(440px,92vw)}.pos-modal--lg{width:min(640px,94vw)}.pos-modal--full{width:min(960px,95vw);height:min(80dvh,720px)}@media (max-width: 480px){.pos-modal-backdrop{align-items:end}.pos-modal,.pos-modal--sm,.pos-modal--md,.pos-modal--lg,.pos-modal--full{width:100vw;max-width:100vw;height:auto;max-height:calc(100dvh - env(safe-area-inset-top));border-radius:var(--r-xl) var(--r-xl) 0 0;margin:0;padding-bottom:env(safe-area-inset-bottom)}.pos-modal:before{content:"";display:block;width:40px;height:4px;background:var(--border-strong);border-radius:999px;margin:var(--s-2) auto var(--s-1);flex-shrink:0}@media (prefers-reduced-motion: no-preference){@keyframes pos-modal-in{0%{opacity:0;transform:translateY(8%)}to{opacity:1;transform:translateY(0)}}}}.pos-modal-backdrop{animation:pos-modal-backdrop-in var(--t-fast) var(--ease) both}.pos-modal{animation:pos-modal-in var(--t-base) var(--ease) both}@keyframes pos-modal-backdrop-in{0%{background:#0000}to{background:#00000080}}@keyframes pos-modal-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.pos-modal-header{position:sticky;top:0;z-index:1;background:var(--surface)}.pos-modal-footer{position:sticky;bottom:0;z-index:1;background:var(--surface);box-shadow:0 -1px 0 var(--border)}.pos-modal-close{width:var(--hit-md, 40px);height:var(--hit-md, 40px);padding:0;font-size:18px;line-height:1}.pos-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--s-2);line-height:var(--lh-snug)}.pos-empty--compact{padding:var(--s-3) var(--s-3)}.pos-empty-icon{font-size:32px;line-height:1;opacity:.6}.pos-empty-title{font-weight:500;color:var(--text);font-size:var(--fs-md);letter-spacing:var(--tracking-tight)}.pos-empty-body{color:var(--text-muted);font-size:var(--fs-sm);max-width:32ch}.pos-empty .pos-btn{margin-top:var(--s-2)}.pos-toast{animation:pos-toast-slide-in var(--t-base) var(--ease) both}@keyframes pos-toast-slide-in{0%{transform:translateY(8px);opacity:0}to{transform:translateY(0);opacity:1}}.pos-refresh-spinner{position:absolute;top:var(--s-3);right:var(--s-3);display:inline-flex;gap:4px;z-index:5}.pos-refresh-spinner .dot{width:6px;height:6px;border-radius:var(--r-pill);background:var(--text-muted);animation:pos-refresh-pulse 1.2s ease-in-out infinite}.pos-refresh-spinner .dot:nth-child(2){animation-delay:.15s}.pos-refresh-spinner .dot:nth-child(3){animation-delay:.3s}@keyframes pos-refresh-pulse{0%,80%,to{opacity:.25;transform:scale(.85)}40%{opacity:1;transform:scale(1)}}.pos-skeleton-block{height:100px;border-radius:var(--r-md);background:var(--surface-2);animation:pos-skeleton-shimmer 1.4s ease-in-out infinite;border:1px solid var(--border)}.pos-skeleton-circle{width:32px;height:32px;border-radius:var(--r-pill);background:var(--surface-2);animation:pos-skeleton-shimmer 1.4s ease-in-out infinite;border:1px solid var(--border)}.pos-skip-link{position:absolute;top:-40px;left:var(--s-3);background:var(--accent);color:var(--accent-ink);padding:var(--s-2) var(--s-3);border-radius:var(--r-md);z-index:1000;text-decoration:none;font-weight:500;transition:top var(--t-fast) var(--ease)}.pos-skip-link:focus,.pos-skip-link:focus-visible{top:var(--s-3);outline:2px solid var(--chromatic);outline-offset:2px}[data-contrast=hc],[data-theme=hc]{--bg: #000000;--surface: #0a0a0a;--surface-2: #141414;--surface-hover: #1f1f1f;--border: rgba(255,255,255,.65);--border-strong: #ffffff;--text: #ffffff;--text-muted: #f5f5f4;--text-subtle: #d4d4d4;--accent: #ffffff;--accent-ink: #000000;--chromatic: #ffeb3b;--c-success: #4ade80;--c-danger: #ff6b6b;--c-warn: #fbbf24;--c-info: #93c5fd;color-scheme:dark}[data-contrast=hc] .pos-btn,[data-contrast=hc] .pos-input,[data-contrast=hc] .pos-modal,[data-contrast=hc] .pos-card,[data-contrast=hc] .pos-pill,[data-theme=hc] .pos-btn,[data-theme=hc] .pos-input,[data-theme=hc] .pos-modal,[data-theme=hc] .pos-card,[data-theme=hc] .pos-pill{border-width:2px}.pos-line[data-new="1"]{animation:pos-cart-line-add .18s var(--ease) both}@keyframes pos-cart-line-add{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.pos-line .qty[data-bump="1"]{animation:pos-cart-qty-bump .2s var(--ease) both}@keyframes pos-cart-qty-bump{0%{transform:scale(1)}50%{transform:scale(1.15)}to{transform:scale(1)}}.pos-charge-overlay{position:fixed;inset:0;display:grid;place-items:center;background:#0000008c;z-index:200;animation:pos-modal-backdrop-in var(--t-fast) var(--ease) both}.pos-charge-overlay .panel{display:grid;place-items:center;gap:var(--s-3);padding:var(--s-6) var(--s-7);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-xl);color:var(--text)}.pos-charge-overlay .checkmark{width:64px;height:64px;border-radius:var(--r-pill);display:grid;place-items:center;background:color-mix(in srgb,var(--c-success) 15%,transparent);color:var(--c-success);border:2px solid var(--c-success)}.pos-charge-overlay .checkmark svg{width:36px;height:36px}.pos-charge-overlay .checkmark svg path{stroke-dasharray:32;stroke-dashoffset:32;animation:pos-checkmark-draw .38s var(--ease) 80ms forwards}@keyframes pos-checkmark-draw{to{stroke-dashoffset:0}}.pos-cart-list[data-recalled="1"]{animation:pos-fade-up .24s var(--ease) both}@keyframes pos-fade-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.nav-circle{transition:transform var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease)}.nav-circle:hover{transform:scale(1.04)}.nav-circle.active{animation:pos-nav-pulse .36s var(--ease) both}@keyframes pos-nav-pulse{0%{box-shadow:0 0 color-mix(in srgb,var(--accent) 40%,transparent)}60%{box-shadow:0 0 0 6px color-mix(in srgb,var(--accent) 0%,transparent)}to{box-shadow:0 0 color-mix(in srgb,var(--accent) 0%,transparent)}}.pos-display-line{animation:pos-display-line-in var(--t-base) var(--ease) both}@keyframes pos-display-line-in{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}.pos-display-line[data-leaving="1"]{animation:pos-display-line-out var(--t-fast) var(--ease) forwards}@keyframes pos-display-line-out{to{opacity:0;transform:translate(12px)}}@media (max-width: 480px){.pos-receipt-card{padding:var(--s-4)}.pos-receipt-actions{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-2)}.pos-receipt-actions .pos-btn{width:100%}}.pos-onboarding-steps{display:flex;align-items:center;justify-content:center;gap:var(--s-2);padding:var(--s-3) 0}.pos-onboarding-steps .step{display:flex;flex-direction:column;align-items:center;gap:4px;position:relative;flex:0 0 auto}.pos-onboarding-steps .step .dot{width:12px;height:12px;border-radius:var(--r-pill);border:1px solid var(--border-strong);background:var(--surface-2);transition:background var(--t-fast) var(--ease),transform var(--t-fast) var(--ease)}.pos-onboarding-steps .step.active .dot{background:var(--accent);border-color:var(--accent);transform:scale(1.15)}.pos-onboarding-steps .step.done .dot{background:var(--c-success);border-color:var(--c-success)}.pos-onboarding-steps .step .lbl{font-size:11px;font-family:var(--font-mono);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-muted)}.pos-onboarding-steps .connector{width:28px;height:1px;background:var(--border)}.pos-display-empty{display:grid;place-items:center;gap:var(--s-3);text-align:center;padding:var(--s-7) var(--s-5);color:var(--text-muted)}.pos-display-empty .brand{font-family:var(--font-display);font-weight:var(--weight-light);font-size:var(--fs-display-3);letter-spacing:var(--tracking-tight);color:var(--text)}.pos-display-empty .tagline{font-size:var(--fs-md);color:var(--text-muted);max-width:36ch}.pos-display-empty .bouncer{display:inline-flex;gap:6px}.pos-display-empty .bouncer span{width:8px;height:8px;border-radius:var(--r-pill);background:var(--chromatic);animation:pos-bounce 1.4s ease-in-out infinite}.pos-display-empty .bouncer span:nth-child(2){animation-delay:.15s}.pos-display-empty .bouncer span:nth-child(3){animation-delay:.3s}@keyframes pos-bounce{0%,80%,to{transform:translateY(0);opacity:.4}40%{transform:translateY(-6px);opacity:1}}.pos-sigpad{position:relative;display:inline-block;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface)}.pos-sigpad canvas{display:block;border-radius:var(--r-md);background:linear-gradient(to bottom,transparent 79%,color-mix(in srgb,var(--text-muted) 30%,transparent) 79%,color-mix(in srgb,var(--text-muted) 30%,transparent) 81%,transparent 81%);touch-action:none}.pos-sigpad .controls{position:absolute;top:6px;inset-inline-end:6px;display:inline-flex;gap:6px}.pos-sigpad .controls .pos-btn{padding:4px 10px;min-height:28px;font-size:var(--fs-sm)}.pos-sigpad .undo{position:absolute;top:6px;inset-inline-start:6px;padding:4px 10px;min-height:28px;font-size:var(--fs-sm)}.pos-floor-density-chips{display:inline-flex;gap:var(--s-1);padding:2px;border:1px solid var(--border);border-radius:var(--r-pill)}.pos-floor-density-chips .pos-chip{border:none;border-radius:var(--r-pill);background:transparent;min-height:28px;padding:0 var(--s-3)}.pos-floor-density-chips .pos-chip.active{background:var(--surface-2);color:var(--text)}html[data-floor-density=compact] .pos-floor-grid{--table-card: 80px}html[data-floor-density=normal] .pos-floor-grid{--table-card: 110px}html[data-floor-density=spacious] .pos-floor-grid{--table-card: 140px}.pos-floor-grid{--table-card: 110px;display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--table-card),1fr));gap:var(--s-3)}.pos-ticket{min-height:220px;display:flex;flex-direction:column;gap:var(--s-2)}.pos-ticket .pos-ticket-header{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s-2)}.pos-ticket .pos-ticket-header .elapsed{font-family:var(--font-mono);font-size:var(--fs-sm);letter-spacing:var(--tracking-mono);color:var(--text-muted)}.pos-ticket .pos-ticket-header .pos-pill{font-size:11px;padding:3px 10px}.pos-eod-stat{display:flex;flex-direction:column;gap:4px;padding:var(--s-3);border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface)}.pos-eod-stat .label{font-family:var(--font-mono);font-size:11px;letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-muted)}.pos-eod-stat .value{font-family:var(--font-display);font-weight:var(--weight-medium);font-size:var(--fs-display-3);font-variant-numeric:tabular-nums;letter-spacing:var(--tracking-tight);line-height:var(--lh-tight)}.pos-eod-stat .trend{display:inline-flex;align-items:center;gap:4px}.auth-shell{background:radial-gradient(900px 500px at 50% -10%,color-mix(in srgb,var(--chromatic) 12%,transparent),transparent 60%),var(--bg)}.auth-card{width:min(380px,92vw);padding:var(--s-6);border:1px solid var(--border);border-radius:var(--r-xl);background:var(--surface);display:flex;flex-direction:column;gap:var(--s-4)}.auth-card .auth-brand{font-family:var(--font-display);font-weight:var(--weight-light);font-size:var(--fs-display-2);letter-spacing:var(--tracking-display);line-height:var(--lh-tight)}.auth-card .auth-subtitle{color:var(--text-muted);font-size:var(--fs-md)}.pos-cmd-input{width:100%}.pos-cmd-list{list-style:none;margin:var(--s-2) 0 0 0;padding:0;max-height:360px;overflow-y:auto;display:flex;flex-direction:column;gap:2px}.pos-cmd-item{display:grid;grid-template-columns:90px 1fr auto;align-items:center;gap:var(--s-3);padding:var(--s-2) var(--s-3);border-radius:var(--r-md);cursor:pointer;transition:background var(--t-fast) var(--ease)}.pos-cmd-item .group{font-family:var(--font-mono);font-size:11px;letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-subtle)}.pos-cmd-item .label{font-weight:500;color:var(--text)}.pos-cmd-item .hint{color:var(--text-muted);font-size:var(--fs-sm)}.pos-cmd-item.is-active,.pos-cmd-item:hover{background:var(--surface-2)}.pos-cmd-empty{padding:var(--s-3) var(--s-3);color:var(--text-muted);font-size:var(--fs-sm);text-align:center}.pos-mt-2{margin-top:var(--s-2)}.pos-mt-3{margin-top:var(--s-3)}.pos-mb-2{margin-bottom:var(--s-2)}.pos-mb-3{margin-bottom:var(--s-3)}.pos-my-2{margin-block:var(--s-2)}.pos-my-3{margin-block:var(--s-3)}.pos-mis-2{margin-inline-start:var(--s-2)}.pos-mie-2{margin-inline-end:var(--s-2)}.pos-py-2{padding-block:var(--s-2)}.pos-clickable{cursor:pointer}.pos-cap{text-transform:capitalize}.pos-fs-xs{font-size:var(--fs-xs)}.pos-fs-sm{font-size:var(--fs-sm)}.pos-flex-wrap{flex-wrap:wrap}.pos-noclick{cursor:default}.pos-mis-auto{margin-inline-start:auto}.pos-flex-1{flex:1}.pos-mono{font-family:var(--font-mono)}.pos-tabnum{font-variant-numeric:tabular-nums}.pos-hint{color:var(--text-muted);font-size:var(--fs-sm)}.pos-hint-xs{color:var(--text-muted);font-size:var(--fs-xs)}.pos-hidden{display:none}.pos-mis-1{margin-inline-start:var(--s-1)}.pos-mie-1{margin-inline-end:var(--s-1)}.pos-row-2{display:flex;align-items:center;gap:var(--s-2)}.pos-w-80{width:80px}.pos-w-90{width:90px}.pos-cust-note{font-size:var(--fs-sm);color:var(--text);background:var(--surface-2);padding:var(--s-1) var(--s-2);border-radius:var(--r-sm);margin-block-end:var(--s-2);border:1px solid var(--border)}.pos-toaster[data-pos=top-center]{bottom:auto;top:var(--s-3);left:50%;right:auto;transform:translate(-50%);align-items:center}.pos-toaster[data-pos=top-right]{bottom:auto;top:var(--s-3)}@media (max-width: 720px){html[data-cart-collapsed="1"] .pos-shell{grid-template-columns:1fr;grid-template-areas:"topbar" "main" "cart"}html[data-cart-collapsed="1"] .pos-cart{height:56px;overflow:hidden;border-top:1px solid var(--border);cursor:pointer}html[data-cart-collapsed="1"] .pos-cart:before{content:"Tap to view cart →";display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-muted);font-size:var(--fs-sm)}html[data-cart-collapsed="1"] .pos-cart>*{display:none}}.app-main{animation:pos-route-fade var(--t-base) var(--ease) both}@keyframes pos-route-fade{0%{opacity:.7;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.app-main{animation:none}}.pos-chip[data-cat-color]{border-bottom:3px solid var(--cat-color, transparent)}.pos-numpad{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--s-2);width:min(280px,100%)}.pos-numpad-key{min-height:48px;font-size:var(--fs-md);font-family:var(--font-mono);font-weight:600;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);color:var(--text);cursor:pointer;transition:border-color var(--t-fast) var(--ease)}.pos-numpad-key:hover{border-color:var(--border-strong)}.pos-numpad-key:disabled{opacity:.45;cursor:not-allowed}.pos-numpad-key.danger{color:var(--c-danger)}.pos-numpad-key.ghost{color:var(--text-muted)}.pos-numpad-key.wide{grid-column:1 / -1;background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.pos-receipt-thermal-preview{font-family:var(--font-mono);font-size:12px;line-height:1.25;white-space:pre;background:#fff;color:#111;padding:12px;border:1px solid var(--border);border-radius:var(--r-sm);overflow:auto;max-height:50vh}.pos-card{position:relative}.pos-card[data-badge]:before{content:attr(data-badge);position:absolute;top:0;inset-inline-start:0;font-family:var(--font-mono);font-size:10px;letter-spacing:var(--tracking-wide);text-transform:uppercase;padding:2px 6px;border-radius:0 0 var(--r-sm) 0;background:var(--c-warn);color:#111;font-weight:700;z-index:1}.pos-card[data-badge=NEW]:before{background:var(--c-success);color:#fff}.pos-card[data-badge="86"]:before{background:var(--c-danger);color:#fff}.pos-card[data-badge=SALE]:before{background:var(--chromatic);color:#fff}.pos-card[data-unavailable="1"]{opacity:.45;filter:grayscale(40%)}.pos-card[data-unavailable="1"]:after{content:"⏱";position:absolute;top:4px;inset-inline-end:4px;font-size:14px;opacity:.7;pointer-events:none}.pos-card[data-reorder="1"]{cursor:grab;border-style:dashed;border-color:var(--chromatic)}.pos-card[data-reorder="1"]:active{cursor:grabbing}.pos-card[data-reorder="1"]:after{content:"↕";position:absolute;bottom:4px;inset-inline-end:6px;font-size:14px;color:var(--chromatic);pointer-events:none}.pos-catalog-edit-list{list-style:none;margin:var(--s-2) 0 0 0;padding:0;max-height:360px;overflow-y:auto;display:flex;flex-direction:column;gap:4px}.pos-catalog-edit-row{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface)}.pos-catalog-edit-pager{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--s-2);margin-top:var(--s-2)}.pos-section-restore{float:right;margin-top:-2px}.pos-warn-banner{margin-top:var(--s-2);padding:var(--s-3);border:1px solid var(--warn, #b45309);border-left-width:4px;border-radius:var(--r-md);background:var(--surface-2);color:var(--text);font-size:var(--fs-sm, .875rem);line-height:1.45}.pos-rowbtn{display:block;width:100%;padding:0;margin:0;border:0;background:none;color:inherit;font:inherit;text-align:inherit;cursor:pointer}.pos-rowbtn:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:var(--r-sm)}.pos-variant-parent-current{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s-2);padding:var(--s-2);border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface)}.pos-variant-parent-list{list-style:none;margin:var(--s-2) 0 0 0;padding:0;max-height:220px;overflow-y:auto;display:flex;flex-direction:column;gap:2px}.pos-variant-parent-list .pos-btn{justify-content:flex-start;text-align:left}.pos-catalog-edit-pager .pos-hint{min-width:8ch;text-align:center}.pos-catalog-edit-summary{display:grid;grid-template-columns:1fr auto auto auto;align-items:center;gap:var(--s-3);width:100%;padding:var(--s-2) var(--s-3);background:transparent;border:none;color:var(--text);cursor:pointer;text-align:start}.pos-catalog-edit-summary:hover{background:var(--surface-2)}.pos-catalog-edit-summary .name{font-weight:500}.pos-catalog-edit-form{padding:var(--s-3);border-top:1px solid var(--border);background:var(--surface-2);display:flex;flex-direction:column;gap:var(--s-2)}.pos-modifier-group{border:1px solid var(--border);border-radius:var(--r-md);padding:var(--s-2);margin-block-end:var(--s-2);background:var(--surface)}.pos-mod-option{display:inline-flex;align-items:center;gap:var(--s-1);margin-inline-end:var(--s-2);margin-block-end:var(--s-1)}.pos-scheduled-rail{background:var(--c-info-soft);border:1px solid color-mix(in srgb,var(--c-info) 30%,transparent);border-radius:var(--r-md);padding:var(--s-2)}.pos-scheduled-rail .pos-pill{text-decoration:none;font-size:var(--fs-xs)}.pos-floor-canvas-wrap{position:relative}.pos-floor-stage{position:relative;transform-origin:0 0;transition:transform var(--t-fast) var(--ease)}.pos-floor-zoom-controls{position:absolute;top:var(--s-3);inset-inline-end:var(--s-3);z-index:5;display:inline-flex;align-items:center;gap:var(--s-1);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-pill);padding:4px 6px}.pos-floor-zoom-controls .pos-btn{padding:4px 10px;min-height:28px;font-size:var(--fs-sm)}.pos-floor-zoom-readout{min-width:4ch;text-align:center;font-size:var(--fs-sm);color:var(--text-muted)}.pos-modal-body{scroll-behavior:smooth}.pos-settings-nav{position:sticky;top:0;z-index:2;background:var(--surface);display:flex;flex-wrap:wrap;gap:var(--s-1);padding:var(--s-1) 0 var(--s-2) 0;margin-bottom:var(--s-2);border-bottom:1px solid var(--border)}.pos-settings-nav .pos-chip{text-decoration:none;min-height:32px;padding:4px var(--s-3);font-size:var(--fs-sm)}.pos-settings-anchor{display:block;height:0;scroll-margin-top:60px}.pos-settings-section-title{margin:var(--s-4) 0 var(--s-2) 0;font-family:var(--font-display);font-weight:var(--weight-light);font-size:var(--fs-display-3);letter-spacing:var(--tracking-tight);line-height:var(--lh-tight);color:var(--text);border-bottom:1px solid var(--border);padding-bottom:var(--s-1)}.pos-settings-section-title:first-of-type{margin-top:var(--s-2)}.pos-line{grid-template-columns:auto 1fr auto;padding:var(--s-3) var(--s-2)}.pos-line-body{display:flex;flex-direction:column;gap:var(--s-1);min-width:0}.pos-line-body .name{font-size:var(--fs-md);font-weight:500;display:inline-flex;align-items:center;flex-wrap:wrap;gap:4px}.pos-line-qty{display:inline-flex;align-items:center;gap:var(--s-1);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-pill);padding:2px;width:fit-content}.pos-line-qty .qty-step{width:28px;height:28px;border:none;background:transparent;border-radius:var(--r-pill);color:var(--text);cursor:pointer;font-size:var(--fs-md);font-weight:600;display:grid;place-items:center;min-width:28px;min-height:28px}.pos-line-qty .qty-step:hover{background:var(--surface-hover)}.pos-line-qty .qty-num{min-width:24px;text-align:center;font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:var(--fs-sm);font-weight:600}.pos-line-end{display:flex;flex-direction:column;align-items:flex-end;gap:var(--s-1)}.pos-line-end .total{font-variant-numeric:tabular-nums;font-weight:600;font-size:var(--fs-md)}.pos-line-end .total .strike{display:block;font-size:var(--fs-xs);color:var(--text-muted);text-decoration:line-through;font-weight:400}.pos-line-menu{position:relative}.pos-line-menu summary{list-style:none;cursor:pointer;width:32px;height:32px;border-radius:var(--r-pill);display:grid;place-items:center;color:var(--text-muted);font-size:18px;line-height:1}.pos-line-menu summary::-webkit-details-marker{display:none}.pos-line-menu summary:hover{background:var(--surface-hover);color:var(--text)}.pos-line-menu[open] summary{background:var(--surface-2);color:var(--text)}.pos-line-menu-list{position:absolute;top:calc(100% + 4px);inset-inline-end:0;z-index:5;min-width:200px;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--s-1);display:flex;flex-direction:column;gap:2px}.pos-line-menu-list button{display:block;width:100%;text-align:start;padding:var(--s-2) var(--s-3);background:transparent;border:none;border-radius:var(--r-sm);color:var(--text);cursor:pointer;font-size:var(--fs-sm)}.pos-line-menu-list button:hover{background:var(--surface-hover)}.pos-line-menu-list button.danger{color:var(--c-danger)}.pos-line-menu-list button.danger:hover{background:var(--c-danger-soft)}.pos-line-menu-list hr{border:0;border-top:1px solid var(--border);margin:var(--s-1) 0}.pos-charge-btn{width:100%;max-width:100%;min-width:0;min-height:56px;display:flex;align-items:center;justify-content:space-between;gap:var(--s-3);padding:var(--s-3) var(--s-4);border-radius:var(--r-md);border:1px solid var(--accent);background:var(--accent);color:var(--accent-ink);font-weight:600;cursor:pointer;overflow:hidden;transition:border-color var(--t-fast) var(--ease),opacity var(--t-fast) var(--ease)}.pos-charge-btn .label{font-family:var(--font-ui);font-size:var(--fs-md);letter-spacing:var(--tracking-tight);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pos-charge-btn .amount{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:var(--fs-md);flex-shrink:0}.pos-charge-btn[data-state=disabled],.pos-charge-btn:disabled{opacity:.55;cursor:not-allowed}.pos-charge-btn[data-state=loading]{justify-content:center}.pos-charge-spin{width:16px;height:16px;border-radius:var(--r-pill);border:2px solid color-mix(in srgb,var(--accent-ink) 30%,transparent);border-top-color:var(--accent-ink);animation:spin .7s linear infinite}.pos-charge-reason{width:100%;max-width:100%;min-width:0;box-sizing:border-box;margin-top:var(--s-2);padding:var(--s-1) var(--s-2);border-radius:var(--r-sm);background:var(--c-warn-soft);color:var(--c-warn);font-size:var(--fs-sm);text-align:center;overflow-wrap:anywhere;word-break:break-word}.pos-line[data-pending="1"]{border-inline-start:3px solid var(--c-warn)}.pos-line[data-fired="1"]{border-inline-start:3px solid var(--c-success);background:color-mix(in srgb,var(--c-success) 4%,transparent)}.pos-fired-mark{display:inline-flex;align-items:center;gap:2px;padding:2px 6px;border-radius:var(--r-pill);background:var(--c-success-soft);color:var(--c-success)}.pos-skeleton-line.w-30{width:30%}.pos-skeleton-line.w-40{width:40%}.pos-skeleton-line.w-50{width:50%}.pos-skeleton-line.w-60{width:60%}.pos-skeleton-line.w-70{width:70%}.pos-skeleton-line.w-85{width:85%}.pos-skeleton-line.w-90{width:90%}.pos-skeleton-line.h-24{height:24px}.pos-skeleton-line.mb-3{margin-block:var(--s-3)}.pos-skeleton-line.mt-3{margin-block-start:var(--s-3)}.pos-receipt-error-actions{display:flex;gap:var(--s-2);justify-content:center;margin-top:var(--s-2)}.pos-receipt-meta{color:var(--text-muted);font-size:var(--fs-sm)}.pos-receipt-order-num,.pos-receipt-qty{font-family:var(--font-mono)}.pos-tier-badge--inline{margin-inline-start:var(--s-2)}.pos-receipt-copy-btn{margin-top:var(--s-2)}.profile-wrapper{position:relative;display:flex;justify-content:center}.pos-errboundary-icon{font-size:32px}.pos-errboundary-title{font-weight:600}.pos-errboundary-actions{display:flex;gap:var(--s-2);justify-content:center}@media (prefers-reduced-motion: reduce){.pos-skeleton,.pos-skeleton-line,.pos-skeleton-block,.pos-skeleton-circle,.pos-toast,.pos-modal,.pos-modal-backdrop,.pos-line[data-new="1"],.pos-line .qty[data-bump="1"],.pos-cart-list[data-recalled="1"],.pos-charge-overlay,.pos-charge-overlay .checkmark svg path,.pos-display-line,.pos-display-line[data-leaving="1"],.pos-display-empty .bouncer span,.pos-refresh-spinner .dot,.pos-scan-ready:after,.nav-circle,.nav-circle.active,.pos-onboarding-steps .step .dot{animation:none!important;transition:none!important}.pos-helptip-panel{animation:none!important}}.pos-helptip-wrap{position:relative;display:inline-flex;align-items:center;margin-inline-start:var(--s-1)}.pos-helptip-btn{width:18px;height:18px;border-radius:50%;border:1px solid var(--border);background:var(--surface);color:var(--text-muted);font-size:var(--fs-xs);font-weight:600;line-height:1;cursor:help;display:inline-grid;place-items:center;padding:0;font-family:var(--font)}.pos-helptip-btn:hover,.pos-helptip-btn:focus-visible,.pos-helptip-btn[aria-expanded=true]{border-color:var(--c-info);color:var(--c-info)}.pos-helptip-panel{position:absolute;top:calc(100% + var(--s-1));inset-inline-start:0;z-index:50;min-width:220px;max-width:320px;padding:var(--s-2) var(--s-3);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);color:var(--text);font-size:var(--fs-sm);line-height:var(--lh-snug);box-shadow:var(--shadow-sm, 0 2px 8px rgba(0,0,0,.08));animation:pos-helptip-in var(--t-fast) var(--ease) both}@keyframes pos-helptip-in{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}.pos-preset-row{display:flex;align-items:center;flex-wrap:wrap;gap:var(--s-2);margin-block:var(--s-1)}.pos-preset-label{font-size:var(--fs-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:var(--tracking-wide);margin-inline-end:var(--s-1)}.pos-preset-chips{display:inline-flex;flex-wrap:wrap;gap:var(--s-1)}.pos-preset-chips .pos-chip{padding:4px 10px;font-size:var(--fs-xs)}.mod-pill--allergen{background:color-mix(in srgb,var(--c-warn) 12%,var(--surface-2));color:var(--c-warn);border-color:var(--c-warn);text-transform:uppercase;letter-spacing:.04em;font-size:var(--fs-xs)}.mod-pill--required{background:color-mix(in srgb,var(--c-danger) 18%,var(--surface-2));color:var(--c-danger);border-color:var(--c-danger);font-weight:600;text-transform:uppercase;letter-spacing:.04em;font-size:var(--fs-xs)}.mod-pill--restricted{background:color-mix(in srgb,var(--c-danger) 12%,var(--surface-2));color:var(--c-danger);border-color:var(--c-danger);font-weight:600}.pos-allergen{color:var(--c-danger);font-weight:700;letter-spacing:.04em}.pos-pill--station{text-transform:uppercase;letter-spacing:.06em;background:color-mix(in srgb,var(--c-info) 18%,var(--surface-2));color:var(--c-info)}.pos-settings-search{display:flex;gap:var(--s-1);padding:var(--s-1) 0;position:sticky;top:0;background:var(--surface);z-index:2}.pos-settings-search input{flex:1}[data-settings-hidden="1"]{display:none}.pos-eod-draft-watermark{position:sticky;top:0;text-align:center;font-weight:700;letter-spacing:.1em;color:var(--c-warn);opacity:.6;padding:4px 0;background:color-mix(in srgb,var(--c-warn) 10%,transparent);border-bottom:1px dashed var(--c-warn);z-index:5}@media print{[data-report-type=X] .pos-eod-draft-watermark{position:fixed;top:40%;left:0;right:0;font-size:64px;transform:rotate(-22deg);opacity:.18;border:none;background:transparent}}.pos-session-expired{position:sticky;top:0;z-index:50;display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-2);padding:var(--s-2) var(--s-3);background:color-mix(in srgb,var(--c-danger) 18%,var(--surface-2));color:var(--c-danger);border-bottom:1px solid var(--c-danger);font-weight:600}.pos-session-expired input{min-width:160px}.pos-display-tip--prominent .hint{font-size:var(--fs-lg);font-weight:700}.pos-display-tip--prominent .chip{min-height:88px;font-size:var(--fs-lg);padding:var(--s-3)}.pos-display-tip--prominent .chip .label{font-size:var(--fs-xl)}.pos-idle-cart-banner{display:flex;flex-direction:column;gap:var(--s-1);padding:var(--s-2);margin:var(--s-1) 0;border-radius:var(--r-sm);background:color-mix(in srgb,var(--c-warn) 12%,var(--surface-2));border:1px solid var(--c-warn);font-size:var(--fs-sm)}.pos-denom-grid{display:grid;gap:var(--s-1);padding-top:var(--s-1)}.pos-denom-row{display:grid;grid-template-columns:56px auto 96px auto 1fr;align-items:center;gap:var(--s-1)}.pos-denom-row .label{font-variant-numeric:tabular-nums;font-weight:600}.pos-transfer-new{display:grid;gap:var(--s-2);max-width:640px}.pos-search-suggest{display:flex;flex-wrap:wrap;gap:var(--s-1);padding:var(--s-1) 0}.pos-pickup-groups{display:grid;gap:var(--s-3);max-width:960px}.pos-pickup-group{background:var(--surface);border:1px solid var(--c-border);border-radius:var(--r-md);padding:var(--s-2) var(--s-3)}.pos-pickup-group-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:var(--s-2)}.pos-pickup-group-head h2{margin:0;font-size:var(--fs-md)}.pos-pickup-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--s-1)}.pos-pickup-row{display:grid;grid-template-columns:1fr auto auto auto;align-items:center;gap:var(--s-2);padding:var(--s-2);border-radius:var(--r-sm);background:var(--surface-2)}.pos-pickup-meta{display:flex;flex-direction:column}.pos-pickup-total{font-variant-numeric:tabular-nums;min-width:64px;text-align:right}.pos-pickup-actions{display:flex;gap:var(--s-1)}@media (max-width: 600px){.pos-pickup-row{grid-template-columns:1fr auto;grid-template-rows:auto auto}.pos-pickup-actions{grid-column:1 / -1;justify-content:flex-end}}.pos-status-pill{display:inline-flex;align-items:center;justify-content:center;height:32px;min-width:32px;padding:0 8px;border-radius:var(--r-md);background:var(--surface-2);color:var(--c-fg);font-size:var(--fs-md);border:1px solid var(--c-border)}.pos-status-pill--scale{color:var(--c-info)}.pos-status-pill--training{color:#000;background:var(--c-warn);border-color:var(--c-warn);font-weight:700;letter-spacing:.08em;font-size:var(--fs-xs);animation:pos-training-pulse 1.8s ease-in-out infinite}@keyframes pos-training-pulse{0%,to{box-shadow:0 0 color-mix(in oklab,var(--c-warn) 55%,transparent)}50%{box-shadow:0 0 0 6px color-mix(in oklab,var(--c-warn) 0%,transparent)}}.pos-status-pill--scale{animation:pos-scale-tilt 4s ease-in-out infinite;transform-origin:50% 70%}@keyframes pos-scale-tilt{0%,90%,to{transform:rotate(0)}45%{transform:rotate(-6deg)}60%{transform:rotate(6deg)}75%{transform:rotate(0)}}.pos-preset-row{display:flex;flex-wrap:wrap;gap:var(--s-1);padding:var(--s-1) 0}.pos-preset-row .pos-chip--add{border-style:dashed;opacity:.85}.pos-preset-row .pos-chip--add:hover{opacity:1}.pos-coachmark{position:fixed;z-index:80;max-width:280px;padding:var(--s-3);background:var(--surface);border:1px solid var(--c-info);border-radius:var(--r-md);box-shadow:0 6px 24px #00000026;display:grid;gap:var(--s-2);animation:pos-coachmark-in var(--t-base) var(--ease) both}.pos-coachmark-title{font-size:var(--fs-sm);font-weight:600;color:var(--text)}.pos-coachmark-body{font-size:var(--fs-sm);line-height:var(--lh-snug);color:var(--text-muted)}.pos-coachmark .pos-btn{justify-self:end}@keyframes pos-coachmark-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.pos-coachmark{animation:none!important}}.pos-bt-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:var(--s-2)}.pos-bt-card{display:grid;grid-template-rows:auto auto 1fr;gap:var(--s-1);padding:var(--s-3);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);text-align:start;cursor:pointer;transition:border-color var(--t-fast) var(--ease),background var(--t-fast) var(--ease)}.pos-bt-card:hover{border-color:var(--border-strong)}.pos-bt-card.active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.pos-bt-card-icon{font-size:24px;line-height:1}.pos-bt-card-label{font-size:var(--fs-md);font-weight:600;color:var(--text)}.pos-bt-card-blurb{font-size:var(--fs-xs);color:var(--text-muted);line-height:var(--lh-snug)}.pos-bt-preview{margin-top:var(--s-3);padding:var(--s-3);border:1px solid var(--c-info);border-radius:var(--r-md);background:var(--c-info-soft, var(--surface))}.pos-bt-preview-title{font-size:var(--fs-sm);margin-bottom:var(--s-2);color:var(--text)}.pos-bt-preview-list{margin:0;padding-inline-start:var(--s-4);font-size:var(--fs-sm);color:var(--text-muted);line-height:var(--lh-snug)}.pos-setup-checklist{margin-bottom:var(--s-3);padding:var(--s-3);background:var(--surface);border:1px solid var(--c-info);border-radius:var(--r-md)}.pos-setup-checklist-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s-2);margin-bottom:var(--s-2)}.pos-setup-checklist-title{font-size:var(--fs-md);font-weight:600;color:var(--text)}.pos-setup-checklist-progress{font-size:var(--fs-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:var(--tracking-wide)}.pos-setup-checklist-list{list-style:none;margin:0;padding:0;display:grid;gap:var(--s-1)}.pos-setup-checklist-item{display:flex;align-items:baseline;gap:var(--s-2);font-size:var(--fs-sm);color:var(--text)}.pos-setup-checklist-tick{display:inline-block;width:1.2em;color:var(--text-muted);font-family:var(--font-mono)}.pos-setup-checklist-item.done .pos-setup-checklist-tick{color:var(--c-success)}.pos-setup-checklist-item.done .pos-setup-checklist-label{color:var(--text-muted);text-decoration:line-through}.pos-setup-checklist-hint{font-size:var(--fs-xs);color:var(--text-muted)}.pos-advanced{margin-top:var(--s-2);border-top:1px dashed var(--border);padding-top:var(--s-2)}.pos-advanced>summary{cursor:pointer;font-size:var(--fs-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:var(--tracking-wide);padding-block:var(--s-1);list-style:none}.pos-advanced>summary::-webkit-details-marker{display:none}.pos-advanced>summary:before{content:"▸";display:inline-block;margin-inline-end:var(--s-1);transition:transform var(--t-fast) var(--ease)}.pos-advanced[open]>summary:before{transform:rotate(90deg)}.pos-advanced>summary:hover{color:var(--text)}.pos-advanced>summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (prefers-reduced-motion: reduce){.pos-advanced>summary:before{transition:none!important}}.pos-receipt-more{position:relative;display:inline-block}.pos-receipt-more>summary{list-style:none;cursor:pointer}.pos-receipt-more>summary::-webkit-details-marker{display:none}.pos-receipt-more-panel{position:absolute;top:100%;inset-inline-start:0;z-index:30;margin-top:var(--s-1);display:grid;gap:var(--s-1);min-width:200px;padding:var(--s-2);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:0 4px 16px #0000001f}.pos-receipt-more-panel .pos-btn{justify-content:flex-start}.pos-manager-lock{display:flex;align-items:center;gap:var(--s-2);padding:var(--s-2) var(--s-3);background:var(--surface-2);border:1px dashed var(--border);border-radius:var(--r-sm);font-size:var(--fs-sm);color:var(--text-muted)}.pos-manager-lock-icon{font-size:16px}.pos-manager-lock-label{flex:1}.pos-line-end .pos-line-quick{align-self:flex-end;padding:2px 8px;border-radius:var(--r-pill);border:1px solid var(--border);background:var(--surface);color:var(--text-muted);font-size:var(--fs-xs);cursor:pointer;margin-block-start:var(--s-1);font-family:var(--font-mono)}.pos-line-end .pos-line-quick:hover{border-color:var(--accent);color:var(--text)}.pos-line-end .pos-line-quick:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.pos-line-menu-group-label{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:var(--tracking-wide);color:var(--text-muted);padding:var(--s-1) var(--s-2);margin-block-start:var(--s-1)}.pos-eod-recents{position:relative;display:inline-block}.pos-eod-recents>summary{list-style:none;cursor:pointer}.pos-eod-recents>summary::-webkit-details-marker{display:none}.pos-eod-recents-panel{position:absolute;top:100%;inset-inline-end:0;z-index:30;margin-top:var(--s-1);display:grid;gap:var(--s-1);min-width:200px;padding:var(--s-2);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);box-shadow:0 4px 16px #0000001f}.pos-eod-recents-panel .pos-btn{justify-content:flex-start}.pos-settings-saved{align-self:center;margin-inline-end:var(--s-2)}.pos-flex-row{display:inline-flex;align-items:center;gap:var(--s-1)}.pos-shortcuts-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-4)}@media (max-width: 720px){.pos-shortcuts-grid{grid-template-columns:1fr}}.pos-glossary{margin:0;padding:0;display:grid;gap:var(--s-2);max-height:60vh;overflow-y:auto}.pos-glossary dt{font-size:var(--fs-sm);font-weight:600;color:var(--text);margin-block-start:var(--s-1)}.pos-glossary dd{margin:0;font-size:var(--fs-sm);color:var(--text-muted);line-height:var(--lh-snug)}.pos-offline-pill{position:fixed;z-index:70;top:calc(var(--s-3) + env(safe-area-inset-top));right:calc(var(--s-3) + env(safe-area-inset-right));display:inline-flex;align-items:center;gap:var(--s-2);padding:6px var(--s-3);border-radius:var(--r-pill);border:1px solid transparent;background:var(--surface);color:var(--text);font-size:var(--fs-sm);line-height:1.2;max-width:min(380px,calc(100vw - 2 * var(--s-3)));pointer-events:auto;animation:pos-offline-pill-in var(--t-base) var(--ease) both;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.pos-offline-pill .dot{width:8px;height:8px;border-radius:999px;background:var(--c-warn, #d97706);box-shadow:0 0 color-mix(in srgb,var(--c-warn, #d97706) 60%,transparent);animation:pos-offline-pill-pulse 1.6s var(--ease) infinite;flex-shrink:0}.pos-offline-pill .lbl{font-weight:500}.pos-offline-pill--slow .dot{background:var(--c-info, #2563eb);box-shadow:0 0 color-mix(in srgb,var(--c-info, #2563eb) 60%,transparent)}.pos-offline-pill .meta{color:var(--text-muted);font-weight:400}.pos-offline-pill .check{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:999px;background:color-mix(in srgb,var(--c-success, #16a34a) 18%,transparent);color:var(--c-success, #16a34a);font-size:12px;font-weight:700;flex-shrink:0}.pos-offline-pill .badge{margin-inline-start:var(--s-1);padding:1px 8px;border-radius:999px;background:color-mix(in srgb,var(--c-warn, #d97706) 22%,transparent);color:var(--c-warn, #d97706);font-family:var(--font-mono);font-size:var(--fs-xs);font-weight:600;flex-shrink:0}.pos-offline-pill--offline{border-color:color-mix(in srgb,var(--c-warn, #d97706) 45%,var(--border));background:color-mix(in srgb,var(--c-warn, #d97706) 8%,var(--surface))}.pos-offline-pill-action{margin-inline-start:var(--s-1);padding:2px 10px;border-radius:999px;border:1px solid color-mix(in srgb,var(--c-warn, #d97706) 55%,var(--border));background:transparent;color:inherit;font:inherit;font-weight:600;font-size:var(--fs-xs);cursor:pointer}.pos-offline-pill-action:hover:not(:disabled){background:color-mix(in srgb,var(--c-warn, #d97706) 14%,transparent)}.pos-offline-pill-action:disabled{opacity:.6;cursor:progress}.pos-offline-pill--recovered{border-color:color-mix(in srgb,var(--c-success, #16a34a) 45%,var(--border));background:color-mix(in srgb,var(--c-success, #16a34a) 8%,var(--surface))}@keyframes pos-offline-pill-in{0%{opacity:0;transform:translateY(-6px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes pos-offline-pill-pulse{0%{box-shadow:0 0 color-mix(in srgb,var(--c-warn, #d97706) 50%,transparent)}70%{box-shadow:0 0 0 6px color-mix(in srgb,var(--c-warn, #d97706) 0%,transparent)}to{box-shadow:0 0 color-mix(in srgb,var(--c-warn, #d97706) 0%,transparent)}}@media (max-width: 480px){.pos-offline-pill{top:auto;right:auto;bottom:calc(72px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%)}@keyframes pos-offline-pill-in{0%{opacity:0;transform:translate(-50%,6px) scale(.96)}to{opacity:1;transform:translate(-50%) scale(1)}}}@media (prefers-reduced-motion: reduce){.pos-offline-pill,.pos-offline-pill .dot{animation:none!important}}.pos-sheet-backdrop{position:fixed;inset:0;background:#00000073;animation:pos-fade-in var(--t-fast) var(--ease)}.pos-sheet{position:fixed;background:var(--surface);border:1px solid var(--border);display:flex;flex-direction:column;transition:transform var(--t-base) var(--ease),height var(--t-base) var(--ease)}.pos-sheet--bottom{inset:auto 0 0;width:100%;border-radius:var(--r-xl) var(--r-xl) 0 0;border-bottom:0;padding-bottom:env(safe-area-inset-bottom);max-height:95dvh;animation:pos-sheet-up var(--t-base) var(--ease)}.pos-sheet--bottom.pos-sheet--snap-peek{height:18dvh;min-height:80px}.pos-sheet--bottom.pos-sheet--snap-half{height:52dvh}.pos-sheet--bottom.pos-sheet--snap-full{height:92dvh}.pos-sheet--right{inset:0 0 0 auto;width:min(420px,86vw);border-radius:var(--r-xl) 0 0 var(--r-xl);border-right:0;animation:pos-sheet-in-right var(--t-base) var(--ease)}.pos-sheet--left{inset:0 auto 0 0;width:min(420px,86vw);border-radius:0 var(--r-xl) var(--r-xl) 0;border-left:0;animation:pos-sheet-in-left var(--t-base) var(--ease)}.pos-sheet-handle{display:block;width:44px;height:8px;margin:var(--s-2) auto var(--s-1);padding:0;background:var(--border-strong);border:0;border-radius:999px;cursor:grab;touch-action:none;flex-shrink:0}.pos-sheet-handle:active{cursor:grabbing}.pos-sheet-header{position:sticky;top:0;z-index:2;background:var(--surface);padding:var(--s-3) var(--s-4);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;font-weight:500}.pos-sheet-body{flex:1;min-height:0;overflow-y:auto;padding:var(--s-3) var(--s-4);scrollbar-gutter:stable}.pos-sheet-footer{position:sticky;bottom:0;z-index:2;background:var(--surface);padding:var(--s-3) var(--s-4);border-top:1px solid var(--border);display:flex;gap:var(--s-2);justify-content:flex-end;box-shadow:0 -1px 0 var(--border)}.pos-sheet-close{width:var(--hit-md, 40px);height:var(--hit-md, 40px);padding:0;font-size:18px;line-height:1}@keyframes pos-sheet-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes pos-sheet-in-right{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes pos-sheet-in-left{0%{transform:translate(-100%)}to{transform:translate(0)}}@media (prefers-reduced-motion: reduce){.pos-sheet,.pos-sheet-backdrop{animation:none!important;transition:none!important}}.pos-sheet--reduced{transition:none!important}.pos-burger{position:fixed;top:calc(var(--s-3) + env(safe-area-inset-top));left:calc(var(--s-3) + env(safe-area-inset-left));z-index:65;width:44px;height:44px;border-radius:var(--r-pill);border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:22px;line-height:1;display:none;align-items:center;justify-content:center;cursor:pointer;transition:background var(--t-fast) var(--ease),border-color var(--t-fast) var(--ease)}.pos-burger:hover{background:var(--surface-hover);border-color:var(--border-strong)}@media (max-width: 768px){.pos-burger{display:inline-flex}}.pos-bottombar{position:fixed;inset:auto 0 0;z-index:50;display:none;background:var(--surface);border-top:1px solid var(--border);padding:var(--s-1) var(--s-2) calc(var(--s-1) + env(safe-area-inset-bottom));justify-content:space-around;align-items:center}.pos-bottombar-tab{flex:1;min-height:48px;padding:var(--s-1) var(--s-2);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;text-decoration:none;color:var(--text-muted);font-size:var(--fs-xs);font-weight:500;border-radius:var(--r-md)}.pos-bottombar-tab .ico{font-size:18px;line-height:1}.pos-bottombar-tab.active{color:var(--text);background:var(--surface-hover)}@media (max-width: 480px){.pos-bottombar{display:flex}.app-main{padding-bottom:60px}}.pos-rt{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.pos-rt-caption{text-align:left;padding:var(--s-2) 0;color:var(--text-muted);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase}.pos-rt th{text-align:left;font-weight:500;color:var(--text-muted);padding:var(--s-2) var(--s-3);border-bottom:1px solid var(--border);position:sticky;top:0;background:var(--surface);z-index:1}.pos-rt td{padding:var(--s-2) var(--s-3);border-bottom:1px solid var(--border);vertical-align:middle}.pos-rt tbody tr:hover{background:var(--surface-hover)}.pos-rt tbody tr[role=button]{cursor:pointer}.pos-rt tbody tr[role=button]:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.pos-rt-empty{padding:var(--s-5) var(--s-4);text-align:center;color:var(--text-muted);font-size:var(--fs-sm)}@media (max-width: 600px){.pos-rt[data-mobile-card=true],.pos-rt[data-mobile-card=true] thead,.pos-rt[data-mobile-card=true] tbody,.pos-rt[data-mobile-card=true] tr,.pos-rt[data-mobile-card=true] td{display:block;width:100%}.pos-rt[data-mobile-card=true] thead{position:absolute;left:-9999px}.pos-rt[data-mobile-card=true] tr{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);margin-bottom:var(--s-3);padding:var(--s-2) var(--s-3)}.pos-rt[data-mobile-card=true] td{padding:var(--s-1) 0;border-bottom:0;display:flex;justify-content:space-between;align-items:baseline;gap:var(--s-3)}.pos-rt[data-mobile-card=true] td[data-hide-phone="1"]{display:none}.pos-rt[data-mobile-card=true] td:before{content:attr(data-label);flex:0 0 auto;color:var(--text-muted);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase}.pos-rt[data-mobile-card=true] td[data-primary="1"]{font-size:var(--fs-body-lg);font-weight:500;padding-top:var(--s-2);padding-bottom:var(--s-2);border-bottom:1px solid var(--border)}.pos-rt[data-mobile-card=true] td[data-primary="1"]:before{display:none}}@media (max-width: 600px){.pos-history-table-scroll{overflow-x:visible}.pos-history-table,.pos-history-table thead,.pos-history-table tbody,.pos-history-table tr,.pos-history-table td{display:block;width:100%}.pos-history-table thead{position:absolute;left:-9999px}.pos-history-table tbody tr{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);margin-bottom:var(--s-3);padding:var(--s-2) var(--s-3)}.pos-history-table td{padding:var(--s-1) 0;border-bottom:0;display:flex;justify-content:space-between;align-items:baseline;gap:var(--s-3);text-align:start}.pos-history-table td.num{text-align:end}.pos-history-table td[data-hide-phone="1"]{display:none}.pos-history-table td[data-label]:before{content:attr(data-label);flex:0 0 auto;color:var(--text-muted);font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase}.pos-history-table td[data-primary="1"]{font-size:var(--fs-body-lg);font-weight:500;padding-block:var(--s-2);border-bottom:1px solid var(--border)}.pos-history-table td[data-primary="1"]:before{display:none}}@media (orientation: landscape) and (max-height: 600px){.pos-display{grid-template-columns:1fr minmax(280px,38vw);grid-template-rows:auto 1fr;grid-template-areas:"header header" "list   totals"}.pos-display-header{grid-area:header}.pos-display-list{grid-area:list}.pos-display-totals,.pos-display-tip,.pos-display-split{grid-area:totals}}@media (max-width: 720px){html[data-cart-snap=half] .pos-shell,html[data-cart-snap=full] .pos-shell{grid-template-columns:1fr;grid-template-areas:"topbar" "main" "cart"}html[data-cart-snap=half] .pos-cart,html[data-cart-snap=full] .pos-cart{position:fixed;inset:auto 0 0;z-index:55;border-top:1px solid var(--border);background:var(--surface);box-shadow:0 -1px 0 var(--border);border-radius:var(--r-xl) var(--r-xl) 0 0;padding-bottom:env(safe-area-inset-bottom);transition:height var(--t-base) var(--ease)}html[data-cart-snap=half] .pos-cart{height:52dvh}html[data-cart-snap=full] .pos-cart{height:calc(100dvh - 60px)}html[data-cart-snap=half] .app-main,html[data-cart-snap=full] .app-main{padding-bottom:60px}}.pos-cart-snap-btn{position:absolute;top:-1px;left:50%;transform:translate(-50%,-50%);display:none;align-items:center;gap:6px;padding:4px 12px;background:var(--surface);border:1px solid var(--border);border-radius:999px;font-size:var(--fs-xs);color:var(--text-muted);cursor:pointer;z-index:2}.pos-cart-snap-btn .lbl{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:var(--tracking-eyebrow)}.pos-cart-snap-btn:hover{color:var(--text);border-color:var(--border-strong)}@media (max-width: 720px){html[data-cart-snap=half] .pos-cart-snap-btn,html[data-cart-snap=full] .pos-cart-snap-btn{display:inline-flex}.pos-cart{position:relative}}.pos-empty-illustration{color:var(--text-subtle);opacity:.85;max-width:120px;height:auto;display:block;margin:0 auto var(--s-2)}@media (prefers-reduced-motion: no-preference){.pos-empty-illustration{animation:pos-fade-in var(--t-base) var(--ease) both}}.pos-skip-link--secondary{left:200px}.pos-skip-link--secondary:focus,.pos-skip-link--secondary:focus-visible{left:200px}@media (max-width: 480px){.pos-skip-link--secondary{left:8px;top:calc(env(safe-area-inset-top) + 56px)}.pos-skip-link--secondary:focus,.pos-skip-link--secondary:focus-visible{left:8px;top:calc(env(safe-area-inset-top) + 56px)}}.pos-idle-warning{position:fixed;left:50%;bottom:calc(var(--s-5) + env(safe-area-inset-bottom));transform:translate(-50%);z-index:75;display:flex;align-items:center;gap:var(--s-3);padding:var(--s-2) var(--s-3) var(--s-2) var(--s-4);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-pill);color:var(--text);font-size:var(--fs-sm);max-width:min(420px,92vw);animation:pos-fade-in var(--t-base) var(--ease)}.pos-idle-warning .msg{color:var(--text-muted)}@media (max-width: 480px){.pos-idle-warning{bottom:calc(72px + env(safe-area-inset-bottom))}}@media (prefers-reduced-motion: reduce){.pos-idle-warning{animation:none}}.pos-grid-sentinel{grid-column:1 / -1;height:1px;pointer-events:none}.pos-grid-error{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;gap:var(--s-2);padding:var(--s-6) var(--s-4);text-align:center;color:var(--text-muted)}.pos-grid-error .msg{color:var(--text);font-weight:500}.pos-grid-error .hint{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-subtle);max-width:480px}@media print{:root,[data-theme=dark],[data-theme=light],[data-contrast=hc],[data-theme=hc]{--bg: #ffffff !important;--bg-ambient: none !important;--surface: #ffffff !important;--surface-2: #ffffff !important;--surface-hover: #ffffff !important;--border: #000000 !important;--border-strong: #000000 !important;--text: #000000 !important;--text-muted: #222222 !important;--text-subtle: #444444 !important;--accent: #000000 !important;--accent-ink: #ffffff !important;--chromatic: #000000 !important;color-scheme:light!important}body{background:#fff!important;color:#000!important}.sidebar,.pos-burger,.pos-bottombar,.pos-modal-backdrop,.pos-sheet-backdrop,.pos-toaster,.pos-idle-warning,.pos-skip-link,.pos-offline-pill,.app-main>.pos-cart-snap-btn{display:none!important}.pos-receipt-card,.pos-eod-grid .pos-stat,.pos-history-table{background:#fff!important;color:#000!important;box-shadow:none!important}.pos-cart,.pos-sheet{position:static!important;height:auto!important;max-height:none!important;border:0!important}.app{height:auto!important;display:block!important}.app-main{overflow:visible!important}a[href]:after{content:""!important}@page{margin:12mm}}.pos-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.pos-line{transition:transform var(--t-fast) var(--ease);touch-action:pan-y}@media (prefers-reduced-motion: reduce){.pos-line{transition:none}}@media (max-width: 480px){.pos-numpad{width:100%;gap:var(--s-3)}.pos-numpad-key{min-height:64px;font-size:var(--fs-body-lg)}.pos-numpad-key.wide{min-height:56px}.pos-modal-body>.pos-numpad{margin-top:auto}}.pos-ticket{animation:pos-list-in .22s var(--ease) both}.pos-ticket:nth-child(1){animation-delay:0ms}.pos-ticket:nth-child(2){animation-delay:30ms}.pos-ticket:nth-child(3){animation-delay:60ms}.pos-ticket:nth-child(4){animation-delay:90ms}.pos-ticket:nth-child(5){animation-delay:.12s}.pos-ticket:nth-child(n+6){animation-delay:.15s}@keyframes pos-list-in{0%{opacity:0;transform:translateY(6px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@media (prefers-reduced-motion: reduce){.pos-ticket{animation:none!important}}body[data-kiosk-chrome=off] .sidebar,body[data-kiosk-chrome=off] .pos-topbar{display:none!important}body[data-kiosk-chrome=off] .app{grid-template-columns:1fr!important}body[data-kiosk-chrome=off] .pos-burger{display:none!important}body[data-kiosk-chrome=off]:after{content:"kiosk — press c";position:fixed;bottom:12px;right:12px;z-index:80;padding:4px 10px;font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--text-subtle);background:var(--surface);border:1px solid var(--border);border-radius:var(--r-pill);pointer-events:none}.pos-shortcuts-overlay{position:fixed;inset:auto 0 calc(var(--s-7) + env(safe-area-inset-bottom)) 0;display:grid;place-items:center;z-index:65;pointer-events:none;animation:pos-fade-in var(--t-fast) var(--ease)}.pos-shortcuts-overlay .panel{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-lg);padding:var(--s-4) var(--s-5);min-width:280px;max-width:min(420px,92vw)}.pos-shortcuts-overlay .eyebrow{font-family:var(--font-mono);font-size:var(--fs-xs);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;color:var(--text-muted);margin-bottom:var(--s-2)}.pos-shortcuts-overlay table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.pos-shortcuts-overlay th{text-align:start;font-family:var(--font-mono);color:var(--text);font-weight:600;padding-block:var(--s-1);width:35%}.pos-shortcuts-overlay td{color:var(--text-muted);padding-block:var(--s-1)}.pos-shortcuts-overlay .hint{margin-top:var(--s-3);font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-subtle);letter-spacing:var(--tracking-mono)}@media (prefers-reduced-motion: reduce){.pos-shortcuts-overlay{animation:none}}.pos-field-row{flex-direction:row!important;align-items:flex-start;gap:var(--s-2)}.pos-field-row input[type=checkbox]{margin-top:4px;flex-shrink:0}.pos-field-row .pos-hint{display:block;color:var(--text-subtle);font-size:var(--fs-xs);margin-top:2px}.pos-ptr{position:absolute;inset:-52px 0 auto;height:52px;display:flex;align-items:center;justify-content:center;gap:var(--s-2);color:var(--text-muted);font-size:var(--fs-sm);pointer-events:none;transition:transform var(--t-fast) var(--ease);z-index:5}.pos-ptr .arrow{display:inline-block;transition:transform var(--t-fast) var(--ease);font-size:var(--fs-md)}.pos-ptr[data-armed="1"] .arrow{transform:rotate(180deg);color:var(--accent)}.pos-ptr[data-refreshing="1"] .arrow{animation:pos-ptr-spin .72s linear infinite}@keyframes pos-ptr-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.pos-ptr,.pos-ptr .arrow{transition:none!important;animation:none!important}}@media (max-width: 480px){.pos-topbar{padding:var(--s-2) var(--s-3);gap:var(--s-2)}.pos-topbar .brand{max-width:6ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pos-topbar .who{font-size:var(--fs-xs);gap:var(--s-2);flex-shrink:1;min-width:0}}@media (max-width: 360px){.pos-topbar .brand{display:none}}.pos-field-hint{display:block;font-size:var(--fs-xs);color:var(--text-muted);margin-top:var(--s-1)}.pos-field-hint--error{color:var(--c-danger, #f87171)}.pos-input[aria-invalid=true]{border-color:var(--c-danger, #f87171)}.pos-browse-toggle{display:none;flex-direction:column;align-items:center;gap:var(--s-2);padding:var(--s-6) var(--s-4);text-align:center}.pos-browse-toggle .pos-hint{color:var(--text-muted);font-size:var(--fs-sm)}@media (max-width: 480px){.pos-browse-toggle{display:flex}.pos-grid[data-browse-hidden="1"]{max-height:0;overflow:hidden;padding-block:0;border:0}}@media (max-width: 768px){.pos-floor-shell{grid-template-columns:1fr!important;grid-template-rows:1fr auto}.pos-floor-tools{flex-direction:row;overflow-x:auto;overflow-y:visible;border-inline-end:0;border-top:1px solid var(--border);padding:var(--s-2) var(--s-3) calc(var(--s-2) + env(safe-area-inset-bottom));gap:var(--s-2);align-items:stretch;scrollbar-width:thin;flex-wrap:nowrap;white-space:nowrap}.pos-floor-tools>*{flex-shrink:0}.pos-floor-canvas-wrap{padding:var(--s-3)}}.pos-fieldset[data-section-highlight="1"]{animation:pos-section-pulse 1.4s var(--ease) both;box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 35%,transparent);border-radius:var(--r-md)}@keyframes pos-section-pulse{0%{box-shadow:0 0 color-mix(in srgb,var(--accent) 55%,transparent)}40%{box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 35%,transparent)}to{box-shadow:0 0 0 0 transparent}}@media (prefers-reduced-motion: reduce){.pos-fieldset[data-section-highlight="1"]{animation:none}}.pos-history>*,.pos-kitchen>*,.pos-eod>*{max-width:var(--page-max-w, 1600px);margin-inline:auto;width:100%}.pos-history-filters,.pos-history-meta,.pos-history-pager,.pos-eod-section,.pos-eod-grid,.pos-eod-heading,.pos-history-table-scroll,.pos-history-table{max-width:var(--page-max-w, 1600px);margin-inline:auto;width:100%}@media (max-width: 600px){.pos-history>*,.pos-kitchen>*,.pos-eod>*,.pos-history-table,.pos-eod-grid{max-width:none}}.pos-page,.pos-history,.pos-kitchen,.pos-eod{min-height:0}.action-chip{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 12px;background:transparent;border:1px solid var(--border);border-radius:var(--r-pill);color:var(--text);font-family:var(--font-ui);font-size:var(--fs-xs, 12px);font-weight:500;cursor:pointer;transition:all var(--t-fast) var(--ease)}.action-chip:hover{background:var(--surface-hover);border-color:var(--border-strong)}.action-chip svg{width:13px;height:13px;opacity:.7}.chip-select{position:relative;display:inline-flex}.chip-select .chip-select-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:160px}.chip-select-label--placeholder{color:var(--text-subtle)}.chip-select .chip-select-chevron{width:12px;height:12px;opacity:.5;flex-shrink:0;transition:transform var(--t-fast) var(--ease)}.chip-select [aria-expanded=true] .chip-select-chevron{transform:rotate(180deg)}.chip-select-menu{position:absolute;top:calc(100% + var(--s-2));inset-inline-start:0;min-width:180px;max-height:280px;overflow-y:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--s-1) 0;z-index:400;animation:chip-menu-in var(--t-fast) var(--ease) both}.chip-select-menu--up{top:auto;bottom:calc(100% + var(--s-2))}@keyframes chip-menu-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.chip-select-option{display:block;width:100%;padding:var(--s-2) var(--s-4);border:none;background:none;cursor:pointer;font-family:var(--font-ui);font-size:var(--fs-sm, 14px);color:var(--text-muted);text-align:start;transition:background var(--t-fast) var(--ease),color var(--t-fast) var(--ease);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chip-select-option:hover{background:var(--surface-hover);color:var(--text)}.chip-select-option:disabled{opacity:.4;cursor:not-allowed}.chip-select-option.active{color:var(--text);font-weight:500}.chip-select-option.active:before{content:"•";margin-inline-end:var(--s-2);color:var(--chromatic, var(--accent))}.chip-select--block{display:flex;width:100%}.chip-select-trigger{display:inline-flex;align-items:center;gap:var(--s-2);width:100%;min-height:38px;padding:10px 12px;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);color:var(--text);font-family:var(--font-ui);font-size:var(--fs-sm, 14px);font-weight:400;text-align:start;cursor:pointer;transition:border-color var(--t-fast) var(--ease),background var(--t-fast) var(--ease)}.chip-select-trigger:hover:not(:disabled){border-color:var(--border-strong)}.chip-select-trigger:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.chip-select-trigger:disabled{opacity:.55;cursor:not-allowed}.chip-select--block .chip-select-label{flex:1;max-width:none;text-align:start}.chip-select--block .chip-select-menu{inset-inline-start:0;inset-inline-end:0;min-width:0}html[data-density=compact] .chip-select-trigger{padding:6px 8px;min-height:30px}.pos-pay-modal{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--s-4);align-items:start}.pos-pay-modal__side,.pos-pay-modal__main{display:flex;flex-direction:column;gap:var(--s-3);min-width:0}.pos-pay-tender{display:flex;flex-direction:column;gap:var(--s-3);align-items:stretch}.pos-pay-tender .pos-numpad{width:100%}.pos-pay-tender__row{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s-2)}.pos-pay-tender__row .value{font-family:var(--font-mono);font-size:var(--fs-xl, 1.6rem);font-weight:700}.pos-pay-tender__row .value[data-empty="1"]{color:var(--text-muted)}.pos-pay-change .amount{font-size:var(--fs-xl, 1.6rem)}.pos-modal-footer>.pos-charge-btn{flex:1 1 auto;width:auto}@media (max-width: 760px){.pos-pay-modal{grid-template-columns:minmax(0,1fr)}.pos-pay-modal__main{order:-1}}.pos-catalog-basic{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:var(--s-2) var(--s-3);margin-bottom:var(--s-3)}
