
:root{--brand:#138a1b;--text:#18232e;--muted:#687789;--line:#dfe7ee;--surface:#fff;--bg:#f3f6f9;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}a{text-decoration:none;color:inherit}
.topbar{height:72px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px}
.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:38px;height:38px;border-radius:11px;background:linear-gradient(135deg,#179623,#70b72b);display:grid;place-items:center;color:white;font-weight:1000}
.brand strong{display:block}.brand span{display:block;color:var(--muted);font-size:12px}.userbar{display:flex;gap:10px;align-items:center}
.pill,.btn{padding:9px 13px;border:1px solid var(--line);border-radius:10px;background:#fff;font-weight:800}
.container{max-width:1280px;margin:0 auto;padding:28px}.hero{background:linear-gradient(110deg,#f6faf7,#fff 58%,#eaf7eb);border:1px solid var(--line);border-left:6px solid var(--brand);border-radius:20px;padding:28px;margin-bottom:20px;box-shadow:0 12px 30px rgba(20,31,43,.05)}
.eyebrow{font-size:11px;letter-spacing:1.6px;color:var(--brand);font-weight:1000}.hero h1{font-size:34px;margin:7px 0}.hero p{margin:0;color:var(--muted)}
.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;box-shadow:0 9px 25px rgba(20,31,43,.04)}
.card h3{margin:0 0 6px}.card p{margin:0;color:var(--muted);font-size:13px}.metric{font-size:30px;font-weight:1000;margin-top:9px}
.panel{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px;margin-top:18px}.panel h2{margin-top:0}
table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:12px;border-bottom:1px solid var(--line);font-size:13px}th{font-size:11px;text-transform:uppercase;color:var(--muted)}
.empty{padding:35px;text-align:center;color:var(--muted)}
.login-wrap{min-height:100vh;display:grid;grid-template-columns:1.15fr .85fr}.login-visual{background:radial-gradient(circle at 30% 30%,rgba(92,200,107,.18),transparent 33%),linear-gradient(145deg,#07180b,#112a17 48%,#07180b);position:relative;overflow:hidden}
.login-copy{position:absolute;left:9%;bottom:12%;color:#fff;max-width:530px}.login-copy h1{font-size:50px;margin:0 0 12px}.login-copy p{color:#b6c7ba;font-size:17px;line-height:1.5}
.login-side{display:grid;place-items:center;padding:35px}.login-card{width:min(430px,100%);background:#fff;border:1px solid var(--line);border-radius:20px;padding:28px;box-shadow:0 18px 50px rgba(20,31,43,.09)}
.login-card h2{font-size:27px;margin:4px 0 5px}.login-card p{margin:0 0 18px;color:var(--muted)}
label{display:block;font-weight:800;font-size:13px;margin-top:13px}input{width:100%;padding:12px;border:1px solid var(--line);border-radius:10px;margin-top:6px;font:inherit}
.login-card button{width:100%;margin-top:18px;padding:12px;border:0;border-radius:10px;background:var(--brand);color:white;font-weight:900}.alert{padding:11px 13px;border-radius:9px;background:#fdecec;color:#a62626;margin-bottom:14px}
@media(max-width:900px){.grid{grid-template-columns:repeat(2,1fr)}.login-wrap{grid-template-columns:1fr}.login-visual{min-height:240px}.login-copy{position:relative;left:auto;bottom:auto;padding:45px}.login-copy h1{font-size:38px}}
@media(max-width:560px){.grid{grid-template-columns:1fr}.container{padding:16px}.topbar{padding:0 14px}.login-visual{display:none}}
