
:root{color-scheme:light;
 --paper:#f6f3ec;--paper2:#ece7da;--ink:#1c1a15;--ink2:#55514a;--muted:#6a655b;--rule:#d6d0c0;--accent:#1c1a15;--on-accent:#f6f3ec;--link:#1f4e79;
 --crit:#b3261e;--warn:#b26a00;--ok:#0b7a0b;--info:#1f4e79;
 --serif:"Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,serif;--sans:-apple-system,"Segoe UI","Helvetica Neue",Arial,sans-serif}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){color-scheme:dark;--paper:#15140f;--paper2:#1e1c16;--ink:#f1eee5;--ink2:#c9c4b7;--muted:#a39e91;--rule:#34312a;--accent:#f1eee5;--on-accent:#15140f;--link:#8fbbe4;--crit:#ff8a80;--warn:#e3b341;--ok:#4cc27a;--info:#8fbbe4}}
*{box-sizing:border-box}html{font-size:16px}
body{margin:0;background:var(--paper);color:var(--ink);font:1rem/1.55 var(--sans)}
:focus-visible{outline:3px solid var(--link);outline-offset:3px}
a{color:var(--link)}
header.top{background:var(--paper);border-bottom:1px solid var(--rule);position:sticky;top:0;z-index:10}
.in{max-width:70rem;margin:0 auto;padding:0 1.1rem;display:flex;align-items:center;gap:1rem;flex-wrap:wrap}
.brand{padding:.7rem 0}.brand small{display:block;font-size:.72rem;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);font-weight:700}.brand b{font:600 1.1rem var(--serif)}
nav.main{display:flex;gap:.1rem;flex:1;flex-wrap:wrap}nav.main a{padding:.85rem .8rem;color:var(--ink2);text-decoration:none;font-size:.92rem;border-bottom:3px solid transparent;min-height:44px;display:flex;align-items:center}nav.main a.on{color:var(--ink);font-weight:700;border-bottom-color:var(--ink)}
.wrap{max-width:70rem;margin:0 auto;padding:0 1.1rem 4rem}
h1{font:600 2rem/1.15 var(--serif);margin:1.6rem 0 .3rem}h2{font:600 1.35rem var(--serif);margin:2rem 0 .5rem}h3{font:600 1.05rem var(--serif);margin:0 0 .3rem}p{margin:0 0 .8rem}
.mute{color:var(--ink2);font-size:.93rem}.tiny{color:var(--muted);font-size:.8rem}
.card{border-top:1px solid var(--rule);padding:1rem 0;margin:.6rem 0}
.view{display:none}.view.on{display:block}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;background:var(--accent);color:var(--on-accent);padding:0 1.1rem;border:1px solid var(--accent);font:inherit;font-size:.92rem;font-weight:600;cursor:pointer;text-decoration:none;border-radius:0}
.btn.alt{background:transparent;color:var(--ink);border-color:var(--ink2)}.btn.sm{min-height:40px;padding:0 .8rem;font-size:.86rem}.btn.danger{background:var(--crit);border-color:var(--crit);color:#fff}
.btn:disabled{opacity:.45;cursor:not-allowed}
.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));border-top:2px solid var(--ink);border-bottom:1px solid var(--rule);margin:1.2rem 0}.tile{padding:.9rem 1rem;border-left:1px solid var(--rule)}.tile:first-child{border-left:0;padding-left:0}.tile .lab{font-size:.74rem;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);font-weight:600}.tile .val{font:600 2.1rem/1.1 var(--serif)}
/* needs attention */
.attn{border-top:3px solid var(--ink);border-bottom:1px solid var(--rule)}
.attn header{display:flex;align-items:baseline;gap:.8rem;padding:.8rem 0 .5rem}.attn header b{font:600 1.35rem var(--serif)}
.item{display:grid;grid-template-columns:8.2rem 1fr auto;gap:.15rem 1rem;align-items:baseline;padding:.8rem 0;border-top:1px solid var(--rule)}
.sev{display:inline-flex;align-items:center;gap:.45rem;font-size:.78rem;font-weight:700;letter-spacing:.02em;white-space:nowrap}
.shp{display:inline-block;width:.7rem;height:.7rem}.urgent .shp{background:var(--crit)}.soon .shp{background:var(--warn);clip-path:polygon(50% 0,100% 100%,0 100%)}.info .shp{background:var(--info);transform:rotate(45deg) scale(.85)}
.item .t{font-weight:600}.item .d{grid-column:2;font-size:.88rem;color:var(--ink2)}
@media (max-width:700px){.item{grid-template-columns:1fr}.item .d{grid-column:1}}
.pill{display:inline-block;font-size:.76rem;padding:.05rem .55rem;border:1px solid var(--rule);font-weight:600;white-space:nowrap}
.pill.ok{border-color:var(--ok)}.pill.wait{border-color:var(--warn)}.pill.off{color:var(--muted)}.pill.bad{border-color:var(--crit)}
.chip{display:inline-block;min-width:1.7rem;text-align:center;padding:0 .35rem;font-size:.8rem;font-weight:700;border:1px solid var(--rule)}.chip.h{border-color:var(--crit);color:var(--crit)}.chip.m{border-color:var(--warn);color:var(--warn)}
table.t{width:100%;border-collapse:collapse;font-size:.92rem;border-top:1px solid var(--rule)}table.t th{text-align:left;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);padding:.55rem .5rem .4rem 0;font-weight:600;white-space:nowrap}table.t td{padding:.7rem .5rem .7rem 0;border-top:1px solid var(--rule);vertical-align:top}table.t tr.gone td{opacity:.45;text-decoration:line-through}
.scroll{overflow-x:auto}.row{display:flex;gap:.7rem;align-items:center;flex-wrap:wrap}
label{display:block;font-size:.85rem;font-weight:600;margin:.9rem 0 .25rem}
input,select,textarea{width:100%;font:inherit;padding:.6rem .7rem;border:1px solid var(--ink2);border-radius:0;background:var(--paper);color:var(--ink);min-height:44px}textarea{min-height:8rem}input[type=checkbox],input[type=radio]{width:auto;min-height:0}
input[type=color]{padding:2px;min-height:44px;width:4rem}
.two{display:grid;grid-template-columns:1.2fr 1fr;gap:2rem}@media(max-width:860px){.two{grid-template-columns:1fr}}
dialog{border:1px solid var(--ink);border-radius:0;background:var(--paper);color:var(--ink);padding:0;max-width:40rem;width:calc(100% - 1.5rem);box-shadow:0 12px 40px rgba(0,0,0,.35)}dialog::backdrop{background:rgba(0,0,0,.55)}
dialog .hd{display:flex;justify-content:space-between;align-items:center;padding:.8rem 1.1rem;border-bottom:1px solid var(--rule)}dialog .hd b{font:600 1.1rem var(--serif)}dialog .bd{padding:.3rem 1.1rem .8rem;max-height:68vh;overflow:auto}dialog .ft{display:flex;justify-content:space-between;gap:.5rem;padding:.8rem 1.1rem;border-top:1px solid var(--rule)}
.steps{display:flex;gap:.3rem;margin:.8rem 0}.steps i{flex:1;height:4px;background:var(--rule)}.steps i.on{background:var(--ink)}
.test{display:flex;gap:.8rem;align-items:center;padding:.5rem 0;border-bottom:1px solid var(--rule)}.test .st{width:6rem;font-weight:700;font-size:.86rem}
.opt{display:flex;gap:.7rem;align-items:flex-start;border:1px solid var(--rule);padding:.7rem;margin:.5rem 0;cursor:pointer}.opt input{margin-top:.3rem}.opt b{display:block}
code.k{background:var(--paper2);border:1px solid var(--rule);padding:.05rem .35rem;font-size:.8rem;word-break:break-all}
.sample{border:1px solid var(--rule);padding:1rem 1.2rem;background:var(--paper2)}.sample .h{font:600 1.5rem/1.2 var(--serif);margin:.2rem 0 .5rem}.sample .bars{display:flex;gap:.35rem;align-items:flex-end;height:3.2rem;margin:.6rem 0 .3rem}.sample .bars i{display:block;width:1.3rem;background:#8d887a}
.cr{font-size:.85rem;margin-top:.3rem}
#toast{position:fixed;left:50%;transform:translateX(-50%);bottom:1.4rem;background:var(--ink);color:var(--paper);padding:.6rem 1rem;font-size:.9rem;z-index:70;opacity:0;pointer-events:none;transition:opacity .2s}#toast.on{opacity:1}
.foot-note{font-size:.78rem;color:var(--muted);margin-top:2rem}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}

.login{max-width:26rem;margin:4rem auto}.err{border-left:4px solid var(--crit);padding:.4rem .8rem;background:var(--paper2)}.item .d{grid-column:2/-1}
.okmsg{border-left:4px solid var(--ok);padding:.4rem .8rem;background:var(--paper2)}
details>summary{list-style:none;cursor:pointer}details>summary::-webkit-details-marker{display:none}.card h2{margin-top:0}
