:root{color:#0f172a;background:#f1f5f9;font-family:Inter,system-ui,Arial,sans-serif}*{box-sizing:border-box}body{margin:0}.loginPage{background:linear-gradient(135deg,#0f172a,#1e3a8a,#0f766e);place-items:center;min-height:100vh;display:grid}.loginCard{background:#fff;border-radius:28px;width:min(440px,92vw);padding:32px;box-shadow:0 30px 70px #0004}.loginCard h1{margin:0 0 8px;font-size:32px}.loginCard p{color:#64748b}.loginCard input,.form input,.form select,.card select{border:1px solid #cbd5e1;border-radius:14px;width:100%;padding:13px 14px;font-size:15px}button,.download{color:#fff;cursor:pointer;background:#2563eb;border:0;border-radius:14px;padding:12px 16px;font-weight:800;text-decoration:none;display:inline-block}button:disabled{opacity:.5}.erro{color:#991b1b;background:#fee2e2;border-radius:12px;margin-top:12px;padding:12px}.app{grid-template-columns:280px 1fr;min-height:100vh;display:grid}aside{color:#fff;background:#0f172a;height:100vh;padding:22px;position:sticky;top:0}aside h2{font-size:20px}aside button{text-align:left;color:#e2e8f0;background:0 0;width:100%;margin:6px 0;display:block}.ativo{background:#1e40af!important}main{padding:30px}.hero{color:#fff;background:linear-gradient(135deg,#0f172a,#1e3a8a,#0f766e);border-radius:30px;margin-bottom:22px;padding:28px 32px;box-shadow:0 20px 45px #0f172a22}.hero h1{text-transform:capitalize;margin:0}.hero p{color:#dbeafe}.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.card{background:#fff;border:1px solid #e2e8f0;border-radius:24px;margin-bottom:18px;padding:20px;box-shadow:0 18px 45px #0f172a12}.metric span{color:#64748b;display:block}.metric strong{white-space:nowrap;text-overflow:ellipsis;margin-top:7px;font-size:30px;display:block;overflow:hidden}.form{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.tableWrap{overflow:auto}table{border-collapse:collapse;width:100%;margin-top:14px}th,td{text-align:left;border-bottom:1px solid #e2e8f0;padding:10px;font-size:14px}th{color:#475569}.muted{color:#64748b}.gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.gallery img,.gallery video{object-fit:cover;border-radius:16px;width:100%;max-height:260px}@media (width<=900px){.app{grid-template-columns:1fr}aside{height:auto;position:relative}.grid,.form,.gallery{grid-template-columns:1fr}main{padding:16px}}
