:root{--bg:#efefeb;--paper:#f8f8f4;--ink:#171715;--muted:#77776f;--line:#c8c8c0;--warn:#fff3ad;--danger:#b42318}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--ink)}
body{font-family:"Yu Mincho","Hiragino Mincho ProN",serif}button,input,textarea,select{font:inherit}button{cursor:pointer}
.loginShell{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(rgba(0,0,0,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.035) 1px,transparent 1px),var(--bg);background-size:32px 32px}
.loginCard,.panel{background:var(--paper);border:1px solid var(--ink);box-shadow:6px 6px 0 var(--ink)}
.loginCard{width:min(480px,100%);padding:42px}.brand{font-family:Arial,sans-serif;font-weight:900;letter-spacing:-.04em;font-size:22px}.brand span{font-weight:400}
.eyebrow{font-family:Arial,sans-serif;font-size:11px;letter-spacing:.18em;margin:24px 0 8px}h1{font-size:clamp(30px,4vw,52px);line-height:1.05;margin:0;font-weight:500}h2{margin:0 0 22px;font-size:24px;font-weight:500}
.muted{color:var(--muted);line-height:1.8}.small{font-size:12px}.stack,.editor{display:grid;gap:18px;margin-top:30px}
label{display:grid;gap:7px;font-size:13px}input,textarea,select{width:100%;padding:12px 13px;border:1px solid var(--ink);border-radius:0;background:#fff;color:var(--ink)}textarea{resize:vertical}
.primary,.ghost,.danger{border:1px solid var(--ink);padding:12px 16px;background:var(--ink);color:#fff}.ghost{background:transparent;color:var(--ink)}.danger{background:transparent;color:var(--danger);border-color:var(--danger)}
.compact{padding:7px 10px;font-size:12px}.actions{display:flex;gap:8px;flex-wrap:wrap}.actions .primary{flex:1}
.textButton{border:0;background:transparent;text-decoration:underline;padding:5px 0;text-align:left;color:var(--ink)}
.notice{padding:10px 12px;background:var(--warn);border:1px solid var(--ink);font-size:13px}.error{background:#ffe2df;color:#8a1c14}
.adminShell{min-height:100vh;display:grid;grid-template-columns:240px 1fr}.sidebar{min-height:100vh;position:sticky;top:0;padding:28px 22px;border-right:1px solid var(--ink);display:flex;flex-direction:column;justify-content:space-between;background:#d7d7d0}
.sidebar nav{display:grid;gap:8px;margin:50px 0 auto}.sidebar nav button{border:0;border-bottom:1px solid #a8a89f;background:transparent;padding:12px 4px;text-align:left}.sidebar nav button.active{font-weight:700;padding-left:14px;border-bottom-color:var(--ink)}
.workspace{padding:34px}.topbar{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:34px}.topbar .eyebrow{margin-top:0}
.twoCol{display:grid;grid-template-columns:minmax(330px,.85fr) minmax(430px,1.15fr);gap:26px}.panel{padding:24px;box-shadow:4px 4px 0 var(--ink)}.panelHead{display:flex;justify-content:space-between;align-items:center;gap:12px}
.list{display:grid;border-top:1px solid var(--line)}.listItem{border:0;border-bottom:1px solid var(--line);background:transparent;padding:16px 0;display:flex;justify-content:space-between;text-align:left;gap:12px;width:100%}.listItem div{display:grid;gap:5px}.listItem span{font-size:12px;color:var(--muted)}
.status{align-self:center;padding:4px 7px;border:1px solid var(--ink);color:var(--ink)!important}.status.published{background:#dcffb6}.status.draft{background:#ddd}.empty{color:var(--muted);font-size:13px;padding:20px 0}
.row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.checks{display:flex;gap:24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 0}.checks label{display:flex;align-items:center;gap:8px}.checks input{width:auto}
.categoryRow{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding:15px 0;align-items:center}.categoryRow div{display:grid;gap:5px}.categoryRow span{color:var(--muted);font-size:12px}.categoryRow button{min-width:64px}
.hidden{display:none!important}.securityNote{margin-top:18px;padding-top:16px;border-top:1px solid var(--line);font-size:12px;color:var(--muted);line-height:1.7}
@media(max-width:900px){.adminShell{grid-template-columns:1fr}.sidebar{min-height:auto;position:static;border-right:0;border-bottom:1px solid var(--ink);display:block}.sidebar nav{margin:20px 0;display:flex;overflow-x:auto}.sidebar nav button{min-width:100px}.twoCol{grid-template-columns:1fr}.workspace{padding:20px}.topbar{align-items:flex-start;flex-direction:column}.row{grid-template-columns:1fr}}
