:root{
    --navy:#071a33;--deep:#0c2d5e;--blue:#1268e3;--blue-700:#0b4fb3;--blue-50:#e8f1fb;--sky:#5eb3ff;--aqua:#1268e3;--aqua-100:#e8f1fb;
  --red:#d7193a;--red-ink:#b3122f;
  --ink:#071a33;--muted:#4b5d78;--line:#dbe5f0;--bg:#f2f6fb;--card:#fff;
  --ok:#0f6b3a;--ok-50:#e3f5ea;--warn:#7a4a00;--warn-50:#fff6e6;--bad:#b3122f;--bad-50:#fde7ea;
  --sun:#ffb020;--radius:10px;--shadow:0 1px 0 rgba(7,26,51,.04),0 8px 24px -12px rgba(7,26,51,.18);
  --f-disp:"Bricolage Grotesque","Instrument Sans",system-ui,sans-serif;
  --f-body:"Instrument Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  --f-mono:"Geist Mono",ui-monospace,SFMono-Regular,Menlo,monospace;
  font-family:var(--f-body);color:var(--ink);
}
@font-face{font-family:"Bricolage Grotesque";src:url(fonts/bricolage.woff2) format("woff2");font-weight:200 800;font-stretch:75% 100%;font-display:swap}
@font-face{font-family:"Instrument Sans";src:url(fonts/instrument.woff2) format("woff2");font-weight:400 700;font-display:swap}
@font-face{font-family:"Geist Mono";src:url(fonts/geistmono.woff2) format("woff2");font-weight:100 900;font-display:swap}
*{box-sizing:border-box}
html,body{margin:0;background:var(--bg)}
body{font-size:16px;line-height:1.45;-webkit-font-smoothing:antialiased}
a{color:var(--blue-700)}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:3px solid var(--sky);outline-offset:2px}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;z-index:99;background:#fff;padding:8px}
h1,h2,h3{font-family:var(--f-disp);line-height:1.1;margin:0 0 .4em;letter-spacing:-.02em;font-weight:750}
h1{font-size:1.75rem}h2{font-size:1.2rem}h3{font-size:1rem}
.muted{color:var(--muted)}.small{font-size:.86rem}.tiny{font-size:.75rem}
.spacer{flex:1}
.demo-bar{display:flex;align-items:center;gap:12px;padding:9px 16px;background:var(--navy);color:#fff;font-size:.85rem;position:sticky;top:0;z-index:30;box-shadow:inset 0 -3px 0 0 var(--deep)}
.demo-brand{display:flex;white-space:nowrap;align-items:center;gap:8px;color:#fff;text-decoration:none;font-family:var(--f-disp);font-weight:700;font-size:1.08rem;letter-spacing:-.02em}
.demo-brand b{color:var(--sky);font-weight:800}
.demo-pill{border:1px solid rgba(255,255,255,.35);color:#fff;font-family:var(--f-mono);font-weight:600;font-size:.68rem;letter-spacing:.08em;padding:3px 8px;border-radius:4px;white-space:nowrap}
.demo-link{color:#cfe0f5;text-decoration:none;white-space:nowrap;font-weight:600}
.demo-reset{background:transparent;border:1px solid rgba(255,255,255,.35);color:#fff;border-radius:6px;padding:5px 10px;cursor:pointer;white-space:nowrap;font-weight:600}
.demo-reset:hover{background:var(--deep)}
@media (max-width:480px){.demo-link{display:none}.demo-bar{gap:8px;padding:8px 10px}.demo-pill .long{display:none}.demo-reset{padding:5px 8px}}
.appnav{display:flex;gap:2px;overflow-x:auto;background:#fff;border-bottom:1px solid var(--line);padding:0 12px;scrollbar-width:none}
.appnav:empty{display:none}
.appnav a{flex:0 0 auto;text-decoration:none;color:var(--muted);font-weight:600;font-size:.92rem;padding:13px 12px 11px;border-bottom:3px solid transparent}
.appnav a[aria-current=page]{color:var(--navy);border-bottom-color:var(--blue)}.appnav a:hover{color:var(--navy)}
main{max-width:1200px;margin:0 auto;padding:22px 16px 64px;outline:none}
main.narrow{max-width:520px}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:16px;box-shadow:var(--shadow)}
.grid{display:grid;gap:14px}
.grid>*{min-width:0}
@media(min-width:720px){.g2{grid-template-columns:1fr 1fr}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}.g5{grid-template-columns:repeat(5,1fr)}}
.row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.stack>*+*{margin-top:12px}
.pagehead{display:flex;align-items:flex-end;gap:12px;flex-wrap:wrap;margin:6px 0 16px}
.pagehead .grow{flex:1;min-width:220px}
.eyebrow{font-family:var(--f-mono);font-size:.72rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--blue-700)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 16px;border-radius:8px;border:1px solid #c6d4e4;background:#fff;font-weight:700;cursor:pointer;text-decoration:none;color:var(--ink);transition:background .15s,border-color .15s}
.btn:hover{border-color:var(--blue)}
.btn.primary{background:var(--blue);border-color:var(--blue);color:#fff}
.btn.primary:hover{background:var(--blue-700)}
.btn.big{min-height:58px;font-size:1.15rem;width:100%;border-radius:10px}
.btn.warn{background:#fff;border-color:#e3a63a;color:var(--warn)}
.btn.danger{background:var(--red);border-color:var(--red);color:#fff}.btn.danger:hover{background:var(--red-ink)}
.btn.ok{background:var(--ok-50);border-color:#8fd0aa;color:#0d5230}
.btn.sm{min-height:36px;padding:6px 11px;font-size:.85rem;border-radius:7px}
.btn[disabled]{opacity:.45;cursor:not-allowed}
.chip{display:inline-flex;align-items:center;gap:6px;font-size:.76rem;font-weight:700;padding:3px 8px;border-radius:5px;background:var(--blue-50);color:var(--blue-700);white-space:nowrap}
.chip.ok{background:var(--ok-50);color:var(--ok)}.chip.warn{background:var(--warn-50);color:var(--warn)}.chip.bad{background:var(--bad-50);color:var(--bad)}.chip.gray{background:#edf1f6;color:#44556e}
.dot{width:8px;height:8px;border-radius:50%;background:currentColor;display:inline-block}
label.f{display:block;font-weight:700;margin-bottom:6px}
.hint{font-size:.83rem;color:var(--muted);margin-top:4px}
.err{font-size:.88rem;color:var(--bad);font-weight:700;margin-top:6px}
input[type=text],input[type=number],input[type=time],input[type=date],input[type=tel],select,textarea{width:100%;min-height:48px;padding:10px 12px;border:1.5px solid #c6d4e4;border-radius:8px;background:#fff;font-size:1rem}
textarea{min-height:90px;resize:vertical}
input:focus,select:focus,textarea:focus{border-color:var(--blue);outline:3px solid #cfe2fb;outline-offset:0}
input.code{font-family:var(--f-mono);font-size:1.9rem;letter-spacing:.45em;text-align:center;font-weight:700}
.field{margin-bottom:18px}
.check{display:flex;gap:12px;align-items:flex-start;padding:12px;border:1.5px solid #c6d4e4;border-radius:8px;background:#fff;cursor:pointer}
.check input{width:26px;height:26px;margin:0;flex:0 0 auto;accent-color:var(--blue)}
.stepper{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1.5px solid #c6d4e4;border-radius:8px;padding:6px 6px 6px 14px;background:#fff}
.stepper .lbl{font-weight:700}.stepper .lbl small{display:block;font-weight:500;color:var(--muted);font-size:.8rem}
.stepper .ctl{display:flex;align-items:center;gap:6px}
.stepper button{width:48px;height:48px;border-radius:7px;border:none;background:var(--blue-50);color:var(--blue-700);font-size:1.6rem;font-weight:700;cursor:pointer;line-height:1}
.stepper button[disabled]{opacity:.35;cursor:not-allowed}
.stepper output{min-width:34px;text-align:center;font-family:var(--f-disp);font-size:1.45rem;font-weight:750;font-variant-numeric:tabular-nums}
.sugg{display:grid;gap:6px;margin-top:6px}
.sugg button{text-align:left;padding:10px 12px;border:1px solid var(--line);border-radius:7px;background:#fff;cursor:pointer;min-height:44px}
.sugg button:hover{background:var(--blue-50)}
.ci-head{background:var(--deep);color:#fff;border-radius:12px;padding:18px 18px 26px;margin-bottom:18px;position:relative;overflow:hidden}
.ci-head::after{content:"";position:absolute;left:0;right:0;bottom:8px;height:6px;background:radial-gradient(circle at 3px 3px,var(--red) 2.6px,transparent 3px) 0 0/22px 6px repeat-x,radial-gradient(circle at 3px 3px,#fff 2.6px,transparent 3px) 11px 0/22px 6px repeat-x;opacity:.9}
.ci-head h1{font-size:1.6rem;margin:4px 0 4px}
.ci-head .wave{position:absolute;right:-16px;top:6px;opacity:.18;width:170px}
.ci-head .eyebrow{color:var(--sky)}
.quick{border:1.5px dashed var(--sky);background:var(--blue-50)}
.privacy-note{font-size:.8rem;color:var(--muted);text-align:center;margin-top:14px}
.pass{border-radius:16px;color:#fff;padding:26px 20px 22px;text-align:center;box-shadow:0 18px 40px -18px rgba(7,26,51,.55);position:relative;overflow:hidden}
.pass::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(135deg,rgba(255,255,255,.06) 0 14px,transparent 14px 28px);pointer-events:none}
.pass .tick{width:76px;height:76px;border-radius:50%;background:rgba(255,255,255,.22);display:grid;place-items:center;margin:0 auto 10px}
.pass .clock{font-family:var(--f-disp);font-size:3.4rem;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.03em;line-height:1}
.pass .clock small{font-size:1.3rem;opacity:.85}
.pass .colorname{display:inline-block;margin:14px 0 6px;background:#fff;color:#111;border-radius:6px;padding:7px 18px;font-family:var(--f-mono);font-size:1.4rem;font-weight:800;letter-spacing:.14em}
.pass .meta{opacity:.95;font-weight:600}
.pulse{animation:pulse 1.6s ease-in-out infinite}
@keyframes pulse{50%{transform:scale(1.06)}}
@media (prefers-reduced-motion:reduce){.pulse{animation:none}}
.lg-top{display:grid;gap:12px}
@media(min-width:760px){.lg-top{grid-template-columns:1.2fr 1fr 1fr}}
.bignum{font-family:var(--f-disp);font-size:3rem;font-weight:800;letter-spacing:-.03em;font-variant-numeric:tabular-nums;line-height:1}
.bignum small{font-size:1.1rem;color:var(--muted);font-weight:700}
.bar{height:10px;background:#e3ebf5;border-radius:3px;overflow:hidden;margin-top:10px}
.bar>span{display:block;height:100%;background:var(--blue);border-radius:3px}
.bar.hot>span{background:var(--red)}
.codebox{font-family:var(--f-mono);font-size:2.3rem;font-weight:700;letter-spacing:.22em}
.swatch{display:inline-block;padding:3px 10px;border-radius:5px;color:#fff;font-family:var(--f-mono);font-weight:700;letter-spacing:.1em}
.actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.actions .btn{flex-direction:column;min-height:78px;font-size:.95rem;gap:4px}
.actions .btn svg{width:26px;height:26px}
.slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.slot{border:1.5px solid var(--line);border-radius:7px;padding:8px;text-align:center;font-size:.85rem}
.slot b{display:block;font-size:.95rem}
.slot.done{background:var(--ok-50);border-color:#86d7a0;color:#14532d}
.slot.over{background:var(--bad-50);border-color:#f3a6a6;color:#7f1d1d}
.slot.due{background:#fff}
.slot-log{cursor:pointer;font:inherit;border-style:dashed;border-color:#8fb3dc;color:var(--ink,#0b4fb3)}
.slot-log:hover{background:#f2f7fd}
.list{list-style:none;margin:0;padding:0}
.list li{display:flex;align-items:center;gap:10px;padding:10px 2px;border-top:1px solid var(--line)}
.list li:first-child{border-top:none}
.list .t{font-family:var(--f-mono);font-size:.85rem;font-weight:600;min-width:72px;color:var(--muted)}
.list .who{flex:1;min-width:0}
.list .chip{white-space:normal}
.list .who div{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.list li.left{opacity:.5}
.closed-banner{background:var(--red);color:#fff;border-radius:8px;padding:12px 14px;font-weight:700}
.tablewrap{overflow-x:auto;border:1px solid var(--line);border-radius:10px;background:#fff}
table{border-collapse:collapse;width:100%;font-size:.9rem}
th,td{padding:9px 10px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
th{background:#f5f8fc;font-family:var(--f-mono);font-weight:600;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
tr:last-child td{border-bottom:none}
td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}
td .flag{color:var(--bad);font-weight:800}
tr.clickable{cursor:pointer}tr.clickable:hover td{background:#f2f7fd}
.kpi{padding:14px 16px}
.kpi .v{font-family:var(--f-disp);font-size:2.1rem;font-weight:800;letter-spacing:-.03em;font-variant-numeric:tabular-nums;line-height:1.1}
.kpi .l{font-size:.8rem;color:var(--muted);font-weight:600;margin-top:2px}
.modal{position:fixed;inset:0;background:rgba(7,26,51,.6);z-index:50;display:flex;align-items:flex-end;justify-content:center}
.modal[hidden]{display:none}
.sheet{background:#fff;width:100%;max-width:560px;max-height:92vh;overflow:auto;border-radius:14px 14px 0 0;padding:18px 18px 10px;-webkit-overflow-scrolling:touch;display:flex;flex-direction:column}
.sheet form{display:flex;flex-direction:column;gap:0;flex:1;min-height:0}
.sheet form .btn.big{position:sticky;bottom:0;margin-top:8px;z-index:2;box-shadow:0 -8px 16px #fff}
@media(min-width:640px){.modal{align-items:center}.sheet{border-radius:14px}}
.sheet-head{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.sheet-head h2{flex:1;margin:0}
.x{width:44px;height:44px;border-radius:8px;border:1px solid var(--line);background:#fff;font-size:1.4rem;cursor:pointer}
.two{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}
@media(max-width:420px){.two{grid-template-columns:1fr}}
input,select,textarea{min-width:0;max-width:100%}
.rangeflag{font-size:.8rem;font-weight:800;margin-top:4px;min-height:1em}
.rangeflag.bad{color:var(--bad)}.rangeflag.ok{color:var(--ok)}
.toast{visibility:hidden;opacity:0;position:fixed;left:50%;bottom:20px;transform:translateX(-50%) translateY(120px);background:var(--navy);color:#fff;padding:12px 18px;border-radius:8px;font-weight:700;transition:transform .25s;z-index:60;max-width:90vw}
.toast.show{visibility:visible;opacity:1;transform:translateX(-50%) translateY(0)}
.tiles{display:grid;gap:12px}
@media(min-width:700px){.tiles{grid-template-columns:repeat(3,1fr)}}
.tile{display:block;text-decoration:none;color:inherit;padding:20px;border-radius:12px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);transition:transform .15s,border-color .15s}
.tile:hover{transform:translateY(-2px);border-color:var(--blue)}
.tile .ic{width:44px;height:44px;border-radius:8px;background:var(--deep);display:grid;place-items:center;margin-bottom:12px;color:#fff}
.tile .who{font-family:var(--f-mono);font-size:.7rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--blue-700);margin-bottom:4px}
.poolgrid{display:grid;gap:12px}
@media(min-width:700px){.poolgrid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1050px){.poolgrid{grid-template-columns:repeat(3,1fr)}}
.poolcard{cursor:pointer;text-align:left;width:100%;font:inherit}
.poolcard:hover{border-color:var(--blue)}
.poolcard .mini{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px}
.poolcard .mini div{background:#f5f8fc;border-radius:7px;padding:8px}
.poolcard .mini b{display:block;font-size:1.15rem;font-variant-numeric:tabular-nums}
.poolcard .mini span{font-size:.72rem;color:var(--muted);font-weight:700}
.report{background:#fff;max-width:8.5in;margin:0 auto;padding:.45in .5in;border:1px solid var(--line);border-radius:6px;box-shadow:var(--shadow)}
.report h1{font-size:1.5rem;margin:0}
.rep-head{display:flex;justify-content:space-between;gap:12px;border-bottom:3px solid var(--deep);padding-bottom:10px;margin-bottom:14px}
.rep-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:14px}
.rep-kpis div{border:1px solid var(--line);border-radius:6px;padding:8px 10px}
.rep-kpis b{display:block;font-family:var(--f-disp);font-size:1.5rem;font-weight:800;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.rep-kpis span{font-family:var(--f-mono);font-size:.64rem;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.06em}
.rep-charts{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.rep-charts h3{font-size:.85rem;margin:0 0 4px}
.rep-foot{margin-top:12px;font-size:.72rem;color:var(--muted);border-top:1px solid var(--line);padding-top:8px}
.watermark{font-family:var(--f-mono);font-size:.66rem;font-weight:700;color:var(--red-ink);border:1px solid var(--red-ink);border-radius:4px;padding:2px 6px;letter-spacing:.06em}
.chart text{font-size:10px;fill:#4b5d78;font-family:var(--f-mono)}
.chart .val{fill:#071a33;font-weight:700}
.sign{background:#fff;width:min(8.5in,100%);min-height:11in;margin:0 auto;padding:.55in;border:1px solid var(--line);text-align:center;display:flex;flex-direction:column;align-items:center;position:relative}
.sign .top{width:100%;background:var(--deep);color:#fff;border-radius:14px;padding:24px}
.sign h1{font-size:clamp(2rem,8vw,3.2rem);margin:0;letter-spacing:-.02em}
.sign .hoa{font-size:1.35rem;font-weight:700;opacity:.95}
.sign .qr{margin:26px 0 10px;padding:18px;border:6px solid var(--navy);border-radius:16px;background:#fff}
.sign .qr svg{display:block;width:min(4.3in,62vw);height:auto}
.sign .url{font-size:1.05rem;font-weight:600;color:#0c2d5e}
.sign ol{text-align:left;font-size:1.25rem;font-weight:600;margin:18px auto 8px;max-width:6.2in;padding-left:1.4em}
.sign ol li{margin:6px 0}
.sign .fine{font-size:.95rem;color:var(--muted);max-width:6.6in}
.sign .brand{position:absolute;bottom:.4in;left:0;right:0;font-size:.8rem;color:var(--muted);display:flex;gap:6px;justify-content:center;align-items:center}
.printbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:14px}
@media(max-width:640px){.report{padding:18px 14px}.rep-kpis{grid-template-columns:1fr 1fr}.rep-charts{grid-template-columns:1fr}.rep-head{flex-direction:column}.sign{padding:18px}.sign .brand{position:static;margin-top:14px}.sign ol{font-size:1.05rem}}
@page{size:letter;margin:.4in}
@media print{
  html,body{background:#fff}
  .no-print,.demo-bar,.appnav,.toast,.modal,.printbar{display:none !important}
  main{padding:0;max-width:none}
  .report{border:none;box-shadow:none;padding:0;max-width:none}
  .report+.report{break-before:page}
  .sign{border:none;padding:0;width:auto;min-height:9.9in}
  .sign .qr svg{width:4.3in}
  .card,.tablewrap{box-shadow:none}
  table{font-size:9.5pt}
  th{background:#eee !important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .sign .top,.swatch,.chip,.watermark,.chart rect{-webkit-print-color-adjust:exact;print-color-adjust:exact}
  a{color:inherit;text-decoration:none}
  .print-only{display:block !important}
}
.print-only{display:none}

.demo-clock{font:600 .72rem/1 var(--f-mono);letter-spacing:.04em;color:#cfe0f5;border-left:1px solid rgba(255,255,255,.22);padding-left:12px;white-space:nowrap}
@media (max-width:480px){.demo-clock .long{display:none}.demo-clock{padding-left:8px}}
.embed .demo-bar,.embed .appnav,.embed .skip{display:none!important}
.embed main{padding:14px 14px 40px}
.mono{font-family:var(--f-mono)}
main.wide{max-width:1500px}
.pagehead h1{font-size:clamp(1.6rem,3vw,2.3rem);font-stretch:88%;letter-spacing:-.025em}
.home-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:22px;align-items:stretch;background:linear-gradient(160deg,rgba(23,120,232,.86),rgba(18,104,227,.9) 45%,rgba(11,74,176,.94)),url(caustics.webp) 0 0/460px 460px,var(--blue);border-radius:18px;padding:clamp(22px,4vw,44px);color:#fff;overflow:hidden;margin:6px 0 30px;box-shadow:0 30px 60px -34px rgba(7,26,51,.6)}
.home-hero::before{content:"";position:absolute;left:0;top:0;bottom:0;width:14px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14'%3E%3Crect width='14' height='14' fill='%23d6e6ea'/%3E%3Crect x='.5' y='.5' width='6' height='6' fill='%230c2d5e'/%3E%3Crect x='7.5' y='.5' width='6' height='6' fill='%233cc4cf'/%3E%3Crect x='.5' y='7.5' width='6' height='6' fill='%233cc4cf'/%3E%3Crect x='7.5' y='7.5' width='6' height='6' fill='%230c2d5e'/%3E%3C/svg%3E")}
.hh-copy{position:relative;padding-left:8px}
.home-hero .eyebrow{color:#dbeaff}
.home-hero h1{font-size:clamp(2.2rem,5vw,4rem);font-weight:800;font-stretch:78%;line-height:.92;letter-spacing:-.035em;margin:10px 0 16px;text-wrap:balance}
.home-hero h1 span{display:block;color:#fff;opacity:.78}
.home-hero p{max-width:52ch;color:#eaf3ff;margin:0 0 22px}
.hh-cta{display:flex;flex-wrap:wrap;gap:10px}
.hh-main{min-height:54px;padding:12px 20px;background:var(--red)!important;border-color:var(--red)!important;font-size:1.02rem;box-shadow:0 3px 0 var(--red-ink)}
.hh-main:hover{background:var(--red-ink)!important}
.hh-ghost{min-height:54px;background:rgba(7,26,51,.35);border-color:rgba(255,255,255,.5);color:#fff}
.hh-ghost:hover{background:rgba(7,26,51,.55);border-color:#fff}
.hh-now{position:relative;background:#fff;color:var(--ink);border-radius:14px;padding:18px 20px;box-shadow:0 20px 40px -20px rgba(2,14,40,.6);transform:rotate(1.2deg);align-self:center}
.hh-now-h{font:600 .7rem/1.3 var(--f-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.hh-big{display:flex;align-items:baseline;gap:10px;margin:6px 0 10px;border-bottom:2px solid var(--ink);padding-bottom:10px}
.hh-big b{font:800 4.2rem/.85 var(--f-disp);font-stretch:76%;letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.hh-big span{font-weight:700;color:var(--muted)}
.hh-now ul{list-style:none;margin:0;padding:0;font-size:.95rem}
.hh-now li{padding:6px 0;border-bottom:1px solid var(--line)}
.hh-now li:last-child{border-bottom:0}
.hh-now li b{font-family:var(--f-mono)}
.hh-now li.bad{color:var(--bad);font-weight:600}
.hh-now li.bad b{background:var(--bad);color:#fff;font:700 .68rem/1 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;padding:3px 6px;border-radius:3px;margin-right:4px}
@media(max-width:820px){.home-hero{grid-template-columns:1fr}.hh-now{transform:none}}
.tiles-h{font-size:1.25rem;margin:0 0 12px}
.tile{position:relative;padding:22px 20px 18px}
.tile-n{position:absolute;right:16px;top:14px;font:800 2.4rem/1 var(--f-disp);font-stretch:76%;color:var(--blue-50);-webkit-text-stroke:1px #c9dbf1}
.tile h2{font-size:1.35rem;font-stretch:90%}
.tile .go{display:inline-block;margin-top:6px;font-weight:700;font-size:.9rem;color:var(--blue-700)}
.tile:hover .go{text-decoration:underline}
.limits{margin-top:22px;padding:14px 16px;border:1.5px dashed #b8cbe2;border-radius:10px;font-size:.86rem;color:var(--muted);background:#fff}
.limits b{color:var(--ink)}
.bignum{font-size:clamp(3rem,6vw,4.4rem);font-stretch:80%;transition:color .3s}
.bignum.bump{animation:bump .9s var(--e,ease)}
@keyframes bump{0%{color:var(--blue);transform:scale(1)}30%{transform:scale(1.08)}100%{color:inherit;transform:scale(1)}}
.bignum{transform-origin:left bottom}
.list li.new{animation:newrow 3s ease-out}
@keyframes newrow{0%,40%{background:#dff5e8;box-shadow:inset 4px 0 0 var(--ok)}100%{background:transparent;box-shadow:inset 0 0 0 transparent}}
.actions .btn{min-height:86px;font-size:1rem;border-width:2px}
.ci-head{background:linear-gradient(160deg,rgba(18,104,227,.82),rgba(12,45,94,.95) 70%),url(caustics.webp) 0 0/300px 300px,var(--deep)}
@media (prefers-reduced-motion:reduce){.bignum.bump,.list li.new{animation:none}}
.live-head p{max-width:80ch}
.live{display:grid;grid-template-columns:auto minmax(0,1fr);gap:32px;align-items:start}
.lv{margin:0}
.lv-ph{background:#0b1426;border-radius:48px;padding:12px;box-shadow:0 30px 60px -30px rgba(7,26,51,.6)}
.lv-ph iframe{display:block;width:390px;height:760px;border:0;border-radius:36px;background:#f2f6fb}
.lv-tb{position:relative;overflow:hidden;border:16px solid #0b1426;border-radius:28px;background:#f2f6fb;box-shadow:0 30px 60px -30px rgba(7,26,51,.6)}
.lv-scale{width:1024px;height:768px;transform-origin:0 0}
.lv-scale iframe{display:block;width:1024px;height:768px;border:0;background:#f2f6fb}
.lv figcaption{margin-top:12px;text-align:center;font-size:.92rem;color:var(--muted)}
.live-small{display:none}
@media(max-width:999px){.live{display:none}.live-small{display:block}}
@media(max-width:719px){.g5,.g4{grid-template-columns:1fr 1fr}.g5>.kpi:last-child{grid-column:1/-1}.kpi .v{font-size:1.8rem}}

.demo-bar{min-width:0}
@media (max-width:480px){.demo-reset .long{display:none}.demo-brand{font-size:1rem}}
@media (max-width:400px){.demo-brand span{display:none}.demo-bar{gap:7px;padding:8px 9px}}
.embed .demo-hint{display:none!important}
.embed .toast{left:auto;right:12px;bottom:auto;top:12px;transform:translateY(-140px);font-size:.85rem;padding:9px 13px;max-width:60vw}
.embed .toast.show{transform:translateY(0)}
.compact .ci-head{padding:16px 18px 18px}
.compact .ci-head h1{font-size:1.35rem}
.compact .field{margin-bottom:12px}
.compact .pagehead{margin-bottom:8px}
.compact .lg-top .card{padding:12px 14px}
.compact .lg-top .hint{display:none}
.compact .bignum{font-size:3rem}
.compact .actions{margin:10px 0!important}
.compact .actions .btn{min-height:58px}
.hh-you{font:700 1.15rem/1.3 var(--f-disp);color:#fff!important;margin:0 0 10px!important;letter-spacing:-.01em}
.play-ic{display:inline-block;width:0;height:0;border-left:11px solid currentColor;border-top:7px solid transparent;border-bottom:7px solid transparent;margin-right:9px;vertical-align:-1px}
.live-head{display:flex;gap:18px 28px;align-items:flex-end;justify-content:space-between;flex-wrap:wrap;margin-bottom:14px}
.live-head .grow{flex:1 1 520px;min-width:0}
.live-head h1{font-size:clamp(1.4rem,2.4vw,2rem);font-stretch:88%;letter-spacing:-.025em;margin:2px 0 6px}
.live-head p{margin:0;font-size:.92rem}
.live-play{flex:0 0 auto;display:flex;flex-direction:column;align-items:flex-end;gap:6px;max-width:360px}
.live-play .btn{min-height:52px;padding:10px 22px;background:var(--red);border-color:var(--red);box-shadow:0 3px 0 var(--red-ink)}
.live-play .btn:hover{background:var(--red-ink)}
.live-play .btn:disabled{opacity:.75;cursor:progress}
.lv-note{margin:0;min-height:1.3em;font-size:.86rem;color:var(--ink);text-align:right}
.live{gap:24px}
.lv-ph{overflow:hidden}
.lv-phs{width:390px;height:760px;transform-origin:0 0}
.lv-ph iframe{border-radius:30px}
.lv figcaption{margin-top:8px}
.lv-tb.landed{animation:landed 2.4s ease-out}
@keyframes landed{0%,35%{box-shadow:0 0 0 6px rgba(29,155,92,.55),0 30px 60px -30px rgba(7,26,51,.6)}100%{box-shadow:0 30px 60px -30px rgba(7,26,51,.6)}}
@media(max-width:999px){.live-play{align-items:stretch;max-width:none;width:100%}.lv-note{text-align:left}}
@media (prefers-reduced-motion:reduce){.lv-tb.landed{animation:none}}
.more-tests{border:1px solid var(--line);border-radius:10px;padding:10px 12px;background:#f7fafd}
.more-tests summary{cursor:pointer;font-weight:700;font-size:.92rem}
.rangeflag .muted{font-weight:500}
.compact #code-h,.compact #addr-h{display:none}
.compact .stepper small{display:none}
.live{justify-content:center;grid-template-columns:auto auto}
.nv-narrow{display:none}
@media(max-width:999px){.nv-wide{display:none}.nv-narrow{display:inline}}
@media(max-width:719px){.hh-ghost[href="#/live"]{display:none!important}}
.appnav{position:relative}
.nav-more{position:sticky;right:0;flex:0 0 auto;margin-left:-44px;width:44px;border:0;padding:0 8px 0 0;display:none;align-items:center;justify-content:flex-end;background:linear-gradient(90deg,rgba(255,255,255,0),#fff 60%);color:var(--blue);font:800 1.5rem/1 var(--f-body);cursor:pointer;z-index:1}
.appnav.more .nav-more{display:flex;animation:navnudge 1.6s ease-in-out 2}
@keyframes navnudge{50%{transform:translateX(3px)}}
@media (prefers-reduced-motion:reduce){.appnav.more .nav-more{animation:none}}
.mstage.live-small{padding:0;background:none;border:0;box-shadow:none}
.ms-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;background:#e8f1fb;border-radius:12px;padding:4px;margin:0 0 10px}
.ms-tabs button{border:0;background:none;border-radius:9px;padding:9px 6px;font:700 .92rem/1.1 var(--f-body);color:var(--muted);cursor:pointer}
.ms-tabs button[aria-selected=true]{background:#fff;color:var(--navy);box-shadow:0 1px 3px rgba(7,26,51,.16)}
.ms-view{position:relative;overflow:hidden;border-radius:22px;background:#0b1426;padding:8px;height:620px;box-shadow:0 24px 50px -28px rgba(7,26,51,.6)}
.ms-track{display:flex;width:200%;height:100%;transition:transform .55s cubic-bezier(.2,.8,.2,1)}
.ms-pane{flex:0 0 50%;height:100%;padding:0 4px}
.ms-pane iframe{display:block;width:100%;height:100%;border:0;border-radius:16px;background:#f2f6fb}
.ms-banner{position:absolute;left:16px;right:16px;top:16px;background:var(--navy);color:#fff;border-radius:12px;padding:10px 14px;font-size:.92rem;line-height:1.35;box-shadow:0 12px 30px -10px rgba(0,0,0,.55);border-left:5px solid #5eb3ff}
.ms-banner.in{animation:msin .5s cubic-bezier(.2,.8,.2,1)}
@keyframes msin{from{transform:translateY(-130%);opacity:0}}
.ms-cap{margin:10px 2px 0;font-size:.92rem;color:var(--muted);min-height:2.6em}
@media (prefers-reduced-motion:reduce){.ms-track{transition:none}.ms-banner.in{animation:none}}
.rep-brand{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.rep-logo{width:118px;height:46px;border:2px dashed #8fb3dc;border-radius:8px;display:flex;align-items:center;justify-content:center;font:700 .72rem/1.1 var(--f-mono);letter-spacing:.06em;text-transform:uppercase;color:#4a6a92;background:#f6f9fc;text-align:center;padding:4px}
@media(max-width:640px){.rep-brand{align-items:flex-start;flex-direction:row}}
@media print{.rep-logo{border-color:#999;color:#666}}
.ci-acts{display:flex;gap:8px;align-items:center;flex:0 0 auto}
@media(max-width:480px){
  .ci-list li{display:grid;grid-template-columns:1fr;gap:6px;align-items:start;padding:12px 2px}
  .ci-list li .t{font-size:.82rem}
  .ci-list .who div{white-space:normal;overflow:visible;text-overflow:clip}
  .ci-list .chip.warn{display:block;width:100%;white-space:normal;text-align:left;margin-top:4px;line-height:1.3}
  .ci-acts{justify-content:flex-start}
  .ci-acts .btn{flex:1}
  .ci-acts .small{flex:1}
    .compact #app{display:flex;flex-direction:column}
  .compact #app>*{order:5}
  .compact #app>.pagehead{order:0}
  .compact #app>.closed-banner{order:1}
  .compact #app>.lg-top{display:contents}
  .compact .hc-card{order:2;margin-bottom:12px}
  .compact #app>.ci-grid{order:3}
  .compact #app>.actions{order:4}
  .compact .lg-top>.card:not(.hc-card){order:6;margin-top:12px}
}
@keyframes rowzoom{0%{transform:scale(1)}28%{transform:scale(1.035)}100%{transform:scale(1)}}
@media(min-width:720px){.list li.new{animation:newrow 3s ease-out,rowzoom 1.3s cubic-bezier(.2,.8,.2,1);transform-origin:12% 50%}}
@media (prefers-reduced-motion:reduce){.list li.new{animation:none}}
.ms-banner{top:auto;bottom:16px;transition:opacity .5s}
.ms-banner.out{opacity:0}
@keyframes msin{from{transform:translateY(130%);opacity:0}}
.rep-co{display:inline-block;border:2px dashed #8fb3dc;border-radius:6px;padding:0 6px;font-weight:700;color:#1268e3;background:#f6f9fc}
.ci-how{margin:0 0 14px;font-weight:600;color:var(--navy)}
.passbox{display:flex;align-items:center;gap:12px;margin:10px 0 6px}
.swatch.big{font-size:1.25rem;padding:8px 16px;letter-spacing:.16em}
.btn.noshow{color:var(--bad);border-color:#f1c3cc}
.compact .ci-how{display:none}
.ci-list .who div{white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}
@media (max-width:480px){.ci-acts{flex-wrap:wrap}.ci-acts .btn{flex:1 1 auto;white-space:nowrap;padding-left:10px;padding-right:10px}}
.ci-card{container:ci/inline-size}
.btn.xs{min-height:32px;padding:4px 8px;font-size:.78rem;border-radius:6px}
.btn.noshow{color:var(--muted);background:transparent;border-color:transparent;font-weight:600;text-decoration:underline;text-underline-offset:3px;text-decoration-color:#b8c6d6}
.btn.noshow:hover{color:var(--navy);border-color:#c6d4e4;text-decoration:none}
.btn.seen{border-color:var(--blue,#1268e3);color:var(--blue,#1268e3)}
.btn.seen.tap{box-shadow:0 0 0 4px rgba(18,104,227,.28);transform:scale(.95);transition:transform .15s,box-shadow .15s}
.seen-ok{color:var(--ok);font-weight:700;white-space:nowrap}
.ci-list li.ns{background:linear-gradient(90deg,rgba(215,25,58,.05),transparent 60%)}
.ci-list .ns-chip{white-space:normal}
.toast-undo{margin-left:12px;background:#fff;color:var(--navy);border:0;border-radius:6px;padding:6px 12px;font:inherit;font-weight:800;cursor:pointer;min-height:32px}
.toast-undo:focus-visible{outline:3px solid #5eb3ff;outline-offset:2px}
@media (min-width:481px){
  .ci-list li{display:grid;grid-template-columns:62px minmax(0,1fr) auto;align-items:center;column-gap:12px;row-gap:8px}
  .ci-list .t{min-width:0;font-size:.8rem}
  .ci-acts{gap:6px}
  @container ci (max-width:620px){
    .ci-list li{grid-template-columns:62px minmax(0,1fr)}
    .ci-list li .ci-acts{grid-column:2;justify-content:flex-start;flex-wrap:wrap}
  }
}
@media (max-width:480px){.ci-acts .btn.noshow{flex:0 0 auto}}
@media (max-width:999px){.live-head .lv-note{display:none}}
@media (min-width:720px){.ci-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}}
.ci-list .t{white-space:nowrap}
@media (min-width:481px){.ci-list li{grid-template-columns:70px minmax(0,1fr) auto}@container ci (max-width:620px){.ci-list li{grid-template-columns:70px minmax(0,1fr)}}}
.nw{white-space:nowrap}
.ci-meta{line-height:1.5}
.ci-acts .btn{min-height:44px}
.ci-acts .btn.noshow{min-height:44px;font-size:.78rem}
.seen-all{border-color:var(--blue);color:var(--blue);margin-left:auto}
.seen-all .cnt{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:var(--blue);color:#fff;font-size:.75rem}
.ci-card>.row:first-child{flex-wrap:wrap;gap:6px 10px}
.ci-card>.row:first-child .ci-sum{flex-basis:100%;order:3}
@media (min-width:481px){.ci-card>.row:first-child .ci-sum{flex-basis:auto;order:0}}
.sugg button{display:flex;align-items:center;justify-content:space-between;gap:10px;border:2px solid var(--blue);background:var(--blue-50);color:var(--navy);font-weight:700;border-radius:999px;padding:10px 16px;box-shadow:0 1px 0 rgba(7,26,51,.06)}
.sugg button::before{content:"";width:18px;height:18px;flex:0 0 18px;border-radius:50%;background:var(--blue) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5 10 17 19 7'/%3E%3C/svg%3E") center/12px no-repeat;order:0}
.sugg button::after{content:"Tap to use";margin-left:auto;font-size:.75rem;font-weight:700;color:var(--blue-700);text-transform:uppercase;letter-spacing:.06em}
.sugg button:hover{background:#d7e8fb}
.addr-ok{margin-top:6px;font-size:.85rem;font-weight:700;color:var(--ok)}
.addr-ok[hidden]{display:none}
.tw-hint{margin:0 0 6px;font-size:.8rem;font-weight:700;color:var(--blue-700)}
.tw-hint[hidden]{display:none}
.tw-hint span{display:inline-block;animation:twnudge 1.4s ease-in-out infinite}
@keyframes twnudge{50%{transform:translateX(4px)}}
@media (prefers-reduced-motion:reduce){.tw-hint span{animation:none}}
@media (min-width:481px){.ci-card>.row:first-child .ci-sum{order:1;margin-left:auto}.ci-card>.row:first-child .seen-all{order:2;margin-left:0}}
.seen-line{margin-top:1px}
@media (min-width:481px){.ci-card .who .ci-meta,.ci-card .who .seen-line{display:inline}.ci-card .who .seen-line{margin-left:6px}.ci-card .who .seen-line::before{content:"· ";color:var(--muted);font-weight:400}}

.live-play .btn.busy{opacity:.75;cursor:progress}

.btn.seen-all{min-height:44px}
.bulk-note{margin:6px 0 0;flex-basis:100%;order:3}
.seen-ok.bulk{font-weight:600}
.embed .bulk-note{display:none}

.list .who .wrap,.list .who div.wrap{white-space:normal;overflow:visible;text-overflow:clip}
.gate-taps{margin-top:3px;color:var(--muted,#4b5d78)}
details.how{margin-top:6px}
details.how summary{cursor:pointer;color:var(--blue,#1268e3);font-weight:600;min-height:32px;display:inline-flex;align-items:center}
details.how p{margin:6px 0 0}

.chip.wait-chip{background:#eef3fa;color:#3d5677;border:1px solid #d6e2f1;font-weight:500}
.ci-sum .si .ss{display:none}
.ci-sum .si-warn{color:var(--warn);font-weight:700}
.next-test{display:none;margin-top:4px}
@media (max-width:860px){
  .ci-sum{display:flex;flex-wrap:wrap;gap:2px 10px}
  .ci-sum .si .sl{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.ci-sum .si{position:relative}.ci-sum .si .ss{display:inline}
  .ci-sum .sep{display:none}
}
@media (max-width:600px){
  .gate-card .gate-hint:not(.gh-off) .gh-lead{display:none}
  .gate-card .hint{margin-top:4px}
  .lg-top .card .slots,.lg-top .card>.hint:not(.gate-hint){display:none}
  .next-test{display:block}
  .lg-top .card{padding:12px 14px}
  .lg-top{gap:8px}
}
@media (max-width:600px){
  #app>.lg-top{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  #app>.lg-top>.hc-card{grid-column:1/-1}
  #app>.lg-top>.card:not(.hc-card){min-width:0}
}
@media (max-width:600px){
  #app>.actions{margin:10px 0!important}
  #app>.actions .btn{min-height:48px;padding:6px 8px;flex-direction:row;gap:6px;font-size:.88rem;line-height:1.15}
  #app>.actions .btn svg{width:18px;height:18px;flex:none}
}
@media (max-width:600px){
  #app>.pagehead{margin:2px 0 10px}
  #app>.lg-top .passbox{margin:6px 0 2px;gap:8px}
  #app>.lg-top .swatch.big{font-size:1.05rem;padding:6px 12px}
  #app>.lg-top .hc-card .bignum{line-height:1}
}
@media (max-width:600px){
  #app>.lg-top>.hc-card{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:10px;align-items:center}
  #app>.lg-top>.hc-card>.small{grid-column:1/-1}
  #app>.lg-top>.hc-card>.bignum{grid-column:1;grid-row:2}
  #app>.lg-top>.hc-card>.bar{grid-column:1/-1;grid-row:3}
  #app>.lg-top>.hc-card>.row{display:contents}
  #app>.lg-top>.hc-card>.row>.small{grid-column:1/-1;grid-row:4;margin-top:6px}
  #app>.lg-top>.hc-card>.row>.row{grid-column:2;grid-row:2}
  #app>.lg-top .passbox .swatch+.small{display:none}
}
@media (max-width:480px){
  .ci-card>.row:first-child{column-gap:8px}
  .ci-card>.row:first-child h2{font-size:1.08rem;white-space:nowrap}
  .ci-card>.row:first-child .seen-all{padding:0 10px;font-size:.84rem;gap:6px;white-space:nowrap}
}
@media (max-width:860px){#app .gate-card .gate-hint:not(.gh-off) .gh-lead{display:none}}

#app>.actions .as{display:none}
.chip.flag-chip{background:#fdebee;color:#b3122f;border:1px solid #f3b6c1}
.chip.flag-chip .ic-pin{flex:none}
@media(max-width:480px){.ci-list .chip.flag-chip{display:flex;width:100%;white-space:normal;text-align:left;margin-top:4px;line-height:1.3}}
.chip.new-chip{background:#f1f7fe;color:#1d5fbf;font-weight:600;border:1px solid #d9e8fb}
.chip.new-chip .nd{width:6px;height:6px;border-radius:50%;background:#5eb3ff;flex:none}
.ci-sum .si-flag{color:#b3122f;font-weight:700}
.gh-short{display:none}
.pstat{display:inline-flex;align-items:center;gap:5px;font-weight:700;font-size:.74rem;padding:2px 8px 2px 6px;border-radius:999px;margin-right:6px;vertical-align:1px;white-space:nowrap;border:1px solid transparent}
.pstat i{width:8px;height:8px;border-radius:50%;background:currentColor;flex:none}
.ps-ok{background:var(--ok-50);color:var(--ok)}
.ps-new{background:#eef5fe;color:#1d5fbf}
.ps-wait{background:#eef3fa;color:#3d5677}
.ps-ns{background:var(--warn-50);color:var(--warn)}
.ps-flag{background:#fdebee;color:#b3122f}
.ps-off{background:#fff;color:#5b6b80;border-color:#d5dde8}
.ps-off i{background:transparent;border:1.5px solid currentColor;width:7px;height:7px}
@media (max-width:600px){
    #app>.lg-top>.hc-card{background:linear-gradient(160deg,#0c2d5e,#071a33);color:#fff;border:0;box-shadow:0 10px 24px -14px rgba(7,26,51,.7)}
  #app>.lg-top>.hc-card .muted,#app>.lg-top>.hc-card .small{color:#cfe0f5}
  #app>.lg-top>.hc-card .bignum{color:#fff;font-size:3.1rem}
  #app>.lg-top>.hc-card .bignum small{color:#a9c6ea}
  #app>.lg-top>.hc-card .bar{background:rgba(255,255,255,.16)}
  #app>.lg-top>.hc-card .bar span{background:#5eb3ff}
  #app>.lg-top>.hc-card .btn{background:transparent;color:#fff;border-color:rgba(255,255,255,.45)}
  #app>.lg-top>.hc-card{margin-bottom:4px}
    #app>.lg-top{grid-template-columns:minmax(0,1fr)}
  #app>.lg-top>.gate-card{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:12px;align-items:center;padding:10px 14px}
  #app>.lg-top>.gate-card>.small:first-child{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  #app>.lg-top>.gate-card .passbox{margin:0}
  #app>.lg-top>.gate-card .gate-hint{margin:0;line-height:1.35}
  #app>.lg-top>.gate-card .gate-hint:not(.gh-off) .gh-short{display:inline;margin-right:6px}
  #app>.lg-top>.gate-card .gate-hint details.how{display:inline}
  #app>.lg-top>.gate-card .gate-hint details.how[open]{display:block}
  #app>.lg-top>.gate-card .gate-hint details.how summary{display:inline;white-space:nowrap}
  #app>.lg-top>.card:not(.hc-card):not(.gate-card){display:flex;flex-wrap:wrap;align-items:center;column-gap:10px;row-gap:2px;padding:10px 14px}
  #app>.lg-top>.card:not(.hc-card):not(.gate-card)>.row{flex:0 0 auto;gap:8px}
  #app>.lg-top>.card:not(.hc-card):not(.gate-card) .next-test{margin:0}
    #app>.pagehead{position:relative;padding-right:0}
  #app>.pagehead>label{position:absolute;right:0;top:0;gap:0!important}
  #app>.pagehead>label>.muted{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  #app>.pagehead>label select{min-height:36px!important;font-size:.85rem;padding-top:4px;padding-bottom:4px;max-width:150px}
  #app>.pagehead h1{font-size:1.45rem}
    .ci-sum .si-na{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .ci-card{padding-top:12px}
}
@media (max-width:420px){
  #app>.actions .al{display:none}
  #app>.actions .as{display:inline}
  #app>.actions .btn{white-space:nowrap;font-size:.86rem}
}
@media (max-width:370px){
  #app>.actions .btn svg{display:none}
}
@media (max-width:860px){.ci-sum{gap:2px 8px;font-size:.78rem}}

.slots{grid-template-columns:repeat(auto-fit,minmax(min(100%,92px),1fr))}
.slot{padding:8px 6px;min-width:0;overflow-wrap:anywhere;line-height:1.25}
.slot b{white-space:nowrap}
.slot .slot-st{display:block;font-size:.8rem;white-space:normal}
@media (min-width:760px) and (max-width:1099px){
  #app>.lg-top{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}
  #app>.lg-top>.card:not(.hc-card):not(.gate-card){grid-column:1/-1}
}
.gh-lead:empty{display:none}
.gate-card .gate-hint .gh-short{display:inline;margin-right:6px}
.gate-card .gate-hint details.how summary{display:inline;white-space:nowrap}
.gate-card .gate-hint details.how{display:inline}
.gate-card .gate-hint details.how[open]{display:block}
.ci-sum{font-size:.875rem}
.ci-sum .sbr{display:none}
.pstat.ps-closed{background:var(--bad-50);color:var(--bad)}
.ci-list li[data-st]{position:relative}
.ci-list li[data-st]::before{content:"";position:absolute;left:-12px;top:10px;bottom:10px;width:3px;border-radius:2px;background:transparent}
.ci-list li[data-st=check]::before{background:#d7193a}
.ci-list li[data-st=ns]::before{background:#c2670f}
.ci-list li[data-st=wait]::before{background:#8fa3bd}
.ci-list li[data-st=fresh]::before{background:#5eb3ff}
@media (max-width:860px){.ci-sum{font-size:.875rem;gap:2px 10px}}
@media (max-width:600px){
  .ci-sum .sbr{display:block;flex-basis:100%;height:0}
  .ci-sum .si-na{position:static;width:auto;height:auto;overflow:visible;clip:auto}
  .ci-list li[data-st]::before{left:-10px}
}
@media (max-width:374px){#app>.lg-top>.gate-card{padding:10px 12px;column-gap:10px}#app>.lg-top>.gate-card .gate-hint{font-size:.8rem}#app>.lg-top>.gate-card .gate-hint:not(.gh-off) .gh-short{margin-right:4px}}

html.tech .demo-bar .demo-link{display:none}
.tech-start{max-width:560px;margin:8px auto 24px}
.tech-start h1{margin:4px 0 6px;font-size:1.6rem}
.tech-qr{display:flex;align-items:center;gap:16px;padding:16px;margin:16px 0;text-decoration:none;color:inherit;border:2px solid var(--blue,#1268e3)}
.tech-qr:hover,.tech-qr:focus-visible{box-shadow:0 0 0 4px rgba(18,104,227,.18)}
.tech-qr .qr{flex:0 0 132px;width:132px;height:132px;display:block}
.tech-qr .qr svg{width:100%;height:100%;display:block}
.tech-qr .tq-txt{display:flex;flex-direction:column;gap:4px}
.tech-qr .tq-txt b{font-size:1.25rem;color:var(--blue,#1268e3)}
.tech-steps{margin:0 0 16px;padding-left:1.3em;line-height:1.5}
.tech-steps li{margin:6px 0}
.tech-pool{display:flex;flex-direction:column;gap:4px;max-width:280px}
.tech-pool select{min-height:44px}
.tech-next{display:flex;justify-content:center;margin:16px 0 8px}
.tech-next .btn{min-height:48px;padding:0 20px}
html.tech .appnav a{white-space:nowrap}

.tech-start{max-width:680px}
.tech-qr{background:#fff}
.tech-qr .qr{flex:0 0 auto;width:300px;height:300px;background:#fff}
@media (max-width:600px){.tech-qr{flex-direction:column;align-items:flex-start}.tech-qr .qr{width:min(260px,100%);height:auto;aspect-ratio:1}}

.ci-group{display:flex;align-items:center;gap:8px;margin:14px 0 2px;padding:6px 10px;border-radius:8px;background:var(--light,#f6f9fc);font-size:.8rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#3b4b63}
.ci-group .gn{font-family:'Geist Mono',ui-monospace,monospace;font-weight:600;color:#5b6b82}
.ci-group.g-check{background:#fff6e6;color:#7a4a00}
.ci-group.g-ns{background:var(--warn-50);color:var(--warn)}
.ci-group.g-fresh{background:#eef6ff;color:#1d5fbf}
.ci-group.g-gone{background:#f3f5f8;color:#6b778a}
.ci-card .ci-list{margin-top:0}
.chip.flag-chip{background:#fff6e6;color:#7a4a00;border:1px solid #f1cf8a}
.flag-hint{color:#6b5a3a;margin-top:3px}
.ci-list li[data-st=check]::before{background:#e3a63a}
.gh-short.gh-s{display:none!important}
@media (max-width:420px){.gh-short.gh-l{display:none!important}.gh-short.gh-s{display:inline!important}}
.rl-box{border:1.5px solid var(--line);border-radius:10px;padding:10px 12px 12px;margin:0 0 14px}
.rl-box legend{font-weight:700;padding:0 4px}
.rl-status{margin:8px 0}
.rl-acts{gap:8px;flex-wrap:wrap}
.sr-file{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}
.sr-file:focus-visible+*,.rl-up:focus-within{outline:2px solid var(--blue,#1268e3)}
.log-honest{margin:6px 0 0;color:#3b4b63}
.log-faq{padding:10px 14px;margin:0 0 12px}
.log-faq summary{cursor:pointer;font-weight:700}
.log-faq p{margin:8px 0 2px}
.tech-prompt{margin:0 0 10px;padding:8px 12px;border-radius:8px;background:#e8f1fb;color:#0c2d5e;font-weight:700}
html.tech main{max-width:1600px}
html.tech .appnav{position:sticky;top:0;z-index:30}
html.tech .gate-card,html.tech #aInc,html.tech #aClose,html.tech #aReopen,html.tech #app .ci-grid{display:none!important}
html.tech #app>.actions{grid-template-columns:1fr;display:flex}
html.tech #app>.actions #aTest{flex:1 1 auto;max-width:420px}
html.tech .tech-next{position:sticky;bottom:0;z-index:20;padding:10px 0;background:linear-gradient(rgba(246,249,252,0),#f6f9fc 30%)}
@media (min-width:861px){html.tech{font-size:18px}html.tech body{font-size:18px}html.tech table{font-size:16px}}
@media (min-width:761px){html.tech #app>.lg-top{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}html.tech #app>.lg-top>.card:not(.hc-card):not(.gate-card){grid-column:auto}}

.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
html.tech .appnav{display:block;padding:0;overflow:visible;background:rgba(255,255,255,.94);backdrop-filter:saturate(1.4) blur(8px);-webkit-backdrop-filter:saturate(1.4) blur(8px);border-bottom:1px solid var(--line)}
html.tech .appnav .nav-more{display:none}
.tsteps{list-style:none;margin:0 auto;padding:10px 16px;display:flex;gap:0;max-width:1600px;counter-reset:none}
.tsteps li{flex:1 1 0;position:relative;display:flex;min-width:0}
.tsteps li+li::before{content:"";position:absolute;left:-50%;right:50%;top:50%;height:2px;margin-left:22px;margin-right:22px;background:var(--line);transform:translateY(-50%)}
.tsteps li.done+li::before,.tsteps li.done+li.cur::before{background:var(--blue,#1268e3)}
.tsteps a{position:relative;z-index:1;display:flex;align-items:center;gap:10px;margin:0 auto;padding:6px 12px;border-radius:999px;text-decoration:none;color:#3b4b63;font-weight:600;white-space:nowrap;background:rgba(255,255,255,.94);transition:background .2s,color .2s}
.tsteps a:hover{background:#e8f1fb}
.tsteps a:focus-visible{outline:2px solid var(--blue,#1268e3);outline-offset:2px}
.tsteps .tn{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;border:2px solid #c9d6e6;font-family:'Geist Mono',ui-monospace,monospace;font-size:.85rem;font-weight:600;color:#5b6b82;background:#fff;flex:none;transition:all .25s}
.tsteps li.cur .tn{background:#0c2d5e;border-color:#0c2d5e;color:#fff;box-shadow:0 0 0 4px rgba(18,104,227,.16)}
.tsteps li.cur a{color:#071a33}
.tsteps li.done .tn{background:var(--blue,#1268e3);border-color:var(--blue,#1268e3);color:#fff}
@media (max-width:600px){.tsteps{padding:8px 6px}.tsteps a{gap:6px;padding:6px 6px;font-size:.92rem}.tsteps .tn{width:26px;height:26px}.tsteps li+li::before{margin-left:16px;margin-right:16px}}
.tech-prompt{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:0 0 14px;padding:12px 16px;border-radius:12px;background:linear-gradient(100deg,#071a33,#0c2d5e);color:#fff;font-weight:600;box-shadow:0 10px 30px -18px rgba(7,26,51,.6);animation:tpIn .45s cubic-bezier(.2,.8,.2,1) both}
.tech-prompt .tp-n{font-family:'Geist Mono',ui-monospace,monospace;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:#5eb3ff;font-weight:600}
.tech-prompt .tp-t{font-family:'Bricolage Grotesque',system-ui,sans-serif;font-size:1.12rem;letter-spacing:-.01em}
@keyframes tpIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.flag-hint{display:flex;align-items:center;gap:6px}
.flag-hint .ic-key{flex:none;color:#b07a1e}
.ci-list[data-g=check] li{animation:flagIn 1.2s ease-out 1}
@keyframes flagIn{0%{box-shadow:inset 0 0 0 0 rgba(227,166,58,0)}30%{box-shadow:inset 0 0 0 999px rgba(255,246,230,.9)}100%{box-shadow:inset 0 0 0 0 rgba(255,246,230,0)}}
.ci-group{position:relative}
.ci-group .gn{margin-left:auto;min-width:22px;text-align:center;padding:1px 7px;border-radius:999px;background:rgba(255,255,255,.75)}
@media (prefers-reduced-motion:reduce){.tech-prompt,.ci-list[data-g=check] li{animation:none}.tsteps a,.tsteps .tn{transition:none}}
html.tech .pool-pick{display:none}
html.tech #aTest .al{display:inline!important}html.tech #aTest .as{display:none!important}
html.tech #app>.actions #aTest{max-width:none;min-height:60px;font-size:1.05rem;flex-direction:row;gap:10px}
html.tech .tech-next{background:linear-gradient(rgba(242,246,251,0),var(--bg) 40%)}
html.tech .tech-next .btn{box-shadow:0 10px 24px -14px rgba(18,104,227,.7)}
.pass.see{background:#fff6e6!important;color:#071a33;border:1px solid #f1cf8a;box-shadow:0 18px 40px -22px rgba(122,74,0,.45)}
.pass.see::before{background:repeating-linear-gradient(135deg,rgba(227,166,58,.08) 0 14px,transparent 14px 28px)}
.pass.see .tick{background:#ffe7b8;color:#7a4a00}
.pass.see .see-note{margin-top:12px;font-weight:600;color:#5c3800;font-size:1.05rem}
.pass.see .meta{opacity:1;color:#3b4b63}
.list li.left{opacity:1}
.list li.left,.list li.left b,.list li.left .muted,.list li.left .t,.list li.left .ci-meta{color:#4b5d78}
.ci-group.g-gone{color:#5b6b80}
.ci-sum .si-flag{color:#7a4a00}
.look-n{color:#7a4a00}
.chip.look{background:#fff6e6;color:#7a4a00;border:1px solid #f1cf8a}
.chip.look .dot{background:#e3a63a}
html.tech .tech-start{max-width:none;margin:0 0 24px}
@media (min-width:861px){
 html.tech table{font-size:18px}
 html.tech #app .small,html.tech #app .hint,html.tech #app .slot,html.tech #app .slot b,html.tech #app .slot-st,html.tech #app .hc-card .small b{font-size:1rem}
 html.tech .tech-start{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:48px;align-items:start}
 html.tech .tech-start>*{grid-column:1}
 html.tech .tech-start>.tech-prompt{grid-column:1/-1}
 html.tech .tech-start>.tech-qr{grid-column:2;grid-row:2/span 5;flex-direction:column;align-items:center;text-align:center;padding:28px;margin:0}
 html.tech .tech-start h1{font-size:2.2rem}
 html.tech .tech-start .tech-steps{font-size:1.1rem}
}
@media (min-width:861px){html.tech #app th{font-size:1rem;letter-spacing:.04em}html.tech #app td{font-size:1rem}}
#logTable table[data-tab=tests] td:nth-child(1),#logTable table[data-tab=tests] td:nth-child(2),#logTable table[data-tab=checkins] td:nth-child(1),#logTable table[data-tab=incidents] td:nth-child(-n+2),#logTable table[data-tab=closures] td:nth-child(-n+2){white-space:nowrap}
#logTable table[data-tab=tests] :is(th,td):nth-child(n+3):nth-child(-n+10){width:1%;white-space:nowrap}
#logTable table[data-tab=tests] :is(th,td):nth-child(11),#logTable table[data-tab=tests] :is(th,td):nth-child(12){min-width:9ch;max-width:16ch}
@media (min-width:861px){
 html.tech #logTable table[data-tab=tests] th{padding-top:8px;padding-bottom:8px;line-height:1.2}
 html.tech #logTable table[data-tab=tests] td{padding-top:9px;padding-bottom:9px}
 html.tech #logTable thead th{position:sticky;top:0;z-index:1}
}

.chip.warn,.ns-chip,.ci-list .ns-chip{background:#fff6e6;color:#7a4a00;border:1px solid #f1cf8a}
.ci-list li[data-st=ns]::before{background:#e3a63a}
.ci-list li.ns{background:linear-gradient(90deg,rgba(227,166,58,.08),transparent 60%)}
.ci-group.g-ns{background:#fff6e6;color:#7a4a00}
.flag-hint .ic-info{flex:none;color:#b07a1e}
.tech-prompt .tp-restart{margin-left:auto;align-self:center;background:transparent;color:#fff;border-color:rgba(255,255,255,.45)}
.tech-prompt .tp-restart:hover{background:rgba(255,255,255,.12)}
@media (min-width:861px){
 html.tech #app:has(.tp-log) .tech-prompt{margin-bottom:10px;padding:8px 10px 8px 16px}
 html.tech #app:has(.tp-log) .pagehead{margin-bottom:6px}
 html.tech #app:has(.tp-log) .pagehead h1{font-size:1.6rem;line-height:1.15}
 html.tech #app:has(.tp-log) .log-honest{margin:2px 0 8px}
 html.tech #app:has(.tp-log) .log-faq{margin:0 0 8px;padding:6px 12px}
 html.tech #app:has(.tp-log) form.card{padding:8px 12px!important;margin-bottom:8px}
 html.tech #app:has(.tp-log) form.card label{display:flex;align-items:center;gap:8px}
 html.tech #app:has(.tp-log) form.card label .muted{white-space:nowrap}
 html.tech #app:has(.tp-log) .row.no-print{margin-bottom:6px!important}
 html.tech #app:has(.tp-log) #logTable th{letter-spacing:.02em}
}
@media (min-width:861px){html.tech #app:has(.tp-log) #logTable table[data-tab=tests] th:nth-child(n+11){white-space:normal}}
@media (min-width:1200px){html.tech #app:has(.tp-log) #logTable table[data-tab=tests] th:nth-child(-n+10){white-space:nowrap}}

.roles{display:flex;align-items:center;gap:10px;padding:8px 16px;background:#e8f1fb;border-bottom:1px solid #cfe0f5;font-size:.92rem;overflow-x:auto;white-space:nowrap;scrollbar-width:none}
.roles::-webkit-scrollbar{display:none}
.roles[hidden]{display:none}
.roles-l{font-weight:700;color:#071a33}
.roles-list{display:flex;align-items:center;gap:4px}
.roles-sep{color:#5b6b80}
.role{display:inline-block;padding:6px 12px;border-radius:999px;color:#0c2d5e;text-decoration:none;font-weight:600;min-height:32px;line-height:20px}
@media (hover:hover){.role:not(.cur):hover{background:#fff}}
.role.cur{background:#0c2d5e;color:#fff}
.role:focus-visible,.showme-btn:focus-visible{outline:3px solid #1268e3;outline-offset:2px}
.showme-btn{margin-left:auto;border:1px solid #9fc0ea;background:#fff;color:#0c2d5e;border-radius:999px;padding:6px 12px;font:inherit;font-weight:600;cursor:pointer;min-height:32px}
@media(max-width:600px){.roles{padding:6px 10px;gap:6px;font-size:.88rem}.role{padding:6px 10px}.roles-sep{display:none}}
@media(max-width:600px){html.roles-wrap .roles{flex-wrap:wrap;white-space:normal;overflow-x:visible;row-gap:2px;column-gap:6px;padding:4px 8px;font-size:.84rem}html.roles-wrap .roles-list{display:contents}html.roles-wrap .role{padding:3px 8px;min-height:26px;line-height:20px;white-space:nowrap}html.roles-wrap .showme-btn{min-height:26px;padding:2px 10px}html.roles-wrap #app{padding-top:10px}html.roles-wrap #app>.pagehead{margin-bottom:6px}}
html.tech .roles{position:relative;z-index:5}
.fict{margin:4px 0 0;color:#3b4b63}
.fict::before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;background:#5eb3ff;margin-right:6px;vertical-align:1px}
.pool-cards{list-style:none;margin:0 0 18px;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}
.pool-card{display:flex;flex-direction:column;gap:6px;height:100%;box-sizing:border-box;padding:14px 16px;background:#fff;border:1px solid #d5e2f2;border-radius:14px;color:#071a33;text-decoration:none;position:relative}
.pool-card:hover{border-color:#1268e3;box-shadow:0 2px 10px rgba(12,45,94,.08)}
.pool-card:focus-visible{outline:3px solid #1268e3;outline-offset:2px}
.pool-card.closed{background:#fbf5f6;border-color:#efc7cf}
.pc-top{display:flex;justify-content:space-between;align-items:center;gap:8px}
.pc-name{font-size:1.08rem}
.pc-guard{color:#3b4b63}
.pc-hc{margin-top:2px}.pc-n{font-size:1.6rem;font-weight:800;font-variant-numeric:tabular-nums}
.pool-card .bar{height:6px;border-radius:99px;background:#e8f1fb;overflow:hidden}
.pool-card .bar span{display:block;height:100%;background:#1268e3;border-radius:99px}
.pool-card .bar.hot span{background:#7a4a00}
.pc-rows{display:grid;gap:6px;margin-top:4px;font-size:.92rem}
.pc-rows>div{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}
.pc-go{margin-top:auto;padding-top:6px;color:#1268e3;font-weight:700;font-size:.9rem}
.board .grid.g2{margin-bottom:14px}
.board section.card{margin-bottom:14px}
.board-dl{gap:8px;flex-wrap:wrap}
.board td.nw{white-space:nowrap}
.board-foot{margin:18px 0 8px;padding:14px 16px;border-top:2px solid #0c2d5e;background:#f6f9fc;border-radius:0 0 12px 12px}
.board-foot p{margin:0 0 4px}
#showOv{position:fixed;inset:0;z-index:200;pointer-events:none}
.so-ring{position:fixed;border:3px solid #5eb3ff;border-radius:14px;box-shadow:0 0 0 4000px rgba(7,26,51,.38);transition:all .25s ease}
@media(prefers-reduced-motion:reduce){.so-ring{transition:none}}
.so-bar{position:fixed;left:50%;bottom:16px;transform:translateX(-50%);width:min(680px,calc(100% - 24px));box-sizing:border-box;display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 14px;background:#071a33;color:#fff;border-radius:14px;pointer-events:auto;box-shadow:0 8px 30px rgba(0,0,0,.3)}
.so-n{font-family:"Geist Mono",ui-monospace,monospace;font-size:.85rem;color:#5eb3ff}
.so-cap{flex:1 1 260px;font-weight:600}
.so-acts{display:flex;gap:6px;margin-left:auto}
.so-bar .btn.ghost{background:transparent;color:#fff;border:1px solid #5eb3ff}
@media print{.roles,#showOv{display:none!important}}
.demo-pill .short{display:none}
@media (max-width:480px){.demo-pill .short{display:inline}}
@media (max-width:359px){.demo-pill .short{display:none}}
@media (min-width:861px) and (max-width:1199px){
  html.tech #app:has(.tp-log) table th,html.tech #app:has(.tp-log) table td{padding-left:7px;padding-right:7px}
  html.tech #app:has(.tp-log) table th{white-space:normal;line-height:1.15;vertical-align:bottom}
  html.tech #app:has(.tp-log) table th:nth-child(n+3):nth-child(-n+10){width:1%;min-width:0}
  html.tech #app:has(.tp-log) table th .hu{display:block}
  html.tech #app:has(.tp-log) table th:nth-child(n+7):nth-child(-n+10),html.tech #app:has(.tp-log) table td:nth-child(n+7):nth-child(-n+10){font-size:.82rem;padding-left:4px;padding-right:4px}
  html.tech #app:has(.tp-log) table td:nth-child(11),html.tech #app:has(.tp-log) table td:nth-child(12),html.tech #app:has(.tp-log) table th:nth-child(11),html.tech #app:has(.tp-log) table th:nth-child(12){min-width:7ch;max-width:12ch}
}
@media (min-width:861px) and (max-width:919px){html.tech #app:has(.tp-log) table th,html.tech #app:has(.tp-log) table td{padding-left:5px;padding-right:5px}}
@media (max-width:600px){html.roles-on.roles-main #appnav{display:none}}
@media (min-width:481px) and (max-width:900px){.demo-pill .long{display:none}.demo-pill .short{display:inline}}
@media (min-width:481px) and (max-width:819px){.demo-link{display:none}.demo-clock .long,.demo-reset .long{display:none}}
@media (max-width:540px){.demo-brand span{display:none}}

@media (display-mode: standalone){.demo-bar{padding-top:calc(9px + env(safe-area-inset-top,0px))}.demo-link[href="/"]{display:none}}
@media (display-mode: standalone) and (max-width:480px){.demo-bar{padding-top:calc(8px + env(safe-area-inset-top,0px))}}

.rep-logo.rep-mark{width:auto;height:auto;border:0;background:none;padding:0;gap:8px;text-transform:none;letter-spacing:0;color:#0c2d5e;justify-content:flex-start}
.rep-mark .rm-t{display:flex;flex-direction:column;text-align:left;line-height:1.1}
.rep-mark .rm-t b{font:800 .95rem/1 var(--f-mono);letter-spacing:.08em}
.rep-mark .rm-t span{font:600 .72rem/1.2 var(--f-body,inherit);color:#4a6a92}
@media print{.rep-logo.rep-mark{color:#000}}

@media (max-width:400px){#app>.pagehead>label{position:static;width:100%}#app>.pagehead>label select{max-width:none!important;width:100%!important}}
.board-sw{display:none}
@media (max-width:480px){.board-sw{display:block}.board-tw table{min-width:560px}}
@media print{.board-sw{display:none!important}}
