*{box-sizing:border-box}
:root{--ink:#14161A;--mut:#555B63;--line:#D9DCD6;--acc:#C42F17;--bg:#F6F7F5}
body{margin:0;font:15px/1.5 system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}
body.center{display:grid;place-items:center;min-height:100vh;padding:20px}
a{color:inherit}
code,pre,.mono{font-family:ui-monospace,Menlo,Consolas,monospace}
.nowrap{white-space:nowrap}
.top{display:flex;align-items:center;gap:16px;padding:10px 20px;background:#fff;border-bottom:1.5px solid var(--ink);position:sticky;top:0;z-index:5}
.top .btn{margin-left:auto}
.logo{font-weight:800;font-size:20px;text-decoration:none;letter-spacing:-.02em}
.logo i{display:inline-block;width:8px;height:8px;background:var(--acc);border-radius:50%;margin-left:3px}
.shell{display:flex;min-height:calc(100vh - 56px)}
.side{width:190px;flex:none;padding:18px 12px;border-right:1px solid var(--line);background:#fff}
.side a{display:block;padding:9px 12px;border-radius:4px;text-decoration:none;margin-bottom:2px}
.side a:hover{background:#EEF0EC}
.side a.on{background:var(--ink);color:#fff}
main{flex:1;min-width:0;padding:26px clamp(16px,3vw,40px);max-width:1150px}
h1{font-size:28px;margin:0 0 18px;letter-spacing:-.02em}
h2{font-size:18px;margin:0 0 12px}
.card{background:#fff;border:1.5px solid var(--ink);border-radius:4px;padding:20px;margin-bottom:24px}
.card-h{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}
details.card summary{cursor:pointer}
.btn{font:600 14px system-ui,sans-serif;padding:8px 14px;border:1.5px solid var(--ink);background:var(--ink);color:#fff;border-radius:3px;cursor:pointer;text-decoration:none;display:inline-block}
.btn.ghost{background:#fff;color:var(--ink)}
.btn.danger{background:#fff;color:var(--acc);border-color:var(--acc)}
.btn.sm{padding:3px 10px;font-size:13px}
.kv{display:grid;grid-template-columns:120px 1fr;gap:12px 16px;margin:0}
.kv dt{color:var(--mut)}
.kv dd{margin:0;min-width:0}
.steps{padding-left:20px;margin:0 0 12px}
.steps li{margin-bottom:14px}
.steps .codebox{margin-top:8px}
.codebox{display:flex;gap:8px;align-items:center;background:var(--ink);color:#E9EBE7;border-radius:3px;padding:6px 6px 6px 12px}
.codebox code,.codebox pre{flex:1;min-width:0;overflow-x:auto;white-space:pre;margin:0;font-size:13px}
.codebox.block{align-items:flex-start}
.copy{font:12px system-ui;background:#3A3F47;color:#fff;border:0;border-radius:3px;padding:4px 9px;cursor:pointer}
.tblwrap{overflow-x:auto;margin-bottom:12px}
table{width:100%;border-collapse:collapse;background:#fff;border:1.5px solid var(--ink)}
th,td{text-align:left;padding:9px 12px;border-bottom:1px solid var(--line);vertical-align:top}
th{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--mut)}
.pill{display:inline-block;padding:0 9px;border-radius:99px;font-size:12px;font-weight:600;border:1.5px solid var(--mut);color:var(--mut);margin:1px 0}
.pill.ok{color:#17703E;border-color:#17703E}
.pill.warn{color:#7A4F00;border-color:#B87A00;background:#FFF3CC}
.pill.bad{color:#B52A12;border-color:#B52A12;background:#FCEBE7}
.pill.run{color:#1F4E9C;border-color:#1F4E9C}
.muted{color:var(--mut)}
.err{color:var(--acc)}
.profile{position:relative;display:flex;align-items:center;gap:10px}
.avatar{width:34px;height:34px;border-radius:50%;border:1.5px solid var(--ink);background:#FFE066;font-weight:700;cursor:pointer}
.menu{position:absolute;right:0;top:44px;background:#fff;border:1.5px solid var(--ink);border-radius:4px;min-width:190px;padding:6px;box-shadow:3px 3px 0 var(--ink)}
.menu[hidden]{display:none}
.menu button{display:block;width:100%;text-align:left;padding:8px 10px;border:0;background:none;font:inherit;cursor:pointer}
.menu button:hover{background:#EEF0EC}
.menu .who{padding:8px 10px;color:var(--mut);font-size:13px;border-bottom:1px solid var(--line);margin-bottom:4px}
dialog{border:1.5px solid var(--ink);border-radius:4px;padding:22px;max-width:430px;width:92%}
dialog::backdrop{background:rgba(20,22,26,.45)}
label{display:block;margin:12px 0 4px;font-weight:600}
label.inline{font-weight:400;display:flex;gap:8px;align-items:center}
input[type=text],input[type=number],input:not([type]),input[type=password]{width:100%;padding:8px;border:1.5px solid var(--ink);border-radius:3px;font:inherit}
.row-end{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}
.login{width:100%;max-width:380px}
.login .btn{margin-top:16px;width:100%;padding:10px}
@media(max-width:760px){
.shell{flex-direction:column}
.side{width:auto;display:flex;overflow-x:auto;border-right:0;border-bottom:1px solid var(--line);padding:8px}
.side a{white-space:nowrap}
.kv{grid-template-columns:1fr;gap:4px}.kv dd{margin-bottom:10px}
.top{gap:10px;padding:10px 14px}.top .btn{font-size:12px;padding:7px 10px}.uname{display:none}
}
