:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:#f6f8fc;--foreground:#172033;--heading:#111827;--muted:#667085;--muted-soft:#98a2b3;--surface:#fff;--surface-2:#f9fafb;--surface-3:#eef4ff;--border:#e4e7ec;--border-strong:#d0d5dd;--primary:#4f46e5;--primary-hover:#4338ca;--primary-soft:#eef2ff;--secondary:#0f766e;--secondary-soft:#ecfdf5;--warning:#b54708;--warning-soft:#fffaeb;--danger:#b42318;--danger-soft:#fef3f2;--success:#027a48;--success-soft:#ecfdf3;--shadow-sm:0 1px 2px #1018280a, 0 1px 3px #1018280d;--shadow-md:0 8px 24px #0f172a12;--shadow-lg:0 18px 48px #0f172a17}*{box-sizing:border-box}html{background:var(--background);scroll-behavior:smooth}body{background:radial-gradient(circle at 12% 0%, #4f46e517, transparent 30rem), radial-gradient(circle at 100% 18%, #0f766e12, transparent 28rem), var(--background);min-height:100vh;color:var(--foreground);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:15px;line-height:1.5}::selection{color:#1e1b4b;background:#c7d2fe}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{transition:border-color .18s,background-color .18s,color .18s,box-shadow .18s,transform .18s}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #4f46e52e}.shell{width:min(1120px,100% - 32px);margin:0 auto;padding:96px 0 48px}.hero{max-width:780px}.eyebrow{color:var(--primary);letter-spacing:.13em;text-transform:uppercase;align-items:center;gap:7px;margin-bottom:12px;font-size:.73rem;font-weight:800;display:inline-flex}.eyebrow:before{content:"";background:linear-gradient(135deg, var(--primary), #818cf8);width:7px;height:7px;box-shadow:0 0 0 4px var(--primary-soft);border-radius:999px}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--heading);letter-spacing:-.025em}h1{margin-bottom:16px;font-size:clamp(2rem,5vw,3.5rem);line-height:1.05}h2{line-height:1.2}.hero p{max-width:680px;color:var(--muted);font-size:1.08rem;line-height:1.75}.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:72px;display:grid}.card,.panel{box-shadow:var(--shadow-sm);background:#ffffffeb;border:1px solid #d0d5ddcc;border-radius:20px}.card{min-height:220px;padding:28px}.card:hover{box-shadow:var(--shadow-md);border-color:#c7d2fe;transform:translateY(-3px)}.card p,footer,.page-header p,.section-heading p{color:var(--muted);line-height:1.65}footer{border-top:1px solid var(--border);margin-top:64px;padding-top:24px;font-size:.875rem}.admin-layout{grid-template-columns:280px minmax(0,1fr);min-height:100vh;display:grid}.admin-sidebar{z-index:10;border-right:1px solid var(--border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffeb;flex-direction:column;height:100vh;padding:22px 18px;display:flex;position:sticky;top:0;box-shadow:8px 0 30px #0f172a09}.admin-brand{align-items:center;gap:12px;margin-bottom:24px;padding:8px;display:flex}.admin-brand span:last-child{gap:2px;min-width:0;display:grid}.admin-brand strong{text-overflow:ellipsis;white-space:nowrap;color:var(--heading);overflow:hidden}.admin-brand small,.admin-account small{color:var(--muted)}.brand-mark{background:linear-gradient(135deg, var(--primary), #7c3aed);color:#fff;border-radius:13px;flex:none;place-items:center;width:42px;height:42px;font-weight:900;display:grid;box-shadow:0 8px 20px #4f46e540}.admin-nav{scrollbar-width:thin;scrollbar-color:#d0d5dd transparent;gap:3px;min-height:0;padding:4px 3px 18px;display:grid;overflow-y:auto}.admin-nav a{color:#475467;border:1px solid #0000;border-radius:11px;padding:10px 12px 10px 38px;font-size:.9rem;font-weight:650;position:relative}.admin-nav a:before{content:"";border:2px solid #98a2b3;border-radius:3px;width:8px;height:8px;position:absolute;top:50%;left:15px;transform:translateY(-50%)}.admin-nav a:hover{background:var(--primary-soft);color:#3730a3;border-color:#dbe4ff;transform:translate(2px)}.admin-nav a:hover:before{border-color:var(--primary);background:#c7d2fe}.admin-account{border-top:1px solid var(--border);gap:5px;margin-top:auto;padding:16px 10px 0;font-size:.875rem;display:grid}.admin-sidebar>form{margin-top:14px}.admin-sidebar>form .secondary-button{width:100%}.admin-main,.admin-content{min-width:0}.admin-page{width:min(1180px,100% - 56px);margin:0 auto;padding:44px 0 72px}.narrow-page{max-width:900px}.page-header{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:30px;display:flex}.page-header h1{margin-bottom:9px;font-size:clamp(1.8rem,4vw,2.55rem)}.page-header p{max-width:720px;margin-bottom:0}.primary-button,.secondary-button,.text-button{cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:8px;font-weight:750;display:inline-flex}.primary-button{border:1px solid var(--primary);background:linear-gradient(135deg, var(--primary), #6366f1);color:#fff;min-height:42px;padding:0 17px;box-shadow:0 4px 12px #4f46e533}.primary-button:hover{border-color:var(--primary-hover);background:linear-gradient(135deg, var(--primary-hover), #4f46e5);transform:translateY(-1px);box-shadow:0 7px 18px #4f46e540}.secondary-button{border:1px solid var(--border-strong);background:var(--surface);color:#344054;min-height:42px;box-shadow:var(--shadow-sm);padding:0 16px}.secondary-button:hover{background:var(--primary-soft);color:#3730a3;border-color:#a5b4fc}.text-button{color:var(--primary);background:0 0;border:0;padding:0}.text-button:hover{color:var(--primary-hover)}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px;display:grid}.stats-grid article,.detail-card{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:18px;padding:22px;position:relative;overflow:hidden}.stats-grid article:after{content:"";background:linear-gradient(135deg,#4f46e51f,#0f766e14);border-radius:999px;width:78px;height:78px;position:absolute;top:-24px;right:-22px}.stats-grid article:hover,.detail-card:hover{box-shadow:var(--shadow-md);border-color:#c7d2fe;transform:translateY(-2px)}.stats-grid span,.detail-card span{color:var(--muted);font-size:.8rem;font-weight:650;display:block}.stats-grid strong,.detail-card strong{z-index:1;color:var(--heading);letter-spacing:-.035em;margin-top:10px;font-size:1.65rem;display:block;position:relative}.section-panel,.form-panel{padding:25px}.section-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;display:flex}.section-heading p{margin-bottom:0}.table-panel{overflow:hidden}.table-scroll{overflow-x:auto}.data-table{border-collapse:collapse;width:100%}.data-table th,.data-table td{border-bottom:1px solid var(--border);text-align:left;white-space:nowrap;padding:15px 18px}.data-table th{color:#667085;text-transform:uppercase;letter-spacing:.08em;background:#f8fafc;font-size:.72rem}.data-table tbody tr:hover{background:#fafbff}.data-table tbody tr:last-child td{border-bottom:0}.data-table td small,.data-table td strong{display:block}.data-table td small{color:var(--muted);margin-top:4px}.table-link{color:var(--primary);font-weight:750}.table-link:hover{color:var(--primary-hover);text-underline-offset:3px;text-decoration:underline}.status-badge{border:1px solid #0000;border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:.72rem;font-weight:800;display:inline-flex}.status-badge:before{content:"";background:currentColor;border-radius:999px;width:6px;height:6px}.status-active{background:var(--success-soft);color:var(--success);border-color:#abefc6}.status-trial{background:var(--warning-soft);color:var(--warning);border-color:#fedf89}.status-suspended,.status-cancelled,.status-archived{background:var(--danger-soft);color:var(--danger);border-color:#fecdca}.status-past_due{color:#c2410c;background:#fff7ed;border-color:#fed7aa}.empty-state{color:var(--muted);text-align:center;padding:64px 24px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.field{gap:8px;display:grid}.field-wide{grid-column:1/-1}.field span,.admin-form label{color:#344054;font-size:.84rem;font-weight:750}.field input,.field select,.field textarea,.admin-form input,.admin-form select,.admin-form textarea{border:1px solid var(--border-strong);background:var(--surface);width:100%;min-height:43px;color:var(--foreground);border-radius:10px;outline:none;padding:11px 13px;box-shadow:0 1px 2px #10182808}.field textarea,.admin-form textarea{resize:vertical;min-height:110px}.field input::placeholder,.admin-form input::placeholder,textarea::placeholder{color:var(--muted-soft)}.field input:hover,.field select:hover,.field textarea:hover,.admin-form input:hover,.admin-form select:hover,.admin-form textarea:hover{border-color:#a5b4fc}.field input:focus,.field select:focus,.field textarea:focus,.admin-form input:focus,.admin-form select:focus,.admin-form textarea:focus{border-color:var(--primary);box-shadow:0 0 0 4px #4f46e51a}.admin-form{gap:16px;display:grid}.admin-form label{gap:7px;display:grid}.form-actions{justify-content:flex-end;gap:10px;margin-top:24px;display:flex}.form-alert{background:var(--danger-soft);color:var(--danger);border:1px solid #fecdca;border-radius:11px;margin-bottom:18px;padding:13px 14px}.detail-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:24px;display:grid}.detail-card small{color:var(--muted);margin-top:8px;display:block}.content-grid{grid-template-columns:1.3fr .7fr;gap:20px;margin-bottom:20px;display:grid}.definition-list{margin:0}.definition-list div{border-bottom:1px solid var(--border);justify-content:space-between;gap:20px;padding:14px 0;display:flex}.definition-list div:last-child{border-bottom:0}.definition-list dt{color:var(--muted)}.definition-list dd{color:var(--heading);text-align:right;margin:0;font-weight:650}.stack-form{gap:16px;display:grid}.audit-list,.tenant-list{display:grid}.audit-item,.tenant-row{border-bottom:1px solid var(--border);justify-content:space-between;gap:20px;padding:15px 0;display:flex}.audit-item:last-child,.tenant-row:last-child{border-bottom:0}.audit-item:hover,.tenant-row:hover{background:#fafbff}.audit-item>div,.tenant-row>div{gap:4px;display:grid}.audit-item span,.audit-item time,.tenant-row span{color:var(--muted);font-size:.82rem}@media (max-width:900px){.admin-layout{grid-template-columns:1fr}.admin-sidebar{border-right:0;border-bottom:1px solid var(--border);height:auto;padding:16px;position:static}.admin-brand{margin-bottom:12px}.admin-nav{grid-template-columns:repeat(2,minmax(0,1fr));max-height:280px}.admin-account{display:none}.stats-grid,.detail-grid{grid-template-columns:repeat(2,1fr)}.content-grid{grid-template-columns:1fr}}@media (max-width:620px){body{font-size:14px}.admin-page{width:min(100% - 28px,1180px);padding-top:28px}.page-header{flex-direction:column;align-items:flex-start}.admin-nav,.stats-grid,.detail-grid,.form-grid{grid-template-columns:1fr}.field-wide{grid-column:auto}.grid{grid-template-columns:1fr;margin-top:48px}.section-panel,.form-panel{padding:19px}.data-table th,.data-table td{padding:13px 14px}}
.sidebar-groups{scrollbar-width:thin;scrollbar-color:#d0d5dd transparent;gap:18px;min-height:0;padding:2px 3px 18px;display:grid;overflow-y:auto}.sidebar-group{gap:6px;display:grid}.sidebar-group-label{color:#98a2b3;letter-spacing:.11em;text-transform:uppercase;padding:0 11px;font-size:.68rem;font-weight:800}.sidebar-group-links{gap:3px;display:grid}.sidebar-link{color:#475467;border:1px solid #0000;border-radius:11px;align-items:center;gap:10px;padding:10px 11px;font-size:.9rem;font-weight:680;display:flex}.sidebar-link:hover{color:#3730a3;background:#f6f7ff;border-color:#dbe4ff;transform:translate(2px)}.sidebar-link.is-active{color:#3730a3;background:linear-gradient(135deg,#eef2ff,#f5f3ff);border-color:#c7d2fe;box-shadow:inset 3px 0 #4f46e5}.sidebar-icon{color:#667085;background:#f2f4f7;border-radius:7px;place-items:center;width:24px;height:24px;font-size:.72rem;font-weight:900;display:grid}.sidebar-link.is-active .sidebar-icon{color:#fff;background:#4f46e5;box-shadow:0 4px 10px #4f46e533}.dashboard-hero{box-shadow:var(--shadow-md);background:linear-gradient(135deg,#fffffffa,#eef2fff5);border:1px solid #dbe4ff;border-radius:24px;margin-bottom:24px;padding:28px;position:relative;overflow:hidden}.dashboard-hero:after{content:"";background:radial-gradient(circle,#4f46e52e,#0000 65%);border-radius:999px;width:260px;height:260px;position:absolute;top:-110px;right:-90px}.dashboard-hero-inner{z-index:1;justify-content:space-between;align-items:flex-end;gap:24px;display:flex;position:relative}.dashboard-actions{flex-wrap:wrap;gap:10px;display:flex}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px;display:grid}.metric-card{border:1px solid var(--border);box-shadow:var(--shadow-sm);background:#fff;border-radius:18px;padding:21px;position:relative;overflow:hidden}.metric-card strong{color:var(--heading);letter-spacing:-.04em;margin-top:9px;font-size:1.7rem;display:block}.metric-card small{color:var(--muted);margin-top:8px;display:block}.metric-card.accent{background:linear-gradient(135deg,#fff,#f5f3ff);border-color:#c7d2fe}.metric-card.success{background:linear-gradient(135deg,#fff,#ecfdf3);border-color:#abefc6}.metric-card.warning{background:linear-gradient(135deg,#fff,#fffaeb);border-color:#fedf89}.quick-links{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:24px;display:grid}.quick-link{border:1px solid var(--border);box-shadow:var(--shadow-sm);background:#fff;border-radius:16px;padding:18px}.quick-link:hover{box-shadow:var(--shadow-md);border-color:#c7d2fe;transform:translateY(-2px)}.quick-link strong{color:var(--heading);display:block}.quick-link span{color:var(--muted);margin-top:6px;font-size:.84rem;display:block}.auth-shell{grid-template-columns:minmax(0,1.15fr) minmax(380px,.85fr);align-items:stretch;min-height:100vh;display:grid}.auth-showcase{color:#fff;background:linear-gradient(145deg,#312e81,#4f46e5 52%,#0f766e);flex-direction:column;justify-content:space-between;padding:56px;display:flex;position:relative;overflow:hidden}.auth-showcase:after{content:"";border:1px solid #ffffff2e;border-radius:999px;width:430px;height:430px;position:absolute;bottom:-150px;right:-140px;box-shadow:0 0 0 70px #ffffff0d,0 0 0 140px #ffffff09}.auth-showcase>*{z-index:1;position:relative}.auth-showcase h1{color:#fff;max-width:640px;font-size:clamp(2.5rem,5vw,4.8rem)}.auth-showcase p{color:#ffffffc7;max-width:570px;font-size:1.08rem;line-height:1.75}.auth-benefits{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.auth-benefits span{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff14;border:1px solid #ffffff29;border-radius:14px;padding:14px;font-size:.86rem;font-weight:700}.auth-panel{place-items:center;padding:32px;display:grid}.auth-card{border:1px solid var(--border);width:min(440px,100%);box-shadow:var(--shadow-lg);background:#fffffff5;border-radius:24px;padding:34px}.auth-card h2{margin-bottom:8px;font-size:2rem}.auth-card>p{color:var(--muted)}.auth-form{gap:17px;margin-top:24px;display:grid}.auth-form label{color:#344054;gap:8px;font-weight:750;display:grid}.auth-form input{border:1px solid var(--border-strong);background:#fff;border-radius:11px;outline:none;width:100%;min-height:48px;padding:12px 14px}.auth-form input:focus{border-color:var(--primary);box-shadow:0 0 0 4px #4f46e51a}.auth-form button{background:linear-gradient(135deg,var(--primary),#6366f1);color:#fff;cursor:pointer;border:0;border-radius:11px;min-height:48px;font-weight:800;box-shadow:0 8px 18px #4f46e538}.auth-form button:hover{transform:translateY(-1px);box-shadow:0 10px 24px #4f46e547}.error-message{background:var(--danger-soft);color:var(--danger);border:1px solid #fecdca;border-radius:10px;padding:12px 14px}.guardian-tabs{gap:8px;padding:4px 0 12px;display:flex;overflow-x:auto}.guardian-tab{border:1px solid var(--border);color:#475467;background:#fff;border-radius:999px;flex:none;padding:10px 14px;font-weight:700}.guardian-tab.is-active{background:var(--primary-soft);color:#3730a3;border-color:#c7d2fe}.guardian-section{margin-bottom:20px}.guardian-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.guardian-card{border:1px solid var(--border);box-shadow:var(--shadow-sm);background:#fff;border-radius:16px;padding:18px}.guardian-card strong{color:var(--heading);margin-top:7px;display:block}.guardian-card p{color:var(--muted);margin:8px 0 0;line-height:1.6}.mobile-menu-button{z-index:40;border:1px solid var(--border-strong);min-height:42px;color:var(--heading);box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff0;border-radius:12px;align-items:center;gap:8px;padding:0 14px;font-weight:800;display:none;position:fixed;top:14px;left:14px}.sidebar-backdrop{z-index:45;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a61;border:0;position:fixed;inset:0}.loading-shell{width:min(1180px,100% - 56px);margin:0 auto;padding:44px 0 72px}.skeleton{background:#e9edf5;border-radius:14px;position:relative;overflow:hidden}.skeleton:after{content:"";background:linear-gradient(90deg,#0000,#ffffffb3,#0000);animation:1.4s infinite skeleton-shimmer;position:absolute;inset:0;transform:translate(-100%)}.skeleton-title{width:38%;height:42px;margin-bottom:14px}.skeleton-line{width:66%;height:16px;margin-bottom:26px}.skeleton-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.skeleton-card{height:130px}@keyframes skeleton-shimmer{to{transform:translate(100%)}}.error-state{width:min(560px,100% - 32px);box-shadow:var(--shadow-lg);text-align:center;background:#fff;border:1px solid #fecdca;border-radius:24px;margin:12vh auto;padding:34px}.error-state p{color:var(--muted)}.error-state button{margin-top:10px}.table-scroll{max-height:min(70vh,760px)}.data-table thead th{z-index:2;position:sticky;top:0}.data-table tbody tr:focus-within{background:#f5f7ff}.form-panel{scroll-margin-top:24px}.flash-message{box-shadow:var(--shadow-sm);border:1px solid;border-radius:14px;grid-template-columns:auto 1fr auto;align-items:start;gap:12px;margin-bottom:20px;padding:15px 16px;display:grid}.flash-message strong{display:block}.flash-message p{color:inherit;opacity:.82;margin:3px 0 0}.flash-message>button{color:inherit;cursor:pointer;background:0 0;border:0;font-size:1.3rem}.flash-icon{border-radius:999px;place-items:center;width:28px;height:28px;font-weight:900;display:grid}.flash-success{background:var(--success-soft);color:var(--success);border-color:#abefc6}.flash-success .flash-icon{background:#d1fadf}.flash-error{background:var(--danger-soft);color:var(--danger);border-color:#fecdca}.flash-error .flash-icon{background:#fee4e2}.flash-info{color:#3538cd;background:#eef4ff;border-color:#c7d7fe}.flash-info .flash-icon{background:#dbe4ff}.form-workspace{align-items:start}.compact-empty{padding:34px 18px}.empty-state strong{color:var(--heading);font-size:1rem;display:block}.empty-state p{max-width:520px;margin:8px auto 0}.checkbox-field{align-items:center;grid-column:auto!important;gap:10px!important;display:flex!important}.checkbox-field input{height:18px;width:18px!important;min-height:auto!important}.list-toolbar{border:1px solid var(--border);background:#f8fafc;border-radius:14px;align-items:center;gap:10px;margin-bottom:20px;padding:12px;display:flex}.search-field{flex:1;align-items:center;gap:8px;display:flex}.search-field span{color:var(--muted);font-size:1.2rem}.search-field input{background:0 0;border:0;outline:none;width:100%;min-height:42px}.student-list-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.student-card{border:1px solid var(--border);box-shadow:var(--shadow-sm);background:#fff;border-radius:16px;grid-template-columns:auto 1fr;gap:14px;padding:17px;display:grid}.student-card:hover{box-shadow:var(--shadow-md);border-color:#c7d2fe;transform:translateY(-1px)}.student-avatar{color:#3730a3;background:linear-gradient(135deg,#eef2ff,#ecfdf5);border-radius:13px;place-items:center;width:44px;height:44px;font-weight:900;display:grid}.student-card span,.student-card small{color:var(--muted);font-size:.8rem;display:block}.student-card strong{color:var(--heading);margin-top:3px;font-size:1rem;display:block}.student-card p{color:#475467;margin:6px 0}.student-card small{line-height:1.55}.pagination{border-top:1px solid var(--border);justify-content:space-between;align-items:center;gap:14px;margin-top:20px;padding-top:18px;display:flex}.pagination span{color:var(--muted);font-size:.86rem}.is-disabled{pointer-events:none;opacity:.45}@media (max-width:900px){.auth-shell{grid-template-columns:1fr}.auth-showcase{min-height:380px;padding:36px}.auth-panel{padding:24px}.metric-grid,.quick-links,.guardian-card-grid{grid-template-columns:repeat(2,1fr)}.dashboard-hero-inner{flex-direction:column;align-items:flex-start}.mobile-menu-button{display:inline-flex}.admin-layout{display:block}.admin-sidebar{z-index:50;width:min(86vw,320px);height:100vh;transition:transform .22s;position:fixed;top:0;left:0;transform:translate(-105%);box-shadow:18px 0 50px #0f172a33}.admin-sidebar.is-open{transform:translate(0)}.admin-content,.admin-main{padding-top:58px}.skeleton-grid{grid-template-columns:repeat(2,1fr)}.student-list-grid{grid-template-columns:1fr}}@media (max-width:620px){.auth-showcase{min-height:330px;padding:28px 22px}.auth-benefits{grid-template-columns:1fr}.auth-card{padding:25px}.metric-grid,.quick-links,.guardian-card-grid,.skeleton-grid{grid-template-columns:1fr}.dashboard-hero{padding:22px}.sidebar-groups{max-height:none}.sidebar-group-label{background:#fffffff5;padding-top:4px;position:sticky;top:0}.loading-shell{width:min(100% - 28px,1180px);padding-top:28px}.list-toolbar{flex-direction:column;align-items:stretch}.search-field{border:1px solid var(--border);background:#fff;border-radius:10px;min-height:42px;padding:0 10px}.pagination{flex-wrap:wrap}.pagination span{text-align:center;order:-1;width:100%}.pagination .secondary-button{flex:1}.student-card{grid-template-columns:1fr}.student-avatar{width:40px;height:40px}}
.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.toolbar-panel{padding:14px 16px}.search-toolbar,.filter-toolbar{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.search-toolbar label{flex:1;min-width:220px}.filter-toolbar label{color:#344054;gap:7px;min-width:190px;font-size:.84rem;font-weight:750;display:grid}.search-toolbar input,.filter-toolbar input,.filter-toolbar select,.inline-management-form input,.inline-management-form select{border:1px solid var(--border-strong);width:100%;min-height:42px;color:var(--foreground);background:#fff;border-radius:10px;outline:none;padding:10px 12px}.search-toolbar input:focus,.filter-toolbar input:focus,.filter-toolbar select:focus,.inline-management-form input:focus,.inline-management-form select:focus{border-color:var(--primary);box-shadow:0 0 0 4px #4f46e51a}.management-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.management-card{border:1px solid var(--border);box-shadow:var(--shadow-sm);background:#fff;border-radius:17px;gap:13px;padding:18px;display:grid}.management-card:hover{box-shadow:var(--shadow-md);border-color:#c7d2fe;transform:translateY(-1px)}.management-card p{color:var(--muted);margin:0;line-height:1.55}.management-card-head{align-items:flex-start;gap:12px;display:flex}.management-card-head>div{flex:1;min-width:0}.management-card-head strong{color:var(--heading);overflow-wrap:anywhere;display:block}.management-card-head p{overflow-wrap:anywhere;margin-top:3px;font-size:.84rem}.avatar-circle{color:#3730a3;background:linear-gradient(135deg,#eef2ff,#ecfdf5);border-radius:13px;flex:none;place-items:center;width:42px;height:42px;font-weight:900;display:grid}.inline-management-form{align-items:center;gap:9px;display:flex}.inline-management-form input,.inline-management-form select{flex:1;min-width:0}.inline-management-form .secondary-button{flex:none}.audit-timeline{display:grid}.audit-event{border-bottom:1px solid var(--border);grid-template-columns:18px 1fr;gap:12px;padding:16px 0;display:grid;position:relative}.audit-event:last-child{border-bottom:0}.audit-dot{background:var(--primary);width:10px;height:10px;box-shadow:0 0 0 5px var(--primary-soft);border-radius:999px;margin-top:6px}.audit-event-head{justify-content:space-between;gap:16px;display:flex}.audit-event-head strong{color:var(--heading)}.audit-event-head time,.audit-event p{color:var(--muted);font-size:.82rem}.audit-event p{margin:4px 0}.audit-event code{border:1px solid var(--border);color:#475467;white-space:pre-wrap;overflow-wrap:anywhere;background:#f8fafc;border-radius:10px;margin-top:9px;padding:10px 12px;font-size:.76rem;display:block}.status-pending,.status-invited{background:var(--warning-soft);color:var(--warning);border-color:#fedf89}.status-left,.status-void{color:#667085;background:#f2f4f7;border-color:#e4e7ec}.status-issued{color:#3538cd;background:#eef4ff;border-color:#c7d7fe}.status-partially_paid{background:var(--warning-soft);color:var(--warning);border-color:#fedf89}.status-paid{background:var(--success-soft);color:var(--success);border-color:#abefc6}@media (max-width:900px){.management-grid{grid-template-columns:1fr}.filter-toolbar{align-items:stretch}.filter-toolbar label{flex:1}.audit-event-head{flex-direction:column;align-items:flex-start;gap:3px}}@media (max-width:620px){.search-toolbar,.filter-toolbar,.inline-management-form{flex-direction:column;align-items:stretch}.search-toolbar label,.filter-toolbar label{width:100%;min-width:0}.search-toolbar .secondary-button,.filter-toolbar .secondary-button,.inline-management-form .secondary-button{width:100%}.management-card-head{flex-wrap:wrap}.management-card-head .status-badge{margin-left:54px}.audit-event{grid-template-columns:14px 1fr}.toolbar-panel{padding:12px}}
.danger-button{border:1px solid var(--danger);background:var(--danger);color:#fff;cursor:pointer;border-radius:10px;min-height:42px;padding:0 17px;font-weight:750}.danger-button:hover{background:#912018;border-color:#912018;transform:translateY(-1px)}button:disabled{cursor:not-allowed;opacity:.48;transform:none!important}.app-dialog{background:0 0;border:0;border-radius:20px;width:min(100% - 28px,560px);max-height:min(88vh,760px);padding:0;overflow:visible}.app-dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0f172a94}.dialog-card{border:1px solid var(--border);background:var(--surface);max-height:min(88vh,760px);box-shadow:var(--shadow-lg);border-radius:20px;padding:26px;overflow-y:auto}.dialog-card-wide{width:min(100%,660px)}.dialog-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:22px;display:flex}.dialog-heading h2{margin-bottom:7px}.dialog-heading p{color:var(--muted);margin-bottom:0}.dialog-icon{background:var(--danger-soft);width:42px;height:42px;color:var(--danger);border-radius:999px;flex:none;place-items:center;font-size:1.2rem;font-weight:900;display:grid}.dialog-close{border:1px solid var(--border);background:var(--surface-2);width:38px;height:38px;color:var(--muted);cursor:pointer;border-radius:10px;font-size:1.4rem}.dialog-actions{justify-content:flex-end;gap:10px;margin-top:24px;display:flex}.context-card{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-sm);border-radius:18px;padding:22px;display:block}.context-card:hover{box-shadow:var(--shadow-md);border-color:#a5b4fc;transform:translateY(-2px)}.context-card-head{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.context-card p{color:var(--muted);margin:8px 0 0}.context-card small{color:var(--muted)}.context-list{gap:14px;display:grid}.inline-note{background:var(--warning-soft);color:var(--warning);border:1px solid #fedf89;border-radius:10px;padding:12px 14px;font-size:.86rem}@media (max-width:620px){.dialog-card{padding:20px}.dialog-actions{flex-direction:column-reverse}.dialog-actions button{width:100%}.context-card-head{flex-direction:column}}
