*{box-sizing:border-box}body{margin:0;background:#f4f5f7;color:#171717;font-family:Arial,sans-serif}a{color:inherit;text-decoration:none}.login{min-height:100vh;display:grid;place-items:center;background:#0b0c0e}.loginbox{width:min(430px,92vw);background:#fff;padding:32px;border-radius:18px}.shell{display:grid;grid-template-columns:255px 1fr;min-height:100vh}.side{background:#0b0c0e;color:white;padding:24px 18px}.brand{font-size:20px;font-weight:900}.brand small{display:block;color:#df1f2d;letter-spacing:2px;margin-top:4px}.nav{margin-top:25px}.nav a{display:block;padding:9px 11px;border-radius:9px;color:#d9dde4;font-size:14px}.main{padding:28px}.head{display:flex;justify-content:space-between;gap:15px}.head h1{margin:0}.muted{color:#6b7280}.badge{background:#dcfce7;color:#166534;padding:7px 10px;border-radius:20px;font-size:12px;font-weight:800;height:max-content}.grid{display:grid;grid-gap:14px;gap:14px}.kpis{grid-template-columns:repeat(4,1fr);margin-top:20px}.two{grid-template-columns:1fr 1fr}.card{background:white;border:1px solid #e5e7eb;border-radius:15px;padding:18px}.label{font-size:11px;text-transform:uppercase;color:#6b7280;font-weight:800;letter-spacing:.6px}.value{font-size:27px;font-weight:900;margin-top:7px}.section{margin:24px 0 12px}.table{width:100%;border-collapse:collapse}.table td,.table th{padding:11px;border-bottom:1px solid #eee;text-align:left;font-size:13px}.table th{font-size:11px;color:#6b7280;text-transform:uppercase}.status{padding:4px 8px;border-radius:20px;background:#fee2e2;color:#991b1b;font-size:11px;font-weight:800}.good{background:#dcfce7;color:#166534}.warn{background:#fef3c7;color:#92400e}.hero{background:linear-gradient(135deg,#111827,#30343b);padding:22px;border-radius:16px}.btn,.hero{color:white}.btn{background:#b5121b;border:0;border-radius:9px;padding:11px 15px;font-weight:800;cursor:pointer}.input{width:100%;padding:12px;border:1px solid #ddd;border-radius:9px;margin:8px 0 14px}.user{font-size:12px;text-align:right}@media(max-width:900px){.shell{grid-template-columns:1fr}.kpis,.two{grid-template-columns:1fr 1fr}}@media(max-width:600px){.kpis,.two{grid-template-columns:1fr}.main{padding:16px}}