*{box-sizing:border-box}
body{margin:0;background:#f3f6fb;color:#172033;font:15px system-ui,sans-serif}
a{color:#185adb}
.login{max-width:430px;margin:9vh auto;background:#fff;padding:34px;border-radius:16px;box-shadow:0 16px 40px #15213a18}
label{display:block;font-weight:650;margin:18px 0 7px}
input{width:100%;padding:12px;border:1px solid #ccd5e1;border-radius:9px}
button{border:0;border-radius:9px;background:#185adb;color:#fff;padding:12px 18px;font-weight:700;cursor:pointer}
button:disabled{cursor:wait;opacity:.65}
.wide{width:100%;margin-top:20px}
.error{background:#fee2e2;color:#991b1b;padding:12px;border-radius:9px}
.top{height:66px;background:#101828;color:#fff;padding:0 28px;display:flex;align-items:center;justify-content:space-between}
.layout{display:grid;grid-template-columns:230px 1fr;min-height:calc(100vh - 66px)}
nav{background:#fff;padding:24px;border-right:1px solid #e4e9f1}
nav a{display:block;padding:10px;color:#344054;text-decoration:none}
.content{padding:30px}
.cards{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:18px}
.card{background:#fff;padding:22px;border-radius:13px;box-shadow:0 5px 20px #15213a0c}
.num{font-size:30px;font-weight:750}
.ccd-progress{position:fixed;inset:0 0 auto;height:3px;background:#0d6efd;z-index:9999;animation:ccd-progress 1s ease-in-out infinite alternate}
@keyframes ccd-progress{from{transform:scaleX(.15);transform-origin:left}to{transform:scaleX(1);transform-origin:left}}
@media(max-width:750px){.layout{grid-template-columns:1fr}nav{display:none}.cards{grid-template-columns:1fr}}
