*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:#f3f6fb;color:#17243a}.shell{display:flex;min-height:100vh}.side{width:225px;background:#0b1830;color:#dce8ff;padding:18px;display:flex;flex-direction:column}.brand{font-size:20px;font-weight:800;margin-bottom:24px}.brand span{display:inline-flex;background:#1769ff;color:white;border-radius:8px;padding:7px;margin-right:8px}.side a{color:#cbd8ef;text-decoration:none;padding:10px;border-radius:8px;margin:2px 0}.side a.active,.side a:hover{background:#17325b;color:#fff}.side .bottom{margin-top:auto;font-size:12px}.main{flex:1}.top{background:white;padding:20px 28px;border-bottom:1px solid #dfe6f0;display:flex;justify-content:space-between;align-items:center}.content{padding:24px 28px}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.card{background:white;border:1px solid #dfe6f0;border-radius:12px;padding:18px;margin-bottom:16px}.kpi strong{font-size:28px;display:block}.btn{display:inline-block;border:0;border-radius:8px;padding:9px 13px;background:#1769ff;color:white;text-decoration:none;cursor:pointer;font-weight:650}.btn.secondary{background:white;color:#17243a;border:1px solid #cfd8e6}.btn.danger{background:#dc3545}.table{width:100%;border-collapse:collapse}.table th,.table td{text-align:left;border-bottom:1px solid #e7ecf3;padding:10px;font-size:13px}.badge{display:inline-block;padding:4px 8px;border-radius:999px;background:#e8f1ff;color:#1559c9;font-size:11px;font-weight:800}.badge.bad{background:#ffe7ea;color:#b42331}.formgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.formgrid label{font-size:12px;font-weight:700}.formgrid input,.formgrid select,.formgrid textarea{width:100%;padding:10px;border:1px solid #ccd6e4;border-radius:8px;margin-top:5px}.alert{padding:11px;border-radius:8px;background:#e7f7ed;color:#176c36;margin-bottom:12px}.alert.danger{background:#ffe9ec;color:#9e2631}.login{max-width:420px;margin:12vh auto;background:white;border:1px solid #dfe6f0;border-radius:14px;padding:28px}.login input{width:100%;padding:11px;margin:7px 0 14px;border:1px solid #ccd6e4;border-radius:8px}@media(max-width:900px){.grid{grid-template-columns:1fr 1fr}.side{width:180px}.formgrid{grid-template-columns:1fr}}
