:root{--navy:#0b2545;--teal:#0fa3a3;--amber:#e0a800;--paper:#eef4f8;--ink:#0b2545;--muted:#56667a;--card:#fff;--line:#d7e2ea;--bad:#b3261e;--bad-bg:#fdeceb;--field:#fff;--logo-pin:var(--navy);--btn-text:#04202a;--shadow:0 1px 2px #0b25450f, 0 10px 28px #0b254512;--glow:#0fa3a329;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--paper:#06142a;--ink:#eaf1f8;--muted:#9db0c4;--card:#0e2a4a;--line:#1e3d63;--bad:#ff9a8e;--bad-bg:#3a1d22;--field:#0a2240;--logo-pin:#fff;--shadow:0 1px 2px #0000004d, 0 10px 28px #00000040;--glow:#0fa3a338;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#06142a;--ink:#eaf1f8;--muted:#9db0c4;--card:#0e2a4a;--line:#1e3d63;--bad:#ff9a8e;--bad-bg:#3a1d22;--field:#0a2240;--logo-pin:#fff;--shadow:0 1px 2px #0000004d, 0 10px 28px #00000040;--glow:#0fa3a338;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}body{background:radial-gradient(900px 360px at 85% -120px, var(--glow), transparent 70%), var(--paper);color:var(--ink);background-attachment:fixed;margin:0;font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}h1{margin:0 0 4px;font-size:26px}h2{margin:0 0 12px;font-size:18px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.page{flex-direction:column;min-height:100dvh;display:flex}.topbar{color:#eaf1f8;--logo-pin:#fff;background:linear-gradient(100deg,#0b2545 0%,#0c3a63 60%,#0a5a73 100%);box-shadow:0 2px 12px #0b254540}.topbar select,.topbar .btn.ghost,.theme-toggle{color:#fff;background:#ffffff1a;border-color:#ffffff40}.topbar .who small{color:#eaf1f8bf}.topbar .word{color:#fff}.theme-toggle{min-width:40px;min-height:40px;font:inherit;cursor:pointer;border:1px solid #ffffff40;border-radius:10px;font-size:18px}.topbar-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;max-width:1040px;margin:0 auto;padding:10px 16px;display:flex}.brand{color:inherit;align-items:center;gap:8px;text-decoration:none;display:flex}.word{letter-spacing:-.5px;font-size:34px;font-weight:800}.word.small{font-size:22px}.word b{color:var(--teal);font-weight:800}.topbar-right{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.who{flex-direction:column;font-size:14px;font-weight:600;line-height:1.2;display:flex}.who small{color:var(--muted);font-weight:400}.lang select{padding:6px 8px}.main{flex-direction:column;flex:1;gap:16px;width:100%;max-width:560px;margin:0 auto;padding:32px 16px 24px;display:flex}.main.wide{max-width:1040px}.narrow{flex-direction:column;gap:12px;display:flex}.muted{color:var(--muted);margin:0}.small-text{font-size:13px}.stage{color:var(--muted);margin:8px 0 0;font-size:13px}.card{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:18px;padding:18px 20px}.form{flex-direction:column;gap:12px;display:flex}label{flex-direction:column;gap:4px;font-size:14px;font-weight:600;display:flex}input,select{font:inherit;color:var(--ink);background:var(--field);border:1px solid var(--line);border-radius:10px;width:100%;min-height:44px;padding:10px 12px;font-weight:400}input:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid var(--teal);outline-offset:2px}input[readonly]{opacity:.8}fieldset{border:1px solid var(--line);border-radius:10px;margin:0;padding:8px 12px 12px}legend{padding:0 6px;font-size:14px;font-weight:600}label.check{flex-direction:row;align-items:center;gap:8px;padding:4px 0;font-weight:400}label.check input{width:20px;height:20px;min-height:20px}.row{gap:12px;display:flex}.row .grow{flex:1}.row .initial{width:110px}.preview{background:#0fa3a31f;border-radius:10px;margin:0;padding:8px 12px}.alert{background:var(--bad-bg);color:var(--bad);border-radius:10px;margin:0;padding:10px 12px;font-size:14px}.btn{font:inherit;cursor:pointer;text-align:center;border:2px solid #0000;border-radius:12px;justify-content:center;align-items:center;min-height:44px;padding:10px 16px;font-weight:700;text-decoration:none;display:inline-flex}.btn.primary{background:var(--teal);color:var(--btn-text)}.btn.ghost{color:var(--ink);border-color:var(--line);background:0 0}.btn:disabled{opacity:.55;cursor:not-allowed}.list{margin:0;padding:0;list-style:none}.list li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.list li:last-child{border-bottom:0}.list small{color:var(--muted);display:block}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:14px}th,td{text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;padding:8px 10px}th{color:var(--muted);font-weight:600}tr.off td{color:var(--muted)}.pw{display:block;position:relative}.pw input{padding-right:110px}.pw-toggle{font:inherit;color:var(--teal);cursor:pointer;background:0 0;border:0;border-radius:8px;min-height:36px;padding:8px 10px;font-size:13px;font-weight:600;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.card.notice{border-color:var(--amber);flex-direction:column;align-items:flex-start;gap:10px;display:flex}.card.notice p{margin:0}a{color:var(--teal)}.linkbox{border:2px dashed var(--teal);border-radius:12px;flex-direction:column;gap:8px;margin-top:16px;padding:12px;display:flex}.footer{border-top:1px solid var(--line)}.footer .bar{max-width:1040px;color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:12px;margin:0 auto;padding:16px;font-size:13px;display:flex}h3{margin:0 0 2px;font-size:17px}h4{margin:18px 0 6px;font-size:15px}.section-title{margin-top:24px}.location-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;display:grid}.location-grid .card{margin:0}.inline-edit{flex-wrap:wrap;align-items:center;gap:8px;width:100%;display:flex}.inline-edit input{flex:160px}.actions{flex-wrap:wrap;gap:8px;display:inline-flex}.actions-row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}fieldset:disabled{opacity:.7}fieldset.bare{border:0;flex-direction:column;gap:12px;padding:0;display:flex}.tabs{gap:8px;margin:8px 0 14px;display:flex}.tabs button{border:1px solid var(--line);background:var(--card);min-height:44px;color:var(--ink);font:inherit;cursor:pointer;border-radius:10px;flex:1;font-weight:600}.tabs button.active{background:var(--teal);border-color:var(--teal);color:var(--btn-text)}.clock-card{border-left:6px solid var(--teal)}.clock-card.extra{border-left-color:var(--amber)}.big-btn{background:var(--teal);width:100%;min-height:72px;color:var(--btn-text);font:inherit;cursor:pointer;border:0;border-radius:16px;margin-top:12px;font-size:20px;font-weight:700}.big-btn.extra,.btn.primary.amber{background:var(--amber);color:#231a00}.privacy-note{margin:4px 0;font-weight:600}.points{margin:0 0 12px;padding-left:20px}.points li{margin-bottom:6px}details{margin:8px 0 14px}details summary{cursor:pointer;font-weight:600}details h3{margin-top:12px}.history{margin:0;padding:0;list-style:none}.history li{border-bottom:1px solid var(--line);padding:12px 0}.history li:last-child{border-bottom:0}.history-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.history-row small{color:var(--muted);display:block}.badges{flex-wrap:wrap;gap:6px;display:inline-flex}.badge{background:#0fa3a32e;border-radius:999px;padding:2px 8px;font-size:12px;font-weight:600}.badge.amber{background:#e0a80040}.badge.muted{background:var(--line);color:var(--muted)}.link-btn{color:var(--teal);font:inherit;cursor:pointer;background:0 0;border:0;padding:4px 0;text-decoration:underline}.sent{background:#0fa3a31a;border-radius:10px;margin-top:6px;padding:8px 12px}.sent p{margin:4px 0}.block-row{flex-wrap:wrap;align-items:flex-end;gap:10px;margin-bottom:8px;display:flex}.block-row label{flex:110px}.list small+small{margin-top:2px}.hero{color:#fff;box-shadow:var(--shadow);background:linear-gradient(135deg,#0b2545 0%,#0c3a63 55%,#0a6c7a 100%);border-radius:22px;padding:24px 24px 22px;position:relative;overflow:hidden}.hero:before,.hero:after{content:"";border:2px solid #14c4c459;border-radius:50%;width:260px;height:120px;position:absolute;bottom:-60px;right:-40px}.hero:after{border-color:#14c4c48c;width:160px;height:76px;bottom:-38px;right:10px}.hero h1{margin:0;font-size:28px}.hero p{color:#eaf1f8d9;margin:4px 0 0}.hero .actions{z-index:1;margin-top:14px;position:relative}.hero .btn.ghost{color:#fff;background:#ffffff1f;border-color:#ffffff4d}.stats{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;display:grid}.stat{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);border-top:4px solid var(--teal);border-radius:16px;padding:14px 16px;position:relative}.stat.amber{border-top-color:var(--amber)}.stat.navy{border-top-color:var(--navy)}.stat b{letter-spacing:-.5px;font-size:30px;line-height:1.1;display:block}.stat span{color:var(--muted);font-size:13px;font-weight:600}.btn.primary{background:linear-gradient(135deg,#14c4c4,#0b9aa6);box-shadow:0 4px 14px #0fa3a359}.report-controls{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.report-controls label{flex:150px}.num{text-align:right;font-variant-numeric:tabular-nums}.map-box{border:1px solid var(--line);height:440px;box-shadow:var(--shadow);z-index:0;border-radius:18px;overflow:hidden}.pin-wrap{background:0 0;border:0}.pin{border:3px solid #fff;border-radius:50%;display:block;box-shadow:0 2px 6px #0006}.pin.live{animation:1.8s ease-out infinite pulso}@keyframes pulso{0%{box-shadow:0 0 #0fa3a399}to{box-shadow:0 0 0 16px #0fa3a300}}.map-legend{color:var(--muted);flex-wrap:wrap;gap:16px;font-size:13px;display:flex}.dot{vertical-align:middle;width:12px;height:12px;box-shadow:0 0 0 1px var(--line);border:2px solid #fff;border-radius:50%;margin-right:4px;display:inline-block}.dot.live,.dot.in{background:#0fa3a3}.dot.out{background:#0b2545}.dot.extra{background:#e0a800}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1px solid var(--line);color:var(--ink);font:inherit;cursor:pointer;background:#0fa3a31f;border-radius:999px;padding:6px 12px}@media (prefers-reduced-motion:reduce){.pin.live{animation:none}}.steps{margin:8px 0 0;padding-left:22px}.steps li{margin-bottom:8px}.big-alert{margin-top:14px;font-size:16px}.loc-help{margin-top:8px;font-weight:400}.loc-help summary{cursor:pointer;font-weight:700}.loc-help ul{margin:8px 0 0;padding-left:20px}.fallback{border-top:1px dashed var(--line);padding-top:8px}
