@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(https://fonts.gstatic.com/s/inter/v18/UcCO3FwrK3iLTeHuS_nVMrMxCp50SjIw2boKoduKmMEVuLyfAZ9hiJ-Ek-_EeA.woff2) format("woff2")}:root{color-scheme:dark;--radius-sm: .5rem;--radius: .75rem;--radius-lg: 1rem;--radius-xl: 1.5rem;--bg: 220 16% 7%;--surface: 220 14% 11%;--surface-raised: 220 14% 14%;--surface-muted: 220 12% 18%;--foreground: 210 20% 97%;--foreground-muted: 218 12% 72%;--foreground-dim: 218 10% 55%;--border: 220 14% 22%;--border-strong: 220 14% 32%;--primary: 36 94% 58%;--primary-strong: 36 98% 64%;--primary-foreground: 220 30% 8%;--accent: 42 96% 62%;--status-neutral: 215 14% 60%;--status-neutral-fill: 215 16% 22%;--status-ok: 152 54% 46%;--status-ok-fill: 152 40% 18%;--status-warn: 40 90% 58%;--status-warn-fill: 40 72% 22%;--status-hot: 18 88% 58%;--status-hot-fill: 18 72% 22%;--status-critical: 358 74% 60%;--status-critical-fill: 358 58% 22%;--info: 210 74% 60%;--info-fill: 210 52% 22%;--status-success: var(--status-ok);--status-success-fill: var(--status-ok-fill);--status-success-foreground: var(--primary-foreground);--status-info: var(--info);--status-info-fill: var(--info-fill);--status-danger: var(--status-critical);--status-danger-fill: var(--status-critical-fill);--status-error: var(--status-critical);--status-error-fill: var(--status-critical-fill);--elevation-1: 0 1px 2px rgba(0, 0, 0, .35);--elevation-2: 0 4px 10px rgba(0, 0, 0, .4), 0 1px 2px rgba(0, 0, 0, .3);--elevation-3: 0 12px 28px rgba(0, 0, 0, .5), 0 2px 6px rgba(0, 0, 0, .35);--text-meta: .8125rem;--text-body-sm: .9375rem;--text-body: 1.0625rem;--text-body-lg: 1.1875rem;--text-title: 1.375rem;--text-title-lg: 1.75rem;--text-display: 2.5rem;--control-height-sm: 44px;--control-height: 56px;--control-height-lg: 64px;--control-padding-x: 20px;--touch-slop: 8px;--shell-header-h: 52px;--shell-footer-h: 36px;--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--duration-fast: .12s;--duration-normal: .22s;--duration-slow: .38s}:root[data-theme=light]{color-scheme:light;--bg: 220 20% 97%;--surface: 0 0% 100%;--surface-raised: 0 0% 100%;--surface-muted: 220 16% 93%;--foreground: 220 30% 10%;--foreground-muted: 220 10% 40%;--foreground-dim: 220 10% 55%;--border: 220 16% 88%;--border-strong: 220 16% 78%;--primary-foreground: 0 0% 100%;--status-neutral-fill: 210 18% 88%;--status-ok-fill: 146 50% 88%;--status-warn-fill: 42 90% 88%;--status-hot-fill: 18 92% 88%;--status-critical-fill: 0 82% 90%;--info-fill: 212 80% 92%;--elevation-1: 0 1px 2px rgba(15, 23, 42, .06);--elevation-2: 0 4px 10px rgba(15, 23, 42, .08), 0 1px 2px rgba(15, 23, 42, .05);--elevation-3: 0 12px 28px rgba(15, 23, 42, .12), 0 2px 6px rgba(15, 23, 42, .08)}:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;font-feature-settings:"ss01","cv11";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}*,*:before,*:after{box-sizing:border-box;margin:0}html,body{height:100vh;height:100dvh;overflow:hidden;background:hsl(var(--bg));color:hsl(var(--foreground));font-size:var(--text-body);line-height:1.4;-webkit-tap-highlight-color:transparent;touch-action:manipulation;user-select:none;-webkit-user-select:none}#root{height:100vh;height:100dvh;overflow:hidden;display:flex;flex-direction:column}button{font:inherit;color:inherit;border:0;background:none;cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid hsl(var(--primary));outline-offset:2px;border-radius:var(--radius-sm)}a{color:inherit;text-decoration:none}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:hsl(var(--border-strong));border-radius:999px}@media(hover:none)and (pointer:coarse){::-webkit-scrollbar{width:0;height:0}}.station-shell{display:grid;grid-template-rows:var(--shell-header-h) minmax(0,1fr) var(--shell-footer-h);height:100vh;height:100dvh;width:100vw;overflow:hidden;background:hsl(var(--bg))}.station-shell-full{grid-template-rows:minmax(0,1fr)}.station-header{display:flex;align-items:center;gap:14px;padding:0 20px;border-bottom:1px solid hsl(var(--border));background:linear-gradient(180deg,hsl(var(--surface-raised)),hsl(var(--surface)))}.station-header-title{display:flex;align-items:baseline;gap:10px;min-width:0;flex-wrap:wrap}.station-header-title strong{font-size:var(--text-body-lg);font-weight:700;letter-spacing:-.015em;white-space:nowrap}.station-header-title span{font-size:var(--text-body-sm);color:hsl(var(--foreground-muted));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.station-header-key{text-transform:uppercase;letter-spacing:.08em}.station-header-spacer{flex:1}.station-header-actions{display:flex;align-items:center;gap:10px}.station-mute-btn{width:36px;height:36px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:transparent;color:hsl(var(--status-ok));transition:color var(--duration-fast),background var(--duration-fast)}.station-mute-btn:hover{background:hsl(var(--surface-muted))}.station-mute-btn.is-muted{color:hsl(var(--foreground-dim))}.station-clock{font-variant-numeric:tabular-nums;font-size:var(--text-body);font-weight:600;color:hsl(var(--foreground));min-width:56px;text-align:right}.station-footer{display:flex;align-items:center;flex-wrap:wrap;gap:4px 16px;padding:6px 20px;border-top:1px solid hsl(var(--border));color:hsl(var(--foreground-muted));font-size:var(--text-meta);background:hsl(var(--surface))}.station-footer-stat{display:inline-flex;align-items:center;gap:6px}.station-footer-stat>strong+span,.station-footer-stat>span+strong{margin-left:0}.station-footer-stat strong{color:hsl(var(--foreground));font-weight:600}.station-footer-user{margin-left:auto}.station-body{min-height:0;overflow:hidden}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--control-height);padding:0 var(--control-padding-x);border-radius:var(--radius);font-size:var(--text-body);font-weight:600;letter-spacing:-.01em;transition:background var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}.btn:disabled{opacity:.4;cursor:not-allowed}.btn:active:not(:disabled){transform:scale(.97)}.btn-primary{background:hsl(var(--primary));color:hsl(var(--primary-foreground));box-shadow:var(--elevation-2)}.btn-primary:hover:not(:disabled){background:hsl(var(--primary-strong))}.btn-ghost{color:hsl(var(--foreground-muted))}.btn-ghost:hover:not(:disabled){color:hsl(var(--foreground));background:hsl(var(--surface-muted))}.btn-outline{border:1px solid hsl(var(--border-strong));color:hsl(var(--foreground));background:hsl(var(--surface))}.btn-outline:hover:not(:disabled){border-color:hsl(var(--primary));color:hsl(var(--primary))}.btn-sm{min-height:var(--control-height-sm);padding:0 14px;font-size:var(--text-body-sm)}.btn-lg{min-height:var(--control-height-lg);padding:0 28px;font-size:var(--text-body-lg)}.launcher{display:grid;grid-template-rows:auto auto 1fr;gap:14px;padding:16px 24px;height:100%;overflow-y:auto;max-width:1400px;width:100%;margin:0 auto}.launcher-head{display:grid;gap:4px}.launcher-head h1{font-size:var(--text-title);font-weight:700;letter-spacing:-.02em}.launcher-head p{color:hsl(var(--foreground-muted));font-size:var(--text-body-sm);max-width:64ch}.launcher-venues{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-start}.launcher-venue-chip{display:inline-flex;align-items:center;gap:8px;height:32px;min-height:32px;max-height:32px;padding:0 14px;border-radius:999px;border:1px solid hsl(var(--border-strong));background:hsl(var(--surface));color:hsl(var(--foreground-muted));font-size:var(--text-body-sm);font-weight:500;transition:all var(--duration-fast) var(--ease-out);cursor:pointer;flex:0 0 auto}.launcher-venue-chip strong{font-weight:700;color:hsl(var(--foreground))}.launcher-venue-chip span{font-size:var(--text-meta);color:hsl(var(--foreground-dim));text-transform:uppercase;letter-spacing:.06em}.launcher-venue-chip.is-active{background:hsl(var(--primary) / .12);border-color:hsl(var(--primary));color:hsl(var(--primary))}.launcher-venue-chip.is-active strong,.launcher-venue-chip.is-active span{color:hsl(var(--primary))}.launcher-venue-chip.is-skeleton{color:hsl(var(--foreground-muted));background:hsl(var(--surface-muted));border-color:hsl(var(--border));cursor:default}.launcher-venue-chip.is-skeleton strong{color:hsl(var(--foreground-muted));font-weight:600}.launcher-spin{animation:launcher-spin 1s linear infinite}@keyframes launcher-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.launcher-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-auto-rows:minmax(150px,max-content);gap:14px;align-content:start}.launcher-tile{display:grid;grid-template-rows:auto 1fr auto;gap:12px;padding:22px 22px 18px;border-radius:var(--radius-xl);background:hsl(var(--surface));border:1px solid hsl(var(--border));box-shadow:var(--elevation-1);min-height:150px;text-align:left;transition:transform var(--duration-normal) var(--ease-out),box-shadow var(--duration-normal) var(--ease-out),border-color var(--duration-normal) var(--ease-out);position:relative;overflow:hidden;cursor:pointer}.launcher-tile:hover:not(:disabled){border-color:hsl(var(--primary) / .5);box-shadow:var(--elevation-3);transform:translateY(-2px)}.launcher-tile:active:not(:disabled){transform:translateY(0) scale(.99)}.launcher-tile:disabled{cursor:not-allowed;opacity:.55}.launcher-tile-icon{width:42px;height:42px;border-radius:var(--radius);display:grid;place-items:center;font-size:1.1rem;background:hsl(var(--surface-muted))}.launcher-tile-icon.is-primary{background:hsl(var(--primary) / .18);color:hsl(var(--primary))}.launcher-tile-icon.is-info{background:hsl(var(--info) / .22);color:hsl(var(--info))}.launcher-tile-icon.is-warn{background:hsl(var(--status-warn) / .22);color:hsl(var(--status-warn))}.launcher-tile-body{display:grid;gap:6px}.launcher-tile-body h3{font-size:var(--text-body-lg);font-weight:700;letter-spacing:-.01em}.launcher-tile-body p{color:hsl(var(--foreground-muted));font-size:var(--text-body-sm);line-height:1.5}.launcher-tile-foot{display:flex;align-items:center;justify-content:space-between;gap:12px}.launcher-tile-state{font-size:var(--text-meta);text-transform:uppercase;letter-spacing:.08em;color:hsl(var(--foreground-dim))}.launcher-tile-cta{font-size:var(--text-body-sm);font-weight:600;color:hsl(var(--primary))}.launcher-tile.is-coming-soon .launcher-tile-cta{color:hsl(var(--foreground-dim))}.launcher-tile-badge{position:absolute;top:16px;right:16px;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:hsl(var(--foreground-dim));padding:4px 10px;border-radius:999px;background:hsl(var(--surface-muted));border:1px solid hsl(var(--border))}.kds{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden}.queue-station-banner{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 24px;border-bottom:1px solid hsl(var(--border));background:radial-gradient(ellipse at top left,hsl(var(--primary) / .1),transparent 50%),hsl(var(--surface))}.queue-station-banner-copy{display:grid;gap:6px;max-width:72ch}.queue-station-banner-copy strong{font-size:var(--text-body-lg);font-weight:700;letter-spacing:-.015em}.queue-station-banner-copy p{color:hsl(var(--foreground-muted));font-size:var(--text-body-sm);line-height:1.5}.queue-station-banner-pill{flex-shrink:0;display:inline-flex;align-items:center;min-height:34px;padding:0 14px;border-radius:999px;background:hsl(var(--surface-muted));border:1px solid hsl(var(--border-strong));color:hsl(var(--foreground-muted));font-size:var(--text-meta);font-weight:700;letter-spacing:.02em;text-align:center}.station-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:14px 20px;border-bottom:1px solid hsl(var(--border));background:hsl(var(--surface))}.station-summary-card{display:grid;gap:6px;padding:16px 18px;border-radius:var(--radius-lg);border:1px solid hsl(var(--border));background:hsl(var(--surface-raised));box-shadow:var(--elevation-1)}.station-summary-label{color:hsl(var(--foreground-muted));font-size:var(--text-meta);font-weight:700;letter-spacing:.08em;text-transform:uppercase}.station-summary-card strong{font-size:var(--text-title-lg);font-weight:800;letter-spacing:-.02em}.station-summary-card p{color:hsl(var(--foreground-muted));font-size:var(--text-body-sm);line-height:1.4}.kds-controls{display:flex;align-items:center;gap:8px;padding:8px 20px;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid hsl(var(--border));background:hsl(var(--surface))}.kds-controls::-webkit-scrollbar{display:none}.kds-filter{flex-shrink:0;min-height:30px;padding:0 12px;border-radius:999px;border:1px solid hsl(var(--border-strong));background:hsl(var(--surface));color:hsl(var(--foreground-muted));font-size:var(--text-body-sm);font-weight:600;letter-spacing:-.01em;display:inline-flex;align-items:center;gap:6px;transition:all var(--duration-fast) var(--ease-out)}.kds-filter:hover{color:hsl(var(--foreground));border-color:hsl(var(--foreground-muted))}.kds-filter.is-active{background:hsl(var(--primary) / .16);color:hsl(var(--primary));border-color:hsl(var(--primary) / .55)}.kds-filter-count{min-width:22px;padding:0 6px;height:20px;border-radius:999px;background:hsl(var(--surface-muted));color:hsl(var(--foreground-muted));font-size:var(--text-meta);font-weight:700;display:inline-flex;align-items:center;justify-content:center}.kds-filter.is-active .kds-filter-count{background:hsl(var(--primary) / .22);color:hsl(var(--primary))}.kds-controls-spacer{flex:1}.station-lane-tabs{display:none}.station-lane-tab{min-height:var(--control-height-sm);padding:0 14px;border-radius:999px;border:1px solid hsl(var(--border-strong));background:hsl(var(--surface));color:hsl(var(--foreground-muted));font-size:var(--text-body-sm);font-weight:700;display:inline-flex;align-items:center;gap:8px}.station-lane-tab.is-active{background:hsl(var(--primary) / .16);color:hsl(var(--primary));border-color:hsl(var(--primary) / .55)}.station-lane-tab-count{min-width:22px;height:20px;padding:0 6px;border-radius:999px;background:hsl(var(--surface-muted));color:hsl(var(--foreground-muted));font-size:var(--text-meta);display:inline-flex;align-items:center;justify-content:center}.station-lane-tab.is-active .station-lane-tab-count{background:hsl(var(--primary) / .22);color:hsl(var(--primary))}.kds-lanes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:hsl(var(--border));flex:1;min-height:0;overflow:hidden}.kds-lane{display:grid;grid-template-rows:auto minmax(0,1fr);background:hsl(var(--bg));overflow:hidden}.kds-lane-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 16px;background:hsl(var(--surface));border-bottom:1px solid hsl(var(--border))}.kds-lane-head strong{font-size:var(--text-body);font-weight:700;letter-spacing:-.01em}.kds-lane-count{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:28px;padding:0 8px;border-radius:999px;background:hsl(var(--surface-muted));color:hsl(var(--foreground-muted));font-weight:700;font-size:var(--text-body-sm)}.kds-lane[data-lane=queued] .kds-lane-count{background:hsl(var(--info) / .2);color:hsl(var(--info))}.kds-lane[data-lane=active] .kds-lane-count{background:hsl(var(--status-warn) / .24);color:hsl(var(--status-warn))}.kds-lane[data-lane=ready] .kds-lane-count{background:hsl(var(--status-ok) / .24);color:hsl(var(--status-ok))}.kds-lane-stack{display:grid;gap:10px;padding:12px;align-content:start;overflow-y:auto;overscroll-behavior:contain}.kds-lane-empty{padding:40px 16px;text-align:center;color:hsl(var(--foreground-dim));font-size:var(--text-body-sm)}.kds-ticket{display:grid;gap:10px;padding:14px 16px 12px;border-radius:var(--radius-lg);background:hsl(var(--surface-raised));border:2px solid hsl(var(--status-neutral) / .3);box-shadow:var(--elevation-2);text-align:left;position:relative;transition:transform var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out),border-color var(--duration-normal) var(--ease-out)}.kds-ticket.is-interactive{cursor:pointer}.kds-ticket:active{transform:scale(.99)}.kds-ticket[data-age=fresh]{border-color:hsl(var(--status-neutral) / .4)}.kds-ticket[data-age=warming]{border-color:hsl(var(--status-warn));box-shadow:var(--elevation-2),0 0 0 1px hsl(var(--status-warn) / .3)}.kds-ticket[data-age=hot]{border-color:hsl(var(--status-hot));background:linear-gradient(180deg,hsl(var(--status-hot-fill)),hsl(var(--surface-raised)) 80%);box-shadow:var(--elevation-2),0 0 0 1px hsl(var(--status-hot) / .4)}.kds-ticket[data-age=critical]{border-color:hsl(var(--status-critical));background:linear-gradient(180deg,hsl(var(--status-critical-fill)),hsl(var(--surface-raised)) 80%);box-shadow:var(--elevation-2),0 0 0 2px hsl(var(--status-critical) / .5);animation:ticket-pulse 1.8s var(--ease-out) infinite}@keyframes ticket-pulse{0%,to{box-shadow:var(--elevation-2),0 0 0 2px hsl(var(--status-critical) / .5)}50%{box-shadow:var(--elevation-3),0 0 0 3px hsl(var(--status-critical) / .7)}}.kds-ticket-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.kds-ticket-head-actions{display:inline-flex;align-items:center;gap:10px;min-width:0}.kds-ticket-num{font-size:var(--text-title);font-weight:800;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.kds-ticket-time{font-size:var(--text-body);font-weight:700;font-variant-numeric:tabular-nums;color:hsl(var(--foreground-muted))}.kds-ticket[data-age=hot] .kds-ticket-time,.kds-ticket[data-age=critical] .kds-ticket-time{color:hsl(var(--foreground))}.kds-ticket-open{display:inline-flex;align-items:center;gap:2px;color:hsl(var(--foreground-muted));font-size:var(--text-meta);font-weight:700;letter-spacing:.04em;text-transform:uppercase}.kds-ticket-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.kds-ticket-chip{display:inline-flex;align-items:center;height:26px;padding:0 10px;border-radius:999px;background:hsl(var(--surface-muted));color:hsl(var(--foreground-muted));font-size:var(--text-meta);font-weight:600;letter-spacing:-.01em;text-transform:capitalize}.kds-ticket-chip.is-course{background:hsl(var(--primary) / .18);color:hsl(var(--primary-strong))}.kds-ticket-chip.is-station{background:hsl(var(--info) / .2);color:hsl(var(--info))}.kds-ticket-chip.is-vip{background:hsl(var(--accent) / .2);color:hsl(var(--accent))}.kds-ticket-guest{font-size:var(--text-body-sm);color:hsl(var(--foreground-muted));font-weight:500}.kds-ticket-summary{font-size:var(--text-body-lg);font-weight:600;line-height:1.35;color:hsl(var(--foreground));letter-spacing:-.01em}.kds-ticket-summary.is-quiet{font-size:var(--text-body-sm);font-weight:500;color:hsl(var(--foreground-muted));letter-spacing:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kds-ticket-detail{font-size:var(--text-body-sm);line-height:1.5;color:hsl(var(--foreground-muted));padding-top:8px;border-top:1px dashed hsl(var(--border))}.kds-ticket-lines{display:grid;gap:8px}.kds-ticket-line{display:grid;gap:3px;padding:10px 12px;border-radius:var(--radius-sm);background:hsl(var(--surface-muted))}.kds-ticket-line-main{display:flex;align-items:baseline;gap:8px}.kds-ticket-line-qty{font-size:var(--text-body-sm);font-weight:700;color:hsl(var(--foreground));font-variant-numeric:tabular-nums}.kds-ticket-line-name{font-size:var(--text-body);font-weight:600;color:hsl(var(--foreground));line-height:1.35}.kds-ticket-line-sub{font-size:var(--text-body-sm);color:hsl(var(--foreground-muted));line-height:1.4}.kds-ticket-line-note{color:hsl(var(--status-warn));font-size:var(--text-body-sm);font-weight:600}.kds-allergy-badges{display:flex;flex-wrap:wrap;gap:4px;padding:2px 0}.kds-allergy-badge{font-size:.6875rem;font-weight:800;padding:2px 8px;border-radius:999px;text-transform:uppercase;letter-spacing:.04em;line-height:1.4}.kds-allergy-badge.is-critical{background:hsl(var(--status-critical));color:#fff}.kds-allergy-badge.is-warn{background:hsl(var(--status-warn));color:#0e121b}.kds-allergy-badge.is-info{background:hsl(var(--info));color:#fff}.kds-allergy-badge.is-ok{background:hsl(var(--status-ok));color:#0e121b}.kds-ticket-line-more{color:hsl(var(--foreground-muted));font-size:var(--text-body-sm);font-weight:600}.kds-ticket-foot{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;margin-top:2px}.kds-ticket-advance{min-height:var(--control-height);padding:0 18px;border-radius:var(--radius);background:hsl(var(--primary));color:hsl(var(--primary-foreground));font-size:var(--text-body);font-weight:700;letter-spacing:-.01em;box-shadow:var(--elevation-1);transition:background var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast)}.kds-ticket-advance:hover{background:hsl(var(--primary-strong));box-shadow:var(--elevation-2);transform:translateY(-1px)}.kds-ticket-advance:active{transform:scale(.97);box-shadow:var(--elevation-1)}.kds-ticket-advance-ready{background:hsl(var(--status-ok))}.kds-ticket-advance-ready:hover{background:hsl(var(--status-ok) / .88)}.kds-ticket-advance-done{background:hsl(var(--surface-muted));color:hsl(var(--foreground))}.kds-ticket-advance-done:hover{background:hsl(var(--border-strong))}.kds-ticket-undo{font-size:var(--text-meta);color:hsl(var(--foreground-dim));padding:4px 8px;font-weight:600;text-transform:uppercase;letter-spacing:.06em}.kds-ticket-undo:hover{color:hsl(var(--foreground))}.toast-rack{position:fixed;bottom:calc(var(--shell-footer-h) + 16px);left:50%;transform:translate(-50%);z-index:40;display:grid;gap:8px;pointer-events:none}.toast{pointer-events:auto;display:flex;align-items:center;gap:14px;padding:14px 18px;border-radius:var(--radius);background:hsl(var(--surface-raised));border:1px solid hsl(var(--border-strong));box-shadow:var(--elevation-3);min-width:320px;font-size:var(--text-body);animation:toast-in var(--duration-normal) var(--ease-spring)}.toast strong{font-weight:700}.toast-action{min-height:40px;padding:0 14px;border-radius:var(--radius-sm);background:hsl(var(--primary));color:hsl(var(--primary-foreground));font-weight:700;font-size:var(--text-body-sm)}@keyframes toast-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.station-center-panel{display:grid;place-items:center;height:100%;padding:48px;text-align:center;gap:16px}.station-center-panel h2{font-size:var(--text-title-lg);font-weight:700;letter-spacing:-.02em}.station-center-panel p{color:hsl(var(--foreground-muted));font-size:var(--text-body);max-width:52ch}.station-center-panel-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px;justify-content:center}.station-sheet-backdrop{position:fixed;inset:0;z-index:45;background:#03060cb8;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:grid;place-items:center;padding:24px}.station-sheet{width:min(780px,calc(100vw - 48px));max-height:calc(100dvh - 96px);display:flex;flex-direction:column;border-radius:var(--radius-xl);border:1px solid hsl(var(--border-strong));background:hsl(var(--surface-raised));box-shadow:var(--elevation-3);overflow:hidden;animation:modal-enter var(--duration-normal) var(--ease-spring)}.station-sheet-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:22px 24px;border-bottom:1px solid hsl(var(--border))}.station-sheet-head-copy{display:grid;gap:4px}.station-sheet-head-copy h2{font-size:var(--text-title-lg);font-weight:800;letter-spacing:-.02em}.station-sheet-head-copy p{color:hsl(var(--foreground-muted));font-size:var(--text-body-sm)}.station-sheet-eyebrow{color:hsl(var(--primary));font-size:var(--text-meta);font-weight:700;letter-spacing:.1em;text-transform:uppercase}.station-sheet-close{min-width:40px;min-height:40px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:hsl(var(--surface-muted));color:hsl(var(--foreground-muted))}.station-sheet-body{flex:1;min-height:0;overflow-y:auto;display:grid;gap:20px;padding:22px 24px}.station-sheet-section{display:grid;gap:12px}.station-sheet-section h3{font-size:var(--text-body-lg);font-weight:700;letter-spacing:-.01em}.station-sheet-detail{color:hsl(var(--foreground-muted));font-size:var(--text-body);line-height:1.5}.station-sheet-lines{display:grid;gap:10px}.station-sheet-line{display:grid;gap:4px;padding:12px 14px;border-radius:var(--radius);background:hsl(var(--surface));border:1px solid hsl(var(--border))}.station-sheet-line-main{display:flex;gap:8px;align-items:baseline}.station-sheet-line p{color:hsl(var(--foreground-muted));font-size:var(--text-body-sm);line-height:1.4}.station-sheet-line-note{color:hsl(var(--status-warn))!important;font-weight:600}.station-sheet-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.station-field{display:grid;gap:8px}.station-field span{color:hsl(var(--foreground-muted));font-size:var(--text-meta);font-weight:700;letter-spacing:.06em;text-transform:uppercase}.station-select{min-height:var(--control-height);width:100%;padding:0 14px;border-radius:var(--radius);border:1px solid hsl(var(--border-strong));background:hsl(var(--surface));color:hsl(var(--foreground));font:inherit}.station-sheet-actions{display:flex;flex-wrap:wrap;gap:10px}.station-sheet-foot{padding:18px 24px 22px;border-top:1px solid hsl(var(--border));background:hsl(var(--surface))}@media(max-width:1024px){.station-summary,.kds-lanes{grid-template-columns:repeat(2,minmax(0,1fr))}.launcher-head h1{font-size:2rem}.launcher{padding:24px 20px 20px}}@media(max-width:760px){.station-shell{grid-template-rows:auto minmax(0,1fr) auto}.kds-lanes{grid-template-columns:minmax(0,1fr)}.station-header{padding:12px 16px;gap:12px;align-items:flex-start}.station-header-spacer{display:none}.station-header-title{width:100%;order:3}.station-header-actions{margin-left:auto}.station-footer{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;padding:10px 16px;justify-content:stretch}.station-footer-user{margin-left:0}.station-clock{min-width:72px}.station-summary{grid-template-columns:minmax(0,1fr);padding:12px 16px}.kds-controls{padding:10px 16px}.station-lane-tabs{display:flex;gap:8px;padding:10px 16px;overflow-x:auto;border-bottom:1px solid hsl(var(--border));background:hsl(var(--surface))}.kds-lane.is-mobile-hidden{display:none}.queue-station-banner{flex-direction:column;padding:16px}.kds-ticket{padding:14px 14px 12px}.kds-ticket-head{align-items:flex-start}.kds-ticket-head-actions{flex-direction:column;align-items:flex-end;gap:4px}.kds-ticket-foot{grid-template-columns:minmax(0,1fr)}.toast-rack{width:calc(100vw - 24px);left:12px;transform:none}.toast{min-width:0;width:100%;flex-wrap:wrap}.station-sheet-backdrop{padding:0;align-items:end}.station-sheet{width:100vw;max-height:min(88dvh,100dvh);border-radius:20px 20px 0 0;border-left:0;border-right:0;border-bottom:0}.station-sheet-head,.station-sheet-body,.station-sheet-foot{padding-left:16px;padding-right:16px}.station-sheet-grid,.launcher-grid{grid-template-columns:minmax(0,1fr)}.launcher-tile{min-height:160px}}@media(orientation:portrait)and (min-width:640px)and (max-width:1200px){.station-shell[data-prefers-landscape]:after{content:"Rotate to landscape for the full kitchen view";position:fixed;top:16px;left:50%;transform:translate(-50%);padding:8px 16px;border-radius:999px;background:hsl(var(--surface-raised));border:1px solid hsl(var(--border-strong));color:hsl(var(--foreground-muted));font-size:var(--text-meta);z-index:20;pointer-events:none}}.expo-board{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden}.expo-board .kds-lanes{grid-template-columns:repeat(3,minmax(0,1fr));flex:1}.expo-group{display:flex;flex-direction:column;gap:0;background:hsl(var(--surface-raised));border:1px solid hsl(var(--border-strong));border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--elevation-1);transition:opacity var(--duration-normal) var(--ease-out),box-shadow var(--duration-fast)}.expo-group:hover{box-shadow:var(--elevation-2)}.expo-group.is-dispatched{opacity:.55}.expo-group-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:14px 16px 10px;border-bottom:1px solid hsl(var(--border))}.expo-group-head-copy{display:grid;gap:4px;min-width:0}.expo-group-head-copy strong{font-size:var(--text-title);font-weight:800;letter-spacing:-.02em;color:hsl(var(--foreground))}.expo-group-eyebrow{color:hsl(var(--primary));font-size:var(--text-meta);font-weight:700;letter-spacing:.1em;text-transform:uppercase}.expo-group-head-time{font-size:var(--text-body-lg);font-weight:700;font-variant-numeric:tabular-nums;color:hsl(var(--foreground-muted))}.expo-group-body{display:grid;gap:1px;background:hsl(var(--border))}.expo-group-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:flex-start;padding:12px 16px;background:hsl(var(--surface-raised))}.expo-group-row-main{display:grid;gap:6px;min-width:0}.expo-group-row-body{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.expo-group-row-status{padding:2px 8px;border-radius:999px;font-size:var(--text-meta);font-weight:700;text-transform:uppercase;letter-spacing:.08em;line-height:1.6}.expo-group-row-status--queued{background:hsl(var(--status-info-fill));color:hsl(var(--status-info))}.expo-group-row-status--active{background:hsl(var(--status-warn-fill));color:hsl(var(--status-warn))}.expo-group-row-status--completed{background:hsl(var(--status-success-fill));color:hsl(var(--status-success))}.expo-group-row-status--cancelled{background:hsl(var(--surface-muted));color:hsl(var(--foreground-muted))}.expo-group-row-lines{color:hsl(var(--foreground));font-size:var(--text-body);line-height:1.4;word-break:break-word}.expo-group-row-mods{color:hsl(var(--foreground-muted));font-size:var(--text-body-sm);line-height:1.4}.expo-group-row-action{min-height:36px;padding:0 14px;border-radius:999px;background:hsl(var(--primary));color:hsl(var(--primary-foreground));font-size:var(--text-body-sm);font-weight:700;display:inline-flex;align-items:center;gap:6px}.expo-group-row-action.is-done{background:hsl(var(--status-success-fill));color:hsl(var(--status-success))}.expo-orphan-row{display:grid;gap:6px;padding:10px 12px;background:hsl(var(--surface-raised));border:1px solid hsl(var(--border));border-left:4px solid hsl(var(--border-strong));border-radius:var(--radius)}.expo-orphan-row[data-age=warming]{border-left-color:hsl(var(--info))}.expo-orphan-row[data-age=hot]{border-left-color:hsl(var(--status-warn));background:linear-gradient(180deg,hsl(var(--status-warn-fill)),hsl(var(--surface-raised)) 85%)}.expo-orphan-row[data-age=critical]{border-left-color:hsl(var(--status-critical));background:linear-gradient(180deg,hsl(var(--status-critical-fill)),hsl(var(--surface-raised)) 85%)}.expo-orphan-row.is-dispatched{opacity:.55}.expo-orphan-top{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;min-width:0}.expo-orphan-top-action{margin-left:auto;display:inline-flex}.expo-orphan-main{display:flex;align-items:baseline;justify-content:space-between;gap:10px;min-width:0}.expo-orphan-ticket{font-family:var(--font-mono, ui-monospace, monospace);font-size:var(--text-meta);font-weight:700;color:hsl(var(--foreground-muted));padding:2px 8px;border-radius:6px;background:hsl(var(--surface-muted));letter-spacing:.04em;white-space:nowrap}.expo-orphan-body{flex:1;min-width:0;font-size:var(--text-body);font-weight:600;color:hsl(var(--foreground));overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.3;letter-spacing:-.01em}.expo-orphan-count{display:inline-flex;align-items:center;font-size:var(--text-meta);color:hsl(var(--foreground-muted));white-space:nowrap;font-weight:600}.expo-orphan-age{display:inline-flex;align-items:center;font-variant-numeric:tabular-nums;font-weight:600;font-size:var(--text-meta);color:hsl(var(--foreground-muted));white-space:nowrap}.expo-orphan-status{padding:2px 8px;border-radius:999px;font-size:var(--text-meta);font-weight:700;text-transform:uppercase;letter-spacing:.06em;line-height:1.6;white-space:nowrap}.expo-orphan-status--queued{background:hsl(var(--info) / .18);color:hsl(var(--info))}.expo-orphan-status--active{background:hsl(var(--status-warn) / .22);color:hsl(var(--status-warn))}.expo-orphan-status--completed{background:hsl(var(--status-ok) / .22);color:hsl(var(--status-ok))}.expo-orphan-action{min-height:32px;padding:0 12px;border-radius:999px;background:hsl(var(--primary));color:hsl(var(--primary-foreground));font-size:var(--text-body-sm);font-weight:700;display:inline-flex;align-items:center;gap:6px;white-space:nowrap;border:0;cursor:pointer}.expo-orphan-action:disabled{opacity:.55;cursor:not-allowed}.expo-orphan-action--dispatch{background:hsl(var(--status-ok));color:hsl(var(--primary-foreground))}.expo-orphan-action--undo{background:hsl(var(--surface-muted));color:hsl(var(--foreground))}.expo-orphan-action.is-passive{background:transparent;color:hsl(var(--foreground-muted));cursor:default}.expo-group-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 16px;border-top:1px solid hsl(var(--border));background:hsl(var(--surface))}.expo-group-dispatch{flex:1;min-height:44px;border-radius:var(--radius);background:hsl(var(--status-success));color:hsl(var(--status-success-foreground, 0 0% 100%));font-size:var(--text-body-lg);font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:8px}.expo-group-dispatch.is-undo{background:hsl(var(--surface-muted));color:hsl(var(--foreground))}.expo-group-fire-all{flex:1;min-height:44px;border-radius:var(--radius);background:hsl(var(--primary));color:hsl(var(--primary-foreground));font-size:var(--text-body-lg);font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:8px}.expo-group-hint{color:hsl(var(--foreground-muted));font-size:var(--text-body-sm);text-align:center;flex:1}.bar-board{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden}.bar-lanes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:hsl(var(--border));flex:1;min-height:0;overflow:hidden}.bar-lane-stack{display:grid;gap:12px;padding:14px;overflow-y:auto;background:hsl(var(--surface))}.bar-card{display:grid;gap:12px;padding:16px 18px;border-radius:var(--radius-lg);background:hsl(var(--surface-raised));border:1px solid hsl(var(--border));box-shadow:var(--elevation-1);transition:box-shadow var(--duration-fast)}.bar-card:hover{box-shadow:var(--elevation-2)}.bar-card[data-age=warming]{border-color:hsl(var(--status-warn) / .4)}.bar-card[data-age=hot],.bar-card[data-age=critical]{border-color:hsl(var(--status-warn));background:hsl(var(--status-warn-fill) / .35)}.bar-card-head{display:flex;align-items:center;gap:12px}.bar-card-icon{width:44px;height:44px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;background:hsl(var(--surface-muted));color:hsl(var(--primary));flex-shrink:0}.bar-card-title{flex:1;min-width:0;font-size:var(--text-title);font-weight:800;letter-spacing:-.02em;line-height:1.2;word-break:break-word}.bar-card-time{font-size:var(--text-body-lg);font-weight:700;font-variant-numeric:tabular-nums;color:hsl(var(--foreground-muted));flex-shrink:0}.bar-card-mods{display:flex;flex-wrap:wrap;gap:6px}.bar-card-mods span{padding:4px 10px;border-radius:999px;background:hsl(var(--surface-muted));color:hsl(var(--foreground));font-size:var(--text-body-sm);font-weight:600}.bar-card-notes{padding:8px 12px;border-radius:var(--radius-sm);background:hsl(var(--status-warn-fill));color:hsl(var(--status-warn));font-size:var(--text-body-sm);font-weight:600;border-left:3px solid hsl(var(--status-warn))}.bar-card-context{display:flex;flex-wrap:wrap;gap:6px}.bar-card-context-tag{padding:3px 10px;border-radius:999px;background:hsl(var(--surface));border:1px solid hsl(var(--border-strong));color:hsl(var(--foreground-muted));font-size:var(--text-meta);font-weight:700;letter-spacing:.04em;text-transform:uppercase}.bar-card-foot{display:flex;gap:8px}.bar-card-advance{flex:1;min-height:44px;border-radius:var(--radius);background:hsl(var(--primary));color:hsl(var(--primary-foreground));font-size:var(--text-body-lg);font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:8px}.bar-card-advance.is-done{background:hsl(var(--status-success-fill));color:hsl(var(--status-success));cursor:default}.drink-guide{position:fixed;top:var(--shell-header-h);right:0;bottom:var(--shell-footer-h);width:clamp(340px,36vw,460px);z-index:45;background:hsl(var(--surface-raised));border-left:1px solid hsl(var(--border-strong));box-shadow:var(--elevation-3);display:flex;flex-direction:column;animation:drink-guide-slide-in var(--duration-normal) var(--ease-spring)}@keyframes drink-guide-slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}.drink-guide-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid hsl(var(--border))}.drink-guide-head-title{display:flex;align-items:center;gap:8px;color:hsl(var(--foreground))}.drink-guide-head-title strong{font-size:var(--text-body-lg);font-weight:800}.drink-guide-count{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 6px;border-radius:999px;background:hsl(var(--primary) / .15);color:hsl(var(--primary));font-size:var(--text-meta);font-weight:800}.drink-guide-close{width:32px;height:32px;border-radius:999px;background:hsl(var(--surface-muted));color:hsl(var(--foreground-muted));display:inline-flex;align-items:center;justify-content:center}.drink-guide-close:hover{color:hsl(var(--foreground))}.drink-guide-search{display:flex;align-items:center;gap:8px;padding:8px 16px;border-bottom:1px solid hsl(var(--border));color:hsl(var(--foreground-dim))}.drink-guide-search input{flex:1;background:transparent;border:none;font:inherit;font-size:var(--text-body-sm);color:hsl(var(--foreground));outline:none}.drink-guide-search input::placeholder{color:hsl(var(--foreground-dim))}.drink-guide-search-clear{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:hsl(var(--surface-muted));color:hsl(var(--foreground-muted))}.drink-guide-filters{display:flex;gap:6px;padding:10px 16px;border-bottom:1px solid hsl(var(--border));overflow-x:auto;flex-shrink:0}.drink-guide-filter{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:999px;border:1px solid hsl(var(--border));background:transparent;color:hsl(var(--foreground-muted));font-size:var(--text-meta);font-weight:700;white-space:nowrap;transition:all var(--duration-fast)}.drink-guide-filter:hover{border-color:hsl(var(--border-strong));color:hsl(var(--foreground))}.drink-guide-filter.is-active{background:hsl(var(--primary) / .12);border-color:hsl(var(--primary) / .4);color:hsl(var(--primary))}.drink-guide-list{flex:1;min-height:0;overflow-y:auto;display:grid;gap:10px;padding:12px 16px;align-content:start}.drink-guide-empty{text-align:center;padding:32px 16px;color:hsl(var(--foreground-dim));font-size:var(--text-body-sm)}.drink-guide-error{color:hsl(var(--status-error))}.drink-guide-card{display:grid;gap:8px;padding:14px;border-radius:var(--radius-lg);background:hsl(var(--surface));border:1px solid hsl(var(--border));transition:border-color var(--duration-fast)}.drink-guide-card:hover{border-color:hsl(var(--border-strong))}.drink-guide-card.is-unavailable{opacity:.5}.drink-guide-card-head{display:flex;align-items:center;gap:10px}.drink-guide-card-icon{width:34px;height:34px;border-radius:var(--radius-sm);background:hsl(var(--primary) / .1);color:hsl(var(--primary));display:flex;align-items:center;justify-content:center;flex-shrink:0}.drink-guide-card-title{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.drink-guide-card-title strong{font-size:var(--text-body);font-weight:700;line-height:1.25}.drink-guide-card-sub{font-size:var(--text-meta);color:hsl(var(--foreground-dim));text-transform:capitalize}.drink-guide-card-price{font-size:var(--text-body);font-weight:800;font-variant-numeric:tabular-nums;color:hsl(var(--primary));flex-shrink:0}.drink-guide-card-desc{font-size:var(--text-meta);color:hsl(var(--foreground-muted));line-height:1.45}.drink-guide-card-badges{display:flex;flex-wrap:wrap;gap:5px}.drink-guide-badge{display:inline-flex;align-items:center;gap:3px;padding:2px 8px;border-radius:999px;font-size:.6875rem;font-weight:700;background:hsl(var(--surface-muted));color:hsl(var(--foreground-muted));white-space:nowrap}.drink-guide-badge--abv{background:hsl(var(--status-warn) / .15);color:hsl(var(--status-warn))}.drink-guide-badge--na{background:hsl(var(--status-ok) / .15);color:hsl(var(--status-ok))}.drink-guide-badge--glass,.drink-guide-badge--temp{text-transform:capitalize}.drink-guide-badge--out{background:hsl(var(--status-critical) / .2);color:hsl(var(--status-critical));font-weight:800;text-transform:uppercase;letter-spacing:.04em}.drink-guide-card-origin{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:var(--text-meta);color:hsl(var(--foreground-dim))}.drink-guide-card-origin span:after{content:" ·";margin-left:2px;color:hsl(var(--foreground-dim) / .4)}.drink-guide-card-origin span:last-child:after{content:""}.drink-guide-card-notes{display:flex;flex-direction:column;gap:4px}.drink-guide-card-label{font-size:.625rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:hsl(var(--foreground-dim))}.drink-guide-card-tags{display:flex;flex-wrap:wrap;gap:4px}.drink-guide-tag{display:inline-block;padding:2px 8px;border-radius:999px;font-size:.6875rem;font-weight:600;background:hsl(var(--primary) / .08);color:hsl(var(--primary-strong))}.drink-guide-tag--pair{background:hsl(var(--status-ok) / .1);color:hsl(var(--status-ok))}.drink-guide-card-meta-row{display:flex;gap:12px;font-size:var(--text-meta);color:hsl(var(--foreground-dim))}.pos-board{display:grid;grid-template-columns:minmax(0,1fr) clamp(300px,28vw,400px);gap:0;height:100%;min-height:0;background:hsl(var(--surface))}.pos-board:has(.pos-basket-empty){grid-template-columns:minmax(0,1fr) clamp(200px,18vw,260px)}.pos-catalog{display:flex;flex-direction:column;min-height:0;border-right:1px solid hsl(var(--border))}.pos-catalog-head{display:flex;flex-direction:column;gap:6px;padding:8px 16px 10px;border-bottom:1px solid hsl(var(--border));background:hsl(var(--surface-raised))}.pos-target-row{display:flex;gap:6px;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:4px 0;mask-image:linear-gradient(to right,black calc(100% - 24px),transparent);-webkit-mask-image:linear-gradient(to right,black calc(100% - 24px),transparent)}.pos-target-row::-webkit-scrollbar{display:none}.pos-target-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 10px;border-radius:999px;font-size:var(--text-meta);font-weight:700;white-space:nowrap;background:hsl(var(--surface));color:hsl(var(--foreground-muted));border:1px solid hsl(var(--border));transition:background var(--duration-fast),color var(--duration-fast),border-color var(--duration-fast);flex-shrink:0}.pos-target-chip:hover{background:hsl(var(--surface-muted));color:hsl(var(--foreground))}.pos-target-chip.is-active{background:hsl(var(--primary) / .16);color:hsl(var(--primary-strong));border-color:hsl(var(--primary) / .35)}.pos-target-chip.is-table.is-active{background:hsl(var(--status-ok) / .14);color:hsl(var(--status-ok));border-color:hsl(var(--status-ok) / .3)}.pos-target-chip-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;border-radius:999px;font-size:.6875rem;font-weight:800;background:hsl(var(--foreground-muted) / .2);color:hsl(var(--foreground-muted));line-height:1}.pos-target-chip.is-active .pos-target-chip-count{background:hsl(var(--primary) / .2);color:hsl(var(--primary-strong))}.pos-target-chip.is-table.is-active .pos-target-chip-count{background:hsl(var(--status-ok) / .2);color:hsl(var(--status-ok))}.pos-target-chip.is-add{border-style:dashed;color:hsl(var(--foreground-dim))}.pos-target-chip.is-add:hover{border-style:solid;color:hsl(var(--primary-strong));border-color:hsl(var(--primary) / .4)}.pos-catalog-empty{padding:32px;text-align:center;color:hsl(var(--foreground-muted))}.pos-search{display:flex;align-items:center;gap:8px;padding:6px 14px;border-radius:999px;background:hsl(var(--surface));border:1px solid hsl(var(--border-strong));min-height:36px;transition:border-color var(--duration-fast),box-shadow var(--duration-fast)}.pos-search:focus-within{border-color:hsl(var(--primary) / .5);box-shadow:0 0 0 2px hsl(var(--primary) / .1)}.pos-search svg{color:hsl(var(--foreground-muted));flex-shrink:0}.pos-search input{flex:1;background:transparent;border:0;outline:0;color:inherit;font:inherit}.pos-section-tabs{display:flex;gap:6px;overflow-x:auto;padding:8px 16px 10px;border-bottom:1px solid hsl(var(--border));background:hsl(var(--surface-raised));scrollbar-width:none}.pos-section-tabs::-webkit-scrollbar{display:none}.pos-section-tab{min-height:30px;padding:0 12px;border-radius:999px;border:1px solid hsl(var(--border-strong));background:hsl(var(--surface));color:hsl(var(--foreground));font-size:var(--text-body-sm);font-weight:700;white-space:nowrap;flex-shrink:0;display:inline-flex;align-items:center;gap:6px;cursor:pointer}.pos-section-tab>span{font-size:var(--text-meta);padding:2px 8px;border-radius:999px;background:hsl(var(--surface-muted));color:hsl(var(--foreground-muted));font-weight:700}.pos-section-tab.is-active>span{background:hsl(var(--primary) / .22);color:hsl(var(--primary))}.pos-section-tab.is-active{background:hsl(var(--primary) / .16);color:hsl(var(--primary));border-color:hsl(var(--primary) / .55)}.pos-item-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;padding:14px 16px;overflow-y:auto}.pos-item-tile{display:flex;flex-direction:column;gap:8px;padding:14px 14px 12px;min-height:96px;border-radius:var(--radius-lg);background:hsl(var(--surface-raised));border:1px solid hsl(var(--border));box-shadow:var(--elevation-1);text-align:left;color:hsl(var(--foreground));transition:transform var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out);cursor:pointer}.pos-item-tile:hover:not(.is-disabled){border-color:hsl(var(--primary));transform:translateY(-2px);box-shadow:var(--elevation-2)}.pos-item-tile.is-disabled{opacity:.55;cursor:not-allowed}.pos-item-tile-body{flex:1;display:grid;gap:4px}.pos-item-tile-body strong{font-size:var(--text-body-lg);font-weight:700;letter-spacing:-.01em;line-height:1.2}.pos-item-tile-body p{color:hsl(var(--foreground-muted));font-size:var(--text-body-sm);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.pos-item-tile-foot{display:flex;align-items:center;justify-content:space-between;font-weight:800;font-size:var(--text-body);font-variant-numeric:tabular-nums}.pos-item-tile-unavailable{color:hsl(var(--status-warn));font-size:var(--text-meta);text-transform:uppercase;letter-spacing:.08em;font-weight:700}.pos-basket{display:flex;flex-direction:column;min-height:0;background:hsl(var(--surface-raised))}.pos-basket-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:14px 16px;border-bottom:1px solid hsl(var(--border))}.pos-basket-head-target{display:flex;flex-direction:column;gap:2px;min-width:0}.pos-basket-head-target strong{font-size:var(--text-body-lg);font-weight:800;letter-spacing:-.02em;color:hsl(var(--foreground));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pos-basket-head-kind{display:inline-flex;align-items:center;gap:4px;font-size:.6875rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:hsl(var(--primary-strong))}.pos-basket-head-kind.is-table{color:hsl(var(--status-ok))}.pos-basket-head-sub{font-size:var(--text-meta);color:hsl(var(--foreground-dim))}.pos-basket-guest{display:flex;flex-direction:column;gap:5px;padding:10px 16px;border-bottom:1px solid hsl(var(--border))}.pos-basket-guest>span{font-size:var(--text-meta);font-weight:600;color:hsl(var(--foreground-dim));text-transform:uppercase;letter-spacing:.06em}.pos-basket-guest input{width:100%;padding:8px 12px;border-radius:var(--radius-sm);border:1px solid hsl(var(--border));background:hsl(var(--surface));color:hsl(var(--foreground));font:inherit;font-size:var(--text-body-sm)}.pos-basket-guest input:focus{outline:none;border-color:hsl(var(--primary) / .5);box-shadow:0 0 0 2px hsl(var(--primary) / .12)}.pos-open-check{border-bottom:1px solid hsl(var(--border));padding:0}.pos-open-check>header{display:flex;align-items:center;justify-content:space-between;padding:10px 16px 6px;font-size:var(--text-meta);font-weight:700;color:hsl(var(--foreground-dim));text-transform:uppercase;letter-spacing:.06em}.pos-open-check>header>span{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;border-radius:999px;background:hsl(var(--status-ok) / .2);color:hsl(var(--status-ok));font-size:.6875rem;font-weight:800}.pos-open-check ul{list-style:none;padding:0 16px 10px;display:grid;gap:5px}.pos-open-check li{display:flex;align-items:flex-start;gap:8px;padding:4px 0}.pos-open-check-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;margin-top:5px;background:hsl(var(--foreground-dim))}.pos-open-check-dot.is-queued{background:hsl(var(--status-warn))}.pos-open-check-dot.is-active{background:hsl(var(--status-ok))}.pos-open-check-dot.is-completed{background:hsl(var(--foreground-dim))}.pos-open-check-body{display:flex;flex-direction:column;min-width:0}.pos-open-check-body strong{font-size:var(--text-body-sm);font-weight:600;color:hsl(var(--foreground));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pos-open-check-meta{font-size:var(--text-meta);color:hsl(var(--foreground-dim));font-variant-numeric:tabular-nums}.pos-board:has(.pos-basket-empty) .pos-basket-clear{display:none}.pos-basket-clear{color:hsl(var(--foreground-muted));font-size:var(--text-body-sm);font-weight:700;background:transparent;padding:4px 8px}.pos-basket-clear:hover{color:hsl(var(--status-error))}.pos-basket-head-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.pos-panel-mode-toggle{display:inline-flex;gap:2px;background:hsl(var(--surface-muted));border-radius:var(--radius-sm);padding:2px}.pos-panel-mode-btn{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:calc(var(--radius-sm) - 1px);background:transparent;color:hsl(var(--foreground-dim));transition:all var(--duration-fast) var(--ease-out)}.pos-panel-mode-btn:hover{color:hsl(var(--foreground));background:hsl(var(--surface))}.pos-panel-mode-btn.is-active{background:hsl(var(--surface-raised));color:hsl(var(--primary));box-shadow:var(--elevation-1)}.pos-board[data-panel-mode=floating]{grid-template-columns:minmax(0,1fr)}.pos-board[data-panel-mode=floating]:has(.pos-basket-empty){grid-template-columns:minmax(0,1fr)}.pos-basket--floating{position:fixed;top:calc(var(--shell-header-h) + 12px);right:12px;bottom:calc(var(--shell-footer-h) + 12px);width:clamp(320px,30vw,420px);z-index:40;border-radius:var(--radius-xl);border:1px solid hsl(var(--border-strong));box-shadow:var(--elevation-3);background:hsl(var(--surface-raised));animation:basket-float-in var(--duration-normal) var(--ease-spring)}@keyframes basket-float-in{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}.pos-board[data-panel-mode=collapsed]{grid-template-columns:minmax(0,1fr)}.pos-board[data-panel-mode=collapsed]:has(.pos-basket-empty){grid-template-columns:minmax(0,1fr)}.pos-basket--collapsed{position:fixed;right:16px;bottom:calc(var(--shell-footer-h) + 16px);z-index:40;background:transparent}.pos-basket-expand-tab{width:56px;height:56px;border-radius:999px;background:hsl(var(--primary));color:hsl(var(--primary-foreground));display:flex;align-items:center;justify-content:center;box-shadow:var(--elevation-2);position:relative;transition:transform var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast)}.pos-basket-expand-tab:hover{transform:scale(1.08);box-shadow:var(--elevation-3)}.pos-basket-expand-tab:active{transform:scale(.96)}.pos-basket-expand-badge{position:absolute;top:-4px;right:-4px;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:hsl(var(--status-critical));color:#fff;font-size:.75rem;font-weight:800;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 6px #0000004d}.pos-basket-stack{flex:1;min-height:0;overflow-y:auto;display:grid;gap:10px;padding:14px 16px;align-content:start}.pos-basket-line{display:grid;gap:8px;padding:12px 14px;border-radius:var(--radius-lg);background:hsl(var(--surface));border:1px solid hsl(var(--border));transition:border-color var(--duration-fast)}.pos-basket-line:hover{border-color:hsl(var(--border-strong))}.pos-basket-line-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:start}.pos-basket-line-head-copy{display:grid;gap:2px;min-width:0}.pos-basket-line-head-copy strong{font-size:var(--text-body);font-weight:700;line-height:1.25;word-break:break-word}.pos-basket-line-section{color:hsl(var(--foreground-muted));font-size:var(--text-meta);font-weight:700;letter-spacing:.06em;text-transform:uppercase}.pos-basket-line-mods{color:hsl(var(--foreground-muted));font-size:var(--text-body-sm);line-height:1.3;word-break:break-word}.pos-basket-line-notes{color:hsl(var(--status-warn));font-size:var(--text-body-sm);font-weight:600;line-height:1.3}.pos-basket-line-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:2px;padding-top:8px;border-top:1px dashed hsl(var(--border))}.pos-qty{display:inline-flex;align-items:center;gap:6px}.pos-qty-btn{width:32px;height:32px;border-radius:999px;background:hsl(var(--surface-muted));color:hsl(var(--foreground));display:inline-flex;align-items:center;justify-content:center;border:0;cursor:pointer}.pos-qty-btn:hover{background:hsl(var(--primary));color:hsl(var(--primary-foreground))}.pos-qty-btn:disabled{opacity:.45;cursor:not-allowed}.pos-qty>span{min-width:24px;text-align:center;font-variant-numeric:tabular-nums;font-weight:800;font-size:var(--text-body)}.pos-basket-line-total{font-weight:800;font-variant-numeric:tabular-nums;font-size:var(--text-body)}.pos-basket-line-remove{color:hsl(var(--foreground-muted));background:transparent;padding:0;width:28px;height:28px;border:1px solid hsl(var(--border));border-radius:999px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;flex-shrink:0}.pos-basket-line-remove:hover{color:hsl(var(--status-danger, var(--status-error)));border-color:hsl(var(--status-danger, var(--status-error)));background:hsl(var(--status-danger-fill, transparent))}.pos-basket-empty{padding:40px 20px;text-align:center;color:hsl(var(--foreground-dim));font-size:var(--text-body-sm);line-height:1.5;display:flex;flex-direction:column;align-items:center;gap:8px}.pos-basket-empty svg{opacity:.35;margin-bottom:4px}.pos-basket-foot{padding:14px 16px;border-top:1px solid hsl(var(--border));display:grid;gap:12px;background:hsl(var(--surface))}.pos-basket-total{display:flex;align-items:baseline;justify-content:space-between;font-weight:800}.pos-basket-total strong:last-child{font-size:var(--text-title-lg);font-variant-numeric:tabular-nums}.pos-basket-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pos-basket-action{min-height:48px;border-radius:var(--radius);font-size:var(--text-body-sm);font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:background var(--duration-fast),opacity var(--duration-fast),transform var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast)}.pos-basket-action:active:not(:disabled){transform:scale(.97)}.pos-basket-action:disabled{opacity:.45;cursor:not-allowed}.pos-basket-actions.primary-send .pos-basket-action-send{background:hsl(var(--status-ok));color:hsl(var(--primary-foreground))}.pos-basket-actions.primary-send .pos-basket-action-pay{background:hsl(var(--surface));color:hsl(var(--foreground));border:1px solid hsl(var(--border-strong))}.pos-basket-actions.primary-send .pos-basket-action-pay:hover:not(:disabled){background:hsl(var(--surface-muted))}.pos-basket-actions.primary-pay .pos-basket-action-pay{background:hsl(var(--primary));color:hsl(var(--primary-foreground))}.pos-basket-actions.primary-pay .pos-basket-action-send{background:hsl(var(--surface));color:hsl(var(--foreground));border:1px solid hsl(var(--border-strong))}.pos-basket-actions.primary-pay .pos-basket-action-send:hover:not(:disabled){background:hsl(var(--surface-muted))}.pos-basket-error{display:flex;align-items:center;gap:6px;font-size:var(--text-meta);color:hsl(var(--status-error));padding:0 2px}.pos-recent-sales{padding:12px 20px;border-top:1px dashed hsl(var(--border));display:grid;gap:4px}.pos-recent-sales strong{font-size:var(--text-meta);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:hsl(var(--foreground-muted))}.pos-recent-sales ul{list-style:none;margin:0;padding:0;display:grid;gap:4px}.pos-recent-sales li{display:flex;justify-content:space-between;font-size:var(--text-body-sm);color:hsl(var(--foreground))}.pos-recent-sales-time{color:hsl(var(--foreground-muted));font-variant-numeric:tabular-nums}.pos-pending-kitchen{padding:12px 20px;border-top:1px dashed hsl(var(--border));display:grid;gap:6px;color:hsl(var(--foreground-muted));font-size:var(--text-body-sm)}.pos-pending-kitchen strong{font-size:var(--text-meta);font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:hsl(var(--foreground))}.pos-loading{display:flex;align-items:center;justify-content:center;gap:10px;padding:48px;color:hsl(var(--foreground-muted))}.pos-spinner{animation:pos-spin 1s linear infinite}@keyframes pos-spin{to{transform:rotate(360deg)}}.pos-modal-backdrop{position:fixed;inset:0;z-index:50;background:#03060cb8;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);display:grid;place-items:center;padding:24px}.pos-modal{width:min(480px,calc(100vw - 48px));background:hsl(var(--surface-raised));border:1px solid hsl(var(--border-strong));border-radius:var(--radius-xl);box-shadow:var(--elevation-3);display:flex;flex-direction:column;max-height:calc(100dvh - 96px);overflow:hidden;animation:modal-enter var(--duration-normal) var(--ease-spring)}@keyframes modal-enter{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.pos-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 24px;border-bottom:1px solid hsl(var(--border))}.pos-modal-head strong{font-size:var(--text-title);font-weight:800}.pos-modal-close{width:36px;height:36px;border-radius:999px;background:hsl(var(--surface-muted));color:hsl(var(--foreground-muted));display:inline-flex;align-items:center;justify-content:center}.pos-modal-body{display:grid;gap:10px;padding:20px 24px;overflow-y:auto}.pos-tender-option{display:flex;align-items:center;gap:14px;padding:16px 18px;border-radius:var(--radius-lg);border:2px solid hsl(var(--border));background:hsl(var(--surface));text-align:left;color:hsl(var(--foreground));font-size:var(--text-body);font-weight:700;cursor:pointer;transition:all var(--duration-fast) var(--ease-out)}.pos-tender-option:hover{border-color:hsl(var(--border-strong));transform:translateY(-1px)}.pos-tender-option.is-active{border-color:hsl(var(--primary));background:hsl(var(--primary) / .08);box-shadow:0 0 0 1px hsl(var(--primary) / .15)}.pos-tender-option svg{color:hsl(var(--primary));flex-shrink:0}.pos-modal-error{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:var(--radius-sm);background:hsl(var(--status-error-fill));color:hsl(var(--status-error));font-size:var(--text-body-sm);font-weight:600}.pos-modal-foot{display:flex;gap:10px;padding:18px 24px;border-top:1px solid hsl(var(--border));background:hsl(var(--surface))}.pos-modal-cancel{flex:1;min-height:44px;border-radius:var(--radius);background:hsl(var(--surface-muted));color:hsl(var(--foreground));font-weight:700}.pos-modal-confirm{flex:2;min-height:44px;border-radius:var(--radius);background:hsl(var(--primary));color:hsl(var(--primary-foreground));font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:8px}.pos-modal-confirm:disabled{opacity:.55;cursor:not-allowed}.pos-modifier-modal{width:min(520px,calc(100vw - 48px));max-height:calc(100dvh - 80px)}.pos-modifier-groups{display:grid;gap:16px}.pos-modifier-group{border:0;padding:0;margin:0}.pos-modifier-group legend{display:flex;align-items:baseline;gap:8px;width:100%;padding-bottom:8px}.pos-modifier-group legend strong{font-size:var(--text-body);font-weight:700}.pos-modifier-constraint{font-size:var(--text-meta);color:hsl(var(--foreground-dim));font-weight:600}.pos-modifier-constraint.is-unmet{color:hsl(var(--status-warn))}.pos-modifier-options{display:grid;gap:6px}.pos-modifier-opt{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:var(--radius);background:hsl(var(--surface));border:2px solid hsl(var(--border));text-align:left;transition:border-color var(--duration-fast),background var(--duration-fast)}.pos-modifier-opt:hover{border-color:hsl(var(--border-strong))}.pos-modifier-opt.is-selected{border-color:hsl(var(--primary));background:hsl(var(--primary) / .08)}.pos-modifier-opt-check{width:22px;height:22px;border-radius:6px;border:2px solid hsl(var(--border-strong));display:inline-flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:800;color:hsl(var(--primary-foreground));flex-shrink:0;transition:background var(--duration-fast),border-color var(--duration-fast)}.pos-modifier-opt.is-selected .pos-modifier-opt-check{background:hsl(var(--primary));border-color:hsl(var(--primary))}.pos-modifier-opt-name{flex:1;font-weight:600;font-size:var(--text-body-sm)}.pos-modifier-opt-price{font-size:var(--text-meta);color:hsl(var(--foreground-muted));font-weight:600;font-variant-numeric:tabular-nums}.pos-bill-sheet{width:min(540px,calc(100vw - 48px));max-height:calc(100dvh - 80px)}.pos-bill-lines{overflow-y:auto}.pos-bill-empty{text-align:center;color:hsl(var(--foreground-dim));padding:24px 0}.pos-bill-table{width:100%;border-collapse:collapse;font-size:var(--text-body-sm)}.pos-bill-table th{text-align:left;font-size:var(--text-meta);font-weight:700;color:hsl(var(--foreground-dim));text-transform:uppercase;letter-spacing:.06em;padding:4px 0 8px;border-bottom:1px solid hsl(var(--border))}.pos-bill-table th:last-child,.pos-bill-table td:last-child{text-align:right}.pos-bill-table th:nth-child(2),.pos-bill-table td:nth-child(2){text-align:center;width:48px}.pos-bill-table tbody td{padding:8px 0;border-bottom:1px solid hsl(var(--border) / .5);vertical-align:top}.pos-bill-table tbody td strong{font-weight:600;display:block}.pos-bill-line-mods{display:block;font-size:var(--text-meta);color:hsl(var(--foreground-dim))}.pos-bill-table tfoot td{padding:12px 0 4px;border-top:2px solid hsl(var(--border-strong));font-size:var(--text-body)}.pos-bill-table tfoot td strong{font-weight:800}.pos-open-check-footer{padding:4px 14px 8px}.pos-open-check-bill-btn{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:var(--radius-sm);background:hsl(var(--surface));color:hsl(var(--primary-strong));font-size:var(--text-meta);font-weight:700;border:1px solid hsl(var(--border));transition:background var(--duration-fast)}.pos-open-check-bill-btn:hover{background:hsl(var(--primary) / .1);border-color:hsl(var(--primary) / .3)}.pos-open-check-void{width:22px;height:22px;border-radius:999px;background:transparent;color:hsl(var(--foreground-dim));display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:color var(--duration-fast),background var(--duration-fast)}.pos-open-check-void:hover{background:hsl(var(--status-critical) / .15);color:hsl(var(--status-critical))}.pos-open-check-void:disabled{opacity:.5;cursor:not-allowed}.pos-discount-row{padding:0 2px}.pos-discount-add{font-size:var(--text-meta);font-weight:600;color:hsl(var(--primary-strong));background:transparent;padding:4px 0}.pos-discount-add:hover{text-decoration:underline}.pos-discount-applied{display:flex;align-items:center;gap:8px;font-size:var(--text-meta)}.pos-discount-label{flex:1;font-weight:600;color:hsl(var(--status-ok))}.pos-discount-amount{font-weight:700;color:hsl(var(--status-ok));font-variant-numeric:tabular-nums}.pos-discount-clear{width:18px;height:18px;border-radius:999px;background:transparent;color:hsl(var(--foreground-dim));display:inline-flex;align-items:center;justify-content:center}.pos-discount-clear:hover{color:hsl(var(--status-critical))}.pos-allergy-row{display:flex;flex-wrap:wrap;gap:4px}.pos-allergy-tag{font-size:.625rem;font-weight:700;padding:2px 6px;border-radius:999px;background:transparent;border:1px solid hsl(var(--border));color:hsl(var(--foreground-dim));text-transform:uppercase;letter-spacing:.04em;line-height:1.4;transition:background var(--duration-fast),color var(--duration-fast),border-color var(--duration-fast)}.pos-allergy-tag:hover{border-color:hsl(var(--border-strong))}.pos-allergy-tag.is-active.is-critical{background:hsl(var(--status-critical-fill));border-color:hsl(var(--status-critical));color:hsl(var(--status-critical))}.pos-allergy-tag.is-active.is-warn{background:hsl(var(--status-warn-fill));border-color:hsl(var(--status-warn));color:hsl(var(--status-warn))}.pos-allergy-tag.is-active.is-info{background:hsl(var(--info-fill));border-color:hsl(var(--info));color:hsl(var(--info))}.pos-allergy-tag.is-active.is-ok{background:hsl(var(--status-ok-fill));border-color:hsl(var(--status-ok));color:hsl(var(--status-ok))}.pos-toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%);z-index:40;display:inline-flex;align-items:center;gap:12px;padding:12px 16px;border-radius:999px;background:hsl(var(--status-success));color:hsl(var(--status-success-foreground, 0 0% 100%));box-shadow:var(--elevation-3);font-weight:700}.pos-toast-close{background:transparent;color:inherit;opacity:.8;width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px}@media(max-width:960px){.pos-board:not([data-panel-mode=floating]):not([data-panel-mode=collapsed]){grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) minmax(0,45vh)}.pos-board:not([data-panel-mode=floating]):not([data-panel-mode=collapsed]):has(.pos-basket-empty){grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto}.pos-catalog{border-right:0;border-bottom:1px solid hsl(var(--border))}.pos-basket:not(.pos-basket--floating):not(.pos-basket--collapsed) .pos-basket-head{padding:12px 16px}.pos-basket:not(.pos-basket--floating):not(.pos-basket--collapsed) .pos-basket-stack{padding:12px 16px}.pos-basket:not(.pos-basket--floating):not(.pos-basket--collapsed) .pos-basket-foot{padding:12px 16px}.pos-panel-mode-toggle{display:none}}.kds-86-btn{display:inline-flex;align-items:center;gap:4px;margin-left:auto;padding:2px 8px;border-radius:999px;font-size:.625rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;background:transparent;border:1px solid hsl(var(--border-strong));color:hsl(var(--foreground-dim));transition:all var(--duration-fast);flex-shrink:0}.kds-86-btn:hover{background:hsl(var(--status-critical) / .12);border-color:hsl(var(--status-critical) / .4);color:hsl(var(--status-critical))}.kds-86-btn.is-active{background:hsl(var(--status-critical));border-color:hsl(var(--status-critical));color:#fff}.kds-86-btn.is-active:hover{background:hsl(var(--status-ok));border-color:hsl(var(--status-ok))}.kds-86-btn:disabled{opacity:.5;cursor:not-allowed}.kds-ticket-line.is-eightysixed{opacity:.5}.kds-ticket-line.is-eightysixed .kds-ticket-line-name{text-decoration:line-through}.kds-eightysix-badge{display:inline-flex;align-items:center;gap:5px;padding:0 10px;height:30px;border-radius:999px;background:hsl(var(--status-critical) / .15);color:hsl(var(--status-critical));font-size:var(--text-meta);font-weight:700;letter-spacing:.02em;border:1px solid hsl(var(--status-critical) / .3)}.kds-group-toggle{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:0 12px;border-radius:999px;border:1px solid hsl(var(--border-strong));background:hsl(var(--surface));color:hsl(var(--foreground-muted));font-size:var(--text-body-sm);font-weight:600;transition:all var(--duration-fast) var(--ease-out)}.kds-group-toggle:hover{color:hsl(var(--foreground));border-color:hsl(var(--foreground-muted))}.kds-group-toggle.is-active{background:hsl(var(--primary) / .16);color:hsl(var(--primary));border-color:hsl(var(--primary) / .55)}.kds-ticket-chip.is-grouped{background:hsl(var(--primary) / .22);color:hsl(var(--primary));font-weight:700}.kds-ticket-advance-refire{background:hsl(var(--status-warn));color:#0e121b}.kds-ticket-advance-refire:hover{background:hsl(var(--status-warn) / .85)}.fpc-shape-square{border-radius:var(--radius)}.fpc-shape-round{border-radius:999px}.fpc-shape-rect{border-radius:var(--radius-lg)}.fpc-overlay{position:fixed;inset:0;z-index:100;background:#0d0e12;display:flex;flex-direction:column;isolation:isolate}.fpc-viewport{flex:1;position:relative;overflow:hidden;cursor:grab}.fpc-viewport.is-panning{cursor:grabbing}.fpc-canvas{position:absolute;top:0;left:0;transform-origin:0 0;background-image:radial-gradient(circle,hsl(var(--foreground-dim) / .22) 1px,transparent 1px);background-size:20px 20px;border-radius:var(--radius);box-shadow:inset 0 0 0 1px hsl(var(--border) / .5)}.fpc-table{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;background:hsl(var(--surface-raised));border:2px solid hsl(var(--border-strong));cursor:pointer;box-shadow:var(--elevation-1);transition:transform var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out);z-index:1}.fpc-table:hover{border-color:hsl(var(--primary) / .55);box-shadow:var(--elevation-2);transform:scale(1.02)}.fpc-table.is-selected{border-color:hsl(var(--primary));box-shadow:0 0 0 3px hsl(var(--primary) / .25),var(--elevation-2);z-index:5}.fpc-table.is-editing{cursor:grab}.fpc-table.is-editing:active{cursor:grabbing;transform:scale(1.04);box-shadow:var(--elevation-3)}.fpc-table-label{font-size:.7rem;font-weight:800;letter-spacing:-.01em;text-align:center;line-height:1.1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;padding:0 4px}.fpc-table-seats{display:inline-flex;align-items:center;gap:2px;font-size:.6rem;font-weight:700;color:hsl(var(--foreground-muted));opacity:.8}.fpc-topbar{position:absolute;top:0;left:0;right:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;background:linear-gradient(180deg,#0d0e12eb,#0d0e12bf);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid hsl(var(--border) / .4)}.fpc-topbar-left{display:flex;align-items:center;gap:12px}.fpc-topbar-back{width:36px;height:36px;border-radius:var(--radius);display:inline-flex;align-items:center;justify-content:center;color:hsl(var(--foreground-muted));background:hsl(var(--surface) / .5);transition:all var(--duration-fast)}.fpc-topbar-back:hover{background:hsl(var(--surface-muted));color:hsl(var(--foreground))}.fpc-topbar-title{display:flex;flex-direction:column;gap:1px}.fpc-topbar-title strong{font-size:var(--text-body);font-weight:700;letter-spacing:-.01em}.fpc-topbar-title span{font-size:var(--text-meta);color:hsl(var(--foreground-dim));font-weight:500}.fpc-topbar-right{display:flex;align-items:center;gap:8px}.fpc-action-btn{width:36px;height:36px;border-radius:var(--radius);display:inline-flex;align-items:center;justify-content:center;color:hsl(var(--foreground-muted));background:hsl(var(--surface) / .5);transition:all var(--duration-fast)}.fpc-action-btn:hover{background:hsl(var(--surface-muted));color:hsl(var(--foreground))}.fpc-save-btn{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 16px;border-radius:var(--radius);background:hsl(var(--primary));color:hsl(var(--primary-foreground));font-size:var(--text-body-sm);font-weight:700;box-shadow:var(--elevation-1);transition:all var(--duration-fast)}.fpc-save-btn:hover{background:hsl(var(--primary-strong));box-shadow:var(--elevation-2);transform:translateY(-1px)}.fpc-save-error{position:absolute;top:66px;left:16px;right:16px;z-index:11;padding:10px 12px;border:1px solid hsl(var(--status-error) / .45);border-radius:var(--radius);background:hsl(var(--status-error-fill));color:hsl(var(--status-error));font-size:var(--text-body-sm);font-weight:650}.fpc-bottombar{position:absolute;bottom:16px;left:50%;transform:translate(-50%);z-index:10;display:flex;align-items:center;gap:6px;padding:6px;border-radius:var(--radius-lg);background:hsl(var(--surface) / .88);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid hsl(var(--border) / .5);box-shadow:var(--elevation-3)}.fpc-tool-group,.fpc-zoom-group{display:flex;align-items:center;gap:2px}.fpc-tool-group+.fpc-zoom-group{margin-left:4px;padding-left:10px;border-left:1px solid hsl(var(--border) / .5)}.fpc-tool-btn{width:38px;height:38px;border-radius:var(--radius);display:inline-flex;align-items:center;justify-content:center;color:hsl(var(--foreground-muted));transition:all var(--duration-fast)}.fpc-tool-btn:hover{background:hsl(var(--surface-muted));color:hsl(var(--foreground))}.fpc-tool-btn.is-active{background:hsl(var(--primary) / .16);color:hsl(var(--primary));box-shadow:inset 0 0 0 1px hsl(var(--primary) / .3)}.fpc-zoom-label{min-width:52px;height:32px;padding:0 6px;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;font-size:var(--text-meta);font-weight:700;font-variant-numeric:tabular-nums;color:hsl(var(--foreground-muted));transition:all var(--duration-fast)}.fpc-zoom-label:hover{background:hsl(var(--surface-muted));color:hsl(var(--foreground))}.fpc-props{position:absolute;top:56px;right:0;bottom:0;width:clamp(240px,30vw,300px);z-index:10;background:hsl(var(--surface) / .92);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-left:1px solid hsl(var(--border) / .5);display:flex;flex-direction:column;overflow-y:auto;animation:fpc-slide-in var(--duration-normal) var(--ease-out)}@media(max-width:600px){.fpc-props{width:100%;border-left:0;border-top:1px solid hsl(var(--border) / .5);top:auto;bottom:0;max-height:55vh;border-radius:var(--radius-xl) var(--radius-xl) 0 0}.fpc-bottombar{left:12px;right:12px;transform:none;justify-content:center}.fpc-tool-btn{width:34px;height:34px}.fpc-topbar{padding:8px 12px}}@keyframes fpc-slide-in{0%{transform:translate(16px);opacity:0}to{transform:translate(0);opacity:1}}.fpc-props-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid hsl(var(--border) / .4)}.fpc-props-head strong{font-size:var(--text-body-sm);font-weight:700;letter-spacing:-.01em}.fpc-props-close{width:28px;height:28px;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;color:hsl(var(--foreground-dim));transition:all var(--duration-fast)}.fpc-props-close:hover{background:hsl(var(--surface-muted));color:hsl(var(--foreground))}.fpc-props-body{display:grid;gap:16px;padding:16px}.fpc-field{display:grid;gap:5px}.fpc-field>span,.fpc-field>legend{font-size:var(--text-meta);font-weight:700;color:hsl(var(--foreground-muted));text-transform:uppercase;letter-spacing:.06em}.fpc-field input,.fpc-field select{min-height:var(--control-height-sm);padding:0 12px;border-radius:var(--radius-sm);border:1px solid hsl(var(--border-strong));background:hsl(var(--bg));color:hsl(var(--foreground));font:inherit;font-size:var(--text-body-sm);transition:border-color var(--duration-fast),box-shadow var(--duration-fast)}.fpc-field input:focus,.fpc-field select:focus{outline:none;border-color:hsl(var(--primary) / .5);box-shadow:0 0 0 2px hsl(var(--primary) / .12)}.fpc-shape-row{display:flex;gap:4px}.fpc-shape-btn{display:inline-flex;align-items:center;gap:5px;flex:1;min-height:34px;padding:0 10px;border-radius:var(--radius-sm);background:hsl(var(--surface-muted));color:hsl(var(--foreground-muted));font-size:var(--text-meta);font-weight:600;justify-content:center;transition:all var(--duration-fast)}.fpc-shape-btn:hover{background:hsl(var(--surface-raised));color:hsl(var(--foreground))}.fpc-shape-btn.is-active{background:hsl(var(--primary) / .16);color:hsl(var(--primary));box-shadow:inset 0 0 0 1px hsl(var(--primary) / .3)}.fpc-delete-btn{display:inline-flex;align-items:center;gap:6px;min-height:var(--control-height-sm);padding:0 14px;border-radius:var(--radius);background:hsl(var(--status-critical) / .08);color:hsl(var(--status-critical));font-size:var(--text-body-sm);font-weight:600;transition:all var(--duration-fast)}.fpc-delete-btn:hover{background:hsl(var(--status-critical) / .18);transform:translateY(-1px)}.fpc-pos-wrap{position:relative;padding:10px 0;overflow-x:auto;display:flex;justify-content:center}.fpc-pos-map{position:relative;background-image:radial-gradient(circle,hsl(var(--foreground-dim) / .12) 1px,transparent 1px);background-size:12px 12px;border-radius:var(--radius);border:1px solid hsl(var(--border) / .4)}.fpc-pos-table{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;background:hsl(var(--surface-raised));border:2px solid hsl(var(--border-strong));cursor:pointer;transition:transform var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out),background var(--duration-fast) var(--ease-out);z-index:1}.fpc-pos-table strong{font-size:.625rem;font-weight:800;letter-spacing:-.01em;text-align:center;line-height:1.1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;padding:0 3px}.fpc-pos-table:hover{border-color:hsl(var(--primary) / .5);box-shadow:var(--elevation-1);transform:scale(1.04);z-index:3}.fpc-pos-table.is-selected{border-color:hsl(var(--primary));box-shadow:0 0 0 2px hsl(var(--primary) / .3),var(--elevation-1);z-index:5}.fpc-pos-table.is-available{border-color:hsl(var(--status-ok) / .45);background:hsl(var(--status-ok) / .06)}.fpc-pos-table.is-occupied{border-color:hsl(var(--status-warn));background:hsl(var(--status-warn) / .1)}.fpc-pos-table.is-urgent{border-color:hsl(var(--status-critical));background:hsl(var(--status-critical) / .1)}.fpc-pos-table.is-available.is-selected{border-color:hsl(var(--primary));background:hsl(var(--primary) / .1)}.fpc-pos-table.is-occupied.is-selected,.fpc-pos-table.is-urgent.is-selected{box-shadow:0 0 0 2px hsl(var(--primary) / .4),var(--elevation-1)}.fpc-pos-badge{position:absolute;top:-5px;right:-5px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:hsl(var(--status-warn));color:#0e121b;font-size:.55rem;font-weight:800;display:inline-flex;align-items:center;justify-content:center;z-index:2;box-shadow:0 1px 3px #0000004d}.fpc-pos-table.is-urgent .fpc-pos-badge{background:hsl(var(--status-critical));color:#fff}.fpc-pos-edit{position:absolute;top:6px;right:6px;width:24px;height:24px;border-radius:999px;background:hsl(var(--surface-muted) / .8);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:hsl(var(--foreground-dim));display:inline-flex;align-items:center;justify-content:center;z-index:5;transition:all var(--duration-fast)}.fpc-pos-edit:hover{background:hsl(var(--primary) / .15);color:hsl(var(--primary));transform:scale(1.1)}.fpc-pos-empty{display:flex;align-items:center;gap:10px;padding:12px 0;color:hsl(var(--foreground-dim));font-size:var(--text-body-sm)}.fpc-pos-setup{display:inline-flex;align-items:center;gap:4px;padding:5px 12px;border-radius:999px;background:hsl(var(--primary) / .12);color:hsl(var(--primary));font-size:var(--text-meta);font-weight:700;transition:all var(--duration-fast)}.fpc-pos-setup:hover{background:hsl(var(--primary) / .22);transform:translateY(-1px)}.pos-target-spacer{flex:1}.pos-target-chip.is-map{background:hsl(var(--surface-muted));border-color:hsl(var(--border));color:hsl(var(--foreground-dim))}.pos-target-chip.is-map.is-active{background:hsl(var(--primary) / .12);border-color:hsl(var(--primary) / .4);color:hsl(var(--primary))}.pos-bill-foot{flex-direction:column;gap:10px;align-items:stretch}.pos-split-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.pos-split-label{font-size:var(--text-meta);font-weight:700;color:hsl(var(--foreground-muted));text-transform:uppercase;letter-spacing:.04em}.pos-split-btn{min-height:28px;padding:0 10px;border-radius:999px;border:1px solid hsl(var(--border-strong));background:hsl(var(--surface));color:hsl(var(--foreground-muted));font-size:var(--text-meta);font-weight:700;transition:all var(--duration-fast)}.pos-split-btn:hover{border-color:hsl(var(--primary) / .4);color:hsl(var(--foreground))}.pos-split-btn.is-active{background:hsl(var(--primary) / .15);border-color:hsl(var(--primary) / .5);color:hsl(var(--primary))}.pos-split-btn:disabled{opacity:.5;cursor:not-allowed}.pos-split-summary{display:flex;align-items:baseline;gap:8px;padding:6px 0}.pos-split-summary strong{font-size:var(--text-title);font-weight:800;color:hsl(var(--primary))}.pos-split-summary span{font-size:var(--text-body-sm);color:hsl(var(--foreground-muted))}.pos-split-progress{font-size:var(--text-meta);font-weight:600;color:hsl(var(--status-ok));padding:2px 0}.pos-bill-actions{display:flex;gap:8px}.pos-bill-actions .pos-modal-confirm{flex:1}.pos-receipt{display:none}.pos-modal-head-actions{display:flex;align-items:center;gap:8px}.pos-print-btn{width:36px;height:36px;border-radius:var(--radius);display:inline-flex;align-items:center;justify-content:center;background:hsl(var(--surface-muted));color:hsl(var(--foreground-muted));transition:color var(--duration-fast),background var(--duration-fast)}.pos-print-btn:hover:not(:disabled){background:hsl(var(--primary) / .12);color:hsl(var(--primary))}.pos-print-btn:disabled{opacity:.4;cursor:not-allowed}@media print{body *{visibility:hidden}.pos-receipt,.pos-receipt *{visibility:visible}.pos-receipt{display:block;position:fixed;top:0;left:0;width:80mm;padding:8mm 4mm;background:#fff;color:#000;font-family:Courier New,monospace;font-size:12px;line-height:1.4;z-index:99999}.pos-receipt-header{text-align:center;margin-bottom:8px}.pos-receipt-venue{display:block;font-size:16px;font-weight:800;letter-spacing:-.01em;margin-bottom:4px}.pos-receipt-table{display:block;font-size:14px;font-weight:700;margin-bottom:2px}.pos-receipt-date{display:block;font-size:11px;color:#555}.pos-receipt-divider{border-top:1px dashed #000;margin:6px 0}.pos-receipt-items{width:100%;border-collapse:collapse}.pos-receipt-items td{padding:2px 0;vertical-align:top}.pos-receipt-item-name{font-weight:600}.pos-receipt-item-mods{display:block;font-size:10px;color:#666;font-weight:400}.pos-receipt-item-qty{text-align:center;width:24px;padding:2px 4px}.pos-receipt-item-price{text-align:right;font-variant-numeric:tabular-nums}.pos-receipt-total{display:flex;justify-content:space-between;font-size:14px;font-weight:800;padding:4px 0}.pos-receipt-footer{text-align:center;margin-top:8px;font-size:12px}.pos-receipt{page-break-inside:avoid}}.stn-dialog-backdrop{position:fixed;inset:0;z-index:9999;background:#03060cc2;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:grid;place-items:center;padding:24px;animation:stn-dialog-fade-in var(--duration-fast) ease-out}@keyframes stn-dialog-fade-in{0%{opacity:0}to{opacity:1}}.stn-dialog{width:min(420px,calc(100vw - 48px));background:hsl(var(--surface-raised));border:1px solid hsl(var(--border-strong));border-radius:var(--radius-xl);box-shadow:var(--elevation-3);padding:28px 28px 22px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;animation:stn-dialog-enter var(--duration-normal) var(--ease-spring)}@keyframes stn-dialog-enter{0%{opacity:0;transform:scale(.92) translateY(12px)}to{opacity:1;transform:scale(1) translateY(0)}}.stn-dialog-icon{display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:999px;background:hsl(var(--surface-muted));margin-bottom:8px;flex-shrink:0}.stn-dialog-title{font-size:var(--text-title);font-weight:800;color:hsl(var(--foreground));line-height:1.2;margin:0;padding:0}.stn-dialog-message{font-size:var(--text-body-sm);color:hsl(var(--foreground-muted));line-height:1.5;max-width:340px;margin:4px 0 12px;white-space:pre-line}.stn-dialog-input{width:100%;min-height:var(--control-height-sm);padding:10px 14px;border-radius:var(--radius);border:2px solid hsl(var(--border-strong));background:hsl(var(--surface));color:hsl(var(--foreground));font:inherit;font-size:var(--text-body);font-weight:600;outline:none;transition:border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out);margin-bottom:6px}.stn-dialog-input:focus{border-color:hsl(var(--primary));box-shadow:0 0 0 3px hsl(var(--primary) / .18)}.stn-dialog-input::placeholder{color:hsl(var(--foreground-dim));font-weight:400}.stn-dialog-actions{display:flex;gap:10px;width:100%;margin-top:8px}.stn-dialog-btn{flex:1;min-height:var(--control-height-sm);border-radius:var(--radius);font-size:var(--text-body-sm);font-weight:700;border:none;cursor:pointer;transition:all var(--duration-fast) var(--ease-out)}.stn-dialog-btn--cancel{background:hsl(var(--surface-muted));color:hsl(var(--foreground-muted))}.stn-dialog-btn--cancel:hover{background:hsl(var(--border));color:hsl(var(--foreground))}.stn-dialog-btn--confirm{background:hsl(var(--primary));color:hsl(var(--primary-foreground))}.stn-dialog-btn--confirm:hover{background:hsl(var(--primary-strong));transform:translateY(-1px)}.stn-dialog-btn--confirm:active{transform:translateY(0)}.stn-dialog-btn--confirm.is-danger{background:hsl(var(--status-critical));color:#fff}.stn-dialog-btn--confirm.is-danger:hover{filter:brightness(1.12)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.tqp-overlay{position:fixed;inset:0;z-index:200;background:hsl(var(--surface));display:flex;flex-direction:column;isolation:isolate}.tqp-topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px;background:hsl(var(--surface-raised));border-bottom:1px solid hsl(var(--border))}.tqp-topbar-left{display:flex;align-items:center;gap:12px}.tqp-topbar-back{display:inline-flex;align-items:center;justify-content:center;height:36px;width:36px;border:1px solid hsl(var(--border));background:transparent;border-radius:var(--radius);color:hsl(var(--foreground));cursor:pointer}.tqp-topbar-back:hover{background:hsl(var(--surface-muted))}.tqp-topbar-title{display:flex;flex-direction:column;gap:1px}.tqp-topbar-title strong{font-size:1rem;font-weight:700}.tqp-topbar-title span{font-size:.78rem;color:hsl(var(--foreground-dim))}.tqp-topbar-right{display:flex;gap:8px;align-items:center}.tqp-action-btn{display:inline-flex;align-items:center;justify-content:center;height:36px;width:36px;border:1px solid hsl(var(--border));background:transparent;border-radius:var(--radius);color:hsl(var(--foreground));cursor:pointer}.tqp-action-btn:hover{background:hsl(var(--surface-muted))}.tqp-action-btn:disabled{opacity:.4;cursor:not-allowed}.tqp-sync-btn{display:inline-flex;align-items:center;gap:8px;height:36px;padding:0 14px;border-radius:var(--radius);background:hsl(var(--primary));border:1px solid hsl(var(--primary));color:hsl(var(--primary-foreground));font-weight:600;font-size:.85rem;cursor:pointer;transition:background var(--duration-fast) var(--ease-out)}.tqp-sync-btn:hover:not(:disabled){background:hsl(var(--primary-strong))}.tqp-sync-btn:disabled{opacity:.5;cursor:not-allowed}.tqp-body{flex:1;overflow:auto;padding:20px;display:flex;flex-direction:column;gap:16px}.tqp-alert{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border-radius:var(--radius);background:#d926261f;border:1px solid hsl(0 70% 50% / .4);color:hsl(var(--foreground));font-size:.85rem;align-self:flex-start}.tqp-report{padding:10px 14px;border-radius:var(--radius);background:#39ac6026;border:1px solid hsl(140 50% 45% / .4);color:hsl(var(--foreground));font-size:.85rem;align-self:flex-start}.tqp-report.is-partial{background:#eead2b26;border-color:#eead2b73}.tqp-empty{padding:48px 20px;border:1px dashed hsl(var(--border-strong));border-radius:var(--radius);text-align:center;color:hsl(var(--foreground-muted));display:flex;flex-direction:column;gap:8px;align-items:center}.tqp-empty strong{font-size:1.05rem;color:hsl(var(--foreground))}.tqp-empty p{margin:0}.tqp-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}.tqp-card{display:grid;grid-template-columns:140px 1fr;gap:14px;padding:12px;background:hsl(var(--surface-raised));border:1px solid hsl(var(--border));border-radius:var(--radius)}.tqp-card-qr{width:140px;height:140px;padding:0;background:#fff;border:1px solid hsl(var(--border));border-radius:10px;cursor:pointer;overflow:hidden;display:flex;align-items:center;justify-content:center}.tqp-card-qr img{width:100%;height:100%;object-fit:contain}.tqp-card-qr-empty{color:#4d4d4d}.tqp-card-body{display:flex;flex-direction:column;gap:8px;min-width:0}.tqp-card-title{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.tqp-card-title strong{font-size:.95rem;font-weight:700}.tqp-card-zone{font-size:.72rem;padding:2px 8px;border-radius:999px;background:hsl(var(--primary) / .15);color:hsl(var(--primary-strong))}.tqp-card-stats{display:flex;gap:10px;font-size:.8rem;color:hsl(var(--foreground-muted))}.tqp-card-stats strong{color:hsl(var(--foreground));font-weight:700}.tqp-card-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto}.tqp-card-btn{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 10px;background:transparent;border:1px solid hsl(var(--border));border-radius:var(--radius);color:hsl(var(--foreground));font-size:.78rem;cursor:pointer;text-decoration:none}.tqp-card-btn:hover:not(:disabled){background:hsl(var(--surface-muted))}.tqp-card-btn:disabled{opacity:.4;cursor:not-allowed}@keyframes tqp-spin{to{transform:rotate(360deg)}}.tqp-spin{animation:tqp-spin .9s linear infinite}.tqp-fullscreen{position:fixed;inset:0;z-index:300;background:#000000f0;display:flex;align-items:center;justify-content:center;padding:24px;cursor:zoom-out}.tqp-fullscreen-card{position:relative;background:#fff;border-radius:24px;padding:24px 24px 28px;display:flex;flex-direction:column;align-items:center;gap:18px;max-width:min(92vw,560px);cursor:default}.tqp-fullscreen-card img{width:min(72vmin,480px);height:min(72vmin,480px);display:block}.tqp-fullscreen-placeholder{width:min(72vmin,480px);height:min(72vmin,480px);display:flex;align-items:center;justify-content:center;color:#999;background:#f0f0f0;border-radius:12px}.tqp-fullscreen-close{position:absolute;top:12px;right:12px;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border:none;background:#0000000f;border-radius:50%;color:#111;cursor:pointer}.tqp-fullscreen-close:hover{background:#0000001f}.tqp-fullscreen-label{display:flex;flex-direction:column;align-items:center;gap:4px;color:#111}.tqp-fullscreen-label strong{font-size:1.6rem;font-weight:800;letter-spacing:-.01em}.tqp-fullscreen-label span{font-size:.9rem;color:#555}.tqp-fullscreen-label small{margin-top:10px;font-size:.72rem;text-transform:uppercase;letter-spacing:.14em;color:#888}.tqp-pos-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;background:hsl(var(--surface-muted));border:1px solid hsl(var(--border));color:hsl(var(--foreground));font-size:.72rem;font-weight:600;cursor:pointer}.tqp-pos-chip:hover{background:hsl(var(--surface-raised));border-color:hsl(var(--primary) / .4)}
