
:root {color-scheme:dark; --bg:#101615; --panel:#1a2220; --edge:#34423d; --ink:#f2f4ef; --muted:#b2c1b9; --lime:#d6f781; --amber:#ffd481; font: 16px/1.5 "Geist","Inter",system-ui,sans-serif;}
* {box-sizing:border-box}
[hidden] {display:none!important}
body {margin:0; background:var(--bg); color:var(--ink)}
header {border-bottom:1px solid var(--edge)}
nav, main {max-width:1080px; margin:auto; padding:0 28px}
nav {min-height:70px; display:flex; align-items:center; gap:18px; flex-wrap:wrap; padding-block:14px}
.brand {font-weight:750; margin-right:auto; color:inherit; text-decoration:none}
.brand:hover {text-decoration:underline}
.brand:focus-visible {outline:3px solid var(--amber); outline-offset:3px}
.brand strong {color:var(--lime)}
.switch {display:flex; flex-wrap:wrap; gap:6px}
button, select {font:inherit; font-weight:600; border-radius:8px; color:var(--ink); background:#26312d; border:1px solid var(--edge); padding:8px 13px}
button {cursor:pointer}
button:hover:not(:disabled) {border-color:var(--lime)}
button:focus-visible, select:focus-visible {outline:3px solid var(--amber); outline-offset:3px}
button:disabled {opacity:.48; cursor:default}
.primary, [aria-pressed=true] {background:var(--lime); color:#19230d; border-color:var(--lime)}
main {padding-block:36px 52px}
h1, h2, p {margin:0}
h1 {font-size:clamp(2.35rem,6vw,4.1rem); line-height:1.05; letter-spacing:-.045em; margin:5px 0 13px}
h2 {font-size:1.12rem}
.context, .meta, footer {color:var(--muted); font-size:.9rem}
.controls {display:flex; align-items:end; flex-wrap:wrap; gap:10px; margin:20px 0 14px}
label {display:grid; gap:3px; color:var(--muted); font-size:.85rem}
.alert {border:1px solid var(--edge); border-left:4px solid var(--amber); border-radius:9px; background:var(--panel); padding:13px 16px; margin-bottom:16px; min-height:50px}
.alert.ready {border-left-color:var(--lime)}
.layout {display:grid; grid-template-columns:minmax(0,1.72fr) minmax(0,1fr); gap:16px}
.panel {background:var(--panel); border:1px solid var(--edge); border-radius:13px; padding:18px}
.rows {list-style:none; padding:0; margin:9px 0 0}
.rows li {border-top:1px solid var(--edge); padding:13px 0; display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:10px}
.rows li:last-child {padding-bottom:0}
.rows .meta {margin-top:2px}
#log {margin:10px 0 0; padding-left:1.2em; overflow-wrap:anywhere}
#log li {margin-bottom:10px}
#log time {color:var(--lime); font-variant-numeric:tabular-nums}
footer {margin-top:18px}
@media(max-width:730px) {.layout{grid-template-columns:1fr} nav,main{padding-inline:16px}}
@media(max-width:490px) {.rows li{grid-template-columns:1fr} .rows li button{justify-self:start}}

.page-links { margin-top: 12px; }
.page-links a { color: inherit; }
