:root{--navy:#0d2a4f;--deep:#081e3a;--blue:#2457e6;--ink:#152238;--muted:#65738a;--line:#dce3ec;--bg:#f3f6fa;--white:#fff;--green:#159565}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif}.hidden{display:none!important}.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 80% 10%,#dbe7ff,transparent 35%),linear-gradient(145deg,#f6f8fc,#e9eef7)}.login-card{width:min(430px,100%);padding:38px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 22px 65px #1731541a}.brand-mark{display:grid;width:42px;height:42px;place-items:center;border-radius:12px;color:#fff;background:linear-gradient(135deg,#4b7bf4,#1c56e6);font-weight:800}.eyebrow{margin:18px 0 6px;color:var(--blue);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.login-card h1{margin:0;font-size:27px}.muted{color:var(--muted)}label{display:grid;gap:7px;margin-top:18px;font-size:13px;font-weight:650}input{height:47px;border:1px solid #cfd8e5;border-radius:10px;padding:0 13px;font:inherit}input:focus{outline:3px solid #2457e624;border-color:var(--blue)}button{font:inherit;cursor:pointer}.login-card button,.primary{min-height:46px;border:0;border-radius:10px;padding:0 17px;color:#fff;background:linear-gradient(135deg,var(--blue),#1761ee);font-weight:750}.login-card button{width:100%;margin-top:18px}.error{min-height:18px;margin:10px 0 0;color:#c53f38;font-size:12px}.app{min-height:100vh}aside{position:fixed;inset:0 auto 0 0;width:236px;padding:25px 14px 20px;color:#fff;background:linear-gradient(165deg,var(--navy),var(--deep));display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:11px;padding:0 10px 25px}.brand>div:last-child{display:flex;flex-direction:column}.brand small{margin-top:3px;color:#9db0ca}nav{display:grid;gap:5px;flex:1}nav a{min-height:45px;display:flex;align-items:center;border-radius:10px;padding:0 14px;color:#cbd7e7;text-decoration:none;font-size:14px}nav a:hover,nav a.active{color:#fff;background:#ffffff12}nav a.active{background:linear-gradient(135deg,var(--blue),#1761ee)}.logout{border:1px solid #ffffff25;border-radius:9px;padding:10px;color:#cbd7e7;background:transparent}main{margin-left:236px;min-height:100vh}header{height:72px;display:flex;align-items:center;gap:10px;padding:0 36px;border-bottom:1px solid var(--line);background:#ffffffd9}header>span{flex:1}header>div:last-child{display:flex;flex-direction:column;font-size:13px}header small{color:var(--muted)}.avatar{display:grid!important;width:39px;height:39px;place-items:center;border-radius:50%;color:#fff;background:var(--blue);font-weight:800}.menu{display:none;border:0;background:transparent;font-size:24px}.content{max-width:1500px;margin:auto;padding:34px 38px}.heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px}.heading .eyebrow{margin-top:0}.heading h1{margin:0;font-size:38px}.heading p:last-child{margin-bottom:0}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.kpis article,.panel{border:1px solid var(--line);border-radius:15px;background:#fff;box-shadow:0 4px 18px #1522380b}.kpis article{min-height:138px;padding:22px;display:flex;flex-direction:column}.kpis article>span{color:var(--muted);font-size:13px}.kpis strong{margin:12px 0 6px;font-size:34px}.kpis small{color:var(--muted)}.kpis .quality strong{color:var(--green);font-size:18px}.panel{margin-top:17px;padding:22px}.panel h2{margin:0}.panel-title .eyebrow{margin-top:0}.list{margin-top:15px}.row{display:grid;grid-template-columns:minmax(200px,1fr) 180px 120px;gap:15px;padding:15px 4px;border-top:1px solid #e9edf3}.row strong,.row span{font-size:13px}.row small{display:block;margin-top:4px;color:var(--muted)}.badge{justify-self:start;border-radius:99px;padding:5px 9px;color:#1858c6;background:#e7efff;font-size:11px}@media(max-width:1000px){.kpis{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){aside{transform:translateX(-102%);z-index:10;transition:.2s}aside.open{transform:translateX(0);box-shadow:20px 0 50px #081e3a55}main{margin-left:0}.menu{display:block}.content{padding:25px 18px}header{padding:0 18px}.heading{align-items:start;flex-direction:column}.heading h1{font-size:31px}.kpis{grid-template-columns:1fr}.row{grid-template-columns:1fr}.badge{display:none}}
