:root{--blue:#1594f6;--violet:#704cf4;--pink:#e83695;--gold:#f5a11a;--ink:#17213a;--muted:#738099;--line:#e3e8f3;--bg:#f5f7fc;--grad:linear-gradient(110deg,#1594f6,#704cf4 58%,#e83695)}*{box-sizing:border-box}body{margin:0;font-family:Tahoma,Arial,sans-serif;background:var(--bg);color:var(--ink)}button,input{font:inherit}.login{min-height:100vh;display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:70px;padding:7vw;background:radial-gradient(circle at 92% 10%,#dceeff,transparent 32%),radial-gradient(circle at 8% 90%,#f8dff0,transparent 28%),#f7f9fd}.login-copy{max-width:620px}.brand{display:flex;align-items:center;gap:12px}.mark{width:46px;height:46px;border-radius:15px;background:var(--grad);color:#fff;display:grid;place-items:center;font-weight:900;box-shadow:0 12px 28px #6d4ef03d}.brand b{font-size:18px}.brand small{display:block;color:var(--muted);margin-top:3px}.login-copy p{font-size:34px;font-weight:900;line-height:1.65}.login-card{background:#fff;border:1px solid #fff;border-radius:28px;padding:36px;box-shadow:0 25px 70px #323d6b1c}.eyebrow{color:var(--pink);font-weight:900;font-size:12px}.login-card h1{margin:8px 0 25px}.login-card label{display:block;font-size:12px;color:var(--muted);margin:14px 0}.login-card input{width:100%;height:52px;border:1px solid var(--line);background:#fafbfe;border-radius:14px;margin-top:8px;padding:0 14px;outline:0}.login-card input:focus{border-color:var(--violet);box-shadow:0 0 0 4px #704cf418}.login-card button{width:100%;height:54px;border:0;border-radius:15px;background:var(--grad);color:#fff;font-weight:900;margin-top:8px}.error{color:#c3325c;font-size:12px}#app{min-height:100vh;display:grid;grid-template-columns:250px 1fr}aside{position:sticky;top:0;height:100vh;background:#fff;border-left:1px solid var(--line);padding:22px;display:flex;flex-direction:column}aside nav{display:grid;gap:7px;margin-top:30px}aside nav button,.logout{border:0;background:transparent;border-radius:13px;padding:13px;text-align:right;color:#66748c;cursor:pointer}aside nav button.active{background:var(--grad);color:#fff;box-shadow:0 10px 25px #704cf426}.logout{margin-top:auto;color:#c3325c}main{padding:28px 34px}header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}header h1{margin:5px 0 0}.health{background:#fff;border:1px solid var(--line);padding:11px 15px;border-radius:99px;color:#527060;font-size:12px}.health i{display:inline-block;width:9px;height:9px;border-radius:50%;background:#29c785;margin-left:7px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.metric,.panel{background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 12px 35px #323d6b0d}.metric{padding:20px;position:relative;overflow:hidden}.metric:after{content:"";position:absolute;inset:auto -10% -45px;width:120%;height:80px;border-radius:50%;background:linear-gradient(90deg,#1594f612,#704cf41c,#e8369511)}.metric span{font-size:12px;color:var(--muted)}.metric b{display:block;font-size:28px;margin-top:10px}.grid{display:grid;grid-template-columns:1.35fr .65fr;gap:15px;margin-top:15px}.panel{padding:20px}.panel h2{font-size:17px;margin:0 0 18px}.status-list{display:grid;gap:10px}.status-row{display:flex;justify-content:space-between;border-bottom:1px solid #edf0f6;padding:11px 0}.status-row:last-child{border:0}.badge{border-radius:99px;padding:6px 10px;font-size:11px;background:#eef3ff;color:#5a49bf}.empty{text-align:center;padding:50px;color:var(--muted)}table{width:100%;border-collapse:collapse}th,td{padding:12px;border-bottom:1px solid #edf0f6;text-align:right;font-size:12px}th{color:var(--muted);font-weight:700}.toolbar{display:flex;justify-content:space-between;margin-bottom:14px}.primary{border:0;border-radius:12px;background:var(--grad);color:#fff;padding:10px 15px;font-weight:900}@media(max-width:900px){.login{grid-template-columns:1fr}.login-copy{display:none}#app{grid-template-columns:78px 1fr}aside{padding:15px 9px}.brand div,aside nav button{font-size:0}.brand .mark{width:43px}aside nav button:before{content:"•";font-size:24px}main{padding:20px}.metrics{grid-template-columns:repeat(2,1fr)}.grid{grid-template-columns:1fr}}@media(max-width:520px){.login{padding:16px}.login-card{padding:25px}.metrics{grid-template-columns:1fr 1fr}.metric b{font-size:22px}header{align-items:flex-start}.health{font-size:0}.health i{margin:0}}
