:root{--ink:#172033;--muted:#687386;--line:#dde3ec;--bg:#f4f6f9;--panel:#fff;--primary:#2257d6;--danger:#b42318}
*{box-sizing:border-box}html,body{max-width:100%;overflow-x:hidden}body{margin:0;background:var(--bg);color:var(--ink);font:14px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC",sans-serif}.topbar{height:58px;background:#111b31;color:#fff;display:flex;align-items:center;padding:0 28px;gap:28px}.brand{font-weight:700;font-size:18px;color:#fff;text-decoration:none}.topbar nav{display:flex;gap:20px;flex:1}.topbar nav a,.link-button{color:#dce5fb;text-decoration:none;background:none;border:0;padding:0;cursor:pointer}.logout{margin:0}.container{width:100%;max-width:1440px;min-width:0;margin:0 auto;padding:28px}.page-head,.panel-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.page-head{margin-bottom:20px}.page-head h1,.panel h1{margin:0}.page-head p{margin:5px 0 0;color:var(--muted)}.kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-bottom:20px}.kpi{background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:18px}.kpi span{display:block;color:var(--muted)}.kpi strong{font-size:30px}.kpi.danger strong{color:var(--danger)}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:20px}.panel{max-width:100%;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:20px;margin-bottom:20px;overflow:auto}.panel h2{margin:0 0 14px}table{width:100%;border-collapse:collapse;white-space:nowrap}th,td{text-align:left;padding:11px 10px;border-bottom:1px solid #edf0f4;vertical-align:top}th{font-size:12px;color:var(--muted);text-transform:uppercase}a{color:var(--primary)}button,.button{display:inline-block;border:1px solid #cbd3df;border-radius:7px;background:#fff;color:var(--ink);padding:8px 13px;text-decoration:none;cursor:pointer}button.primary,.button.primary{background:var(--primary);border-color:var(--primary);color:#fff}.actions{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.actions form{margin:0}.pagination{display:flex;gap:12px;align-items:center;justify-content:flex-end;padding-top:16px}.badge{display:inline-block;background:#eef2f8;border-radius:999px;padding:2px 8px;font-size:12px}.badge.bad{background:#fee4e2;color:var(--danger)}.notice{padding:12px 14px;border-radius:8px;margin-bottom:16px;background:#e8f0ff}.notice.error{background:#fee4e2;color:var(--danger)}.notice.success{background:#dcfae6;color:#067647}.form-panel{max-width:760px;margin:20px auto}.stack-form p{display:grid;grid-template-columns:180px 1fr;gap:12px;align-items:start}.stack-form input,.stack-form select,.inline-form input,.inline-form select,.inline-search input{width:100%;padding:9px;border:1px solid #cbd3df;border-radius:6px;background:#fff}.helptext{display:block;color:var(--muted);font-size:12px}.errorlist,.error-text{color:var(--danger)}.inline-form{display:flex;gap:16px;align-items:end}.inline-form p{margin:0}.inline-search{display:flex;gap:8px}.muted,.subtle{color:var(--muted)}.subtle{font-size:12px;white-space:normal;max-width:420px}.login-card{max-width:440px;margin:80px auto;background:#fff;padding:32px;border:1px solid var(--line);border-radius:12px}pre{background:#111b31;color:#dce5fb;padding:14px;border-radius:7px;overflow:auto}@media(max-width:900px){.kpis{grid-template-columns:repeat(2,1fr)}.grid-2{grid-template-columns:1fr}.topbar nav{display:none}.container{padding:16px}.stack-form p{grid-template-columns:1fr}.page-head{align-items:flex-start;flex-direction:column}}
