*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;font:16px/1.45 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;background:#eef3f6;color:#1d2731}
a{color:#0b4f6c}
.top{position:sticky;top:0;z-index:5;background:#0b3546;color:#fff;padding:calc(10px + env(safe-area-inset-top)) 14px 0;box-shadow:0 2px 8px rgba(0,0,0,.2)}
.brand{color:#fff;font-weight:800;font-size:1.15em;text-decoration:none}
.tabs{display:flex;gap:4px;margin-top:8px}
.tabs a{flex:1;text-align:center;color:#cfe0ea;text-decoration:none;padding:8px 4px 10px;font-weight:700;font-size:.95em;border-bottom:3px solid transparent}
.tabs a.on{color:#fff;border-color:#ffd166}
main{max-width:720px;margin:0 auto;padding:12px 12px 24px}
.msg{padding:20px;text-align:center}
.grp{font-size:.8em;text-transform:uppercase;letter-spacing:.08em;color:#4a5866;margin:18px 4px 6px}
.rows{list-style:none;margin:0;padding:0;background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px rgba(0,0,0,.08)}
.row{display:flex;align-items:center;gap:8px;padding:10px 10px;border-top:1px solid #e3e9ee}
.row:first-child{border-top:0}
.rowlink{flex:1;min-width:0;text-decoration:none;color:inherit;display:flex;flex-direction:column}
.rn{font-weight:700;line-height:1.25}
.rs{font-size:.82em;color:#4a5866}
.star{background:none;border:0;font-size:1.5em;line-height:1;color:#9fb0bc;cursor:pointer;padding:4px 6px;min-width:40px;min-height:40px}
.star.on{color:#f0a500}
.pill{display:inline-block;min-width:54px;text-align:center;color:#fff;font-weight:800;border-radius:10px;padding:6px 8px;font-size:1.05em}
.pill small{font-size:.65em;opacity:.85}
.pill.closed{background:#8a2318;font-size:.8em;text-transform:uppercase;letter-spacing:.04em}
.badge{display:inline-block;font-size:.75em;font-weight:800;border-radius:5px;padding:1px 7px;text-transform:uppercase;letter-spacing:.03em}
.b-open{background:#e0f2e8;color:#1e5e3a}.b-closed{background:#fde3df;color:#8a2318}.b-partial{background:#fff1cc;color:#7a5200}.b-unknown{background:#e6ebef;color:#3f4c58}
.card{background:#fff;border-radius:12px;padding:12px 14px;margin:10px 0;box-shadow:0 1px 3px rgba(0,0,0,.08)}
.card h1,.head h1{font-size:1.2em;margin:0;line-height:1.25}
.ht{display:flex;align-items:center;gap:6px}
.dial{width:230px;max-width:80%;display:block;margin:8px auto}
.call{margin:.3em 0 0}
.status.s-closed{border-left:5px solid #c0392b}.status.s-open{border-left:5px solid #2e8b57}.status.s-partial{border-left:5px solid #f0a500}.status.s-unknown{border-left:5px solid #9fb0bc}
.status p{margin:.3em 0}
.muted{color:#5b6875;font-size:.85em}
.sec{font-size:1em;margin:18px 4px 6px;color:#0b4f6c}
.days{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.day{background:#fff;border-radius:12px;padding:10px;box-shadow:0 1px 3px rgba(0,0,0,.08);font-size:.88em}
.day p{margin:.3em 0}.dn{font-weight:800;color:#0b4f6c}
.day ul{margin:.3em 0 0;padding-left:1.1em;color:#8a2318;font-size:.92em}
.wx{background:linear-gradient(160deg,#2f6f9f,#163a5c);color:#fff;border-radius:18px;padding:12px 14px}
.wx a{color:#ffe29a}.wx .muted{color:#d6e6f0}
.now{display:flex;align-items:center;gap:10px}.now svg{width:52px;height:52px}.now .t{font-size:2.6em;font-weight:300}
.now small{display:block;opacity:.8;font-size:.8em}
.stamp{font-size:.75em;opacity:.85;margin:.2em 0 .4em}
.hr{display:flex;gap:4px;overflow-x:auto;padding:6px 0;border-top:1px solid rgba(255,255,255,.2)}
.hr div{flex:1 0 58px;text-align:center;font-size:.85em}.hr b{display:block;font-size:.85em}.hr svg{width:30px;height:30px;display:block;margin:2px auto}
.hr small{display:block;color:#bfe3ff}.hr i{opacity:.7;font-style:normal}
.dly div{background:rgba(255,255,255,.08);border-radius:10px;flex-basis:70px}
.chart{width:100%;height:auto;background:#141c23;border-radius:8px;display:block;margin:6px 0}
.warn{border-left:5px solid #c2410c}
.hit{border-left:5px solid #2e8b57}.hit ul{margin:.2em 0;padding-left:1.1em}
.alerts summary{cursor:pointer;padding:2px 0}
.alerts label{display:block;margin:.6em 0;font-size:.95em}
.alerts input{width:20px;height:20px;vertical-align:-4px;margin-right:6px}
select{font:inherit;padding:2px 4px}
.btn{display:inline-block;font:inherit;font-weight:700;background:#0b4f6c;color:#fff;border:0;border-radius:8px;padding:9px 14px;cursor:pointer;text-decoration:none}
.btn.ghost{background:#e6ebef;color:#0b3546}.btn.sm{padding:5px 9px;font-size:.85em}
.camf iframe{width:100%;height:560px;border:0;border-radius:8px;margin-top:8px}
.links{background:#fff;border-radius:12px;padding:10px 14px 10px 30px;margin:0}
.links li{margin:.35em 0;overflow-wrap:anywhere}
.back{margin:4px 2px}
.foot{max-width:720px;margin:0 auto;padding:0 14px calc(24px + env(safe-area-inset-bottom));font-size:.8em;color:#4a5866}

.card.cond{padding:12px 14px;line-height:1.45;font-size:.95rem;color:#e8eef2}
.card.cond p{margin:0}
