@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;450;500;550;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap";:root{--bg: #fafafa;--surface: #ffffff;--surface-2: #f5f5f5;--border: #ebebeb;--border-strong: #e0e0e0;--text: #0a0a0a;--text-2: #525252;--text-3: #a3a3a3;--accent: #4f46e5;--accent-soft: #eef2ff;--accent-text: #3730a3;--green: #16a34a;--green-soft: #dcfce7;--amber: #d97706;--amber-soft: #fef3c7;--red: #dc2626;--red-soft: #fee2e2;--blue: #2563eb;--blue-soft: #dbeafe;--shadow-xs: 0 1px 2px rgba(15,23,42,.04);--shadow-sm: 0 1px 2px rgba(15,23,42,.04), 0 1px 3px rgba(15,23,42,.06);--shadow-md: 0 4px 12px rgba(15,23,42,.06), 0 1px 3px rgba(15,23,42,.04);--shadow-lg: 0 16px 40px -8px rgba(15,23,42,.12), 0 4px 12px rgba(15,23,42,.06);--radius: 10px;--radius-lg: 14px;--ease: cubic-bezier(.16, 1, .3, 1);--ease-snappy: cubic-bezier(.4, 0, .2, 1);--font: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--mono: "JetBrains Mono", monospace}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.app-shell{display:grid;grid-template-columns:240px 1fr;min-height:100vh}.app-shell.login-shell{grid-template-columns:1fr}.sidebar{border-right:1px solid var(--border);background:var(--surface);display:flex;flex-direction:column;height:100vh;overflow:auto;padding:16px 12px;position:sticky;top:0}.brand{display:flex;align-items:center;gap:10px;padding:6px 10px 18px}.brand-mark{display:grid;width:30px;height:30px;place-items:center;border-radius:8px;background:linear-gradient(135deg,#4f46e5,#7c3aed);color:#fff;font-weight:800;font-size:13px;letter-spacing:-.02em;box-shadow:0 1px 2px #4f46e54d,inset 0 1px #fff3}.brand-name{font-size:14.5px;font-weight:600;letter-spacing:-.02em}.brand-name span{color:var(--text-3);font-weight:450}.cmdk{align-items:center;background:var(--surface-2);border:1px solid var(--border);border-radius:8px;color:var(--text-3);display:flex;gap:8px;margin:0 2px 14px;padding:7px 10px}.cmdk svg{flex-shrink:0;width:14px;height:14px}.cmdk input{background:transparent;border:0;color:var(--text);flex:1;min-width:0;outline:0;padding:0}.kbd-wrap{display:flex;gap:2px;margin-left:auto}.kbd{background:var(--surface);border:1px solid var(--border);border-bottom-width:1.5px;border-radius:4px;color:var(--text-2);font-size:10.5px;font-weight:500;line-height:1.4;padding:1px 5px}.nav-list{display:flex;flex-direction:column;gap:6px}.nav-item{align-items:center;display:flex;gap:10px;width:100%;border:0;border-radius:7px;background:transparent;color:var(--text-2);cursor:pointer;font-family:var(--font);font-size:13.5px;font-weight:450;margin:0 2px 1px;padding:7px 10px;position:relative;text-align:left;transition:background .18s var(--ease),color .18s var(--ease)}.nav-item:hover,.nav-item.active{background:var(--surface-2);color:var(--text)}.nav-item.active{font-weight:550}.nav-item.active:before{background:var(--accent);border-radius:0 3px 3px 0;content:"";height:18px;left:-2px;position:absolute;top:50%;transform:translateY(-50%);width:3px}.nav-item svg{flex-shrink:0;opacity:.7;width:16px;height:16px}.nav-item.active svg{color:var(--accent);opacity:1}.nav-item span:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-sec{color:var(--text-3);font-size:10.5px;font-weight:600;letter-spacing:.08em;padding:10px 12px 4px;text-transform:uppercase}.nav-count{background:var(--surface-2);border-radius:5px;color:var(--text-2);font-size:11px;font-variant-numeric:tabular-nums;font-weight:500;margin-left:auto;padding:1px 6px}.nav-item.active .nav-count{background:var(--accent-soft);color:var(--accent-text)}.nav-dot{background:var(--green);border-radius:50%;box-shadow:0 0 0 3px var(--green-soft);height:6px;margin-left:auto;width:6px}.side-foot{border-top:1px solid var(--border);margin-top:auto;padding:10px 8px 4px}.workspace-switcher{align-items:center;background:transparent;border:0;border-radius:8px;color:inherit;cursor:pointer;display:flex;gap:10px;padding:8px;text-align:left;width:100%}.workspace-switcher:hover{background:var(--surface-2)}.workspace-avatar{align-items:center;background:linear-gradient(135deg,#f97316,#dc2626);border-radius:7px;color:#fff;display:flex;flex-shrink:0;font-size:11.5px;font-weight:700;height:30px;justify-content:center;width:30px}.workspace-info{flex:1;min-width:0}.workspace-info strong,.workspace-info span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspace-info strong{font-size:13px;font-weight:550}.workspace-info span{color:var(--text-3);font-size:11.5px}.workspace{padding:28px}.page-header,.panel-header{display:flex;align-items:center;justify-content:space-between;gap:18px}.header-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.eyebrow{margin:0 0 6px;color:var(--text-3);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}h1,h2,p{margin-top:0}h1{margin-bottom:0;font-size:28px;letter-spacing:0}h2{margin-bottom:6px;font-size:18px}p{color:var(--text-2)}.badge{border-radius:999px;font-size:12px;font-weight:700;padding:6px 10px}.badge.success{background:var(--green-soft);color:var(--green)}.panel{margin-top:24px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm);padding:20px}.panel.narrow{max-width:460px}.panel-link{color:var(--accent-text);font-weight:700}.button{border:0;border-radius:var(--radius);cursor:pointer;font-family:var(--font);font-size:14px;font-weight:700;padding:10px 14px;transition:background .18s var(--ease),color .18s var(--ease),box-shadow .18s var(--ease)}.button.primary{background:var(--accent);color:#fff;box-shadow:var(--shadow-xs)}.button.secondary{background:var(--surface-2);color:var(--text);border:1px solid var(--border)}.button.secondary.danger{color:var(--red)}.button-row{display:flex;flex-wrap:wrap;gap:10px}.button:disabled{cursor:not-allowed;opacity:.55}.button.link{background:transparent;color:var(--accent-text);padding-inline:0;text-align:left}.button:hover{box-shadow:var(--shadow-md)}.button.link:hover{box-shadow:none}.form-grid{display:grid;gap:14px}label{display:grid;gap:6px;color:var(--text-2);font-size:12px;font-weight:700}.inline-field{display:flex;align-items:center;gap:8px}.check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.inline-field input{width:auto}input,select,textarea{width:100%;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface);color:var(--text);font:500 14px var(--font);outline:0;padding:11px 12px}textarea{min-height:92px;resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.setup-box{display:grid;gap:6px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);padding:12px}.setup-box span{color:var(--text-2);font-size:13px}code,.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.toast{margin-top:18px;border-radius:var(--radius);box-shadow:var(--shadow-sm);font-size:14px;font-weight:700;padding:12px 14px}.toast.error{background:var(--red-soft);color:var(--red)}.form-error{background:var(--red-soft);border-radius:var(--radius);color:var(--red);font-size:13px;font-weight:800;padding:10px 12px}.helper-card{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-2);font-size:13px;font-weight:700;padding:12px 14px}.kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:18px}.kpi-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);padding:16px}.kpi-card span,.kpi-card small{display:block;color:var(--text-3);font-size:12px}.kpi-card strong{display:block;margin:8px 0 6px;font-size:20px;font-variant-numeric:tabular-nums}.admin-stack{display:grid;gap:18px}.wide-form{width:100%}.form-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.form-row.compact{grid-template-columns:minmax(220px,320px) max-content;align-items:end}.layout-settings-panel{padding:12px 16px}.layout-settings-panel .panel-header{align-items:flex-start;margin-bottom:8px}.layout-settings-row{grid-template-columns:240px 92px 160px;gap:10px}.action-row,.row-actions{display:flex;flex-wrap:wrap;gap:8px}.binding-groups{display:grid;gap:12px;margin-top:16px}.binding-group{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.binding-group summary{align-items:center;cursor:pointer;display:flex;gap:12px;justify-content:space-between;padding:14px 16px}.binding-group summary strong,.binding-group summary small{display:block}.binding-group summary small{color:var(--text-3);font-size:12px;margin-top:2px}.compact-table{margin:0;padding:0 12px 12px}.color-control{display:grid;grid-template-columns:56px minmax(160px,1fr) auto;gap:8px;align-items:center}.color-control input[type=color]{width:56px;height:38px;padding:4px;cursor:pointer}.color-button-preview{display:flex;min-height:38px;align-items:center;justify-content:center;border-radius:var(--radius);box-shadow:inset 0 0 0 1px #00000024;color:#fff;font-size:13px;font-weight:800;padding:0 12px}.color-value{color:var(--text-3);font-family:var(--mono);font-size:12px}.field-note{align-self:end;color:var(--text-2);font-size:12px;line-height:1.4;padding-bottom:10px}.queue-button-board{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));gap:12px;margin-top:16px}.queue-display-button{border:0;border-radius:var(--radius);box-shadow:inset 0 0 0 1px #00000024;cursor:pointer;min-height:64px;padding:12px;text-align:left}.queue-display-button span{display:block;font-size:15px;font-weight:800}.queue-display-button small{display:block;font-family:var(--mono);font-size:11px;margin-top:6px;opacity:.82}.queue-button-cell{display:flex;gap:10px;align-items:center}.queue-color-dot{width:14px;height:14px;border:1px solid var(--border-strong);border-radius:999px;flex:0 0 auto}.logo-preview{display:flex;gap:12px;align-items:center}.logo-preview img{max-width:180px;max-height:72px;border:1px solid var(--border);border-radius:var(--radius);object-fit:contain;padding:8px}.layout-editor{display:grid;grid-template-columns:220px minmax(320px,1fr) 260px;gap:18px}.layout-fullscreen{background:var(--bg);grid-template-columns:260px minmax(560px,1fr) 300px;top:12px;right:12px;bottom:12px;left:12px;overflow:auto;padding:18px;position:fixed;z-index:30}.layout-fullscreen-actions{align-items:center;display:flex;gap:8px;grid-column:1 / -1;justify-content:center}.layout-fullscreen-actions .button{flex:0 0 auto}.layout-fullscreen .ticket-layout-canvas{height:780px;width:520px}.layout-tools,.layout-properties{align-self:start}.layout-tool{align-items:center;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);cursor:grab;display:flex;justify-content:space-between;margin-top:8px;padding:10px;width:100%}.layout-tool.active,.ticket-field.selected{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.layout-tool span{font-weight:800}.layout-tool small{color:var(--text-3)}.layout-workspace{display:grid;justify-content:center}.ticket-layout-canvas{background:#fff;border:1px solid var(--border-strong);border-radius:8px;box-shadow:var(--shadow-md);height:560px;margin:0 auto;overflow:hidden;position:relative;width:374px}.ticket-layout-canvas:before{background-image:linear-gradient(rgb(224 224 224 / 55%) 1px,transparent 1px),linear-gradient(90deg,rgb(224 224 224 / 55%) 1px,transparent 1px),linear-gradient(var(--border-strong) 1px,transparent 1px),linear-gradient(90deg,var(--border-strong) 1px,transparent 1px);background-size:12px 12px,12px 12px,60px 60px,60px 60px;content:"";top:0;right:0;bottom:0;left:0;opacity:.45;position:absolute}.ticket-layout-canvas:after{background:linear-gradient(#f8fafc,#f8fafc) top left / 100% 18px no-repeat,linear-gradient(#f8fafc,#f8fafc) top left / 18px 100% no-repeat,repeating-linear-gradient(90deg,#94a3b8 0 1px,transparent 1px 12px) top left / 100% 18px no-repeat,repeating-linear-gradient(180deg,#94a3b8 0 1px,transparent 1px 12px) top left / 18px 100% no-repeat;content:"";top:0;right:0;bottom:0;left:0;pointer-events:none;position:absolute}.ticket-field{align-items:center;background:#f5f5f5eb;border:1px dashed var(--border-strong);border-radius:6px;cursor:grab;display:flex;font-weight:800;justify-content:center;line-height:1;overflow:hidden;padding:4px;position:absolute;text-align:center;z-index:1}.ticket-field img{max-height:100%;max-width:100%;object-fit:contain}.qr-preview{align-items:center;aspect-ratio:1;background:repeating-linear-gradient(45deg,#111 0,#111 4px,#fff 4px,#fff 8px);color:#fff;display:grid;font-family:var(--mono);font-size:10px;height:100%;justify-content:center;width:auto}.home-grid{display:grid;gap:18px}.simulator-shell{background:#f8fafc;min-height:100vh;padding:24px}.kiosk-shell{height:100vh;min-height:0;overflow:hidden;padding:clamp(10px,2vh,22px)}.kiosk-shell .simulator-header{display:none}.simulator-header{align-items:center;display:flex;gap:18px;justify-content:space-between;margin:0 auto 22px;max-width:1180px}.simulator-header span{color:var(--text-3);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.simulator-header h1{margin:4px 0}.simulator-header p,.simulator-card p{color:var(--text-2);margin:0}.totem-simulator,.display-simulator,.attendant-simulator,.player-simulator{display:grid;gap:18px;margin:0 auto;max-width:1180px}.totem-simulator{grid-template-columns:minmax(320px,1fr) 320px}.display-simulator,.attendant-simulator{grid-template-columns:minmax(320px,1fr) 360px}.totem-screen,.simulator-card,.display-current,.player-stage{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:22px}.totem-screen{min-height:620px;position:relative;text-align:center}.pairing-card{margin:80px auto 0;max-width:520px}.totem-screen h2{font-size:34px;margin:18px 0 6px}.totem-logo{display:block;height:clamp(44px,8vh,78px);margin:0 auto 12px;max-width:min(420px,80%);object-fit:contain}.totem-buttons{display:grid;gap:16px;margin:34px auto 0;max-width:560px}.totem-buttons button{border:0;border-radius:var(--radius);cursor:pointer;font-size:24px;font-weight:900;min-height:92px;padding:16px}.totem-buttons button:disabled{cursor:not-allowed;filter:grayscale(.35);opacity:.42}.totem-buttons span,.sim-ticket span{display:block;font-size:12px;font-weight:700;margin-top:4px;opacity:.82}.ticket-delivery-panel,.digital-ticket-panel{border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);display:grid;gap:12px;margin:24px auto 0;max-width:520px;padding:20px}.ticket-delivery-panel>span,.digital-ticket-panel>span,.digital-ticket-panel small{color:var(--text-2);font-weight:800}.ticket-delivery-panel h3{font-size:26px;margin:0}.ticket-delivery-panel p,.digital-ticket-panel p{color:var(--text-2);margin:0}.ticket-delivery-timeout{color:var(--red);font-weight:800}.ticket-delivery-actions{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}.digital-ticket-panel{justify-items:center}.digital-ticket-panel svg{background:#fff;border:12px solid #fff;border-radius:var(--radius);box-shadow:var(--shadow-md)}.digital-ticket-warning{border:1px dashed var(--border);border-radius:var(--radius);color:var(--red);font-weight:800;padding:18px;text-align:center}.digital-ticket-panel strong{font-family:var(--mono);font-size:42px}.followup-choice{display:grid;gap:8px;justify-items:center;width:100%}.followup-choice>span{color:var(--text-2);font-size:13px;font-weight:800}.followup-options{display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.totem-device-status{align-items:center;bottom:12px;color:var(--text-3);display:flex;font-size:11px;gap:10px;justify-content:center;left:16px;position:absolute;right:16px}.totem-device-status span:first-child{color:var(--green);font-weight:900;text-transform:uppercase}.totem-offline-marquee{background:#111827;border-radius:999px;bottom:38px;color:#fff7ed;font-size:12px;font-weight:900;left:20px;overflow:hidden;padding:8px 0;position:absolute;right:20px;white-space:nowrap;z-index:9}.totem-offline-marquee span{animation:offlineMarquee 14s linear infinite;display:inline-block;min-width:100%;padding-left:100%}@keyframes offlineMarquee{0%{transform:translate(0)}to{transform:translate(-100%)}}.kiosk-shell .totem-simulator,.kiosk-shell .display-simulator,.kiosk-shell .attendant-simulator{grid-template-columns:minmax(0,1fr) minmax(220px,300px);height:100%;max-width:none}.kiosk-shell .totem-screen{display:flex;flex-direction:column;justify-content:center;min-height:0;overflow:hidden;padding:clamp(20px,3vh,42px)}.kiosk-shell .display-current,.kiosk-shell .attendant-simulator .simulator-card:first-child{min-height:0;overflow:hidden;position:relative}.kiosk-shell .display-current{align-content:center;display:grid}.kiosk-shell .attendant-simulator .simulator-card{max-height:100%;overflow:hidden}.kiosk-shell .totem-screen h2{font-size:clamp(28px,4vw,48px);margin-top:0}.kiosk-shell .totem-buttons{gap:clamp(12px,2vh,22px);margin:clamp(18px,3vh,38px) auto 0;max-width:min(760px,82vw);width:100%}.kiosk-shell .totem-buttons button{font-size:clamp(20px,3vw,34px);min-height:clamp(72px,11vh,112px)}.kiosk-shell .ticket-delivery-panel,.kiosk-shell .digital-ticket-panel{background:var(--surface);left:50%;margin:0;max-width:min(560px,calc(100% - 32px));position:absolute;top:clamp(96px,15vh,162px);transform:translate(-50%);width:100%;z-index:8}.kiosk-shell .simulator-card{max-height:100%;overflow:hidden}.kiosk-shell .simulator-card .sim-ticket:nth-of-type(n+9){display:none}.printer-dev-shell{display:grid;place-items:center}.printer-dev-panel{display:grid;gap:18px;grid-template-columns:minmax(280px,420px) minmax(240px,320px);max-width:820px;width:100%}.printer-dev-panel header,.printer-dev-output,.printer-dev-list{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:18px}.printer-dev-panel header{grid-column:1 / -1}.printer-dev-panel header span{color:var(--text-3);font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.printer-dev-output{display:grid;justify-items:center;min-height:430px;overflow:hidden}.printer-dev-list{max-height:430px;overflow:hidden}.print-simulator{margin:30px auto 0;max-width:340px}.printer-body{background:#111827;border-radius:12px 12px 6px 6px;box-shadow:var(--shadow-md);color:#fff;font-size:11px;font-weight:800;letter-spacing:.08em;padding:12px 14px 16px;position:relative;text-transform:uppercase}.paper-slot{background:#020617;border-radius:999px;height:8px;margin-top:10px}.paper-output{align-items:start;display:grid;justify-content:center;min-height:390px;overflow:hidden}.printed-ticket{animation:paperOut .72s var(--ease) both;background:#fff;border:1px solid var(--border-strong);box-shadow:0 12px 24px #0f172a1f;height:350px;overflow:hidden;position:relative;width:250px}.printed-ticket:before{background-image:linear-gradient(90deg,transparent 0 6px,#f1f5f9 6px 8px);content:"";height:8px;inset:0 0 auto;position:absolute}.printed-ticket-field{align-items:center;display:flex;font-weight:800;justify-content:center;line-height:1;overflow:hidden;padding:2px;position:absolute;text-align:center}.printed-ticket-field img{max-height:100%;max-width:100%;object-fit:contain}.qr-code-svg{display:block;height:100%;max-height:100%;max-width:100%;width:auto}.paper-placeholder{border:1px dashed var(--border-strong);border-radius:var(--radius);color:var(--text-3);font-size:12px;font-weight:800;margin-top:22px;padding:18px}@keyframes paperOut{0%{opacity:0;transform:translateY(-320px)}to{opacity:1;transform:translateY(0)}}.sim-ticket{border-top:1px solid var(--border);padding:12px 0}.sim-ticket.compact{display:grid;grid-template-columns:1fr auto;gap:10px;padding:9px 0}.sim-ticket strong{font-family:var(--mono);font-size:22px}.sim-status-pill{background:#fff7ed;border-radius:999px;color:#c2410c;display:inline-block;font-size:10px;padding:3px 8px;text-transform:uppercase}.sim-status-pill.called{background:#eef2ff;color:var(--primary)}.sim-status-pill.cancelled{background:#fee2e2;color:var(--red)}.sim-ticket.compact strong{font-size:20px}.sim-ticket.compact span{align-self:center;color:var(--text-2);font-size:11px;margin:0}.display-ticket-groups{display:grid;gap:14px;margin-top:14px}.display-ticket-group{border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px 2px}.display-ticket-group h3{align-items:center;display:flex;font-size:14px;gap:8px;margin:0 0 4px}.display-ticket-group h3 span{border-radius:999px;display:inline-block;height:10px;width:10px}.display-current{align-items:center;display:grid;min-height:420px;overflow:hidden;place-items:center;position:relative;text-align:center}.display-current span{color:var(--text-3);font-size:18px;font-weight:800}.display-current strong{font-family:var(--mono);font-size:112px;position:relative;z-index:1}.display-current-grid{align-self:center;display:grid;gap:16px;grid-auto-rows:minmax(166px,auto);max-width:980px;position:relative;width:100%;z-index:1}.display-current-grid.cards-2,.display-current-grid.cards-3,.display-current-grid.cards-4{grid-template-columns:repeat(2,minmax(0,1fr))}.display-call-card{background:linear-gradient(180deg,#fff,var(--surface-2));border:1px solid var(--border);border-radius:var(--radius-lg);display:grid;gap:10px;min-height:180px;place-items:center;position:relative;padding:18px;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease;z-index:1}.display-call-card.calling{animation:callPanelExplosion 1.2s var(--ease) both;border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft),var(--shadow-lg)}.display-call-card.calling:before{animation:callFlash 1.2s var(--ease) both;background:radial-gradient(circle,rgb(79 70 229 / 20%),transparent 62%);content:"";top:-18%;right:-18%;bottom:-18%;left:-18%;pointer-events:none;position:absolute}.display-call-card>*{position:relative;z-index:1}.display-call-card small{color:var(--text-2);font-size:20px;font-weight:900}.display-call-card strong{font-size:78px}.display-call-card em{color:var(--text-2);font-style:normal;font-weight:800}.display-call-card.calling strong{animation:ticketExplosion 1.2s var(--ease) both}.display-current small{color:var(--text-2);font-size:24px;position:relative;z-index:1}.display-current .button{align-self:end;position:relative;z-index:1}.display-current.display-panel{align-items:stretch;display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-height:0;padding:clamp(18px,2.2vh,34px) clamp(18px,2.2vh,34px) clamp(46px,5vh,72px);place-items:stretch}.kiosk-shell .display-simulator{gap:clamp(12px,1.4vw,26px);grid-template-columns:minmax(0,1fr) clamp(280px,18vw,430px)}.display-board-header{align-items:center;display:flex;gap:clamp(18px,3vw,52px);justify-content:space-between;min-height:clamp(76px,11vh,128px);position:relative;z-index:2}.display-client-brand{align-items:center;display:flex;gap:clamp(14px,1.8vw,28px);min-width:0;text-align:left}.display-client-brand img{display:block;height:clamp(58px,9vh,112px);max-width:clamp(180px,22vw,420px);object-fit:contain}.display-client-brand strong,.display-clock strong{color:var(--text);display:block;font-family:var(--font);line-height:.95;position:static}.display-client-brand strong{font-size:clamp(26px,3.2vw,62px);max-width:18ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.display-client-brand span,.display-clock span{color:var(--text-2);display:block;font-size:clamp(16px,1.4vw,30px);font-weight:800;letter-spacing:0;margin-top:8px;text-transform:none}.display-clock{color:var(--text);flex:0 0 auto;font-style:normal;text-align:right}.display-clock strong{font-size:clamp(34px,4.4vw,86px);font-variant-numeric:tabular-nums}.display-current.display-panel>.display-current-grid{align-self:center;justify-self:stretch;max-width:none}.display-current-grid.cards-1{grid-template-columns:minmax(0,1fr)}.display-current-grid.cards-1 .display-call-card{min-height:clamp(360px,58vh,740px)}.display-current-grid.cards-2 .display-call-card{min-height:clamp(280px,36vh,480px)}.display-current-grid.cards-3 .display-call-card,.display-current-grid.cards-4 .display-call-card{min-height:clamp(220px,26vh,340px)}.display-call-card small{font-size:clamp(34px,4vw,78px);line-height:.95}.display-call-card strong{font-size:clamp(94px,13vw,260px);line-height:.86}.display-current-grid.cards-1 .display-call-card strong{font-size:clamp(140px,20vw,380px)}.display-current-grid.cards-3 .display-call-card strong,.display-current-grid.cards-4 .display-call-card strong{font-size:clamp(74px,8.4vw,164px)}.display-call-card em{font-size:clamp(24px,2.2vw,44px);line-height:1.08}.display-current.display-panel>strong{align-self:center;font-size:clamp(120px,16vw,280px);line-height:.86}.display-current.display-panel>small{align-self:start;font-size:clamp(28px,3vw,54px)}.display-simulator>.simulator-card h2{font-size:clamp(22px,1.7vw,34px)}.display-ticket-group h3{font-size:clamp(16px,1.2vw,24px)}.sim-ticket.compact strong{font-size:clamp(26px,2vw,48px);line-height:1}.sim-ticket.compact span{font-size:clamp(11px,.95vw,18px)}.keyboard-buffer{background:var(--accent-soft);border-radius:999px;color:var(--accent);font-style:normal;font-weight:800;padding:8px 14px;position:relative;z-index:1}@keyframes callPanelExplosion{0%,to{box-shadow:var(--shadow-sm)}20%{box-shadow:0 0 0 10px var(--accent-soft),0 28px 70px #4f46e53d;transform:scale(1.015)}45%{box-shadow:0 0 0 4px #4f46e51f,var(--shadow-lg);transform:scale(1)}}@keyframes ticketExplosion{0%{opacity:0;transform:scale(.45)}24%{opacity:1;transform:scale(1.28)}50%{transform:scale(.96)}72%{transform:scale(1.08)}to{transform:scale(1)}}@keyframes callFlash{0%{opacity:0;transform:scale(.4)}25%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.35)}}.attendant-current,.attendant-next{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);margin-top:14px;padding:16px}.attendant-current span,.attendant-next span{color:var(--text-3);display:block;font-size:12px;font-weight:800;text-transform:uppercase}.attendant-current strong,.attendant-next strong{display:block;font-family:var(--mono);font-size:42px;margin:6px 0}.attendant-current small,.attendant-next small{color:var(--text-2);font-weight:700}.attendant-actions{display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:16px}.queue-type-actions{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:16px}.queue-type-button{align-items:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;display:grid;gap:4px;grid-template-columns:10px 1fr auto;padding:12px;text-align:left}.queue-type-button span{border-radius:999px;height:10px;width:10px}.queue-type-button strong{font-size:14px}.queue-type-button em{color:var(--text-2);font-size:12px;font-style:normal;font-weight:800}.player-stage{align-items:center;aspect-ratio:16 / 9;background:#111827;color:#fff;display:grid;place-items:center;text-align:center}.player-stage h2{font-size:48px}.simulator-empty{color:var(--text-2);font-weight:800;padding:32px}.toolbar{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:end}.search-box{display:grid;gap:8px;max-width:420px}.result-count,.empty-row{color:var(--text-3);font-size:12px;font-weight:700}.empty-row{padding:24px 10px;text-align:center}.table-wrap{margin-top:16px;overflow:auto}table{width:100%;border-collapse:collapse}th{color:var(--text-3);font-size:11px;letter-spacing:.06em;padding:10px;text-align:left;text-transform:uppercase}td{border-top:1px solid var(--border);padding:12px 10px;vertical-align:middle}td strong,td span{display:block}td span{color:var(--text-3);font-size:12px;margin-top:2px}@media (max-width: 820px){.app-shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--border)}.kpi-grid,.form-row,.form-row.compact,.queue-button-board,.layout-editor,.totem-simulator,.display-simulator,.attendant-simulator,.printer-dev-panel,.toolbar{grid-template-columns:1fr}}@media (orientation: portrait){.kiosk-shell .totem-simulator,.kiosk-shell .display-simulator,.kiosk-shell .attendant-simulator{grid-template-columns:1fr}.kiosk-shell .totem-simulator>aside,.kiosk-shell .display-simulator>.simulator-card,.kiosk-shell .attendant-simulator>.simulator-card:last-child{display:none}.kiosk-shell .totem-buttons{max-width:min(620px,90vw)}.kiosk-shell .totem-buttons button{min-height:clamp(68px,10vh,96px)}}
