
:root{--bg:#f6f7f9;--card:#fff;--ink:#14181f;--muted:#5b6575;--line:#e2e6ec;--brand:#2455c3;--ok:#16794a;--bad:#b42318;--warn:#8a5a00}
@media (prefers-color-scheme:dark){:root{--bg:#10141a;--card:#181e27;--ink:#e8ecf2;--muted:#9aa5b5;--line:#2a3340;--brand:#7aa2ff;--ok:#4cc38a;--bad:#ff8a80;--warn:#e6b450}}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.55 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
header.top{background:var(--card);border-bottom:1px solid var(--line)}
header.top .in{max-width:1080px;margin:0 auto;padding:12px 16px;display:flex;gap:16px;align-items:center;justify-content:space-between}
header.top a.brand{font-weight:700;color:var(--ink);text-decoration:none}
main{max-width:1080px;margin:0 auto;padding:20px 16px 60px}
h1{font-size:1.6rem;margin:.2em 0 .6em} h2{font-size:1.2rem;margin:1.4em 0 .5em} h3{font-size:1.05rem}
a{color:var(--brand)}
.card{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:16px;margin:12px 0}
table{width:100%;border-collapse:collapse} th,td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--line);vertical-align:top} th{color:var(--muted);font-weight:600;font-size:.85rem}
label{display:block;font-weight:600;margin:12px 0 4px} .hint{color:var(--muted);font-size:.88rem;font-weight:400}
input[type=text],input[type=url],input[type=password],textarea,select{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink);font:inherit}
textarea{min-height:80px}
.row{display:flex;flex-wrap:wrap;gap:12px} .row>*{flex:1 1 220px}
fieldset{border:1px solid var(--line);border-radius:8px;margin:12px 0;padding:8px 12px} legend{font-weight:600;padding:0 6px}
.checks label{display:inline-flex;gap:6px;align-items:center;font-weight:400;margin:4px 14px 4px 0}
button,.btn{display:inline-block;padding:9px 16px;border-radius:8px;border:1px solid var(--brand);background:var(--brand);color:#fff;font:inherit;font-weight:600;cursor:pointer;text-decoration:none}
button.secondary,.btn.secondary{background:transparent;color:var(--brand)} button.danger{background:var(--bad);border-color:var(--bad)}
.badge{display:inline-block;padding:1px 9px;border-radius:999px;font-size:.8rem;font-weight:600;border:1px solid var(--line)}
.b-succeeded,.b-approved,.b-drafted,.b-published{color:var(--ok);border-color:var(--ok)} .b-failed,.b-rejected,.b-timeout{color:var(--bad);border-color:var(--bad)}
.b-running,.b-queued,.b-changed,.b-planned,.b-manual{color:var(--warn);border-color:var(--warn)}
.err{border-left:4px solid var(--bad);padding:8px 12px;background:var(--card);margin:12px 0} .ok{border-left:4px solid var(--ok);padding:8px 12px;background:var(--card);margin:12px 0}
.pre{white-space:pre-wrap}
pre.log{background:#0b0f14;color:#d6deeb;padding:12px;border-radius:8px;overflow:auto;max-height:420px;font:13px/1.45 ui-monospace,Menlo,Consolas,monospace;white-space:pre-wrap;word-break:break-word}
.doc img,.doc video{max-width:100%;border:1px solid var(--line);border-radius:8px;margin:8px 0}
.doc blockquote{margin:8px 0;padding:4px 12px;border-left:4px solid var(--line);color:var(--muted)}
.actions form{display:inline-block;margin:0 6px 6px 0} .muted{color:var(--muted)}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}
