:root{--ink:#0b1f2a;--paper:#fbfaf8;--wet:#1a6e7e;--wet-d:#124e5a;--dry:#c6803a;--alert:#d4342a;--slate:#5a6b72;--muted:#8a979d;--line:#e4e7e9;--card:#fff;--serif:Georgia,"Times New Roman",serif;--sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;line-height:1.5}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.fadeUp{animation:.6s both fadeUp}.fadeIn{animation:.6s both fadeIn}.wrap{max-width:1180px;margin:0 auto;padding:0 24px}.masthead{background:var(--ink);color:var(--paper);box-shadow:inset 0 3px 0 var(--wet),inset 0 -3px 0 var(--wet);animation:.5s fadeIn}.masthead .wrap{padding:30px 24px 26px}.dateline{letter-spacing:.14em;text-transform:uppercase;color:#8fb8c0;align-items:center;gap:14px;margin-bottom:14px;font-size:.7rem;font-weight:600;display:flex}.dateline .rule{background:#8fb8c04d;flex:1;height:1px}.brand{align-items:center;gap:13px;margin-bottom:12px;display:flex}.brand h1{margin-bottom:0!important}.masthead h1{font-family:var(--serif);letter-spacing:-.01em;margin-bottom:12px;font-size:2.6rem;font-weight:700;line-height:1.04}.masthead h1 em{color:#7fc5d2;font-style:italic;font-weight:400}.standfirst{color:#c9d6da;max-width:730px;font-size:1.02rem;line-height:1.55}.standfirst b{color:var(--paper)}.nav{z-index:20;background:var(--paper);border-bottom:1px solid var(--line);position:sticky;top:0}.nav .wrap{gap:4px;display:flex}.nav button{font-family:var(--sans);color:var(--slate);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:14px 16px;font-size:.92rem;font-weight:600;transition:color .15s}.nav button:hover{color:var(--ink)}.nav button.active{color:var(--wet);border-bottom-color:var(--wet)}section.tab{padding:34px 0 60px}.eyebrow{letter-spacing:.12em;text-transform:uppercase;color:var(--wet);margin-bottom:4px;font-size:.66rem;font-weight:700}h2.sec{font-family:var(--serif);letter-spacing:-.01em;margin-bottom:3px;font-size:1.35rem;font-weight:700}.cap{color:var(--muted);margin-bottom:14px;font-size:.85rem}.hero{flex-wrap:wrap;align-items:baseline;gap:22px;display:flex}.hero .num{font-family:var(--serif);color:var(--wet);letter-spacing:-.02em;font-size:4.6rem;font-weight:700;line-height:.9}.hero .txt{max-width:460px;font-size:1.05rem;line-height:1.45}.hero .txt b{color:var(--wet-d)}.strip{grid-template-columns:repeat(3,1fr);gap:26px;margin:28px 0 8px;display:grid}.stat .v{font-family:var(--serif);font-size:2rem;font-weight:700;line-height:1}.stat .l{text-transform:uppercase;letter-spacing:.07em;color:var(--slate);margin-top:8px;font-size:.68rem;font-weight:700}.stat .s{color:var(--muted);margin-top:3px;font-size:.8rem;line-height:1.35}.grid2{grid-template-columns:3fr 2fr;gap:24px;margin-top:6px;display:grid}.grid1{margin-top:6px}.card{background:var(--card);border:1px solid var(--line);border-radius:3px;padding:18px 20px;animation:.6s both fadeUp}.read{border-left:3px solid var(--wet);color:var(--slate);background:#f2f6f7;border-radius:2px;margin-top:14px;padding:11px 15px;font-size:.88rem;line-height:1.5}.read b{color:var(--ink)}.note{background:var(--card);border:1px solid var(--line);border-left:3px solid var(--wet);color:var(--slate);border-radius:2px;margin-top:26px;padding:15px 18px;font-size:.9rem;line-height:1.55}.note b{color:var(--ink)}.auds{grid-template-columns:repeat(5,1fr);gap:14px;margin-top:6px;display:grid}.aud{background:var(--card);border:1px solid var(--line);border-top:2px solid var(--dry);border-radius:3px;padding:16px;transition:transform .18s,box-shadow .18s;animation:.5s both fadeUp}.aud:hover{transform:translateY(-4px);box-shadow:0 10px 26px #0b1f2a1a}.aud .who{text-transform:uppercase;letter-spacing:.05em;color:var(--wet-d);margin-bottom:7px;font-size:.7rem;font-weight:700}.aud .what{color:var(--slate);font-size:.84rem;line-height:1.5}.control{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:14px;display:flex}select,input[type=text]{font-family:var(--sans);border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:3px;padding:8px 11px;font-size:.9rem}input[type=range]{accent-color:var(--wet)}label.lbl{color:var(--slate);font-size:.8rem;font-weight:600}table{border-collapse:collapse;width:100%;font-size:.85rem}th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--slate);border-bottom:2px solid var(--line);background:#fff;padding:9px 12px;font-size:.68rem;position:sticky;top:0}td{border-bottom:1px solid var(--line);color:var(--ink);padding:9px 12px}tr:hover td{background:#f7f9fa}.tableScroll{border:1px solid var(--line);border-radius:3px;max-height:340px;overflow:auto}.chip{border-radius:10px;padding:2px 8px;font-size:.7rem;font-weight:600;display:inline-block}.dropzone{border:2px dashed var(--line);text-align:center;color:var(--slate);cursor:pointer;border-radius:4px;padding:26px;transition:border-color .15s,background .15s}.dropzone:hover{border-color:var(--wet);background:#f2f6f7}.msg-ok{color:#256034;background:#eaf4ec;border-left:3px solid #3b8a4e}.msg-err{border-left:3px solid var(--alert);color:#8f241c;background:#fbecea}.msg{border-radius:2px;margin-top:12px;padding:12px 16px;font-size:.88rem;line-height:1.5}footer{border-top:1px solid var(--line);color:var(--muted);padding:26px 0 40px;font-size:.82rem}.foot-data{max-width:640px;line-height:1.55}.foot-by{color:var(--slate);margin-top:16px;font-size:.92rem}.foot-by a{color:var(--ink);text-underline-offset:2px;font-weight:700;text-decoration:underline}.kofi{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:8px;align-items:center;gap:8px;margin-top:14px;padding:10px 18px;font-size:.9rem;font-weight:700;text-decoration:none;transition:transform .15s,box-shadow .15s,border-color .15s;display:inline-flex}.kofi:hover{border-color:var(--dry);transform:translateY(-2px);box-shadow:0 8px 20px #0b1f2a1a}@media (max-width:900px){.grid2{grid-template-columns:1fr;gap:18px}.strip,.auds{grid-template-columns:1fr 1fr}.masthead h1{font-size:2rem}.hero .num{font-size:3.4rem}}@media (max-width:640px){.brand img{width:30px;height:30px}.brand{gap:10px}.wrap{padding:0 16px}.masthead .wrap{padding:22px 16px 20px}.masthead h1{font-size:1.6rem;line-height:1.1}.standfirst{font-size:.92rem}.dateline{flex-wrap:wrap;gap:8px;font-size:.62rem}.nav .wrap{-webkit-overflow-scrolling:touch;scrollbar-width:none;overflow-x:auto}.nav .wrap::-webkit-scrollbar{display:none}.nav button{white-space:nowrap;flex-shrink:0;padding:12px;font-size:.86rem}section.tab{padding:24px 0 44px}.hero{gap:12px}.hero .num{font-size:3rem}.hero .txt{font-size:.96rem}.strip{grid-template-columns:1fr;gap:16px;margin:20px 0 4px}.auds{grid-template-columns:1fr;gap:12px}h2.sec{font-size:1.18rem}.card{padding:14px 15px}.control{gap:8px}select,input[type=text]{max-width:none;width:100%!important}.control input[type=text]{width:100%!important}.tableScroll{max-height:400px}table{min-width:560px;font-size:.78rem}th,td{padding:7px 9px}.note{padding:13px 15px;font-size:.86rem}.read{font-size:.84rem}.kofi{justify-content:center;width:100%}}
