:root{color:#f5f3ff;background:#121220;font-family:PingFang SC,Microsoft YaHei,sans-serif}*{box-sizing:border-box}body{margin:0}.login-page{background:radial-gradient(circle at 50% 20%,#39345d,#121220 55%);place-items:center;min-height:100vh;display:grid}.login-card{color:#f8f7ff;text-align:center;background:#20213a;border:1px solid #ffffff1c;border-radius:28px;width:420px;padding:46px;box-shadow:0 25px 80px #0005}.login-card img{border-radius:24px;width:90px}.eyebrow{letter-spacing:.14em;color:#bcb4ff;font-size:12px}.login-card input{color:#fff;background:#151625;border:1px solid #ffffff20;border-radius:12px;width:100%;margin:8px 0;padding:15px}.login-card button,.todo button{color:#17152a;cursor:pointer;background:linear-gradient(135deg,#ddd5ff,#9386e8);border:0;border-radius:12px;padding:14px 18px;font-weight:700}.login-card button{width:100%;margin-top:14px}.login-card small{color:#ffabab}.shell{background:#151625;grid-template-columns:244px 1fr;min-height:100vh;display:grid}aside{background:#1a1b31;border-right:1px solid #ffffff12;padding:24px 14px}.brand{grid-template-columns:44px 1fr;align-items:center;column-gap:10px;padding:4px 10px 28px;display:grid}.brand img{border-radius:13px;grid-row:span 2;width:44px}.brand span,.operator small,.sub{color:#aaa8bd;font-size:13px}nav{gap:5px;display:grid}nav button{color:#c6c3d8;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;padding:12px 14px}nav button.active,nav button:hover{color:#fff;background:#343050}.operator{color:#e8e6f5;padding:12px;position:fixed;bottom:25px}.content{width:100%;max-width:1440px;margin:auto;padding:36px 48px}header{justify-content:space-between;align-items:center;display:flex}h1{margin:5px 0;font-size:30px}.avatar{color:#17152a;background:#8e80e0;border:0;border-radius:50%;width:42px;height:42px}.metrics{grid-template-columns:repeat(4,1fr);gap:16px;margin:28px 0;display:grid}.metrics article,.panel{background:#20213a;border:1px solid #ffffff12;border-radius:18px;padding:21px}.metrics span{color:#b8b5c8;font-size:13px;display:block}.metrics strong{margin:12px 0;font-size:29px;display:block}.metrics em{color:#9fdcb8;font-size:12px;font-style:normal}.panel{margin-top:22px}.todo{border-bottom:1px solid #ffffff12;align-items:center;gap:14px;padding:14px 0;display:flex}.todo b{color:#f2cd8d;margin-left:auto}.todo button{padding:8px 12px;font-size:12px}.empty{text-align:center;place-content:center;min-height:260px;display:grid}@media (width<=800px){.shell{grid-template-columns:1fr}aside{display:none}.content{padding:28px 18px}.metrics{grid-template-columns:repeat(2,1fr)}}
