@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/barlow-vietnamese-400-normal-Dpl4UHAZ.woff2)format("woff2"),url(/assets/barlow-vietnamese-400-normal-BFeobeCK.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/barlow-latin-ext-400-normal-HxX4XjxC.woff2)format("woff2"),url(/assets/barlow-latin-ext-400-normal-CvBsJvxq.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/barlow-latin-400-normal-qiz4-Cze.woff2)format("woff2"),url(/assets/barlow-latin-400-normal-fsAxiSwU.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/barlow-vietnamese-500-normal-zTViEIzf.woff2)format("woff2"),url(/assets/barlow-vietnamese-500-normal-GNfB7rCE.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/barlow-latin-ext-500-normal-DOaysfXq.woff2)format("woff2"),url(/assets/barlow-latin-ext-500-normal-CJPcKP2Q.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/barlow-latin-500-normal-BPAOfeC8.woff2)format("woff2"),url(/assets/barlow-latin-500-normal-C1h8hMer.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-vietnamese-600-normal-DcjprdFV.woff2)format("woff2"),url(/assets/barlow-vietnamese-600-normal-CA_GiK2e.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-latin-ext-600-normal-B8NK_A3D.woff2)format("woff2"),url(/assets/barlow-latin-ext-600-normal-DMVRjfRT.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-latin-600-normal-DILqtrty.woff2)format("woff2"),url(/assets/barlow-latin-600-normal-CNwfPWQD.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-vietnamese-700-normal-D6euyNzi.woff2)format("woff2"),url(/assets/barlow-vietnamese-700-normal-4Jt4k04K.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-latin-ext-700-normal-BLuWmldJ.woff2)format("woff2"),url(/assets/barlow-latin-ext-700-normal-CctuGmmz.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-latin-700-normal-A9pxMQ4z.woff2)format("woff2"),url(/assets/barlow-latin-700-normal-__SGTsZ1.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-condensed-vietnamese-600-normal-A5AYRdjN.woff2)format("woff2"),url(/assets/barlow-condensed-vietnamese-600-normal-CNlPk46_.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-condensed-latin-ext-600-normal-18ESti3H.woff2)format("woff2"),url(/assets/barlow-condensed-latin-ext-600-normal-Clv9cIcR.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/barlow-condensed-latin-600-normal-DepVgxBB.woff2)format("woff2"),url(/assets/barlow-condensed-latin-600-normal-BFJEwTuo.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-condensed-vietnamese-700-normal-DYeBwlKR.woff2)format("woff2"),url(/assets/barlow-condensed-vietnamese-700-normal-DhIzd8Tb.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-condensed-latin-ext-700-normal-CwuXbfVR.woff2)format("woff2"),url(/assets/barlow-condensed-latin-ext-700-normal-BIHFfxf0.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/barlow-condensed-latin-700-normal-v1xN8_Wq.woff2)format("woff2"),url(/assets/barlow-condensed-latin-700-normal-Dmwat-ge.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#0e1726;--bg-raise:#142035;--surface:#182641;--surface-2:#1f3052;--line:#2a3d63;--line-strong:#3a5283;--text:#eef2f8;--text-2:#b6c2d6;--muted:#8e9cb5;--accent:#ffb224;--accent-press:#f2a20c;--on-accent:#1a1204;--accent-text:#ffc457;--accent-soft:#ffb22424;--st-requested:#ffb224;--st-acknowledged:#6cb4ff;--st-picked:#45d995;--st-done:#8e9cb5;--st-stop:#ff7a6b;--danger:#ff7a6b;--ok:#45d995;--warn:#ffb224;--focus:#9fd0ff;--radius-s:10px;--radius-m:16px;--radius-l:28px;--shadow-press:inset 0 -3px 0 #00000038;--font:"Barlow", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-sign:"Barlow Condensed", "Barlow", system-ui, sans-serif;--fs-xs:.8125rem;--fs-s:.9375rem;--fs-m:1.0625rem;--fs-l:1.3125rem;--fs-xl:1.625rem;--fs-2xl:2.0625rem;--fs-3xl:2.625rem;--tap:56px;--gutter:20px;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--safe-right:env(safe-area-inset-right,0px);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--bg:#eef1f6;--bg-raise:#e4e9f1;--surface:#fff;--surface-2:#f3f5f9;--line:#d3dae6;--line-strong:#aeb9cc;--text:#0e1726;--text-2:#33415c;--muted:#5a6882;--accent:#ffb224;--accent-press:#f2a20c;--on-accent:#1a1204;--accent-text:#8a5200;--accent-soft:#ffb22433;--st-requested:#b26b00;--st-acknowledged:#1f6fd1;--st-picked:#11804f;--st-done:#5a6882;--st-stop:#c23b2b;--danger:#c23b2b;--ok:#11804f;--warn:#8a5200;--focus:#1f6fd1;--shadow-press:inset 0 -3px 0 #0000001f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;background:var(--bg)}body{background:var(--bg);min-height:100dvh;color:var(--text);font-family:var(--font);font-size:var(--fs-m);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none;margin:0;line-height:1.5}h1,h2,h3{font-family:var(--font-sign);letter-spacing:.005em;margin:0;font-weight:700;line-height:1.1}h1{font-size:var(--fs-2xl)}h2{font-size:var(--fs-xl)}h3{font-size:var(--fs-l);font-weight:600}p{margin:0}a{color:var(--accent-text);text-underline-offset:3px}:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:6px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app{min-height:100dvh;padding:calc(var(--safe-top) + 8px) calc(var(--safe-right) + var(--gutter)) calc(var(--safe-bottom) + 24px) calc(var(--safe-left) + var(--gutter));flex-direction:column;max-width:640px;margin:0 auto;display:flex}.topbar{min-height:var(--tap);justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;display:flex}.wordmark{font-family:var(--font-sign);font-weight:700;font-size:var(--fs-l);letter-spacing:.01em;align-items:center;gap:10px;display:flex}.wordmark svg{color:var(--accent)}.wordmark small{font-family:var(--font);font-weight:500;font-size:var(--fs-s);color:var(--muted)}.topbar-actions{gap:4px;display:flex}.stack{flex-direction:column;gap:16px;display:flex}.stack-l{flex-direction:column;gap:32px;display:flex}.row{align-items:center;gap:12px;display:flex}.row-wrap{flex-wrap:wrap;gap:12px;display:flex}.grow{flex:1}.muted{color:var(--muted)}.small{font-size:var(--fs-s)}.xsmall{font-size:var(--fs-xs)}.section{border-top:1px solid var(--line);flex-direction:column;gap:14px;padding-top:20px;display:flex}.section>header{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.section-lede{color:var(--text-2);font-size:var(--fs-s);max-width:60ch}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-m);padding:18px}.btn{appearance:none;min-height:var(--tap);border-radius:var(--radius-s);border:1px solid var(--line-strong);background:var(--surface-2);color:var(--text);font-family:var(--font);font-size:var(--fs-m);cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation;justify-content:center;align-items:center;gap:10px;padding:0 22px;font-weight:600;text-decoration:none;transition:transform .12s,background-color .16s,border-color .16s,opacity .16s;display:inline-flex}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.btn-primary{background:var(--accent);color:var(--on-accent);box-shadow:var(--shadow-press);border-color:#0000}.btn-primary:active{background:var(--accent-press)}.btn-quiet{color:var(--text-2);background:0 0;border-color:#0000}.btn-danger{border-color:var(--line-strong);color:var(--danger);background:0 0}.btn-block{width:100%}.btn-icon{min-width:var(--tap);color:var(--text-2);background:0 0;border-color:#0000;padding:0}.btn-xl{min-height:88px;font-family:var(--font-sign);font-size:var(--fs-2xl);letter-spacing:.01em;border-radius:var(--radius-m);font-weight:700}.field{flex-direction:column;gap:6px;display:flex}.field label{font-weight:600;font-size:var(--fs-s);color:var(--text-2)}.input{min-height:var(--tap);border-radius:var(--radius-s);border:1px solid var(--line-strong);background:var(--bg-raise);width:100%;color:var(--text);font:inherit;font-size:max(16px, var(--fs-m));padding:0 16px}.input:focus-visible{outline:3px solid var(--focus);outline-offset:1px;border-color:#0000}.form-error{color:var(--danger);font-weight:600;font-size:var(--fs-s);align-items:flex-start;gap:8px;display:flex}.check-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.check-item{border-bottom:1px solid var(--line);grid-template-columns:32px 1fr auto;align-items:start;gap:12px;padding:14px 0;display:grid}.check-item:last-child{border-bottom:0}.check-mark{border-radius:50%;place-items:center;width:28px;height:28px;margin-top:1px;display:grid}.check-mark[data-state=ok]{background:color-mix(in srgb, var(--ok) 18%, transparent);color:var(--ok)}.check-mark[data-state=bad]{background:color-mix(in srgb, var(--danger) 18%, transparent);color:var(--danger)}.check-mark[data-state=unknown]{background:var(--surface-2);color:var(--muted)}.check-title{font-weight:600}.check-detail{color:var(--muted);font-size:var(--fs-s)}.check-state{font-size:var(--fs-xs);color:var(--muted);padding-top:4px;font-weight:700}.notice{border-radius:var(--radius-s);background:var(--accent-soft);border:1px solid color-mix(in srgb, var(--accent) 45%, transparent);color:var(--text);font-size:var(--fs-s);align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.notice svg{color:var(--accent-text);flex:none;margin-top:2px}.notice[data-tone=danger]{background:color-mix(in srgb, var(--danger) 14%, transparent);border-color:color-mix(in srgb, var(--danger) 45%, transparent)}.notice[data-tone=danger] svg{color:var(--danger)}.notice[data-tone=ok]{background:color-mix(in srgb, var(--ok) 12%, transparent);border-color:color-mix(in srgb, var(--ok) 40%, transparent)}.notice[data-tone=ok] svg{color:var(--ok)}.steps{counter-reset:step;flex-direction:column;gap:14px;margin:0;padding:0;list-style:none;display:flex}.steps li{counter-increment:step;grid-template-columns:34px 1fr;align-items:start;gap:12px;display:grid}.steps li:before{content:counter(step);border:2px solid var(--accent);width:30px;height:30px;color:var(--accent-text);font-family:var(--font-sign);border-radius:50%;place-items:center;font-weight:700;display:grid}.inline-icon{vertical-align:-4px;color:var(--accent-text);display:inline-block}.toast{left:50%;bottom:calc(var(--safe-bottom) + 20px);border-radius:var(--radius-s);background:var(--text);max-width:min(520px,100vw - 32px);color:var(--bg);font-weight:600;font-size:var(--fs-s);z-index:50;padding:14px 18px;animation:.22s ease-out toast-in;position:fixed;transform:translate(-50%)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,10px)}}.alarm-btn[aria-pressed=true]{background:var(--danger);color:#fff;animation:.7s ease-in-out infinite alternate alarm-pulse}@keyframes alarm-pulse{to{box-shadow:0 0 0 10px color-mix(in srgb, var(--danger) 25%, transparent)}}.device-list{margin:0;padding:0;list-style:none}.device-list li{border-bottom:1px solid var(--line);font-size:var(--fs-s);justify-content:space-between;gap:12px;padding:10px 0;display:flex}.login{flex-direction:column;flex:1;justify-content:center;gap:28px;padding-bottom:10vh;display:flex}.login-mark{color:var(--accent)}.quiet-screen{flex-direction:column;flex:1;justify-content:center;gap:16px;display:flex}.quiet-screen .beacon{color:var(--muted)}.emergency{text-align:center;font-size:var(--fs-s);color:var(--text-2);margin-top:24px}.emergency a{color:var(--text);font-weight:700}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.text-strong{color:var(--text)}.whoami{flex-wrap:wrap;align-items:center;gap:4px;margin:-4px 0 8px;display:flex}.link-btn{appearance:none;color:var(--accent-text);font:inherit;text-underline-offset:3px;cursor:pointer;background:0 0;border:0;margin:-10px 0;padding:10px 6px;font-weight:600;text-decoration:underline}.select{appearance:none;background-image:linear-gradient(45deg, transparent 50%, var(--text-2) 50%), linear-gradient(135deg, var(--text-2) 50%, transparent 50%);background-position:calc(100% - 22px),calc(100% - 16px);background-repeat:no-repeat;background-size:6px 6px;padding-right:44px}.label{font-weight:600;font-size:var(--fs-s);color:var(--text-2)}.req{color:var(--muted);font-weight:500;font-size:var(--fs-xs)}.input-attention{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.home{flex-direction:column;flex:1;gap:24px;display:flex}.duty-pill{border:1px solid var(--line);font-size:var(--fs-s);color:var(--text-2);border-radius:999px;align-self:center;align-items:center;gap:8px;padding:6px 14px;font-weight:600;display:inline-flex}.duty-pill .dot{background:var(--ok);width:9px;height:9px;box-shadow:0 0 0 3px color-mix(in srgb, var(--ok) 25%, transparent);border-radius:50%}.hero{flex-direction:column;flex:1;justify-content:center;align-items:center;gap:30px;padding:24px 0 8px;display:flex}.hero-btn{aspect-ratio:1;background:var(--accent);width:min(72vw,300px);color:var(--on-accent);cursor:pointer;touch-action:manipulation;box-shadow:inset 0 -8px 0 #0000002e, 0 18px 50px -12px color-mix(in srgb, var(--accent) 55%, transparent);border:0;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:10px;transition:transform .14s,box-shadow .14s,background-color .16s;display:flex;position:relative}.hero-btn:active{box-shadow:inset 0 -3px 0 #0000002e, 0 8px 24px -10px color-mix(in srgb, var(--accent) 55%, transparent);transform:scale(.96)}.hero-btn:disabled{background:var(--surface-2);color:var(--muted);box-shadow:none;cursor:not-allowed}.hero-btn:focus-visible{outline:4px solid var(--focus);outline-offset:30px;border-radius:50%}.hero-label{font-family:var(--font-sign);letter-spacing:.005em;font-size:clamp(2rem,9vw,2.5rem);font-weight:700;line-height:1}.hero-rings{border:2px solid color-mix(in srgb, var(--accent) 40%, transparent);pointer-events:none;border-radius:50%;position:absolute;inset:-16px}.hero-rings:after{content:"";border:2px solid color-mix(in srgb, var(--accent) 22%, transparent);border-radius:50%;animation:2.8s ease-out infinite ring-pulse;position:absolute;inset:-16px}@keyframes ring-pulse{0%{opacity:1;transform:scale(.94)}to{opacity:0;transform:scale(1.08)}}.hero-btn:disabled .hero-rings{display:none}.hero-btn[aria-busy=true]{animation:.9s ease-in-out infinite alternate busy}@keyframes busy{to{transform:scale(.97)}}.hero-sub{color:var(--text-2);text-align:center;font-size:var(--fs-s)}.rules{border:1px solid var(--line);border-radius:var(--radius-m);background:var(--bg-raise)}.rules summary{min-height:var(--tap);cursor:pointer;align-items:center;gap:10px;padding:0 16px;font-weight:600;list-style:none;display:flex}.rules summary::-webkit-details-marker{display:none}.rules summary:after{content:"";border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);width:9px;height:9px;margin-left:auto;transition:transform .16s;transform:rotate(45deg)translateY(-3px)}.rules[open] summary:after{transform:rotate(-135deg)translateY(-3px)}.rules summary svg{color:var(--accent-text)}.rules ul{color:var(--text-2);flex-direction:column;gap:8px;margin:0;padding:0 16px 16px 42px;display:flex}.status-banner{--tone:var(--st-requested);border-radius:var(--radius-m);border:1px solid color-mix(in srgb, var(--tone) 50%, transparent);background:color-mix(in srgb, var(--tone) 13%, var(--bg));grid-template-columns:48px 1fr;align-items:center;gap:14px;padding:16px;transition:background-color .3s,border-color .3s;animation:.3s ease-out banner-in;display:grid}@keyframes banner-in{0%{opacity:.6;transform:scale(.98)}}.status-banner.tone-acknowledged{--tone:var(--st-acknowledged)}.status-banner.tone-picked{--tone:var(--st-picked)}.status-icon{background:var(--tone);width:48px;height:48px;color:var(--bg);border-radius:50%;place-items:center;display:grid}.tone-requested .status-icon{animation:1.6s ease-in-out infinite wait-pulse}@keyframes wait-pulse{50%{box-shadow:0 0 0 8px color-mix(in srgb, var(--tone) 22%, transparent)}}.status-title{font-family:var(--font-sign);font-weight:700;font-size:var(--fs-xl);line-height:1.1}.status-sub{color:var(--text-2);font-size:var(--fs-s);margin-top:2px}.position{font-family:var(--font-sign);font-weight:600;font-size:var(--fs-2xl);margin-top:-8px;line-height:1.1}.position-num{color:var(--accent-text);font-size:1.5em;font-weight:700}.stepper{grid-template-columns:var(--tap) 1fr var(--tap);align-items:center;gap:8px;max-width:260px;display:grid}.stepper .btn{padding:0}.stepper output{text-align:center;font-family:var(--font-sign);font-weight:700;font-size:var(--fs-2xl)}.line{margin:0;padding:0;list-style:none}.line li{border-bottom:1px solid var(--line);grid-template-columns:36px 1fr auto;align-items:center;gap:12px;min-height:52px;display:grid}.line li:last-child{border-bottom:0}.line-pos{background:var(--surface-2);width:32px;height:32px;font-family:var(--font-sign);color:var(--text-2);border-radius:50%;place-items:center;font-weight:700;display:grid}.line li.is-me .line-pos{background:var(--accent);color:var(--on-accent)}.line li.is-me .line-name{font-weight:700}.line .you{color:var(--muted);font-weight:500}.line-state{font-size:var(--fs-xs);color:var(--muted);font-weight:700}.btn.armed{background:var(--danger);border-color:var(--danger);color:#fff}.finish-mark{background:var(--surface-2);width:72px;height:72px;color:var(--text-2);border-radius:50%;place-items:center;display:grid}.finish-dropped_off{background:color-mix(in srgb, var(--ok) 18%, transparent);color:var(--ok)}.app:has(.tabbar){padding-bottom:calc(var(--safe-bottom) + 96px)}.tabbar{z-index:20;padding:6px max(var(--safe-left), 8px) calc(var(--safe-bottom) + 6px) max(var(--safe-right), 8px);background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(14px);border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.tab{appearance:none;min-height:var(--tap);color:var(--muted);font:inherit;font-size:var(--fs-xs);cursor:pointer;border-radius:var(--radius-s);background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-weight:600;display:flex}.tab[aria-current=page]{color:var(--accent-text)}.tab-icon{display:grid;position:relative}.badge{background:var(--danger);color:#fff;border-radius:10px;place-items:center;min-width:20px;height:20px;padding:0 5px;font-size:12px;font-weight:700;display:grid;position:absolute;top:-6px;right:-12px}.toast{bottom:calc(var(--safe-bottom) + 92px)}.duty{border-radius:var(--radius-m);border:1px solid var(--line);background:var(--bg-raise);justify-content:space-between;align-items:center;gap:16px;padding:16px;display:flex}.duty h1{font-size:var(--fs-xl)}.duty.is-on{border-color:color-mix(in srgb, var(--ok) 50%, transparent);background:color-mix(in srgb, var(--ok) 10%, var(--bg))}.duty.is-on h1:before{content:"";background:var(--ok);vertical-align:3px;border-radius:50%;width:10px;height:10px;margin-right:8px;display:inline-block}.live-line{color:var(--muted);align-items:center;gap:8px;margin-top:-18px;display:flex}.live-dot{background:var(--muted);border-radius:50%;width:8px;height:8px}.live-dot.on{background:var(--ok)}.empty{text-align:center;color:var(--ok);flex-direction:column;align-items:center;gap:10px;padding:40px 12px;display:flex}.empty h2{color:var(--text)}.cards{flex-direction:column;gap:16px;margin:0;padding:0;list-style:none;display:flex}.card{--tone:var(--st-requested);border-radius:var(--radius-m);background:var(--surface);border:1px solid var(--line);flex-direction:column;gap:12px;padding:18px 18px 12px 24px;display:flex;position:relative;overflow:hidden}.card:before{content:"";background:var(--tone);width:6px;position:absolute;top:0;bottom:0;left:0}.card.st-acknowledged{--tone:var(--st-acknowledged)}.card.st-picked_up{--tone:var(--st-picked)}.card-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.card-head h3{font-size:var(--fs-xl);font-weight:700}.chip{--tone:var(--st-requested);font-size:var(--fs-xs);color:var(--tone);background:color-mix(in srgb, var(--tone) 15%, transparent);border:1px solid color-mix(in srgb, var(--tone) 40%, transparent);border-radius:999px;flex:none;padding:4px 10px;font-weight:700}.chip.st-acknowledged{--tone:var(--st-acknowledged)}.chip.st-picked_up{--tone:var(--st-picked)}.chip.st-dropped_off{--tone:var(--st-done)}.chip.st-cancelled,.chip.st-no_show{--tone:var(--st-stop)}.facts{flex-direction:column;gap:8px;margin:0;display:flex}.facts div{grid-template-columns:24px 1fr;gap:8px;display:grid}.facts dt{color:var(--muted);padding-top:2px}.facts dd{margin:0}.btn-icon-bordered{min-width:var(--tap);padding:0}.card-secondary{border-top:1px solid var(--line);justify-content:flex-end;gap:4px;margin-top:4px;padding-top:8px;display:flex}.card-secondary .btn{min-height:48px;font-size:var(--fs-s);padding:0 14px}.danger-text{color:var(--danger)}.recent{border-top:1px solid var(--line);padding-top:8px}.recent summary{min-height:var(--tap);color:var(--text-2);cursor:pointer;align-items:center;font-weight:600;display:flex}.recent ul{margin:0;padding:0;list-style:none}.recent li{border-bottom:1px solid var(--line);grid-template-columns:1fr auto auto;align-items:center;gap:12px;min-height:48px;display:grid}.roster-list{margin:0;padding:0;list-style:none}.roster-list li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;min-height:56px;display:flex}.nav-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.nav-row:empty,.row-wrap:empty{display:none}.nav-row .btn{padding:0 12px}.emergency .emergency-open{color:var(--text);font-weight:700}.emergency-confirm{border-radius:var(--radius-m);border:1px solid color-mix(in srgb, var(--danger) 55%, transparent);background:color-mix(in srgb, var(--danger) 10%, var(--bg));text-align:center;flex-direction:column;gap:10px;margin-top:24px;padding:16px;animation:.2s ease-out banner-in;display:flex}.emergency-title{font-family:var(--font-sign);font-weight:700;font-size:var(--fs-xl)}.sos-call{color:#fff;background:#c62f21;border-color:#0000}
