*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:system-ui,-apple-system,sans-serif;background:#f1f5f9;color:#1e293b}.app{min-height:100vh;display:flex;flex-direction:column}.navbar{background:#1e3a5f;color:#fff;padding:0 1.5rem;display:flex;align-items:center;gap:1.5rem;height:56px}.navbar-brand{font-weight:700;font-size:1.1rem;margin-right:1rem}.navbar a{color:#ffffffbf;text-decoration:none;font-size:.9rem;padding:.4rem .8rem;border-radius:4px}.navbar a.active,.navbar a:hover{color:#fff;background:#ffffff26}.content{padding:1.5rem;flex:1}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem;margin-bottom:1.5rem}.card{background:#fff;border-radius:8px;padding:1.2rem;box-shadow:0 1px 3px #00000014}.card h3{font-size:.75rem;color:#64748b;text-transform:uppercase;letter-spacing:.05em;margin-bottom:.4rem}.card .value{font-size:2rem;font-weight:700;color:#1e3a5f}.card.danger .value{color:#dc2626}.filtros{display:flex;gap:.75rem;flex-wrap:wrap;margin-bottom:1rem}.filtros select,.filtros input{padding:.4rem .75rem;border:1px solid #cbd5e1;border-radius:6px;font-size:.875rem;background:#fff}.table-wrap{overflow-x:auto;background:#fff;border-radius:8px;box-shadow:0 1px 3px #00000014}table{width:100%;border-collapse:collapse;font-size:.85rem}thead{background:#1e3a5f;color:#fff}th{padding:.6rem .75rem;text-align:left;font-weight:600;white-space:nowrap}td{padding:.5rem .75rem;border-bottom:1px solid #f1f5f9}tr:hover td{background:#f8fafc}tr.critico td{background:#fef2f2}tr.atencao td{background:#fffbeb}tr.ok td{background:#f0fdf4}.badge{display:inline-block;padding:.15rem .5rem;border-radius:9999px;font-size:.75rem;font-weight:600}.badge-auto{background:#dbeafe;color:#1d4ed8}.badge-ilum{background:#fef9c3;color:#854d0e}.badge-critico{background:#fee2e2;color:#dc2626}.badge-ok{background:#dcfce7;color:#166534}.btn{padding:.4rem .9rem;border:none;border-radius:6px;cursor:pointer;font-size:.85rem}.btn-primary{background:#1e3a5f;color:#fff}.btn-primary:hover{background:#162d4a}.edit-input{width:80px;padding:.2rem .4rem;border:1px solid #93c5fd;border-radius:4px;font-size:.85rem}h1{font-size:1.4rem;font-weight:700;margin-bottom:1.25rem;color:#1e3a5f}
