:root{--bg: #f4f6f8;--card: #fff;--text: #1b1f24;--muted: #5f6b76;--line: #e3e7eb;--primary: #0b7a4b;--primary-text: #fff;--warn-bg: #fff4d6;--warn-text: #7a5200;--bad-bg: #fde4e4;--bad-text: #8a1c1c;--ok-bg: #dff6e9;--ok-text: #0b5c39}@media(prefers-color-scheme:dark){:root{--bg: #12161a;--card: #1c2227;--text: #e8ecef;--muted: #9aa6b1;--line: #2c343b;--warn-bg: #3d3010;--warn-text: #ffd98a;--bad-bg: #431c1c;--bad-text: #ffb3b3;--ok-bg: #123826;--ok-text: #9be8c0}}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text)}body{font-family:system-ui,-apple-system,Noto Sans Devanagari,sans-serif;font-size:16px;-webkit-tap-highlight-color:transparent}main{max-width:560px;margin:0 auto;padding:12px 12px 32px}h1{margin:24px 0 4px}h2{font-size:16px;margin:0 0 10px}.center{text-align:center;padding-top:30vh}.muted{color:var(--muted)}.small{font-size:13px}.card{background:var(--card);border-radius:14px;padding:14px;margin-bottom:12px;box-shadow:0 1px 3px #00000012}.top{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;gap:8px}.row{display:flex;gap:10px;margin-bottom:12px}.row>*{flex:1}.banner{padding:12px 14px;border-radius:12px;margin-bottom:12px;font-weight:600}.warn.banner{background:var(--warn-bg);color:var(--warn-text)}.bad.banner{background:var(--bad-bg);color:var(--bad-text)}.ok.banner{background:var(--ok-bg);color:var(--ok-text);font-size:20px}.serving{text-align:center}.serving .label{text-transform:uppercase;font-size:13px;letter-spacing:.05em;color:var(--muted)}.huge{font-size:88px;font-weight:800;line-height:1;margin:4px 0}.name{font-size:20px;font-weight:600;margin-bottom:4px}.btn{font:inherit;font-weight:600;border:1px solid var(--line);background:var(--card);color:var(--text);border-radius:12px;padding:14px 12px;min-height:52px;cursor:pointer}.btn:disabled{opacity:.45;cursor:default}.btn.primary{background:var(--primary);color:var(--primary-text);border-color:var(--primary)}.btn.warn{background:var(--warn-bg);color:var(--warn-text);border-color:transparent}.btn.big{width:100%;font-size:18px}.btn.small{min-height:40px;padding:8px 10px;font-size:14px}.btn.next{display:block;width:100%;font-size:30px;min-height:96px;margin-bottom:12px;background:var(--primary);color:var(--primary-text);border:none;border-radius:18px;box-shadow:0 3px 8px #0b7a4b59}.btn.next:active:not(:disabled){transform:scale(.98)}.link{background:none;border:none;color:var(--muted);font:inherit;text-decoration:underline;padding:8px}input{font:inherit;width:100%;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--text);margin:4px 0 10px}input[type=radio]{width:auto;margin:0 6px 0 0}label{display:block;font-weight:600}label.radio{font-weight:400;padding:6px 0}.walkin .btn{width:100%}.token{display:flex;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--line)}.token:first-of-type{border-top:none}.token .num{font-weight:800;font-size:20px;min-width:48px}.token .who{flex:1;min-width:0;overflow-wrap:anywhere}.token .actions{display:flex;gap:6px;flex-shrink:0}details summary{cursor:pointer;font-weight:600}details[open] summary{margin-bottom:8px}.error{color:var(--bad-text)}.login form{margin-top:20px}footer{text-align:center;margin-top:16px}.row.between{justify-content:space-between;align-items:center;flex-wrap:wrap}.row.between>*,.row.wrap>*{flex:none}.row.wrap{flex-wrap:wrap;align-items:center}.leave-form{display:grid;gap:8px;margin-top:10px}.leave-form input[type=date]{width:auto}.tv{--tv-bg: #0b1412;--tv-fg: #f2f7f5;--tv-muted: #93a7a1;--tv-accent: #2bd3bd;--tv-card: #13211e;position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;max-width:none;margin:0;display:flex;flex-direction:column;gap:2vh;padding:3vh 4vw;background:var(--tv-bg);color:var(--tv-fg);overflow:hidden;font-family:system-ui,-apple-system,Noto Sans Devanagari,sans-serif}.tv-center{display:grid;place-items:center;font-size:3vh}.tv-top{display:flex;justify-content:space-between;align-items:center;gap:2vw}.tv-top strong{display:block;font-size:clamp(20px,4vh,44px)}.tv-top span{color:var(--tv-muted);font-size:clamp(14px,2.4vh,26px)}.tv-clock{display:flex;align-items:center;gap:1.5vw;font-size:clamp(20px,4vh,44px);font-variant-numeric:tabular-nums}.tv-offline{color:#ffb44d;font-size:clamp(12px,2vh,20px)}.tv-gear{background:none;border:0;color:var(--tv-muted);font-size:clamp(18px,3vh,32px);cursor:pointer;padding:4px 8px}.tv-banner{background:#3a2d10;color:#ffd98a;border-radius:16px;padding:1.6vh 2vw;font-size:clamp(18px,3.6vh,40px);font-weight:600;text-align:center}.tv-main{flex:1;display:grid;grid-template-columns:2fr 1fr;gap:3vw;min-height:0}.tv-number.empty{font-size:clamp(48px,14vh,160px);color:var(--tv-muted)}.tv-now,.tv-next{background:var(--tv-card);border-radius:28px;padding:3vh 3vw;display:flex;flex-direction:column;min-height:0}.tv-now{align-items:center;justify-content:center;text-align:center}.tv-label{color:var(--tv-muted);font-size:clamp(16px,3.4vh,38px);text-transform:uppercase;letter-spacing:.08em;font-weight:600}.tv-number{font-size:clamp(90px,30vh,340px);line-height:1;font-weight:800;color:var(--tv-accent);font-variant-numeric:tabular-nums;letter-spacing:-.03em;animation:tv-in .6s cubic-bezier(.2,.7,.2,1)}@keyframes tv-in{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:none}}.tv-name{font-size:clamp(24px,6vh,72px);font-weight:700;margin-top:1vh}.tv-next{gap:1.6vh}.tv-next-row{display:flex;gap:1.2vw;align-items:baseline;font-size:clamp(20px,4.6vh,54px);border-bottom:1px solid #22332f;padding-bottom:1.2vh}.tv-next-row b{font-variant-numeric:tabular-nums;min-width:3.2ch}.tv-next-row span{color:var(--tv-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.7em}.tv-muted{color:var(--tv-muted);font-size:4vh}.tv-count{margin-top:auto;color:var(--tv-muted);font-size:clamp(16px,3vh,34px)}.tv-foot{text-align:center;color:var(--tv-muted);font-size:clamp(14px,2.8vh,32px)}.tv-foot b{color:var(--tv-fg)}.tv-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:#050a09d1}.tv-start{display:grid;gap:8px;font:inherit;font-size:clamp(24px,5vh,56px);font-weight:800;cursor:pointer;background:var(--tv-accent);color:#04211d;border:0;border-radius:24px;padding:3vh 5vw}.tv-start small{font-size:.45em;font-weight:600}.tv-settings{position:absolute;top:9vh;right:4vw;background:#1b2b27;border-radius:16px;padding:16px;display:grid;gap:10px;font-size:18px;box-shadow:0 20px 40px #00000080}.tv-settings label{display:flex;gap:8px;align-items:center;font-weight:400}.tv-settings button,.tv-settings a{font:inherit;background:#26403a;color:var(--tv-fg);border:0;border-radius:10px;padding:10px 14px;cursor:pointer;text-align:center;text-decoration:none}@media(orientation:portrait){.tv-main{grid-template-columns:1fr;grid-template-rows:2fr 1fr}}
