:root{--teal:#18a89b;--teal-dark:#12877d;--gold:#eab71c;--ink:#0f172a;--body:#334155;--muted:#64748b;--line:#e2e8f0;--page:#f8fafc;--white:#fff;--purple:#7568dc;--coral:#ef8b78;--shadow:0 12px 34px #0f172a0f}*{box-sizing:border-box}html,body{background:var(--page);min-height:100%;color:var(--body);font-family:var(--font-geist-sans),Arial,sans-serif;margin:0}button,select{font:inherit}.admin-shell{min-height:100vh;display:flex}.admin-sidebar{border-right:1px solid var(--line);background:#fff;flex-direction:column;flex:none;width:252px;padding:28px 18px 20px;display:flex}.brand-lockup{align-items:center;gap:11px;padding:0 12px 38px;display:flex}.brand-mark{background:var(--teal);color:#fff;border-radius:12px;place-items:center;width:38px;height:38px;font-size:21px;font-weight:850;display:grid;box-shadow:0 7px 15px #18a89b42}.brand-lockup strong{color:var(--ink);letter-spacing:.11em;font-size:16px;display:block}.brand-lockup span,.profile span,.sidebar-footer span{color:var(--muted);margin-top:3px;font-size:10px;display:block}.nav-label,.section-kicker,.eyebrow{letter-spacing:.15em;color:var(--teal);margin:0;font-size:10px;font-weight:800}.nav-label{color:#94a3b8;padding:0 14px 10px}.side-nav{gap:5px;display:grid}.side-nav a{color:var(--body);border-radius:9px;align-items:center;gap:12px;padding:12px 14px;font-size:13px;font-weight:600;text-decoration:none;transition:all .2s;display:flex}.side-nav a:hover{color:var(--teal);background:#effaf8}.side-nav a.active{color:var(--teal);background:#e8f8f5;font-weight:750}.nav-icon{text-align:center;width:20px;font-size:19px}.nav-dot{background:var(--gold);border-radius:50%;width:6px;height:6px;margin-left:auto}.sidebar-footer{border:1px solid var(--line);background:#fbfdfd;border-radius:12px;align-items:center;gap:9px;margin-top:auto;padding:14px;display:flex}.sidebar-footer strong{color:var(--ink);font-size:11px;display:block}.help-icon{color:#b48700;background:#fff4d2;border-radius:8px;place-items:center;width:25px;height:25px;font-weight:800;display:grid}.arrow{color:var(--teal);margin-left:auto;font-size:18px}.admin-content{flex:1;min-width:0}.topbar{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;height:76px;padding:0 38px;display:flex}.breadcrumbs{text-transform:capitalize;align-items:center;gap:11px;font-size:12px;display:flex}.breadcrumbs span{color:#94a3b8}.breadcrumbs b{color:#cbd5e1;font-weight:400}.breadcrumbs strong{color:var(--ink)}.topbar-actions{align-items:center;gap:12px;display:flex}.icon-button{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:8px;width:34px;height:34px;font-size:21px}.icon-button:hover{color:var(--teal);background:#f1f5f9}.notification-button{position:relative}.notification-button i{background:var(--coral);border:1px solid #fff;border-radius:50%;width:6px;height:6px;position:absolute;top:5px;right:5px}.profile{border-left:1px solid var(--line);align-items:center;gap:9px;margin-left:5px;padding-left:17px;display:flex}.profile strong{color:var(--ink);font-size:12px;display:block}.avatar{border-radius:50%;place-items:center;width:34px;height:34px;font-size:11px;font-weight:800;display:grid}.avatar-teal{color:var(--teal-dark);background:#dff8f3}.chevron{margin-left:5px!important;font-size:16px!important}.menu-button{display:none}.main-canvas{max-width:1440px;margin:auto;padding:34px 40px 55px}.dashboard-page{max-width:1210px;margin:auto}.welcome-banner{color:#fff;background:linear-gradient(118deg,#117e77 0%,#18a89b 65%,#36bba8 100%);border-radius:14px;justify-content:space-between;align-items:center;min-height:165px;padding:28px 32px;display:flex;position:relative;overflow:hidden;box-shadow:0 12px 26px #18a89b30}.welcome-banner:after{content:"";border:1px solid #ffffff2e;border-radius:50%;width:260px;height:260px;position:absolute;top:-125px;right:80px;box-shadow:0 0 0 28px #ffffff0b,0 0 0 58px #ffffff08}.welcome-banner .eyebrow{color:#bff3e8}.welcome-banner h1{letter-spacing:-.04em;color:#fff;margin:10px 0 7px;font-size:27px}.welcome-banner h1 span{color:#ffe18a;font-size:20px}.welcome-banner p:last-child{color:#d7faf5;margin:0;font-size:13px}.banner-orb{text-align:center;z-index:1;background:#ffffff1a;border:1px solid #ffffff38;border-radius:50%;place-items:center;width:122px;height:122px;display:grid}.banner-orb span{color:#ffe18a;font-size:27px;display:block}.banner-orb small{font-size:11px;line-height:1.45}.section-heading{justify-content:space-between;align-items:flex-end;margin:34px 0 18px;display:flex}.section-heading h2{letter-spacing:-.03em;color:var(--ink);margin:7px 0 0;font-size:21px}select{border:1px solid var(--line);color:var(--body);background:#fff;border-radius:8px;outline:0;padding:10px 13px;font-size:12px}.stat-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.stat-card,.panel{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:12px}.stat-card{align-items:flex-start;gap:13px;min-height:112px;padding:19px;display:flex;position:relative}.stat-icon{border-radius:10px;place-items:center;width:39px;height:39px;font-size:20px;font-weight:800;display:grid}.stat-icon.teal,.action-icon.teal{color:var(--teal);background:#ddf7f2}.stat-icon.gold,.action-icon.gold{color:#b18500;background:#fff4d2}.stat-icon.purple,.action-icon.purple{color:var(--purple);background:#eeecff}.stat-icon.coral{color:var(--coral);background:#fff0ed}.stat-card p{color:var(--muted);margin:0 0 7px;font-size:11px}.stat-card strong{color:var(--ink);letter-spacing:-.04em;font-size:24px;display:block}.stat-card small{margin-top:4px;font-size:10px;font-weight:750;display:block}.stat-card small.teal{color:var(--teal)}.stat-card small.gold{color:#b18500}.stat-card small.purple{color:var(--purple)}.stat-card small.coral{color:var(--coral)}.stat-spark{color:#cbd5e1;position:absolute;bottom:18px;right:18px}.dashboard-grid,.bottom-grid{grid-template-columns:1.42fr 1fr;gap:17px;margin-top:17px;display:grid}.bottom-grid{grid-template-columns:1.42fr 1fr}.panel{padding:23px}.panel-heading{justify-content:space-between;align-items:flex-start;display:flex}.panel h3{color:var(--ink);letter-spacing:-.025em;margin:6px 0 0;font-size:16px}.more-button{color:#94a3b8;letter-spacing:2px;cursor:pointer;background:0 0;border:0}.text-link{color:var(--teal);cursor:pointer;background:0 0;border:0;font-size:11px;font-weight:750;text-decoration:none}.chart-summary{align-items:baseline;gap:10px;margin:27px 0 18px;display:flex}.chart-summary strong{letter-spacing:-.06em;color:var(--ink);font-size:31px}.chart-summary span{color:var(--muted);font-size:11px}.chart-summary b{color:var(--teal)}.bar-chart{border-bottom:1px solid var(--line);align-items:flex-end;gap:10px;height:153px;padding:0 5px;display:flex}.bar-wrap{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:8px;height:100%;display:flex}.bar{background:#d8f0ed;border-radius:5px 5px 2px 2px;width:100%;max-width:19px;transition:all .3s}.bar:hover,.bar.highlight{background:var(--teal)}.bar-wrap span{color:#94a3b8;font-size:9px}.donut-wrap{justify-content:center;align-items:center;gap:30px;padding:28px 4px 17px;display:flex}.donut{background:conic-gradient(var(--teal) 0 94.6%,#f6d77b 94.6% 98%,#edf1f5 98%);border-radius:50%;place-items:center;width:153px;height:153px;display:grid;position:relative}.donut:after{content:"";background:#fff;border-radius:50%;position:absolute;inset:19px}.donut div{z-index:1;text-align:center}.donut strong{letter-spacing:-.06em;color:var(--ink);font-size:23px;display:block}.donut span{color:var(--muted);font-size:10px}.legend{gap:13px;display:grid}.legend span{white-space:nowrap;align-items:center;gap:7px;font-size:11px;display:flex}.legend b{color:var(--ink);margin-left:8px}.dot{border-radius:50%;width:8px;height:8px}.dot.teal{background:var(--teal)}.dot.gold{background:var(--gold)}.dot.pale{background:#dce4ed}.activity-list{margin-top:20px}.activity-item{border-bottom:1px solid #f0f3f7;align-items:center;gap:12px;padding:14px 0;display:flex}.activity-item:last-child{border:0}.activity-dot{border-radius:50%;flex:none;width:9px;height:9px}.activity-dot.teal{background:var(--teal)}.activity-dot.gold{background:var(--gold)}.activity-dot.purple{background:var(--purple)}.activity-dot.coral{background:var(--coral)}.activity-item strong,.activity-item span{display:block}.activity-item strong{color:var(--ink);font-size:12px}.activity-item span,.activity-item time{color:var(--muted);margin-top:4px;font-size:10px}.activity-item time{white-space:nowrap;margin-left:auto}.actions-panel h3{margin-bottom:19px}.action-link{border-top:1px solid #f0f3f7;align-items:center;gap:11px;padding:12px 0;text-decoration:none;display:flex}.action-icon{border-radius:9px;place-items:center;width:33px;height:33px;font-size:18px;display:grid}.action-link b,.action-link small{display:block}.action-link b{color:var(--ink);font-size:11px}.action-link small{color:var(--muted);margin-top:4px;font-size:10px}.action-link em{color:var(--teal);margin-left:auto;font-size:17px;font-style:normal}@media (max-width:1050px){.stat-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid,.bottom-grid{grid-template-columns:1fr}.admin-sidebar{width:220px}.main-canvas{padding-inline:24px}}@media (max-width:700px){.admin-sidebar{z-index:10;width:260px;transition:all .25s;position:fixed;inset:0 auto 0 0;transform:translate(-100%);box-shadow:10px 0 30px #0f172a1a}.admin-sidebar.is-open{transform:translate(0)}.sidebar-backdrop{z-index:9;opacity:0;pointer-events:none;background:#0f172a66;transition:all .2s;display:block;position:fixed;inset:0}.sidebar-backdrop.is-visible{opacity:1;pointer-events:auto}.menu-button{display:block}.topbar{height:64px;padding:0 16px}.topbar-actions{gap:2px}.profile>div:not(.avatar),.profile .chevron{display:none}.profile{padding-left:7px}.breadcrumbs{font-size:11px}.main-canvas{padding:20px 15px 40px}.welcome-banner{min-height:160px;padding:24px 21px}.welcome-banner h1{font-size:22px}.banner-orb{flex:none;width:82px;height:82px}.banner-orb span{font-size:19px}.banner-orb small{font-size:9px}.stat-grid{gap:10px}.stat-card{min-height:103px;padding:14px}.stat-card strong{font-size:21px}.stat-card p{font-size:10px}.section-heading{flex-direction:column;align-items:flex-start;gap:13px;margin-top:25px}.panel{padding:17px}.bar-chart{gap:5px}.donut-wrap{gap:15px}.donut{width:125px;height:125px}.donut:after{inset:16px}.legend span{font-size:10px}}.students-page{max-width:1210px;margin:0 auto;padding:0}.students-header{justify-content:space-between;align-items:flex-end;gap:24px;margin:0 0 25px;padding:0;display:flex}.students-header h1{color:var(--ink);letter-spacing:-.045em;margin:8px 0;font-size:28px}.subtitle{color:var(--muted);margin:0;font-size:13px}.primary-button,.search-button{background:var(--teal);color:#fff;cursor:pointer;border:0;border-radius:8px;padding:11px 16px;font-weight:700;transition:all .2s;box-shadow:0 4px 10px #18a89b20}.primary-button:hover,.search-button:hover{background:var(--teal-dark);transform:translateY(-1px)}.primary-button:disabled{opacity:.55;cursor:not-allowed;transform:none}.student-card,.students-panel,.schedule-calendar{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:12px;margin-bottom:17px;padding:22px}.student-card h2,.students-panel h2{color:var(--ink);letter-spacing:-.025em;font-size:17px}.toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 17px;display:flex}.toolbar form{flex:1;gap:9px;display:flex}.toolbar input,.toolbar select,.toolbar-field input,.student-form input,.student-form select,.student-toolbar input{border:1px solid var(--line);color:var(--body);background:#fff;border-radius:8px;outline:0;padding:11px 13px;font-size:12px;transition:all .2s}.toolbar input:focus,.toolbar select:focus,.toolbar-field input:focus,.student-form input:focus,.student-form select:focus,.student-toolbar input:focus{border-color:var(--teal);box-shadow:0 0 0 3px #18a89b18}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.student-form{gap:20px;display:grid}.student-form label,.toolbar-field,.student-toolbar label{color:var(--body);gap:7px;font-size:11px;font-weight:700;display:grid}.form-actions{justify-content:flex-end;align-items:center;gap:10px;display:flex}.card-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;margin-bottom:2px;padding-bottom:16px;display:flex}.card-heading h2{margin:5px 0 0}.count-pill,.status-badge{border-radius:99px;padding:6px 10px;font-size:10px;font-weight:800}.count-pill{color:var(--teal-dark);background:#ddf7f2}.student-row{border-bottom:1px solid #eef2f6;align-items:center;gap:13px;padding:15px 0;display:flex}.student-row:last-child{border-bottom:0}.student-info{flex-direction:column;flex:1;gap:4px;display:flex}.student-info strong{color:var(--ink);font-size:12px}.student-info span,.muted{color:var(--muted);font-size:11px}.detail-button{color:var(--teal);cursor:pointer;background:0 0;border:0;padding:8px;font-size:12px;font-weight:750}.detail-button:hover{color:var(--teal-dark)}.status-active,.status-enrolled,.status-completed{color:#11745a;background:#ddf7f2}.status-inactive,.status-dropped{color:#956511;background:#fff4d2}.status-alumni{color:#62718c;background:#e8edf5}.state,.empty-state{text-align:center;color:var(--muted);padding:38px;font-size:12px}.state.error,.error{color:#c44545}.success{color:#11745a;background:#e6f8ef;border-radius:8px;padding:11px 13px;font-size:12px}.pagination{color:var(--muted);justify-content:space-between;align-items:center;padding-top:18px;font-size:11px;display:flex}.pagination button{color:var(--teal);cursor:pointer;background:0 0;border:0;font-weight:700}.pagination button:disabled{color:#b7c0d0}.profile-grid{justify-content:space-between;align-items:flex-start;gap:25px;display:flex}.profile-grid h2{color:var(--ink);margin:7px 0}.profile-grid hr{border:0;border-top:1px solid var(--line);margin:22px 0}.timeline{border-left:2px solid #d9f1ed;gap:0;margin-top:20px;margin-left:7px;display:grid}.timeline-item{gap:15px;padding:0 0 23px 20px;display:flex;position:relative}.timeline-dot{background:var(--teal);width:12px;height:12px;box-shadow:0 0 0 1px var(--teal);border:3px solid #fff;border-radius:50%;position:absolute;top:2px;left:-7px}.timeline-item h2,.timeline-item h3{color:var(--ink);margin:6px 0;font-size:14px}.schedule-calendar{grid-template-columns:repeat(7,minmax(125px,1fr));gap:10px;display:grid;overflow-x:auto}.schedule-day{border:1px solid var(--line);background:#fbfdfd;border-radius:9px;min-height:170px;padding:13px}.schedule-day h2{color:var(--ink);border-bottom:2px solid #ddf7f2;margin:0 0 13px;padding-bottom:10px;font-size:11px}.schedule-event{border-left:3px solid var(--teal);background:#e8f8f5;border-radius:6px;gap:4px;margin-bottom:8px;padding:9px;display:grid}.schedule-event strong{color:var(--teal-dark);font-size:10px}.schedule-event span,.schedule-event small{color:var(--body);font-size:9px}.student-toolbar{align-items:flex-end;gap:10px;margin-bottom:20px;display:flex}.student-toolbar button{background:var(--teal);color:#fff;cursor:pointer;border:0;border-radius:8px;padding:11px 16px;font-weight:700}.student-toolbar label{flex:1}.side-nav a:focus-visible,.primary-button:focus-visible,.detail-button:focus-visible,.icon-button:focus-visible{outline-offset:2px;outline:3px solid #eab71c80}@media (max-width:700px){.students-header{flex-direction:column;align-items:flex-start;gap:14px}.students-header .primary-button{width:100%}.form-grid{grid-template-columns:1fr}.profile-grid{flex-direction:column}.toolbar form{width:100%}.toolbar .detail-button{padding-left:0}.student-card,.students-panel{padding:17px}.schedule-calendar{grid-template-columns:repeat(7,145px);padding:12px}.student-toolbar{flex-direction:column;align-items:stretch}}:root{--success:#16845d;--success-dark:#0f6849;--danger:#d95f5a;--danger-dark:#b74743;--warning-bg:#fff6d9;--warning-ink:#8b6500;--neutral-bg:#fff;--neutral-hover:#f1f5f9}.btn-primary,.btn-success,.btn-danger,.btn-warning,.btn-secondary,.btn-ghost{cursor:pointer;border:1px solid #0000;border-radius:8px;font-weight:750;transition:background .2s,border-color .2s,color .2s,transform .2s,box-shadow .2s}.btn-primary{background:var(--teal);color:#fff;box-shadow:0 4px 10px #18a89b20}.btn-primary:hover{background:var(--teal-dark);transform:translateY(-1px)}.btn-secondary{background:var(--white);border-color:var(--line);color:var(--body)}.btn-secondary:hover{background:var(--neutral-hover);color:var(--ink);border-color:#b9c6d5}.btn-warning{background:var(--warning-bg);color:var(--warning-ink);border-color:#f1d477}.btn-warning:hover{border-color:var(--gold);background:#ffefb2}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{background:var(--danger-dark)}.btn-success{background:var(--success);color:#fff}.btn-success:hover{background:var(--success-dark)}.btn-ghost{color:var(--muted);background:0 0}.btn-ghost:hover{background:var(--neutral-hover);color:var(--teal)}.btn-primary:disabled,.btn-secondary:disabled,.btn-warning:disabled,.btn-danger:disabled,.btn-success:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.primary-button{background:var(--teal);border:1px solid var(--teal);color:#fff}.primary-button:hover{background:var(--teal-dark);border-color:var(--teal-dark)}.detail-button{background:var(--white);border:1px solid var(--line);color:var(--body);border-radius:8px;padding:10px 14px}.detail-button:hover{background:var(--neutral-hover);color:var(--ink);border-color:#b9c6d5}.search-button{background:var(--white);border:1px solid var(--teal);color:var(--teal);box-shadow:none}.search-button:hover{color:var(--teal-dark);border-color:var(--teal-dark);background:#e8f8f5}.student-toolbar button{background:var(--warning-bg);color:var(--warning-ink);border:1px solid #f1d477}.student-toolbar button:hover{border-color:var(--gold);background:#ffefb2}.pagination button,.text-link{color:var(--teal);background:0 0;border:0}.pagination button:hover,.text-link:hover{color:var(--teal-dark);text-decoration:underline}.toolbar button.primary-button{background:var(--teal);color:#fff;border-color:var(--teal)}.toolbar button.detail-button{color:var(--body);border-color:var(--line);background:#fff}.form-actions .detail-button{color:var(--body);background:#fff}button:focus-visible,a:focus-visible{outline-offset:2px;outline:3px solid #eab71c99}.students-header .primary-button{background:var(--teal)!important;border:1px solid var(--teal)!important;color:#fff!important;box-shadow:0 4px 10px #18a89b35!important}.students-header .primary-button:hover{background:var(--teal-dark)!important;border-color:var(--teal-dark)!important;color:#fff!important}#create-student-button.create-student-button{justify-content:center;align-items:center;min-height:42px;display:inline-flex;color:#fff!important;opacity:1!important;visibility:visible!important;text-shadow:none!important;background:#18a89b!important;border:1px solid #18a89b!important;font-weight:800!important;box-shadow:0 6px 14px #18a89b3d!important}#create-student-button.create-student-button:hover{color:#fff!important;background:#12877d!important;border-color:#12877d!important}:root{--line-strong:#cbd5e1;--line-soft:#e2e8f0;--line-hover:#b8c7d8;--focus-ring:#18a89b}table{border-collapse:separate;border-spacing:0;border:1px solid var(--line-strong);background:#fff;border-radius:10px;width:100%;overflow:hidden}thead{background:#f8fafc}thead tr{border-bottom:2px solid var(--line-strong)}th{color:var(--ink);text-align:left;border-bottom:2px solid var(--line-strong);font-weight:800}td,th{border-right:1px solid var(--line-soft);padding:12px 14px}td:last-child,th:last-child{border-right:0}tbody tr{border-bottom:1px solid var(--line-soft);transition:background .2s}tbody tr:last-child{border-bottom:0}tbody tr:hover{background:#f0faf8}tbody td{border-bottom:1px solid var(--line-soft)}input,select,textarea{border:1px solid var(--line-strong);color:var(--body);background:#fff;border-radius:8px}input:hover,select:hover,textarea:hover{border-color:var(--line-hover)}input:focus,select:focus,textarea:focus{border-color:var(--focus-ring);outline:0;box-shadow:0 0 0 3px #18a89b24}input:disabled,select:disabled,textarea:disabled{border-color:var(--line-strong);color:var(--muted);cursor:not-allowed;background:#f1f5f9}.student-row,.activity-item,.action-link{border-bottom-color:var(--line-strong)}.card-heading,.profile-grid hr,.schedule-day,.bar-chart{border-color:var(--line-strong)}.directory-row{grid-template-columns:58px 118px minmax(250px,1fr) auto auto;align-items:center;gap:11px;padding:12px 2px;display:grid}.directory-row .student-info{display:contents}.directory-student-id{grid-column:1;font-weight:800;color:var(--ink)!important;font-size:11px!important}.directory-row .student-info strong{color:var(--ink);white-space:nowrap;grid-column:2;font-size:12px}.directory-meta{grid-column:3;align-items:center;gap:13px;min-width:0;display:flex}.directory-meta-item{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:10px!important}.directory-meta-program{min-width:115px}.directory-row>.status{white-space:nowrap;grid-column:4}.directory-detail{white-space:nowrap;grid-column:5;padding:6px;font-size:11px}.directory-row>.status{padding:5px 8px;font-size:10px}@media (max-width:900px){.directory-row{grid-template-columns:60px minmax(110px,1fr) auto auto;gap:9px}.directory-meta{grid-area:2/2/auto/-1;gap:11px}.directory-row .student-info strong{grid-column:2}.directory-row>.status{grid-area:1/3}.directory-detail{grid-area:1/4}}@media (max-width:600px){.directory-row{flex-wrap:wrap;gap:5px 10px;padding:11px 0;display:flex}.directory-student-id,.directory-row .student-info strong{width:100%}.directory-meta{flex-wrap:wrap;gap:4px 10px;width:100%}.directory-meta-item{white-space:normal}.directory-row>.status{margin-left:auto}.directory-detail{padding-right:0}}.new-student-form{border:1px solid var(--line-strong)!important}.new-student-form .form-grid{border-bottom:1px solid var(--line-strong);padding-bottom:20px}.new-student-form label{color:var(--ink)}.new-student-form input,.new-student-form select{min-height:42px;color:var(--body)!important;background:#fff!important;border:1px solid #b8c7d8!important}.new-student-form input:hover,.new-student-form select:hover{border-color:var(--teal)!important}.new-student-form input:focus,.new-student-form select:focus{border-color:var(--teal)!important;box-shadow:0 0 0 3px #18a89b29!important}.new-student-form .checkbox-row{align-items:center;gap:8px;width:max-content;min-height:22px;line-height:1.4;display:flex}.new-student-form .checkbox-row input[type=checkbox]{accent-color:var(--teal);margin:0;padding:0;width:18px!important;min-width:18px!important;height:18px!important;min-height:18px!important;box-shadow:none!important;border:1px solid #94a3b8!important;border-radius:4px!important}.new-student-form .guardian-section>label{align-items:center;gap:8px;width:max-content;min-height:22px;line-height:1.4;display:flex}.new-student-form .guardian-section input[type=radio]{accent-color:var(--teal);margin:0;padding:0;width:18px!important;min-width:18px!important;height:18px!important;min-height:18px!important;box-shadow:none!important;border:1px solid #94a3b8!important;border-radius:50%!important}#save-student-button.save-student-button{min-height:42px;color:#fff!important;background:#18a89b!important;border:1px solid #18a89b!important;font-weight:800!important;box-shadow:0 6px 14px #18a89b3d!important}#save-student-button.save-student-button:hover{color:#fff!important;background:#12877d!important;border-color:#12877d!important}#save-student-button.save-student-button:disabled{color:#fff!important;opacity:1!important;background:#86cfc7!important;border-color:#86cfc7!important}:root{--field-border:#cbd5e1;--field-border-hover:#94a3b8;--field-focus:#18a89b;--field-ring:#18a89b2e}main input,main select,main textarea,.login-page input,.login-page select,.login-page textarea{box-sizing:border-box;width:100%;min-height:48px;font:inherit;padding:0 16px;transition:border-color .2s,box-shadow .2s,background .2s;border:1px solid var(--field-border)!important;color:var(--ink)!important;background:#fff!important;border-radius:10px!important}main input:hover,main select:hover,main textarea:hover,.login-page input:hover,.login-page select:hover,.login-page textarea:hover{border-color:var(--field-border-hover)!important}main input:focus,main select:focus,main textarea:focus,.login-page input:focus,.login-page select:focus,.login-page textarea:focus{border-color:var(--field-focus)!important;box-shadow:0 0 0 3px var(--field-ring)!important;outline:0!important}main textarea,.login-page textarea{resize:vertical;min-height:96px;padding-top:12px;padding-bottom:12px}main input:disabled,main select:disabled,main textarea:disabled,.login-page input:disabled,.login-page select:disabled,.login-page textarea:disabled{opacity:1;border-color:var(--field-border)!important;color:var(--muted)!important;background:#f8fafc!important}main .section-heading>select{width:clamp(280px,42vw,520px)}main .students-header>label{width:min(100%,360px)}main .toolbar>form{flex:1;align-items:center;gap:10px;max-width:760px;display:flex}main .toolbar>form input{flex:1}main .toolbar>select{width:min(100%,260px)}main .student-toolbar label,main .student-toolbar input{width:min(100%,680px)}main .form-grid input,main .form-grid select,main .form-grid textarea{width:100%}main .form-actions{justify-content:flex-end;gap:12px;display:flex}@media (max-width:720px){main .section-heading>select,main .students-header>label,main .toolbar>select,main .student-toolbar label,main .student-toolbar input{width:100%}main .toolbar>form{max-width:none}main .form-actions{flex-wrap:wrap}}main input,main select,.login-page input,.login-page select{min-height:40px;padding-left:13px;padding-right:13px;border-radius:9px!important}main textarea,.login-page textarea{min-height:84px;padding:10px 13px;border-radius:9px!important}@media (max-width:720px){main input,main select,.login-page input,.login-page select{min-height:42px}}.user-table{border-top:1px solid #eef2f7}.user-table-header,.user-table-row{grid-template-columns:150px minmax(220px,1fr) 110px 190px;align-items:center;gap:18px;padding:0 20px;display:grid}.user-table-header{color:#8491a3;letter-spacing:.12em;text-transform:uppercase;background:#fbfdfd;border-bottom:1px solid #eef2f7;min-height:42px;font-size:10px;font-weight:800}.user-table-row{background:#fff;border-bottom:1px solid #f1f4f7;min-height:78px;transition:background .18s}.user-table-row:last-child{border-bottom:0}.user-table-row:hover{background:#fbfefd}.user-id{color:#94a3b8;text-overflow:ellipsis;white-space:nowrap;font-family:monospace;font-size:11px;overflow:hidden}.user-name-cell{align-items:center;gap:11px;min-width:0;display:flex}.user-name-cell>span:last-child{align-items:baseline;gap:9px;min-width:0;display:flex;overflow:hidden}.user-name-cell strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.user-name-cell small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.user-name-cell small:before{content:"·";color:#cbd5e1;margin-right:9px}.user-actions{align-items:center;gap:9px;min-width:0;display:flex}.user-actions .primary-button{white-space:nowrap;padding:9px 12px;font-size:11px}.user-actions small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.compact-user-row{grid-template-columns:150px minmax(220px,1fr) 110px}.user-table .status{white-space:nowrap;justify-self:start}@media (max-width:760px){.user-table{overflow-x:auto}.user-table-header,.user-table-row{grid-template-columns:120px minmax(220px,1fr) 100px 170px;gap:10px;min-width:650px;padding-left:14px;padding-right:14px}.compact-user-row{grid-template-columns:120px minmax(220px,1fr) 100px}.user-table-header{min-height:38px}.user-table-row{min-height:70px}}.user-autocomplete{position:relative}.user-suggestions{z-index:100;background:#fff;border:1px solid #dce8e8;border-radius:11px;max-height:300px;padding:6px;position:absolute;top:calc(100% + 5px);left:0;right:0;overflow-y:auto;box-shadow:0 14px 30px #0f172a24}.user-suggestion{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;grid-template-columns:34px minmax(0,1fr) max-content;align-items:center;gap:10px;width:100%;padding:9px;display:grid}.user-suggestion:hover,.user-suggestion:focus-visible{background:#effaf8;outline:0}.user-suggestion>span:nth-child(2){gap:3px;min-width:0;display:grid}.user-suggestion strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.user-suggestion small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.user-suggestion>b{color:var(--teal-dark);white-space:nowrap;font-size:10px;font-weight:750}@media (max-width:600px){.user-suggestion{grid-template-columns:32px minmax(0,1fr)}.user-suggestion>b{display:none}}.permission-card{padding:0;position:relative;overflow:visible}.permission-selector{z-index:30;background:#fff;border-bottom:1px solid #eef2f7;border-radius:14px 14px 0 0;padding:22px 20px;position:relative}.permission-selector label{color:var(--ink);gap:8px;font-size:12px;font-weight:750;display:grid}.permission-selector select{width:100%;height:44px;font-size:13px}.permission-user-summary{background:#f8fdfc;border-bottom:1px solid #e4f2ef;align-items:center;gap:12px;padding:16px 20px;display:flex}.permission-user-summary>div{gap:3px;min-width:0;display:grid}.permission-user-summary strong{color:var(--ink);font-size:13px}.permission-user-summary small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.permission-count{color:var(--teal-dark);white-space:nowrap;background:#dff8f3;border-radius:999px;margin-left:auto;padding:7px 11px;font-size:11px;font-weight:800}.permission-editor{padding:22px 20px}.permission-editor-heading{justify-content:space-between;align-items:flex-end;margin-bottom:17px;display:flex}.permission-editor-heading h2{color:var(--ink);letter-spacing:-.03em;margin:6px 0 0;font-size:18px}.permission-groups{grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;display:grid}.permission-groups fieldset{background:#fbfdfd;border:1px solid #e4ebf0;border-radius:12px;min-width:0;margin:0;padding:14px}.permission-groups legend{color:var(--teal-dark);letter-spacing:.04em;padding:0 6px;font-size:11px;font-weight:850}.permission-option{cursor:pointer;border-bottom:1px solid #edf2f3;align-items:flex-start;gap:9px;padding:8px 0;display:flex!important}.permission-option:last-child{border-bottom:0}.permission-option input{width:16px;height:16px;min-height:16px;accent-color:var(--teal);margin:1px 0 0}.permission-option span{gap:3px;min-width:0;display:grid}.permission-option b{color:var(--body);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:750;overflow:hidden}.permission-option small{color:var(--muted);font-size:10px;line-height:1.35}.permission-actions{border-top:1px solid #eef2f7;justify-content:space-between;align-items:center;gap:14px;margin-top:20px;padding-top:17px;display:flex}.permission-actions span{color:var(--muted);font-size:11px}.permission-actions button{white-space:nowrap}@media (max-width:900px){.permission-groups{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.permission-card{overflow:visible}.permission-selector,.permission-user-summary,.permission-editor{padding-left:14px;padding-right:14px}.permission-user-summary{flex-wrap:wrap;align-items:flex-start}.permission-count{margin-left:46px}.permission-groups{grid-template-columns:1fr}.permission-actions{flex-direction:column;align-items:stretch}.permission-actions button{width:100%}}.role-table{border-top:1px solid #eef2f7}.role-table-header,.role-table-row{grid-template-columns:minmax(190px,1.2fr) minmax(180px,1.4fr) 130px 110px 150px;align-items:center;gap:18px;padding:0 20px;display:grid}.role-table-header{color:#8491a3;letter-spacing:.12em;text-transform:uppercase;background:#fbfdfd;border-bottom:1px solid #eef2f7;min-height:42px;font-size:10px;font-weight:800}.role-table-row{background:#fff;border-bottom:1px solid #f1f4f7;min-height:82px;transition:background .18s}.role-table-row:last-child{border-bottom:0}.role-table-row:hover{background:#fbfefd}.role-name-cell{align-items:center;gap:11px;min-width:0;display:flex}.role-name-cell strong{color:var(--ink);letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.role-avatar{width:34px;height:34px;color:var(--teal-dark);background:#e2f8f4;border-radius:10px;flex:none;place-items:center;font-size:12px;font-weight:850;display:grid}.role-description{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.role-stat{color:#8491a3;white-space:nowrap;font-size:11px}.role-stat b{color:var(--teal-dark);margin-right:4px;font-size:14px}.role-actions{justify-content:flex-end;align-items:center;gap:7px;display:flex}.role-actions .detail-button{min-width:54px}.danger-button{color:#c55b53!important;border-color:#f3d5d1!important}.danger-button:hover{background:#fff3f1!important;border-color:#edb7b0!important}@media (max-width:760px){.role-table{overflow-x:auto}.role-table-header,.role-table-row{grid-template-columns:170px minmax(170px,1fr) 110px 90px 130px;gap:10px;min-width:700px;padding-left:14px;padding-right:14px}.role-table-header{min-height:38px}.role-table-row{min-height:70px}}.students-page{background:#f8fafb;max-width:1400px;min-height:calc(100vh - 54px);margin:0 auto;padding:32px 36px 48px}.directory-header{align-items:flex-start;margin-bottom:28px}.directory-header h1{letter-spacing:-.5px;font-size:28px}.directory-search{align-items:center;margin-bottom:24px}.directory-search form{flex:1;align-items:center;gap:10px;max-width:820px;display:flex}.search-field,.filter-field{align-items:center;display:flex;position:relative}.search-field{flex:1}.search-field input{padding-left:40px!important}.students-icon{color:#94a3b8;pointer-events:none;width:16px;height:16px;position:absolute;left:14px}.filter-field{width:180px}.filter-field select{appearance:none;width:100%;padding-right:34px!important}.students-chevron{color:#94a3b8;pointer-events:none;width:14px;height:14px;position:absolute;right:12px}.directory-card{border-radius:14px;padding:0;overflow:hidden}.directory-card>.card-heading{padding:20px 20px 14px}.directory-list{border-top:1px solid #eef2f7}.directory-row{gap:16px;min-height:68px;padding:12px 20px}.directory-row:hover{background:#fafcfc}.directory-row .student-info{flex:1}.directory-row .student-info span{color:#94a3b8;font-size:11px}.directory-detail{align-items:center;gap:5px;display:inline-flex}.students-arrow{width:14px;height:14px}.directory-card .pagination{border-top:1px solid #eef2f7;padding:14px 20px 18px}.students-feature-hero{margin-bottom:22px}@media (max-width:720px){.students-feature-hero{margin-bottom:16px}.students-page{padding:22px 16px 36px}.directory-header{flex-direction:column;gap:18px}.directory-header .create-student-button{align-self:flex-start}.directory-search{flex-direction:column;align-items:stretch}.directory-search form{max-width:none}.filter-field{width:100%}.directory-row{flex-wrap:wrap;align-items:flex-start}.directory-row .student-info{min-width:calc(100% - 56px)}.directory-row .status{margin-left:56px}.directory-detail{margin-left:auto}.directory-card .pagination{gap:8px;padding-left:14px;padding-right:14px}}.directory-card .directory-row{gap:8px;height:auto;min-height:0;padding-top:7px;padding-bottom:7px;line-height:1.2}.directory-card .directory-row .student-info strong{line-height:1.2}.directory-card .directory-meta{gap:10px;line-height:1.15}.directory-card .directory-meta-item{line-height:1.15}.directory-card .directory-row>.status,.directory-card .directory-detail{padding-top:4px;padding-bottom:4px}@media (max-width:600px){.directory-card .directory-list{-webkit-overflow-scrolling:touch;overflow:auto hidden}.directory-card .directory-row{flex-wrap:nowrap;grid-template-columns:58px 118px minmax(250px,1fr) auto auto;align-items:center;gap:8px;min-width:680px;padding:8px 14px;display:grid}.directory-card .directory-row .student-info{min-width:0;display:contents}.directory-card .directory-row .student-info strong{grid-column:2;width:auto}.directory-card .directory-meta{flex-wrap:nowrap;grid-area:auto/3;gap:10px;width:auto}.directory-card .directory-meta-item{white-space:nowrap}.directory-card .directory-row>.status{grid-area:auto/4;margin-left:0}.directory-card .directory-detail{grid-area:auto/5;margin-left:0}.directory-card .directory-row{grid-template-columns:58px 118px 125px 155px 135px auto auto;min-width:760px}.directory-card .directory-meta{display:contents}.directory-card .directory-meta-item{white-space:nowrap;grid-area:1}.directory-card .directory-meta-program{grid-column:auto;min-width:0}.directory-card .directory-row>.status,.directory-card .directory-detail{grid-area:1}}.directory-card .directory-row{flex-wrap:nowrap;grid-template-columns:58px 118px minmax(120px,1fr) minmax(145px,1.2fr) minmax(135px,1fr) auto auto;min-width:0}.directory-card .directory-meta-item{grid-area:1;min-width:0}.directory-card .directory-row>.status,.directory-card .directory-detail{grid-area:1}@media (max-width:900px){.directory-card .directory-row{grid-template-columns:58px 118px 120px 145px 125px auto auto;min-width:680px}.directory-card .directory-meta-item{grid-area:1}.directory-card .directory-meta-program,.directory-card .directory-row>.status,.directory-card .directory-detail{grid-column:auto}}.directory-card .directory-row{grid-template-columns:58px 120px minmax(115px,1fr) 145px max-content max-content;align-items:center;column-gap:14px}.directory-card .directory-meta-item{text-overflow:ellipsis;white-space:nowrap;grid-row:1;min-width:0;overflow:hidden}.directory-card .directory-meta-program{grid-column:4;min-width:0}.directory-card .directory-row>.status{white-space:nowrap;grid-column:5;justify-self:start}.directory-card .directory-detail{white-space:nowrap;grid-column:6;justify-self:start;width:auto}@media (max-width:900px){.directory-card .directory-row{grid-template-columns:58px 118px 120px 145px max-content max-content;column-gap:12px;min-width:680px}.directory-card .directory-meta-item{grid-row:1}.directory-card .directory-meta-program{grid-column:4}.directory-card .directory-row>.status{grid-column:5}.directory-card .directory-detail{grid-column:6}}@media (max-width:600px){.directory-card .directory-row{min-width:700px;padding-left:14px;padding-right:14px}.directory-card .directory-meta-item{text-overflow:clip;overflow:visible}.directory-card .directory-meta-program{min-width:145px}}.directory-card .directory-row{white-space:nowrap;grid-auto-rows:minmax(32px,auto);grid-auto-flow:column;align-items:center;flex-wrap:nowrap!important;grid-template-columns:58px 120px minmax(115px,1fr) 145px max-content max-content!important;display:grid!important}.directory-card .directory-detail{justify-self:start;grid-area:1/7!important;margin:0!important}@media (max-width:900px){.directory-card .directory-row{column-gap:10px;grid-template-columns:58px 118px 120px 145px 135px max-content max-content!important;min-width:700px!important}.directory-card .directory-meta-item:first-child{grid-column:3!important}.directory-card .directory-meta-item:nth-child(2){grid-column:4!important}.directory-card .directory-meta-program{grid-column:5!important}.directory-card .directory-row>.status{grid-column:6!important}.directory-card .directory-detail{grid-column:7!important}}.nav-group-title{color:#5a6a7e;border-radius:9px;align-items:center;gap:10px;padding:9px 8px;font-size:13px;font-weight:600;display:flex}.nav-group.active-group>.nav-group-title{color:#0a6b66;background:#dff6f4}.nav-submenu{border-left:1px solid #d7e8e8;gap:2px;margin:3px 0 6px 38px;padding-left:12px;display:grid}.nav-submenu a{color:#7b8a9d;border-radius:7px;padding:7px 8px;font-size:11.5px;font-weight:500;line-height:1.25;text-decoration:none;display:block}.nav-submenu a:hover{color:#0f1923;background:#f1f5f9}.nav-submenu a.active{color:#0a6b66;background:#e8f8f6;font-weight:700}.nav-group .nav-icon{text-align:center;width:20px;font-size:16px}.nav-group-title{width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0}.nav-group-indicator{border-bottom:1.5px solid;border-right:1.5px solid;width:7px;height:7px;margin-left:auto;transition:transform .18s;transform:rotate(45deg)}.nav-group-indicator.is-open{margin-top:5px;transform:rotate(225deg)}.nav-submenu{opacity:0;grid-template-rows:0fr;margin-top:0;margin-bottom:0;transition:grid-template-rows .2s,opacity .2s;display:grid;overflow:hidden}.nav-submenu>*{min-height:0}.nav-submenu.is-open{opacity:1;grid-template-rows:1fr;margin-top:3px;margin-bottom:6px}.admin-sidebar{font-family:var(--font-geist-sans),system-ui,sans-serif}.side-nav{flex-direction:column;gap:6px;display:flex}.side-nav>a,.nav-group-title{box-sizing:border-box;letter-spacing:0;align-items:center;gap:10px;min-height:42px;padding:0 12px;font-size:13px;font-weight:600;line-height:1.2;display:flex}.side-nav .nav-icon,.nav-group-title .nav-icon{justify-content:center;align-items:center;width:20px;min-width:20px;font-size:15px;line-height:1;display:inline-flex}.nav-group{margin:0 8px}.nav-group-title{color:#5a6a7e;width:100%;margin:0}.nav-group-title>span:nth-child(2){white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.nav-submenu{gap:2px;margin-left:30px!important;padding-left:14px!important}.nav-submenu a{padding:8px 10px;font-size:12px;line-height:1.25}.nav-group.active-group>.nav-group-title{color:#0a6b66}.nav-label{margin-bottom:8px!important}.side-nav>a.active,.nav-group.active-group>.nav-group-title{background:#dff6f4}.nav-group{margin-bottom:0}.nav-submenu.is-open{margin-bottom:2px}.nav-group+.side-nav>a{margin-top:0}.side-nav{gap:0!important}.nav-group{margin:0 8px!important;padding:0!important}.side-nav>a{width:calc(100% - 16px)!important;margin:0 8px!important}.side-nav>a,.nav-group-title{box-sizing:border-box!important;align-items:center!important;gap:10px!important;min-height:42px!important;padding:0 12px!important;display:flex!important}.nav-group-title{width:100%!important;margin:0!important}.side-nav>a .nav-icon,.nav-group-title .nav-icon{justify-content:center!important;align-items:center!important;width:20px!important;min-width:20px!important;margin:0!important;display:inline-flex!important}.side-nav>a .nav-text,.nav-group-title .nav-text{text-align:left!important;margin:0!important;padding:0!important}.nav-submenu{margin-left:30px!important;padding-left:14px!important}.nav-submenu:not(.is-open),.nav-submenu.is-open{margin-top:0!important;margin-bottom:0!important}.nav-submenu:not(.is-open){visibility:hidden!important;opacity:0!important;border:0!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important;display:none!important}.nav-submenu.is-open{visibility:visible!important;opacity:1!important;height:auto!important;display:grid!important}.students-page .students-header .primary-button,.students-page .profile-grid .primary-button{justify-content:center;align-items:center;min-height:42px;display:inline-flex;background:var(--teal)!important;border:1px solid var(--teal)!important;color:#fff!important;box-shadow:0 5px 12px #18a89b2e!important}.students-page .students-header .primary-button:hover,.students-page .profile-grid .primary-button:hover{background:var(--teal-dark)!important;border-color:var(--teal-dark)!important;color:#fff!important}.students-page .students-header .detail-button,.students-page .profile-grid .detail-button{justify-content:center;align-items:center;min-height:42px;display:inline-flex;border:1px solid var(--line-strong)!important;color:var(--ink)!important;background:#fff!important;box-shadow:0 3px 8px #0f172a0d!important}.students-page .students-header .detail-button:hover,.students-page .profile-grid .detail-button:hover{background:var(--neutral-hover)!important;border-color:var(--teal)!important;color:var(--teal-dark)!important}.students-page .students-header .primary-button:focus-visible,.students-page .profile-grid button:focus-visible{outline-offset:3px;outline:3px solid #eab71c99}.students-page .profile-photo,.students-page .avatar{aspect-ratio:1;object-fit:cover;object-position:center;background:linear-gradient(135deg,#dff6f4,#bde9e5);border-radius:14px;flex:0 0 112px;justify-content:center;align-items:center;width:112px;height:112px;display:flex;overflow:hidden}.students-page .profile-photo{border:3px solid #fff;box-shadow:0 8px 20px #0f766e24}.students-page .profile-photo img,.students-page .avatar img{object-fit:cover;object-position:center;width:100%;height:100%;display:block}.students-page .profile-photo-fallback,.students-page .avatar{color:var(--teal-dark);font-size:34px;font-weight:800}.students-page .photo-editor{border:1px solid var(--line);background:#f8fbfb;border-radius:16px;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:22px;padding:14px;display:flex}.students-page .photo-editor .avatar{border-radius:12px;flex-basis:88px;width:88px;height:88px;font-size:28px}.students-page .photo-editor .detail-button{min-height:38px}.students-page .students-header>div:first-child>.profile-photo,.students-page .students-header>div:first-child>.profile-photo-fallback{margin-bottom:12px}.students-page .directory-row .avatar{border-radius:12px;flex-basis:52px;width:52px;height:52px;font-size:20px}.students-page .students-header>div:first-child{grid-template-columns:112px minmax(0,1fr);align-items:center;column-gap:18px;display:grid}.students-page .students-header>div:first-child>.profile-photo,.students-page .students-header>div:first-child>.profile-photo-fallback{grid-area:1/1/span 3;margin:0}.students-page .students-header>div:first-child>.eyebrow,.students-page .students-header>div:first-child>h1,.students-page .students-header>div:first-child>.subtitle{grid-column:2}.students-page .students-header>div:first-child>h1{margin:2px 0 4px}.students-page .students-header>div:first-child>.subtitle{margin:0}@media (max-width:640px){.students-page .students-header>div:first-child{grid-template-columns:88px minmax(0,1fr);column-gap:12px}.students-page .students-header>div:first-child>.profile-photo,.students-page .students-header>div:first-child>.profile-photo-fallback{flex-basis:88px;width:88px;height:88px}}.students-page .directory-header,.students-page .directory-search,.students-page .directory-card{box-sizing:border-box;width:100%}.students-page .directory-header{margin-left:0;margin-right:0}.students-page .directory-search,.students-page .directory-search form{margin-left:0;margin-right:0;padding-left:0;padding-right:0}.students-page .directory-header>div:first-child{grid-template-columns:none;max-width:none;display:block}.student-id-highlight{color:var(--teal-dark);letter-spacing:.01em;background:#e8f8f5;border:1px solid #b8e8df;border-radius:8px;align-items:center;padding:7px 11px;font-size:12px;font-weight:800;display:inline-flex;box-shadow:0 3px 8px #18a89b1a;margin-top:8px!important}.field-error{color:#c2415a;margin-top:6px;font-size:12px;font-weight:700;display:block}.field-hint{color:#718096;margin-top:6px;font-size:12px;display:block}.neutral-button{color:#475569!important;box-shadow:none!important;background:#f1f5f9!important;border:1px solid #cbd5e1!important}.neutral-button:hover{color:#1e293b!important;background:#e2e8f0!important;border-color:#94a3b8!important}:root{--sidebar-hover:#f5f8fc;--sidebar-active:#e8f8f5;--sidebar-icon-active:#c5edeb}.redesigned-sidebar{background:var(--white);border-right:1px solid var(--line);z-index:200;width:240px;min-height:100vh;padding:0 8px 16px;transition:width .25s cubic-bezier(.4,0,.2,1);position:relative;overflow:visible}.redesigned-sidebar.collapsed{width:64px}.redesigned-brand{border-bottom:1px solid var(--line);gap:10px;min-height:72px;margin-bottom:8px;padding:17px 5px 16px}.redesigned-brand .brand-mark{cursor:pointer;background:linear-gradient(145deg,var(--teal),var(--teal-dark));border:0;flex:none;width:38px;height:38px}.brand-copy{white-space:nowrap;transition:opacity .15s,transform .2s;overflow:hidden}.brand-copy strong{letter-spacing:-.02em;font-size:15px}.brand-copy span{font-size:10px}.collapsed .brand-copy,.collapsed .nav-text,.collapsed .redesigned-section,.collapsed .sidebar-copy,.collapsed .arrow,.collapsed .nav-group-indicator{opacity:0;pointer-events:none;transform:translate(-7px)}.redesigned-section{white-space:nowrap;height:32px;padding:14px 10px 5px;transition:opacity .15s}.redesigned-nav{gap:2px}.redesigned-nav>a,.redesigned-nav .nav-group-title{width:100%;min-height:45px;color:var(--body);cursor:pointer;background:0 0;border:0;border-radius:10px;align-items:center;gap:11px;padding:0 2px;font-size:13px;font-weight:600;text-decoration:none;display:flex;position:relative}.redesigned-nav>a:hover,.redesigned-nav .nav-group-title:hover{background:var(--sidebar-hover);color:var(--ink)}.redesigned-nav>a.active,.active-group>.nav-group-title{background:var(--sidebar-active);color:var(--teal-dark)}.redesigned-nav .nav-icon{border-radius:8px;flex:none;place-items:center;width:32px;height:32px;font-size:18px;display:grid}.redesigned-nav>a:hover .nav-icon,.nav-group-title:hover .nav-icon{background:#ebf0f7}.redesigned-nav>a.active .nav-icon,.active-group>.nav-group-title .nav-icon{background:var(--sidebar-icon-active)}.nav-text{white-space:nowrap;transition:opacity .15s,transform .2s;overflow:hidden}.nav-group-indicator{border-bottom:1.5px solid;border-right:1.5px solid;width:8px;height:8px;margin-left:auto;margin-right:8px;transition:all .2s;transform:rotate(45deg)translateY(-2px)}.nav-group-indicator.is-open{transform:rotate(225deg)translateY(-2px)}.nav-submenu{opacity:0;max-height:0;margin:0 0 0 8px;transition:max-height .25s,opacity .2s;overflow:hidden}.nav-submenu.is-open{opacity:1;max-height:300px}.nav-submenu a{color:#7a8ea8;white-space:nowrap;border-radius:8px;margin:1px 0;padding:8px 8px 8px 38px;font-size:12px;font-weight:600;text-decoration:none;display:block;position:relative}.nav-submenu a:before{content:"";background:#cbd5e1;border-radius:50%;width:5px;height:5px;position:absolute;top:50%;left:20px;transform:translateY(-50%)}.nav-submenu a:hover,.nav-submenu a.active{background:var(--sidebar-active);color:var(--teal-dark)}.nav-submenu a.active:before{background:var(--teal)}.collapsed .nav-submenu{opacity:0;max-height:0!important}.collapsed .redesigned-nav>a:hover:after{content:attr(data-label);background:var(--ink);color:#fff;white-space:nowrap;z-index:300;border-radius:7px;padding:6px 10px;font-size:12px;font-weight:600;position:absolute;top:50%;left:calc(100% + 14px);transform:translateY(-50%);box-shadow:0 4px 12px #0f172a26}.sidebar-toggle{border:1px solid var(--line);background:var(--white);width:22px;height:22px;color:var(--muted);cursor:pointer;z-index:20;border-radius:50%;position:absolute;top:20px;right:-11px;box-shadow:0 1px 4px #0f172a14}.sidebar-toggle span{font-size:18px;line-height:15px;transition:transform .25s;display:block}.collapsed .sidebar-toggle span{transform:rotate(180deg)}.redesigned-footer{border:0;border-top:1px solid var(--line);background:0 0;border-radius:0;margin:auto 0 0;padding:10px 5px 0}.redesigned-footer .help-icon{flex:none}.redesigned-footer .sidebar-copy{white-space:nowrap;transition:opacity .15s,transform .2s;overflow:hidden}.redesigned-footer .arrow{transition:opacity .15s}.sidebar-overlay{display:none}@media (max-width:768px){.admin-sidebar.redesigned-sidebar{min-height:100vh;box-shadow:none;padding:0 12px 16px;transition:transform .28s cubic-bezier(.4,0,.2,1);position:fixed;top:0;bottom:0;left:0;overflow-y:auto;transform:translate(-100%);width:260px!important}.admin-sidebar.redesigned-sidebar.mobile-open{transform:translate(0);box-shadow:4px 0 24px #0f172a1f}.redesigned-sidebar.collapsed{width:260px!important}.redesigned-sidebar.collapsed .brand-copy,.redesigned-sidebar.collapsed .nav-text,.redesigned-sidebar.collapsed .redesigned-section,.redesigned-sidebar.collapsed .sidebar-copy,.redesigned-sidebar.collapsed .arrow,.redesigned-sidebar.collapsed .nav-group-indicator{opacity:1;pointer-events:auto;transform:none}.redesigned-sidebar.collapsed .nav-submenu.is-open{opacity:1;max-height:300px!important}.sidebar-toggle{display:none}.sidebar-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);opacity:0;pointer-events:none;z-index:190;background:#0f172a73;transition:opacity .25s;display:block;position:fixed;inset:0}.sidebar-overlay.show{opacity:1;pointer-events:auto}.menu-button{display:block}.topbar{height:64px;padding:0 16px}.main-canvas{padding:20px 15px 40px}.breadcrumbs{font-size:11px}.profile>div:not(.avatar),.profile .chevron{display:none}.profile{padding-left:7px}.redesigned-nav>a,.redesigned-nav .nav-group-title{min-height:46px}}@media (min-width:769px){.menu-button{display:none}}.student-profile-modal{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a8c;padding:16px}.student-profile-dialog{background:#fff;border:1px solid #e2e8f0;border-radius:24px;width:min(100%,672px);max-height:calc(100vh - 32px);padding:24px;box-shadow:0 25px 70px #0f172a40}.student-profile-close{color:#94a3b8;background:#f1f5f9;border:0;width:32px;height:32px;font-size:22px;top:24px;right:24px}.student-profile-heading{gap:16px;margin-bottom:24px;padding-right:42px}.student-profile-heading img,.student-profile-avatar{border:1px solid #e2e8f0;border-radius:12px;width:64px;height:64px;font-size:22px;box-shadow:0 3px 8px #0f172a14}.student-profile-heading h2{letter-spacing:-.035em;margin:4px 0 3px;font-size:21px;font-weight:800}.student-profile-heading .eyebrow{color:#0f9f93;letter-spacing:.12em;background:#f0fdfa;border-radius:999px;margin:0;padding:4px 10px;font-size:10px;display:inline-block}.student-profile-heading span:not(.eyebrow){font-size:12px}.student-profile-grid{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:22px}.student-profile-grid .section-kicker{color:#0f9f93;letter-spacing:.12em;margin-bottom:12px;font-size:11px;font-weight:800;display:block}.student-profile-grid p{color:#475569;grid-template-columns:92px 10px minmax(0,1fr);gap:0;margin:8px 0;font-size:12px;line-height:1.45;display:grid}.student-profile-grid p:first-line{color:#64748b}.student-profile-grid p .status{display:inline-block}.student-profile-grid .status{border-radius:6px;margin-top:0;padding:4px 8px;font-size:10px}.student-profile-grid>div:nth-child(3) p{margin:0;display:block}.student-profile-grid>div:nth-child(3) p:not(:last-child){margin-bottom:7px}.student-profile-actions{border-top:1px solid #e8edf2;margin-top:0;padding-top:16px}.student-profile-actions .detail-button{border:1px solid #e2e8f0;padding:9px 14px;color:#334155!important;box-shadow:none!important;background:#fff!important}.student-profile-actions .primary-button{padding:9px 18px}@media (max-width:600px){.student-profile-dialog{border-radius:20px;padding:20px 16px}.student-profile-close{top:18px;right:16px}.student-profile-grid{grid-template-columns:1fr;gap:10px}.student-profile-grid>div:nth-child(3){grid-column:auto}.student-profile-heading h2{font-size:19px}.student-profile-actions{flex-direction:row;justify-content:stretch}.student-profile-actions button{flex:1}}.student-profile-modal{animation:.2s student-modal-fade;z-index:500!important;-webkit-backdrop-filter:blur(4px)!important;backdrop-filter:blur(4px)!important;background:#0f172a8c!important;place-items:center!important;padding:16px!important;display:grid!important;position:fixed!important;inset:0!important}.student-profile-dialog{animation:.24s cubic-bezier(.2,.8,.2,1) student-modal-rise;background:#fff!important;border:1px solid #e2e8f0!important;border-radius:24px!important;width:min(100%,672px)!important;max-height:calc(100vh - 32px)!important;padding:24px!important;position:relative!important;overflow:auto!important;box-shadow:0 25px 70px #0f172a40!important}.student-profile-close{color:#94a3b8!important;background:#f1f5f9!important;border:0!important;border-radius:50%!important;width:32px!important;height:32px!important;font-size:22px!important;position:absolute!important;top:24px!important;right:24px!important}.student-profile-close:hover{color:#475569!important;background:#e2e8f0!important;transform:none!important}.student-profile-heading{align-items:center!important;gap:16px!important;margin-bottom:24px!important;padding-right:42px!important;display:flex!important}.student-profile-heading img,.student-profile-avatar{border:1px solid #e2e8f0!important;border-radius:12px!important;flex:none!important;width:64px!important;height:64px!important;box-shadow:0 3px 8px #0f172a14!important}.student-profile-heading h2{margin:4px 0 3px!important;font-size:21px!important}.student-profile-grid{grid-template-columns:1fr 1fr!important;gap:12px!important;margin-bottom:22px!important;display:grid!important}.student-profile-grid>div{background:#f8fafcb8!important;border:1px solid #e8edf2!important;border-radius:16px!important;padding:16px!important}.student-profile-grid>div:nth-child(3){grid-column:1/-1!important}.student-profile-grid .section-kicker{color:#0f9f93!important;margin-bottom:12px!important;font-size:11px!important;display:block!important}.student-profile-grid p{color:#475569!important;margin:8px 0!important;font-size:12px!important;line-height:1.45!important}.student-profile-grid .status{border-radius:6px!important;margin-top:0!important;padding:4px 8px!important;font-size:10px!important;display:inline-block!important}.student-profile-actions{border-top:1px solid #e8edf2!important;justify-content:flex-end!important;gap:10px!important;margin-top:0!important;padding-top:16px!important;display:flex!important}.student-profile-actions .detail-button,.student-profile-actions .primary-button{border-radius:11px!important;min-height:38px!important;font-size:12px!important}.student-profile-actions .detail-button{color:#334155!important;box-shadow:none!important;background:#fff!important;border:1px solid #e2e8f0!important}@media (max-width:600px){.student-profile-dialog{border-radius:20px!important;padding:20px 16px!important}.student-profile-close{top:18px!important;right:16px!important}.student-profile-grid{grid-template-columns:1fr!important}.student-profile-grid>div:nth-child(3){grid-column:auto!important}.student-profile-actions{flex-direction:row!important}.student-profile-actions button{flex:1!important;width:auto!important}}.student-profile-dialog{border-radius:24px!important;width:min(100%,840px)!important;max-height:calc(100vh - 24px)!important;padding:44px!important}.student-profile-heading{gap:20px!important;margin-bottom:34px!important}.student-profile-heading img,.student-profile-avatar{border-radius:14px!important;width:80px!important;height:80px!important}.student-profile-heading h2{color:#07152f!important;margin:8px 0 5px!important;font-size:25px!important;line-height:1.1!important}.student-profile-heading span:not(.eyebrow){color:#50627c!important;font-size:14px!important}.student-profile-grid{gap:20px!important;margin-bottom:30px!important}.student-profile-grid>div{background:#fbfcfe!important;border-radius:20px!important;min-height:222px!important;padding:22px 20px!important}.student-profile-grid>div:nth-child(3){min-height:112px!important;padding:22px 20px!important}.student-profile-grid .section-kicker{letter-spacing:.06em!important;margin-bottom:16px!important;font-size:14px!important}.student-profile-grid p{color:#0b1730!important;grid-template-columns:124px 14px minmax(0,1fr)!important;align-items:baseline!important;margin:11px 0!important;font-size:15px!important;line-height:1.35!important;display:grid!important}.student-profile-grid>div:nth-child(3) p{vertical-align:top!important;flex-direction:column!important;gap:4px!important;width:32%!important;margin:0!important;padding-right:12px!important;display:inline-flex!important}.student-profile-grid .status{border-radius:6px!important;padding:4px 10px!important;font-size:12px!important}.student-profile-actions{gap:16px!important;padding-top:22px!important}.student-profile-actions .detail-button,.student-profile-actions .primary-button{border-radius:14px!important;min-height:42px!important;padding:10px 22px!important;font-size:14px!important}.student-profile-actions .primary-button{color:#fff!important;background:#0b9f93!important;box-shadow:0 7px 14px #0b9f932e!important}.student-profile-close{width:44px!important;height:44px!important;font-size:28px!important;top:32px!important;right:28px!important}@media (max-width:700px){.student-profile-dialog{border-radius:20px!important;padding:26px 18px!important}.student-profile-heading{margin-bottom:22px!important}.student-profile-heading img,.student-profile-avatar{width:64px!important;height:64px!important}.student-profile-heading h2{font-size:21px!important}.student-profile-grid{grid-template-columns:1fr!important;gap:12px!important}.student-profile-grid>div,.student-profile-grid>div:nth-child(3){min-height:0!important;padding:18px 16px!important}.student-profile-grid p{grid-template-columns:104px 12px minmax(0,1fr)!important;font-size:13px!important}.student-profile-grid>div:nth-child(3) p{width:100%!important;margin:0 0 10px!important;padding:0!important;display:flex!important}.student-profile-actions{gap:10px!important;padding-top:18px!important}.student-profile-actions .detail-button,.student-profile-actions .primary-button{padding:10px 12px!important;font-size:12px!important}.student-profile-close{width:36px!important;height:36px!important;font-size:23px!important;top:18px!important;right:16px!important}}.student-profile-page .profile-grid p{grid-template-columns:130px 18px minmax(0,1fr);align-items:baseline;column-gap:0;display:grid}.student-profile-page .profile-grid p>span:first-child{color:#718096;grid-column:1}.student-profile-page .profile-grid p>b{color:#718096;text-align:center;grid-column:2;font-weight:400}.student-profile-page .profile-grid p>strong{color:#0f172a;grid-column:3;min-width:0;font-weight:600}.student-profile-page .profile-grid p>strong .status{margin-top:0;display:inline-block}.student-profile-page .profile-grid{gap:16px}.student-profile-page .profile-grid>div{flex:1;min-width:0}.student-profile-page .profile-grid>div:first-child{flex:1.15}.student-profile-page .profile-grid .active-program-name{color:#0f766e!important;background:#e6fffa!important;border-radius:10px!important;margin:2px 0 18px!important;padding:11px 14px!important;font-size:16px!important;line-height:1.35!important;display:block!important}.student-profile-page .profile-grid .active-program-name strong{color:#0f766e!important;font-weight:800!important}.student-profile-page .profile-grid .program-summary{grid-template-columns:1fr 1fr;gap:28px;margin-top:16px;display:grid}.student-profile-page .profile-grid .program-summary p{grid-template-columns:102px 16px minmax(0,1fr);margin:0;font-size:13px;display:grid}.student-profile-page .profile-status{color:#0f766e!important;background:#ccfbf1!important;border-radius:7px!important;margin-top:12px!important;padding:5px 11px!important;font-weight:800!important;box-shadow:0 0 0 3px #ccfbf155!important}.student-profile-page .profile-grid .active-program-name.is-empty{color:#c2410c!important;background:#fff7ed!important;border:1px solid #fed7aa!important}.student-profile-page .profile-grid .active-program-name.is-empty strong{color:#c2410c!important}@media (max-width:700px){.student-profile-page .profile-grid .program-summary{grid-template-columns:1fr;gap:8px}.student-profile-page .profile-grid .active-program-name{font-size:14px!important}.student-profile-page .profile-grid p{grid-template-columns:112px 16px minmax(0,1fr);font-size:13px}}.student-profile-grid>div:first-child p,.student-profile-grid>div:nth-child(2) p{white-space:normal!important;text-overflow:clip!important;grid-template-columns:124px 18px minmax(0,1fr)!important;align-items:baseline!important;column-gap:0!important;display:grid!important;overflow:visible!important}.student-profile-grid>div:first-child p>span:first-child,.student-profile-grid>div:nth-child(2) p>span:first-child{color:#59708e!important;grid-column:1!important}.student-profile-grid>div:first-child p>b,.student-profile-grid>div:nth-child(2) p>b{color:#59708e!important;text-align:left!important;grid-column:2!important;font-weight:400!important}.student-profile-grid>div:first-child p>strong,.student-profile-grid>div:nth-child(2) p>strong{color:#0b1730!important;grid-column:3!important;min-width:0!important;font-weight:500!important}.student-profile-grid>div:first-child p>strong .status{display:inline-block!important}.student-profile-grid>div:nth-child(3) p{vertical-align:top!important;white-space:normal!important;flex-direction:column!important;gap:4px!important;width:32%!important;margin:0!important;padding-right:12px!important;line-height:1.45!important;display:inline-flex!important}.student-profile-grid>div:nth-child(3) p .status{display:inline-block!important}@media (max-width:700px){.student-profile-grid>div:first-child p,.student-profile-grid>div:nth-child(2) p{grid-template-columns:104px 14px minmax(0,1fr)!important}.student-profile-grid>div:nth-child(3) p{width:100%!important;margin-bottom:10px!important;display:block!important}}.directory-meta{grid-template-columns:110px 125px 175px minmax(180px,1fr);align-items:center;column-gap:14px;width:100%;min-width:0;display:grid}.directory-meta-item{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.directory-meta-program{text-overflow:clip;overflow:visible}.directory-row .student-info{min-width:0}.directory-card .directory-row{white-space:nowrap;grid-auto-rows:minmax(32px,auto);grid-auto-flow:column;align-items:center;column-gap:12px;flex-wrap:nowrap!important;grid-template-columns:58px 120px 100px 180px 135px 125px 155px minmax(135px,1fr) max-content max-content!important;min-width:0!important;display:grid!important}.directory-card .directory-row .student-info{display:contents!important}.directory-card .directory-row .student-info strong{grid-area:1/2!important}.directory-card .directory-meta{display:contents!important}.directory-card .directory-meta-program{min-width:0;grid-area:1/8!important}.directory-card .directory-row>.status{justify-self:start;grid-area:1/9!important;margin:0!important}.directory-card .directory-detail{white-space:nowrap;justify-self:start;width:auto;grid-area:1/10!important;margin:0!important}@media (max-width:900px){.directory-card .directory-row{column-gap:10px;grid-template-columns:58px 118px 100px 170px 130px 120px 145px 135px max-content max-content!important;min-width:1200px!important}}.directory-card .directory-row{grid-template-columns:24px 58px 120px 100px 180px 135px 125px 155px minmax(135px,1fr) max-content max-content max-content!important}.directory-card .directory-row>.student-select-checkbox{justify-self:start;width:14px;height:14px;margin:0;grid-area:1/1!important}.directory-card .directory-row>.status{grid-column:10!important}.directory-card .directory-edit{white-space:nowrap;justify-self:start;padding:6px 8px;grid-area:1/11!important;margin:0!important}@media (max-width:900px){.directory-card .directory-row{grid-template-columns:24px 58px 118px 100px 170px 130px 120px 145px 135px max-content max-content max-content!important;min-width:1300px!important}.directory-card .directory-row>.status{grid-column:10!important}.directory-card .directory-edit{grid-column:11!important}.directory-card .directory-detail{grid-column:12!important}}.directory-card .directory-detail{white-space:nowrap!important;flex:none!important;justify-content:center!important;align-items:center!important;gap:5px!important;width:max-content!important;min-width:76px!important;max-width:none!important;padding:6px 10px!important;display:inline-flex!important;overflow:visible!important}.directory-card .directory-detail .students-arrow{flex:none!important;width:14px!important;height:14px!important}@media (max-width:900px){.directory-card .directory-detail{width:max-content!important;min-width:76px!important}}.directory-card{overflow:hidden!important}.directory-card .directory-list{scrollbar-width:thin;width:100%;max-width:100%;overflow:auto hidden!important}.directory-card .directory-row{border-bottom:1px solid var(--line-strong)!important;align-items:stretch!important;width:max-content!important;min-width:1300px!important;padding-right:24px!important;position:relative!important}.directory-card .directory-row:last-child{border-bottom:0!important}.directory-card .directory-detail{z-index:2!important;box-sizing:border-box!important;white-space:nowrap!important;flex:none!important;justify-content:center!important;align-items:center!important;width:82px!important;min-width:82px!important;max-width:none!important;display:inline-flex!important;position:relative!important;overflow:visible!important}@media (min-width:901px){.directory-card .directory-row{width:100%!important;min-width:100%!important;padding-right:20px!important}.directory-card .directory-detail{width:82px!important;min-width:82px!important}}.profile-menu{position:relative}.profile-trigger{cursor:pointer;background:0 0;border:0}.account-menu{z-index:50;border:1px solid var(--line);background:#fff;border-radius:10px;min-width:170px;padding:6px;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 12px 28px #0f172a24}.account-menu a,.account-menu button{width:100%;color:var(--body);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:10px 12px;font-size:12px;text-decoration:none;display:block}.account-menu a:hover,.account-menu button:hover{color:var(--teal-dark);background:#e8f8f5}.account-menu button{color:#c44545}.login-page{background:#f8fafc;place-items:center;min-height:100vh;padding:28px;font-family:Inter,ui-sans-serif,system-ui,sans-serif;display:grid}.login-shell{background:#fff;border:1px solid #e2e8f0;border-radius:28px;grid-template-columns:1fr 1fr;width:min(960px,100%);display:grid;overflow:hidden;box-shadow:0 22px 60px #0f172a1f}.login-brand-panel{color:#fff;background:linear-gradient(145deg,#087f78,#159d91);flex-direction:column;justify-content:space-between;min-height:570px;padding:48px;display:flex;position:relative;overflow:hidden}.login-brand-content,.login-help{z-index:1;position:relative}.login-badge{color:#b9f2e9;letter-spacing:.12em;background:#076c67;border-radius:999px;margin-bottom:24px;padding:7px 12px;font-size:10px;font-weight:800;display:inline-block}.login-brand-panel h1{letter-spacing:-.04em;max-width:360px;margin:0;font-size:36px;line-height:1.12}.login-brand-panel p{color:#d1faf4;max-width:370px;margin:18px 0 0;font-size:13px;line-height:1.75}.login-help{color:#b9eee8!important;margin:0!important;font-size:11px!important}.login-help a,.login-footer a,.login-label-row a{color:#087f78;font-weight:700}.login-help a{color:#fff}.login-orb{filter:blur(32px);opacity:.35;background:#47c5b8;border-radius:50%;position:absolute}.login-orb-one{width:280px;height:280px;bottom:-80px;right:-80px}.login-orb-two{opacity:.18;width:180px;height:180px;top:-100px;right:90px}.login-form-panel{flex-direction:column;justify-content:center;padding:48px;display:flex}.login-kicker{color:#168f86;letter-spacing:.16em;font-size:10px;font-weight:800}.login-heading h2{color:#0f172a;margin:9px 0 5px;font-size:26px}.login-heading p,.login-footer{color:#64748b;margin:0;font-size:12px}.login-form{gap:18px;margin-top:32px;display:grid}.login-form label{color:#334155;letter-spacing:.04em;gap:8px;font-size:11px;font-weight:800;display:grid}.login-form input[type=text],.login-form input[type=password]{box-sizing:border-box;color:#0f172a;background:#f8fafc;border:1px solid #e2e8f0;border-radius:11px;outline:none;width:100%;padding:13px 14px;font:500 13px Inter,sans-serif;transition:all .2s}.login-form input:focus{background:#fff;border-color:#18a89b;box-shadow:0 0 0 4px #18a89b21}.login-label-row{justify-content:space-between;display:flex}.login-label-row a{letter-spacing:0;font-size:10px;text-decoration:none}.remember-row{grid-template-columns:auto 1fr;align-items:center;letter-spacing:0!important;gap:8px!important;font-size:11px!important;font-weight:600!important;display:flex!important}.remember-row input{accent-color:#18a89b;margin:0;padding:0;width:18px!important;min-width:18px!important;height:18px!important;min-height:18px!important;box-shadow:none!important;border:1px solid #94a3b8!important;border-radius:4px!important}.login-error{color:#c44545;margin:0;font-size:11px}.login-form button{color:#fff;cursor:pointer;background:#18a89b;border:0;border-radius:11px;padding:13px;font:700 13px Inter,sans-serif;transition:all .2s;box-shadow:0 8px 16px #18a89b33}.login-form button:hover{background:#12877d;transform:translateY(-1px)}.login-form button:disabled{cursor:wait;opacity:.65}.login-footer{text-align:center;margin-top:32px}.login-footer a{text-decoration:none}@media (max-width:700px){.login-page{padding:14px}.login-shell{border-radius:22px;grid-template-columns:1fr}.login-brand-panel{min-height:300px;padding:30px}.login-brand-panel h1{font-size:29px}.login-form-panel{padding:32px 26px}.login-help{margin-top:35px!important}}.landing-page{color:#0f172a;background:#f8fafc;min-height:100vh;font-family:Inter,ui-sans-serif,system-ui,sans-serif}.landing-container{width:min(1160px,100% - 48px);margin:auto}.landing-nav{z-index:20;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffdb;border-bottom:1px solid #e2e8f0cc;position:sticky;top:0}.landing-nav-inner{justify-content:space-between;align-items:center;gap:24px;height:78px;display:flex}.landing-brand{color:#0f172a;align-items:center;gap:11px;text-decoration:none;display:flex}.landing-logo{color:#fff;background:#11988d;border-radius:12px;place-items:center;width:40px;height:40px;font-size:20px;font-weight:900;display:grid;box-shadow:0 8px 18px #11988d38}.landing-brand b,.landing-brand small{display:block}.landing-brand b{letter-spacing:-.04em;font-size:16px}.landing-brand small{color:#11988d;letter-spacing:.14em;margin-top:3px;font-size:8px;font-weight:800}.landing-nav nav{gap:32px;display:flex}.landing-nav nav a{color:#64748b;font-size:13px;font-weight:600;text-decoration:none;transition:all .2s}.landing-nav nav a:hover{color:#11988d}.landing-button{color:#fff;background:#139c91;border-radius:12px;justify-content:center;align-items:center;gap:14px;padding:14px 23px;font-size:13px;font-weight:800;text-decoration:none;transition:all .2s;display:inline-flex;box-shadow:0 10px 22px #139c9133}.landing-button:hover{background:#0d8279;transform:translateY(-2px)}.landing-button-small{padding:11px 18px;font-size:12px}.landing-button-ghost{color:#475569;box-shadow:none;background:#fff;border:1px solid #e2e8f0}.landing-button-ghost:hover{color:#0f172a;background:#f1f5f9}.landing-hero{grid-template-columns:1fr 1fr;align-items:center;gap:80px;padding-top:94px;padding-bottom:108px;display:grid}.landing-pill,.landing-section-label{color:#087f78;letter-spacing:.15em;font-size:10px;font-weight:900;display:inline-block}.landing-pill{background:#ecfdf9;border:1px solid #bce9e3;border-radius:999px;padding:8px 12px}.landing-hero h1{letter-spacing:-.06em;max-width:560px;margin:22px 0 0;font-size:clamp(40px,5vw,62px);line-height:1.08}.landing-hero h1 em{color:#139c91;font-style:normal}.landing-hero-copy>p{color:#64748b;max-width:540px;margin:23px 0 0;font-size:16px;line-height:1.75}.landing-actions{flex-wrap:wrap;gap:13px;margin-top:31px;display:flex}.landing-preview-wrap{position:relative}.landing-glow{filter:blur(27px);background:#139c911f;border-radius:36px;position:absolute;inset:-24px}.landing-preview{background:#fff;border:1px solid #e2e8f0;border-radius:26px;padding:28px;animation:5s ease-in-out infinite landing-float;position:relative;box-shadow:0 25px 55px #0f172a1f}.landing-preview-head{border-bottom:1px solid #f1f5f9;align-items:center;gap:13px;padding-bottom:22px;display:flex}.landing-avatar{color:#475569;background:#f1f5f9;border-radius:14px;place-items:center;width:50px;height:50px;font-size:15px;font-weight:900;display:grid}.landing-preview h2{margin:0;font-size:16px}.landing-preview-head p{color:#94a3b8;margin:5px 0 0;font-size:11px}.landing-preview-head>span{color:#15803d;background:#dcfce7;border-radius:999px;margin-left:auto;padding:7px 11px;font-size:9px;font-weight:900}.landing-preview-body{gap:0;padding:18px 0;display:grid}.landing-preview-body div{border-bottom:1px solid #f8fafc;justify-content:space-between;padding:12px 0;font-size:12px;display:flex}.landing-preview-body small{color:#94a3b8}.landing-preview-body b{color:#334155}.landing-preview-body .accent{color:#139c91}.landing-preview-footer{color:#94a3b8;letter-spacing:.12em;justify-content:space-between;font-size:9px;font-weight:900;display:flex}.landing-preview-footer i{color:#139c91;font-size:17px;font-style:normal}.landing-features{background:#fff;border-top:1px solid #e2e8f0;padding:94px 0}.landing-section-heading{text-align:center}.landing-section-heading span{color:#139c91;letter-spacing:.17em;font-size:10px;font-weight:900}.landing-section-heading h2{letter-spacing:-.04em;max-width:550px;margin:13px auto 0;font-size:32px;line-height:1.18}.landing-feature-grid{grid-template-columns:repeat(3,1fr);gap:22px;margin-top:53px;display:grid}.landing-feature{background:#f8fafc;border:1px solid #e2e8f0;border-radius:19px;padding:29px;transition:all .25s}.landing-feature:hover{border-color:#bce9e3;transform:translateY(-5px);box-shadow:0 14px 30px #0f172a14}.landing-feature-icon{color:#087f78;background:#d9f7f1;border-radius:13px;place-items:center;width:46px;height:46px;margin-bottom:21px;font-size:21px;font-weight:900;display:grid}.landing-feature h3{margin:0;font-size:17px}.landing-feature p{color:#64748b;margin:11px 0 0;font-size:13px;line-height:1.7}.landing-about{background:linear-gradient(135deg,#ecfdf9,#f8fafc);padding:88px 0}.landing-about-inner{grid-template-columns:1.1fr .9fr;align-items:center;gap:70px;display:grid}.landing-about h2{letter-spacing:-.05em;max-width:600px;margin:13px 0 0;font-size:36px;line-height:1.15}.landing-about p{color:#64748b;margin:0;font-size:15px;line-height:1.8}.landing-footer{color:#94a3b8;background:#0f172a;padding:31px 0}.landing-footer-inner{justify-content:space-between;align-items:center;gap:20px;display:flex}.landing-footer b{color:#fff;font-size:13px}.landing-footer p{margin:6px 0 0;font-size:11px}.landing-footer-inner>p{margin:0}@keyframes landing-float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}@media (max-width:800px){.landing-nav nav{display:none}.landing-hero{grid-template-columns:1fr;gap:53px;padding-top:65px;padding-bottom:76px}.landing-hero h1{font-size:44px}.landing-feature-grid{grid-template-columns:1fr}.landing-about-inner{grid-template-columns:1fr;gap:22px}.landing-footer-inner{flex-direction:column;align-items:flex-start}}@media (max-width:480px){.landing-container{width:min(100% - 32px,1160px)}.landing-nav-inner{height:68px}.landing-button-small{padding:10px 13px;font-size:11px}.landing-hero h1{font-size:38px}.landing-hero-copy>p{font-size:14px}.landing-actions{flex-direction:column}.landing-button{box-sizing:border-box;width:100%}.landing-preview{padding:20px}.landing-features{padding:68px 0}.landing-section-heading h2{font-size:27px}.landing-about h2{font-size:30px}}.directory-card .directory-list{background:0 0!important}.directory-card .directory-row{background-color:#fff!important}.user-management-page .user-list{border-top:1px solid var(--line)}.user-row{border-bottom:1px solid var(--line-strong);grid-template-columns:180px minmax(0,1fr) auto;align-items:center;gap:20px;min-height:68px;padding:10px 20px;display:grid;position:relative}.user-row:last-child{border-bottom:0}.user-row>span{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.user-row strong{color:var(--ink);font-size:13px}.user-row small{color:var(--teal-dark);overflow-wrap:anywhere;grid-column:2/-1;font-size:11px}.user-management-page .directory-search{padding:0}.user-management-page .directory-search input{width:min(100%,520px)}@media (max-width:650px){.user-row{grid-template-columns:1fr auto;gap:8px;padding:13px 14px}.user-row strong{grid-area:1/1/auto/-1}.user-row>span{grid-area:2/1}.user-row button{grid-area:2/2}.user-row small{grid-column:1/-1}}main.students-page.user-management-page .directory-search{width:100%;margin:0 0 17px!important;padding:0!important}main.students-page.user-management-page .directory-search form{width:100%;margin:0!important;padding:0!important}main.students-page.user-management-page .directory-search .search-field{margin:0!important}.teacher-form{gap:18px;display:grid}.teacher-section{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:14px;padding:24px}.teacher-section-title{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:20px;padding-bottom:14px;display:flex}.teacher-section-title h2{color:var(--ink);letter-spacing:-.03em;margin:0;font-size:18px}.teacher-section .form-grid{gap:16px}.teacher-section label{color:var(--body);gap:7px;font-size:11px;font-weight:750;display:grid}.teacher-section label.field-wide{grid-column:1/-1}.teacher-section textarea{resize:vertical;width:100%;min-height:90px;padding:11px 13px}.add-button{border:1px solid var(--teal);color:var(--teal-dark);cursor:pointer;background:#e8f8f5;border-radius:8px;padding:9px 13px;font-size:12px;font-weight:800}.add-button:hover{background:#d5f4ee}.employment-add-button{margin:12px 0 4px;display:block}.repeat-card{background:#fbfefe;border:1px solid #cfe3e1;border-radius:11px;margin-top:14px;padding:17px}.repeat-card>strong{color:var(--teal-dark);margin-bottom:14px;font-size:12px;display:block}.repeat-card input[type=checkbox]{width:18px;height:18px;accent-color:var(--teal);cursor:pointer}.remove-button{color:#c44545;cursor:pointer;background:0 0;border:0;margin-top:12px;font-size:11px;font-weight:750}.remove-button:hover{text-decoration:underline}.teacher-form>.student-profile-actions{justify-content:flex-end;padding:10px 0 4px}.teacher-form-page .directory-header{margin-bottom:22px}@media (max-width:700px){.teacher-section{padding:17px}.teacher-section-title{flex-direction:column;align-items:stretch;gap:12px}.teacher-section-title .add-button{align-self:flex-start}.teacher-section .form-grid{grid-template-columns:1fr}.teacher-section label.field-wide{grid-column:auto}.teacher-form>.student-profile-actions{flex-direction:row}}.academic-page{padding-left:0;padding-right:0}.academic-page>.students-header,.academic-page>.toolbar,.academic-page>.student-card{width:100%}.academic-page>.students-header{margin-left:0!important;margin-right:0!important;display:block!important}.academic-page>.students-header>div:first-child{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;padding-left:0!important;padding-right:0!important;display:block!important}.academic-page>.students-header>div:first-child>.eyebrow,.academic-page>.students-header>div:first-child>h1,.academic-page>.students-header>div:first-child>.subtitle{margin-left:0!important;display:block!important}.academic-page>.toolbar,.academic-page>.student-card{margin-left:0}.academic-master-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:20px;display:grid}.academic-level-card{border:1px solid var(--line);min-height:355px;box-shadow:var(--shadow);background:#fff;border-radius:16px;padding:23px;position:relative;overflow:hidden}.academic-level-card.senior_high:before{background:linear-gradient(90deg,#7568dc,#a89ef8)}.academic-level-card.pre-university:before{background:linear-gradient(90deg,#eab71c,#f5d773)}.academic-card-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.academic-card-top>div:first-child{align-items:center;gap:12px;display:flex}.academic-card-icon{width:42px;height:42px;color:var(--teal-dark);background:#ddf7f2;border-radius:12px;place-items:center;font-size:18px;font-weight:850;display:grid}.senior_high .academic-card-icon{color:#6258bd;background:#eeecff}.pre-university .academic-card-icon{color:#9b7100;background:#fff4d2}.active-year{background:#f8fbfb;border-radius:10px;gap:5px;margin:27px 0 15px;padding:13px 15px;display:grid}.class-list{border-top:1px solid var(--line);gap:0;display:grid}.class-line{border-bottom:1px solid #eef2f6;justify-content:space-between;align-items:center;padding:13px 0;font-size:12px;display:flex}.class-line span{color:var(--body)}.academic-card-actions{justify-content:space-between;align-items:center;gap:10px;margin-top:18px;display:flex}.academic-card-actions .detail-button{padding:9px 13px}.country-list{flex-wrap:wrap;gap:9px;margin-top:28px;display:flex}.country-list em{color:var(--muted);font-size:12px}.academic-drawer{background:#fff;width:min(460px,100%);height:100%;padding:35px 28px;animation:.22s ease-out academic-drawer-in;position:relative;box-shadow:-12px 0 35px #0f172a2b}.drawer-close{color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:28px;line-height:1;position:absolute;top:18px;right:20px}.drawer-form{gap:18px;margin-top:28px;display:grid}.drawer-form label{color:var(--body);gap:8px;font-size:12px;font-weight:750;display:grid}.drawer-form input{width:100%}.history-list{border-top:1px solid var(--line);gap:0;margin-top:24px;display:grid}.history-item{border-bottom:1px solid var(--line);gap:5px;padding:15px 0;display:grid}.history-item strong{color:var(--ink);font-size:12px}.history-item span{color:var(--muted);font-size:10px}@keyframes academic-drawer-in{0%{transform:translate(100%)}to{transform:translate(0)}}@media (max-width:950px){.academic-master-grid{grid-template-columns:1fr 1fr}}@media (max-width:650px){.academic-master-grid{grid-template-columns:1fr}.academic-level-card{min-height:auto}.academic-drawer{padding:30px 20px}}.editor-form{gap:16px;padding-bottom:35px;display:grid}.editor-form>label,.new-year-fields label{color:var(--body);gap:7px;font-size:12px;font-weight:750;display:grid}.editor-form select,.editor-form input{width:100%}.new-year-fields{background:#f7fbfb;border:1px solid #dbe8e7;border-radius:12px;gap:12px;padding:14px;display:grid}.date-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.editor-class-header{justify-content:space-between;align-items:center;gap:12px;padding-top:5px;display:flex}.editor-class-header p{color:var(--muted);margin:4px 0 0;font-size:10px;line-height:1.4}.editor-class-list{gap:9px;display:grid}.editor-class-row input{min-width:0}.remove-class{color:#c75b5b;cursor:pointer;background:#fff0f0;border:0;border-radius:8px;width:28px;height:28px;font-size:18px}.editor-form>.primary-button{margin-top:8px}.editor-form .primary-button:disabled{opacity:.6;cursor:wait}@media (max-width:430px){.date-row{grid-template-columns:1fr}.editor-class-row{grid-template-columns:minmax(0,1fr) 65px auto 26px}.editor-class-row span{display:none}}.academic-page{background:radial-gradient(circle at 92% 2%,#e9fbf7 0,#0000 28%),#f8fafc!important;max-width:1400px!important;padding:42px 40px 64px!important}.academic-header{align-items:flex-start!important;margin-bottom:32px!important}.academic-header h1{margin:10px 0 8px!important;font-size:34px!important}.local-badge{color:#11745a;background:#effcf9;border:1px solid #bcebe3;border-radius:999px;align-items:center;gap:8px;padding:9px 13px;font-size:11px;font-weight:800;display:inline-flex}.local-badge i{background:#18a89b;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #18a89b1f}.academic-master-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.academic-level-card{background:#fff;border:1px solid #e2e8f0;border-radius:18px;min-height:352px;padding:20px;transition:transform .25s,box-shadow .25s;position:relative;overflow:hidden;box-shadow:0 15px 35px #0f172a0a}.academic-level-card:before{content:"";background:var(--teal);height:4px;position:absolute;inset:0 0 auto}.academic-level-card:hover{transform:translateY(-4px);box-shadow:0 20px 45px #0f172a14}.academic-level-card.level-1:before{background:#7568dc}.academic-level-card.level-pre:before{background:#eab71c}.academic-card-top{justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:22px;display:flex}.academic-title{align-items:center;gap:12px;display:flex}.academic-card-icon{color:#12877d;background:#ddf7f2;border-radius:11px;place-items:center;width:36px;height:36px;font-size:17px;font-weight:850;display:grid}.level-1 .academic-card-icon{color:#6458c9;background:#eeecff}.level-pre .academic-card-icon{color:#b18500;background:#fff4d2}.academic-card-top h2{color:var(--ink);letter-spacing:-.03em;margin:5px 0 0;font-size:18px}.academic-icon-button{color:#64748b;cursor:pointer;background:#f8fafc;border:0;border-radius:9px;width:31px;height:31px}.academic-icon-button:hover{color:var(--teal);background:#e8f8f5}.active-year{background:#f7fbfb;border-radius:11px;gap:7px;margin-bottom:12px;padding:14px;display:grid}.active-year span{color:#78909c;font-size:10px}.active-year strong{color:var(--ink);font-size:13px}.class-list{display:grid}.class-line{color:#475569;border-bottom:1px solid #edf2f5;justify-content:space-between;align-items:center;padding:13px 0;font-size:11px;display:flex}.class-line b{color:var(--teal-dark);font-size:10px}.academic-card-actions{justify-content:flex-end;align-items:center;margin-top:16px;display:flex}.country-list{flex-wrap:wrap;align-content:flex-start;gap:9px;min-height:170px;display:flex}.country-list span{color:#956511;background:#fffaf0;border:1px solid #f1d477;border-radius:9px;padding:8px 11px;font-size:11px;font-weight:750}.academic-drawer-backdrop{z-index:500;background:#0f172a80;justify-content:flex-end;display:flex;position:fixed;inset:0}.academic-drawer{background:#fff;width:min(470px,100%);height:100%;padding:30px;animation:.25s academic-slide;overflow:auto;box-shadow:-15px 0 40px #0f172a26}.drawer-close{float:right;color:#64748b;cursor:pointer;background:#f1f5f9;border:0;border-radius:9px;width:32px;height:32px;font-size:21px}.academic-drawer h2{color:var(--ink);margin:10px 0;font-size:23px}.drawer-copy{color:var(--muted);font-size:12px;line-height:1.6}.drawer-form,.editor-form{gap:18px;margin-top:26px;display:grid}.drawer-form label,.editor-form label{color:var(--body);gap:8px;font-size:11px;font-weight:750;display:grid}.editor-class-header{border-top:1px solid var(--line);padding-top:18px}.editor-class-header h3{color:var(--ink);margin:0;font-size:14px}.editor-class-header p{color:var(--muted);margin:5px 0 0;font-size:11px}.editor-class-row{grid-template-columns:1fr 90px auto;align-items:center;gap:8px;display:grid}.editor-class-row span{color:var(--muted);font-size:11px}@keyframes academic-slide{0%{transform:translate(100%)}to{transform:translate(0)}}@media (max-width:900px){.academic-master-grid{grid-template-columns:1fr 1fr}.academic-level-card.level-pre{grid-column:1/-1;min-height:260px}.level-pre .country-list{min-height:90px}}@media (max-width:640px){.academic-page{padding:25px 16px 40px!important}.academic-header{gap:16px!important}.academic-header h1{font-size:28px!important}.academic-master-grid{grid-template-columns:1fr}.academic-level-card.level-pre{grid-column:auto}.academic-drawer{padding:24px 20px}.local-badge{align-self:flex-start}}.history-button{color:#64748b;cursor:pointer;background:0 0;border:0;padding:8px 0;font-size:10px;font-weight:800}.history-button:hover{color:var(--teal)}.history-button span{margin-left:3px;font-size:14px}.academic-card-actions{gap:10px}.history-snapshot{background:#fbfefd;border:1px solid #e2e8f0;border-radius:14px;margin-top:24px;padding:16px}.history-badge{color:#956511;background:#fff4d2;border:1px solid #f1d477;border-radius:999px;margin-bottom:12px;padding:7px 10px;font-size:11px;font-weight:850;display:inline-flex}.history-class-list{display:grid}.history-class-row{color:#475569;border-bottom:1px solid #edf2f5;justify-content:space-between;align-items:center;padding:13px 2px;font-size:12px;display:flex}.history-class-row:last-child{border-bottom:0}.history-class-row strong{color:#64748b;font-size:11px}.database-error{color:#b42318;font-size:11px;font-weight:700}.history-snapshot{margin-top:14px}.history-class-row{border-bottom:1px solid #edf2f5;justify-content:space-between;padding:10px 0;font-size:12px;display:flex}.history-actions{border-top:1px solid #edf2f5;gap:8px;margin-top:14px;padding-top:12px;display:flex}.history-actions button{font:inherit;cursor:pointer;border:0;border-radius:12px;padding:9px 14px;font-size:11px;font-weight:800;transition:transform .2s,box-shadow .2s,background .2s}.history-actions button:hover{transform:translateY(-1px);box-shadow:0 8px 18px #1627381f}.history-actions button:focus-visible{outline-offset:2px;outline:3px solid #1a7f8440}.history-activate-button{color:#fff;background:linear-gradient(135deg,#187f84,#12666f)}.history-activate-button:hover{background:linear-gradient(135deg,#12666f,#0c535d)}.history-edit-button{color:#27545b;background:#eef4f5;border:1px solid #d9e7e8!important}.history-edit-button:hover{color:#17474f;background:#e1edef}@media (max-width:560px){.history-actions button{flex:1}}.history-meta{justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;display:flex}.history-inactive-badge{color:#8b6500;background:#fff4d2;border-radius:999px;align-items:center;padding:5px 9px;font-size:10px;font-weight:800;display:inline-flex}.history-active-badge{color:#11745a;background:#ddf7f2;border-radius:999px;align-items:center;padding:5px 9px;font-size:10px;font-weight:800;display:inline-flex}.academic-hero{justify-content:space-between;gap:20px;align-items:flex-end!important;display:flex!important}.academic-hero-mark{letter-spacing:.18em;color:#0f766e;text-align:right;font-size:10px}.academic-hero-mark strong{color:#ccfbf1;letter-spacing:-.08em;font-size:58px;line-height:.8}.academic-switcher{grid-template-columns:repeat(3,1fr);gap:10px;margin:0 0 18px;display:grid}.academic-switcher button,.academic-toolbar select,.program-add button{text-align:left;color:#52656c;cursor:pointer;background:#fff;border:1px solid #dbe7e8;border-radius:14px;padding:13px 16px;font-weight:750}.academic-switcher button.active{color:#fff;background:#0f766e;border-color:#0f766e}.academic-switcher small{opacity:.72;margin-top:4px;font-size:10px;font-weight:500;display:block}.academic-toolbar{justify-content:space-between;align-items:center;margin:18px 0;display:flex}.academic-toolbar h2,.academic-card h2{color:#173b3b;margin:5px 0;font-size:19px}.academic-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.academic-card{margin:0!important}.card-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.count-pill{color:#11745a;background:#e8f8f5;border-radius:999px;padding:7px 10px;font-size:10px;font-weight:800}.class-grid{grid-template-columns:repeat(2,1fr);gap:10px;margin-top:18px;display:grid}.class-tile{text-align:left;cursor:pointer;background:#f8fcfc;border:1px solid #e3eeee;border-radius:13px;padding:14px}.class-tile:hover{border-color:#36b6a6;transform:translateY(-2px)}.class-tile span,.section-kicker{color:#0f9b8d;letter-spacing:.12em;font-size:10px;font-weight:850}.class-tile strong{color:#173b3b;margin:8px 0;font-size:20px;display:block}.class-tile small,.roster-row small,.mini-event span{color:#87969b;font-size:10px;display:block}.history-card{color:#d7fffa;background:#123f3e!important}.history-card h2,.history-card .section-kicker{color:#b9f5ed}.history-card .muted{color:#a2c7c4}.history-icon{color:#8ee4d9;font-size:23px}.mini-timeline{margin-top:18px}.mini-event{border-top:1px solid #ffffff20;align-items:center;gap:10px;padding:13px 0;display:flex}.mini-event i{background:#55d6c5;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 5px #55d6c525}.mini-event div{flex:1}.mini-event strong{font-size:12px;display:block}.mini-event b{color:#8ee4d9;font-size:9px}.program-manager,.roster-card{margin-top:18px!important}.program-list{flex-wrap:wrap;gap:9px;margin:18px 0;display:flex}.program-list span{color:#956511;background:#fffaf0;border:1px solid #f1d477;border-radius:9px;padding:9px 11px;font-size:11px;font-weight:750}.program-list em{color:#c59a32;margin-right:7px;font-style:normal}.program-add{gap:8px;display:flex}.program-add input{border:1px solid #dbe7e8;border-radius:11px;flex:1;padding:11px 13px}.program-add button{color:#fff;background:#173b3b}.roster-table{margin-top:12px}.roster-row{border-top:1px solid #edf2f5;grid-template-columns:34px 1fr 90px 60px;align-items:center;gap:10px;padding:13px 0;display:grid}.avatar-dot{color:#11745a;background:#d7f4ef;border-radius:10px;place-items:center;width:32px;height:32px;font-weight:850;display:grid}.roster-row strong{color:#173b3b;font-size:12px;display:block}.roster-row>span{color:#52656c;font-size:11px}.roster-row b{color:#bd8b32;font-size:10px}.roster-row b.is-active{color:#0f9b8d}@media (max-width:700px){.academic-grid{grid-template-columns:1fr}.academic-hero{align-items:flex-start!important}.academic-hero-mark{display:none}.program-add{flex-direction:column}.roster-row{grid-template-columns:34px 1fr 65px}.roster-row b{display:none}}.academic-settings-button{color:#fff;cursor:pointer;background:#123f3e;border:0;border-radius:12px;padding:11px 14px;font-weight:800;box-shadow:0 10px 22px #123f3e20}.academic-settings-button:hover{background:#0f766e}.academic-settings-drawer h2{margin-top:8px}.settings-section{border-top:1px solid #e6eeee;margin-top:22px;padding-top:18px}.settings-section h3{color:#173b3b;margin:0 0 10px;font-size:12px}.settings-years,.settings-class-list{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.settings-years button,.settings-class-list span{color:#52656c;background:#f8fcfc;border:1px solid #dbe7e8;border-radius:9px;padding:9px 11px;font-size:11px;font-weight:750}.settings-years button{cursor:pointer}.settings-years button.selected{color:#11745a;background:#e8f8f5;border-color:#0f9b8d}.settings-years button span{color:#0f9b8d;margin-top:3px;font-size:9px;display:block}.settings-class-list span{align-items:center;gap:8px;display:inline-flex}.settings-class-list button{color:#b56b6b;cursor:pointer;background:0 0;border:0;font-size:15px;line-height:1}.settings-note{color:#11745a;background:#effcf9;border-radius:10px;margin-top:22px;padding:12px;font-size:11px;line-height:1.5}@media (max-width:640px){.academic-settings-button{font-size:10px}.academic-hero>div:last-child{width:100%}}.academic-grid{width:100%;max-width:none;display:block!important}.academic-grid>.academic-card{grid-column:1/-1;max-width:none;display:block;width:100%!important}.class-roster-table{width:100%;margin-top:12px}.academic-drawer-backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0f172a99;justify-content:center;align-items:center;padding:24px}.academic-drawer{border-radius:22px;width:min(560px,100%);height:auto;max-height:min(86vh,760px);padding:30px;animation:.22s ease-out academic-modal-in;overflow:auto;box-shadow:0 24px 80px #0f172a40}.academic-drawer .drawer-close{position:absolute;top:18px;right:18px}.academic-drawer h2{padding-right:36px}@keyframes academic-modal-in{0%{opacity:0;transform:translateY(16px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (max-width:650px){.academic-drawer-backdrop{padding:14px}.academic-drawer{border-radius:18px;max-height:90vh;padding:24px 20px}}.history-controls{align-items:center;gap:10px;display:flex}.history-controls select{color:#52656c;background:#fff;border:1px solid #dbe7e8;border-radius:10px;padding:8px 10px;font-weight:750}@media (max-width:640px){.history-controls{flex-direction:column;align-items:flex-end}}.history-active-button{color:#527078;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #dbe7e8;border-radius:999px;padding:8px 11px;font-size:10px;font-weight:800}.history-active-button:hover,.history-active-button.active{color:#11745a;background:#e8f8f5;border-color:#0f9b8d}.roster-row,.roster-row>div{min-width:0}.roster-row>div:nth-child(2){overflow:hidden}.roster-row>div:nth-child(2) strong,.roster-row>div:nth-child(2) small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.history-active-button{text-overflow:ellipsis;justify-self:end;max-width:100%;overflow:hidden}.history-card .roster-row{grid-template-columns:34px minmax(0,1fr) minmax(58px,90px) minmax(94px,auto)}@media (max-width:640px){.history-card .roster-row{grid-template-columns:34px minmax(0,1fr) auto;row-gap:6px}.history-card .roster-row>span{grid-column:2}.history-card .history-active-button{grid-area:1/3/span 2}.history-card .roster-row>div:nth-child(2){max-width:100%}}.class-add-row{gap:8px;margin:18px 0;display:flex}.class-add-row input{border:1px solid #dbe7e8;border-radius:11px;flex:1;min-width:0;padding:11px 13px}.class-add-row button,.class-actions button{color:#fff;cursor:pointer;background:#173b3b;border:1px solid #dbe7e8;border-radius:9px;padding:9px 11px;font-size:10px;font-weight:800}.class-add-row .cancel-button{color:#52656c;background:#fff}.class-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.class-actions button{color:#11745a;background:#fff;padding:6px 8px}.class-actions button:last-child{color:#b56b6b}@media (max-width:640px){.class-add-row{flex-wrap:wrap}.class-add-row input{flex-basis:100%}.class-actions{flex-wrap:wrap}.class-actions b{display:none}}.class-roster-table .class-roster-row{grid-template-columns:38px minmax(0,1fr) minmax(120px,auto) auto auto;column-gap:14px;min-height:58px;padding:12px 0}.class-roster-row>span{white-space:normal;text-align:left;color:#52656c;font-size:10px;line-height:1.35}.class-roster-row>b.is-active{white-space:nowrap;justify-self:end}.class-roster-row>.detail-button{color:#0f766e;cursor:pointer;background:#f1fbf9;border:1px solid #cfe7e3;border-radius:9px;justify-self:end;min-width:58px;padding:8px 11px;font-size:11px;font-weight:800;transition:background .18s,transform .18s}.class-roster-row>.detail-button:hover{background:#d9f5ef;transform:translateY(-1px)}.class-roster-row .class-edit-fields{grid-template-columns:minmax(90px,.65fr) minmax(150px,1fr);gap:8px;min-width:0;display:grid}.class-roster-row .class-edit-fields input{color:#173b3b;background:#fbfffe;border:1px solid #bfe3de;border-radius:9px;width:100%;min-width:0;padding:9px 10px;font-size:11px}.class-roster-row .class-edit-fields input:focus{outline-offset:1px;outline:2px solid #9de3d8}.class-roster-row .class-edit-actions{white-space:nowrap;justify-content:flex-end;gap:6px;display:flex}.class-roster-row .class-edit-actions button{color:#fff;cursor:pointer;background:#0f766e;border:1px solid #cfe7e3;border-radius:9px;padding:8px 10px;font-size:10px;font-weight:800}.class-roster-row .class-edit-actions button+button{color:#52656c;background:#fff}.class-roster-row .class-edit-actions button:disabled{opacity:.6;cursor:wait}@media (max-width:720px){.class-roster-table .class-roster-row{grid-template-columns:34px minmax(0,1fr) auto;row-gap:9px}.class-roster-row>span{text-align:left;grid-column:2}.class-roster-row>b.is-active,.class-roster-row>.detail-button{grid-area:1/3/span 2;align-self:center}.class-roster-row .class-edit-fields{grid-area:2/2/auto/span 2;grid-template-columns:1fr 1fr}.class-roster-row .class-edit-actions{grid-column:2/span 2;justify-content:flex-start}.class-add-row{grid-template-columns:1fr 1fr;gap:8px!important;display:grid!important}.class-add-row button{grid-column:1/-1;width:100%}}.registration-summary-card{justify-content:space-between;align-items:center;gap:24px;padding:28px;display:flex}.registration-summary-copy{max-width:650px}.registration-summary-copy h2{color:var(--ink);margin:7px 0 5px;font-size:21px}.registration-summary-copy p{color:var(--muted);margin:0;font-size:13px;line-height:1.6}.registration-modal-backdrop{z-index:700;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#0f172a99;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.registration-modal{background:#fff;border:1px solid #fffa;border-radius:24px;width:min(760px,100%);max-height:90vh;padding:32px;animation:.2s ease-out registration-modal-in;position:relative;overflow:auto;box-shadow:0 28px 90px #0f172a40}.registration-modal-close{color:#64748b;cursor:pointer;background:#f1f5f9;border:0;border-radius:10px;width:34px;height:34px;font-size:23px;position:absolute;top:18px;right:18px}.registration-modal-heading{margin-bottom:22px;padding-right:40px}.registration-modal-heading h2{color:var(--ink);margin:7px 0;font-size:24px}.registration-modal-heading p{color:var(--muted);margin:0;font-size:13px}.registration-modal-actions{grid-column:1/-1;justify-content:flex-end;gap:10px;margin-top:8px;display:flex}@keyframes registration-modal-in{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (max-width:650px){.academic-page{padding:18px 12px 34px}.academic-page .academic-hero{padding:22px 18px}.academic-page .academic-hero h1{font-size:30px;line-height:1.05}.academic-page .academic-grid{gap:14px}.registration-summary-card{flex-direction:column;align-items:stretch;gap:18px;padding:20px}.registration-summary-copy h2{font-size:19px;line-height:1.25}.registration-summary-card .primary-button{width:100%}.registration-summary-card+.roster-card{padding:18px 14px}.registration-summary-card+.roster-card .card-heading{flex-direction:column;align-items:flex-start;gap:12px}.registration-summary-card+.roster-card .card-heading h2{font-size:18px;line-height:1.25}.registration-summary-card+.roster-card .count-pill{align-self:flex-start}.registration-summary-card+.roster-card .roster-table{overflow:visible}.registration-summary-card+.roster-card .roster-row{grid-template-columns:34px minmax(0,1fr);align-items:flex-start;gap:10px;padding:15px 4px;display:grid}.registration-summary-card+.roster-card .roster-row>div:nth-child(2){min-width:0}.registration-summary-card+.roster-card .roster-row>div:nth-child(2) strong,.registration-summary-card+.roster-card .roster-row>div:nth-child(2) small{overflow-wrap:anywhere;display:block}.registration-summary-card+.roster-card .roster-row>span{grid-column:2;font-size:13px}.registration-summary-card+.roster-card .roster-row>select{grid-column:2;width:100%;min-width:0}.registration-modal-backdrop{align-items:end;padding:8px}.registration-modal{border-radius:20px;width:100%;max-height:calc(100dvh - 16px);padding:24px 16px 18px}.registration-modal-heading{margin-bottom:18px;padding-right:34px}.registration-modal-heading h2{font-size:21px;line-height:1.2}.registration-modal-heading p{line-height:1.5}.registration-modal .form-grid{grid-template-columns:1fr;gap:14px}.registration-modal .form-span-full{grid-column:auto}.registration-modal input,.registration-modal select,.registration-modal textarea{box-sizing:border-box;width:100%;min-width:0}.registration-modal textarea{min-height:100px}.registration-modal-actions{flex-direction:column-reverse;gap:8px}.registration-modal-actions button{width:100%}}@media (max-width:360px){.academic-page .academic-hero h1{font-size:26px}.registration-modal{padding-left:13px;padding-right:13px}.registration-summary-card+.roster-card .roster-row{grid-template-columns:28px minmax(0,1fr);gap:8px}}.registration-summary-card,.registration-summary-card+.roster-card{box-sizing:border-box;width:100%}.registration-summary-card{min-height:132px}.registration-summary-copy{flex:1;min-width:0}.registration-summary-card>.primary-button{flex:none;min-width:166px}.registration-summary-card+.roster-card .card-heading{align-items:center}.registration-summary-card+.roster-card .roster-table{width:100%;overflow:visible}.registration-summary-card+.roster-card .roster-row{grid-template-columns:42px minmax(240px,1fr) minmax(125px,auto) 136px;column-gap:20px;min-height:76px;padding:16px 20px}.registration-summary-card+.roster-card .roster-row>div:nth-child(2){min-width:0}.registration-summary-card+.roster-card .roster-row>div:nth-child(2) strong,.registration-summary-card+.roster-card .roster-row>div:nth-child(2) small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.registration-summary-card+.roster-card .roster-row>span{white-space:nowrap;color:#334155;justify-self:end;font-weight:700}.registration-summary-card+.roster-card .roster-row>select{width:136px;min-width:0}.registration-modal{width:min(820px,100vw - 64px);padding:36px}.registration-modal-heading{max-width:650px}.registration-modal .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.registration-modal .form-grid label{min-width:0}.registration-modal .form-grid input,.registration-modal .form-grid select,.registration-modal .form-grid textarea{box-sizing:border-box;width:100%}.registration-modal .form-span-full{grid-column:1/-1}.registration-modal-actions{padding-top:4px}.registration-modal-actions .primary-button,.registration-modal-actions .detail-button{min-width:132px}.generate-link-page{max-width:1180px;margin:0 auto;padding-bottom:48px}.generate-link-page .academic-hero{margin-bottom:24px}.generate-link-card{background:#fffffff0;border:1px solid #94a3b82e;overflow:hidden;box-shadow:0 24px 70px #0f172a1a;padding:0!important}.wizard-steps{background:linear-gradient(135deg,#f8fbff,#f3f6fb);border-bottom:1px solid #e8edf4;grid-template-columns:repeat(3,1fr);gap:0;padding:22px 30px;display:grid}.wizard-step{color:#94a3b8;align-items:center;gap:12px;font-size:.86rem;font-weight:600;display:flex;position:relative}.wizard-step:not(:last-child):after{content:"";z-index:0;background:#d8e0eb;height:1px;position:absolute;top:17px;left:40px;right:25px}.wizard-step span{color:#718096;z-index:1;background:#e8edf4;border:4px solid #f6f9fc;border-radius:50%;place-items:center;width:34px;height:34px;font-weight:800;display:grid}.wizard-step.active,.wizard-step.complete{color:#1d4ed8}.wizard-step.active span,.wizard-step.complete span{color:#fff;background:#2563eb;box-shadow:0 5px 15px #2563eb40}.wizard-panel{max-width:760px;margin:0 auto;padding:44px 42px 48px}.wizard-panel h2{color:#172033;letter-spacing:-.02em;margin:0 0 28px;font-size:1.55rem}.wizard-panel label{color:#334155;gap:9px;margin-bottom:20px;font-size:.82rem;font-weight:750;display:grid}.wizard-panel input,.wizard-panel select{color:#172033;width:100%;height:48px;font:inherit;background:#fff;border:1px solid #d9e2ee;border-radius:12px;outline:none;padding:0 14px;transition:border-color .2s,box-shadow .2s}.wizard-panel input:focus,.wizard-panel select:focus{border-color:#4f86f7;box-shadow:0 0 0 4px #4f86f71f}.choice-grid{grid-template-columns:1fr 1fr;gap:14px;margin:26px 0;display:grid}.choice-card{text-align:left;cursor:pointer;background:#fbfdff;border:1px solid #dce5f0;border-radius:16px;gap:8px;min-height:112px;padding:20px;transition:all .2s;display:grid}.choice-card:hover{border-color:#8bb0f5;transform:translateY(-2px);box-shadow:0 10px 24px #1f529614}.choice-card strong{color:#172033;font-size:1rem}.choice-card span{color:#64748b;font-size:.82rem;line-height:1.5}.choice-card.selected{background:#eff6ff;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61f}.student-search{margin-top:10px;position:relative}.search-results{background:#fff;border:1px solid #dce5f0;border-radius:14px;gap:8px;margin-top:-10px;margin-bottom:18px;padding:8px;display:grid;box-shadow:0 14px 30px #0f172a17}.search-result{text-align:left;cursor:pointer;background:#f8fafc;border:0;border-radius:10px;gap:4px;padding:12px;display:grid}.search-result:hover,.search-result.selected{background:#eaf2ff}.search-result strong{color:#1e293b}.search-result span,.selected-student span{color:#64748b;font-size:.78rem}.selected-student{background:#f1f7ff;border:1px solid #bbd4ff;border-radius:12px;gap:5px;margin:0 0 24px;padding:14px;display:grid}.primary-button,.secondary-button{height:46px;font:inherit;cursor:pointer;border:0;border-radius:11px;padding:0 20px;font-weight:750;transition:all .2s}.primary-button{color:#fff;background:linear-gradient(135deg,#2563eb,#4f46e5);box-shadow:0 8px 18px #2563eb38}.primary-button:hover{transform:translateY(-1px);box-shadow:0 12px 24px #2563eb4d}.secondary-button{color:#334155;background:#eef2f7}.secondary-button:hover{background:#e2e8f0}.confirmation-card,.student-summary,.generated-summary{border-radius:16px;margin-bottom:16px;padding:20px}.confirmation-card{color:#fff;background:linear-gradient(135deg,#172554,#312e81)}.confirmation-card h3{margin:7px 0;font-size:1.35rem}.confirmation-card p{color:#c7d2fe;margin:0 0 16px}.confirmation-card strong{font-size:1.25rem}.confirmation-kicker,.student-summary span{text-transform:uppercase;letter-spacing:.1em;color:#93c5fd;font-size:.72rem;font-weight:800}.student-summary{background:#f8fafc;border:1px solid #e1e8f1}.student-summary strong{color:#172033;margin:6px 0;display:block}.student-summary p{color:#64748b;margin:0;font-size:.85rem}.wizard-actions{justify-content:space-between;gap:12px;margin-top:28px;display:flex}.success-panel{text-align:center}.success-icon{color:#15803d;background:#dcfce7;border-radius:50%;place-items:center;width:58px;height:58px;margin:0 auto 18px;font-size:1.8rem;font-weight:800;display:grid}.success-panel>p{color:#64748b}.generated-summary{text-align:left;background:#f8fafc;border:1px solid #e1e8f1;gap:7px;margin:26px 0;display:grid}.generated-summary strong{color:#1d4ed8;font-size:1.2rem}.generated-summary span{color:#526175;font-size:.86rem}.link-box{gap:10px;margin-bottom:22px;display:flex}.link-box input{color:#475569;background:#f8fafc;flex:1;min-width:0}.state.error{color:#b42318;background:#fff1f2;border:1px solid #fecdd3;border-radius:10px;margin-top:18px;padding:12px 14px}@media (max-width:700px){.generate-link-page{padding:16px}.wizard-steps{gap:8px;padding:16px}.wizard-step{justify-content:center;font-size:0}.wizard-step:not(:last-child):after{left:50%;right:-15px}.wizard-panel{padding:30px 20px}.choice-grid{grid-template-columns:1fr}.wizard-actions,.link-box{flex-direction:column}.link-box .primary-button{width:100%}}.generate-link-page .wizard-step{isolation:isolate;z-index:1}.generate-link-page .wizard-step span{z-index:2;background:#e8edf4;border-color:#f8fbff;flex:0 0 34px;position:relative}.generate-link-page .wizard-step.active span,.generate-link-page .wizard-step.complete span{background:#2563eb}.generate-link-page .wizard-step strong{z-index:2;white-space:nowrap;background:#f8fbff;padding:0 8px;position:relative}.generate-link-page .wizard-step:not(:last-child):after{z-index:0;background:#cbd5e1;top:17px;left:42px;right:20px}.generate-link-page .wizard-step.complete:not(:last-child):after{background:#93c5fd}.public-registration{background:radial-gradient(circle at 12% 0,#dff8f3 0,#0000 34%),linear-gradient(145deg,#f8fafc 0%,#eef7f6 100%);justify-content:center;align-items:flex-start;min-height:100vh;padding:clamp(24px,6vw,76px) 18px;display:flex}.public-registration-card{background:#fffffff5;border:1px solid #cbd5e1e6;border-radius:24px;width:min(100%,760px);padding:clamp(24px,5vw,46px);position:relative;overflow:hidden;box-shadow:0 24px 70px #0f172a1f}.submitted-registration-details{text-align:left;background:#ffffffa6;border:1px solid #b9ead7;border-radius:12px;gap:10px;margin:20px 0;padding:16px;display:grid}.submitted-registration-details p{justify-content:space-between;gap:16px;display:flex;margin:0!important}.submitted-registration-details span{color:#52706a}.submitted-registration-details strong{text-align:right;color:var(--success-dark)}.public-registration-card .eyebrow{margin-bottom:12px}.public-registration-card h1{color:var(--ink);letter-spacing:-.055em;margin:0;font-size:clamp(28px,4vw,40px);line-height:1.08}.public-form{gap:18px;display:grid}.public-form label{color:#475569;gap:8px;font-size:11px;font-weight:750;display:grid}.public-form input,.public-form select{width:100%;min-height:46px;color:var(--ink);background:#fff;border:1px solid #cbd5e1;border-radius:10px;padding:12px 14px;font-size:13px}.two-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.public-form .primary-button{border-radius:11px;width:100%;min-height:48px;margin-top:5px;font-size:13px}.public-registration .success-panel{color:var(--success-dark);background:#e9faf3;border:1px solid #b9ead7;border-radius:14px;padding:25px}.public-registration .success-panel h2{color:var(--success-dark);margin:0 0 8px;font-size:20px}.public-registration .success-panel p{margin:0 0 8px;font-size:13px}.public-registration .whatsapp-confirmation-button{justify-content:center;align-items:center;max-width:360px;margin:18px auto 0;text-decoration:none;display:flex}.public-registration>.public-registration-card>p:not(.eyebrow){color:var(--muted)}.public-registration .state.error{background:#fff5f5;border:1px solid #f3caca;border-radius:10px;margin:0;padding:12px 14px;font-size:12px}.public-registration input::placeholder{color:#94a3b8}@media (max-width:600px){.public-registration{padding:14px 10px}.public-registration-card{border-radius:18px;padding:28px 18px 22px}.two-fields{grid-template-columns:1fr;gap:18px}.public-form{gap:16px}}.enrollment-data-page,.enrollment-data-page .enrollment-table-card{min-width:0;overflow:hidden}.enrollment-data-page .enrollment-table-wrap{-webkit-overflow-scrolling:touch;width:100%;max-width:100%;overflow:auto hidden}.enrollment-data-page .enrollment-table{table-layout:fixed;width:max-content;min-width:100%;font-size:10pt}.enrollment-data-page .enrollment-table th,.enrollment-data-page .enrollment-table td{vertical-align:middle;white-space:normal;overflow-wrap:anywhere;padding:9px 10px;font-size:10pt;line-height:1.25}.enrollment-data-page .enrollment-table th{font-weight:800}.enrollment-data-page .enrollment-table td small{color:var(--muted);margin-top:3px;font-size:9pt;display:block}.enrollment-data-page .enrollment-table th:first-child{width:145px}.enrollment-data-page .enrollment-table th:nth-child(2){width:130px}.enrollment-data-page .enrollment-table th:nth-child(3){width:105px}.enrollment-data-page .enrollment-table th:nth-child(4){width:125px}.enrollment-data-page .enrollment-table th:nth-child(5){width:105px}.enrollment-data-page .enrollment-table th:nth-child(6){width:175px}.enrollment-data-page .enrollment-table th:nth-child(7),.enrollment-data-page .enrollment-table th:nth-child(8),.enrollment-data-page .enrollment-table th:nth-child(9){width:115px}.enrollment-data-page .enrollment-table th:nth-child(10){width:145px}.enrollment-data-page .enrollment-table th:nth-child(11){width:135px}.enrollment-data-page .enrollment-table th:nth-child(12){width:100px}.enrollment-data-page .enrollment-table th:nth-child(13){width:150px}.enrollment-data-page .enrollment-table a{overflow-wrap:anywhere;font-size:10pt}.enrollment-data-page .enrollment-table .approval-actions button{padding:5px 7px;font-size:9pt}.enrollment-data-page .approval-actions{flex-wrap:wrap;gap:5px;margin-top:7px;display:flex}.enrollment-data-page .approval-actions button{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:6px;padding:5px 8px;font-size:9pt;font-weight:750;line-height:1.1;transition:background .2s,border-color .2s,color .2s,transform .2s}.enrollment-data-page .approval-actions button:first-child{background:var(--teal);border-color:var(--teal);color:#fff}.enrollment-data-page .approval-actions button:first-child:hover{background:var(--teal-dark);border-color:var(--teal-dark);transform:translateY(-1px)}.enrollment-data-page .approval-actions button:last-child{color:#b74743;background:#fff;border-color:#f0b6b3}.enrollment-data-page .approval-actions button:last-child:hover{color:#a63c38;background:#fff0ed;border-color:#d95f5a;transform:translateY(-1px)}.enrollment-data-page .approval-actions button:focus-visible{outline-offset:2px;outline:2px solid #eab71c99}.enrollment-data-page .enrollment-row-clickable{cursor:pointer;transition:background .2s,box-shadow .2s}.enrollment-data-page .enrollment-row-clickable:hover{background:#f0faf8}.enrollment-data-page .enrollment-row-clickable:focus-visible{outline:2px solid var(--teal);outline-offset:-2px}.enrollment-modal-backdrop{background:linear-gradient(135deg,#f0fcfa,#fff);border:1px solid #ccece7;border-radius:14px;margin-top:18px;padding:18px;animation:.2s ease-out enrollment-detail-in;box-shadow:0 12px 30px #0f172a14}.enrollment-modal{max-width:900px;margin:0 auto;padding:4px 8px 2px;position:relative}.enrollment-modal-close{border:1px solid var(--line);width:30px;height:30px;color:var(--muted);cursor:pointer;background:#fff;border-radius:8px;font-size:20px;line-height:1;position:absolute;top:0;right:0}.enrollment-modal-close:hover{color:#b74743;background:#fff0ed;border-color:#f0b6b3}.enrollment-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 18px;display:grid}.enrollment-detail-grid p{background:#fffc;border:1px solid #e2eeed;border-radius:9px;min-width:0;margin:0;padding:11px 12px}.enrollment-detail-grid span,.enrollment-detail-grid strong{display:block}.enrollment-detail-grid span{color:var(--muted);margin-bottom:5px;font-size:9pt}.enrollment-detail-grid strong{color:var(--ink);overflow-wrap:anywhere;font-size:10pt}.enrollment-detail-grid a{color:var(--teal-dark)}@keyframes enrollment-detail-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@media (max-width:700px){.enrollment-modal-backdrop{padding:14px 10px}.enrollment-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:480px){.enrollment-detail-grid{grid-template-columns:1fr}.enrollment-modal h2{font-size:19px}}.enrollment-data-page .enrollment-modal-backdrop{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a7a;place-items:center;margin:0;padding:24px;animation:.2s ease-out enrollment-detail-in;display:grid;position:fixed;inset:0;overflow:auto}.enrollment-data-page .enrollment-modal{background:#fff;border:1px solid #cbd5e1e6;border-radius:18px;width:min(900px,100%);max-height:min(760px,100vh - 48px);margin:0;padding:28px;overflow:auto;box-shadow:0 24px 70px #0f172a40}.enrollment-data-page .enrollment-modal-close{top:18px;right:18px}.enrollment-data-page .enrollment-modal h2{padding-right:42px}@media (max-width:480px){.enrollment-data-page .enrollment-modal-backdrop{padding:12px}.enrollment-data-page .enrollment-modal{max-height:calc(100vh - 24px);padding:22px 16px}.enrollment-data-page .enrollment-modal-close{top:12px;right:12px}}.payment-proof-detail a{align-items:center;gap:8px;display:inline-flex}.payment-proof-detail img{object-fit:cover;border:1px solid #d9e8e7;border-radius:6px;width:54px;height:42px}.public-registration .public-form input[type=file]{width:100%;color:var(--muted);cursor:pointer;background:linear-gradient(135deg,#f4fffd,#f8fbff);border:1.5px dashed #8bd3c8;border-radius:14px;padding:14px 12px;font-size:10pt;transition:border-color .2s,background .2s,box-shadow .2s;display:block}.public-registration .public-form input[type=file]:hover{border-color:var(--teal);background:#edfffb;box-shadow:0 6px 18px #1494851a}.public-registration .public-form input[type=file]:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.public-registration .public-form input[type=file]::file-selector-button{background:var(--teal);color:#fff;cursor:pointer;border:0;border-radius:8px;margin-right:12px;padding:8px 12px;font-size:9pt;font-weight:750;transition:background .2s,transform .2s}.public-registration .public-form input[type=file]::file-selector-button:hover{background:var(--teal-dark);transform:translateY(-1px)}.public-registration .public-form input[type=file]+small{color:var(--muted);margin-top:7px;font-size:9pt;display:block}.checkout-summary{grid-template-columns:1.15fr .85fr;gap:12px;margin:22px 0 26px;display:grid}.checkout-card{background:#fff;border:1px solid #dcebea;border-radius:14px;padding:16px 18px;position:relative;box-shadow:0 8px 22px #0f172a0d}.checkout-label{color:#6d8585;letter-spacing:.12em;margin-bottom:10px;font-size:8pt;font-weight:800;display:block}.checkout-card-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.checkout-card strong{color:#153c46;font-size:11pt;display:block}.checkout-card small,.bank-payment-row span{color:#718586;margin-top:4px;font-size:9pt;display:block}.checkout-check{background:#dff7f1;border-radius:50%;place-items:center;width:27px;height:27px;color:#148f7e!important;font-size:13px!important;display:grid!important}.checkout-total{background:linear-gradient(135deg,#eafbf7,#f8fffd);border-color:#a8ddd3}.checkout-price{letter-spacing:-.03em;font-size:19pt!important}.bank-payment-row{align-items:center;gap:13px;display:flex}.bank-payment-row img{object-fit:contain;border-radius:6px;width:54px;height:38px}.bank-payment-row strong{font-size:12pt}.bank-payment-row small{color:#153c46;font-size:12pt;font-weight:800}.bank-payment-row span{font-size:8.5pt}@media (max-width:650px){.checkout-summary{grid-template-columns:1fr;gap:10px}.checkout-card{padding:14px 15px}}.registration-layout{grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);align-items:start;gap:20px;max-width:1120px;margin:0 auto;display:grid}.registration-form-card{min-width:0}.registration-layout .checkout-summary{flex-direction:column;gap:12px;margin:0;display:flex;position:sticky;top:24px}.checkout-summary-heading{padding:4px 4px 2px}.checkout-summary-heading h2{color:var(--ink);letter-spacing:-.03em;margin:4px 0 0;font-size:17pt}.checkout-summary-heading .eyebrow{margin:0}@media (max-width:820px){.registration-layout{grid-template-columns:1fr}.registration-layout .checkout-summary{grid-row:1;position:static}.registration-form-card{grid-row:2}}.modal-backdrop{z-index:1200;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#0f172a85;place-items:center;padding:20px;animation:.18s ease-out shortlink-modal-fade;display:grid;position:fixed;inset:0}.modal-card{background:linear-gradient(145deg,#fff,#f7fcfb);border:1px solid #ffffffbf;border-radius:24px;width:min(560px,100%);max-height:calc(100vh - 40px);padding:30px;animation:.2s ease-out shortlink-modal-in;position:relative;overflow:auto;box-shadow:0 28px 90px #0f172a47}.modal-header{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:24px;display:flex}.modal-header h2{color:var(--ink);letter-spacing:-.035em;margin:6px 0 0;font-size:24px}.modal-close:hover{color:var(--teal-dark);background:#effaf8;border-color:#9edbd2}.form-grid{gap:16px;display:grid}.form-grid label{color:var(--ink);gap:8px;font-size:13px;font-weight:700;display:grid}.form-grid label span{color:var(--muted);font-weight:500}.form-grid input{box-sizing:border-box;width:100%;color:var(--ink);font:inherit;background:#fff;border:1px solid #d8e5e3;border-radius:12px;outline:none;padding:12px 14px;transition:border-color .2s,box-shadow .2s}.form-grid input:focus{border-color:var(--teal);box-shadow:0 0 0 4px #19a6961f}.code-input{background:#fff;border:1px solid #d8e5e3;border-radius:12px;align-items:center;display:flex;overflow:hidden}.code-input b{color:var(--teal-dark);padding-left:14px;font-size:14px}.code-input input{box-shadow:none;border:0;border-radius:0}.code-input input:focus{box-shadow:none}.form-error{color:#b74743;margin:0;font-size:13px;line-height:1.5}.modal-card .primary-button{justify-self:end;margin-top:4px}@keyframes shortlink-modal-fade{0%{opacity:0}to{opacity:1}}@keyframes shortlink-modal-in{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@media (max-width:600px){.modal-backdrop{padding:12px}.modal-card{border-radius:19px;padding:23px 18px}.modal-card .primary-button{width:100%}}.modal-card{width:min(620px,100%);padding:34px}.modal-header{margin-bottom:28px}.modal-header h2{font-size:27px}.form-grid{grid-template-columns:1fr 1fr;gap:18px 20px}.form-grid label:nth-child(3),.form-grid .form-error,.form-grid .primary-button{grid-column:1/-1}.form-grid .primary-button{justify-self:end;min-width:190px}.code-input b{white-space:nowrap;letter-spacing:-.02em;padding-left:14px;font-size:12px}.code-input input{min-width:0}@media (max-width:640px){.modal-card{padding:25px 20px}.form-grid{grid-template-columns:1fr}.form-grid label:nth-child(3),.form-grid .form-error,.form-grid .primary-button{grid-column:auto}.form-grid .primary-button{justify-self:stretch;width:100%}}.shortlink-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.danger-button{color:#b74743;font:inherit;cursor:pointer;background:#fff5f4;border:1px solid #f0c5c2;border-radius:10px;padding:9px 12px;font-size:12px;font-weight:700;transition:all .2s}.danger-button:hover{color:#fff;background:#b74743;border-color:#b74743}.academic-card .section-heading h2{letter-spacing:-.025em;font-size:20px;line-height:1.25}.academic-card .table-shell th{font-size:11px}.academic-card .table-shell td{font-size:13px}.icon-action{color:#157d72;cursor:pointer;background:#fff;border:1px solid #d8e5e3;border-radius:10px;place-items:center;width:34px;height:34px;padding:0;transition:all .2s;display:inline-grid}.icon-action svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:16px;height:16px}.icon-action:hover{transform:translateY(-1px);box-shadow:0 5px 12px #0f172a1a}.icon-action:focus-visible{outline-offset:2px;outline:3px solid #19a69640}.delete-action{color:#b74743;border-color:#f0c5c2}.delete-action:hover{background:#fff1ef;border-color:#b74743}.shortlink-actions{gap:7px}.enrollment-toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.enrollment-search{border:1px solid var(--line);min-width:260px;color:var(--ink);font:inherit;background:#fff;border-radius:10px;outline:none;padding:10px 13px;font-size:13px}.enrollment-search:focus{border-color:var(--teal);box-shadow:0 0 0 3px #19a6961f}.incomplete-count{color:#9a6818;background:#fff7e8;border-radius:999px;padding:8px 11px;font-size:12px;font-weight:700}.final-status{font-size:12px}.final-status.approved{color:#16806f}.final-status.rejected{color:#b74743}@media (max-width:700px){.enrollment-search{width:100%;min-width:0}.enrollment-toolbar{flex-direction:column;align-items:stretch}}.shortlink-actions{white-space:nowrap}.academic-card{min-width:0;overflow:hidden}.academic-card .table-shell{-webkit-overflow-scrolling:touch;width:100%;max-width:100%;overflow:auto hidden}.academic-card .table-shell table{width:100%;min-width:760px}@media (max-width:700px){.academic-page{width:100%;max-width:100%;overflow:hidden}.academic-card{border-radius:12px;width:100%;padding:14px}.academic-card .section-heading{width:100%;margin:4px 0 14px}.academic-card .section-heading h2{font-size:18px}.academic-card .table-shell{border-radius:8px;width:100%;margin:0}.academic-card .table-shell table{min-width:680px}.academic-card .table-shell th,.academic-card .table-shell td{padding:11px 10px}.academic-card .table-shell td:first-child{min-width:140px}.academic-card .table-shell td:nth-child(2),.academic-card .table-shell td:nth-child(3){min-width:220px}.academic-card .table-shell td:last-child{min-width:110px}.shortlink-actions{flex-wrap:nowrap;justify-content:flex-start}}.generate-link-page{min-width:0;overflow:hidden}.generate-link-page .academic-hero>div{min-width:0}.generate-link-card{width:100%;min-width:0}.wizard-panel{min-width:0}.wizard-panel h2{overflow-wrap:anywhere}.choice-card,.student-summary,.confirmation-card,.generated-summary{overflow-wrap:anywhere;min-width:0}.generated-summary span,.student-summary p{overflow-wrap:anywhere}.link-box input{width:100%;min-width:0;font-size:12px}.generate-link-page .state.error{overflow-wrap:anywhere}@media (max-width:700px){.generate-link-page{width:100%;padding:12px 0 32px}.generate-link-page .academic-hero{margin-bottom:16px;padding:0 2px}.generate-link-page .academic-hero h1{font-size:24px;line-height:1.15}.generate-link-page .academic-hero .subtitle{font-size:12px;line-height:1.5}.generate-link-card{border-radius:14px}.wizard-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;padding:14px 10px}.wizard-step{gap:5px;min-width:0}.wizard-step span{border-width:3px;flex-basis:30px;width:30px;height:30px;font-size:12px}.wizard-step:not(:last-child):after{top:15px;left:35px;right:-5px}.generate-link-page .wizard-step strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;padding:0 2px;font-size:10px;display:block;overflow:hidden}.wizard-panel{padding:24px 15px 28px}.wizard-panel h2{margin-bottom:20px;font-size:20px;line-height:1.25}.wizard-panel label{font-size:12px}.wizard-panel input,.wizard-panel select{height:46px;font-size:13px}.choice-grid{gap:10px;margin:20px 0}.choice-card{min-height:0;padding:15px}.choice-card strong{font-size:14px}.choice-card span{font-size:12px}.wizard-actions{gap:9px}.wizard-actions button{width:100%}.success-panel{padding:24px 15px}.generated-summary{margin:20px 0;padding:15px}.generated-summary strong{font-size:16px}.generated-summary span{font-size:12px}.link-box{gap:8px}.link-box input,.link-box .primary-button{height:44px}.modal-card{max-width:100%}}.teacher-hero{align-items:flex-end;margin-bottom:22px}.teacher-hero-actions{z-index:1;flex-wrap:wrap;justify-content:flex-end;gap:8px;max-width:620px;display:flex;position:relative}.teacher-hero-actions button{color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1f;border:1px solid #ffffff47;border-radius:9px;min-height:38px;padding:0 13px;font-size:10px;font-weight:800;transition:background .2s,transform .2s}.teacher-hero-actions button:hover{background:#fff3;transform:translateY(-1px)}.teacher-hero-actions button:disabled{opacity:.65;cursor:wait}.teacher-hero-actions button.is-primary{color:#087d73;background:#f4fffd;border-color:#b9f2e8}.teacher-hero-actions button.is-primary:hover{background:#fff}@media (max-width:720px){.teacher-hero-actions{justify-content:flex-start;width:100%;max-width:none}.teacher-hero-actions button{flex:1;min-width:135px}.teacher-hero{gap:20px;margin-bottom:16px}}.teacher-form-grid input[type=number]{-moz-appearance:textfield}.teacher-form-grid input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.teacher-form-grid input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.teacher-related-dialog{width:min(780px,100%);max-height:min(820px,100vh - 32px);padding:30px;overflow:auto}.teacher-related-dialog h2{color:var(--ink);letter-spacing:-.04em;margin:0 0 5px;font-size:25px}.teacher-related-dialog>p{color:var(--muted);margin:0 0 22px;font-size:12px}.teacher-tabs{border-bottom:1px solid #e8eef2;gap:7px;margin:0 -5px 22px;padding:5px;display:flex;overflow-x:auto}.teacher-tabs button{color:#718093;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;flex:none;padding:10px 14px;font-size:11px;font-weight:800;transition:color .2s,border-color .2s}.teacher-tabs button:hover,.teacher-tabs button:focus{color:var(--teal-dark)}.teacher-tabs button:first-child{color:var(--teal-dark);border-bottom-color:var(--teal)}.related-list{gap:9px;margin-bottom:22px;display:grid}.related-list:empty:before{content:"Belum ada data pada kategori ini.";color:var(--muted);text-align:center;border:1px dashed #cad8df;border-radius:12px;padding:20px;font-size:11px;display:block}.related-list article{background:linear-gradient(135deg,#fff,#f9fcfc);border:1px solid #e6edf1;border-radius:12px;align-items:center;gap:14px;padding:14px 15px;transition:transform .2s,box-shadow .2s;display:flex}.related-list article:hover{transform:translateY(-1px);box-shadow:0 8px 22px #0f172a0b}.related-list article>div:first-child{flex:1;min-width:0}.related-list strong,.related-list span{overflow-wrap:anywhere;display:block}.related-list strong{color:var(--ink);font-size:12px}.related-list span{color:var(--muted);margin-top:5px;font-size:10px}.related-actions{gap:6px;display:flex}.related-actions button{color:#526277;cursor:pointer;background:#fff;border:1px solid #d9e4e9;border-radius:8px;padding:7px 10px;font-size:10px;font-weight:800}.related-actions button:hover{border-color:var(--teal);color:var(--teal-dark)}.related-actions button:last-child:hover{color:#b34d4d;border-color:#e38a8a}.related-form{background:#f8fbfc;border:1px solid #e5edf0;border-radius:14px;padding:19px}.related-form h3{color:var(--ink);margin:0 0 15px;font-size:14px}.related-form label{color:#536277;gap:6px;margin-bottom:11px;font-size:10px;font-weight:800;display:grid}.related-form input{width:100%;height:38px;color:var(--ink);background:#fff;border:1px solid #d8e2ea;border-radius:9px;outline:0;padding:0 11px;font-size:11px}.related-form input:focus{border-color:var(--teal);box-shadow:0 0 0 3px #18a89b15}.related-form .teacher-form-actions{margin-top:15px;padding-top:14px}.teacher-detail-actions{justify-content:flex-end;gap:8px;margin-top:18px;display:flex}.teacher-detail-actions button{color:#536277;cursor:pointer;background:#fff;border:1px solid #d8e2ea;border-radius:9px;padding:9px 13px;font-size:11px;font-weight:800}.teacher-detail-actions button:hover{border-color:var(--teal);color:var(--teal-dark)}.teacher-detail-actions button:last-child:hover{color:#b34d4d;border-color:#e38a8a}@media (max-width:700px){.teacher-related-dialog{max-height:calc(100vh - 18px);padding:22px 18px}.teacher-related-dialog h2{font-size:21px}.related-list article{flex-direction:column;align-items:flex-start}.related-actions{width:100%}.related-actions button,.teacher-detail-actions button{flex:1}.teacher-header .primary-button{margin-top:0}.teacher-stats{grid-template-columns:1fr}.teacher-toolbar{flex-direction:column;align-items:stretch}.teacher-filter{justify-content:space-between}.teacher-filter select{flex:1}.teacher-row{flex-wrap:wrap;align-items:flex-start}.teacher-row .status{margin-left:56px}.teacher-row .detail-button{margin-left:auto}.teacher-dialog{padding:21px}.teacher-dialog-heading h2{font-size:19px}.teacher-detail-grid{grid-template-columns:1fr;gap:14px}}.template-picker-title{color:#172033;margin:2px 0 12px;font-size:18px;font-weight:800}.template-field-group{margin:0 0 14px}.template-field-group-title{color:#64748b;letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid #e5eaf1;margin:0 0 4px;padding-bottom:5px;font-size:12px;font-weight:800}.template-field-list{gap:0;display:grid}.template-field-row{cursor:pointer;border-radius:6px;min-height:30px;padding:2px 4px;transition:background .15s;color:#172033!important;align-items:center!important;gap:9px!important;margin:0!important;font-size:14px!important;font-weight:500!important;display:flex!important}.template-field-row:hover{background:#f1f5f9}.template-field-row input{appearance:none;box-sizing:border-box;aspect-ratio:1;cursor:pointer;position:relative;background:#fff!important;border:1.5px solid #94a3b8!important;border-radius:50%!important;flex:0 0 19px!important;width:19px!important;min-width:19px!important;max-width:19px!important;height:19px!important;min-height:19px!important;max-height:19px!important;margin:0!important;padding:0!important}.template-field-row input:checked{box-shadow:none!important;background:#2563eb!important;border-color:#2563eb!important}.template-field-row input:checked:after{content:"";pointer-events:none;border:2px solid #fff;border-width:0 2px 2px 0;width:5px;height:9px;position:absolute;top:50%;left:50%;transform:translate(-50%,-58%)rotate(45deg)}.template-field-row strong{color:#172033;font-size:14px;font-weight:600}.registration-modal .template-field-list{grid-template-columns:1fr!important}.registration-modal .template-field-row input:focus{outline-offset:2px;outline:3px solid #2563eb2e}.template-preview{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;margin-top:4px;padding:16px 18px}.template-preview .section-kicker{margin-bottom:12px;display:block}.template-preview-required,.template-preview-group{margin:0 0 14px}.template-preview-required:last-child,.template-preview-group:last-child{margin-bottom:0}.template-preview h4{color:#334155;letter-spacing:.06em;text-transform:uppercase;margin:0 0 6px;font-size:12px;font-weight:800}.template-preview ul{gap:3px;margin:0;padding:0;list-style:none;display:grid}.template-preview li{color:#475569;padding-left:14px;font-size:13px;line-height:1.4;position:relative}.template-preview li:before{content:"â€¢";color:#2563eb;font-weight:800;position:absolute;left:0}.wizard-progress{color:var(--teal-dark);background:linear-gradient(135deg,#f0fcfa,#fbfffe);border:1px solid #ccece7;border-radius:12px;grid-column:1/-1;justify-content:space-between;align-items:center;margin-bottom:4px;padding:12px 14px;font-size:12px;display:flex}.wizard-progress strong{font-size:13px}.wizard-progress span{color:var(--muted);font-size:11px}.public-form{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px 20px;display:grid}.public-form .wizard-progress,.public-form .form-span-full,.public-form .form-category-heading,.public-form .registration-field-group,.public-form .education-history-fieldset,.public-form .form-actions,.public-form .state{grid-column:1/-1}.public-form .two-fields{display:contents}.public-form .two-fields>label{grid-column:auto;min-width:0}.public-form input,.public-form select{min-height:42px;padding:10px 12px}.public-form label{gap:6px;min-width:0}.form-category-heading{background:linear-gradient(135deg,#f0fcfa,#fbfffe);border:1px solid #ccece7;border-radius:12px;margin-bottom:4px;padding:14px 18px}.form-category-heading .section-kicker{margin-bottom:4px;display:block}.registration-field-group{border:1px solid var(--line);border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;padding:16px 18px;display:grid}.registration-field-group legend{color:var(--teal-dark);letter-spacing:.07em;text-transform:uppercase;grid-column:1/-1;padding:0 4px;font-size:11px;font-weight:800}.registration-field-group label{min-width:0}.form-actions{gap:12px;padding-top:4px;display:flex}.form-actions .primary-button{flex:1;min-height:46px}.form-actions .detail-button{min-height:46px;padding:0 22px}@media (max-width:700px){.wizard-progress{flex-direction:column;align-items:flex-start;gap:4px}.public-form{grid-template-columns:1fr;gap:14px}.public-form .two-fields{grid-template-columns:1fr;gap:14px;display:grid}.registration-field-group{grid-template-columns:1fr}.form-actions{flex-direction:column-reverse}}.registration-summary-card{justify-content:space-between;align-items:center;gap:24px;display:flex}.registration-summary-card>div{min-width:0}.registration-summary-card .primary-button{white-space:nowrap}.registration-modal{width:min(720px,100vw - 32px);max-height:calc(100vh - 32px);overflow:auto}.registration-modal .form-grid{align-items:start}.template-field-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.template-field-row{min-width:0}@media (max-width:700px){.academic-page{padding:18px 14px 36px}.academic-hero{margin-bottom:18px}.academic-hero h1{font-size:25px;line-height:1.1}.academic-hero .subtitle{font-size:12px;line-height:1.5}.registration-summary-card{flex-direction:column;align-items:stretch;gap:14px;margin-bottom:12px;padding:17px}.registration-summary-card h2{margin:6px 0;font-size:16px}.registration-summary-card p{margin:0;font-size:12px;line-height:1.5}.registration-summary-card .primary-button{width:100%;min-height:44px;padding:12px 14px}.roster-card{padding:15px 13px;overflow:hidden}.roster-card .card-heading{padding:0 2px 13px}.roster-card .card-heading h2{font-size:16px}.roster-table{margin:0 -2px;padding:0 2px;overflow-x:auto}.roster-row{gap:10px;min-width:620px;padding:13px 4px}.roster-row>div:nth-child(2){min-width:230px}.roster-row>span{white-space:nowrap;margin-left:auto;font-size:10px}.roster-row select{min-width:100px;min-height:40px;padding:8px 10px}.registration-modal-backdrop{padding:12px}.registration-modal{border-radius:18px;width:100%;max-height:calc(100vh - 24px);padding:18px 15px}.registration-modal-heading h2{font-size:20px;line-height:1.2}.registration-modal-heading p{font-size:12px;line-height:1.45}.registration-modal .form-grid{grid-template-columns:1fr;gap:13px}.registration-modal input,.registration-modal select,.registration-modal textarea{width:100%;min-height:43px}.template-field-list{grid-template-columns:1fr;gap:7px}.template-field-row{border-radius:10px;padding:11px 10px}.template-preview{padding:13px}.registration-modal-actions{border-top:1px solid var(--line);background:#fff;gap:8px;margin:4px -15px -18px;padding:12px 15px;position:sticky;bottom:-18px}.registration-modal-actions button{flex:1;min-height:42px}}.academic-page .academic-grid{flex-direction:column;gap:0;display:flex}.academic-page .academic-grid>.registration-summary-card{width:100%;margin-bottom:17px}@media (max-width:700px){.academic-page .academic-grid{flex-direction:column;gap:0;display:flex}.academic-page .academic-grid>.registration-summary-card{margin-bottom:12px}}.academic-page .academic-grid>.registration-summary-card:first-child,.academic-page .academic-grid>.registration-summary-card:nth-child(2){box-shadow:none;border-left:1px solid var(--line);border-right:1px solid var(--line);border-radius:0;margin:0!important}.academic-page .academic-grid>.registration-summary-card:first-child{border-top:1px solid var(--line);border-bottom:0;border-radius:12px 12px 0 0}.academic-page .academic-grid>.registration-summary-card:nth-child(2){border-top:1px solid #eef2f6;border-bottom:1px solid var(--line);border-radius:0 0 12px 12px;margin-bottom:17px!important}@media (max-width:700px){.academic-page .academic-grid>.registration-summary-card:first-child,.academic-page .academic-grid>.registration-summary-card:nth-child(2){margin:0!important}.academic-page .academic-grid>.registration-summary-card:nth-child(2){margin-bottom:12px!important}}.registration-number{background:linear-gradient(135deg,#effcf9,#f8fffe);border:1px solid #bfe8e1;border-radius:14px;grid-template-columns:auto 1fr;align-items:center;gap:4px 14px;margin:18px 0 22px;padding:14px 16px;display:grid}.registration-number span{color:var(--teal-dark);letter-spacing:.1em;grid-row:span 2;font-size:10px;font-weight:850}.registration-number strong{color:var(--ink);letter-spacing:.04em;font-size:17px}.registration-number small{color:var(--muted);font-size:11px}@media (min-width:701px){.academic-page .academic-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;display:grid}.academic-page .academic-grid>.registration-summary-card:first-child,.academic-page .academic-grid>.registration-summary-card:nth-child(2){border:1px solid var(--line);min-height:156px;box-shadow:none;border-radius:0;margin:0!important}.academic-page .academic-grid>.registration-summary-card:first-child{border-right:0;border-radius:12px 0 0 12px}.academic-page .academic-grid>.registration-summary-card:nth-child(2){border-radius:0 12px 12px 0}.academic-page .academic-grid>.roster-card{grid-column:1/-1;margin-top:17px}}@media (max-width:700px){.academic-page .academic-grid{flex-direction:column;gap:0;display:flex}.academic-page .academic-grid>.registration-summary-card:first-child,.academic-page .academic-grid>.registration-summary-card:nth-child(2){border-radius:0}.academic-page .academic-grid>.registration-summary-card:first-child{border-right:1px solid var(--line);border-bottom:0;border-radius:12px 12px 0 0}.academic-page .academic-grid>.registration-summary-card:nth-child(2){border-left:1px solid var(--line);border-radius:0 0 12px 12px;margin-bottom:12px!important}.academic-page .registration-summary-card+.roster-card{padding:18px 16px 10px!important}.academic-page .registration-summary-card+.roster-card .card-heading{grid-template-columns:1fr auto!important;align-items:start!important;gap:10px!important;margin-bottom:8px!important;display:grid!important}.academic-page .registration-summary-card+.roster-card .card-heading .count-pill{grid-area:2/1/auto/-1;justify-self:start}.academic-page .registration-summary-card+.roster-card .roster-row{grid-template-columns:42px minmax(0,1fr)!important;align-items:start!important;gap:10px 12px!important;padding:16px 4px!important;display:grid!important}.academic-page .registration-summary-card+.roster-card .roster-row>div:nth-child(2){grid-column:2;min-width:0}.academic-page .registration-summary-card+.roster-card .roster-row>div:nth-child(2) strong,.academic-page .registration-summary-card+.roster-card .roster-row>div:nth-child(2) small{overflow-wrap:anywhere;white-space:normal;line-height:1.35}.academic-page .registration-summary-card+.roster-card .roster-row>span{grid-column:2;justify-self:start;font-size:13px;line-height:1.2;margin:0!important}.academic-page .registration-summary-card+.roster-card .roster-row>select{grid-column:2;justify-self:start;min-height:42px;margin:0;width:170px!important;min-width:170px!important}}.template-history-link{color:var(--teal);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:8px 0 0;font-size:12px;font-weight:750;text-decoration:underline;display:inline-flex}.template-history-link:hover{color:var(--teal-dark)}.template-history-list{gap:10px;display:grid}.template-history-item{border:1px solid var(--line);text-align:left;width:100%;color:var(--ink);cursor:pointer;background:#fbfdfd;border-radius:12px;justify-content:space-between;align-items:center;padding:14px 16px;transition:all .2s;display:flex}.template-history-item:hover{background:#effaf8;border-color:#9adfd7;transform:translateY(-1px)}.template-history-item span:first-child{gap:5px;display:grid}.template-history-item strong{font-size:13px}.template-history-item small{color:var(--muted);font-size:11px}.template-history-item>span:last-child{color:var(--teal);font-size:20px}.template-history-modal{max-width:560px}.template-history-search{border:1px solid var(--line);border-radius:10px;outline:0;width:100%;margin:18px 0;padding:11px 13px;font-size:12px}.template-history-search:focus{border-color:var(--teal);box-shadow:0 0 0 3px #18a89b18}.template-history-pagination{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:12px;margin-top:18px;padding-top:14px;font-size:11px;display:flex}.template-history-pagination>div{gap:5px;display:flex}.template-history-pagination .detail-button:disabled{color:#b7c0d0;cursor:not-allowed}.template-picker-toolbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.template-picker-toolbar .template-picker-title{margin:0}.template-picker-toolbar .detail-button{padding:6px 0}.form-category-heading{background:#f0fdfa;border:1px solid #cceee9;border-radius:12px;margin:24px 0 12px;padding:14px 16px}.form-category-heading h3{color:var(--ink);margin:5px 0;font-size:14px}.form-category-heading p{color:var(--muted);margin:0;font-size:11px}@media (min-width:701px){.academic-page .academic-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:18px!important;display:grid!important}.academic-page .academic-grid>.registration-summary-card{box-sizing:border-box;border:1px solid var(--line);min-width:0;min-height:156px;box-shadow:var(--shadow);border-radius:16px;width:100%!important;margin:0!important}.academic-page .academic-grid>.registration-summary-card:first-child,.academic-page .academic-grid>.registration-summary-card:nth-child(2){border:1px solid var(--line);border-radius:16px}.academic-page .academic-grid>.roster-card{grid-column:1/-1;margin-top:0!important}}@media (max-width:700px){.academic-page .academic-grid{flex-direction:column;gap:12px!important;display:flex!important}.academic-page .academic-grid>.registration-summary-card{border-radius:14px!important;width:100%!important;margin:0!important}}.registration-action-card{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:16px;grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow:hidden}.registration-action-card .registration-summary-card{width:100%;min-width:0;box-shadow:none;border:0;border-radius:0;margin:0!important}.registration-action-card .registration-summary-card+.registration-summary-card{border-left:1px solid #edf2f5}@media (max-width:700px){.registration-action-card{flex-direction:column;display:flex}.registration-action-card .registration-summary-card+.registration-summary-card{border-top:1px solid #edf2f5;border-left:0}}@media (min-width:701px){.academic-page .academic-grid{gap:18px 0!important}.academic-page .academic-grid>.registration-summary-card{border:1px solid var(--line);min-height:156px;box-shadow:none;border-radius:0;position:relative;margin:0!important}.academic-page .academic-grid>.registration-summary-card:first-child{border-right:0;border-radius:16px 0 0 16px}.academic-page .academic-grid>.registration-summary-card:nth-child(2){border-radius:0 16px 16px 0}.academic-page .academic-grid>.registration-summary-card:nth-child(2):before{content:"";border-left:1px solid #edf2f5;position:absolute;top:20px;bottom:20px;left:0}}@media (max-width:700px){.academic-page .academic-grid{row-gap:12px!important}.academic-page .academic-grid>.registration-summary-card{border-radius:14px!important}}.registration-summary-card+.roster-card .roster-row>select{color:#173b3b;white-space:nowrap;text-overflow:clip;cursor:pointer;background:#fff;border:1px solid #cbdde0;border-radius:10px;width:136px;min-width:136px;padding:9px 30px 9px 12px;font-size:11px;font-weight:800;line-height:1.2;overflow:visible}.registration-summary-card+.roster-card .roster-row>select:focus{outline-offset:1px;border-color:#0f9b8d;outline:3px solid #b9eee7}@media (max-width:700px){.registration-summary-card+.roster-card .roster-row>select{grid-column:2;width:100%;min-width:0;padding-right:30px}}.registration-summary-card+.roster-card .roster-row>select{appearance:none;text-align:center;text-align-last:center;text-indent:0;opacity:1;background-color:#f0faf8;background-image:linear-gradient(45deg,#0000 50%,#0f766e 50%),linear-gradient(135deg,#0f766e 50%,#0000 50%);background-position:calc(100% - 15px),calc(100% - 10px);background-repeat:no-repeat;background-size:5px 5px,5px 5px;color:#0f4f4b!important}.registration-summary-card+.roster-card .roster-row>select option{color:#173b3b;background:#fff;font-weight:800}.registration-action-card~.roster-card .roster-row>select,.academic-page .roster-card .roster-row>select{appearance:none;text-align:center;text-align-last:center;cursor:pointer;background-image:linear-gradient(45deg,#0000 50%,#0f766e 50%),linear-gradient(135deg,#0f766e 50%,#0000 50%);background-position:calc(100% - 16px) 18px,calc(100% - 11px) 18px;background-repeat:no-repeat;background-size:5px 5px,5px 5px;border-radius:11px;height:42px;color:#0b5f59!important;opacity:1!important;visibility:visible!important;background-color:#effbf9!important;border:1px solid #a9d8d2!important;width:136px!important;min-width:136px!important;padding:0 32px 0 12px!important;font-size:12px!important;font-weight:850!important;line-height:42px!important}.registration-action-card~.roster-card .roster-row>select option,.academic-page .roster-card .roster-row>select option{font-size:12px;font-weight:800;color:#173b3b!important;background:#fff!important}@media (max-width:700px){.registration-action-card~.roster-card .roster-row>select,.academic-page .roster-card .roster-row>select{width:100%!important;min-width:0!important}}.academic-page .registration-summary-card~.roster-card{box-sizing:border-box;width:100%;overflow:hidden}.academic-page .registration-summary-card~.roster-card .roster-table{width:100%;padding-bottom:4px;overflow:auto hidden}.academic-page .registration-summary-card~.roster-card .roster-row{box-sizing:border-box;grid-template-columns:42px minmax(180px,1fr) minmax(110px,auto) 136px;align-items:center;gap:16px;width:100%;min-width:0;padding:16px 4px;display:grid}.academic-page .registration-summary-card~.roster-card .roster-row>div:nth-child(2) strong,.academic-page .registration-summary-card~.roster-card .roster-row>div:nth-child(2) small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.academic-page .registration-summary-card~.roster-card .roster-row>span{white-space:nowrap;text-align:right;min-width:0}.academic-page .registration-summary-card~.roster-card .roster-row>select{justify-self:end;max-width:136px}@media (max-width:700px){.academic-page .registration-summary-card~.roster-card .roster-table{overflow-x:auto}.academic-page .registration-summary-card~.roster-card .roster-row{grid-template-columns:34px minmax(170px,1fr) 108px;gap:10px;min-width:470px}.academic-page .registration-summary-card~.roster-card .roster-row>span{text-align:left;grid-column:2}.academic-page .registration-summary-card~.roster-card .roster-row>select{grid-area:1/3/span 2;max-width:108px;width:108px!important}}.academic-page .registration-summary-card~.roster-card .roster-row>select{letter-spacing:.02em;white-space:nowrap!important;text-overflow:clip!important;width:150px!important;min-width:150px!important;max-width:none!important;height:42px!important;padding:0 28px 0 8px!important;font-size:11px!important;overflow:visible!important}.academic-page .registration-summary-card~.roster-card .roster-row{grid-template-columns:42px minmax(150px,1fr) minmax(105px,auto) 150px}@media (max-width:700px){.academic-page .registration-summary-card~.roster-card .roster-row{grid-template-columns:34px minmax(160px,1fr) 150px;min-width:510px}.academic-page .registration-summary-card~.roster-card .roster-row>select{width:150px!important;min-width:150px!important}}.academic-page .registration-summary-card~.roster-card{padding-right:20px!important;overflow:visible!important}.academic-page .registration-summary-card~.roster-card .roster-table{width:100%;padding-right:0;overflow:visible!important}.academic-page .registration-summary-card~.roster-card .roster-row{width:100%;padding-right:0;grid-template-columns:42px minmax(0,1fr) minmax(100px,auto) 150px!important}.academic-page .registration-summary-card~.roster-card .roster-row>select{box-sizing:border-box;justify-self:end;margin-right:0;width:150px!important;min-width:150px!important}@media (max-width:700px){.academic-page .registration-summary-card~.roster-card{padding-right:13px!important}.academic-page .registration-summary-card~.roster-card .roster-table{padding-right:2px;overflow-x:auto!important}.academic-page .registration-summary-card~.roster-card .roster-row{width:max-content;min-width:510px}.academic-page .registration-summary-card~.roster-card{padding-right:13px!important;overflow:hidden!important}.academic-page .registration-summary-card~.roster-card .roster-table{width:100%!important;padding:0!important;overflow:hidden!important}.academic-page .registration-summary-card~.roster-card .roster-row{box-sizing:border-box;grid-template-columns:34px minmax(0,1fr) 104px!important;gap:8px!important;width:100%!important;min-width:0!important;padding:13px 0!important;display:grid!important}.academic-page .registration-summary-card~.roster-card .roster-row>span{text-align:left;grid-column:2;min-width:0}.academic-page .registration-summary-card~.roster-card .roster-row>select{grid-area:1/3/span 2;width:104px!important;min-width:104px!important;height:38px!important;padding:0 18px 0 4px!important;font-size:10px!important}.academic-page .registration-summary-card~.roster-card .roster-row>div:nth-child(2){min-width:0}}.academic-page .registration-summary-card~.roster-card{box-sizing:border-box;width:100%!important;max-width:100%!important;overflow:hidden!important}.academic-page .registration-summary-card~.roster-card .roster-row{box-sizing:border-box;grid-template-columns:42px minmax(0,1fr) minmax(90px,110px) 112px!important;gap:10px!important;width:100%!important;min-width:0!important;padding-left:0!important;padding-right:0!important;display:grid!important}.academic-page .registration-summary-card~.roster-card .roster-row>div:nth-child(2){min-width:0;overflow:hidden}.academic-page .registration-summary-card~.roster-card .roster-row>div:nth-child(2) strong,.academic-page .registration-summary-card~.roster-card .roster-row>div:nth-child(2) small{text-overflow:ellipsis;white-space:nowrap;max-width:100%;display:block;overflow:hidden}.academic-page .registration-summary-card~.roster-card .roster-row>span{text-overflow:ellipsis;white-space:nowrap;text-align:right;min-width:0;overflow:hidden}.academic-page .registration-summary-card~.roster-card .roster-row>select{box-sizing:border-box;width:112px!important;min-width:112px!important;max-width:112px!important;padding-left:4px!important;padding-right:20px!important;font-size:10px!important}.academic-page .registration-summary-card~.roster-card .card-heading{min-width:0}@media (max-width:700px){.academic-page .registration-summary-card~.roster-card .roster-row{grid-template-columns:34px minmax(0,1fr) 104px!important;gap:8px!important}.academic-page .registration-summary-card~.roster-card .roster-row>span{text-align:left;grid-column:2}.academic-page .registration-summary-card~.roster-card .roster-row>select{grid-area:1/3/span 2;width:104px!important;min-width:104px!important;max-width:104px!important}}.academic-page .registration-summary-card~.roster-card{padding:28px!important;overflow:hidden!important}.academic-page .registration-summary-card~.roster-card .roster-table{gap:0;width:100%!important;display:grid!important;overflow:visible!important}.academic-page .registration-summary-card~.roster-card .roster-row{box-sizing:border-box;align-items:center!important;gap:14px!important;width:100%!important;min-width:0!important;padding:16px 0!important;display:flex!important}.academic-page .registration-summary-card~.roster-card .roster-row>.avatar-dot{flex:0 0 34px}.academic-page .registration-summary-card~.roster-card .roster-row>div:nth-child(2){flex:auto;min-width:0;overflow:hidden}.academic-page .registration-summary-card~.roster-card .roster-row>div:nth-child(2) strong,.academic-page .registration-summary-card~.roster-card .roster-row>div:nth-child(2) small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.academic-page .registration-summary-card~.roster-card .roster-row>span{text-align:right;white-space:nowrap;text-overflow:ellipsis;flex:0 0 112px;min-width:0;overflow:hidden}.academic-page .registration-summary-card~.roster-card .roster-row>select{box-sizing:border-box;flex:0 0 118px;width:118px!important;min-width:118px!important;max-width:118px!important;height:40px!important}.academic-page .registration-summary-card~.roster-card .card-heading{box-sizing:border-box;width:100%}@media (max-width:700px){.academic-page .registration-summary-card~.roster-card{padding:18px 14px!important}.academic-page .registration-summary-card~.roster-card .roster-table{overflow:visible!important}.academic-page .registration-summary-card~.roster-card .roster-row{grid-template-columns:34px minmax(0,1fr) 100px!important;align-items:start!important;gap:8px!important;display:grid!important}.academic-page .registration-summary-card~.roster-card .roster-row>.avatar-dot{grid-row:1/span 2}.academic-page .registration-summary-card~.roster-card .roster-row>div:nth-child(2){grid-column:2}.academic-page .registration-summary-card~.roster-card .roster-row>span{text-align:left;flex:none;grid-column:2;width:auto}.academic-page .registration-summary-card~.roster-card .roster-row>select{grid-area:1/3/span 2;width:100px!important;min-width:100px!important;max-width:100px!important}}.academic-page .registration-summary-card~.roster-card{box-sizing:border-box;width:100%!important;max-width:100%!important;padding:24px 20px!important;overflow:hidden!important}.academic-page .registration-summary-card~.roster-card .roster-table{width:100%!important;max-width:100%!important;overflow:hidden!important}.academic-page .registration-summary-card~.roster-card .roster-row{box-sizing:border-box;grid-template-columns:36px minmax(0,1fr) minmax(80px,110px) minmax(86px,112px)!important;gap:10px!important;width:100%!important;min-width:0!important;padding:14px 0!important;display:grid!important}.academic-page .registration-summary-card~.roster-card .roster-row>.avatar-dot{grid-column:1;width:32px}.academic-page .registration-summary-card~.roster-card .roster-row>div:nth-child(2){grid-column:2;min-width:0;overflow:hidden}.academic-page .registration-summary-card~.roster-card .roster-row>div:nth-child(2) strong,.academic-page .registration-summary-card~.roster-card .roster-row>div:nth-child(2) small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.academic-page .registration-summary-card~.roster-card .roster-row>span{text-overflow:ellipsis;white-space:nowrap;text-align:right;grid-column:3;align-self:center;min-width:0;overflow:hidden}.academic-page .registration-summary-card~.roster-card .roster-row>select{box-sizing:border-box;grid-column:4;width:100%!important;min-width:0!important;max-width:112px!important;height:40px!important;padding:0 18px 0 4px!important;font-size:10px!important}@media (max-width:700px){.academic-page .registration-summary-card~.roster-card{padding:18px 14px!important}.academic-page .registration-summary-card~.roster-card .roster-row{grid-template-columns:32px minmax(0,1fr) 86px!important;gap:8px!important}.academic-page .registration-summary-card~.roster-card .roster-row>span{text-align:left;grid-column:2}.academic-page .registration-summary-card~.roster-card .roster-row>select{grid-area:1/3/span 2;max-width:86px!important}}.academic-page .academic-grid>.roster-card{box-sizing:border-box;grid-column:1/-1;width:100%!important;min-width:0!important;max-width:100%!important;padding:24px 20px!important;overflow:hidden!important}.academic-page .academic-grid>.roster-card .roster-table{width:100%!important;max-width:100%!important;overflow:hidden!important}.academic-page .academic-grid>.roster-card .roster-row{box-sizing:border-box;grid-template-columns:36px minmax(0,1fr) minmax(90px,110px) 112px!important;gap:10px!important;width:100%!important;min-width:0!important;display:grid!important}.academic-page .academic-grid>.roster-card .roster-row>div:nth-child(2){min-width:0;overflow:hidden}.academic-page .academic-grid>.roster-card .roster-row>div:nth-child(2) strong,.academic-page .academic-grid>.roster-card .roster-row>div:nth-child(2) small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.academic-page .academic-grid>.roster-card .roster-row>span{text-overflow:ellipsis;white-space:nowrap;text-align:right;min-width:0;overflow:hidden}.academic-page .academic-grid>.roster-card .roster-row>select{box-sizing:border-box;grid-column:4;width:112px!important;min-width:112px!important;max-width:112px!important}@media (max-width:700px){.academic-page .academic-grid>.roster-card{padding:18px 14px!important}.academic-page .academic-grid>.roster-card .roster-row{grid-template-columns:32px minmax(0,1fr) 96px!important;gap:8px!important}.academic-page .academic-grid>.roster-card .roster-row>span{text-align:left;grid-column:2}.academic-page .academic-grid>.roster-card .roster-row>select{grid-area:1/3/span 2;width:96px!important;min-width:96px!important;max-width:96px!important}}.directory-card .directory-row:after{display:none!important}.directory-card .directory-edit,.directory-card .directory-detail{align-self:stretch!important;align-items:center!important;display:inline-flex!important}.student-id-status-row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;display:flex}.student-id-status-row .student-id-highlight{margin:0}.student-id-status-row .profile-header-status{border-radius:8px;align-items:center;margin:0;padding:6px 10px;font-size:11px;font-weight:800;line-height:1;display:inline-flex}.contact-status-legacy{display:none!important}.active-program-heading{justify-content:space-between;align-items:center;gap:14px;margin-bottom:10px;display:flex}.add-class-button{color:#087f78;background:#effcf9;border:1px solid #bce9e3;border-radius:9px;padding:8px 12px;font-size:11px;font-weight:800}.add-class-button:hover{color:#075e58;background:#d9f7f1}.class-modal-backdrop{z-index:600;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a6b;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.class-modal{background:#fff;border:1px solid #dbe8e7;border-radius:18px;width:min(470px,100%);padding:24px;box-shadow:0 24px 60px #0f172a33}.class-modal-header{border-bottom:1px solid #edf2f5;justify-content:space-between;align-items:flex-start;gap:18px;padding-bottom:18px;display:flex}.class-modal-header h2{color:var(--ink);margin:7px 0 5px;font-size:20px}.class-modal-header p{color:var(--muted);margin:0;font-size:12px}.class-modal-close{color:#64748b;cursor:pointer;background:#f1f5f9;border:0;border-radius:9px;width:30px;height:30px;font-size:20px;line-height:1}.class-modal-form{gap:14px;margin-top:20px;display:grid}.class-modal-form label{color:var(--body);gap:7px;font-size:11px;font-weight:800;display:grid}.class-modal-form select{box-sizing:border-box;width:100%;padding:11px 12px}.class-modal-actions{justify-content:flex-end;gap:10px;margin-top:24px;display:flex}.class-modal-actions .primary-button:disabled{opacity:.5;cursor:not-allowed;transform:none}@media (max-width:560px){.class-modal{padding:19px}.active-program-heading{flex-direction:column;align-items:flex-start}.add-class-button{align-self:flex-start}.class-modal-actions{flex-direction:column-reverse}.class-modal-actions button{width:100%}}.academic-history-card{margin-top:18px!important}.academic-history-card .program-add{gap:10px;margin:18px 0 12px;display:flex}.academic-history-card .program-add input{box-sizing:border-box;flex:1;min-width:0;height:42px}.academic-history-card .program-add button{text-align:center;white-space:nowrap;min-width:92px;height:42px}.academic-history-list{gap:8px;display:grid}.academic-history-item{border-top:1px solid #edf2f5;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 0;display:grid}.academic-history-item strong{color:#173b3b;font-size:13px;display:block}.academic-history-item small{color:#87969b;margin-top:3px;font-size:10px;display:block}.academic-history-item .history-active-button{text-align:center;justify-self:end;min-width:132px}@media (max-width:640px){.academic-history-card .program-add{align-items:stretch}.academic-history-card .program-add input{width:100%}.academic-history-card .program-add button{min-width:86px}.academic-history-item{grid-template-columns:34px minmax(0,1fr);gap:10px}.academic-history-item .history-active-button{grid-column:2;justify-self:start;min-width:132px}.academic-history-item .avatar-dot{width:34px;height:34px}}.academic-history-card .academic-history-item>button,.academic-history-card .roster-row>button{color:#527078;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #cfe7e3;border-radius:999px;padding:8px 14px;font-size:10px;font-weight:800;line-height:1;transition:all .18s;box-shadow:0 3px 8px #0f766e0f}.academic-history-card .academic-history-item>button:hover,.academic-history-card .roster-row>button:hover{color:#0f766e;background:#effcf9;border-color:#0f9b8d;transform:translateY(-1px)}.academic-history-card .academic-history-item>button:active,.academic-history-card .roster-row>button:active{transform:translateY(0)}.academic-history-card .academic-history-item>button:disabled,.academic-history-card .roster-row>button:disabled{cursor:default;opacity:1}.academic-history-card .academic-history-item>button.history-active-button.active,.academic-history-card .roster-row>button.history-active-button.active{color:#fff;background:linear-gradient(135deg,#0f766e,#159a8e);border-color:#0f9b8d;box-shadow:0 6px 14px #0f766e33}@media (max-width:640px){.academic-history-card .academic-history-item>button,.academic-history-card .roster-row>button{padding:9px 12px;font-size:10px}}.academic-history-card button,.roster-card button.history-active-button{appearance:none;box-sizing:border-box!important;color:#527078!important;cursor:pointer!important;white-space:nowrap!important;background:#fff!important;border:1px solid #cfe7e3!important;border-radius:999px!important;justify-content:center!important;align-items:center!important;width:auto!important;min-width:132px!important;height:36px!important;padding:0 16px!important;font-family:inherit!important;font-size:11px!important;font-weight:800!important;line-height:1!important;transition:background .18s,border-color .18s,color .18s,transform .18s,box-shadow .18s!important;display:inline-flex!important;box-shadow:0 4px 10px #0f766e14!important}.academic-history-card button:hover,.roster-card button.history-active-button:hover{color:#0f766e!important;background:#effcf9!important;border-color:#0f9b8d!important;transform:translateY(-1px)!important}.academic-history-card button.history-active-button.active,.roster-card button.history-active-button.active{color:#fff!important;background:linear-gradient(135deg,#0f766e,#159a8e)!important;border-color:#0f766e!important;box-shadow:0 7px 16px #0f766e38!important}@media (max-width:640px){.academic-history-card button,.roster-card button.history-active-button{min-width:124px!important;height:34px!important;padding:0 12px!important;font-size:10px!important}}.academic-redesign{box-sizing:border-box;color:#173b3b;width:100%;margin:0 auto;background:linear-gradient(135deg,#f8fbfc 0%,#eefaf7 100%)!important;max-width:1180px!important;padding:42px 42px 72px!important}.academic-redesign *{box-sizing:border-box}.academic-redesign button,.academic-redesign input{font:inherit}.academic-hero{justify-content:space-between;align-items:flex-end;gap:28px;display:flex;padding:8px 0 34px!important}.academic-redesign .eyebrow,.academic-redesign .section-kicker{color:#0f9b8d;letter-spacing:.14em;font-size:10px;font-weight:900;display:block}.academic-redesign .eyebrow i{background:#18a89b;border-radius:50%;width:7px;height:7px;margin-right:7px;display:inline-block}.academic-redesign h1{letter-spacing:-.055em;color:#173b3b;margin:14px 0 9px;font-size:40px;line-height:1}.hero-copy p{color:#708388;margin:0;font-size:13px}.hero-year{background:#fff;border:1px solid #cdebe5;border-radius:16px;min-width:195px;padding:18px 20px;box-shadow:0 12px 30px #0d6b6412}.hero-year span,.hero-year small{color:#7d969a;letter-spacing:.08em;font-size:9px;font-weight:800;display:block}.hero-year strong{color:#0f766e;letter-spacing:-.04em;margin:5px 0;font-size:24px;display:block}.hero-year small{letter-spacing:0;font-weight:600}.academic-control-bar,.history-panel,.program-panel,.catalog-panel{background:#fff;border:1px solid #dcebea;border-radius:18px;box-shadow:0 12px 30px #173b3b0a}.academic-control-bar{justify-content:space-between;align-items:center;gap:20px;padding:20px 22px;display:flex}.academic-control-bar h2,.panel-heading h2{color:#173b3b;letter-spacing:-.035em;margin:6px 0 0;font-size:21px}.academic-control-bar h2 em,.panel-heading h2 em{color:#5ebfb1;font-style:normal}.year-actions{align-items:center;gap:9px;display:flex}.year-actions input{color:#173b3b;border:1px solid #cfe1e0;border-radius:10px;outline:0;width:145px;padding:11px 12px}.year-actions input:focus{border-color:#18a89b;box-shadow:0 0 0 3px #18a89b1c}.primary-button{color:#fff;cursor:pointer;background:#147f79;border:0;border-radius:10px;padding:11px 14px;font-size:11px;font-weight:850;box-shadow:0 8px 16px #147f7922}.primary-button:hover{background:#0f6964}.primary-button:disabled{opacity:.6;cursor:wait}.academic-notice{border-radius:10px;align-items:center;gap:9px;margin-top:14px;padding:11px 14px;font-size:12px;display:flex}.academic-notice span{border-radius:50%;place-items:center;width:18px;height:18px;font-weight:900;display:grid}.academic-notice.success{color:#0b7564;background:#e8faf5}.academic-notice.success span{background:#bcefe1}.academic-notice.error{color:#b42318;background:#fff1f0}.academic-notice.error span{background:#ffd5d1}.academic-overview{grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0;display:grid}.overview-stat{background:#fff;border:1px solid #dcebea;border-radius:15px;padding:18px 20px}.overview-stat span{color:#82979a;letter-spacing:.12em;font-size:9px;font-weight:900;display:block}.overview-stat strong{color:#173b3b;letter-spacing:-.04em;margin:7px 0 3px;font-size:25px;display:block}.overview-stat small{color:#82979a;font-size:10px}.overview-stat.highlight{background:#153f3d;border-color:#153f3d}.overview-stat.highlight span,.overview-stat.highlight small{color:#a9d8d2}.overview-stat.highlight strong{color:#fff;font-size:18px}.overview-stat.highlight strong i{background:#67e1c9;border-radius:50%;width:7px;height:7px;margin-right:7px;display:inline-block}.level-tabs{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px;display:grid}.level-tabs button{color:#526b70;text-align:left;cursor:pointer;background:#fff;border:1px solid #dcebea;border-radius:14px;grid-template-rows:1fr 1fr;grid-template-columns:34px 1fr;align-items:center;column-gap:10px;padding:12px 14px;transition:all .2s;display:grid}.level-tabs button:hover{border-color:#83cec4;transform:translateY(-1px)}.level-tabs button>span{color:#147f79;background:#e9f8f4;border-radius:10px;grid-row:1/3;place-items:center;width:34px;height:34px;font-size:13px;font-weight:900;display:grid}.level-tabs button b{font-size:13px}.level-tabs button small{color:#87999d;font-size:9px}.level-tabs button.active{color:#fff;background:#147f79;border-color:#147f79;box-shadow:0 8px 18px #147f7925}.level-tabs button.active small{color:#c5f0e9}.level-tabs button.active>span{color:#147f79;background:#fff}.level-tabs button.active.violet{background:#685fc8;border-color:#685fc8}.level-tabs button.active.amber{background:#bd8b2c;border-color:#bd8b2c}.catalog-layout{grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr);gap:16px;display:grid}.program-panel,.catalog-panel{min-height:330px;padding:22px}.panel-heading{border-bottom:1px solid #edf3f2;justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:17px;display:flex}.level-pill{color:#147f79;white-space:nowrap;background:#eaf8f5;border-radius:999px;padding:7px 10px;font-size:10px;font-weight:850}.level-pill.violet{color:#685fc8;background:#f0efff}.level-pill.amber{color:#9c731c;background:#fff5dc}.program-row{text-align:left;cursor:pointer;background:#fff;border:0;border-bottom:1px solid #edf3f2;grid-template-columns:32px minmax(0,1fr) 92px 18px;align-items:center;gap:10px;width:100%;padding:15px 4px;display:grid}.program-row:hover,.program-row.selected{background:#f5fbfa}.row-index,.grade-mark{color:#147f79;background:#edf8f5;border-radius:9px;place-items:center;width:28px;height:28px;font-size:10px;font-weight:900;display:grid}.program-main{min-width:0}.program-main strong,.program-main small,.program-period small,.program-period b,.class-row strong,.class-row small{display:block}.program-main strong{color:#23484a;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.program-main small{color:#8a9b9e;margin-top:4px;font-size:9px}.program-period{text-align:right}.program-period small{color:#9aacaf;letter-spacing:.08em;font-size:8px}.program-period b{color:#147f79;margin-top:3px;font-size:10px}.row-arrow{color:#91aaa9;font-size:17px}.catalog-empty,.country-empty{text-align:center;color:#87999d;align-content:center;place-items:center;min-height:250px;display:grid}.catalog-empty span,.country-globe{color:#65bdb2;font-size:28px}.catalog-empty strong,.country-empty strong{color:#527477;margin-top:10px;font-size:13px}.catalog-empty p,.country-empty p{max-width:255px;margin:8px 0;font-size:11px;line-height:1.55}.country-empty b{color:#147f79}.close-catalog{color:#647d80;cursor:pointer;background:#f1f7f6;border:0;border-radius:8px;width:28px;height:28px;font-size:19px}.class-list{border:0;gap:0;display:grid}.class-row{border-bottom:1px solid #edf3f2;grid-template-columns:31px minmax(90px,1fr) auto 34px 28px;align-items:center;gap:8px;padding:13px 0;display:grid}.class-row strong{color:#31595b;font-size:11px}.class-row small{color:#91a2a5;margin-top:3px;font-size:9px}.slot-badges{flex-wrap:wrap;justify-content:flex-end;gap:4px;display:flex}.slot-badges span{color:#147f79;background:#eaf8f5;border-radius:6px;padding:5px 7px;font-size:9px;font-weight:800}.class-row input{color:#31595b;border:1px solid #d5e5e3;border-radius:7px;outline:0;width:34px;padding:6px;font-size:10px}.class-row button{color:#fff;cursor:pointer;background:#147f79;border:0;border-radius:7px;width:28px;height:28px;font-weight:900}.history-panel{margin-top:16px;padding:22px}.history-caption{color:#91a2a5;font-size:10px}.history-list{margin-top:8px}.history-row{border-bottom:1px solid #edf3f2;grid-template-columns:12px 110px 1fr auto;align-items:center;gap:10px;padding:12px 2px;display:grid}.history-dot{background:#c5d5d5;border-radius:50%;width:8px;height:8px}.history-row.current .history-dot{background:#18a89b;box-shadow:0 0 0 4px #18a89b1c}.history-row strong{color:#31595b;font-size:12px}.history-row small{color:#91a2a5;font-size:10px}.history-row button{color:#527477;cursor:pointer;background:#fff;border:1px solid #cfe1e0;border-radius:999px;padding:7px 11px;font-size:10px;font-weight:800}.history-row button:hover:not(:disabled),.history-row.current button{color:#147f79;background:#eaf8f5;border-color:#8bd4c8}.history-row button:disabled{cursor:default}@media (max-width:850px){.academic-redesign{padding:28px 22px 50px!important}.catalog-layout{grid-template-columns:1fr}.catalog-panel{min-height:280px}}@media (max-width:600px){.academic-hero,.academic-control-bar{flex-direction:column;align-items:stretch}.academic-redesign h1{font-size:34px}.hero-year{min-width:0}.academic-control-bar{padding:17px}.year-actions{flex-direction:column;align-items:stretch}.year-actions input{width:100%}.academic-overview{grid-template-columns:1fr 1fr}.overview-stat.highlight{grid-column:1/-1}.level-tabs{grid-template-columns:1fr}.catalog-layout{flex-direction:column;display:flex}.program-panel,.catalog-panel,.history-panel{padding:17px}.class-row{grid-template-columns:30px minmax(80px,1fr) auto 28px}.class-row input{grid-column:2}.class-row button{grid-area:2/4}.history-row{grid-template-columns:10px 92px 1fr}.history-row button{grid-column:3;justify-self:start}.history-caption{display:none}}@media (max-width:390px){.academic-redesign{padding:22px 14px 40px!important}.academic-overview{grid-template-columns:1fr}.overview-stat.highlight{grid-column:auto}.program-row{grid-template-columns:28px minmax(0,1fr) 17px}.program-period{display:none}.class-row{grid-template-columns:28px minmax(0,1fr) 28px}.slot-badges{grid-column:2;justify-content:flex-start}.class-row input{grid-column:2}.class-row button{grid-area:2/3}}.country-editor{gap:16px;padding-top:16px;display:grid}.country-list{gap:0;max-height:230px;display:grid;overflow:auto}.country-item{border-bottom:1px solid #edf3f2;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.country-item strong,.country-item small{display:block}.country-item strong{color:#31595b;font-size:12px}.country-item small{color:#91a2a5;margin-top:4px;font-size:10px}.country-item>b{color:#147f79;white-space:nowrap;font-size:10px}.country-form{border-top:1px solid #edf3f2;grid-template-columns:1fr 1fr;gap:8px;padding-top:14px;display:grid}.country-form input{color:#31595b;border:1px solid #d5e5e3;border-radius:8px;outline:0;min-width:0;padding:9px 10px;font-size:11px}.country-form input:focus{border-color:#147f79}.country-form button{color:#fff;cursor:pointer;background:#147f79;border:0;border-radius:9px;grid-column:1/-1;padding:10px;font-size:11px;font-weight:850}.country-form button:hover{background:#0f6964}@media (max-width:600px){.country-form{grid-template-columns:1fr}}.academic-redesign .catalog-panel .panel-heading{padding-bottom:12px}.academic-redesign .country-editor{gap:12px;padding-top:8px}.academic-redesign .country-editor .country-list{min-height:0;max-height:230px;margin-top:0}.academic-redesign .country-item{padding:10px 0}.class-mgmt-page{max-width:1240px;margin:0 auto;padding:2px 0 48px}.class-hero{color:#fff;background:linear-gradient(125deg,#102e3a 0%,#145b62 52%,#18a89b 100%);border-radius:22px;justify-content:space-between;align-items:flex-end;gap:28px;padding:34px 38px;display:flex;position:relative;overflow:hidden;box-shadow:0 18px 38px #0f4e5633}.class-hero:before,.class-hero:after{content:"";border:1px solid #ffffff24;border-radius:50%;width:330px;height:330px;position:absolute;top:-205px;right:-70px}.class-hero:after{width:440px;height:440px;top:-260px;right:-125px}.class-hero-copy,.class-hero-year{z-index:1;position:relative}.class-hero .eyebrow{color:#a9f1e6;align-items:center;gap:8px;display:flex}.class-hero .eyebrow i{background:#f4cf62;border-radius:50%;width:7px;height:7px}.class-hero h1{color:#fff;letter-spacing:-.055em;margin:13px 0 8px;font-size:clamp(25px,3vw,38px)}.class-hero p{color:#c5ebe7;margin:0;font-size:13px}.class-hero-year{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff1a;border:1px solid #fff3;border-radius:14px;min-width:180px;padding:15px 17px}.class-hero-year span,.class-hero-year small{color:#b9e8e2;letter-spacing:.13em;font-size:9px;font-weight:800;display:block}.class-hero-year strong{color:#ffe19a;margin:7px 0 4px;font-size:23px;display:block}.class-hero-year small{letter-spacing:0;font-size:10px}.class-stats{grid-template-columns:repeat(3,1fr);gap:14px;margin:18px 0;display:grid}.class-mgmt-page .stat-card{border-radius:16px;min-height:108px;padding:20px 22px;box-shadow:0 8px 25px #0f172a0b}.class-mgmt-page .stat-card span{color:#8492a6;letter-spacing:.14em;font-size:9px;font-weight:850;display:block}.class-mgmt-page .stat-card strong{color:var(--ink);margin-top:11px;font-size:29px;display:block}.class-mgmt-page .stat-card small{color:#94a3b8;font-size:10px}.class-mgmt-page .stat-card.highlight{background:linear-gradient(135deg,#fffdf4,#fff8df);border-color:#f4df9c}.class-mgmt-page .stat-card.highlight strong{color:#a47700}.class-filter-bar{border:1px solid var(--line);background:#fff;border-radius:14px;justify-content:space-between;align-items:center;gap:18px;margin:23px 0 17px;padding:9px;display:flex;box-shadow:0 5px 18px #0f172a09}.filter-tabs{gap:4px;display:flex}.filter-tabs button{color:#7b8798;cursor:pointer;background:0 0;border:0;border-radius:9px;padding:10px 16px;font-size:11px;font-weight:800}.filter-tabs button:hover{color:var(--teal);background:#effaf8}.filter-tabs button.active{color:#fff;background:var(--teal);box-shadow:0 5px 12px #18a89b33}.class-search{background:#f8fafc!important;border-radius:9px!important;width:280px!important;min-height:38px!important}.class-groups{gap:22px;display:grid}.class-group{border:1px solid var(--line);background:#fff;border-radius:18px;padding:21px;box-shadow:0 8px 24px #0f172a0a}.class-group-header{align-items:center;gap:10px;margin-bottom:16px;display:flex}.class-group-header h2{color:var(--ink);margin:0;font-size:16px}.class-group-header small{color:#94a3b8;margin-left:auto;font-size:10px;font-weight:700}.level-pill,.class-badge{justify-content:center;align-items:center;font-weight:850;display:inline-flex}.level-pill{border-radius:7px;padding:5px 9px;font-size:9px}.level-pill.violet,.class-badge.violet{color:#6356c8;background:#eeecff}.level-pill.teal,.class-badge.teal{color:#087d73;background:#dcf7f2}.level-pill.amber,.class-badge.amber{color:#a87800;background:#fff2c9}.class-grid{grid-template-columns:repeat(auto-fill,minmax(235px,1fr));gap:12px;display:grid}.class-card{background:linear-gradient(145deg,#fff,#fbfdfd);border:1px solid #e8edf3;border-radius:14px;min-height:145px;padding:17px;text-decoration:none;transition:transform .2s,box-shadow .2s,border-color .2s;display:block;position:relative}.class-card:hover{border-color:#9eddd6;transform:translateY(-3px);box-shadow:0 12px 25px #18a89b1f}.class-card-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.class-badge{border-radius:7px;min-width:35px;padding:6px 8px;font-size:12px}.homeroom-tag{color:#16845d;font-size:9px;font-weight:800}.homeroom-tag.empty{color:#a0aaba;font-weight:650}.class-name{color:var(--ink);margin:17px 0 10px;font-size:15px;display:block}.class-meta{color:#8794a5;gap:7px;font-size:10px;display:flex}.class-meta span{align-items:center;gap:4px;display:flex}.homeroom-name{color:#64748b;margin-top:11px;font-size:10px;font-weight:650}.class-card-arrow{color:var(--teal);font-size:18px;position:absolute;bottom:14px;right:17px}.class-empty{text-align:center;background:#ffffffa6;border:1px dashed #cbd5e1;border-radius:18px;padding:58px 20px}.class-empty span{margin-bottom:10px;font-size:30px;display:block}.class-empty strong{color:var(--ink);font-size:14px;display:block}.class-empty p{color:var(--muted);margin:8px 0 0;font-size:11px}.academic-notice.error{color:#b74743;background:#fff4f2;border:1px solid #f1c5c1;border-radius:11px;margin:16px 0;padding:13px 16px;font-size:12px}.academic-notice.error span{color:#fff;background:#d95f5a;border-radius:50%;place-items:center;width:18px;height:18px;margin-right:8px;font-weight:800;display:inline-grid}@media (max-width:720px){.class-hero{flex-direction:column;align-items:flex-start;padding:26px 23px}.class-hero-year{width:100%}.class-stats{gap:9px}.class-mgmt-page .stat-card{padding:15px}.class-mgmt-page .stat-card strong{font-size:22px}.class-filter-bar{flex-direction:column;align-items:stretch;padding:8px}.filter-tabs{overflow:auto}.filter-tabs button{white-space:nowrap;flex:1;padding-inline:12px}.class-search{width:100%!important}.class-group{padding:15px}.class-grid{grid-template-columns:1fr}.class-group-header h2{font-size:14px}}.class-detail-page{max-width:1240px;margin:0 auto;padding:2px 0 50px}.class-breadcrumb{color:#94a3b8;align-items:center;gap:10px;margin:0 0 18px;font-size:11px;display:flex}.class-breadcrumb a{color:var(--teal);font-weight:800;text-decoration:none}.class-breadcrumb a:hover{text-decoration:underline}.class-detail-hero{color:#fff;background:linear-gradient(125deg,#102e3a,#145b62 55%,#18a89b);border-radius:22px;justify-content:space-between;align-items:center;gap:24px;padding:28px 32px;display:flex;box-shadow:0 18px 38px #0f4e5633}.detail-hero-left{align-items:center;gap:18px;display:flex}.class-code-badge{width:62px;height:62px;color:var(--teal-dark);background:#fff;border-radius:17px;place-items:center;font-size:20px;font-weight:900;display:grid;box-shadow:0 8px 18px #082e3545}.class-detail-hero h1{color:#fff;letter-spacing:-.055em;margin:0 0 7px;font-size:clamp(24px,3vw,34px)}.class-detail-hero p{color:#c5ebe7;margin:0;font-size:12px}.detail-hero-stats{gap:28px;display:flex}.detail-stat{border-left:1px solid #ffffff38;min-width:110px;padding-left:20px}.detail-stat span{color:#b9e8e2;letter-spacing:.14em;font-size:9px;font-weight:800;display:block}.detail-stat strong{color:#ffe19a;text-overflow:ellipsis;white-space:nowrap;max-width:180px;margin-top:8px;font-size:17px;display:block;overflow:hidden}.detail-stat small{color:#d2efec;font-size:11px}.class-detail-layout{grid-template-columns:330px minmax(0,1fr);gap:18px;margin-top:18px;display:grid}.homeroom-panel,.student-panel{border:1px solid var(--line);background:#fff;border-radius:18px;padding:23px;box-shadow:0 8px 24px #0f172a0b}.panel-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.panel-heading h2{color:var(--ink);letter-spacing:-.03em;margin:7px 0 0;font-size:17px}.section-kicker{letter-spacing:.15em;font-size:9px}.current-homeroom{background:#effaf8;border:1px solid #bce9e2;border-radius:13px;align-items:center;gap:12px;margin:22px 0;padding:14px;display:flex}.teacher-avatar{background:var(--teal);color:#fff;border-radius:12px;place-items:center;width:42px;height:42px;font-weight:900;display:grid}.current-homeroom strong,.current-homeroom small{display:block}.current-homeroom strong{color:var(--ink);font-size:12px}.current-homeroom small{color:var(--muted);margin-top:4px;font-size:10px}.homeroom-empty{text-align:center;color:#94a3b8;border:1px dashed #cbd5e1;border-radius:13px;margin:22px 0;padding:18px}.homeroom-empty span{color:#d5a800;margin-bottom:6px;font-size:24px;display:block}.homeroom-empty p{margin:0;font-size:11px}.homeroom-form{gap:8px;display:grid}.homeroom-form label{color:var(--ink);font-size:11px;font-weight:800}.homeroom-form select{width:100%;min-height:42px}.homeroom-form button{width:100%;min-height:42px;margin-top:4px}.class-quick-info{border-top:1px solid var(--line);gap:0;margin-top:23px;display:grid}.info-row{border-bottom:1px solid #eef2f6;justify-content:space-between;gap:10px;padding:11px 0;display:flex}.info-row span{color:#94a3b8;font-size:10px}.info-row strong{color:var(--ink);text-align:right;font-size:10px}.student-panel .class-search{margin:20px 0 12px;background:#f8fafc!important;width:100%!important}.student-list{border:1px solid #e7edf3;border-radius:12px;overflow:auto}.student-list-header,.student-row{grid-template-columns:38px 70px minmax(150px,1fr) 40px 90px 100px;align-items:center;gap:9px;min-width:600px;display:grid}.student-list-header{color:#94a3b8;letter-spacing:.08em;background:#f8fafc;padding:11px 14px;font-size:9px;font-weight:850}.student-row{border-top:1px solid #eef2f6;padding:13px 14px;text-decoration:none;transition:all .18s}.student-row:hover{background:#effaf8}.row-index,.student-num,.enrolled-date{color:#94a3b8;font-size:10px}.student-name{color:var(--ink);font-size:11px;font-weight:750}.gender-badge{border-radius:7px;place-items:center;width:23px;height:23px;font-size:10px;font-weight:900;display:grid}.gender-badge.male{color:#4774b8;background:#e8f1ff}.gender-badge.female{color:#c25f88;background:#fff0f5}.status-badge{color:#16845d;background:#e8f8f5;border-radius:7px;width:max-content;padding:5px 8px;font-size:9px;font-weight:800;display:inline-flex}.class-empty.small{border:0;padding:35px 15px}.academic-notice{margin:16px 0}.academic-notice.success{color:#16845d;background:#effaf8;border:1px solid #bce9e2}.academic-notice.error{color:#b74743;background:#fff4f2;border:1px solid #f1c5c1}@media (max-width:850px){.class-detail-hero{flex-direction:column;align-items:flex-start}.detail-hero-stats{width:100%;margin-top:8px}.detail-stat{flex:1}.class-detail-layout{grid-template-columns:1fr}.homeroom-panel{order:1}.student-panel{order:2}}@media (max-width:560px){.class-detail-page{padding-bottom:30px}.class-detail-hero{padding:22px 19px}.detail-hero-left{align-items:flex-start;gap:12px}.class-code-badge{border-radius:13px;width:50px;height:50px;font-size:16px}.class-detail-hero h1{font-size:24px}.detail-hero-stats{gap:14px}.detail-stat{min-width:0;padding-left:12px}.detail-stat strong{font-size:14px}.homeroom-panel,.student-panel{padding:17px}.student-list-header,.student-row{grid-template-columns:32px 58px minmax(135px,1fr) 35px 82px 90px}}.enrollment-modal-backdrop{z-index:50;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0f172a75;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.enrollment-modal{background:#fff;border:1px solid #fff9;border-radius:20px;width:min(100%,520px);max-height:min(720px,100vh - 40px);padding:24px;overflow:auto;box-shadow:0 24px 70px #0f172a40}.enrollment-modal-header{justify-content:space-between;align-items:flex-start;gap:15px;display:flex}.enrollment-modal h2{color:var(--ink);letter-spacing:-.04em;margin:7px 0 0;font-size:20px}.modal-close{color:#64748b;cursor:pointer;background:#f1f5f9;border:0;border-radius:9px;width:32px;height:32px;font-size:21px;line-height:1}.modal-description{color:var(--muted);margin:12px 0 16px;font-size:12px}.enrollment-modal .class-search{width:100%!important}.student-picker-table-wrap{border:1px solid #dbe5ed;border-radius:10px;max-height:330px;margin:12px 0;overflow:hidden auto}.student-picker-table{border-collapse:collapse;width:100%;font-size:10px}.student-picker-table th{z-index:1;color:#475569;text-align:left;white-space:nowrap;background:#f4f7fa;padding:8px 9px;font-size:9px;position:sticky;top:0}.student-picker-table td{color:#64748b;border-top:1px solid #edf1f5;padding:8px 9px;font-size:10px}.student-picker-table td strong{color:#172033;font-size:10px}.student-picker-table tr.selected,.student-picker-table tr:hover{background:#effaf8}.picker-select-button{color:#12877d;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #b7ddd8;border-radius:6px;padding:5px 7px;font-size:9px;font-weight:800}.student-picker-table .picker-empty{text-align:center;color:#64748b;padding:22px;font-size:10px}.student-picker-option{text-align:left;cursor:pointer;background:#fff;border:1px solid #e7edf3;border-radius:11px;align-items:center;gap:11px;width:100%;padding:11px;transition:all .18s;display:flex}.student-picker-option:hover,.student-picker-option.selected{background:#effaf8;border-color:#9eddd6}.picker-avatar{width:32px;height:32px;color:var(--teal-dark);background:#dcf7f2;border-radius:9px;place-items:center;font-weight:850;display:grid}.student-picker-option strong,.student-picker-option small{display:block}.student-picker-option strong{color:var(--ink);font-size:12px}.student-picker-option small{color:var(--muted);margin-top:3px;font-size:10px}.picker-check{color:var(--teal);margin-left:auto;font-size:18px;font-weight:900}.picker-empty{text-align:center;color:var(--muted);padding:24px;font-size:11px}.modal-actions{justify-content:flex-end;gap:9px;margin-top:18px;display:flex}.modal-actions button{min-height:40px}@media (max-width:560px){.enrollment-modal{padding:19px}.modal-actions{flex-direction:column-reverse}.modal-actions button{width:100%}}.roster-action{color:#64748b;letter-spacing:1px;cursor:pointer;background:#fff;border:1px solid #d7e2ea;border-radius:9px;place-items:center;width:32px;height:32px;padding:0;font-size:13px;font-weight:900;line-height:1;transition:all .2s;display:inline-grid}.roster-action:hover{color:#12877d;background:#effaf8;border-color:#18a89b;transform:translateY(-1px);box-shadow:0 4px 10px #18a89b24}.student-list-header,.student-row{grid-template-columns:38px 70px minmax(150px,1fr) 40px 90px 100px 42px}.promotion-tabs{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;grid-template-columns:repeat(3,1fr);gap:7px;margin:18px 0 20px;padding:5px;display:grid}.promotion-tabs button{color:#64748b;cursor:pointer;background:0 0;border:0;border-radius:8px;min-height:40px;font-size:11px;font-weight:800;transition:all .2s}.promotion-tabs button:hover{color:#12877d;background:#e8f8f5}.promotion-tabs button.active{color:#fff;background:#18a89b;box-shadow:0 4px 10px #18a89b33}.promotion-field{color:#334155;gap:7px;margin-top:14px;font-size:11px;font-weight:800;display:grid}.promotion-field select,.promotion-field textarea{width:100%;min-height:44px}.promotion-field textarea{resize:vertical;min-height:82px;padding:12px 13px}.promotion-tabs button:focus-visible,.roster-action:focus-visible{outline-offset:2px;outline:3px solid #eab71c80}@media (max-width:560px){.promotion-tabs{gap:4px}.promotion-tabs button{padding-inline:4px;font-size:10px}.student-list-header,.student-row{grid-template-columns:32px 58px minmax(135px,1fr) 35px 82px 90px 36px}}.new-student-inline-form{gap:11px;margin:15px 0;display:grid}.new-student-inline-form label{color:#334155;gap:6px;font-size:11px;font-weight:800;display:grid}.new-student-inline-form label span{color:#94a3b8;font-weight:500}.new-student-inline-form input,.new-student-inline-form select{width:100%;min-height:42px}.add-student-tabs{margin-top:18px;margin-bottom:16px}.lifecycle-warning{color:#8b6500;background:#fff8df;border:1px solid #f1d477;border-radius:10px;gap:4px;margin-top:16px;padding:12px 13px;font-size:10px;display:grid}.lifecycle-warning strong{font-size:11px}.lifecycle-warning.transfer{color:#3d6797;background:#eff6ff;border-color:#b9d5f2}.lifecycle-warning.drop{color:#b74743;background:#fff1ef;border-color:#efb8b4}.danger-action{background:#d95f5a!important;border-color:#d95f5a!important}.danger-action:hover{background:#b74743!important;border-color:#b74743!important}.teacher-form-step-0 .teacher-form-grid>label:nth-child(n+11),.teacher-form-step-0 .teacher-form-grid>p,.teacher-form-step-1 .teacher-form-grid>label:nth-child(-n+12),.teacher-form-step-1 .teacher-form-grid>label:nth-child(n+17),.teacher-form-step-2 .teacher-form-grid>label:nth-child(-n+16),.teacher-form-step-2 .teacher-form-grid>label:nth-child(n+21),.teacher-form-step-3 .teacher-form-grid>label:nth-child(-n+20),.teacher-form-step-3 .teacher-form-grid>label:nth-child(n+29),.teacher-form-step-4 .teacher-form-grid>label:nth-child(-n+28){display:none}.teacher-form-stepper{flex-wrap:wrap;gap:8px;margin:16px 0;display:flex}.teacher-form-stepper button{cursor:pointer;background:#f8fafc;border:1px solid #dbe4ee;border-radius:999px;padding:8px 12px}.teacher-form-stepper button.active{color:#fff;background:#0ea5a4;border-color:#0ea5a4}.visitor-catalog-page{min-height:100vh;color:var(--ink);background:#f8fafc;font-family:Inter,ui-sans-serif,system-ui,sans-serif}.catalog-hero{background:radial-gradient(circle at 10% 20%,#18a89b1f 0%,#0000 40%),radial-gradient(circle at 90% 10%,#eab71c1a 0%,#0000 35%),linear-gradient(#f0fdfa 0%,#f8fafc 100%);border-bottom:1px solid #e2e8f0cc;padding:56px 0 38px}.catalog-hero-content{max-width:780px}.catalog-hero-content h1{letter-spacing:-.05em;color:var(--ink);margin:18px 0 14px;font-size:clamp(32px,4.5vw,52px);font-weight:850;line-height:1.14}.catalog-hero-content h1 em{color:var(--teal);font-style:normal}.catalog-hero-content p{color:#64748b;margin:0;font-size:15px;line-height:1.7}.catalog-content-section{padding:48px 0 76px}.catalog-filter-bar{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:32px;display:flex}.catalog-filter-bar h2{letter-spacing:-.04em;color:var(--ink);margin:6px 0 0;font-size:26px}.catalog-tabs{border:1px solid var(--line);background:#fff;border-radius:12px;flex-wrap:wrap;gap:8px;padding:6px;display:flex;box-shadow:0 4px 14px #0f172a0a}.catalog-tab{color:#64748b;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:9px 16px;font-size:12px;font-weight:750;transition:all .2s}.catalog-tab:hover{color:var(--teal-dark);background:#f1fbf9}.catalog-tab.active{background:var(--teal);color:#fff;box-shadow:0 4px 12px #18a89b40}.program-cards-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:28px;padding:2px 2px 16px;display:grid;overflow:hidden}.program-carousel-controls{justify-content:center;align-items:center;gap:18px;margin-top:6px;display:flex}.program-carousel-button{color:var(--teal-dark);font:inherit;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:10px;padding:10px 16px;font-size:12px;font-weight:800;transition:all .2s}.program-carousel-button:hover:not(:disabled){border-color:var(--teal);background:#f1fbf9;transform:translateY(-1px)}.program-carousel-button:disabled{cursor:not-allowed;opacity:.45}.program-carousel-button-primary{border-color:var(--teal);background:var(--teal);color:#fff}.program-carousel-button-primary:hover:not(:disabled){background:var(--teal-dark);color:#fff}.program-carousel-status{color:#64748b;text-align:center;min-width:42px;font-size:12px;font-weight:800}.program-card-box{background:#fff;border:1px solid #e2e8f0;border-radius:20px;flex-direction:column;width:100%;min-width:0;height:100%;min-height:680px;transition:transform .25s,box-shadow .25s,border-color .25s;display:flex;overflow:hidden;box-shadow:0 10px 30px #0f172a0f}.program-card-box:hover{border-color:#9ee0d7;transform:translateY(-6px);box-shadow:0 20px 42px #18a89b24}.program-card-thumb{aspect-ratio:16/9;background:#e2e8f0;width:100%;height:auto;min-height:200px;position:relative;overflow:hidden}.program-card-thumb img{object-fit:cover;object-position:center;width:100%;height:100%;transition:transform .5s;display:block}.program-card-box:hover .program-card-thumb img{transform:scale(1.05)}.card-thumb-overlay{background:linear-gradient(#0f172a33 0%,#0f172aa6 100%);position:absolute;inset:0}.card-badge-row{z-index:2;justify-content:space-between;align-items:center;display:flex;position:absolute;top:14px;left:14px;right:14px}.program-level-badge{letter-spacing:.06em;text-transform:uppercase;border-radius:999px;padding:6px 12px;font-size:10px;font-weight:850}.badge-mts{color:#fff;background:#0ea5e9;box-shadow:0 3px 10px #0ea5e966}.badge-ma{color:#fff;background:#8b5cf6;box-shadow:0 3px 10px #8b5cf666}.badge-preuniv{color:#fff;background:#f59e0b;box-shadow:0 3px 10px #f59e0b66}.program-status-pill{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#15803d;background:#fffffff2;border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:10px;font-weight:850;display:inline-flex}.live-dot{background:#22c55e;border-radius:50%;width:7px;height:7px;display:inline-block;box-shadow:0 0 0 3px #22c55e40}.program-card-body{flex-direction:column;flex:1;padding:24px;display:flex}.program-card-header{min-height:30px;margin-bottom:4px}.program-code-label{letter-spacing:.12em;color:var(--teal);margin-bottom:4px;font-size:10px;font-weight:850;display:inline-block}.program-title{color:var(--ink);letter-spacing:-.03em;margin:0;font-size:19px;font-weight:850;line-height:1.25}.period-title{color:#64748b;margin:5px 0 0;font-size:13px;font-weight:600}.period-schedule-info{color:#64748b;background:#f8fafc;border:1px solid #f1f5f9;border-radius:8px;align-items:center;gap:8px;margin:6px 0 14px;padding:7px 11px;font-size:11px;display:flex}.schedule-icon{font-size:13px}.program-desc{color:#475569;min-height:58px;margin:0 0 16px;font-size:12px;line-height:1.6}.program-fee-section{background:linear-gradient(135deg,#f0fdfa,#f8fafc);border:1px solid #ccfbf1;border-radius:12px;justify-content:space-between;align-items:baseline;margin-bottom:18px;padding:14px 16px;display:flex}.fee-label{color:#0f766e;text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:700}.fee-amount strong{color:var(--ink);letter-spacing:-.03em;font-size:18px}.fee-amount .free-text{color:#16a34a;font-size:14px}.program-facilities-section{flex:1;margin-bottom:18px}.facilities-heading{color:#334155;letter-spacing:.02em;margin-bottom:8px;font-size:11px;font-weight:800;display:block}.facilities-list{gap:7px;margin:0;padding:0;list-style:none;display:grid}.facilities-list li{color:#475569;align-items:flex-start;gap:8px;font-size:12px;line-height:1.45;display:flex}.facility-check{color:#15803d;background:#dcfce7;border-radius:50%;flex-shrink:0;place-items:center;width:17px;height:17px;margin-top:1px;font-size:10px;font-weight:900;display:inline-grid}.template-note-pill{color:#64748b;background:#f1f5f9;border-radius:6px;margin-top:auto;padding:6px 10px;font-size:10px}.program-card-footer{background:#fff;border-top:1px solid #f1f5f9;align-items:center;gap:10px;margin-top:auto;padding:16px 24px 22px;display:flex}.btn-booklet{color:#334155;white-space:nowrap;background:#fff;border:1px solid #cbd5e1;border-radius:11px;justify-content:center;align-items:center;padding:11px 16px;font-size:12px;font-weight:750;text-decoration:none;transition:all .2s;display:inline-flex}.btn-booklet:hover{border-color:var(--teal);color:var(--teal-dark);background:#f8fafc}.btn-enroll-now{color:#fff;cursor:pointer;background:linear-gradient(135deg,#14b8a6,#0d9488);border:0;border-radius:11px;flex:1;justify-content:center;align-items:center;gap:8px;padding:12px 18px;font-size:13px;font-weight:850;transition:all .2s;display:inline-flex;box-shadow:0 4px 14px #14b8a64d}.btn-enroll-now:hover:not(:disabled){background:linear-gradient(135deg,#0d9488,#0f766e);transform:translateY(-2px);box-shadow:0 8px 20px #14b8a666}.btn-enroll-now:disabled{opacity:.7;cursor:wait}.arrow-icon{font-size:15px;transition:transform .2s}.btn-enroll-now:hover .arrow-icon{transform:translate(4px)}.btn-spinner{border:2px solid #fff6;border-top-color:#fff;border-radius:50%;width:14px;height:14px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.catalog-loading{text-align:center;color:#64748b;place-items:center;gap:14px;padding:64px 20px;display:grid}.spinner-ring{border:3px solid #ccfbf1;border-top-color:var(--teal);border-radius:50%;width:38px;height:38px;animation:.8s linear infinite spin}.catalog-empty-card{text-align:center;background:#fff;border:1px dashed #cbd5e1;border-radius:20px;max-width:580px;margin:0 auto;padding:56px 28px}.empty-icon{margin-bottom:12px;font-size:42px}.catalog-empty-card h3{color:var(--ink);margin:0 0 8px;font-size:20px}.catalog-empty-card p{color:#64748b;margin:0;font-size:13px;line-height:1.6}.catalog-error-box{color:#e11d48;background:#fff1f2;border:1px solid #fecdd3;border-radius:12px;margin-bottom:24px;padding:14px 18px;font-size:13px;font-weight:600}.catalog-steps-section{background:#fff;border-top:1px solid #e2e8f0;padding:72px 0 88px}.steps-grid{grid-template-columns:repeat(4,1fr);gap:22px;margin-top:48px;display:grid}.step-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:18px;padding:28px 24px;transition:transform .2s,border-color .2s;position:relative}.step-card:hover{border-color:#9ee0d7;transform:translateY(-4px)}.step-number{background:linear-gradient(135deg, var(--teal), var(--teal-dark));color:#fff;border-radius:12px;place-items:center;width:40px;height:40px;margin-bottom:18px;font-size:18px;font-weight:900;display:grid;box-shadow:0 6px 14px #18a89b40}.step-card h4{color:var(--ink);margin:0 0 8px;font-size:16px}.step-card p{color:#64748b;margin:0;font-size:12px;line-height:1.6}@media (max-width:900px){.steps-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.landing-container{width:min(100% - 28px,1180px)}.catalog-content-section{padding:32px 0 60px}.catalog-filter-bar{flex-direction:column;align-items:stretch;gap:16px;margin-bottom:22px}.catalog-filter-bar h2{font-size:23px}.catalog-tabs{scrollbar-width:none;flex-wrap:nowrap;width:100%;overflow-x:auto}.catalog-tabs::-webkit-scrollbar{display:none}.catalog-tab{white-space:nowrap;flex:none;padding:9px 13px}.program-cards-grid{grid-template-columns:minmax(0,1fr);gap:18px;padding:0 0 8px}.program-card-box{width:100%;height:auto;min-height:0}.program-card-thumb{aspect-ratio:16/9;height:auto;min-height:0}.program-card-body{padding:20px}.steps-grid{grid-template-columns:1fr}.program-card-footer{flex-direction:column;align-items:stretch;padding:14px 20px 20px}.btn-booklet,.btn-enroll-now{width:100%}.program-carousel-controls{justify-content:space-between;gap:8px}.program-carousel-button{flex:1;min-width:0;padding:10px 8px;font-size:11px}.program-carousel-status{flex:0 0 34px;min-width:34px}.whatsapp-floating-container{bottom:14px;right:14px}}.whatsapp-floating-container{z-index:100;flex-direction:column;align-items:flex-end;gap:12px;display:flex;position:fixed;bottom:28px;right:28px}.whatsapp-floating-btn{color:#fff;cursor:pointer;background:#25d366;border:0;border-radius:999px;align-items:center;gap:10px;padding:12px 20px 12px 14px;font-family:inherit;font-size:13px;font-weight:800;transition:all .25s cubic-bezier(.16,1,.3,1);display:flex;position:relative;box-shadow:0 10px 28px #25d36666}.whatsapp-floating-btn:hover{background:#20ba5a;transform:translateY(-3px)scale(1.02);box-shadow:0 14px 34px #25d36680}.whatsapp-btn-icon{background:#fff3;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.whatsapp-btn-text{letter-spacing:-.01em;white-space:nowrap}.whatsapp-pulse-ring{opacity:.8;pointer-events:none;border:2px solid #25d366;border-radius:999px;animation:2.2s cubic-bezier(.24,0,.38,1) infinite wa-pulse;position:absolute;inset:-4px}@keyframes wa-pulse{0%{opacity:.9;transform:scale(.95)}70%{opacity:0;transform:scale(1.15)}to{opacity:0;transform:scale(1.2)}}.whatsapp-popup-menu{transform-origin:100% 100%;background:#fff;border:1px solid #e2e8f0;border-radius:20px;width:320px;animation:.22s cubic-bezier(.16,1,.3,1) forwards wa-popup-appear;overflow:hidden;box-shadow:0 20px 50px #0f172a2e}@keyframes wa-popup-appear{0%{opacity:0;transform:scale(.92)translateY(12px)}to{opacity:1;transform:scale(1)translateY(0)}}.whatsapp-popup-header{color:#fff;background:linear-gradient(135deg,#128c7e,#075e54);justify-content:space-between;align-items:center;padding:16px 18px;display:flex}.whatsapp-popup-header-info{align-items:center;gap:10px;display:flex}.whatsapp-header-avatar{background:#fff3;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.whatsapp-header-avatar svg{fill:#fff;width:22px;height:22px}.whatsapp-popup-header h4{color:#fff;margin:0;font-size:14px;font-weight:850}.whatsapp-popup-header p{color:#c9ede7;margin:2px 0 0;font-size:11px}.whatsapp-popup-close{color:#fff;opacity:.75;cursor:pointer;background:0 0;border:0;padding:4px;font-size:20px;line-height:1}.whatsapp-popup-close:hover{opacity:1}.whatsapp-popup-body{max-height:360px;padding:14px;overflow-y:auto}.whatsapp-popup-note{color:#64748b;margin:0 0 10px;padding:0 4px;font-size:11px}.whatsapp-admin-list{flex-direction:column;gap:8px;display:flex}.whatsapp-admin-item{background:#f8fafc;border:1px solid #eef2f6;border-radius:12px;justify-content:space-between;align-items:center;padding:10px 12px;text-decoration:none;transition:all .18s;display:flex}.whatsapp-admin-item:hover{background:#f0fdf4;border-color:#86efac;transform:translate(-2px)}.whatsapp-admin-info strong{color:var(--ink);font-size:13px;font-weight:750;display:block}.whatsapp-admin-info small{color:#64748b;margin-top:2px;font-size:10px;display:block}.whatsapp-admin-action{color:#16a34a;background:#dcfce7;border-radius:50%;flex-shrink:0;place-items:center;width:28px;height:28px;font-size:13px;font-weight:850;display:grid}@media (max-width:768px){.whatsapp-floating-container{bottom:20px;right:18px}.whatsapp-popup-menu{width:min(320px,100vw - 36px)}.whatsapp-btn-text{display:none}.whatsapp-floating-btn{border-radius:50%;justify-content:center;width:56px;height:56px;padding:12px}.whatsapp-btn-icon{width:32px;height:32px}}.student-portal-page{color:#122b37;background:#f4f7f8;min-height:100vh;font-family:Inter,ui-sans-serif,system-ui,sans-serif;display:flex}.student-portal-sidebar{color:#d8e8e8;background:#102f3c;flex-direction:column;flex-shrink:0;gap:46px;width:248px;padding:28px 18px 20px;display:flex}.student-portal-brand{color:#fff;align-items:center;gap:10px;text-decoration:none;display:flex}.student-portal-brand strong{letter-spacing:.08em;font-size:14px;display:block}.student-portal-brand small{color:#8ba9b0;letter-spacing:.17em;margin-top:3px;font-size:8px;display:block}.student-portal-mark{color:#102f3c;background:#e4b62b;border-radius:11px;place-items:center;width:34px;height:34px;font-size:20px;font-weight:900;display:grid}.student-portal-nav{gap:8px;display:grid}.student-portal-nav a{color:#9cb7bd;border-radius:11px;padding:12px 14px;font-size:13px;text-decoration:none}.student-portal-nav a.active,.student-portal-nav a:hover{color:#fff;background:#1c4b58}.student-portal-sidebar-footer{border-top:1px solid #2b4e58;align-items:center;gap:9px;margin-top:auto;padding-top:18px;display:flex}.student-portal-sidebar-footer strong,.student-portal-sidebar-footer small{display:block}.student-portal-sidebar-footer strong{color:#fff;font-size:11px}.student-portal-sidebar-footer small{color:#8ba9b0;margin-top:3px;font-size:9px}.student-portal-sidebar-footer a{color:#8ba9b0;margin-left:auto}.student-avatar{color:#18766b;background:#d9f4ed;border-radius:50%;place-items:center;width:34px;height:34px;font-size:10px;font-weight:800;display:grid}.student-portal-content{width:100%;max-width:1100px;margin:0 auto;padding:42px 52px 70px}.student-portal-topbar,.student-section-heading{justify-content:space-between;align-items:center;gap:16px;display:flex}.student-portal-topbar h1{letter-spacing:-.04em;margin:8px 0 28px;font-size:28px}.student-portal-eyebrow{letter-spacing:.16em;color:#8098a0;margin:0;font-size:9px;font-weight:800}.student-portal-topbar h1 span{color:#dcae25}.student-notification-button{color:#49626a;background:#fff;border:0;border-radius:12px;padding:12px 15px;font-size:19px;position:relative}.student-notification-button i{color:#fff;background:#dc6b61;border-radius:99px;padding:4px 6px;font-size:9px;font-style:normal;position:absolute;top:-4px;right:-4px}.student-welcome-card{background:linear-gradient(120deg,#dff4ee,#edf8f5 55%,#f8efe0);border-radius:22px;justify-content:space-between;align-items:center;min-height:210px;padding:34px 42px;display:flex;overflow:hidden}.student-welcome-card h2{letter-spacing:-.06em;margin:12px 0;font-size:34px;line-height:1.08}.student-welcome-card h2 em{color:#159788;font-style:normal}.student-welcome-card p:last-child{color:#668088;max-width:470px;font-size:13px;line-height:1.6}.student-welcome-orb{background:#fff8;border:14px solid #bde5da;border-radius:50%;align-content:center;place-items:center;width:130px;height:130px;display:grid;box-shadow:0 0 0 10px #fff6}.student-welcome-orb strong{font-size:27px}.student-welcome-orb span{color:#668088;font-size:10px}.student-kpi-section,.student-notifications-section{margin-top:38px}.student-section-heading h2{letter-spacing:-.04em;margin:7px 0 18px;font-size:21px}.student-text-button{color:#168b80;background:0 0;border:0;font-size:11px;font-weight:800}.student-kpi-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.student-kpi-card{background:#fff;border-radius:17px;min-height:148px;padding:20px;box-shadow:0 6px 22px #153a4810}.student-kpi-card.mint{border-top:3px solid #48bca8}.student-kpi-card.gold{border-top:3px solid #e0b331}.student-kpi-card.violet{border-top:3px solid #9a8cdb}.student-kpi-card.blue{border-top:3px solid #6aa9d7}.student-kpi-icon{float:right;color:#4baea0}.student-kpi-label,.student-kpi-card small{color:#7b9298;font-size:10px;display:block}.student-kpi-card strong{margin:16px 0 8px;font-size:27px;display:block}.student-notification-list{background:#fff;border-radius:17px;box-shadow:0 6px 22px #153a4810}.student-notification-item{border-bottom:1px solid #edf1f2;align-items:flex-start;gap:14px;padding:20px 22px;display:flex}.student-notification-item:last-child{border-bottom:0}.student-notification-dot{background:#dba928;border-radius:50%;flex-shrink:0;width:9px;height:9px;margin-top:7px}.student-notification-dot.exam{background:#8d7cd0}.student-notification-dot.schedule{background:#5e9ece}.student-notification-meta{align-items:center;gap:12px;display:flex}.student-notification-meta b{color:#d18e18;text-transform:uppercase;letter-spacing:.1em;font-size:9px}.student-notification-meta time{color:#9aadb2;font-size:9px}.student-notification-item h3{margin:7px 0 4px;font-size:13px}.student-notification-item p{color:#758d93;margin:0;font-size:11px;line-height:1.5}.student-notification-arrow{color:#9db0b5;margin-left:auto}.student-portal-module{display:block}.student-portal-page button{cursor:pointer}@media (max-width:800px){.student-portal-sidebar{width:76px;padding:24px 10px}.student-portal-sidebar .student-portal-brand span:last-child,.student-portal-nav a span,.student-portal-sidebar-footer span:not(.student-avatar),.student-portal-sidebar-footer a{display:none}.student-portal-nav a{text-align:center;font-size:18px}.student-portal-content{padding:28px 20px}.student-kpi-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:520px){.student-portal-content{padding:22px 14px}.student-portal-topbar h1{font-size:22px}.student-welcome-card{min-height:190px;padding:24px}.student-welcome-card h2{font-size:27px}.student-welcome-orb{border-width:9px;width:90px;height:90px}.student-welcome-orb strong{font-size:20px}.student-kpi-card{min-height:130px;padding:15px}.student-kpi-card strong{font-size:22px}.student-notification-item{padding:16px}.student-notification-item p{font-size:10px}}.student-portal-page{background:#f7f9f8}.student-portal-sidebar-label{color:#66858c;letter-spacing:.18em;margin:-20px 14px -30px;font-size:9px;font-weight:800}.student-portal-nav a{align-items:center;gap:13px;transition:all .2s;display:flex}.student-portal-nav a span{text-align:center;color:#82a9ad;width:18px}.student-portal-nav a.active{box-shadow:inset 3px 0 #e9bd38}.student-portal-sidebar-help{color:#d9e7e7;border:1px solid #315a63;border-radius:13px;align-items:center;gap:9px;padding:12px;display:flex}.student-portal-sidebar-help>span{color:#163843;background:#e5b735;border-radius:50%;place-items:center;width:25px;height:25px;font-weight:900;display:grid}.student-portal-sidebar-help strong,.student-portal-sidebar-help small{display:block}.student-portal-sidebar-help strong{font-size:10px}.student-portal-sidebar-help small{color:#88a9ad;margin-top:3px;font-size:9px}.student-topbar-actions{gap:10px;display:flex}.student-search-button,.student-notification-button{background:#fff;border:1px solid #e4eaeb;border-radius:13px;width:43px;height:43px}.student-search-button{color:#789096;font-size:25px}.student-welcome-card{position:relative;box-shadow:0 18px 40px #2a80721a}.student-welcome-copy{z-index:1;position:relative}.student-welcome-actions{align-items:center;gap:18px;margin-top:20px;display:flex}.student-welcome-actions>a{color:#fff;background:#153e4a;border-radius:9px;align-items:center;gap:18px;padding:10px 14px;font-size:11px;font-weight:800;text-decoration:none;display:inline-flex}.student-welcome-actions>a span{font-size:18px}.student-live-status{color:#6c878d;font-size:9px}.student-live-status i{background:#3db597;border-radius:50%;width:6px;height:6px;margin-right:5px;display:inline-block}.student-welcome-orb{flex-shrink:0}.student-kpi-card{position:relative;overflow:hidden}.student-kpi-top{justify-content:space-between;display:flex}.student-kpi-icon{float:none}.student-kpi-value{align-items:baseline;gap:2px;margin:17px 0 7px;display:flex}.student-kpi-value strong{font-size:30px}.student-kpi-value span{color:#6e858b;font-size:12px}.student-kpi-card small b{color:#169481}.student-kpi-progress{background:#eef2f2;border-radius:9px;height:4px;margin-top:16px}.student-kpi-progress span{background:#53bca8;border-radius:9px;height:100%;display:block}.student-kpi-card.amber .student-kpi-progress span{background:#deb333}.student-kpi-card.lilac .student-kpi-progress span{background:#a593dd}.student-kpi-card.sky .student-kpi-progress span{background:#72abd4}.student-lower-grid{grid-template-columns:minmax(0,1.35fr) minmax(280px,.75fr);gap:20px;display:grid}.student-notifications-section{margin-top:38px}.student-today-card{background:#fff;border-radius:17px;margin-top:38px;padding:20px 22px;box-shadow:0 6px 22px #153a4810}.student-calendar-icon{color:#158b7b;background:#e5f3ef;border-radius:9px;place-items:center;width:34px;height:34px;font-size:12px;font-weight:900;display:grid}.student-agenda-item{border-bottom:1px solid #edf1f2;gap:15px;padding:16px 0;display:flex;position:relative}.student-agenda-item time{color:#8a9ca1;font-size:10px;font-weight:800}.student-agenda-item strong,.student-agenda-item small{display:block}.student-agenda-item strong{font-size:11px}.student-agenda-item small{color:#84999e;margin-top:4px;font-size:9px}.student-agenda-item.current{border-left:3px solid #48bca8;padding-left:10px}.student-agenda-item.current>span{color:#159987;align-self:center;margin-left:auto;font-size:8px;font-weight:800}.student-agenda-link{color:#168b80;margin-top:17px;font-size:10px;font-weight:800;text-decoration:none;display:block}@media (max-width:900px){.student-lower-grid{grid-template-columns:1fr}.student-today-card{margin-top:0}}@media (max-width:520px){.student-portal-sidebar-label,.student-portal-sidebar-help{display:none}.student-welcome-card{align-items:flex-start}.student-welcome-actions{flex-wrap:wrap}.student-welcome-orb{width:82px;height:82px;position:absolute;top:25px;right:20px}.student-welcome-orb strong{font-size:18px}.student-welcome-copy{max-width:70%}.student-portal-topbar h1{margin-bottom:24px}.student-kpi-grid{gap:9px}.student-kpi-card{min-height:145px}.student-kpi-value strong{font-size:24px}.student-section-heading{align-items:flex-start}.student-section-heading h2{font-size:18px}}.sso-loading{z-index:9999;background:radial-gradient(circle at 50% 35%,#23beae2e,#0000 42%),#f7fbfb;place-items:center;min-height:100dvh;padding:24px;display:grid;position:fixed;inset:0}.sso-loading-card{text-align:center;background:#ffffffe0;border:1px solid #0f766e24;border-radius:24px;width:min(460px,100%);padding:42px 34px;box-shadow:0 24px 70px #0f484624}.sso-loading-mark{justify-content:center;gap:7px;margin-bottom:24px;display:flex}.sso-loading-mark span{background:#16a99c;border-radius:50%;width:9px;height:9px;animation:1s ease-in-out infinite sso-pulse}.sso-loading-mark span:nth-child(2){animation-delay:.15s}.sso-loading-mark span:nth-child(3){animation-delay:.3s}.sso-loading-kicker{color:#0f766e;letter-spacing:.16em;margin:0 0 10px;font-size:11px;font-weight:800}.sso-loading-card h1{color:#173b3a;margin:0;font-size:clamp(22px,4vw,30px);line-height:1.2}.sso-loading-copy{color:#668080;margin:12px 0 24px;font-size:14px}.sso-loading-progress{background:#dceeed;border-radius:99px;height:4px;overflow:hidden}.sso-loading-progress span{border-radius:inherit;background:#16a99c;width:42%;height:100%;animation:1.2s ease-in-out infinite sso-progress;display:block}@keyframes sso-pulse{0%,to{opacity:.45;transform:scale(.65)}50%{opacity:1;transform:scale(1)}}@keyframes sso-progress{0%{transform:translate(-120%)}to{transform:translate(280%)}}.lifecycle-checkbox{appearance:none;vertical-align:middle;cursor:pointer;background:#fff;border:1.5px solid #b8d5d2;border-radius:5px;place-content:center;width:14px;height:14px;margin:0;transition:border-color .18s,background .18s,box-shadow .18s,transform .18s;display:inline-grid}.lifecycle-checkbox:after{content:"";border:0 solid #fff;border-width:0 0 2px 2px;width:7px;height:3px;transition:transform .16s;transform:rotate(-45deg)scale(0)}.lifecycle-checkbox:hover{border-color:#18a99b;box-shadow:0 0 0 3px #18a99b1f}.lifecycle-checkbox:checked{background:linear-gradient(135deg,#21b7a7,#0f8f85);border-color:#159d91}.lifecycle-checkbox:checked:after{transform:rotate(-45deg)scale(1)}.lifecycle-checkbox:focus-visible{outline-offset:2px;outline:3px solid #18a99b38}.lifecycle-checkbox:disabled{cursor:not-allowed;opacity:.45;background:#edf5f4}.academic-table{font-size:12px}.academic-table th{font-size:10px}.academic-table td,.academic-table td strong{font-size:12px}.academic-table td small{font-size:10px}.lifecycle-secondary{color:var(--muted);white-space:nowrap;font-size:10px;font-weight:500}.academic-table td{white-space:nowrap}.lifecycle-action{white-space:nowrap;box-shadow:none;border-radius:7px;padding:7px 11px;font-size:10px;line-height:1.2}.academic-table .lifecycle-action{border-radius:5px;height:22px;min-height:0;padding:2px 7px;font-size:10px;font-weight:700;line-height:1}.directory-card .directory-row{column-gap:10px;grid-template-columns:24px 72px 150px 110px 135px 125px minmax(120px,1fr) max-content max-content max-content!important;min-width:1180px!important}.directory-card .directory-row>.student-select-checkbox{place-self:center;width:14px;height:14px;margin:0;grid-area:1/1!important}.directory-card .directory-student-id{grid-area:1/2!important}.directory-card .directory-row .student-info strong{text-overflow:ellipsis;min-width:0;overflow:hidden;grid-area:1/3!important}.directory-card .directory-meta-item:first-child{grid-area:1/4!important}.directory-card .directory-meta-item:nth-child(2){grid-area:1/5!important}.directory-card .directory-meta-item:nth-child(3){grid-area:1/6!important}.directory-card .directory-meta-item:nth-child(4){grid-area:1/7!important}.directory-card .directory-meta-item:nth-child(5){grid-area:1/8!important}.directory-card .directory-meta-item:nth-child(6){grid-area:1/9!important}.directory-card .directory-row>.status{grid-area:1/10!important}.directory-card .directory-edit{grid-area:1/11!important}.directory-card .directory-detail{grid-area:1/12!important}@media (max-width:900px){.directory-card .directory-row{min-width:1180px!important}}.directory-table-header{border-bottom:1px solid var(--line-strong);min-width:1180px;color:var(--muted);letter-spacing:.04em;text-transform:uppercase;grid-template-columns:24px 72px 150px 110px 135px 125px minmax(120px,1fr) max-content max-content max-content;column-gap:10px;padding:8px 0 7px;font-size:10px;font-weight:800;display:grid}.directory-table-header span{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.directory-table-header span:first-child{grid-column:1}.directory-table-header span:nth-child(2){grid-column:2}.directory-table-header span:nth-child(3){grid-column:3}.directory-table-header span:nth-child(4){grid-column:4}.directory-table-header span:nth-child(5){grid-column:5}.directory-table-header span:nth-child(6){grid-column:6}.directory-table-header span:nth-child(7){grid-column:7}.directory-table-header span:nth-child(8){grid-column:8}.directory-table-header span:nth-child(9){grid-column:9}.directory-table-header span:nth-child(10){grid-column:10}.directory-table-header span:nth-child(11){grid-column:11/span 3}@media (max-width:900px){.directory-table-header{min-width:1180px}}.directory-card .directory-table-header span:first-child,.directory-card .directory-row>.student-select-checkbox{place-self:center}.directory-card .directory-row>.student-select-checkbox{appearance:none;box-sizing:border-box;cursor:pointer;background:#fff;flex:0 0 12px;display:block;border:1px solid #8a97a5!important;border-radius:0!important;width:12px!important;min-width:12px!important;max-width:12px!important;height:12px!important;min-height:12px!important;max-height:12px!important;padding:0!important}.directory-card .directory-row>.student-select-checkbox:checked{border-color:var(--teal);background:var(--teal);box-shadow:inset 0 0 0 1px #fff}.directory-card .directory-list{overflow:auto hidden}.directory-card .directory-table-header,.directory-card .directory-row{box-sizing:border-box;padding-left:16px;padding-right:16px}.directory-card .directory-table-header{border-top:1px solid var(--line-strong);background:#f8fafc;align-items:center;min-height:34px}.directory-card .directory-row{border-bottom:1px solid var(--line-strong);background:#fff;min-height:56px;padding-top:10px;padding-bottom:10px;transition:background-color .15s}.directory-card .directory-row:hover{background:#f8fbfc}.directory-card .directory-row .student-info strong,.directory-card .directory-student-id,.directory-card .directory-meta-item{line-height:1.35}.directory-card .directory-row .student-info strong{font-size:12px}.directory-card .directory-meta-item{color:#7c8da5}.directory-card .directory-row>.status,.directory-card .directory-edit,.directory-card .directory-detail{justify-self:start}@media (max-width:900px){.directory-card .directory-table-header,.directory-card .directory-row{padding-left:14px;padding-right:14px}}.bulk-selection-panel{background:linear-gradient(135deg,#effcf9,#f8fffd);border:1px solid #b8e6df;border-radius:10px;grid-template-columns:1fr repeat(3,max-content);align-items:center;gap:10px;margin-bottom:14px;padding:14px 16px;display:grid}.bulk-selection-title{color:var(--ink);font-size:12px}.bulk-selection-panel select,.bulk-selection-panel input{width:100%;min-width:0}.bulk-selection-panel .primary-button,.bulk-selection-panel .detail-button{white-space:nowrap;grid-column:auto}.directory-card .directory-row>.student-select-checkbox:checked{appearance:none;background-position:50%;background-repeat:no-repeat;background-size:9px 9px;background-color:var(--teal)!important;border-color:var(--teal-dark)!important;box-shadow:none!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='m2 6 2.2 2.2L10 2.5' fill='none' stroke='white' stroke-width='2' stroke-linecap='square' stroke-linejoin='miter'/%3E%3C/svg%3E")!important}.bulk-dialog-backdrop{z-index:1000;background:#0f23266b;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.bulk-dialog{background:#fff;border:1px solid #d5e7e4;border-radius:16px;width:min(100%,480px);padding:22px;box-shadow:0 24px 70px #0f232638}.bulk-dialog-header,.bulk-dialog-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.bulk-dialog-header{margin-bottom:20px}.bulk-dialog-header h2{color:var(--ink);margin:4px 0 0;font-size:20px}.bulk-dialog-close{width:30px;height:30px;color:var(--muted);cursor:pointer;background:#edf6f4;border:0;border-radius:50%;font-size:20px;line-height:1}.bulk-dialog-field{color:var(--ink);gap:7px;font-size:12px;font-weight:700;display:grid}.bulk-dialog-field select,.bulk-dialog-field input{width:100%;min-height:40px}.bulk-dialog-fields{gap:14px;display:grid}.bulk-dialog-actions{justify-content:flex-end;margin-top:24px}@media (max-width:700px){.bulk-selection-panel{grid-template-columns:1fr}.bulk-selection-panel>*{grid-column:1!important}.bulk-dialog{padding:18px}}.directory-card .directory-row>*,.directory-card .directory-row .student-info strong,.directory-card .directory-row .directory-meta-item{align-self:center!important}.directory-card .directory-row .student-info strong,.directory-card .directory-row .directory-student-id,.directory-card .directory-row .directory-meta-item{margin-top:0;margin-bottom:0;line-height:1.2;display:block}.directory-card .directory-row .directory-student-id{place-self:center;transform:translateY(0);align-self:center!important}.directory-card .directory-row>.status,.directory-card .directory-row>.directory-edit,.directory-card .directory-row>.directory-detail{align-self:center!important}
