:root{--gold:#c9a227;--gold2:#e6c65c;--bg:#0f0e0c;--panel:#171512;--panel2:#1f1c17;--ink:#f2ede3;--ink2:#b8ad97;--line:#2e2a22;--ok:#4caf7d;--warn:#e0a63c;--bad:#d96a5f;--radius:12px}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}
a{color:var(--gold2)}button{font:inherit;cursor:pointer}
header.top{position:sticky;top:0;z-index:5;background:#0f0e0c;border-bottom:1px solid var(--line);padding:12px 16px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}
header.top h1{font-size:18px;margin:0;letter-spacing:.04em}header.top h1 span{color:var(--gold2)}
header.top .sub{color:var(--ink2);font-size:12px}
header.top .sp{flex:1}
nav.tabs{display:flex;gap:6px;flex-wrap:wrap;padding:12px 16px 0}
nav.tabs button{background:var(--panel);color:var(--ink);border:1px solid var(--line);border-radius:999px;padding:8px 14px}
nav.tabs button.on{background:var(--gold);color:#171200;border-color:var(--gold);font-weight:700}
main{padding:16px;max-width:1100px;margin:0 auto}
.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:16px;margin-bottom:14px}
.card h2{margin:0 0 4px;font-size:18px}.card h3{margin:14px 0 6px;font-size:15px}
.muted{color:var(--ink2);font-size:13px}.small{font-size:12px;color:var(--ink2)}
.grid{display:grid;gap:12px}.g2{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.g3{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
label{display:block;font-size:12px;color:var(--ink2);margin:10px 0 4px}
input,select,textarea{width:100%;background:#0f0e0c;color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:9px 10px;font:inherit}
textarea{min-height:64px;resize:vertical}
.btn{background:var(--gold);color:#171200;border:0;border-radius:8px;padding:9px 14px;font-weight:700}
.btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}
.btn.danger{background:transparent;color:var(--bad);border:1px solid var(--bad)}
.btn.sm{padding:5px 9px;font-size:13px}
.row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.badge{display:inline-block;padding:2px 8px;border-radius:999px;font-size:12px;background:#2a251c;border:1px solid var(--line)}
.badge.new{background:#3a2f10;color:var(--gold2)}.badge.ok{background:#16301f;color:#7fd6a4}.badge.bad{background:#3a1b16;color:#f0a49b}
table{width:100%;border-collapse:collapse;font-size:14px}th,td{text-align:left;padding:8px 6px;border-bottom:1px solid var(--line);vertical-align:top}
th{color:var(--ink2);font-size:12px;text-transform:uppercase;letter-spacing:.05em}
.item{border:1px solid var(--line);border-radius:10px;padding:12px;margin-bottom:10px;background:var(--panel2)}
.item .head{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}
.steps{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}
.steps button{background:var(--panel);color:var(--ink2);border:1px solid var(--line);border-radius:999px;padding:6px 10px;font-size:12px}
.steps button.done{background:#16301f;color:#7fd6a4;border-color:#16301f}
.steps button.now{background:var(--gold);color:#171200;font-weight:700}
.banner{border:1px solid var(--warn);background:#2a2110;color:#f0d48a;border-radius:10px;padding:10px 12px;margin-bottom:14px;font-size:13px}
#login{max-width:420px;margin:12vh auto 0;padding:24px}
#login h1{margin:0 0 4px}#login p{color:var(--ink2)}
.hidden{display:none!important}
.kpi{font-size:26px;font-weight:800}.kpi-label{font-size:12px;color:var(--ink2);text-transform:uppercase;letter-spacing:.05em}
@media print{header.top,nav.tabs,.no-print{display:none!important}body{background:#fff;color:#000}.card{border:1px solid #999}}
