:root{--brand: #0B1F3A;--accent: #1454B8;--gold: #E2B13C;--ink: #0F172A;--ink-2: #334155;--muted: #475569;--line: #E2E8F0;--line-2: #CBD5E1;--bg: #F6F8FB;--card: #fff;--ok: #15803D;--ok-bg: #ECFDF3;--warn: #92400E;--warn-bg: #FEF3C7;--bad: #B91C1C;--bad-bg: #FEF2F2;--info-bg: #EEF4FF;--radius: 14px;--shadow: 0 1px 2px rgb(15 23 42 / 6%), 0 4px 16px rgb(15 23 42 / 4%);font-family:Inter,Noto Sans Gurmukhi,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0}h1,h2,h3,h4{margin:0;line-height:1.15;letter-spacing:-.01em}p{margin:0}a{color:var(--accent)}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:3px solid #2563EB;outline-offset:2px;border-radius:6px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.loading{min-height:40vh}.muted{color:var(--muted)}.small{font-size:.875rem}.row{display:flex;gap:12px;align-items:center}.row.wrap{flex-wrap:wrap}.spread{display:flex;justify-content:space-between;align-items:center;gap:12px}.stack>*+*{margin-top:12px}.grow{flex:1}.center{text-align:center}.mt{margin-top:16px}.mt-lg{margin-top:28px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 18px;border-radius:10px;border:1px solid var(--line-2);background:#fff;font-weight:600;cursor:pointer;text-decoration:none;color:var(--ink)}.btn:hover{background:#f8fafc}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.primary{background:var(--brand);border-color:var(--brand);color:#fff}.btn.primary:hover{background:#13305a}.btn.accent{background:var(--accent);border-color:var(--accent);color:#fff}.btn.ok{background:var(--ok);border-color:var(--ok);color:#fff}.btn.danger{color:var(--bad);border-color:#f5b5b5}.btn.danger.solid{background:var(--bad);color:#fff;border-color:var(--bad)}.btn.link{border:0;background:none;color:var(--accent);padding:0 4px;min-height:0;text-decoration:underline}.btn.block{width:100%}.btn.lg{min-height:56px;font-size:1.1rem;border-radius:12px}.btn.sm{min-height:34px;padding:0 12px;font-size:.875rem}label.field{display:block;font-weight:600;font-size:.95rem}label.field>span.hint{display:block;font-weight:400;color:var(--muted);font-size:.85rem;margin-top:2px}.input,select.input,textarea.input{display:block;width:100%;margin-top:6px;min-height:44px;padding:10px 12px;border-radius:10px;border:1px solid var(--line-2);background:#fff}textarea.input{min-height:80px;resize:vertical}.input:focus{border-color:var(--accent)}.check{display:flex;gap:10px;align-items:flex-start;font-weight:500}.check input{width:22px;height:22px;margin-top:1px;accent-color:var(--accent);flex:none}.chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;border:1px solid var(--line-2);background:#fff;font-size:.85rem;font-weight:600;white-space:nowrap}.chip.need{background:var(--info-bg);border-color:#c7d7f5;color:#173e8c}.chip.prio{background:var(--bad-bg);border-color:#f5c2c2;color:var(--bad)}.chip.appt{background:var(--warn-bg);border-color:#f3d27a;color:var(--warn)}.chip.ok{background:var(--ok-bg);border-color:#a7e3be;color:var(--ok)}.chip.gray{background:#f1f5f9;color:var(--ink-2)}button.chip{cursor:pointer;min-height:36px;padding:0 14px}button.chip[aria-pressed=true]{background:var(--brand);color:#fff;border-color:var(--brand)}.badge{display:inline-block;padding:2px 8px;border-radius:6px;font-size:.75rem;font-weight:700}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px}.card.flat{box-shadow:none}.alert{padding:12px 14px;border-radius:10px;border:1px solid;font-weight:500}.alert.bad{background:var(--bad-bg);border-color:#f5c2c2;color:var(--bad)}.alert.warn{background:var(--warn-bg);border-color:#f3d27a;color:var(--warn)}.alert.ok{background:var(--ok-bg);border-color:#a7e3be;color:#14532d}.alert.info{background:var(--info-bg);border-color:#c7d7f5;color:#173e8c}.machine-note{font-size:.8rem;color:var(--muted);text-align:center;margin-top:12px}.pub{min-height:100dvh;display:flex;flex-direction:column}.pub-head{background:var(--brand);color:#fff;padding:16px 18px;display:flex;align-items:center;gap:12px}.pub-head .logo{width:36px;height:36px;border-radius:50%;background:#fff;display:grid;place-items:center;overflow:hidden;flex:none}.pub-head .logo img{width:100%;height:100%;object-fit:cover}.pub-head h1{font-size:1.1rem;font-weight:700}.pub-head .lang-btn{margin-inline-start:auto;background:#ffffff1f;color:#fff;border:1px solid rgb(255 255 255 / 30%);border-radius:999px;padding:6px 12px;font-weight:600;cursor:pointer}.pub-body{flex:1;width:100%;max-width:560px;margin:0 auto;padding:18px}.pub-foot{text-align:center;padding:18px;font-size:.8rem;color:var(--muted)}.steps-dots{display:flex;gap:6px;justify-content:center;margin-bottom:14px}.steps-dots i{width:8px;height:8px;border-radius:999px;background:var(--line-2)}.steps-dots i.on{background:var(--accent);width:22px}.tiles{display:grid;gap:12px}.tile{display:block;width:100%;text-align:start;padding:16px;border-radius:var(--radius);border:1px solid var(--line);background:#fff;box-shadow:var(--shadow);cursor:pointer}.tile:hover{border-color:var(--accent)}.tile[aria-pressed=true]{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent) inset}.tile:disabled{cursor:not-allowed;background:#f8fafc;box-shadow:none}.tile .t-title{font-weight:700;font-size:1.1rem;display:flex;align-items:center;gap:10px}.tile .t-title,.tile .t-sub{display:block}.tile .t-title{display:flex}.tile .t-sub{color:var(--muted);margin-top:4px;font-size:.95rem}.tile.lang{text-align:center}.tile .swatch{width:12px;height:12px;border-radius:4px;flex:none}.tile.lang .t-title{font-size:1.5rem;justify-content:center}.tile.lang .t-sub{text-align:center}.big-ticket{font-size:clamp(3.5rem,18vw,5.5rem);font-weight:900;letter-spacing:-.03em;line-height:1}.progress{height:10px;border-radius:999px;background:var(--line);overflow:hidden}.progress>i{display:block;height:100%;background:var(--accent);border-radius:999px;transition:width .6s ease}.timeline{list-style:none;padding:0;margin:0}.timeline li{display:flex;gap:12px;align-items:center;padding:6px 0;color:var(--muted)}.timeline li .dot{width:16px;height:16px;border-radius:50%;border:2px solid var(--line-2);flex:none}.timeline li.done{color:var(--ink);font-weight:600}.timeline li.done .dot{background:var(--ok);border-color:var(--ok)}.timeline li.now{color:var(--ink);font-weight:700}.timeline li.now .dot{border-color:var(--accent);box-shadow:0 0 0 4px #dbe7fb}.know{background:var(--ok-bg);border:1px solid #A7E3BE;border-radius:var(--radius);padding:14px}.know h3{font-size:.95rem;color:#14532d}.called-banner{background:var(--ok);color:#fff;border-radius:var(--radius);padding:22px;text-align:center}.called-banner .big-ticket{color:#fff}.stars{display:flex;gap:8px;justify-content:center}.stars button{width:52px;height:52px;border-radius:12px;border:1px solid var(--line-2);background:#fff;font-size:1.3rem;font-weight:800;cursor:pointer}.stars button[aria-pressed=true]{background:var(--accent);color:#fff;border-color:var(--accent)}.kiosk{min-height:100dvh;display:flex;flex-direction:column;user-select:none;-webkit-user-select:none}.kiosk .pub-head{padding:18px 32px}.kiosk .pub-head h1{font-size:1.35rem}.kiosk-body{flex:1;display:flex;flex-direction:column;justify-content:center;max-width:960px;width:100%;margin:0 auto;padding:24px 32px}.kiosk h2{font-size:clamp(1.8rem,3.6vw,2.6rem);font-weight:800;text-align:center}.kiosk .sub{text-align:center;color:var(--ink-2);font-size:1.25rem;margin-top:8px}.kiosk .tiles{grid-template-columns:repeat(2,1fr);gap:20px;margin-top:28px}.kiosk .tile{min-height:120px;padding:22px 26px}.kiosk .tile .t-title{font-size:1.6rem}.kiosk .tile .t-sub{font-size:1.1rem}.kiosk .tile.lang .t-title{font-size:2.2rem}.kiosk .btn{min-height:64px;font-size:1.2rem;padding:0 28px;border-radius:14px}.kiosk .input{min-height:64px;font-size:1.35rem}.kiosk .chip{font-size:1.05rem;padding:10px 18px}.kiosk .needs{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:24px}.kiosk .need-toggle{display:flex;align-items:center;gap:14px;min-height:72px;padding:0 20px;border-radius:14px;border:1px solid var(--line-2);background:#fff;font-size:1.2rem;font-weight:600;cursor:pointer;text-align:start}.kiosk .need-toggle[aria-pressed=true]{border-color:var(--accent);background:var(--info-bg);box-shadow:0 0 0 2px var(--accent) inset}.kiosk .need-toggle .box{width:28px;height:28px;border-radius:8px;border:2px solid var(--line-2);display:grid;place-items:center;flex:none}.kiosk .need-toggle[aria-pressed=true] .box{background:var(--accent);border-color:var(--accent);color:#fff}.kiosk-nav{display:flex;justify-content:space-between;gap:16px;margin-top:32px}.kiosk .big-ticket{font-size:9rem}.keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;max-width:420px;margin:20px auto 0}.keypad button{min-height:72px;font-size:1.8rem;font-weight:700;border-radius:14px;border:1px solid var(--line-2);background:#fff;cursor:pointer}.tv{--u0: calc(min(1vw, 1.7778vh) * var(--uk, 1));--u: var(--u0);--t: calc(var(--u) * var(--ts, 1));width:100vw;height:100vh;overflow:hidden;display:grid;grid-template-rows:auto 6px 1fr auto;background:var(--tv-bg, #EEF3FA);cursor:none}.tv-head{background:var(--brand);color:var(--tv-on-brand, #fff);display:flex;align-items:center;gap:calc(2 * var(--u));padding:calc(1.4 * var(--u)) calc(2.6 * var(--u))}.tv-head .logo{width:calc(4 * var(--u));height:calc(4 * var(--u));border-radius:50%;background:#fff;display:grid;place-items:center;overflow:hidden}.tv-head h1{font-size:calc(2.6 * var(--t));font-weight:800}.tv-head .welcome{font-size:calc(1.3 * var(--t));opacity:.9;margin-top:calc(.3 * var(--u))}.tv-head .clock{margin-inline-start:auto;text-align:end}.tv-head .clock b{display:block;font-size:calc(3.2 * var(--t));font-weight:900;line-height:1}.tv-head .clock span{font-size:calc(1.2 * var(--t))}.tv-bar{background:var(--tv-track, #D6E0EF)}.tv-bar>i{display:block;height:100%;background:var(--accent)}.tv-main{display:grid;grid-template-columns:1.05fr 1.9fr;gap:calc(1.6 * var(--u));padding:calc(1.8 * var(--u)) calc(2 * var(--u));min-height:0}.tv-serving{background:var(--brand);color:var(--tv-on-brand, #fff);border-radius:calc(1.2 * var(--u));padding:calc(1.8 * var(--u));display:flex;flex-direction:column;min-height:0}.tv-serving .label{font-size:calc(1.3 * var(--t));font-weight:800;letter-spacing:.25em;text-transform:uppercase;opacity:.9}.tv-serving .idle{flex:1;display:grid;place-items:center;text-align:center}.tv-serving .idle h2{font-size:calc(2.4 * var(--t));font-weight:800}.tv-serving .idle p{font-size:calc(1.3 * var(--t));margin-top:calc(.8 * var(--u));opacity:.9}.tv-serving .list{margin-top:calc(1 * var(--u))}.tv-serving .list .item{display:flex;justify-content:space-between;align-items:baseline;padding:calc(.7 * var(--u)) 0;border-bottom:1px solid rgb(255 255 255 / 15%)}.tv-serving .list .item b{font-size:calc(3 * var(--t));font-weight:900}.tv-serving .list .item span{font-size:calc(1.6 * var(--t));opacity:.95}.tv-calling{flex:1;display:grid;place-items:center;text-align:center;animation:tvpulse 1.2s ease-in-out 3}.tv-calling .ticket{font-size:calc(9 * var(--t));font-weight:900;line-height:1}.tv-calling .who{font-size:calc(2.6 * var(--t));font-weight:700;margin-top:calc(.8 * var(--u))}.tv-calling .go{font-size:calc(2.2 * var(--t));margin-top:calc(1 * var(--u));background:var(--gold);color:var(--tv-brand-ink, var(--brand));border-radius:calc(1 * var(--u));padding:calc(.6 * var(--u)) calc(1.6 * var(--u));font-weight:800}@keyframes tvpulse{50%{transform:scale(1.03)}}.tv-qr{margin-top:auto;background:#fff;color:var(--tv-brand-ink, var(--brand));border-radius:calc(1 * var(--u));padding:calc(1 * var(--u));display:flex;gap:calc(1.2 * var(--u));align-items:center}.tv-qr .qr{width:calc(9 * var(--u));height:calc(9 * var(--u));flex:none}.tv-qr .qr svg{width:100%;height:100%}.tv-qr h3{font-size:calc(2 * var(--t));font-weight:800}.tv-qr p{font-size:calc(1.15 * var(--t));color:var(--ink-2)}.tv-cards{--u: calc(var(--u0) * var(--k, 1));--t: calc(var(--u) * var(--ts, 1));display:grid;grid-template-columns:repeat(3,1fr);gap:calc(1.4 * var(--u));min-height:0}.tv-card{background:#fff;border-radius:calc(1.2 * var(--u));overflow:hidden;display:flex;flex-direction:column;border:1px solid #D6E0EF;min-height:0}.tv-card .top{color:#fff;padding:calc(1.4 * var(--u));display:flex;gap:calc(1 * var(--u));align-items:center;min-height:calc(8 * var(--u))}.tv-card .top .ic{width:calc(4 * var(--u));height:calc(4 * var(--u));border-radius:calc(.8 * var(--u));background:#fff3;display:grid;place-items:center;font-size:calc(2 * var(--t));flex:none}.tv-card .top h3{font-size:calc(2.2 * var(--t));font-weight:900;line-height:1.05}.tv-card .nums{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid var(--line)}.tv-card .nums div{padding:calc(1.2 * var(--u)) calc(1.4 * var(--u))}.tv-card .nums div+div{border-inline-start:1px solid var(--line)}.tv-card .nums b{display:block;font-size:calc(3.2 * var(--t));font-weight:900;line-height:1}.tv-card .nums span{font-size:calc(1 * var(--t));font-weight:800;letter-spacing:.15em;color:var(--muted);text-transform:uppercase}.tv-card .up{padding:calc(1.2 * var(--u)) calc(1.4 * var(--u));flex:1}.tv-card .up .label{font-size:calc(1 * var(--t));font-weight:800;letter-spacing:.15em;color:var(--muted)}.tv-card .up .item{display:flex;justify-content:space-between;align-items:baseline;padding:calc(.8 * var(--u)) 0;border-bottom:1px solid var(--line)}.tv-card .up .item b{font-size:calc(2.4 * var(--t));font-weight:900}.tv-card .up .item span{font-size:calc(1.6 * var(--t));color:var(--ink-2);font-weight:600}.tv-card .up .none{font-size:calc(1.6 * var(--t));font-weight:700;color:var(--ok);margin-top:calc(1 * var(--u))}.tv-card.full .none{color:var(--bad)}.tv-foot{background:var(--brand);color:var(--tv-on-brand, #fff);display:flex;white-space:nowrap;align-items:center;gap:calc(1.6 * var(--u));padding:calc(1 * var(--u)) calc(2.6 * var(--u));font-size:calc(1.3 * var(--t))}.tv-foot .count{white-space:nowrap;background:var(--tv-on-brand, #fff);color:var(--brand);border-radius:999px;padding:calc(.3 * var(--u)) calc(1.2 * var(--u));font-weight:900;font-size:calc(1.5 * var(--t))}.tv-foot>.msg,.tv-foot>.addr{min-width:0;overflow:hidden;text-overflow:ellipsis}.tv-foot>.addr{flex:0 1 auto}.tv-head>div{min-width:0}.tv-head .clock{flex:none}.tv-foot .dots{margin-inline-start:auto;display:flex;gap:calc(.5 * var(--u))}.tv-foot .dots i{width:calc(1.2 * var(--u));height:calc(.35 * var(--u));border-radius:calc(1 * var(--u));background:var(--tv-on-brand, #fff);opacity:.35}.tv-foot .dots i.on{width:calc(3 * var(--u));background:var(--tv-on-brand, #fff);opacity:1}.tv-pair{min-height:100vh;display:grid;place-items:center;background:var(--brand);color:#fff;text-align:center}.tv-pair input{font-size:3rem;letter-spacing:.4em;text-align:center;width:9em;border-radius:16px;border:0;padding:12px;color:var(--ink)}.app{min-height:100vh;display:grid;grid-template-rows:62px 1fr}.topbar{background:var(--brand);color:#fff;display:flex;align-items:center;gap:14px;padding:0 22px}.topbar .brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:1.1rem;color:#fff;text-decoration:none}.topbar select{background:#ffffff1a;color:#fff;border:1px solid rgb(255 255 255 / 30%);border-radius:8px;padding:6px 10px}.topbar select option{color:var(--ink)}.topbar .status{display:inline-flex;align-items:center;gap:6px;background:#15803dd9;padding:4px 10px;border-radius:999px;font-size:.85rem;font-weight:600}.topbar .status.paused{background:#b45309}.topbar .status.closed{background:#991b1b}.topbar .status i{width:8px;height:8px;border-radius:50%;background:#86efac}.topbar .me{margin-inline-start:auto;display:flex;align-items:center;gap:10px}.avatar{width:36px;height:36px;border-radius:50%;background:var(--gold);color:var(--tv-brand-ink, var(--brand));display:grid;place-items:center;font-weight:800;font-size:.9rem}.shell{display:grid;grid-template-columns:226px 1fr;min-height:0}.side{background:#fff;border-inline-end:1px solid var(--line);padding:18px 12px}.side a{display:block;padding:10px 14px;border-radius:10px;color:var(--ink-2);text-decoration:none;font-weight:500;margin-bottom:2px}.side a.active{background:var(--info-bg);color:var(--accent);font-weight:700}.side a:hover:not(.active){background:#f8fafc}.side .sep{height:1px;background:var(--line);margin:12px 8px}.side .group{font-size:.75rem;font-weight:700;letter-spacing:.08em;color:var(--muted);padding:6px 14px;text-transform:uppercase}.page{padding:24px;min-width:0}.page-head{display:flex;align-items:center;gap:12px;margin-bottom:18px;flex-wrap:wrap}.page-head h1{font-size:1.7rem;font-weight:800}.page-head .actions{margin-inline-start:auto;display:flex;gap:10px;flex-wrap:wrap}.console-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:20px;align-items:start}.table-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}table.t{width:100%;border-collapse:collapse}table.t th{text-align:start;font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);padding:12px 14px;border-bottom:1px solid var(--line);font-weight:700;background:#fbfcfe}table.t td{padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:middle}table.t tr.prio td{background:#fff7f7}table.t tr:last-child td{border-bottom:0}table.t .ticket{font-weight:800}table.t .late{color:#b45309;font-weight:700}.table-foot{padding:10px 14px;font-size:.85rem;color:var(--muted);border-top:1px solid var(--line)}.serving{border:2px solid var(--brand);border-radius:var(--radius);background:#fff;padding:18px;position:sticky;top:16px}.serving .big{font-size:3rem;font-weight:900;letter-spacing:-.03em;line-height:1;margin:6px 0 10px}.asked{background:var(--info-bg);border-radius:12px;padding:12px}.asked h4{font-size:.75rem;letter-spacing:.08em;color:#173e8c;text-transform:uppercase;margin-bottom:8px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.kpi{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px}.kpi b{display:block;font-size:1.9rem;font-weight:800;margin-top:4px}.kpi span{font-size:.85rem;color:var(--muted);font-weight:600}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);margin-bottom:18px;overflow-x:auto}.tabs a,.tabs button{padding:10px 14px;border:0;background:none;color:var(--muted);font-weight:600;text-decoration:none;border-bottom:3px solid transparent;cursor:pointer;white-space:nowrap}.tabs .active{color:var(--accent);border-bottom-color:var(--accent)}.tabs.wrap{flex-wrap:wrap;overflow-x:visible;row-gap:2px}.bars{display:flex;align-items:flex-end;gap:6px;height:160px;padding-top:10px}.bars .bar{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;height:100%;justify-content:flex-end;font-size:.75rem;color:var(--muted)}.bars .bar i{display:block;width:100%;background:var(--accent);border-radius:6px 6px 0 0;min-height:2px}.hbar{display:grid;grid-template-columns:120px 1fr 54px;gap:10px;align-items:center;margin:8px 0;font-size:.9rem}.hbar .track{height:12px;background:var(--line);border-radius:999px;overflow:hidden}.hbar .track i{display:block;height:100%;background:var(--accent)}.modal-back{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;display:grid;place-items:center;z-index:50;padding:20px}.modal{background:#fff;border-radius:16px;width:min(560px,100%);max-height:90vh;overflow:auto;padding:22px;box-shadow:0 20px 60px #00000040}.modal h2{font-size:1.3rem;margin-bottom:14px}.toast{position:fixed;bottom:20px;left:50%;transform:translate(-50%);background:var(--ink);color:#fff;padding:12px 18px;border-radius:12px;z-index:60;font-weight:600}.empty{text-align:center;color:var(--muted);padding:40px 20px}.cal{display:grid;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.cal .cell{background:#fff;padding:8px;min-height:64px}.cal .head{background:#fbfcfe;font-weight:700;font-size:.85rem;padding:10px 8px}.appt-pill{display:block;border-radius:8px;padding:6px 8px;margin-bottom:4px;font-size:.8rem;border-inline-start:4px solid;background:#f8fafc;text-align:start;width:100%;cursor:pointer;border-top:0;border-bottom:0;border-inline-end:0}.appt-pill.confirmed{background:var(--ok-bg)}.appt-pill.pending{background:var(--warn-bg)}.appt-pill.arrived{background:var(--info-bg)}.appt-pill.no_show{background:var(--bad-bg);text-decoration:line-through}.appt-pill.blocked{background:repeating-linear-gradient(45deg,#f1f5f9,#f1f5f9 6px,#e2e8f0 6px,#e2e8f0 12px);border-color:#94a3b8}.signin{min-height:100vh;display:grid;place-items:center;background:var(--brand);padding:20px}.signin .card{width:min(440px,100%)}.translator{height:100dvh;display:grid;grid-template-rows:1fr auto 1fr;background:#fff}.translator .half{display:flex;flex-direction:column;padding:18px 22px;gap:12px;min-height:0}.translator .half.resident{transform:rotate(180deg);background:#f8fafc}.translator .bubble{font-size:1.6rem;font-weight:600;line-height:1.3}.translator .orig{font-size:1rem;color:var(--muted)}.translator .history{flex:1;overflow:auto;display:flex;flex-direction:column;gap:10px}.translator .mid{display:flex;align-items:center;gap:12px;padding:8px 16px;background:var(--brand);color:#fff;font-size:.85rem}.translator .mid .warn{background:var(--gold);color:var(--tv-brand-ink, var(--brand));padding:4px 10px;border-radius:999px;font-weight:700}.talk{min-height:72px;border-radius:16px;border:0;background:var(--accent);color:#fff;font-size:1.2rem;font-weight:700;cursor:pointer}.talk.on{background:var(--bad)}.phrases{display:flex;gap:8px;flex-wrap:wrap}.poster-page{background:#e5e7eb;padding:24px;min-height:100vh}.poster-tools{max-width:8.5in;margin:0 auto 16px;display:flex;gap:10px;align-items:center}.poster{width:8.5in;min-height:11in;margin:0 auto;background:#fff;display:flex;flex-direction:column;box-shadow:var(--shadow)}.poster.landscape{width:11in;min-height:8.5in}.poster .p-head{background:var(--brand);color:#fff;padding:.35in .5in;display:flex;align-items:center;gap:14px;font-weight:800;font-size:22pt}.poster .p-body{padding:.45in .5in;flex:1}.poster h1{font-size:64pt;font-weight:900;letter-spacing:-.03em;line-height:1}.poster .lead{font-size:18pt;color:var(--ink-2);margin-top:10px}.poster .qrbox{width:3.4in;height:3.4in;border:4px solid var(--ink);border-radius:18px;padding:10px;flex:none}.poster .qrbox svg{width:100%;height:100%}.poster .langs{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:.35in}.poster .langs div{border:1px solid var(--line-2);border-radius:14px;padding:12px 14px}.poster .langs b{font-size:15pt;display:block}.poster .p-foot{border-top:1px solid var(--line);margin:0 .5in;padding:.2in 0 .3in;display:flex;justify-content:space-between;align-items:flex-end}@page{size:letter;margin:0}@media print{.poster-page{padding:0;background:#fff}.poster-tools{display:none}.poster{box-shadow:none;margin:0}}@media(max-width:1100px){.console-grid{grid-template-columns:1fr}.serving{position:static}.grid4{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.shell{grid-template-columns:1fr}.side{display:flex;overflow-x:auto;padding:8px;gap:4px;border-inline-end:0;border-bottom:1px solid var(--line);align-self:start}.shell{grid-template-rows:auto 1fr}.side .sep,.side .group{display:none}.side a{white-space:nowrap}.grid3{grid-template-columns:1fr}table.t .hide-sm{display:none}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}.receipt{display:none}@media print{body.print-receipt *{visibility:hidden}body.print-receipt .receipt,body.print-receipt .receipt *{visibility:visible}body.print-receipt .receipt{display:block;position:fixed;top:0;left:0;width:72mm;font:12pt/1.3 Inter,sans-serif;text-align:center}body.print-receipt .receipt .r-ticket{font-size:36pt;font-weight:900;margin:6px 0}}.tv-sound{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:#0b1f3a99;z-index:10;cursor:pointer}.tv-sound span{background:#fff;color:var(--brand);padding:calc(1.2 * var(--u)) calc(2 * var(--u));border-radius:calc(1 * var(--u));font-size:calc(1.8 * var(--t));font-weight:800}body{font-feature-settings:"cv11","ss01"}.big-ticket,.serving .big,.kpi b,table.t td,.tv-card .nums b,.tv-head .clock b,.tv-calling .ticket{font-variant-numeric:tabular-nums}.btn{transition:background .15s,border-color .15s,box-shadow .15s}.btn.primary,.btn.accent,.btn.ok{box-shadow:0 1px 2px #0f172a2e}.btn svg,.chip svg,.tile svg{flex:none}.chip{gap:6px}.card{box-shadow:0 1px 2px #0f172a0d}.loading{display:grid;place-items:center;min-height:40vh}.loading:after{content:"";width:28px;height:28px;border-radius:50%;border:3px solid var(--line);border-top-color:var(--accent);animation:sqspin .8s linear infinite}@keyframes sqspin{to{transform:rotate(360deg)}}.qicon{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:12px;color:#fff;flex:none}.qicon.sm{width:32px;height:32px;border-radius:9px}.tile .t-title{align-items:center;gap:12px}.tile .need-ic{color:var(--accent)}button.tile:not(.need-toggle){display:flex;flex-direction:column;justify-content:center}.tiles>button.tile[aria-pressed]{position:relative}.tile[aria-pressed=true]:after{content:"";position:absolute;top:12px;inset-inline-end:12px;width:10px;height:10px;border-radius:50%;background:var(--accent)}.tile.lang[aria-pressed=true]:after{display:none}.kiosk .need-toggle{gap:16px}.kiosk .need-toggle .need-ic{color:var(--accent)}.kiosk .qicon{width:52px;height:52px;border-radius:14px}.topbar{gap:16px;box-shadow:0 1px #ffffff0f}.topbar .tenant-name{color:#c9d6ea;font-size:.9rem;padding-inline-end:4px;border-inline-end:1px solid rgb(255 255 255 / 18%);padding-inline-start:2px;margin-inline-end:-4px;padding-right:14px}.topbar select{min-height:36px;padding:6px 30px 6px 12px;font-weight:600;-moz-appearance:none;appearance:none;-webkit-appearance:none;background:#ffffff14 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='2.5'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 10px center}.side{padding:16px 10px}.side a{display:flex;align-items:center;gap:11px;padding:9px 12px;color:var(--ink-2);font-weight:500;position:relative}.side a svg{color:var(--muted)}.side a.active{background:var(--info-bg);color:var(--accent);font-weight:650}.side a.active svg{color:var(--accent)}.side a.active:before{content:"";position:absolute;inset-inline-start:-10px;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;background:var(--accent)}.page{padding:28px 32px;max-width:1600px}.page-head h1{font-size:1.75rem;letter-spacing:-.02em}table.t th{font-size:.72rem;letter-spacing:.07em}table.t tbody tr:hover td{background:#fafbfd}table.t tr.prio:hover td{background:#fff1f1}.kpi{box-shadow:0 1px 2px #0f172a0a}.kpi span:first-child{text-transform:uppercase;letter-spacing:.06em;font-size:.72rem}.modal{border:1px solid var(--line)}.toast{display:flex;gap:10px;align-items:center;box-shadow:0 10px 30px #00000040;animation:sqtoast .2s ease-out}@keyframes sqtoast{0%{opacity:0;transform:translate(-50%,8px)}}.pub-head{padding:14px 20px;box-shadow:0 1px #0000001a}.pub-head h1{font-weight:700;letter-spacing:-.01em}.pub-body h2{font-size:1.45rem;letter-spacing:-.015em}.chip.need{font-weight:600}.stat-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));background:#fff;border:1px solid var(--line);border-radius:var(--radius);margin-bottom:16px;overflow:hidden}.stat-strip>div{padding:12px 16px}.stat-strip>div+div{border-inline-start:1px solid var(--line)}.stat-strip b{display:block;font-size:1.35rem;font-weight:800;font-variant-numeric:tabular-nums}.stat-strip span{font-size:.78rem;color:var(--muted);font-weight:600}.vname{font-weight:600}.lang-chip{padding:1px 8px;font-size:.75rem;margin-inline-start:8px}.need-badge{display:inline-flex;align-items:center;gap:4px;background:var(--info-bg);color:#173e8c;white-space:nowrap}@media(max-width:900px){.stat-strip{grid-template-columns:repeat(3,1fr)}}.svc{display:inline-flex;align-items:center;gap:8px}.svc i{width:8px;height:8px;border-radius:50%;flex:none}.empty-ic{display:inline-grid;place-items:center;width:52px;height:52px;border-radius:50%;background:var(--info-bg);color:var(--accent);margin-bottom:10px}.tile:has(.qicon) .t-sub{padding-inline-start:44px}.kiosk .tile:has(.qicon) .t-sub{padding-inline-start:64px}.tv-main{grid-template-columns:minmax(0,1.05fr) minmax(0,1.9fr)}.tv-cards{grid-template-columns:repeat(3,minmax(0,1fr))}.tv-card .nums b{font-size:calc(2.6 * var(--t))}.tv-card .top h3{font-size:calc(2 * var(--t));min-width:0;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.tv-card .top h3.fit-sm{font-size:calc(1.65 * var(--t))}.tv-card .top h3.fit-xs{font-size:calc(1.35 * var(--t))}.tv{grid-template-columns:minmax(0,1fr)}.hero-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:0 1px 2px #0f172a0d}.status-pill{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;font-weight:700;padding:4px 10px;border-radius:999px}.status-pill i{width:8px;height:8px;border-radius:50%}.status-pill.on{background:var(--ok-bg);color:var(--ok)}.status-pill.on i{background:var(--ok)}.status-pill.off{background:var(--warn-bg);color:var(--warn)}.status-pill.off i{background:#d97706}.pub-body{padding-top:22px}table.t .ticket{white-space:nowrap}table.t td.act{width:1%;white-space:nowrap}@media(min-width:1101px)and (max-width:1439px){.console-grid{grid-template-columns:minmax(0,1fr) 290px;gap:16px}table.t th,table.t td{padding-inline:10px}table.t .hide-md{display:none}}@media(max-width:640px){.kiosk .tiles,.kiosk .needs,.kiosk .grid2{grid-template-columns:1fr}.kiosk-body{padding:16px}.kiosk .big-ticket{font-size:5.5rem}.kiosk .pub-head{padding:12px 16px}.stat-strip{grid-template-columns:repeat(2,1fr)}.page{padding:16px}.topbar{flex-wrap:wrap;height:auto;padding:8px 12px;gap:8px}.app{grid-template-rows:auto 1fr}.grid2,.grid3,.grid4{grid-template-columns:1fr}}.table-card{overflow-x:auto}.kiosk-warn{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a8c;display:grid;place-items:center;z-index:60}.kiosk-warn .card{max-width:520px;text-align:center;padding:32px}@media(max-width:760px){.shell{grid-template-columns:minmax(0,1fr)}.side{min-width:0}.hbar{grid-template-columns:minmax(64px,120px) minmax(0,1fr) 44px}.console-grid{grid-template-columns:minmax(0,1fr)}.card{min-width:0}}.charts-row{grid-template-columns:2fr 1fr 1fr}.cal{overflow-x:auto}@media(max-width:760px){.charts-row,.page [style*=grid-template-columns]:not(.cal){grid-template-columns:minmax(0,1fr)!important}}.table-card,.side,.cal{position:relative}.li-shell{min-height:100dvh;display:grid;grid-template-columns:minmax(340px,.9fr) 1.1fr}.li-brand{background:linear-gradient(160deg,#0b1f3a,#13305a 60%,#1454b8 140%);color:#fff;padding:36px 44px;display:flex;flex-direction:column;gap:28px}.li-home{display:inline-flex;align-items:center;gap:12px;color:#fff;text-decoration:none}.li-wordtext{display:flex;flex-direction:column;line-height:1.1}.li-wordmark{font-weight:800;font-size:1.35rem}.li-wordtag{font-size:.8rem;color:#ffffffbf}.li-brand-body{margin:auto 0;max-width:440px}.li-eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}.li-headline{font-size:clamp(1.9rem,3vw,2.6rem);font-weight:800;line-height:1.1;margin-top:10px}.li-lede{color:#ffffffd9;margin-top:12px;font-size:1.05rem;line-height:1.5}.li-points{list-style:none;padding:0;margin:28px 0 0;display:grid;gap:16px}.li-points li{display:flex;gap:12px;align-items:flex-start}.li-points strong{display:block}.li-points span:not(.li-ic){display:block;color:#ffffffc7;font-size:.9rem;margin-top:2px}.li-ic{flex:none;width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:#ffffff1a;color:var(--gold)}.li-brand-foot{display:flex;gap:16px;font-size:.8rem;color:#ffffffbf}.li-brand-foot a{color:#ffffffd9}.li-main{display:flex;flex-direction:column;background:var(--bg);padding:22px 32px}.li-topbar{text-align:right;font-size:.9rem;color:var(--muted)}.li-topbar a{margin-inline-start:8px;font-weight:700}.li-center{flex:1;display:grid;place-items:center;padding:24px 0}.li-card{width:min(420px,100%);background:#fff;border:1px solid var(--line);border-radius:16px;padding:32px;box-shadow:0 20px 50px -24px #0b1f3a40}.li-title{font-size:1.7rem;font-weight:800}.li-sub{color:var(--muted);margin:6px 0 20px}.li-pw{position:relative;margin-top:6px}.li-pw .input{margin-top:0;padding-right:86px}.li-pw-toggle{position:absolute;right:6px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;gap:5px;border:0;background:none;color:var(--accent);font-weight:700;font-size:.85rem;padding:6px 8px;border-radius:8px;cursor:pointer}.li-divider{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:.85rem;margin:18px 0}.li-divider:before,.li-divider:after{content:"";flex:1;height:1px;background:var(--line)}.li-note{display:flex;gap:6px;align-items:center;justify-content:center;color:var(--muted);font-size:.8rem;margin-top:16px}.li-sso{justify-content:center;gap:12px}.li-dev{margin-top:18px;border-top:1px dashed var(--line-2);padding-top:12px}.li-dev ul{list-style:none;padding:0;margin:6px 0}.li-legal{display:flex;gap:16px;justify-content:center;font-size:.8rem}.li-legal a{color:var(--muted)}@media(max-width:860px){.li-shell{grid-template-columns:1fr}.li-brand{padding:20px;gap:12px}.li-brand-body,.li-brand-foot{display:none}.li-main{padding:16px}.li-card{padding:22px}}.user-menu{position:relative}.user-btn{display:flex;align-items:center;gap:10px;background:#ffffff0f;border:1px solid rgb(255 255 255 / 16%);color:#fff;border-radius:999px;padding:4px 12px 4px 4px;cursor:pointer;font:inherit;transition:background .15s,border-color .15s}.user-btn:hover,.user-btn[aria-expanded=true]{background:#ffffff1f;border-color:#ffffff4d}.user-btn:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.user-text{display:flex;flex-direction:column;align-items:flex-start;line-height:1.15;text-align:left}.user-name{font-weight:700;font-size:.9rem;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-role{font-size:.72rem;color:#c9d6ea}.user-caret{opacity:.75;transition:transform .15s}.user-btn[aria-expanded=true] .user-caret{transform:rotate(180deg)}.avatar.lg{width:44px;height:44px;font-size:1rem}.avatar.xl{width:72px;height:72px;font-size:1.6rem}.user-panel{position:absolute;right:0;top:calc(100% + 8px);width:300px;background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:14px;box-shadow:0 24px 60px -20px #0b1f3a59,0 2px 8px #0b1f3a14;z-index:70;overflow:hidden;animation:dd-in .15s ease-out}@keyframes dd-in{0%{opacity:0;transform:translateY(-4px)}}.user-head{display:flex;gap:12px;align-items:center;padding:16px;border-bottom:1px solid var(--line);background:#fbfcfe}.user-head div{display:flex;flex-direction:column;min-width:0}.user-head b{font-size:.98rem}.user-head div span{font-size:.8rem;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-panel nav{padding:6px}.user-panel nav a,.user-signout{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:9px;color:var(--ink-2);text-decoration:none;font-weight:500;width:100%;background:none;border:0;font:inherit;cursor:pointer;text-align:left}.user-panel nav a:hover,.user-signout:hover{background:var(--info-bg);color:var(--accent)}.user-panel svg{color:var(--muted);flex:none}.user-signout{border-top:1px solid var(--line);border-radius:0;padding:12px 18px;color:var(--bad)}.user-signout svg{color:var(--bad)}.user-signout:hover{background:var(--bad-bg);color:var(--bad)}.profile-hero{display:flex;align-items:center;gap:20px;background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:24px;margin-bottom:20px;flex-wrap:wrap}.profile-hero h1{font-size:1.6rem;font-weight:800}.profile-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:20px;align-items:start}.card-title{display:flex;align-items:center;gap:8px;font-size:1.05rem;font-weight:800}.kv{display:grid;grid-template-columns:140px minmax(0,1fr);gap:10px 16px;margin:12px 0 0}.kv dt{color:var(--muted);font-size:.9rem;font-weight:600}.kv dd{margin:0;display:flex;flex-direction:column;gap:2px}.activity{list-style:none;padding:0;margin:10px 0 0}.activity li{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-top:1px solid var(--line)}.activity li:first-child{border-top:0}@media(max-width:1000px){.profile-grid{grid-template-columns:minmax(0,1fr)}}@media(max-width:640px){.user-text{display:none}.user-btn{padding:3px}.kv{grid-template-columns:1fr}}.loc-pick{border:1px solid var(--line);border-radius:10px;padding:10px 14px}.loc-pick legend{padding:0 6px}.briefing-list{margin:0;padding-inline-start:20px;display:grid;gap:6px;line-height:1.45}table.heat th,table.heat td{text-align:center}table.heat th[scope=row]{text-align:start;white-space:nowrap}.heat-cell b{display:block;font-size:1rem}.heat-cell span{display:block;font-size:.72rem;font-weight:600;color:var(--ink);white-space:nowrap}.heat-closed{color:var(--muted);background:#f8fafc;font-size:.8rem}.visit-summary textarea{min-height:72px}.visit-history li{border-top:1px solid var(--line);padding:8px 0;list-style:none}.visit-history ul{margin:0;padding:0}.tv.tv-framed{cursor:auto}.tv-sound-toggle{position:fixed;right:calc(1.2 * var(--u));bottom:calc(4.6 * var(--u));z-index:10;display:inline-flex;align-items:center;gap:calc(.5 * var(--u));padding:calc(.5 * var(--u)) calc(1 * var(--u));border-radius:99px;border:2px solid #fff;background:#0b1f3ad9;color:#fff;font:inherit;font-size:calc(1.3 * var(--t));font-weight:700;cursor:pointer}.tv-sound-toggle[aria-pressed=true]{background:#fff;color:var(--brand)}.tv-sound-toggle:focus-visible{outline:calc(.3 * var(--u)) solid #FBBF24;outline-offset:calc(.2 * var(--u))}.demo-note{border:1px dashed var(--line-2, #CBD5E1);border-radius:12px;padding:12px 14px;background:#f8fafc}.demo-note .demo-sms{margin-top:8px;padding:10px 12px;border-radius:14px 14px 14px 4px;background:#e2e8f0;color:#0f172a;white-space:pre-line}.demo-note details{margin-top:8px}.tv-bg-photo{background-size:cover;background-position:center}.tv-head .logo.off{display:none}.tv-pos-right .tv-main{grid-template-columns:minmax(0,1.9fr) minmax(0,1.05fr)}.tv-pos-right .tv-main>.tv-serving{order:2}.tv-pos-top .tv-main{grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr)}.tv-pos-top .tv-main>.tv-serving{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto 1fr;column-gap:calc(2 * var(--u));min-height:calc(14 * var(--u))}.tv-pos-top .tv-main>.tv-serving>*{grid-column:1}.tv-pos-top .tv-main>.tv-serving>.tv-qr{grid-column:2;grid-row:1 / span 2;margin-top:0;align-self:center}.tv-pos-top .tv-serving .list{display:flex;flex-wrap:wrap;column-gap:calc(3 * var(--u))}.tv-pos-top .tv-serving .list .item{gap:calc(1.2 * var(--u));border-bottom:0}.tv-pos-top .tv-calling .ticket{font-size:calc(6 * var(--t))}.tv-l-focus .tv-main{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}.tv-l-focus.tv-pos-right .tv-main{grid-template-columns:minmax(0,1fr) minmax(0,1.6fr)}.tv-l-focus.tv-pos-top .tv-main{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1.6fr) minmax(0,1fr)}.tv-l-focus .tv-serving .list .item b{font-size:calc(4.8 * var(--t))}.tv-l-focus .tv-serving .list .item span{font-size:calc(2.4 * var(--t))}.tv-l-focus .tv-calling .ticket{font-size:calc(12 * var(--t))}.tv-l-focus.tv-pos-top .tv-calling .ticket{font-size:calc(8 * var(--t))}.tv-compact .tv-card .top{min-height:0;padding:calc(.9 * var(--u)) calc(1.4 * var(--u))}.tv-compact .tv-card .top .ic{width:calc(3 * var(--u));height:calc(3 * var(--u))}.tv-compact .tv-card .top h3{font-size:calc(1.7 * var(--t))}.tv-compact .tv-card .nums{border-bottom:0}.tv-compact .tv-card .nums div{padding:calc(.7 * var(--u)) calc(1.4 * var(--u))}.tv-compact .tv-card .nums b{font-size:calc(2.2 * var(--t))}.tv-noserve .tv-main{grid-template-columns:minmax(0,1fr)}.tv-cards .tv-qr{margin-top:0;flex-direction:column;justify-content:center;text-align:center;border-radius:calc(1.2 * var(--u));border:1px solid #D6E0EF}.tv-cards .tv-qr .qr{width:calc(12 * var(--u));height:calc(12 * var(--u))}.tv-l-single .tv-card .top{min-height:calc(10 * var(--u))}.tv-l-single .tv-card .top .ic{width:calc(6 * var(--u));height:calc(6 * var(--u))}.tv-l-single .tv-card .top h3{font-size:calc(3.6 * var(--t))}.tv-l-single .tv-card .nums b{font-size:calc(5 * var(--t))}.tv-l-single .tv-card .nums span,.tv-l-single .tv-card .up .label{font-size:calc(1.4 * var(--t))}.tv-l-single .tv-card .up{display:grid;grid-template-columns:repeat(auto-fill,minmax(calc(21 * var(--u)),1fr));column-gap:calc(2.4 * var(--u));align-content:start}.tv-l-single .tv-card .up .label,.tv-l-single .tv-card .up .none{grid-column:1 / -1}.tv-l-single .tv-card .up .item{justify-content:flex-start;gap:calc(1 * var(--u));min-width:0}.tv-card .up .item b{white-space:nowrap}.tv-card .up .item span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tv-l-single .tv-card .up .item span{flex:none;overflow:visible}.tv-l-single .tv-card .up .item b{font-size:calc(3.8 * var(--t))}.tv-l-single .tv-card .up .item span{font-size:calc(2.4 * var(--t))}.tv-l-single .tv-card .up .none{font-size:calc(2.6 * var(--t))}.tv.tv-l-portrait{--uk: 1.7;--u0: calc(min(1vw, .5625vh) * var(--uk))}.tv-l-portrait .tv-head h1{font-size:calc(2.2 * var(--t))}.tv-l-portrait .tv-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr)}.tv-l-portrait .tv-card .top{grid-column:1 / -1;min-height:0;padding:calc(.9 * var(--u)) calc(1.4 * var(--u))}.tv-l-portrait .tv-card .nums{grid-template-columns:1fr;border-bottom:0;border-inline-end:1px solid var(--line);align-content:start}.tv-l-portrait .tv-card .nums div+div{border-inline-start:0;border-top:1px solid var(--line)}.tv-l-portrait .tv-card .up .item{padding:calc(.4 * var(--u)) 0}.tv-l-portrait .tv-foot{flex-wrap:wrap;white-space:normal;row-gap:calc(.4 * var(--u))}.tv-card .nums.one{grid-template-columns:1fr}.tv-rows .tv-card,.tv-l-portrait .tv-rows .tv-card{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);grid-template-rows:minmax(0,1fr);align-items:stretch}.tv-rows .tv-card .top,.tv-l-portrait .tv-rows .tv-card .top{grid-column:auto;min-height:0;padding:calc(.7 * var(--u)) calc(1.2 * var(--u))}.tv-rows .tv-card .nums,.tv-l-portrait .tv-rows .tv-card .nums{grid-template-columns:1fr 1fr;border:0;align-content:center}.tv-rows .tv-card .nums div,.tv-l-portrait .tv-rows .tv-card .nums div+div{padding:calc(.4 * var(--u)) calc(1 * var(--u));border-top:0}.tv-rows .tv-card .nums div+div{border-inline-start:1px solid var(--line)}.tv-rows .tv-card .nums b,.tv-rows .tv-card .nums span{white-space:nowrap}.tv-card .nums span,.tv-card .up .label{font-size:max(calc(1 * var(--t)),calc(.92 * var(--u0) * var(--ts, 1)))}.tv.tv-dark{color:#f1f5f9;--ink: #F1F5F9;--ink-2: #CBD5E1;--muted: #A9B6C8;--line: #22324A;--ok: #4ADE80;--bad: #F87171}.tv-dark .tv-card{background:#111c2e;border-color:#22324a}.tv-dark .tv-cards .tv-qr{border-color:#22324a}.tv-dark .tv-qr p{color:#334155}.tv-ticker{display:flex;align-items:center;gap:calc(1.2 * var(--u));background:var(--brand);color:var(--tv-on-brand, #fff);padding:calc(.7 * var(--u)) calc(2.6 * var(--u));border-top:1px solid rgb(127 127 127 / 30%);font-size:calc(1.6 * var(--t));font-weight:700;white-space:nowrap;min-width:0}.tv-ticker .mark{flex:none;display:inline-grid;place-items:center;width:calc(2.6 * var(--u));height:calc(2.6 * var(--u));border-radius:50%;background:var(--accent);color:var(--tv-on-accent, #fff)}.tv-ticker .msg{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}.tv-ticker .scroller{flex:1;min-width:0;overflow:hidden}.tv-ticker .track{display:inline-block;padding-inline-start:100%;animation:tvticker linear infinite}.tv-ticker .track span+span:before{content:"·";padding:0 calc(2 * var(--u));opacity:.7}@keyframes tvticker{to{transform:translate(-100%)}}.tv-slide{grid-column:1 / -1;grid-row:1 / -1;background:var(--brand);color:var(--tv-on-brand, #fff);border-radius:calc(1.2 * var(--u));display:grid;place-items:center;text-align:center;padding:calc(3 * var(--u));min-height:0}.tv-slide h2{font-size:calc(4.4 * var(--t));font-weight:900;line-height:1.1}.tv-slide p{font-size:calc(2.6 * var(--t));margin-top:calc(1.2 * var(--u));font-weight:600}.tv-slide .more{margin-top:calc(2 * var(--u));opacity:.92}.tv-slide .more h3{font-size:calc(2.2 * var(--t));font-weight:800;margin-top:calc(1 * var(--u))}.tv-slide .more p{font-size:calc(1.6 * var(--t));margin-top:calc(.3 * var(--u))}.tv-main>.tv-takeover{grid-column:1 / -1;grid-row:1 / -1}.tv-stage{container-type:inline-size;position:relative;width:100%;aspect-ratio:16 / 9;border-radius:10px;overflow:hidden;border:1px solid var(--line-2);box-shadow:var(--shadow);background:#000}.tv-stage.portrait{aspect-ratio:9 / 16;max-width:300px;margin-inline:auto}.tv-stage .tv,.tv-stage .tv.tv-l-portrait{--u0: calc(1cqw * var(--uk, 1));width:100%;height:100%;cursor:auto}.tv-customize{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);gap:20px;align-items:start}.tv-customize .preview-col{position:sticky;top:12px}.tv-customize fieldset{border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px 16px;margin:0 0 14px;background:#fff}.tv-customize legend{font-weight:800;padding:0 6px;font-size:1.05rem}.tv-customize .hint{font-size:.85rem;color:var(--muted)}.svc-order{list-style:none;margin:8px 0 0;padding:0}.svc-order li{display:flex;align-items:center;gap:8px;padding:6px 8px;border:1px solid var(--line);border-radius:10px;margin-bottom:6px;background:#fff}.svc-order li.dragging{opacity:.5}.svc-order li.over{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent)}.svc-order .grip{cursor:grab;color:var(--muted)}.svc-order .name{flex:1;min-width:0}.swatch-row{display:flex;align-items:center;gap:8px}.swatch-row input[type=color]{width:44px;height:36px;padding:2px;border:1px solid var(--line-2);border-radius:8px;background:#fff}.contrast-ok{color:var(--ok);font-weight:700}.contrast-bad{color:var(--bad);font-weight:700}.lang-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px 12px}.msg-item{border:1px solid var(--line);border-radius:12px;padding:10px 12px;margin-top:10px}@media(max-width:1100px){.tv-customize{grid-template-columns:minmax(0,1fr)}.tv-customize .preview-col{position:static;order:-1}}.side .side-ext .ext{margin-inline-start:auto;opacity:.7}
