*{box-sizing:border-box}body{font-family:Arial,Helvetica,sans-serif;background:#f4f6fb;margin:0;color:#1f2937}.module-page{max-width:1200px;margin:0 auto;padding:24px}.module-header{display:flex;justify-content:space-between;align-items:center;gap:16px;background:#fff;border-radius:14px;padding:20px;margin-bottom:18px;box-shadow:0 8px 22px rgba(15,23,42,.08)}.module-header h1{margin:0 0 6px;font-size:24px}.module-header p{margin:0;color:#64748b}.btn-add,.btn-search,.btn-primary,button[type=submit]{background:#2563eb;color:#fff;border:0;border-radius:10px;padding:10px 14px;cursor:pointer;font-weight:700}.btn-secondary{background:#e5e7eb;color:#111827;border:0;border-radius:10px;padding:10px 14px;cursor:pointer}.btn-danger{background:#dc2626;color:#fff;border:0;border-radius:10px;padding:8px 12px;cursor:pointer}.btn-edit{background:#f59e0b;color:#111827;border:0;border-radius:10px;padding:8px 12px;cursor:pointer}.search-container,.table-container,.form-card{background:#fff;border-radius:14px;padding:16px;margin-bottom:18px;box-shadow:0 8px 22px rgba(15,23,42,.08)}input,select,textarea{width:100%;border:1px solid #d1d5db;border-radius:10px;padding:10px;font-size:14px}.search-container{display:flex;gap:10px}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{border-bottom:1px solid #e5e7eb;padding:12px;text-align:left}.data-table th{background:#f8fafc;color:#334155}.loading,.empty,.error{text-align:center;color:#64748b}.modal{display:none;position:fixed;inset:0;background:rgba(15,23,42,.5);padding:20px;overflow:auto}.modal.active,.modal[style*="block"]{display:block}.modal-content{background:#fff;border-radius:16px;max-width:760px;margin:40px auto;padding:20px;box-shadow:0 20px 50px rgba(0,0,0,.18)}.modal-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e5e7eb;margin-bottom:16px}.close{font-size:28px;cursor:pointer}.form-group{margin-bottom:14px}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px}.badge,.status{display:inline-block;border-radius:999px;padding:4px 10px;font-size:12px;background:#e0f2fe;color:#075985}.actions{display:flex;gap:8px;flex-wrap:wrap}.system-blocked:before{content:attr(data-block-message);display:block;background:#fee2e2;color:#991b1b;padding:10px;text-align:center}

/* PWA Installer Mobile */
.install-pwa-inline {
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  border: 0;
  border-radius: 999px;
  padding: .7rem 1rem;
  background: linear-gradient(135deg, #2563eb, #7c3aed);
  color: #fff;
  font-weight: 800;
  cursor: pointer;
  box-shadow: 0 10px 25px rgba(37, 99, 235, .25);
}
@media (display-mode: standalone) {
  .install-pwa-inline { display: none; }
}

/* Prioridade 0 - navegação e dashboard */
.top-nav{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:0 0 18px;padding:12px;background:#0f172a;border-radius:14px;box-shadow:0 12px 30px rgba(15,23,42,.12)}
.top-nav a{color:#e2e8f0;text-decoration:none;font-weight:700;font-size:13px;padding:9px 11px;border-radius:10px;background:rgba(255,255,255,.06);transition:.2s}
.top-nav a:hover{background:#2563eb;color:#fff;transform:translateY(-1px)}
.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin:18px 0}
.dashboard-card{background:linear-gradient(135deg,#ffffff,#eff6ff);border:1px solid #dbeafe;border-radius:18px;padding:20px;box-shadow:0 10px 25px rgba(37,99,235,.10);display:flex;flex-direction:column;gap:8px;min-height:130px}
.dashboard-card i{font-size:24px;color:#2563eb}.dashboard-card span{font-weight:800;color:#475569;text-transform:uppercase;font-size:12px;letter-spacing:.05em}.dashboard-card strong{font-size:34px;color:#0f172a;line-height:1}
.module-actions{display:flex;justify-content:flex-end;margin:12px 0 18px}.error{background:#fee2e2;color:#991b1b;border:1px solid #fecaca;border-radius:12px;padding:14px;font-weight:700}
textarea{min-height:90px;resize:vertical}

/* Prioridade 1 - telas pedagógicas */
.table-container h2,.form-card h2{margin-top:0;color:#0f172a}.btn-primary{display:inline-block;text-decoration:none}.status{font-weight:800}.data-table td .status{white-space:nowrap}.form-card textarea + textarea{margin-top:8px}

/* Prioridade 2 */
.btn-delete{background:#dc2626;color:#fff;border:0;border-radius:10px;padding:8px 12px;cursor:pointer}.top-nav{max-height:170px;overflow:auto}.table-container ul{margin:10px 0 0;padding-left:20px}.table-container h3,.table-container h4{margin:14px 0 8px}.form-card a.btn-primary{display:inline-block;margin-right:8px}


/* Prioridade 3 - financeiro, comunicação e documentos */
.status-open{background:#dbeafe;color:#1d4ed8}.status-partial{background:#fef3c7;color:#92400e}.status-paid{background:#dcfce7;color:#166534}.status-overdue{background:#fee2e2;color:#991b1b}
.dashboard-card:nth-child(5n+1){background:linear-gradient(135deg,#fff,#eff6ff)}.dashboard-card:nth-child(5n+2){background:linear-gradient(135deg,#fff,#ecfdf5)}.dashboard-card:nth-child(5n+3){background:linear-gradient(135deg,#fff,#fef3c7)}.dashboard-card:nth-child(5n+4){background:linear-gradient(135deg,#fff,#fdf2f8)}.dashboard-card:nth-child(5n+5){background:linear-gradient(135deg,#fff,#fee2e2)}
@media print{.top-nav,.module-header button,.btn-primary,.btn-secondary,.btn-danger,.btn-edit,.install-pwa-inline{display:none!important}.module-page{max-width:none;padding:0}.table-container,.form-card,.module-header{box-shadow:none;border:0}}

/* Gestão Escolar Completa */
.cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}
.routine-card{min-height:190px;background:linear-gradient(135deg,#ffffff,#f8fbff)}
.routine-card strong{font-size:18px;color:#0f172a;line-height:1.25}.routine-card .btn-link{margin-top:auto;display:inline-block;text-decoration:none;background:#2563eb;color:#fff;border-radius:10px;padding:9px 12px;font-weight:800;text-align:center}.routine-card .btn-link:hover{background:#1d4ed8}

/* P5 - Diagnóstico e homologação */
.status-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 16px; }
.status-card { border-radius: 16px; padding: 16px; border: 1px solid #334155; background: #0f172a; color: #e2e8f0; }
.status-card strong { display: block; font-size: 1.05rem; margin-bottom: 8px; }
.status-card span { display: inline-block; font-size: .75rem; font-weight: 800; letter-spacing: .08em; padding: 4px 8px; border-radius: 999px; margin-bottom: 10px; }
.status-card.success { border-color: rgba(34,197,94,.45); }
.status-card.success span { background: rgba(34,197,94,.18); color: #86efac; }
.status-card.warning { border-color: rgba(245,158,11,.45); }
.status-card.warning span { background: rgba(245,158,11,.18); color: #fcd34d; }
.status-card.danger, .status-card.error { border-color: rgba(239,68,68,.45); }
.status-card.danger span, .status-card.error span { background: rgba(239,68,68,.18); color: #fca5a5; }
.checklist { line-height: 1.9; color: #cbd5e1; }
.checklist code { background: rgba(148,163,184,.16); border-radius: 8px; padding: 2px 6px; color: #f8fafc; }

/* Dashboard moderno - produção visual sem alterar módulos internos */
body.dashboard-modern{background:#f3f7ff;color:#10213f;font-family:Inter,Arial,Helvetica,sans-serif}
.dashboard-modern .app-shell{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:100vh;background:linear-gradient(180deg,#f8fbff 0,#eef4ff 100%)}
.dashboard-modern .app-sidebar{position:sticky;top:0;height:100vh;overflow:auto;background:linear-gradient(180deg,#09224a,#0b2b5b 55%,#071a35);color:#eaf2ff;padding:20px 16px;box-shadow:18px 0 45px rgba(15,35,70,.16);z-index:10}
.dashboard-modern .brand-block{display:flex;align-items:center;gap:12px;margin-bottom:22px}.dashboard-modern .brand-icon{width:48px;height:48px;border-radius:16px;background:linear-gradient(135deg,#2e7bff,#0ea5e9);display:grid;place-items:center;color:#fff;font-size:23px;box-shadow:0 14px 30px rgba(37,99,235,.35)}
.dashboard-modern .brand-block strong{display:block;font-size:25px;line-height:1;color:#fff}.dashboard-modern .brand-block strong span{color:#38bdf8}.dashboard-modern .brand-block small{display:block;margin-top:4px;color:#bdd2f2;font-weight:700}.dashboard-modern .side-nav{display:flex;flex-direction:column;gap:4px}.dashboard-modern .side-nav p{margin:18px 8px 8px;color:#9fb7d9;text-transform:uppercase;letter-spacing:.08em;font-weight:900;font-size:12px}.dashboard-modern .side-nav a{display:flex;align-items:center;gap:12px;color:#ecf5ff;text-decoration:none;border-radius:12px;padding:11px 12px;font-weight:800;font-size:14px;transition:.16s}.dashboard-modern .side-nav a i{width:20px;text-align:center;color:#dbeafe}.dashboard-modern .side-nav a:hover{background:rgba(255,255,255,.10);transform:translateX(2px)}.dashboard-modern .side-nav a.active{background:linear-gradient(135deg,#2f7dff,#2563eb);box-shadow:0 12px 24px rgba(37,99,235,.35)}
.dashboard-modern .app-main{min-width:0;padding:0 30px 24px}.dashboard-modern .app-topbar{height:78px;display:flex;align-items:center;justify-content:space-between;gap:16px;background:rgba(255,255,255,.82);backdrop-filter:blur(18px);margin:0 -30px 22px;padding:0 30px;border-bottom:1px solid rgba(148,163,184,.22);box-shadow:0 10px 32px rgba(15,23,42,.04)}.dashboard-modern .app-topbar strong{display:block;font-size:18px}.dashboard-modern .app-topbar small{display:block;color:#64748b;font-weight:700;margin-top:2px}.dashboard-modern .mobile-menu-btn{display:none;border:0;border-radius:12px;background:#edf4ff;color:#163d76;width:44px;height:44px;font-size:18px}.dashboard-modern .topbar-actions{display:flex;align-items:center;gap:12px}.dashboard-modern .topbar-actions a,.dashboard-modern .topbar-actions button{position:relative;display:grid;place-items:center;width:42px;height:42px;border-radius:14px;border:1px solid #e5edf8;background:#fff;color:#0f2b59;text-decoration:none;box-shadow:0 8px 20px rgba(15,23,42,.05);cursor:pointer}.dashboard-modern .topbar-actions span{position:absolute;right:-4px;top:-5px;background:#ef4444;color:#fff;font-size:10px;font-weight:900;min-width:18px;height:18px;border-radius:999px;display:grid;place-items:center;border:2px solid #fff}
.dashboard-modern .hero-card{display:flex;align-items:center;justify-content:space-between;gap:20px;border-radius:22px;padding:34px 36px;margin-bottom:24px;background:radial-gradient(circle at 84% 0,rgba(96,165,250,.55),transparent 34%),linear-gradient(135deg,#155cff,#064fd4 60%,#0b3eaa);box-shadow:0 22px 45px rgba(37,99,235,.25);color:#fff;overflow:hidden}.dashboard-modern .hero-card p{margin:0 0 8px;font-weight:700;opacity:.92}.dashboard-modern .hero-card h1{margin:0;font-size:40px;line-height:1;font-weight:950;letter-spacing:-.04em}.dashboard-modern .hero-card span{display:block;margin-top:10px;color:#dbeafe;font-weight:600}.dashboard-modern .hero-actions{display:flex;gap:12px;flex-wrap:wrap}.dashboard-modern .hero-actions a{display:inline-flex;align-items:center;gap:9px;background:rgba(255,255,255,.95);color:#155cff;border-radius:14px;padding:14px 18px;text-decoration:none;font-weight:900;box-shadow:0 12px 24px rgba(0,0,0,.10)}.dashboard-modern .hero-actions a:last-child{background:rgba(255,255,255,.15);color:#fff;border:1px solid rgba(255,255,255,.28)}
.dashboard-modern .status-alert{border-radius:16px;padding:14px 16px;margin-bottom:16px;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;box-shadow:0 10px 25px rgba(251,146,60,.12)}.dashboard-modern .status-alert strong{display:block;margin-bottom:3px}.dashboard-modern .status-alert span{display:block;color:#9a3412}.dashboard-modern .modern-kpis{grid-template-columns:repeat(5,minmax(150px,1fr));gap:18px;margin:0 0 22px}.dashboard-modern .dashboard-card.modern-kpi{position:relative;min-height:158px;display:grid;grid-template-columns:76px 1fr;align-items:center;gap:14px;border:1px solid rgba(226,232,240,.9);background:#fff;border-radius:20px;box-shadow:0 14px 32px rgba(15,23,42,.07);padding:20px;overflow:hidden}.dashboard-modern .dashboard-card.modern-kpi:before{content:"";position:absolute;right:-25px;top:-35px;width:90px;height:90px;border-radius:50%;background:var(--soft);opacity:.7}.dashboard-modern .kpi-icon{width:60px;height:60px;border-radius:18px;display:grid;place-items:center;background:var(--soft);color:var(--accent);font-size:27px}.dashboard-modern .kpi-content span{display:block;color:#405279;text-transform:uppercase;font-size:12px;letter-spacing:.06em;font-weight:950}.dashboard-modern .kpi-content strong{display:block;font-size:34px;line-height:1.05;color:#10213f;margin:6px 0 7px}.dashboard-modern .kpi-content small{color:#64748b;font-weight:650}.dashboard-modern .spark{position:absolute;left:22px;bottom:16px;width:68px;height:22px;fill:none;stroke:var(--accent);stroke-width:4;stroke-linecap:round;stroke-linejoin:round;opacity:.95}.dashboard-modern .kpi-blue{--accent:#2563eb;--soft:#dbeafe}.dashboard-modern .kpi-green{--accent:#10b981;--soft:#d1fae5}.dashboard-modern .kpi-purple{--accent:#7c3aed;--soft:#ede9fe}.dashboard-modern .kpi-orange{--accent:#f97316;--soft:#ffedd5}.dashboard-modern .kpi-rose{--accent:#e94979;--soft:#ffe4ee}.dashboard-modern .kpi-cyan{--accent:#06b6d4;--soft:#cffafe}.dashboard-modern .kpi-emerald{--accent:#22c55e;--soft:#dcfce7}.dashboard-modern .kpi-amber{--accent:#f59e0b;--soft:#fef3c7}.dashboard-modern .kpi-pink{--accent:#ec4899;--soft:#fce7f3}.dashboard-modern .loading-card{grid-column:1/-1;text-align:center;background:#fff;border-radius:18px;padding:30px;color:#64748b;font-weight:800;box-shadow:0 10px 28px rgba(15,23,42,.06)}
.dashboard-modern .dashboard-lower{display:grid;grid-template-columns:minmax(0,1fr)330px;gap:20px}.dashboard-modern .modern-card{background:#fff;border:1px solid rgba(226,232,240,.92);border-radius:20px;box-shadow:0 14px 34px rgba(15,23,42,.07);padding:18px}.dashboard-modern .card-title-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px}.dashboard-modern .card-title-row h2,.dashboard-modern .quick-card h2{margin:0;font-size:20px;color:#10213f}.dashboard-modern .card-title-row h2 i,.dashboard-modern .quick-card h2 i{color:#2563eb;margin-right:8px}.dashboard-modern .card-title-row a{background:#eff6ff;color:#2563eb;border-radius:12px;padding:9px 13px;text-decoration:none;font-weight:900}.dashboard-modern .table-responsive{overflow:auto}.dashboard-modern .modern-table{border-collapse:separate;border-spacing:0;width:100%;font-size:14px}.dashboard-modern .modern-table th{background:#eff6ff;color:#1d4ed8;text-transform:uppercase;letter-spacing:.04em;font-size:12px;border:0;padding:13px}.dashboard-modern .modern-table td{border:0;border-bottom:1px solid #edf2f7;padding:13px;color:#334155}.dashboard-modern .modern-table tr:nth-child(even) td{background:#f8fbff}.dashboard-modern .row-icon{color:#94a3b8;margin-right:7px}.dashboard-modern .pill-blue{display:inline-flex;align-items:center;background:#dbeafe;color:#1d4ed8;border-radius:999px;padding:5px 10px;font-weight:900;font-size:12px}.dashboard-modern .quick-card{align-self:start}.dashboard-modern .quick-card h2{margin-bottom:14px}.dashboard-modern .quick-card a{display:grid;grid-template-columns:34px 1fr 16px;align-items:center;gap:10px;text-decoration:none;color:#1f2e46;font-weight:850;padding:12px 0;border-bottom:1px solid #edf2f7}.dashboard-modern .quick-card a:last-child{border-bottom:0}.dashboard-modern .quick-card span{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;color:#fff}.dashboard-modern .q-teal{background:#14b8a6}.dashboard-modern .q-rose{background:#fb7185}.dashboard-modern .q-green{background:#22c55e}.dashboard-modern .q-purple{background:#8b5cf6}.dashboard-modern .q-orange{background:#f97316}.dashboard-modern .quick-card a>i{color:#94a3b8}.dashboard-modern .modern-footer{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:24px;color:#64748b;font-weight:700}.dashboard-modern .modern-footer>div{display:flex;align-items:center;gap:10px}.dashboard-modern .modern-footer>div i{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;background:#dbeafe;color:#2563eb}.dashboard-modern .online-pill{display:inline-flex;align-items:center;gap:6px;background:#dcfce7;color:#166534;border:1px solid #86efac;border-radius:999px;padding:7px 12px}.dashboard-modern .online-pill i{font-size:8px}.dashboard-modern .empty{color:#64748b;font-weight:800;text-align:center}
@media (max-width:1280px){.dashboard-modern .modern-kpis{grid-template-columns:repeat(3,minmax(180px,1fr))}.dashboard-modern .dashboard-lower{grid-template-columns:1fr}}
@media (max-width:840px){.dashboard-modern .app-shell{grid-template-columns:1fr}.dashboard-modern .app-sidebar{position:fixed;left:-290px;transition:.25s;width:280px}.dashboard-modern.sidebar-open .app-sidebar{left:0}.dashboard-modern .app-main{padding:0 16px 20px}.dashboard-modern .app-topbar{margin:0 -16px 18px;padding:0 16px}.dashboard-modern .mobile-menu-btn{display:grid;place-items:center}.dashboard-modern .hero-card{flex-direction:column;align-items:flex-start;padding:26px 22px}.dashboard-modern .hero-card h1{font-size:34px}.dashboard-modern .modern-kpis{grid-template-columns:1fr}.dashboard-modern .modern-footer{flex-direction:column;align-items:flex-start}}

/* Modernização global seguindo o padrão visual do Dashboard */
:root{
  --edu-navy:#08234d;
  --edu-navy-2:#061a36;
  --edu-blue:#2563eb;
  --edu-sky:#0ea5e9;
  --edu-bg:#f3f7ff;
  --edu-card:#ffffff;
  --edu-text:#10213f;
  --edu-muted:#66758e;
  --edu-border:#e5edf8;
  --edu-shadow:0 18px 45px rgba(15,35,70,.10);
  --edu-radius:22px;
}
body.module-modern{background:linear-gradient(180deg,#f8fbff 0,#eef4ff 100%);color:var(--edu-text);font-family:Inter,Arial,Helvetica,sans-serif;min-height:100vh}
body.module-modern .module-page{max-width:none;margin:0 0 0 280px;padding:92px 32px 32px;min-height:100vh}
body.module-modern .top-nav{position:fixed;left:0;top:0;bottom:0;width:280px;max-height:none;overflow:auto;display:flex;flex-direction:column;gap:4px;margin:0;padding:20px 16px;background:linear-gradient(180deg,#09224a,#0b2b5b 55%,#071a35);border-radius:0;box-shadow:18px 0 45px rgba(15,35,70,.16);z-index:40}
body.module-modern .module-brand-block{display:flex;align-items:center;gap:12px;margin:0 0 20px;padding:0 4px 16px;border-bottom:1px solid rgba(255,255,255,.08)}
body.module-modern .module-brand-icon{width:48px;height:48px;border-radius:16px;background:linear-gradient(135deg,#2e7bff,#0ea5e9);display:grid;place-items:center;color:#fff;font-size:23px;box-shadow:0 14px 30px rgba(37,99,235,.35)}
body.module-modern .module-brand-block strong{display:block;color:#fff;font-size:25px;line-height:1}body.module-modern .module-brand-block strong span{color:#38bdf8}body.module-modern .module-brand-block small{display:block;color:#bdd2f2;font-weight:700;margin-top:4px}
body.module-modern .module-nav-heading{margin:16px 8px 7px!important;color:#9fb7d9;text-transform:uppercase;letter-spacing:.08em;font-weight:900;font-size:12px}
body.module-modern .top-nav a{display:flex;align-items:center;gap:12px;color:#ecf5ff;text-decoration:none;border-radius:12px;padding:11px 12px;font-weight:800;font-size:14px;background:transparent;transition:.16s;box-shadow:none}
body.module-modern .top-nav a i:first-child{width:20px;text-align:center;color:#dbeafe}body.module-modern .top-nav a b{margin-left:auto;font-size:10px;color:#9fb7d9}body.module-modern .top-nav a:hover{background:rgba(255,255,255,.10);transform:translateX(2px);color:#fff}body.module-modern .top-nav a.active{background:linear-gradient(135deg,#2f7dff,#2563eb);box-shadow:0 12px 24px rgba(37,99,235,.35)}
body.module-modern .module-topbar{position:fixed;left:280px;right:0;top:0;height:76px;display:flex;align-items:center;gap:16px;background:rgba(255,255,255,.86);backdrop-filter:blur(18px);border-bottom:1px solid rgba(148,163,184,.22);box-shadow:0 10px 32px rgba(15,23,42,.04);padding:0 32px;z-index:30}
body.module-modern .module-menu-btn{display:none;border:0;border-radius:12px;background:#edf4ff;color:#163d76;width:44px;height:44px;font-size:18px;cursor:pointer}.module-topbar-title strong{display:block;font-size:18px}.module-topbar-title small{display:block;color:#64748b;font-weight:700;margin-top:2px}.module-topbar-actions{margin-left:auto;display:flex;align-items:center;gap:12px}.module-topbar-actions a,.module-topbar-actions button{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;border:1px solid #e5edf8;background:#fff;color:#0f2b59;text-decoration:none;box-shadow:0 8px 20px rgba(15,23,42,.05);cursor:pointer}
body.module-modern .module-header{position:relative;overflow:hidden;border:0;border-radius:24px;background:linear-gradient(135deg,#0f65ff,#0553d8);color:#fff;padding:26px 30px;margin-bottom:22px;box-shadow:0 22px 48px rgba(37,99,235,.24)}body.module-modern .module-header:after{content:"";position:absolute;right:-120px;top:-160px;width:430px;height:430px;background:rgba(255,255,255,.12);border-radius:50%}body.module-modern .module-header h1{position:relative;z-index:1;margin:6px 0 7px;font-size:34px;letter-spacing:-.03em;color:#fff}body.module-modern .module-header p{position:relative;z-index:1;color:#eaf3ff;font-size:16px}body.module-modern .module-header-eyebrow{position:relative;z-index:1;display:inline-flex;align-items:center;gap:8px;font-weight:900;color:#dbeafe;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.20);border-radius:999px;padding:7px 11px;font-size:12px;text-transform:uppercase;letter-spacing:.06em}body.module-modern .module-header>button,body.module-modern .module-header>a{position:relative;z-index:1}
body.module-modern .search-container,body.module-modern .table-container,body.module-modern .form-card{background:rgba(255,255,255,.92);border:1px solid var(--edu-border);border-radius:22px;padding:20px;margin-bottom:20px;box-shadow:var(--edu-shadow)}body.module-modern .search-container{display:grid;grid-template-columns:auto minmax(240px,1fr) auto;align-items:center;gap:12px}.search-label{display:flex;align-items:center;gap:9px;color:#2563eb;font-weight:900;background:#eff6ff;border:1px solid #dbeafe;border-radius:14px;padding:11px 13px;white-space:nowrap}
body.module-modern input,body.module-modern select,body.module-modern textarea{border:1px solid #d8e2f0;border-radius:14px;background:#fff;min-height:44px;padding:11px 13px;color:#14213d;outline:none;transition:.16s;box-shadow:inset 0 1px 0 rgba(255,255,255,.6)}body.module-modern input:focus,body.module-modern select:focus,body.module-modern textarea:focus{border-color:#2f7dff;box-shadow:0 0 0 4px rgba(37,99,235,.12)}body.module-modern label{font-weight:900;color:#334155;font-size:13px;display:block;margin-bottom:6px}
body.module-modern .btn-add,body.module-modern .btn-search,body.module-modern .btn-primary,body.module-modern button[type=submit],body.module-modern .modern-action{background:linear-gradient(135deg,#2563eb,#0ea5e9);color:#fff;border:0;border-radius:14px;padding:12px 16px;font-weight:900;box-shadow:0 12px 24px rgba(37,99,235,.22);transition:.16s}body.module-modern .btn-add:hover,body.module-modern .btn-search:hover,body.module-modern .btn-primary:hover,body.module-modern button[type=submit]:hover{transform:translateY(-1px);box-shadow:0 18px 30px rgba(37,99,235,.28)}body.module-modern .btn-secondary{background:#f1f5f9;color:#0f172a;border:1px solid #e2e8f0;border-radius:14px;padding:12px 16px;font-weight:900}body.module-modern .btn-edit{background:#fff7ed;color:#9a3412;border:1px solid #fed7aa;border-radius:12px;font-weight:900}body.module-modern .btn-danger,body.module-modern .btn-delete{background:#fff1f2;color:#be123c;border:1px solid #fecdd3;border-radius:12px;font-weight:900}
body.module-modern .data-table{width:100%;border-collapse:separate;border-spacing:0}.table-modern-wrap{overflow:auto}body.module-modern .data-table th{background:#eff6ff;color:#1d4ed8;text-transform:uppercase;letter-spacing:.06em;font-size:12px;border-bottom:0;padding:14px 14px}body.module-modern .data-table th:first-child{border-radius:14px 0 0 14px}body.module-modern .data-table th:last-child{border-radius:0 14px 14px 0}body.module-modern .data-table td{border-bottom:1px solid #edf2f7;padding:14px;color:#25324a}body.module-modern .data-table tbody tr:nth-child(even){background:#f8fbff}body.module-modern .data-table tbody tr:hover{background:#eef6ff}.badge,.status{border-radius:999px;padding:6px 10px;font-size:12px;font-weight:900;background:#dbeafe;color:#1d4ed8}.actions{gap:8px}
body.module-modern .modal{background:rgba(8,18,39,.64);backdrop-filter:blur(6px);z-index:80}body.module-modern .modal-content{border-radius:24px;border:1px solid #e5edf8;box-shadow:0 30px 80px rgba(8,18,39,.26);padding:24px}body.module-modern .modal-header{border-bottom:1px solid #e5edf8;padding-bottom:14px}body.module-modern .modal-header h2{margin:0;font-size:24px;color:#10213f}.close{color:#64748b}.form-row{gap:16px}.form-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:16px}
body.module-modern .dashboard-grid:not(.modern-kpis),body.module-modern .cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}.routine-card,body.module-modern .dashboard-card{border:1px solid #e5edf8;border-radius:22px;background:linear-gradient(135deg,#fff,#f8fbff);box-shadow:var(--edu-shadow)}
.module-global-alert{display:flex;align-items:center;gap:14px;margin:0 0 18px;padding:16px 18px;border-radius:18px;border:1px solid #fde68a;background:#fffbeb;color:#92400e;box-shadow:0 14px 28px rgba(245,158,11,.12)}.module-global-alert i{font-size:22px}.module-global-alert strong{display:block}.module-global-alert span{display:block;color:#a16207}.module-global-alert a{margin-left:auto;color:#1d4ed8;font-weight:900;text-decoration:none;background:#fff;border-radius:12px;padding:9px 12px;border:1px solid #dbeafe;white-space:nowrap}
body.login-modern{background:radial-gradient(circle at 18% 12%,#dbeafe 0,transparent 34%),radial-gradient(circle at 82% 20%,#cffafe 0,transparent 30%),linear-gradient(135deg,#f8fbff,#eef4ff);font-family:Inter,Arial,Helvetica,sans-serif}body.login-modern .login-card{max-width:460px;border:1px solid #e5edf8;border-radius:28px;padding:34px;box-shadow:0 28px 80px rgba(15,35,70,.16)}body.login-modern .login-card h1{font-size:34px;letter-spacing:-.03em;color:#08234d}body.login-modern .login-card h1:before{content:"\f19d";font-family:"Font Awesome 6 Free";font-weight:900;display:inline-grid;place-items:center;width:50px;height:50px;margin-right:12px;border-radius:16px;background:linear-gradient(135deg,#2e7bff,#0ea5e9);color:#fff;font-size:22px;vertical-align:middle}body.login-modern .hint{border-radius:16px;background:#f8fbff;border:1px solid #e5edf8}
@media(max-width:1000px){body.module-modern .module-page{margin-left:0;padding:92px 16px 24px}body.module-modern .top-nav{left:-290px;transition:.24s;width:280px}body.module-modern.module-sidebar-open .top-nav{left:0}body.module-modern .module-topbar{left:0;padding:0 16px}body.module-modern .module-menu-btn{display:grid;place-items:center}body.module-modern .search-container{grid-template-columns:1fr}.search-label{justify-content:center}body.module-modern .module-header{padding:24px 20px}body.module-modern .module-header h1{font-size:29px}}
@media(max-width:640px){body.module-modern .module-topbar-title small{display:none}.module-topbar-actions a:nth-child(1){display:none}body.module-modern .module-header{display:block}body.module-modern .module-header button{margin-top:14px;width:100%}.form-actions button{width:100%}}
