:root{--bg:#f6f7f9;--fg:#1d2330;--mut:#6b7385;--card:#fff;--bd:#dde1ea;--pri:#2457e6;--ok:#17803d;--okbg:#e4f6ea;--fail:#b3261e;--failbg:#fde8e6;--warn:#8a5a00;--warnbg:#fff3d6}
@media(prefers-color-scheme:dark){:root{--bg:#12151c;--fg:#e8ebf2;--mut:#98a0b3;--card:#1a1f2a;--bd:#2c3342;--pri:#6c93ff;--ok:#5fd68a;--okbg:#14301f;--fail:#ff8a80;--failbg:#3a1a18;--warn:#ffc65c;--warnbg:#3a2d10}}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg);font:15px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}
header{display:flex;gap:1rem;align-items:center;justify-content:space-between;padding:.8rem 1.2rem;background:var(--card);border-bottom:1px solid var(--bd);flex-wrap:wrap}
.brand{font-weight:700;color:var(--fg);text-decoration:none}nav{display:flex;gap:1rem;align-items:center}nav form{margin:0}
a{color:var(--pri)}main{max-width:1000px;margin:1.5rem auto;padding:0 1rem}h1{margin:.2rem 0 1rem}h2{margin:.2rem 0 .6rem;font-size:1.1rem}
.card{background:var(--card);border:1px solid var(--bd);border-radius:10px;padding:1rem 1.2rem;margin:0 0 1.2rem}.narrow{max-width:420px;margin:3rem auto}
.row{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.muted{color:var(--mut);font-size:.9em}small{color:var(--mut);display:block}
table{width:100%;border-collapse:collapse;background:var(--card);border:1px solid var(--bd);border-radius:10px;margin-bottom:1rem}th,td{text-align:left;padding:.55rem .7rem;border-bottom:1px solid var(--bd);vertical-align:top}th{font-size:.8em;color:var(--mut);text-transform:uppercase}
label{display:block;margin:.6rem 0;font-weight:600}input,select{display:block;width:100%;padding:.5rem .6rem;margin-top:.25rem;border:1px solid var(--bd);border-radius:6px;background:var(--bg);color:var(--fg);font:inherit}
.check{font-weight:400;display:flex;gap:.5rem;align-items:center}.check input{width:auto;margin:0}fieldset{border:1px solid var(--bd);border-radius:8px;margin:1rem 0}
.btn,button{font:inherit;padding:.45rem .9rem;border:1px solid var(--bd);background:var(--card);color:var(--fg);border-radius:6px;cursor:pointer;text-decoration:none;display:inline-block}
.primary{background:var(--pri);border-color:var(--pri);color:#fff}.danger{color:var(--fail);border-color:var(--fail)}.small{padding:.2rem .5rem;font-size:.85em}.link{border:0;background:none;color:var(--pri);padding:0}
.inline{display:flex;gap:.5rem;flex-wrap:wrap;align-items:center}.inline input,.inline select{width:auto;flex:1 1 140px;margin:0}.actions{display:flex;gap:.3rem;flex-wrap:wrap}.actions form{margin:0}
.flash{padding:.7rem 1rem;border-radius:8px;margin-bottom:1rem}.flash.ok{background:var(--okbg);color:var(--ok)}.flash.error{background:var(--failbg);color:var(--fail)}.flash.warn{background:var(--warnbg);color:var(--warn)}
.badge{display:inline-block;padding:.1rem .6rem;border-radius:99px;font-size:.85em;font-weight:600}.badge.ok{background:var(--okbg);color:var(--ok)}.badge.fail{background:var(--failbg);color:var(--fail)}.badge.warn{background:var(--warnbg);color:var(--warn)}.badge.wait{background:var(--bd);color:var(--mut)}
code{background:var(--bg);border:1px solid var(--bd);padding:.1rem .35rem;border-radius:4px;word-break:break-all}.danger-zone{border-color:var(--fail)}
.rec{border:1px solid var(--bd);border-radius:8px;padding:.8rem 1rem;margin:.8rem 0}.rec.ok{border-color:var(--ok)}.rec.fail{border-color:var(--fail)}.rec.warn{border-color:var(--warn)}
.rec h3{margin:0 0 .3rem;font-size:1rem}.kv{display:grid;grid-template-columns:90px 1fr auto;gap:.3rem .6rem;align-items:center;margin:.4rem 0}.kv span:first-child{color:var(--mut)}
progress{width:220px;height:12px;vertical-align:middle}.found{color:var(--mut);font-size:.9em;word-break:break-all}
