:root{--bg:#f4f6f8;--card:#ffffff;--text:#1a2332;--muted:#5b6b7c;--border:#e2e8f0;--accent:#ff9800;--accent-dark:#ef6c00;--sidebar:#1a2332;--sidebar-text:#e7ecf3;--danger:#c62828;--ok:#2e7d32}*{box-sizing:border-box}body,html{margin:0;padding:0;font-family:Segoe UI,system-ui,-apple-system,sans-serif;background:var(--bg);color:var(--text)}a{color:inherit;text-decoration:none}button,input{font:inherit}@media print{@page{margin:12mm}body,html{background:#fff!important;color:#000!important}.no-print{display:none!important}.app-shell{display:block!important;min-height:auto!important;grid-template-columns:none!important}.app-content,.app-main{display:block!important;padding:0!important;margin:0!important;border:none!important;background:#fff!important}.contract-document{border:none!important;border-radius:0!important;box-shadow:none!important;padding:0!important;max-width:none!important}}.inicio-finance-card,.inicio-kpi-card,.inicio-quick-card{transition:transform .15s ease,box-shadow .15s ease}.inicio-finance-card:hover,.inicio-kpi-card:hover,.inicio-quick-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(15,23,42,.1)}.app-sidebar-nav-link{transition:background .15s ease,color .15s ease;height:auto;min-height:0;align-self:start}.app-sidebar nav{align-content:start}.app-sidebar-nav-link:hover{background:rgba(255,255,255,.07);color:#fff}.app-sidebar-nav-link.active:hover{background:rgba(255,152,0,.18)}.app-sidebar-logout:hover{background:rgba(255,255,255,.1)!important;border-color:rgba(255,152,0,.35)!important}.app-shell{transition:grid-template-columns .2s ease}.app-sidebar{transition:padding .2s ease}.app-sidebar-toggle:hover{color:#ff9800;border-color:rgba(255,152,0,.35);background:rgba(255,152,0,.06)}.app-sidebar--collapsed .app-sidebar-nav-link.active{border-left:none;box-shadow:inset 0 0 0 1px rgba(255,152,0,.35)}.cadastro-hub-card{transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.cadastro-hub-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(15,23,42,.1);border-color:rgba(255,152,0,.35)!important}.financeiro-count-card,.financeiro-summary-card{transition:transform .15s ease,box-shadow .15s ease}.financeiro-count-card:hover,.financeiro-summary-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(15,23,42,.12)}.financeiro-tx-item{transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.financeiro-tx-item:hover{border-color:rgba(255,152,0,.35);box-shadow:0 6px 16px rgba(15,23,42,.06);background:#fff}.mensalidade-card,.mensalidade-stat-card{transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.mensalidade-card:hover{border-color:rgba(255,152,0,.35);box-shadow:0 8px 20px rgba(15,23,42,.08)}.mensalidade-stat-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(15,23,42,.08)}.relatorio-breakdown-card,.relatorio-metric-card{transition:transform .15s ease,box-shadow .15s ease}.relatorio-breakdown-card:hover,.relatorio-metric-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(15,23,42,.08)}.relatorio-vehicle-toggle{transition:background .15s ease}.relatorio-vehicle-toggle:hover{background:#f1f5f9!important}.rota-card{transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.rota-card:hover{border-color:rgba(255,152,0,.35);box-shadow:0 8px 20px rgba(15,23,42,.08)}.rota-stop-item{transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.rota-stop-item:hover{border-color:rgba(255,152,0,.35);box-shadow:0 4px 12px rgba(15,23,42,.06);background:#fff}.custo-transporte-summary-card{transition:transform .15s ease,box-shadow .15s ease}.custo-transporte-summary-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(15,23,42,.12)}.custo-transporte-row{transition:background .15s ease}.custo-transporte-row:hover{background:#fff8f0!important}.reserva-vagas-card{transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.reserva-vagas-card:hover{border-color:rgba(255,152,0,.35);box-shadow:0 8px 20px rgba(15,23,42,.08)}.aluno-card{transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.aluno-card:hover{border-color:rgba(255,152,0,.35);box-shadow:0 8px 20px rgba(15,23,42,.08)}.login-card{transition:transform .15s ease,box-shadow .15s ease}.login-card:focus-within{transform:translateY(-2px);box-shadow:0 28px 70px rgba(0,0,0,.4)}.login-text-link:hover{opacity:.85}.login-password-toggle:hover{color:#ff9800;background:rgba(255,152,0,.08)}.config-card:hover{border-color:rgba(255,152,0,.35);box-shadow:0 8px 20px rgba(15,23,42,.08)}.config-social-card:hover{border-color:rgba(255,152,0,.35);background:#fff}.veiculo-table-row{transition:background .15s ease}.veiculo-table-row:hover{background:#fff8f0}.veiculo-history-card{transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.veiculo-history-card:hover{border-color:rgba(255,152,0,.35);box-shadow:0 4px 12px rgba(15,23,42,.06);background:#fff}