:root{--ink:#142033;--muted:#78869a;--line:#e6ecef;--brand:#078e7c;--soft:#e6faf6;--danger:#b42318}*{box-sizing:border-box}body{margin:0;background:#f3f8f7;font:14px/1.55 Inter,"PingFang SC",system-ui;color:var(--ink)}a{color:inherit}.shell{display:grid;grid-template-columns:230px 1fr;min-height:100vh}.side{background:#fff;border-right:1px solid var(--line);padding:24px 14px;display:flex;flex-direction:column}.brand{display:flex;gap:11px;align-items:center;text-decoration:none;padding:0 10px 26px}.mark{width:36px;height:36px;border-radius:11px;background:var(--soft);color:var(--brand);display:grid;place-items:center;font-weight:800;font-size:19px}.brand small,.muted{display:block;color:var(--muted)}nav a{display:block;text-decoration:none;padding:11px 13px;margin:4px 0;border-radius:9px;color:#526172}nav a.active{background:var(--brand);color:#fff}.side form{margin-top:auto}.main{padding:18px 24px 40px;max-width:1450px;width:100%;margin:auto}.top{background:#fff;border:1px solid var(--line);border-radius:15px;min-height:55px;padding:12px 17px;display:flex;justify-content:space-between;align-items:center}.hero{margin-top:16px;background:linear-gradient(110deg,#fff,#f7fffd 55%,#e9f5ff);border:1px solid #dbeef0;border-radius:20px;padding:26px}.hero h1{font-size:29px;margin:5px 0}.eyebrow{color:var(--brand);font-size:12px;font-weight:700}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin:15px 0}.card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px}.stat strong{font-size:25px;display:block}.grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.card h2{margin-top:0}.form{display:grid;gap:12px}.form label{font-weight:650}.form input,.form select{display:block;width:100%;padding:10px;border:1px solid #ccd7dc;border-radius:8px;margin-top:5px;background:#fff}.btn{display:inline-block;border:0;border-radius:8px;padding:9px 14px;background:var(--brand);color:#fff;cursor:pointer;text-decoration:none}.btn.secondary{background:#fff;color:#536273;border:1px solid var(--line)}.btn.danger{background:#fff;color:var(--danger);border:1px solid #f1b7b3}.btn.small{padding:6px 10px;font-size:12px}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;padding:12px 9px;border-bottom:1px solid #edf1f3;white-space:nowrap}.actions{display:flex;gap:7px}.actions form{margin:0}.badge{padding:4px 8px;border-radius:20px;background:var(--soft);color:var(--brand);font-size:12px}.badge.off{background:#f2f4f7;color:#667085}.flash{padding:13px 16px;border-radius:10px;margin:14px 0}.flash.error{background:#fff0ef;color:#912018}.flash.success{background:#eafaf5;color:#087562}.credential{background:#fff8df;border:1px solid #f4d76d;padding:16px;border-radius:12px;margin:12px 0}.credential code{font-size:16px;font-weight:700;user-select:all}.login{min-height:100vh;display:grid;place-items:center;padding:20px;background:linear-gradient(135deg,#e9f8f5,#eef4ff)}.login-card{width:min(430px,100%);background:#fff;border:1px solid var(--line);border-radius:20px;padding:30px;box-shadow:0 20px 55px #52746c22}.login-card h1{margin:8px 0}.login-card .btn{width:100%;margin-top:8px}.login-brand{display:flex;align-items:center;gap:12px}@media(max-width:850px){.shell{grid-template-columns:1fr}.side{position:static;padding:14px}.side nav{display:flex;gap:6px;overflow:auto}.side form{margin:10px 0 0}.brand{padding:0 0 12px}.main{padding:12px}.stats{grid-template-columns:repeat(2,1fr)}.grid{grid-template-columns:1fr}}@media(max-width:520px){.stats{grid-template-columns:1fr}.hero h1{font-size:23px}.top{align-items:flex-start;gap:10px}.actions{flex-direction:column}}
