/* Kīlauea Episode Tracker: dark basalt + lava, system fonts, no JS */
:root{--bg:#0f0d0c;--bg2:#171412;--card:#1d1917;--card2:#25201d;--ink:#f5f1ee;--muted:#b8aea7;--line:#38302b;--lava:#f97316;--lava2:#fb923c;--ember:#fbbf24;--link:#fdba74;--r:16px;--focus:#fde047}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;color-scheme:dark}
body{margin:0;font:16px/1.6 ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;color:var(--ink);background:var(--bg)}
a{color:var(--link);text-underline-offset:3px}
a:hover{color:#fed7aa}
:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:4px}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:#fff;color:#000;padding:8px 12px;z-index:50;border-radius:8px}
.wrap{max-width:1120px;margin:0 auto;padding:0 1.1rem}
h1,h2,h3{line-height:1.15;letter-spacing:-.02em;color:#fff}
h1{font-size:clamp(2rem,6vw,3.4rem);margin:.2rem 0 .6rem;font-weight:850}
h2{font-size:1.35rem;margin:2rem 0 .7rem;font-weight:800}
header.site{background:rgba(15,13,12,.92);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}
.bar{display:flex;align-items:center;gap:1rem;min-height:60px}
.brand{display:inline-flex;align-items:center;gap:.55rem;color:#fff;text-decoration:none;font-weight:850;font-size:1.06rem;margin-right:auto}
.logo{display:block;flex:none}
nav.main{display:none}
nav.main a,.mnav nav a{color:#d6cdc7;text-decoration:none;font-weight:650;font-size:.95rem;padding:.45rem .65rem;border-radius:8px}
nav.main a:hover,.mnav nav a:hover{background:#2a2420;color:#fff}
nav.main a[aria-current],.mnav nav a[aria-current]{background:var(--lava);color:#1c0a00}
.mnav{position:relative}
.mnav summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .8rem;border:1px solid #57504a;border-radius:10px;font-weight:750;color:#fff}
.mnav summary::-webkit-details-marker{display:none}
.burger,.burger::before,.burger::after{display:block;width:18px;height:2px;background:#fff;border-radius:2px;position:relative}
.burger::before,.burger::after{content:"";position:absolute;left:0}.burger::before{top:-6px}.burger::after{top:6px}
.mnav[open] .burger{background:transparent}.mnav[open] .burger::before{top:0;transform:rotate(45deg)}.mnav[open] .burger::after{top:0;transform:rotate(-45deg)}
.mnav nav{position:absolute;right:0;top:calc(100% + 10px);background:var(--card2);border:1px solid var(--line);border-radius:14px;padding:.5rem;display:grid;min-width:220px;box-shadow:0 18px 40px rgba(0,0,0,.6)}
.mnav nav a{padding:.7rem .8rem;font-size:1rem}
@media(min-width:860px){nav.main{display:flex;gap:.15rem}.mnav{display:none}}
.hero{background:radial-gradient(900px 420px at 85% 120%,rgba(249,115,22,.45),transparent 62%),radial-gradient(600px 300px at 10% -20%,rgba(251,191,36,.12),transparent 60%),linear-gradient(180deg,#120f0d,#0f0d0c);padding:3rem 0 2.4rem;border-bottom:1px solid var(--line)}
.hero .lede{font-size:1.12rem;max-width:62ch;color:#e7ded8}
.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.76rem;font-weight:850;color:var(--lava2);margin:0 0 .5rem}
.updated{display:flex;align-items:center;gap:.5rem;font-size:.88rem;color:var(--muted);margin:.6rem 0 0}.updated.light{color:#e2d6ce}
.dot{width:.6rem;height:.6rem;border-radius:50%;background:#22c55e;box-shadow:0 0 0 4px rgba(34,197,94,.18);flex:none}
.status{display:grid;gap:.8rem;margin-top:1.6rem;grid-template-columns:1fr 1fr}
@media(min-width:900px){.status{grid-template-columns:repeat(4,1fr)}}
.scard{background:rgba(29,25,23,.85);border:1px solid var(--line);border-radius:var(--r);padding:1rem 1.05rem;backdrop-filter:blur(4px)}
.scard.fw{border-color:#7c3a12;background:linear-gradient(160deg,rgba(124,45,18,.55),rgba(29,25,23,.9))}
.scard .label{font-size:.74rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}
.scard .num{font-size:1.55rem;font-weight:850;color:#fff;margin-top:.3rem;line-height:1.1}
.scard .sub{font-size:.82rem;color:var(--muted);margin-top:.35rem}
.lvl{display:inline-block;margin-top:.45rem;font-weight:900;letter-spacing:.06em;border-radius:999px;padding:.2rem .8rem;font-size:1rem;background:#44403c;color:#fff}
.lvl.green{background:#166534;color:#dcfce7}.lvl.yellow{background:#facc15;color:#1c1917}.lvl.orange{background:#f97316;color:#1c0a00}.lvl.red{background:#dc2626;color:#fff}
.pagehead{background:linear-gradient(180deg,#171311,var(--bg));border-bottom:1px solid var(--line);padding:2rem 0 1.4rem}
.lede{font-size:1.08rem;color:#d9cfc8;max-width:68ch}
.content{padding-top:1.2rem;padding-bottom:3rem}
.grid2{display:grid;gap:1rem}
@media(min-width:900px){.grid2{grid-template-columns:1fr 1fr}}
.panel{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:.3rem 1.2rem 1rem}
.panel h2{margin:1rem 0 .5rem;font-size:1.15rem}
.quote{margin:.4rem 0;padding:.9rem 1rem;border-left:4px solid var(--lava);background:var(--card2);border-radius:0 12px 12px 0;font-size:1.05rem;color:#fff}
.small{font-size:.88rem}.muted{color:var(--muted)}
.chart{margin:1.2rem 0;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:1rem 1rem .6rem}
.grid2 .chart{margin:0}
.chart figcaption{display:flex;flex-direction:column;gap:.2rem;margin-bottom:.6rem}
.chart figcaption strong{color:#fff;font-size:1.05rem}.chart figcaption span{font-size:.85rem;color:var(--muted)}
.chart svg{display:block;width:100%;height:auto}
.chart .ax{fill:#a8a29e;font-size:13px;font-family:ui-sans-serif,system-ui,sans-serif}
.chart rect:hover{opacity:.8}
.safety{background:linear-gradient(135deg,#3b1d0d,#1d1917);border:1px solid #7c3a12;border-radius:var(--r);padding:.4rem 1.3rem 1rem;margin:2rem 0}
.safety h2{margin-top:1rem}
.links{list-style:none;padding:0;margin:0;display:grid;gap:.6rem;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}
.links a{display:block;background:var(--card);border:1px solid var(--line);border-radius:12px;padding:.8rem 1rem;text-decoration:none;font-weight:700;color:#fff}
.links a::after{content:" ↗";color:var(--lava2)}
.links a:hover{border-color:var(--lava)}
.notice{border:1px solid #5b3b1c;border-left:4px solid var(--ember);background:#211a14;padding:.75rem .95rem;border-radius:10px;margin:1rem 0;color:#efe6df}
.notice.bad{border-color:#6b2a2a;border-left-color:#ef4444;background:#241515}
.cards{display:grid;gap:1rem}
@media(min-width:800px){.cards{grid-template-columns:1fr 1fr}}
.tcard{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:.3rem 1.2rem 1rem}
.tcard h2{font-size:1.15rem;margin:1rem 0 .4rem}
.tcard li{margin:.5rem 0}
.tcard.warn{border-color:#7c3a12;background:#211710}
.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--r);margin:1.2rem 0;background:var(--card)}
table{border-collapse:collapse;width:100%;font-size:.93rem}
th,td{border-bottom:1px solid var(--line);padding:.7rem .8rem;text-align:left;vertical-align:top}
thead th{background:var(--card2);font-size:.76rem;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);position:sticky;top:0}
tbody th.num{font-size:1.4rem;font-weight:850;color:var(--lava2);white-space:nowrap}
.hgt{display:block;font-size:.72rem;font-weight:700;color:var(--ember);letter-spacing:0}
table.ep ul{margin:0 0 .3rem;padding-left:1.1rem}
@media(max-width:760px){table.ep thead{display:none}table.ep,table.ep tbody,table.ep tr,table.ep td,table.ep th{display:block}table.ep tr{border-bottom:1px solid var(--line);padding:.6rem .4rem}table.ep td,table.ep th{border:0;padding:.3rem .5rem}table.ep td::before{content:attr(data-l);display:block;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}}
footer.site{background:#0a0807;border-top:1px solid var(--line);color:var(--muted);padding:2.2rem 0 2.4rem;font-size:.9rem}
footer.site a{color:#e7ded8}footer.site strong{color:#fff}
.fgrid{display:grid;gap:1.4rem}@media(min-width:800px){.fgrid{grid-template-columns:1.6fr 1fr}}
.fbrand{display:flex;align-items:center;gap:.5rem;font-size:1rem}
footer.site nav{display:grid;gap:.45rem;align-content:start}
@media print{header.site,.mnav,footer.site nav{display:none!important}body{background:#fff;color:#000}h1,h2,.quote,.scard .num{color:#000}}
