:root{--tte-navy-0: #06142E;--tte-navy-1: #0B1C3D;--tte-navy-2: #142B5F;--tte-gold: #F59E0B;--tte-gold-dark: #E58C05;--tte-bg: #F8FAFC;--tte-card: #FFFFFF;--tte-text: #0F172A;--tte-muted: #64748B;--tte-border: #E5E7EB;--tte-danger: #DC2626;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;background:transparent;color:var(--tte-text)}a{color:inherit;text-decoration:none}button,input{font-family:inherit}#root{height:100%;width:100%;margin:0;padding:0;max-width:none;text-align:initial}:root{color-scheme:light}body{display:block}.tte-login{position:fixed;inset:0;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:24px;background:radial-gradient(1100px 760px at 50% 18%,rgba(245,158,11,.12),transparent 64%),radial-gradient(1400px 900px at 50% 55%,rgba(20,43,95,.58),transparent 66%),linear-gradient(135deg,#06142e,#0b1c3d 55%,#142b5f)!important}.tte-login:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(rgba(255,255,255,.24) 1px,transparent 1px),radial-gradient(rgba(255,255,255,.14) 1px,transparent 1px);background-size:120px 120px,200px 200px;background-position:0 0,80px 100px;opacity:.65;filter:blur(.25px)}.tte-login-inner{width:100%;max-width:980px;position:relative;z-index:1;display:grid;justify-items:center;gap:18px;text-align:center}.tte-hero{display:flex;flex-direction:column;align-items:center;gap:10px}.tte-logo-wrap{position:relative;display:grid;place-items:center;width:96px;height:96px;border-radius:20px;background:#ffffff14;box-shadow:0 14px 28px #00000040;overflow:hidden}.tte-logo-wrap:before{content:"";position:absolute;inset:-70px;background:radial-gradient(circle,rgba(245,158,11,.38),transparent 62%);opacity:.75}.tte-hero-logo{position:relative;width:66px;height:66px;object-fit:contain}.tte-welcome{margin:0;color:#fff;font-size:42px;line-height:1.12;font-weight:900;letter-spacing:.2px;text-shadow:0 10px 26px rgba(0,0,0,.28)}.tte-sub{margin:0;color:#fffc;font-size:13px}.tte-card{width:100%;max-width:540px;background:#fff!important;color:#0f172a;border-radius:14px;padding:18px 22px;box-shadow:0 24px 90px #00000059;border:1px solid rgba(255,255,255,.65)}.tte-card-title{margin:2px 0 14px;font-size:18px;font-weight:900;color:#0f172a}.tte-form{display:flex;flex-direction:column;gap:12px;margin:0}.tte-field{display:flex;align-items:center;gap:10px;width:100%;padding:13px 14px;border:1px solid #E8EDF3;border-radius:12px;background:#fff;overflow:hidden}.tte-field:focus-within{border-color:#f59e0be6;box-shadow:0 0 0 4px #f59e0b29}.tte-icon{color:#94a3b8;display:flex;align-items:center;justify-content:center;flex:0 0 auto}.tte-input{flex:1 1 auto;min-width:0;width:100%;border:none!important;outline:none;background:transparent;padding:0!important;margin:0!important;font-size:14px;color:#0f172a}.tte-btn{width:100%;padding:14px;border:none!important;border-radius:12px;background:linear-gradient(180deg,#f59e0b,#e58c05)!important;color:#fff!important;font-weight:900;font-size:15px;display:inline-flex;align-items:center;justify-content:center;gap:10px;box-shadow:0 16px 34px #f59e0b42;transition:transform .12s ease,filter .12s ease}.tte-btn:hover{filter:brightness(1.02);transform:translateY(-1px)}.tte-btn:active{transform:translateY(0)}.tte-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.tte-btn-arrow{display:inline-flex}.tte-help{margin-top:10px;font-size:12px;color:#64748b}.tte-error{color:#dc2626;font-size:13px;margin-top:2px}@media(max-width:560px){.tte-welcome{font-size:30px}.tte-card{padding:18px}.tte-card-title{font-size:17px}}:root{--bg: #060d1f;--card: #ffffff;--text: #0f172a;--muted: #64748b;--sidebar: #101c4c;--sidebar-2: #0d1740;--pill: rgba(255,255,255,.1);--pill-active: rgba(255,255,255,.18);--shadow: 0 10px 30px rgba(15, 23, 42, .08);--radius: 18px}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Arial;background:var(--bg);color:var(--text)}.app-shell{display:grid;grid-template-columns:280px 1fr;min-height:100vh;width:100%}.app-main{display:flex;flex-direction:column;width:100%;min-width:0;position:relative;overflow:hidden}.app-main:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px),radial-gradient(1px 1px at 20px 30px,rgba(255,255,255,.85) 50%,transparent 55%),radial-gradient(1px 1px at 110px 140px,rgba(255,255,255,.7) 50%,transparent 55%),radial-gradient(1px 1px at 180px 80px,rgba(255,255,255,.55) 50%,transparent 55%),radial-gradient(1px 1px at 260px 200px,rgba(255,255,255,.65) 50%,transparent 55%),radial-gradient(1100px 760px at 35% 10%,rgba(245,158,11,.1),transparent 64%),radial-gradient(1400px 900px at 60% 55%,rgba(20,43,95,.55),transparent 70%),linear-gradient(180deg,#0b1738,#060d1f 70%);background-size:80px 80px,80px 80px,320px 320px,320px 320px,320px 320px,320px 320px,auto,auto,auto;opacity:.95}.app-content{padding:18px 22px 26px;width:100%;min-width:0}.sidebar{background:radial-gradient(1200px 800px at 30% 20%,#1b2a74 0%,var(--sidebar) 55%,var(--sidebar-2) 100%);color:#fff;padding:20px;display:flex;flex-direction:column;border-right:1px solid rgba(255,255,255,.06)}.sidebar-brand{display:flex;align-items:center;gap:12px;padding:12px;border-radius:var(--radius);background:#ffffff0f;box-shadow:inset 0 0 0 1px #ffffff0f}.brand-logo{width:44px;height:44px;border-radius:12px;background:#fff;padding:6px;object-fit:contain}.brand-title{font-weight:900;letter-spacing:2px;font-size:18px;line-height:18px}.brand-subtitle{opacity:.85;letter-spacing:2px;font-weight:800;font-size:14px}.sidebar-nav{margin-top:18px;display:flex;flex-direction:column;gap:10px}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:14px;text-decoration:none;color:#fff;background:transparent;transition:.15s ease;position:relative;opacity:.92}.nav-item:before{content:"";position:absolute;inset:0;border-radius:14px;background:#ffffff0f;box-shadow:inset 0 0 0 1px #ffffff0f;opacity:0;transition:.15s ease}.nav-item:hover:before{opacity:1}.nav-item:hover{transform:translateY(-1px)}.nav-item.active{opacity:1;color:#ffb24d}.nav-item.active:before{opacity:1;background:#ff8a0024;box-shadow:inset 3px 0 #ff8a00d9}.nav-dot{width:10px;height:10px;border-radius:50%;background:#ffffff8c}.sidebar-footer{margin-top:auto;padding-top:12px;display:flex;flex-direction:column;gap:10px}.footer-pill{padding:12px 14px;border-radius:14px;background:#00000038;text-align:center;opacity:.95;cursor:pointer;box-shadow:inset 0 0 0 1px #ffffff0f}.footer-pill.logout{background:#00000059;color:#fff;font-weight:900}.footer-pill.logout:hover{background:#0000007a}.topbar{height:86px;display:flex;align-items:center;padding:0 22px;width:100%;min-width:0;gap:14px}.topbar--glass{background:transparent;box-shadow:none}.topbar-menu{width:44px;height:44px;border-radius:12px;border:none;cursor:pointer;color:#ffffffeb;background:#ffffff14;box-shadow:inset 0 0 0 1px #ffffff1a}.topbar-menu:hover{background:#ffffff1f}.topbar-search{flex:1;max-width:520px;height:48px;display:flex;align-items:center;gap:10px;padding:0 14px;border-radius:14px;background:#ffffff14;box-shadow:inset 0 0 0 1px #ffffff1a}.topbar-search-ico{color:#fffc;font-size:16px}.topbar-search-input{width:100%;height:100%;border:none;outline:none;background:transparent;color:#ffffffeb;font-weight:700}.topbar-search-input::placeholder{color:#ffffffa6;font-weight:700}.topbar-user{margin-left:auto;position:relative}.topbar-user-btn{height:48px;border-radius:14px;border:none;cursor:pointer;display:flex;align-items:center;gap:10px;padding:0 14px 0 10px;color:#ffffffeb;background:#ffffff14;box-shadow:inset 0 0 0 1px #ffffff1a}.topbar-user-btn:hover{background:#ffffff1f}.topbar-avatar{width:34px;height:34px;border-radius:12px;display:grid;place-items:center;font-weight:900;background:#ffffff1f;box-shadow:inset 0 0 0 1px #ffffff1a}.topbar-user-name{font-weight:900}.topbar-user-caret{opacity:.9;margin-left:2px}.topbar-user-menu{position:absolute;right:0;top:calc(100% + 10px);min-width:180px;padding:8px;border-radius:14px;background:#ffffffeb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 22px 60px #00000040;border:1px solid rgba(255,255,255,.22);z-index:50}.topbar-user-item{width:100%;border:none;background:#0f172a0f;padding:10px 12px;border-radius:12px;font-weight:900;cursor:pointer;margin:6px 0}.topbar-user-item:hover{background:#0f172a1a}.topbar-user-item.danger{background:#ef444424;color:#b91c1c}.topbar-user-item.danger:hover{background:#ef444438}@media(min-width:981px){.topbar-menu{display:none}}input,button,select,textarea{font:inherit}.ui-input{width:100%;height:42px;padding:10px 12px;border-radius:14px;border:1px solid rgba(15,23,42,.1);background:#fff;color:var(--text);outline:none;box-shadow:0 10px 20px #0f172a0a}.ui-input::placeholder{color:#64748be6}.ui-input:focus{border-color:#355bff59;box-shadow:0 0 0 4px #355bff1f}.ui-btn{height:42px;padding:0 14px;border-radius:14px;border:none;cursor:pointer;font-weight:800;background:#111827;color:#fff}.ui-btn:hover{filter:brightness(1.06)}.ui-btn.secondary{background:#f2f5ff;color:var(--text);box-shadow:inset 0 0 0 1px #0f172a0f}.ui-btn.danger{background:#ef4444}.icon-action{width:38px;height:38px;border-radius:14px;border:none;padding:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;background:#f2f5ff;color:#0f172a;box-shadow:inset 0 0 0 1px #0f172a14;transition:.15s ease}.icon-action svg{display:block;stroke:currentColor}.icon-action:hover{transform:translateY(-1px);background:#e8edff}.icon-action.primary{background:#355bff;color:#fff}.icon-action.primary:hover{background:#2748d9}.icon-action.danger{background:#ef444424;color:#b91c1c}.icon-action.danger:hover{background:#ef444438}.ui-card{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px;width:100%}.table-wrap{overflow-x:auto;width:100%}.ui-table{width:100%;min-width:760px;border-collapse:separate;border-spacing:0 10px}.ui-table th{text-align:left;color:var(--muted);font-weight:900;padding:10px 12px}.ui-table td{padding:12px}.ui-table tbody tr{background:#f6f8ff}.ui-table tbody tr td:first-child{border-radius:16px 0 0 16px}.ui-table tbody tr td:last-child{border-radius:0 16px 16px 0}.ui-table .empty{padding:18px;color:var(--muted);font-weight:800;background:transparent}@media(max-width:980px){.app-shell{grid-template-columns:1fr}.sidebar{position:fixed;inset:0 auto 0 0;width:280px;transform:translate(-110%);transition:.2s ease;z-index:100}.sidebar.open{transform:translate(0)}.overlay{position:fixed;inset:0;background:#02061759;z-index:90}.topbar{padding:0 14px}.topbar-search{max-width:none}}@media(max-width:640px){body{overflow-x:hidden}.app-shell{grid-template-columns:1fr}.app-main{width:100%}.app-content{padding:14px;width:100%}.topbar-search{height:46px}}.dash{width:100%;max-width:1180px}.dash-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:14px}.dash-title{margin:6px 0 0;font-size:44px;line-height:1.05;font-weight:900;letter-spacing:.2px;color:#fffffff2;text-shadow:0 8px 22px rgba(0,0,0,.45)}.dash-refresh{height:46px;padding:0 18px;border:none;border-radius:12px;font-weight:900;background:#ffffff1a;color:#ffffffeb;box-shadow:inset 0 0 0 1px #ffffff1f;cursor:pointer}.dash-refresh:hover{background:#ffffff24;transform:translateY(-1px)}.dash-refresh:active{transform:translateY(0)}.dash-error{margin:10px 2px 14px;color:#fecaca;font-weight:900}.cards{display:grid;grid-template-columns:repeat(4,minmax(180px,1fr));gap:14px;margin-bottom:16px}.kpi{border-radius:18px;padding:16px;color:#fff;box-shadow:var(--shadow);min-height:92px;position:relative;overflow:hidden;cursor:pointer;-webkit-user-select:none;user-select:none}.kpi:focus{outline:none}.kpi:hover{filter:brightness(1.03);transform:translateY(-1px)}.kpi:active{transform:translateY(0)}.kpi-title{opacity:.9;font-weight:800}.kpi-value{font-size:34px;font-weight:900;margin-top:6px}.kpi-sub{margin-top:8px;font-weight:900;opacity:.92;font-size:12px}.kpi.orange{background:linear-gradient(135deg,#ff8a00,#ffb24d)}.kpi.blue{background:linear-gradient(135deg,#4f7cff,#76a7ff)}.kpi.teal{background:linear-gradient(135deg,#1fb6aa,#67d9cf)}.kpi.yellow{background:linear-gradient(135deg,#f4b400,#ffd36a);color:#1b1b1b}.grid{display:grid;grid-template-columns:2fr 1fr;gap:16px}.panel{background:#ffffffeb;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:var(--radius);box-shadow:0 20px 60px #0003;padding:16px;border:1px solid rgba(255,255,255,.18)}.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.panel-title{font-weight:900;color:#0f172aeb}.chip{border:none;background:#f2f5ff;padding:10px 12px;border-radius:14px;cursor:pointer;font-weight:900}.link{border:none;background:transparent;cursor:pointer;color:#355bff;font-weight:900}.muted{color:var(--muted);font-weight:800}.mini-chart{height:240px;display:flex;align-items:stretch;gap:10px;padding:14px;background:#f6f8ff;border-radius:16px;box-shadow:inset 0 0 0 1px #0f172a0f}.bar-col{flex:1;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:10px;min-width:0}.bar{width:100%;border-radius:14px;background:linear-gradient(180deg,#355bff,#76a7ff);box-shadow:0 10px 18px #355bff2e;min-height:8px}.bar-label{font-size:12px;font-weight:900;color:#64748bf2;text-transform:capitalize}.mini-chart-foot{margin-top:10px;display:flex;justify-content:space-between;align-items:center}.list{display:flex;flex-direction:column;gap:10px}.row{display:flex;align-items:center;gap:10px;padding:10px;border-radius:16px;background:#f6f8ff}.row.empty{opacity:.85}.ico{width:42px;height:42px;display:grid;place-items:center;background:#fff;border-radius:14px}.row-title{font-weight:900}.row-sub{color:var(--muted);font-size:12px;font-weight:800}.row-meta{margin-left:auto;color:var(--muted);font-size:12px;font-weight:800}.span-2{grid-column:1 / span 2}.table{margin-top:6px}.thead,.trow{display:grid;grid-template-columns:1.2fr 1fr .7fr .8fr;gap:10px;align-items:center;padding:12px 10px}.thead{color:var(--muted);font-weight:900}.trow{background:#f6f8ff;border-radius:16px;margin-top:10px}.trow.empty{opacity:.85}.name{display:flex;align-items:center;gap:10px;font-weight:900}.mini-avatar{width:34px;height:34px;display:grid;place-items:center;background:#fff;border-radius:12px}.badge{padding:6px 10px;border-radius:999px;font-weight:900;font-size:12px}.badge.ok{background:#1fb6aa26;color:#0f766e}.badge.off{background:#f43f5e1f;color:#be123c}.lastpay{display:flex;flex-direction:column;gap:2px}.lastpay-amt{font-weight:900}.lastpay-date{font-size:12px;color:var(--muted);font-weight:800}@media(max-width:980px){.cards{grid-template-columns:repeat(2,minmax(180px,1fr))}.grid{grid-template-columns:1fr}.span-2{grid-column:auto}}@media(max-width:720px){.dash-title{font-size:34px}.cards{grid-template-columns:1fr}.thead,.trow{grid-template-columns:1.2fr 1fr}.thead div:nth-child(3),.thead div:nth-child(4),.trow>div:nth-child(3),.trow>div:nth-child(4){display:none}}.students-page{width:100%;max-width:1180px}.students-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:18px}.students-title{margin:6px 0 0;font-size:44px;line-height:1.05;font-weight:900;letter-spacing:.2px;color:#fffffff2;text-shadow:0 8px 22px rgba(0,0,0,.45)}.students-card{background:#ffffffeb;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:18px;box-shadow:0 20px 60px #0000004d;padding:18px;border:1px solid rgba(255,255,255,.18)}.students-create{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-bottom:14px}.students-input{height:46px;min-width:240px;padding:0 14px;border-radius:10px;border:1px solid rgba(15,23,42,.16);background:#fffffff5;outline:none;box-shadow:inset 0 1px #fffc}.students-input:focus{border-color:#ff8c008c;box-shadow:0 0 0 4px #f59e0b33}.students-add{height:46px;padding:0 22px;border:none;border-radius:10px;background:linear-gradient(135deg,#ff8a00,#ffb24d);color:#fff;font-weight:900;letter-spacing:.2px;box-shadow:0 12px 24px #ff8a0040}.students-add:hover{filter:brightness(1.03);transform:translateY(-1px)}.students-add:active{transform:translateY(0)}.students-error{margin:10px 2px 14px;color:#b91c1c;font-weight:800}.students-table-wrap{width:100%;overflow-x:auto}.students-table{width:100%;border-collapse:separate;border-spacing:0;background:#ffffffeb;border-radius:14px;overflow:hidden;border:1px solid rgba(15,23,42,.1)}.students-table thead th{text-align:left;padding:14px 16px;font-weight:900;color:#0f172ad9;background:#f8fafcd9}.students-table tbody td{padding:14px 16px;border-top:1px solid rgba(15,23,42,.08);color:#0f172aeb}.students-table tbody tr:hover td{background:#f5f7ffb3}.students-empty{padding:22px 16px!important;color:#64748bf2;font-weight:800}.students-cell-input{width:100%;height:40px;padding:0 12px;border-radius:10px;border:1px solid rgba(15,23,42,.16);background:#fff;outline:none}.students-cell-input:focus{border-color:#355bff73;box-shadow:0 0 0 4px #355bff24}.students-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.students-action{height:40px;padding:0 14px;border:none;border-radius:10px;font-weight:900;display:inline-flex;align-items:center;gap:8px;box-shadow:0 10px 18px #00000026}.students-action svg{display:block}.students-action.edit{background:linear-gradient(135deg,#1d4ed8,#2748d9);color:#fff}.students-action.delete{background:linear-gradient(135deg,#b91c1c,#dc2626);color:#fff}.students-action.secondary{background:#111827;color:#fff}.students-action.ghost{background:#0f172a14;color:#0f172aeb;box-shadow:inset 0 0 0 1px #0f172a1a}.students-action:hover{filter:brightness(1.03);transform:translateY(-1px)}.students-action:active{transform:translateY(0)}.students-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding:8px 6px 2px;color:#0f172aa6;font-weight:700}.students-pager{display:flex;align-items:center;gap:10px}@media(max-width:720px){.students-title{font-size:34px}.students-input{min-width:100%}.students-actions{justify-content:flex-start}.right{text-align:left}}.teachers-page{width:100%;max-width:1180px}.teachers-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:18px}.teachers-title{margin:6px 0 0;font-size:44px;line-height:1.05;font-weight:900;letter-spacing:.2px;color:#fffffff2;text-shadow:0 8px 22px rgba(0,0,0,.45)}.teachers-card{background:#ffffffeb;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:18px;box-shadow:0 20px 60px #0000004d;padding:18px;border:1px solid rgba(255,255,255,.18)}.teachers-create{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-bottom:14px}.teachers-input{height:46px;min-width:240px;padding:0 14px;border-radius:10px;border:1px solid rgba(15,23,42,.16);background:#fffffff5;outline:none;box-shadow:inset 0 1px #fffc}.teachers-input:focus{border-color:#ff8c008c;box-shadow:0 0 0 4px #f59e0b33}.teachers-add{height:46px;padding:0 22px;border:none;border-radius:10px;background:linear-gradient(135deg,#ff8a00,#ffb24d);color:#fff;font-weight:900;letter-spacing:.2px;box-shadow:0 12px 24px #ff8a0040}.teachers-add:hover{filter:brightness(1.03);transform:translateY(-1px)}.teachers-add:active{transform:translateY(0)}.teachers-error{margin:10px 2px 14px;color:#b91c1c;font-weight:800}.teachers-table-wrap{width:100%;overflow-x:auto}.teachers-table{width:100%;border-collapse:separate;border-spacing:0;background:#ffffffeb;border-radius:14px;overflow:hidden;border:1px solid rgba(15,23,42,.1)}.teachers-table thead th{text-align:left;padding:14px 16px;font-weight:900;color:#0f172ad9;background:#f8fafcd9}.teachers-table tbody td{padding:14px 16px;border-top:1px solid rgba(15,23,42,.08);color:#0f172aeb}.teachers-table tbody tr:hover td{background:#f5f7ffb3}.teachers-empty{padding:22px 16px!important;color:#64748bf2;font-weight:800}.teachers-cell-input{width:100%;height:40px;padding:0 12px;border-radius:10px;border:1px solid rgba(15,23,42,.16);background:#fff;outline:none}.teachers-cell-input:focus{border-color:#355bff73;box-shadow:0 0 0 4px #355bff24}.teachers-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.teachers-action{height:40px;padding:0 14px;border:none;border-radius:10px;font-weight:900;display:inline-flex;align-items:center;gap:8px;box-shadow:0 10px 18px #00000026}.teachers-action svg{display:block}.teachers-action.edit{background:linear-gradient(135deg,#1d4ed8,#2748d9);color:#fff}.teachers-action.delete{background:linear-gradient(135deg,#b91c1c,#dc2626);color:#fff}.teachers-action.secondary{background:#111827;color:#fff}.teachers-action.ghost{background:#0f172a14;color:#0f172aeb;box-shadow:inset 0 0 0 1px #0f172a1a}.teachers-action:hover{filter:brightness(1.03);transform:translateY(-1px)}.teachers-action:active{transform:translateY(0)}.teachers-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding:8px 6px 2px;color:#0f172aa6;font-weight:700}.teachers-pager{display:flex;align-items:center;gap:10px}@media(max-width:720px){.teachers-title{font-size:34px}.teachers-input{min-width:100%}.teachers-actions{justify-content:flex-start}.right{text-align:left}}.courses-page{width:100%;max-width:1180px}.courses-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:18px}.courses-title{margin:6px 0 0;font-size:44px;line-height:1.05;font-weight:900;letter-spacing:.2px;color:#fffffff2;text-shadow:0 8px 22px rgba(0,0,0,.45)}.courses-card{background:#ffffffeb;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:18px;box-shadow:0 20px 60px #0000004d;padding:18px;border:1px solid rgba(255,255,255,.18)}.courses-create{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-bottom:14px}.courses-input{height:46px;min-width:240px;padding:0 14px;border-radius:10px;border:1px solid rgba(15,23,42,.16);background:#fffffff5;outline:none;box-shadow:inset 0 1px #fffc}.courses-input:focus{border-color:#ff8c008c;box-shadow:0 0 0 4px #f59e0b33}.courses-add{height:46px;padding:0 22px;border:none;border-radius:10px;background:linear-gradient(135deg,#ff8a00,#ffb24d);color:#fff;font-weight:900;letter-spacing:.2px;box-shadow:0 12px 24px #ff8a0040}.courses-add:hover{filter:brightness(1.03);transform:translateY(-1px)}.courses-add:active{transform:translateY(0)}.courses-error{margin:10px 2px 14px;color:#b91c1c;font-weight:800}.courses-table-wrap{width:100%;overflow-x:auto}.courses-table{width:100%;border-collapse:separate;border-spacing:0;background:#ffffffeb;border-radius:14px;overflow:hidden;border:1px solid rgba(15,23,42,.1)}.courses-table thead th{text-align:left;padding:14px 16px;font-weight:900;color:#0f172ad9;background:#f8fafcd9}.courses-table tbody td{padding:14px 16px;border-top:1px solid rgba(15,23,42,.08);color:#0f172aeb}.courses-table tbody tr:hover td{background:#f5f7ffb3}.courses-empty{padding:22px 16px!important;color:#64748bf2;font-weight:800}.num{text-align:left}.courses-cell-input{width:100%;height:40px;padding:0 12px;border-radius:10px;border:1px solid rgba(15,23,42,.16);background:#fff;outline:none}.courses-cell-input:focus{border-color:#355bff73;box-shadow:0 0 0 4px #355bff24}.courses-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.courses-action{height:40px;padding:0 14px;border:none;border-radius:10px;font-weight:900;display:inline-flex;align-items:center;gap:8px;box-shadow:0 10px 18px #00000026}.courses-action svg{display:block}.courses-action.edit{background:linear-gradient(135deg,#1d4ed8,#2748d9);color:#fff}.courses-action.delete{background:linear-gradient(135deg,#b91c1c,#dc2626);color:#fff}.courses-action.secondary{background:#111827;color:#fff}.courses-action.ghost{background:#0f172a14;color:#0f172aeb;box-shadow:inset 0 0 0 1px #0f172a1a}.courses-action:hover{filter:brightness(1.03);transform:translateY(-1px)}.courses-action:active{transform:translateY(0)}.courses-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding:8px 6px 2px;color:#0f172aa6;font-weight:700}.courses-pager{display:flex;align-items:center;gap:10px}@media(max-width:720px){.courses-title{font-size:34px}.courses-input{min-width:100%}.courses-actions{justify-content:flex-start}.right{text-align:left}}.enrollments-page{width:100%;max-width:1180px}.enrollments-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:18px}.enrollments-title{margin:6px 0 0;font-size:44px;line-height:1.05;font-weight:900;letter-spacing:.2px;color:#fffffff2;text-shadow:0 8px 22px rgba(0,0,0,.45)}.enrollments-card{background:#ffffffeb;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:18px;box-shadow:0 20px 60px #0000004d;padding:18px;border:1px solid rgba(255,255,255,.18)}.enrollments-filters{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-bottom:14px}.enrollments-field{min-width:240px}.enrollments-select{height:46px;width:100%;padding:0 14px;border-radius:10px;border:1px solid rgba(15,23,42,.16);background:#fffffff5;outline:none;box-shadow:inset 0 1px #fffc}.enrollments-select:focus{border-color:#ff8c008c;box-shadow:0 0 0 4px #f59e0b33}.enrollments-check{display:flex;gap:10px;align-items:center;font-weight:900;color:#0f172acc;padding:10px 12px;border-radius:12px;background:#0f172a0d;box-shadow:inset 0 0 0 1px #0f172a14}.enrollments-check input{width:18px;height:18px;accent-color:#ff8a00}.enrollments-buttons{display:flex;gap:10px;margin-left:auto;flex-wrap:wrap}.enrollments-btn{height:46px;padding:0 18px;border:none;border-radius:10px;font-weight:900;letter-spacing:.2px}.enrollments-btn.primary{background:linear-gradient(135deg,#ff8a00,#ffb24d);color:#fff;box-shadow:0 12px 24px #ff8a0040}.enrollments-btn.ghost{background:#0f172a14;color:#0f172aeb;box-shadow:inset 0 0 0 1px #0f172a1a}.enrollments-btn:hover{filter:brightness(1.03);transform:translateY(-1px)}.enrollments-btn:active{transform:translateY(0)}.enrollments-error{margin:10px 2px 14px;color:#b91c1c;font-weight:800}.enrollments-table-wrap{width:100%;overflow-x:auto}.enrollments-table{width:100%;border-collapse:separate;border-spacing:0;background:#ffffffeb;border-radius:14px;overflow:hidden;border:1px solid rgba(15,23,42,.1)}.enrollments-table thead th{text-align:left;padding:14px 16px;font-weight:900;color:#0f172ad9;background:#f8fafcd9}.enrollments-table tbody td{padding:14px 16px;border-top:1px solid rgba(15,23,42,.08);color:#0f172aeb}.enrollments-table tbody tr:hover td{background:#f5f7ffb3}.enrollments-empty{padding:22px 16px!important;color:#64748bf2;font-weight:800}.center{text-align:center}.status{display:inline-flex;align-items:center;justify-content:center;min-width:54px;padding:6px 10px;border-radius:999px;font-weight:900;font-size:12px;box-shadow:inset 0 0 0 1px #0f172a1a}.status.on{background:#22c55e24;color:#15803d}.status.off{background:#94a3b833;color:#0f172ab3}.enrollments-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.enrollments-action{height:40px;padding:0 14px;border:none;border-radius:10px;font-weight:900;display:inline-flex;align-items:center;gap:8px;box-shadow:0 10px 18px #00000026}.enrollments-action svg{display:block}.enrollments-action.end{background:linear-gradient(135deg,#111827,#1f2937);color:#fff}.enrollments-action.delete{background:linear-gradient(135deg,#b91c1c,#dc2626);color:#fff}.enrollments-action:hover{filter:brightness(1.03);transform:translateY(-1px)}.enrollments-action:active{transform:translateY(0)}.enrollments-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding:8px 6px 2px;color:#0f172aa6;font-weight:700}.enrollments-pager{display:flex;align-items:center;gap:10px}@media(max-width:720px){.enrollments-title{font-size:34px}.enrollments-field{min-width:100%}.enrollments-buttons{margin-left:0;width:100%}.enrollments-actions{justify-content:flex-start}.right,.center{text-align:left}}.payments-page{width:100%;max-width:1180px}.payments-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:18px}.payments-title{margin:6px 0 0;font-size:44px;line-height:1.05;font-weight:900;letter-spacing:.2px;color:#fffffff2;text-shadow:0 8px 22px rgba(0,0,0,.45)}.payments-card{background:#ffffffeb;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:18px;box-shadow:0 20px 60px #0000004d;padding:18px;border:1px solid rgba(255,255,255,.18)}.payments-filters{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-bottom:14px}.payments-field{min-width:240px}.payments-select{height:46px;width:100%;padding:0 14px;border-radius:10px;border:1px solid rgba(15,23,42,.16);background:#fffffff5;outline:none;box-shadow:inset 0 1px #fffc}.payments-select:focus{border-color:#ff8c008c;box-shadow:0 0 0 4px #f59e0b33}.payments-input{height:46px;min-width:180px;padding:0 14px;border-radius:10px;border:1px solid rgba(15,23,42,.16);background:#fffffff5;outline:none;box-shadow:inset 0 1px #fffc}.payments-input.small{min-width:120px;max-width:140px}.payments-input.notes{min-width:240px}.payments-input:focus{border-color:#ff8c008c;box-shadow:0 0 0 4px #f59e0b33}.payments-buttons{display:flex;gap:10px;margin-left:auto;flex-wrap:wrap}.payments-btn{height:46px;padding:0 18px;border:none;border-radius:10px;font-weight:900;letter-spacing:.2px}.payments-btn.primary{background:linear-gradient(135deg,#ff8a00,#ffb24d);color:#fff;box-shadow:0 12px 24px #ff8a0040}.payments-btn.ghost{background:#0f172a14;color:#0f172aeb;box-shadow:inset 0 0 0 1px #0f172a1a}.payments-btn:hover{filter:brightness(1.03);transform:translateY(-1px)}.payments-btn:active{transform:translateY(0)}.payments-error{margin:10px 2px 14px;color:#b91c1c;font-weight:800}.payments-table-wrap{width:100%;overflow-x:auto}.payments-table{width:100%;border-collapse:separate;border-spacing:0;background:#ffffffeb;border-radius:14px;overflow:hidden;border:1px solid rgba(15,23,42,.1)}.payments-table thead th{text-align:left;padding:14px 16px;font-weight:900;color:#0f172ad9;background:#f8fafcd9}.payments-table tbody td{padding:14px 16px;border-top:1px solid rgba(15,23,42,.08);color:#0f172aeb}.payments-table tbody tr:hover td{background:#f5f7ffb3}.payments-empty{padding:22px 16px!important;color:#64748bf2;font-weight:800}.payments-amount{font-weight:900}.right{text-align:right}.payments-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.payments-action{height:40px;padding:0 14px;border:none;border-radius:10px;font-weight:900;display:inline-flex;align-items:center;gap:8px;box-shadow:0 10px 18px #00000026}.payments-action svg{display:block}.payments-action.delete{background:linear-gradient(135deg,#b91c1c,#dc2626);color:#fff}.payments-action:hover{filter:brightness(1.03);transform:translateY(-1px)}.payments-action:active{transform:translateY(0)}.payments-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding:8px 6px 2px;color:#0f172aa6;font-weight:700}.payments-pager{display:flex;align-items:center;gap:10px}.pager-btn{width:40px;height:36px;border-radius:10px;border:none;background:#0f172a0f;color:#0f172ab3;font-size:18px;box-shadow:inset 0 0 0 1px #0f172a1a}.pager-btn:disabled{opacity:.55;cursor:not-allowed}.pager-mid{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:10px;background:#0f172a0f;box-shadow:inset 0 0 0 1px #0f172a1a}.pager-page{width:30px;height:30px;display:grid;place-items:center;border-radius:8px;background:#0f172a14;font-weight:900;color:#0f172ae6}@media(max-width:720px){.payments-title{font-size:34px}.payments-field,.payments-input{min-width:100%}.payments-buttons{margin-left:0;width:100%}.payments-actions{justify-content:flex-start}.right{text-align:left}}.reports-page{width:100%;max-width:1180px}.reports-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:18px}.reports-title{margin:6px 0 0;font-size:44px;line-height:1.05;font-weight:900;letter-spacing:.2px;color:#fffffff2;text-shadow:0 8px 22px rgba(0,0,0,.45)}.reports-card{background:#ffffffeb;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:18px;box-shadow:0 20px 60px #0000004d;padding:18px;border:1px solid rgba(255,255,255,.18)}.reports-filters{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-bottom:14px}.reports-field{min-width:320px}.reports-select{height:46px;width:100%;padding:0 14px;border-radius:10px;border:1px solid rgba(15,23,42,.16);background:#fffffff5;outline:none;box-shadow:inset 0 1px #fffc}.reports-input{height:46px;min-width:180px;padding:0 14px;border-radius:10px;border:1px solid rgba(15,23,42,.16);background:#fffffff5;outline:none;box-shadow:inset 0 1px #fffc}.reports-input.small{min-width:140px;max-width:160px}.reports-select:focus,.reports-input:focus{border-color:#ff8c008c;box-shadow:0 0 0 4px #f59e0b33}.reports-buttons{margin-left:auto;display:flex;gap:10px;flex-wrap:wrap}.reports-btn{height:46px;padding:0 18px;border:none;border-radius:10px;font-weight:900;letter-spacing:.2px}.reports-btn.primary{background:linear-gradient(135deg,#ff8a00,#ffb24d);color:#fff;box-shadow:0 12px 24px #ff8a0040}.reports-btn:hover{filter:brightness(1.03);transform:translateY(-1px)}.reports-btn:active{transform:translateY(0)}.reports-error{margin:10px 2px 14px;color:#b91c1c;font-weight:800}.reports-section{margin-top:14px}.reports-section-title{margin:10px 2px 12px;font-size:18px;font-weight:900;color:#0f172aeb}.reports-muted{color:#64748bf2;font-weight:900}.reports-table-wrap{width:100%;overflow-x:auto}.reports-table{width:100%;border-collapse:separate;border-spacing:0;background:#ffffffeb;border-radius:14px;overflow:hidden;border:1px solid rgba(15,23,42,.1)}.reports-table thead th{text-align:left;padding:14px 16px;font-weight:900;color:#0f172ad9;background:#f8fafcd9}.reports-table tbody td{padding:14px 16px;border-top:1px solid rgba(15,23,42,.08);color:#0f172aeb}.reports-table tbody tr:hover td{background:#f5f7ffb3}.reports-empty{padding:22px 16px!important;color:#64748bf2;font-weight:800}.reports-amount{font-weight:900}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:13px}.reports-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding:8px 6px 2px;color:#0f172aa6;font-weight:700}.reports-foot-left{display:flex;align-items:center;gap:10px}@media(max-width:720px){.reports-title{font-size:34px}.reports-field,.reports-input{min-width:100%}.reports-buttons{margin-left:0;width:100%}}
