:root{--paper:#faf7f2;--surface:#fff;--ink:#2a1c0e;--ink-soft:#6b5b48;--rule:#e4dcd0;--saffron:#c8641e;--saffron-tint:#fdf1e7;--danger:#a3271f;--danger-tint:#fbeceb;--good:#1f6b46;--good-tint:#e9f5ee;--warn:#8a6412;--warn-tint:#fdf4e0;--mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--sans:ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);font-family:var(--sans);margin:0;font-size:14px;line-height:1.5}a{color:var(--saffron);text-decoration:none}a:hover{text-decoration:underline}.shell{grid-template-columns:190px minmax(0,1fr);min-height:100vh;display:grid}.side{border-right:1px solid var(--rule);background:var(--surface);height:100vh;padding:16px 12px;position:sticky;top:0;overflow-y:auto}.side h1{letter-spacing:-.01em;margin:0 0 2px;font-size:15px}.side .who{font-family:var(--mono);color:var(--ink-soft);overflow-wrap:anywhere;margin-bottom:16px;font-size:10px}.side nav{flex-direction:column;gap:1px;display:flex}.side nav a{color:var(--ink-soft);border-radius:4px;padding:7px 9px;font-weight:500}.side nav a:hover{background:var(--paper);text-decoration:none}.side nav a[aria-current=page]{background:var(--saffron-tint);color:var(--ink)}.main{min-width:0;padding:22px 26px 60px}h2.page{margin:0 0 2px;font-size:20px}.dek{color:var(--ink-soft);margin:0 0 20px}table{border-collapse:collapse;background:var(--surface);border:1px solid var(--rule);border-radius:6px;width:100%}th,td{text-align:left;border-bottom:1px solid var(--rule);vertical-align:top;padding:7px 10px}th{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);background:var(--paper);font-size:11px;font-weight:600;position:sticky;top:0}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:var(--paper)}td.mono,.mono{font-family:var(--mono);font-size:12px}td.num{text-align:right;font-family:var(--mono);font-variant-numeric:tabular-nums}.wrap{overflow-x:auto}.cards{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin-bottom:22px;display:grid}.card{background:var(--surface);border:1px solid var(--rule);border-radius:6px;padding:12px 14px}.card .k{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-soft);font-size:11px}.card .v{font-variant-numeric:tabular-nums;margin-top:2px;font-size:24px}.card .sub{color:var(--ink-soft);font-size:12px}.tag{font-family:var(--mono);border:1px solid var(--rule);white-space:nowrap;border-radius:3px;padding:1px 6px;font-size:11px;display:inline-block}.tag.good{background:var(--good-tint);border-color:var(--good);color:var(--good)}.tag.bad{background:var(--danger-tint);border-color:var(--danger);color:var(--danger)}.tag.warn{background:var(--warn-tint);border-color:var(--warn);color:var(--warn)}.banner{border:1px solid var(--danger);background:var(--danger-tint);color:var(--danger);border-radius:6px;margin-bottom:18px;padding:10px 14px}.banner.ok{border-color:var(--good);background:var(--good-tint);color:var(--good)}.empty{border:1px dashed var(--rule);text-align:center;color:var(--ink-soft);background:var(--surface);border-radius:6px;padding:22px}input,select,button,textarea{font:inherit;color:inherit}input[type=text],input[type=email],input[type=password],input[type=date],select,textarea{border:1px solid var(--rule);background:var(--surface);border-radius:4px;min-height:32px;padding:6px 9px}button{border:1px solid var(--rule);background:var(--surface);cursor:pointer;border-radius:4px;min-height:32px;padding:6px 12px}button.primary{background:var(--saffron);border-color:var(--saffron);color:#fff;font-weight:600}button.danger{background:var(--danger);border-color:var(--danger);color:#fff;font-weight:600}button:disabled{opacity:.55;cursor:not-allowed}.filters{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;display:flex}.section{margin-top:30px}.section h3{margin:0 0 8px;font-size:14px}.gate{background:var(--paper);place-items:center;min-height:100vh;padding:24px;display:grid}.gate-card{width:100%;max-width:360px}.gate-head{margin-bottom:18px}.gate-head .mark{align-items:center;gap:9px;margin-bottom:4px;display:flex}.gate-head .diamond{background:var(--saffron);flex:none;width:9px;height:9px;transform:rotate(45deg)}.gate-head h1{letter-spacing:-.01em;margin:0;font-size:17px}.gate-head p{color:var(--ink-soft);font-size:12px;font-family:var(--mono);margin:0}.gate form{background:var(--surface);border:1px solid var(--rule);border-radius:8px;flex-direction:column;gap:12px;padding:22px;display:flex}.gate label{color:var(--ink-soft);font-size:12px;font-weight:600;display:block}.gate label input{width:100%;color:var(--ink);min-height:38px;margin-top:4px;font-weight:400}.gate .foot{justify-content:space-between;align-items:center;gap:10px;margin-top:4px;font-size:13px;display:flex}.gate .note{color:var(--ink-soft);text-align:center;margin-top:14px;font-size:12px;line-height:1.6}.code-input{font-family:var(--mono);letter-spacing:8px;text-align:center;font-size:22px!important}.steps{gap:6px;margin-bottom:14px;display:flex}.steps i{background:var(--rule);border-radius:2px;flex:1;height:3px}.steps i.on{background:var(--saffron)}.err{color:var(--danger);font-size:13px}.problems{border:1px solid var(--danger);background:var(--danger-tint);border-radius:6px;margin-bottom:14px;padding:12px 14px;font-size:13px}.problems code{font-family:var(--mono);background:#0000000d;border-radius:3px;padding:1px 4px;font-size:12px}.problems li{margin-bottom:8px}.problems li:last-child{margin-bottom:0}
