:root{--ink: #1b1f24;--muted: #5b6572;--line: #d7dce2;--bg: #f6f7f9;--card: #ffffff;--accent: #0b5fa5;--ok: #1c7c3d;--warn: #a05a00;--bad: #b02a2a}*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:var(--bg);font-size:14px}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}header.topbar{display:flex;align-items:center;gap:1.25rem;padding:.6rem 1.25rem;background:#123a5c;color:#fff}header.topbar .brand{font-weight:700;letter-spacing:.02em}header.topbar nav{display:flex;gap:1rem;flex:1}header.topbar nav a{color:#cfe1f2}header.topbar nav a.active{color:#fff;font-weight:600}header.topbar .who{color:#9fbcd6;font-size:12px}header.topbar button{background:transparent;color:#cfe1f2;border:1px solid #3c6285;border-radius:4px;padding:2px 10px;cursor:pointer}main.page{max-width:1180px;margin:1rem auto 4rem;padding:0 1.25rem}h1{font-size:1.25rem;margin:.5rem 0 1rem}h2{font-size:1rem;margin:1.4rem 0 .5rem}h3{font-size:.9rem;margin:1rem 0 .4rem;color:var(--muted)}section.panel{background:var(--card);border:1px solid var(--line);border-radius:6px;padding:.9rem 1.1rem;margin-bottom:1rem}table.grid{border-collapse:collapse;width:100%}table.grid th,table.grid td{text-align:left;padding:4px 10px;border-bottom:1px solid var(--line);vertical-align:top}table.grid th{color:var(--muted);font-weight:600;font-size:12px;white-space:nowrap}table.grid tr:hover td{background:#f0f4f8}table.grid td.num{text-align:right;font-variant-numeric:tabular-nums}table.grid td.diff{background:#fff3d6}.badge{display:inline-block;padding:1px 8px;border-radius:10px;font-size:11.5px;font-weight:600;border:1px solid transparent;white-space:nowrap}.badge.ok{background:#e2f3e8;color:var(--ok)}.badge.warn{background:#fdf0dc;color:var(--warn)}.badge.bad{background:#fbe4e4;color:var(--bad)}.badge.info{background:#e3edf6;color:var(--accent)}.badge.muted{background:#eceff2;color:var(--muted)}.kv{display:grid;grid-template-columns:190px 1fr;gap:2px 14px}.kv dt{color:var(--muted);font-size:12.5px;padding:2px 0}.kv dd{margin:0;padding:2px 0;word-break:break-word}form.verdict{display:flex;flex-direction:column;gap:.6rem}form.verdict label{font-size:12.5px;color:var(--muted);display:block;margin-bottom:2px}form.verdict input[type=text],form.verdict textarea,form.verdict select{width:100%;padding:5px 8px;border:1px solid var(--line);border-radius:4px;font:inherit}form.verdict textarea{min-height:56px}.row{display:flex;gap:1rem;flex-wrap:wrap}.row>*{flex:1;min-width:180px}button.primary,button.ghost,button.danger{border-radius:4px;padding:6px 14px;cursor:pointer;font:inherit}button.primary{background:var(--accent);color:#fff;border:1px solid var(--accent)}button.primary:disabled{background:#8fb3cf;border-color:#8fb3cf;cursor:not-allowed}button.ghost{background:#fff;color:var(--accent);border:1px solid var(--accent)}button.danger{background:#fff;color:var(--bad);border:1px solid var(--bad)}.error{color:var(--bad);white-space:pre-wrap}.notes{background:#f4f6f8;border:1px solid var(--line);border-radius:4px;padding:8px 12px;font-family:ui-monospace,Consolas,monospace;font-size:12.5px;white-space:pre-wrap}.hint{color:var(--muted);font-size:12.5px}details.raw summary{cursor:pointer;color:var(--muted);font-size:12.5px}details.raw pre{background:#f4f6f8;padding:8px;overflow-x:auto;font-size:12px;border:1px solid var(--line);border-radius:4px}.searchbar{display:flex;gap:.5rem;margin-bottom:.8rem}.searchbar input{flex:1;padding:6px 10px;border:1px solid var(--line);border-radius:4px;font:inherit}.login-box{max-width:420px;margin:5rem auto}
