:root{--tr-color-brand-primary:#6259b5;--tr-color-brand-primary-hover:#4f4698;--tr-color-brand-primary-soft:#eeecfa;--tr-color-ink-primary:#201e32;--tr-color-ink-secondary:#5e5a75;--tr-color-surface-base:#fff;--tr-color-surface-muted:#f7f6fb;--tr-color-border-subtle:#ddd9f0;--tr-color-success:#16805d;--tr-color-warning:#9a5b00;--tr-color-danger:#b4233c;--tr-space-1:4px;--tr-space-2:8px;--tr-space-3:12px;--tr-space-4:16px;--tr-space-6:24px;--tr-space-8:32px;--tr-radius-control:8px;--tr-radius-card:12px}
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background:var(--tr-color-surface-muted);color:var(--tr-color-ink-primary);margin:0;font-family:Nunito Sans,system-ui,sans-serif}main{align-content:center;gap:var(--tr-space-4);max-width:720px;min-height:100vh;padding:var(--tr-space-8);margin:auto;display:grid}h1,p{margin:0}h1{color:var(--tr-color-brand-primary);font-size:clamp(2.5rem,7vw,4.5rem);line-height:1}.eyebrow{color:var(--tr-color-ink-secondary);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.student-shell{align-content:start;gap:var(--tr-space-4);max-width:760px;min-height:100svh;padding:var(--tr-space-6) var(--tr-space-4) calc(104px + env(safe-area-inset-bottom));display:grid}.student-header{gap:var(--tr-space-3);padding:var(--tr-space-2) 0;display:grid}.student-header h1{font-size:clamp(2rem,10vw,3.5rem)}.student-header p:last-child,.student-card>p{color:var(--tr-color-ink-secondary)}.student-kicker{color:var(--tr-color-ink-secondary);letter-spacing:.06em;text-transform:uppercase;margin:0;font-size:.8125rem;font-weight:800}.student-card{background:var(--tr-color-surface-base);border:1px solid var(--tr-color-border-subtle);border-radius:var(--tr-radius-card);gap:var(--tr-space-3);padding:var(--tr-space-6);display:grid}.student-card h2{margin:0;font-size:1.25rem;line-height:1.25}.student-section-heading{align-items:start;gap:var(--tr-space-2);justify-content:space-between;display:flex}.student-section-heading strong{color:var(--tr-color-brand-primary);font-size:1.25rem}.progress-track{background:var(--tr-color-brand-primary-soft);border-radius:999px;height:12px;overflow:hidden}.progress-track span{background:var(--tr-color-brand-primary);border-radius:inherit;height:100%;display:block}.student-next{border-color:var(--tr-color-brand-primary)}.student-primary-action,.student-secondary-action{border-radius:var(--tr-radius-control);text-align:center;justify-content:center;align-items:center;min-height:44px;padding:10px 16px;font-weight:800;text-decoration:none;display:inline-flex}.student-primary-action{background:var(--tr-color-brand-primary);color:var(--tr-color-surface-base)}.student-primary-action:hover{background:var(--tr-color-brand-primary-hover)}.student-secondary-action{background:var(--tr-color-brand-primary-soft);color:var(--tr-color-ink-primary)}.student-primary-action:focus-visible,.student-secondary-action:focus-visible,.student-nav a:focus-visible{outline:3px solid var(--tr-color-brand-primary);outline-offset:3px}.student-nav{background:var(--tr-color-ink-primary);padding:var(--tr-space-2) var(--tr-space-2) calc(var(--tr-space-2) + env(safe-area-inset-bottom));z-index:10;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;display:grid;position:fixed;bottom:0;left:0;right:0}.student-nav a{border-radius:var(--tr-radius-control);color:var(--tr-color-surface-base);justify-content:center;align-items:center;min-height:44px;padding:6px;font-size:.8125rem;font-weight:700;text-decoration:none;display:flex}.student-nav a[aria-current=page]{background:var(--tr-color-brand-primary)}.admin-login-shell{max-width:none;min-height:100svh;padding:var(--tr-space-4);place-items:center;display:grid}.admin-login-card{background:var(--tr-color-surface-base);border:1px solid var(--tr-color-border-subtle);border-radius:var(--tr-radius-card);gap:var(--tr-space-6);max-width:448px;padding:var(--tr-space-8);width:100%;display:grid;box-shadow:0 12px 32px #201e3214}.admin-login-heading,.admin-login-form{gap:var(--tr-space-3);display:grid}.admin-login-brand{align-items:center;gap:var(--tr-space-3);display:flex}.admin-login-brand img{border-radius:10px;width:40px;height:40px}.admin-login-heading h1{font-size:clamp(2rem,6vw,2.75rem)}.admin-login-heading>p:last-child,.admin-login-notice,.admin-login-status{color:var(--tr-color-ink-secondary)}.admin-login-kicker{color:var(--tr-color-brand-primary);letter-spacing:.06em;text-transform:uppercase;font-size:.8125rem;font-weight:800}.admin-login-form label{font-weight:800}.admin-login-form input,.admin-login-form button{border-radius:var(--tr-radius-control);font:inherit;min-height:44px;padding:10px 12px}.admin-login-form input{border:1px solid var(--tr-color-border-subtle);color:var(--tr-color-ink-primary)}.admin-login-form input:focus-visible{outline:3px solid var(--tr-color-brand-primary);outline-offset:2px}.admin-login-form button{background:var(--tr-color-brand-primary);color:var(--tr-color-surface-base);border:0;font-weight:800}.admin-login-form button:disabled{cursor:not-allowed;opacity:.6}.admin-login-status{font-size:.875rem}.admin-login-notice{border-top:1px solid var(--tr-color-border-subtle);padding-top:var(--tr-space-4);font-size:.875rem}.admin-dashboard-shell{background:#f5f6fa;max-width:none;min-height:100svh;padding:0;display:block}.admin-sidebar{color:#dce2f0;height:100svh;padding:var(--tr-space-6) var(--tr-space-4);background:#252d43;flex-direction:column;width:268px;display:flex;position:fixed;top:0;left:0;overflow:hidden}.admin-brand{color:var(--tr-color-surface-base);align-items:center;gap:var(--tr-space-3);font-size:1.25rem;font-weight:800;text-decoration:none;display:inline-flex}.admin-brand-mark{border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex;overflow:hidden}.admin-brand-mark img{width:40px;height:40px}.admin-navigation{gap:4px;margin-top:48px;display:grid}.admin-navigation p{color:#a8b2c9;letter-spacing:.06em;text-transform:uppercase;margin:24px 0 6px;font-size:.6875rem;font-weight:800}.admin-navigation p:first-of-type{margin-top:0}.admin-navigation a{border-radius:var(--tr-radius-control);box-sizing:border-box;color:#c2cbde;align-items:center;width:100%;min-height:44px;padding:10px 12px;font-size:.875rem;font-weight:700;text-decoration:none;transition:background-color .15s ease-out,color .15s ease-out;display:flex}.admin-navigation a:hover,.admin-navigation a[aria-current=page]{color:#52c7fb;background:#39aaf029}.admin-navigation a:focus-visible,.admin-panel-heading a:focus-visible,.admin-secondary-link:focus-visible{outline-offset:3px;outline:3px solid #52c7fb}.admin-sidebar-footer{gap:var(--tr-space-2);padding-top:var(--tr-space-4);border-top:1px solid #dce2f029;margin-top:auto;display:grid}.admin-sidebar-footer p{color:#a8b2c9;font-size:.8125rem;line-height:1.45}.admin-environment{color:#56ebd5;background:#2dd9c426;border-radius:999px;width:fit-content;padding:5px 10px;font-size:.75rem;font-weight:800}.admin-dashboard-content{align-content:start;gap:var(--tr-space-6);width:calc(100% - 268px);max-width:1440px;min-height:100svh;margin-left:268px;padding:36px clamp(20px,4vw,56px);display:grid}.admin-topbar{align-items:center;gap:var(--tr-space-4);justify-content:space-between;display:flex}.admin-breadcrumb,.admin-section-kicker{color:var(--tr-color-ink-secondary);letter-spacing:.05em;text-transform:uppercase;font-size:.75rem;font-weight:800}.admin-topbar h1{color:var(--tr-color-ink-primary);text-wrap:balance;font-size:clamp(2rem,4vw,2.75rem)}.admin-user-summary{align-items:center;gap:var(--tr-space-3);display:flex}.admin-user-summary span:last-child{gap:2px;display:grid}.admin-user-summary small{color:var(--tr-color-ink-secondary)}.admin-avatar{background:var(--tr-color-brand-primary-soft);border:1px solid var(--tr-color-border-subtle);color:var(--tr-color-brand-primary);border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:.75rem;font-weight:800;display:inline-flex}.admin-metrics{gap:var(--tr-space-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.admin-metric-card,.admin-panel-card{background:var(--tr-color-surface-base);border:1px solid #e7e9f1;border-radius:16px;box-shadow:0 8px 24px #201e320d}.admin-metric-card{gap:var(--tr-space-2);min-height:164px;padding:var(--tr-space-6);display:grid}.admin-metric-card p,.admin-metric-card span{color:var(--tr-color-ink-secondary)}.admin-metric-value{font-variant-numeric:tabular-nums;font-size:2.25rem;line-height:1}.admin-metric-success{color:var(--tr-color-success)}.admin-metric-warning{color:var(--tr-color-warning)}.admin-metric-neutral{color:var(--tr-color-brand-primary)}.admin-dashboard-grid{gap:var(--tr-space-4);grid-template-columns:minmax(0,1.65fr) minmax(280px,.9fr);display:grid}.admin-panel-card{gap:var(--tr-space-4);padding:var(--tr-space-6);display:grid}.admin-panel-heading{align-items:start;gap:var(--tr-space-3);justify-content:space-between;display:flex}.admin-panel-heading h2,.admin-panel-card h2{color:var(--tr-color-ink-primary);text-wrap:balance;margin-top:4px;font-size:1.25rem}.admin-panel-heading a,.admin-secondary-link{color:var(--tr-color-brand-primary);min-height:44px;padding:10px 0;font-size:.875rem;font-weight:800;text-decoration:none}.admin-tenant-list{border-top:1px solid #edf0f5}.admin-tenant-row{align-items:center;gap:var(--tr-space-3);padding:var(--tr-space-4) 0;border-bottom:1px solid #edf0f5;justify-content:space-between;display:flex}.admin-tenant-row div,.admin-audit-list li div{gap:4px;display:grid}.admin-tenant-row span:not(.admin-status),.admin-audit-list span{color:var(--tr-color-ink-secondary);font-size:.875rem}.admin-status{white-space:nowrap;border-radius:999px;padding:5px 9px;font-size:.75rem;font-weight:800}.admin-status-active{color:#126849;background:#e2f5ee}.admin-status-pending{color:#845000;background:#fff2d9}.admin-status-online{color:#0d6a43;background:#d9f7e8;width:fit-content}.admin-security-card{color:#fff;background:linear-gradient(135deg,#2a3150,#414284)}.admin-security-card .admin-section-kicker{color:#bfc5f3}.admin-security-card h2{color:#fff}.admin-security-card>p:not(.admin-section-kicker){color:#e5e7f7;text-wrap:pretty;line-height:1.5}.admin-security-stat{align-items:baseline;gap:var(--tr-space-2);display:flex}.admin-security-stat strong{font-variant-numeric:tabular-nums;font-size:2.75rem}.admin-security-stat span{color:#d6daf0}.admin-security-card .admin-secondary-link{color:#74e6d5}.admin-audit-list{margin:0;padding:0;list-style:none;display:grid}.admin-audit-list li{align-items:center;gap:var(--tr-space-3);padding:var(--tr-space-3) 0;border-top:1px solid #edf0f5;grid-template-columns:auto minmax(0,1fr) auto;display:grid}.admin-audit-list time{color:var(--tr-color-ink-secondary);white-space:nowrap;font-size:.8125rem}.admin-audit-dot{background:#28c9a9;border-radius:50%;width:9px;height:9px}.admin-integration-list{gap:var(--tr-space-3);margin:0;display:grid}.admin-integration-list div{padding-top:var(--tr-space-3);border-top:1px solid #edf0f5;justify-content:space-between;align-items:center;display:flex}.admin-integration-list dd{align-items:center;gap:var(--tr-space-2);margin:0;display:flex}.admin-integration-list dd>span:last-child{color:var(--tr-color-ink-secondary);font-size:.8125rem}.admin-card-note{color:var(--tr-color-ink-secondary);text-wrap:pretty;font-size:.8125rem;line-height:1.45}.admin-simple-shell{align-content:start;gap:var(--tr-space-6);max-width:1120px;min-height:100svh;padding:clamp(20px,5vw,56px);display:grid}.admin-simple-header{gap:var(--tr-space-2);display:grid}.admin-simple-header>a{color:var(--tr-color-brand-primary);width:fit-content;font-weight:800;text-decoration:none}.admin-simple-header h1{color:var(--tr-color-ink-primary);font-size:clamp(2rem,5vw,3rem)}.admin-simple-header>p:last-child{color:var(--tr-color-ink-secondary)}.admin-simple-grid{align-items:start;gap:var(--tr-space-4);grid-template-columns:minmax(0,1fr) minmax(300px,.9fr);display:grid}.school-form{display:grid}.school-form label{gap:7px;font-size:.875rem;font-weight:800;display:grid}.school-form input,.school-form select,.school-form textarea{background:var(--tr-color-surface-base);box-sizing:border-box;color:var(--tr-color-ink-primary);font:inherit;border:1px solid #cdd3e2;border-radius:9px;min-height:44px;padding:10px 12px}.school-form textarea{resize:vertical;height:auto;min-height:88px}.school-form input:focus-visible,.school-form select:focus-visible,.school-form textarea:focus-visible{outline:3px solid var(--tr-color-brand-primary);outline-offset:3px}.school-form label small{color:var(--tr-color-ink-secondary);font-size:.75rem;font-weight:400;line-height:1.35}.admin-page-heading{align-items:center;gap:var(--tr-space-3);justify-content:space-between;display:flex}.school-form{gap:var(--tr-space-3);grid-template-columns:repeat(2,minmax(0,1fr))}.school-form>div,.school-form>p,.school-form>button,.school-form>.infrastructure-actions{grid-column:1/-1}.school-form label{grid-template-rows:auto 44px auto;align-content:start;min-width:0}.school-form input,.school-form select{box-sizing:border-box;width:100%;min-width:0;height:44px;min-height:44px}.school-filters{gap:var(--tr-space-3);grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;display:grid}.school-filters input{font:inherit;border:1px solid #cdd3e2;border-radius:9px;min-height:44px;padding:10px 12px}.school-row{justify-content:start}.school-row>div{flex:1}.school-avatar{background:var(--tr-color-brand-primary-soft);border:1px solid var(--tr-color-border-subtle);object-fit:cover;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex;overflow:hidden}.school-avatar-placeholder{color:var(--tr-color-brand-primary);font-weight:800}.school-tags{flex-wrap:wrap;gap:4px;display:flex}.school-tags em{color:#075c9d;background:#eef7ff;border-radius:999px;padding:3px 7px;font-size:.75rem;font-style:normal;font-weight:800}.school-pagination{align-items:center;gap:var(--tr-space-3);justify-content:flex-end;display:flex}.school-pagination span{color:var(--tr-color-ink-secondary);font-size:.875rem}.school-name-link{color:var(--tr-color-ink-primary);font-weight:800;text-decoration:none}.school-name-link:hover{color:var(--tr-color-brand-primary);text-decoration:underline}.school-detail-grid{gap:var(--tr-space-4);grid-template-columns:minmax(0,1.4fr) minmax(260px,.7fr);display:grid}.school-detail-brand{align-items:center;gap:var(--tr-space-4);display:flex}.school-logo-large{background:var(--tr-color-brand-primary-soft);border:1px solid var(--tr-color-border-subtle);object-fit:cover;border-radius:16px;justify-content:center;align-items:center;width:88px;height:88px;display:inline-flex}.school-detail-card dl{gap:var(--tr-space-3);margin:0;display:grid}.school-detail-card dl div{padding-top:var(--tr-space-3);border-top:1px solid #edf0f5;gap:4px;display:grid}.school-detail-card dt{color:var(--tr-color-ink-secondary);text-transform:uppercase;font-size:.75rem;font-weight:800}.school-detail-card dd{margin:0}.school-counts{gap:var(--tr-space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.school-counts div{padding:var(--tr-space-4);background:#f5f7fb;border-radius:12px;gap:4px;display:grid}.school-counts strong{color:var(--tr-color-brand-primary);font-size:2.25rem}.school-counts span{color:var(--tr-color-ink-secondary)}.school-table-wrapper{margin-top:var(--tr-space-4);width:100%;overflow-x:auto}.school-table{border-collapse:collapse;text-align:left;width:100%;font-size:.875rem}.school-table th{color:var(--tr-color-ink-secondary);letter-spacing:.05em;text-transform:uppercase;border-bottom:1px solid #e2e8f0;padding:10px 8px;font-size:.75rem;font-weight:800}.school-table td{color:var(--tr-color-ink-primary);border-bottom:1px solid #f1f5f9;padding:12px 8px}.school-table tr:last-child td{border-bottom:0}.school-table-actions{gap:var(--tr-space-2);display:flex}.school-badge-active{background:var(--tr-color-brand-primary-soft);border-color:var(--tr-color-brand-primary);color:var(--tr-color-brand-primary)}.admin-page-intro{color:var(--tr-color-ink-secondary);margin-top:var(--tr-space-2);max-width:660px;line-height:1.5}.admin-infrastructure-content{gap:var(--tr-space-5)}.infrastructure-layout{gap:var(--tr-space-4);grid-template-columns:260px minmax(0,1fr);display:grid}.infrastructure-tabs{align-content:start;gap:var(--tr-space-2);display:grid}.infrastructure-tabs button{color:var(--tr-color-ink-primary);cursor:pointer;font:inherit;min-height:76px;padding:var(--tr-space-3) var(--tr-space-4);text-align:left;background:0 0;border:1px solid #e1e5f0;border-radius:12px;gap:2px;display:grid;position:relative}.infrastructure-tabs button span{font-weight:800}.infrastructure-tabs button small{color:var(--tr-color-ink-secondary)}.infrastructure-tabs button em{font-style:normal}.infrastructure-tabs button:hover,.infrastructure-tabs button[aria-current=page]{background:#eff8ff;border-color:#52aef6}.infrastructure-tabs button:focus-visible,.admin-primary-button:focus-visible,.admin-secondary-button:focus-visible,.infrastructure-field input:focus-visible,.infrastructure-field select:focus-visible,.infrastructure-field textarea:focus-visible{outline:3px solid var(--tr-color-brand-primary);outline-offset:3px}.infrastructure-workspace{gap:var(--tr-space-4);grid-template-columns:minmax(0,1.55fr) minmax(280px,.8fr);display:grid}.infrastructure-form-card{align-content:start}.infrastructure-form{gap:var(--tr-space-5);display:grid}.infrastructure-form-grid{gap:var(--tr-space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.infrastructure-form-grid-three{grid-template-columns:repeat(3,minmax(0,1fr))}.infrastructure-field{color:var(--tr-color-ink-primary);grid-template-rows:18px 44px 34px;gap:7px;font-size:.875rem;font-weight:800;display:grid}.infrastructure-field>span{align-self:end}.infrastructure-field input,.infrastructure-field select,.infrastructure-field textarea{color:var(--tr-color-ink-primary);font:inherit;background:#fff;border:1px solid #cdd3e2;border-radius:9px;width:100%;height:44px;min-height:44px;padding:10px 12px;font-weight:400}.infrastructure-field textarea{resize:vertical;height:auto;min-height:88px}.infrastructure-field small{color:var(--tr-color-ink-secondary);min-height:34px;font-size:.75rem;font-weight:400;line-height:1.35}.infrastructure-actions{align-items:center;gap:var(--tr-space-3);padding-top:var(--tr-space-4);border-top:1px solid #edf0f5;flex-wrap:wrap;display:flex}.infrastructure-actions span{color:var(--tr-color-ink-secondary);font-size:.8125rem}.infrastructure-form-error{color:#9c271c;padding:var(--tr-space-3);background:#fff0ef;border-radius:9px;width:100%;margin:0;font-size:.875rem}.admin-primary-button,.admin-secondary-button{border-radius:var(--tr-radius-control);cursor:pointer;font:inherit;min-height:44px;padding:10px 14px;font-weight:800}.admin-primary-button{background:var(--tr-color-brand-primary);border:1px solid var(--tr-color-brand-primary);color:#fff}.admin-primary-button:hover{background:var(--tr-color-brand-primary-hover)}.admin-secondary-button{color:#075c9d;background:#eef7ff;border:1px solid #9ecef7}.admin-secondary-button:disabled{cursor:not-allowed;opacity:.55}.infrastructure-test-card{align-content:start}.infrastructure-test-card>div{gap:var(--tr-space-2);display:grid}.infrastructure-test-card h2{margin:0}.infrastructure-test-card>div>p:not(.admin-section-kicker){color:var(--tr-color-ink-secondary);line-height:1.5}.infrastructure-test-detail,.infrastructure-test-note{color:#4b556d;padding:var(--tr-space-3);border-radius:9px;margin:0;font-size:.875rem;line-height:1.45}.infrastructure-test-detail{background:#f5f7fb}.infrastructure-test-note{background:#eef8ff}.infrastructure-test-success{color:#126849;background:#e2f5ee}.infrastructure-warning{color:#684d17;padding:var(--tr-space-3);background:#fff5df;border-left:3px solid #de9a18;margin:0;font-size:.8125rem;line-height:1.45}.admin-back-link{color:var(--tr-color-brand-primary);width:fit-content;font-weight:800;text-decoration:none}.admin-page-description{color:var(--tr-color-ink-secondary);margin-top:calc(-1 * var(--tr-space-4));max-width:680px;line-height:1.5}.security-card{max-width:680px}.security-card>p{color:var(--tr-color-ink-secondary);line-height:1.5}.security-form{gap:var(--tr-space-4);max-width:440px;display:grid}.security-form label{gap:7px;font-size:.875rem;font-weight:800;display:grid}.security-form input{font:inherit;border:1px solid #cdd3e2;border-radius:9px;height:44px;padding:10px 12px}.mfa-qr-code{background:#fff;border:1px solid #e1e5f0;border-radius:12px;width:240px;height:240px;padding:12px}.recovery-codes{color:#684d17;gap:var(--tr-space-3);padding:var(--tr-space-4);background:#fff5df;border-left:3px solid #de9a18;display:grid}.recovery-codes ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:0;padding:0;list-style:none;display:grid}.recovery-codes code{color:var(--tr-color-ink-primary);background:#fff;border-radius:6px;padding:7px;display:block}.school-dashboard-shell{background:var(--tr-color-surface-muted);max-width:none;min-height:100svh;padding:0;display:block}.school-sidebar{color:#e8e4f8;height:100svh;padding:var(--tr-space-6) var(--tr-space-4);background:#1e1933;flex-direction:column;width:268px;display:flex;position:fixed;top:0;left:0;overflow:hidden}.school-brand{color:#fff;align-items:center;gap:var(--tr-space-3);font-size:1.25rem;font-weight:800;text-decoration:none;display:inline-flex}.school-brand-mark{border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex;overflow:hidden}.school-brand-mark img{width:40px;height:40px}.school-brand-text{align-items:center;gap:var(--tr-space-2);display:inline-flex}.school-brand-badge{color:#d2ccff;text-transform:uppercase;background:#8e85e638;border:1px solid #8e85e661;border-radius:999px;padding:2px 8px;font-size:.6875rem;font-weight:800}.school-navigation{gap:4px;margin-top:48px;display:grid}.school-navigation p{color:#9f98ca;letter-spacing:.06em;text-transform:uppercase;margin:24px 0 6px;font-size:.6875rem;font-weight:800}.school-navigation p:first-of-type{margin-top:0}.school-navigation a{border-radius:var(--tr-radius-control);box-sizing:border-box;color:#cfcaea;align-items:center;width:100%;min-height:44px;padding:10px 12px;font-size:.875rem;font-weight:700;text-decoration:none;transition:background-color .15s ease-out,color .15s ease-out;display:flex}.school-navigation a:hover,.school-navigation a[aria-current=page]{color:#fff;background:#6259b552}.school-navigation a:focus-visible{outline-offset:3px;outline:3px solid #9e93ff}.school-sidebar-footer{gap:var(--tr-space-2);padding-top:var(--tr-space-4);border-top:1px solid #e8e4f81f;margin-top:auto;display:grid}.school-sidebar-footer p{color:#a59fc8;font-size:.8125rem;line-height:1.45}.school-environment{color:#ded9ff;background:#6259b566;border-radius:999px;width:fit-content;padding:5px 10px;font-size:.75rem;font-weight:800}.school-dashboard-content{align-content:start;gap:var(--tr-space-6);width:calc(100% - 268px);max-width:1440px;min-height:100svh;margin-left:268px;padding:36px clamp(20px,4vw,56px);display:grid}.school-topbar{align-items:center;gap:var(--tr-space-4);justify-content:space-between;display:flex}.school-breadcrumb,.school-section-kicker{color:var(--tr-color-ink-secondary);letter-spacing:.05em;text-transform:uppercase;font-size:.75rem;font-weight:800}.school-topbar h1{color:var(--tr-color-ink-primary);text-wrap:balance;font-size:clamp(2rem,4vw,2.75rem)}.school-page-intro{color:var(--tr-color-ink-secondary);margin-top:var(--tr-space-2);max-width:660px;line-height:1.5}.school-user-summary{align-items:center;gap:var(--tr-space-3);display:flex}.school-user-summary span:last-child{gap:2px;display:grid}.school-user-summary small{color:var(--tr-color-ink-secondary)}.school-metrics{gap:var(--tr-space-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.school-metric-card,.school-panel-card{background:var(--tr-color-surface-base);border:1px solid #e7e5f3;border-radius:12px;box-shadow:0 4px 16px #201e320a}.school-metric-card{align-content:center;gap:4px;min-height:84px;padding:14px 18px;display:grid}.school-metric-card p{color:var(--tr-color-ink-secondary);letter-spacing:.05em;text-transform:uppercase;margin:0;font-size:.75rem;font-weight:700}.school-metric-card span{color:var(--tr-color-ink-secondary);font-size:.8125rem;line-height:1.35}.school-metric-value{font-variant-numeric:tabular-nums;margin:2px 0;font-size:1.75rem;font-weight:800;line-height:1.15}.school-metric-success{color:var(--tr-color-success)}.school-metric-neutral{color:var(--tr-color-brand-primary)}.school-dashboard-grid{gap:var(--tr-space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.school-panel-card{align-content:start;gap:var(--tr-space-4);padding:var(--tr-space-6);display:grid}.school-panel-heading{align-items:start;gap:var(--tr-space-3);justify-content:space-between;display:flex}.school-panel-heading h2{color:var(--tr-color-ink-primary);text-wrap:balance;margin-top:4px;font-size:1.25rem}.school-card-note{color:var(--tr-color-ink-secondary);font-size:.875rem;line-height:1.5}.school-status-banner{border-left:3px solid var(--tr-color-brand-primary);color:var(--tr-color-ink-primary);padding:var(--tr-space-3) var(--tr-space-4);background:#f5f4fc;border-radius:0 8px 8px 0;gap:4px;display:grid}.school-status-banner p{color:var(--tr-color-ink-secondary);margin:0;font-size:.8125rem;line-height:1.45}.school-info-box{border:1px solid var(--tr-color-border-subtle);padding:var(--tr-space-3) var(--tr-space-4);background:#f7f6fb;border-radius:8px;gap:6px;display:grid}.school-info-box p{color:var(--tr-color-ink-secondary);margin:0;font-size:.8125rem;line-height:1.45}.school-badge-outline{border:1px solid var(--tr-color-border-subtle);color:var(--tr-color-brand-primary);border-radius:999px;width:fit-content;padding:3px 8px;font-size:.75rem;font-weight:800}.school-action-modal{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:var(--tr-space-4);z-index:100;background:#0f172a80;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.school-action-modal form{background:var(--tr-color-surface-base);border:1px solid var(--tr-color-border-subtle);gap:var(--tr-space-4);max-width:480px;padding:var(--tr-space-6);border-radius:16px;width:100%;display:grid;box-shadow:0 16px 36px #201e3229}.school-action-modal label{color:var(--tr-color-ink-primary);gap:7px;font-size:.875rem;font-weight:800;display:grid}.school-action-modal input,.school-action-modal select,.school-action-modal textarea{background:var(--tr-color-surface-base);box-sizing:border-box;color:var(--tr-color-ink-primary);font:inherit;border:1px solid #cdd3e2;border-radius:9px;width:100%;min-width:0;height:44px;min-height:44px;padding:10px 12px}.school-action-modal input:focus-visible,.school-action-modal select:focus-visible,.school-action-modal textarea:focus-visible{outline:3px solid var(--tr-color-brand-primary);outline-offset:3px}.school-action-modal label small{color:var(--tr-color-ink-secondary);font-size:.75rem;font-weight:400;line-height:1.35}.school-action-modal .infrastructure-actions{gap:var(--tr-space-3);margin-top:var(--tr-space-2);padding-top:var(--tr-space-4);border-top:1px solid #edf0f5;justify-content:flex-end;display:flex}.school-action-modal.school-modal-wide form{max-width:560px}.school-toolbar{align-items:center;gap:var(--tr-space-3);flex-wrap:wrap;justify-content:space-between;display:flex}.school-search-box{background:var(--tr-color-surface-base);box-sizing:border-box;align-items:center;gap:var(--tr-space-2);border:1px solid #cdd3e2;border-radius:9px;min-width:260px;height:44px;padding:0 12px;display:flex}.school-search-box input{color:var(--tr-color-ink-primary);font:inherit;background:0 0;border:none;outline:none;width:100%;height:100%;padding:0}.school-class-tag{background:var(--tr-color-brand-primary-soft);color:var(--tr-color-brand-primary);white-space:nowrap;border-radius:6px;padding:3px 8px;font-size:.75rem;font-weight:700;display:inline-flex}.school-class-checkboxes{background:#fafbfc;border:1px solid #cdd3e2;border-radius:9px;gap:8px;max-height:180px;padding:10px 12px;display:grid;overflow-y:auto}.school-class-checkbox-item{color:var(--tr-color-ink-primary);cursor:pointer;align-items:center;gap:8px;font-size:.875rem;font-weight:600;display:flex}.school-class-checkbox-item input{accent-color:var(--tr-color-brand-primary);cursor:pointer;width:18px;height:18px;min-height:18px;margin:0}.school-pagination{align-items:center;gap:var(--tr-space-3);margin-top:var(--tr-space-2);padding-top:var(--tr-space-4);border-top:1px solid #edf0f5;flex-wrap:wrap;justify-content:space-between;display:flex}.school-pagination-info{color:var(--tr-color-ink-secondary);font-size:.8125rem;font-weight:600}.school-pagination-controls{align-items:center;gap:6px;display:flex}.school-pagination-button{border-radius:var(--tr-radius-control,8px);color:var(--tr-color-ink-primary);cursor:pointer;font:inherit;background:#fff;border:1px solid #cdd3e2;justify-content:center;align-items:center;min-width:36px;height:36px;padding:0 10px;font-size:.8125rem;font-weight:700;transition:background-color .15s,border-color .15s,color .15s;display:inline-flex}.school-pagination-button:hover:not(:disabled){background:#f1f5f9;border-color:#94a3b8}.school-pagination-button:disabled{cursor:not-allowed;opacity:.45}.school-pagination-button.active{background:var(--tr-color-brand-primary);border-color:var(--tr-color-brand-primary);color:#fff}.school-badge-class{background:var(--tr-color-brand-primary-soft);color:var(--tr-color-brand-primary);white-space:nowrap;border-radius:6px;padding:3px 8px;font-size:.75rem;font-weight:700;display:inline-flex}.school-badge-state{border-radius:999px;width:fit-content;padding:3px 8px;font-size:.75rem;font-weight:800;display:inline-flex}.school-badge-state-accepted{color:#0d8a4e;background:#e6f9f0;border:1px solid #b7ecd0}.school-badge-state-pending{background:var(--tr-color-brand-primary-soft);color:var(--tr-color-brand-primary);border:1px solid var(--tr-color-border-subtle)}.school-badge-state-expired{color:#b45309;background:#fef3c7;border:1px solid #fde68a}.school-badge-state-revoked{color:var(--tr-color-ink-secondary);background:#f1f5f9;border:1px solid #cbd5e1}.toggle-switch{cursor:pointer;align-items:center;gap:var(--tr-space-2,8px);-webkit-user-select:none;user-select:none;display:inline-flex;position:relative}.toggle-switch.disabled{cursor:not-allowed;opacity:.55}.toggle-switch input[type=checkbox]{opacity:0;pointer-events:none;width:0;height:0;margin:0;position:absolute}.toggle-track{box-sizing:border-box;background:#cdd3e2;border-radius:999px;flex-shrink:0;width:44px;height:24px;transition:background-color .16s ease-in-out;display:inline-block;position:relative}.toggle-thumb{background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .16s cubic-bezier(.4,0,.2,1);display:block;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0f172a3d}.toggle-switch input[type=checkbox]:checked+.toggle-track{background:var(--tr-color-brand-primary)}.toggle-switch input[type=checkbox]:checked+.toggle-track .toggle-thumb{transform:translate(20px)}.toggle-switch input[type=checkbox]:focus-visible+.toggle-track{outline:3px solid var(--tr-color-brand-primary);outline-offset:2px}.admin-icon-button{border-radius:var(--tr-radius-control,8px);color:#075c9d;cursor:pointer;height:36px;font:inherit;background:#eef7ff;border:1px solid #c8e1fa;justify-content:center;align-items:center;gap:6px;padding:0 10px;font-size:.8125rem;font-weight:700;transition:background-color .15s,border-color .15s,color .15s;display:inline-flex}.admin-icon-button:hover:not(:disabled){color:#03487d;background:#dbeeff;border-color:#9ecef7}.admin-icon-button:disabled{cursor:not-allowed;opacity:.5}.admin-icon-button:focus-visible{outline:3px solid var(--tr-color-brand-primary);outline-offset:2px}.methods-metrics-bar{margin-bottom:var(--tr-space-2)}.methods-filters-toolbar{gap:var(--tr-space-3);margin-bottom:var(--tr-space-4);flex-wrap:wrap;display:flex}.methods-search-input{background:var(--tr-color-surface-base);border-radius:var(--tr-radius-control);color:var(--tr-color-ink-primary);font:inherit;box-sizing:border-box;border:1px solid #cdd3e2;flex:260px;height:44px;min-height:44px;padding:0 14px;font-size:.875rem}.methods-search-input:focus-visible,.methods-search-input:focus{border-color:var(--tr-color-brand-primary);outline:3px solid var(--tr-color-brand-primary);outline-offset:2px}.methods-select-filters{gap:var(--tr-space-2);flex-wrap:wrap;display:flex}.methods-select-filters select{appearance:none;background-color:var(--tr-color-surface-base);border-radius:var(--tr-radius-control);box-sizing:border-box;color:var(--tr-color-ink-primary);cursor:pointer;font:inherit;background-image:url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20stroke%3D%22%235e5a75%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m5%207.5%205%205%205-5%22%2F%3E%3C%2Fsvg%3E);background-position:right 12px center;background-repeat:no-repeat;background-size:16px 16px;border:1px solid #cdd3e2;height:44px;min-height:44px;padding:0 36px 0 12px;font-size:.875rem;font-weight:600}.methods-select-filters select:hover{border-color:#b0a8db}.methods-select-filters select:focus-visible,.methods-select-filters select:focus{border-color:var(--tr-color-brand-primary);outline:3px solid var(--tr-color-brand-primary);outline-offset:2px}.methods-grid{gap:var(--tr-space-4);grid-template-columns:repeat(auto-fill,minmax(340px,1fr));display:grid}.methods-empty-state{background:var(--tr-color-surface-base);border:1px dashed var(--tr-color-border-subtle);border-radius:var(--tr-radius-card);align-items:center;gap:var(--tr-space-3);text-align:center;flex-direction:column;grid-column:1/-1;justify-content:center;padding:48px 24px;display:flex}.methods-empty-state p{color:var(--tr-color-ink-secondary);font-size:.9375rem;font-weight:700}.method-card{background:var(--tr-color-surface-base);gap:var(--tr-space-3);border:1px solid #e7e9f1;border-radius:16px;flex-direction:column;padding:20px;transition:transform .12s,box-shadow .12s,border-color .12s;display:flex;box-shadow:0 8px 24px #201e320d}.method-card:hover{border-color:var(--tr-color-border-subtle);transform:translateY(-2px);box-shadow:0 12px 30px #201e321a}.method-card-header{align-items:flex-start;gap:var(--tr-space-2);justify-content:space-between;display:flex}.method-card-tags{flex-wrap:wrap;gap:6px;display:flex}.method-category-tag{background:var(--tr-color-brand-primary-soft);color:var(--tr-color-brand-primary);border-radius:6px;padding:3px 8px;font-size:.75rem;font-weight:800}.method-skill-type-badge{border-radius:6px;padding:3px 8px;font-size:.75rem;font-weight:800}.skill-type-correction{color:#b45309;background:#f59e0b26}.skill-type-measurement{background:var(--tr-color-brand-primary-soft);color:var(--tr-color-brand-primary)}.skill-type-review{color:#6d28d9;background:#8b5cf626}.method-card-title{color:var(--tr-color-ink-primary);margin:0 0 2px;font-size:1.125rem;font-weight:800}.method-card-slug{color:var(--tr-color-ink-secondary);margin:0 0 8px;font-size:.8125rem}.method-card-slug code{background:var(--tr-color-surface-muted);border:1px solid var(--tr-color-border-subtle);color:var(--tr-color-ink-primary);border-radius:4px;padding:2px 5px;font-weight:600}.method-card-desc{color:var(--tr-color-ink-secondary);margin:0;font-size:.875rem;line-height:1.45}.method-card-meta{background:var(--tr-color-surface-muted);border:1px solid var(--tr-color-border-subtle);border-radius:8px;gap:6px;padding:10px 12px;display:grid}.meta-item{justify-content:space-between;align-items:center;font-size:.8125rem;display:flex}.meta-label{color:var(--tr-color-ink-secondary);font-weight:600}.meta-value{color:var(--tr-color-ink-primary);font-weight:700}.method-card-placeholders{flex-direction:column;gap:4px;display:flex}.placeholders-title{color:var(--tr-color-ink-secondary);text-transform:uppercase;font-size:.75rem;font-weight:800}.placeholder-chips{flex-wrap:wrap;gap:4px;display:flex}.placeholder-chip{background:var(--tr-color-surface-muted);border:1px solid var(--tr-color-border-subtle);color:var(--tr-color-brand-primary);border-radius:4px;padding:2px 6px;font-family:monospace;font-size:.6875rem;font-weight:700}.method-card-guardrails{border-top:1px solid var(--tr-color-border-subtle);color:var(--tr-color-success);flex-wrap:wrap;gap:8px;padding-top:8px;font-size:.75rem;font-weight:800;display:flex}.method-card-footer{border-top:1px solid var(--tr-color-surface-muted);align-items:center;gap:var(--tr-space-3);justify-content:space-between;margin-top:auto;padding-top:8px;display:flex}.method-test-btn{font-size:.8125rem;font-weight:800}.methods-editor-card{gap:var(--tr-space-4);display:grid}.method-status-badge{border-radius:999px;padding:4px 12px;font-size:.75rem;font-weight:800}.method-status-draft{background:var(--tr-color-brand-primary-soft);color:var(--tr-color-brand-primary)}.methods-editor-tabs{border-bottom:1px solid var(--tr-color-border-subtle);margin-bottom:var(--tr-space-2);flex-wrap:wrap;gap:4px;display:flex}.methods-tab-btn{border-radius:var(--tr-radius-control) var(--tr-radius-control) 0 0;color:var(--tr-color-ink-secondary);cursor:pointer;font:inherit;background:0 0;border:0;border-bottom:3px solid #0000;min-height:44px;padding:10px 16px;font-size:.875rem;font-weight:800;transition:color .15s,border-color .15s,background-color .15s}.methods-tab-btn:hover{color:var(--tr-color-brand-primary);background:var(--tr-color-brand-primary-soft)}.methods-tab-btn.active,.methods-tab-btn[aria-current=page]{border-bottom-color:var(--tr-color-brand-primary);color:var(--tr-color-brand-primary)}.methods-tab-btn-highlight{color:var(--tr-color-brand-primary);font-weight:800}.methods-tab-btn-highlight.active{border-bottom-color:var(--tr-color-brand-primary);color:var(--tr-color-brand-primary)}.methods-tab-content{gap:var(--tr-space-4);padding:var(--tr-space-2) 0;display:grid}.methods-form-grid{gap:var(--tr-space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.methods-form-grid-three{grid-template-columns:repeat(3,minmax(0,1fr))}.methods-field{color:var(--tr-color-ink-primary);flex-direction:column;gap:7px;font-size:.875rem;font-weight:800;display:flex}.methods-field span{color:var(--tr-color-ink-primary);font-size:.875rem;font-weight:800}.methods-field input,.methods-field select,.methods-field textarea{background:var(--tr-color-surface-base);border-radius:var(--tr-radius-control);box-sizing:border-box;color:var(--tr-color-ink-primary);font:inherit;border:1px solid #cdd3e2;width:100%;padding:10px 12px;font-size:.875rem}.methods-field input,.methods-field select{height:44px;min-height:44px}.methods-field select{appearance:none;cursor:pointer;background-image:url(data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20stroke%3D%22%235e5a75%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m5%207.5%205%205%205-5%22%2F%3E%3C%2Fsvg%3E);background-position:right 12px center;background-repeat:no-repeat;background-size:16px 16px;padding-right:36px}.methods-field select:hover{border-color:#b0a8db}.methods-field input:focus-visible,.methods-field select:focus-visible,.methods-field textarea:focus-visible,.methods-field input:focus,.methods-field select:focus,.methods-field textarea:focus{border-color:var(--tr-color-brand-primary);outline:3px solid var(--tr-color-brand-primary);outline-offset:2px}.methods-field small{color:var(--tr-color-ink-secondary);font-size:.75rem;font-weight:400;line-height:1.35}.prompt-placeholders-helper{background:var(--tr-color-surface-muted);border:1px solid var(--tr-color-border-subtle);border-radius:8px;gap:8px;padding:12px 14px;display:grid}.prompt-placeholders-header{justify-content:space-between;align-items:center;display:flex}.prompt-placeholders-header strong{color:var(--tr-color-ink-primary);font-size:.8125rem;font-weight:800}.prompt-placeholders-header span{color:var(--tr-color-ink-secondary);font-size:.75rem}.prompt-placeholders-list{flex-wrap:wrap;gap:6px;display:flex}.placeholder-chip-btn{background:var(--tr-color-surface-base);border:1px solid var(--tr-color-border-subtle);color:var(--tr-color-brand-primary);cursor:pointer;border-radius:6px;padding:6px 10px;font-family:monospace;font-size:.75rem;font-weight:700;transition:background-color .12s,border-color .12s}.placeholder-chip-btn:hover{background:var(--tr-color-brand-primary-soft);border-color:var(--tr-color-brand-primary)}.placeholder-chip-btn:focus-visible{outline:3px solid var(--tr-color-brand-primary);outline-offset:2px}.prompt-textarea{resize:vertical;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.875rem;line-height:1.5}.prompt-validation-status{justify-content:space-between;align-items:center;margin-top:4px;display:flex}.prompt-valid-tag{color:var(--tr-color-success);font-size:.8125rem;font-weight:800}.prompt-invalid-tag{color:var(--tr-color-danger);font-size:.8125rem;font-weight:800}.methods-note-box{background:var(--tr-color-brand-primary-soft);border:1px solid var(--tr-color-border-subtle);color:var(--tr-color-ink-primary);border-radius:8px;padding:10px 14px;font-size:.8125rem;line-height:1.45}.methods-note-box strong{color:var(--tr-color-brand-primary)}.methods-note-box code{background:var(--tr-color-surface-base);border:1px solid var(--tr-color-border-subtle);color:var(--tr-color-brand-primary);border-radius:4px;padding:2px 5px;font-weight:800}.rubric-header{justify-content:space-between;align-items:center;display:flex}.rubric-criteria-list{gap:var(--tr-space-4);display:grid}.rubric-criterion-card{background:var(--tr-color-surface-muted);border:1px solid var(--tr-color-border-subtle);gap:var(--tr-space-3);border-radius:12px;padding:16px;display:grid}.rubric-criterion-header{justify-content:space-between;align-items:center;display:flex}.rubric-criterion-header h4{color:var(--tr-color-ink-primary);margin:0;font-size:1rem;font-weight:800}.rubric-remove-btn{color:var(--tr-color-danger);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:6px;padding:4px 8px;font-size:.8125rem;font-weight:800}.rubric-remove-btn:hover{background:#fff0ef}.rubric-levels-table strong{color:var(--tr-color-ink-primary);font-size:.8125rem;font-weight:800}.rubric-levels-grid{gap:var(--tr-space-2);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-top:6px;display:grid}.rubric-level-item{background:var(--tr-color-surface-base);border:1px solid var(--tr-color-border-subtle);border-radius:8px;gap:6px;padding:10px;display:grid}.rubric-level-badge{background:var(--tr-color-brand-primary-soft);color:var(--tr-color-brand-primary);border-radius:4px;width:fit-content;padding:2px 6px;font-size:.75rem;font-weight:800}.rubric-level-label-input{background:var(--tr-color-surface-base);color:var(--tr-color-ink-primary);font:inherit;border:1px solid #cdd3e2;border-radius:6px;height:36px;padding:6px 8px;font-size:.8125rem;font-weight:700}.rubric-level-desc-input{background:var(--tr-color-surface-base);color:var(--tr-color-ink-primary);font:inherit;resize:vertical;border:1px solid #cdd3e2;border-radius:6px;min-height:52px;padding:6px 8px;font-size:.75rem}.rubric-level-label-input:focus-visible,.rubric-level-desc-input:focus-visible{border-color:var(--tr-color-brand-primary);outline:2px solid var(--tr-color-brand-primary);outline-offset:1px}.guardrails-list{gap:var(--tr-space-3);display:grid}.guardrail-checkbox-item{background:var(--tr-color-surface-base);border:1px solid var(--tr-color-border-subtle);cursor:pointer;align-items:flex-start;gap:var(--tr-space-3);border-radius:10px;padding:14px;transition:border-color .15s,background-color .15s;display:flex}.guardrail-checkbox-item:hover{background:var(--tr-color-surface-muted);border-color:#b0a8db}.guardrail-checkbox-item input{accent-color:var(--tr-color-brand-primary);cursor:pointer;width:18px;height:18px;margin-top:2px}.guardrail-checkbox-item strong{color:var(--tr-color-ink-primary);margin-bottom:2px;font-size:.9375rem;font-weight:800;display:block}.guardrail-checkbox-item p{color:var(--tr-color-ink-secondary);margin:0;font-size:.8125rem}.confidence-threshold-control{background:var(--tr-color-surface-muted);border:1px solid var(--tr-color-border-subtle);border-radius:10px;padding:16px}.confidence-threshold-control input[type=range]{accent-color:var(--tr-color-brand-primary);cursor:pointer}.sandbox-layout{gap:var(--tr-space-4);grid-template-columns:minmax(0,1fr) minmax(320px,1.2fr);display:grid}.sandbox-inputs{gap:var(--tr-space-3);display:grid}.sandbox-actions{align-items:center;gap:var(--tr-space-2);flex-wrap:wrap;display:flex}.sandbox-sample-btn{color:var(--tr-color-brand-primary);cursor:pointer;font:inherit;background:0 0;border:0;border-radius:6px;padding:6px 8px;font-size:.8125rem;font-weight:800;text-decoration:underline}.sandbox-sample-btn:hover{background:var(--tr-color-brand-primary-soft)}.sandbox-results-panel{background:var(--tr-color-surface-muted);border:1px solid var(--tr-color-border-subtle);gap:var(--tr-space-3);border-radius:12px;padding:18px;display:grid}.sandbox-results-header{justify-content:space-between;align-items:center;display:flex}.sandbox-results-header h4{color:var(--tr-color-ink-primary);margin:0;font-size:1rem;font-weight:800}.sandbox-latency-badge{background:var(--tr-color-brand-primary-soft);color:var(--tr-color-brand-primary);border-radius:999px;padding:3px 10px;font-size:.75rem;font-weight:800}.sandbox-score-summary{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.score-box{background:var(--tr-color-surface-base);border:1px solid var(--tr-color-border-subtle);text-align:center;border-radius:8px;gap:4px;padding:10px 12px;display:grid}.score-title{color:var(--tr-color-ink-secondary);text-transform:uppercase;font-size:.6875rem;font-weight:800}.score-num{color:var(--tr-color-ink-primary);font-size:1.25rem;font-weight:800}.score-good{color:var(--tr-color-success)}.score-warn{color:var(--tr-color-warning)}.human-review-alert{color:var(--tr-color-warning);background:#fff5df;border:1px solid #fed7aa;border-radius:8px;padding:8px 12px;font-size:.8125rem;font-weight:800}.sandbox-dimensions-list{gap:8px;display:grid}.dimension-result-item{background:var(--tr-color-surface-base);border:1px solid var(--tr-color-border-subtle);border-radius:8px;gap:4px;padding:10px;display:grid}.dimension-result-top{color:var(--tr-color-ink-primary);justify-content:space-between;align-items:center;font-size:.8125rem;font-weight:800;display:flex}.dimension-score{color:var(--tr-color-brand-primary);font-weight:800}.dimension-evidence{background:var(--tr-color-surface-muted);border-left:3px solid var(--tr-color-brand-primary);color:var(--tr-color-ink-primary);border-radius:0 4px 4px 0;margin:0;padding:6px 10px;font-size:.75rem;font-style:italic}.dimension-rationale{color:var(--tr-color-ink-secondary);font-size:.75rem}.sandbox-feedback-box{background:var(--tr-color-surface-base);border:1px solid var(--tr-color-border-subtle);border-radius:8px;gap:4px;padding:10px 12px;display:grid}.sandbox-feedback-box strong{color:var(--tr-color-ink-primary);font-size:.8125rem;font-weight:800}.sandbox-feedback-box p{color:var(--tr-color-ink-primary);margin:0;font-size:.8125rem;line-height:1.45}.sandbox-guardrails-check{flex-wrap:wrap;gap:8px;display:flex}.guardrail-ok{color:var(--tr-color-success);background:#e2f5ee;border:1px solid #bbf0dc;border-radius:4px;padding:3px 7px;font-size:.6875rem;font-weight:800}.methods-form-footer{border-top:1px solid var(--tr-color-border-subtle);gap:var(--tr-space-3);margin-top:var(--tr-space-4);padding-top:var(--tr-space-4);justify-content:flex-end;display:flex}.audit-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.audit-search-group{flex-wrap:wrap;flex:1;align-items:center;gap:10px;min-width:280px;display:flex}.audit-search-input{border-radius:var(--tr-radius-control,8px);color:var(--tr-color-ink-primary);background:#fff;border:1px solid #d1d5db;flex:1;min-width:200px;padding:9px 12px;font-size:.875rem}.audit-search-input:focus{border-color:#52c7fb;outline:3px solid #52c7fb40}.audit-select-filter{border-radius:var(--tr-radius-control,8px);color:var(--tr-color-ink-primary);background:#fff;border:1px solid #d1d5db;padding:9px 12px;font-size:.875rem;font-weight:600}.audit-select-filter:focus{border-color:#52c7fb;outline:3px solid #52c7fb40}.audit-table-wrapper{border:1px solid #e2e8f0;border-radius:12px;overflow-x:auto}.audit-table{border-collapse:collapse;text-align:left;width:100%;font-size:.875rem}.audit-table th{color:#475569;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;background:#f8fafc;border-bottom:1px solid #e2e8f0;padding:12px 16px;font-size:.75rem;font-weight:800}.audit-table td{color:var(--tr-color-ink-primary);vertical-align:middle;border-bottom:1px solid #f1f5f9;padding:12px 16px}.audit-table tr:last-child td{border-bottom:0}.audit-table tr:hover td{background:#f8fafc}.audit-email-cell{flex-direction:column;gap:2px;display:flex}.audit-email-main{color:#0f172a;font-weight:700}.audit-school-name{color:#64748b;font-size:.75rem}.audit-kind-badge{color:#334155;white-space:nowrap;background:#f1f5f9;border-radius:6px;padding:3px 8px;font-size:.75rem;font-weight:700;display:inline-block}.audit-kind-badge-educator{color:#1d4ed8;background:#eff6ff}.audit-kind-badge-student{color:#15803d;background:#f0fdf4}.audit-kind-badge-admin{color:#7e22ce;background:#faf5ff}.audit-status-badge{text-transform:capitalize;white-space:nowrap;border-radius:999px;padding:4px 10px;font-size:.75rem;font-weight:800;display:inline-block}.audit-status-sent{color:#15803d;background:#dcfce7}.audit-status-pending{color:#a16207;background:#fef9c3}.audit-status-sending{color:#0369a1;background:#e0f2fe}.audit-status-failed{color:#b91c1c;background:#fee2e2}.audit-status-revoked{color:#64748b;background:#f1f5f9}.audit-empty{color:#64748b;text-align:center;padding:32px 16px}.audit-attempts-count{font-family:monospace;font-size:.8125rem;font-weight:700}.audit-error-code{color:#dc2626;background:#fef2f2;border-radius:4px;margin-top:2px;padding:2px 4px;font-family:monospace;font-size:.6875rem;display:block}.school-calendar-container{gap:var(--tr-space-5);display:grid}.calendar-toolbar{align-items:center;gap:var(--tr-space-3);flex-wrap:wrap;justify-content:space-between;display:flex}.calendar-toolbar-left,.calendar-toolbar-right{align-items:center;gap:var(--tr-space-3);flex-wrap:wrap;display:flex}.calendar-nav-controls{align-items:center;gap:8px;display:flex}.calendar-current-month-heading{color:var(--tr-color-ink-primary);text-align:center;min-width:170px;margin:0 4px;font-size:1.25rem;font-weight:800}.calendar-today-btn{height:36px;padding:0 12px;font-size:.8125rem}.calendar-year-selector-wrapper{align-items:center;gap:6px;display:inline-flex}.calendar-inline-label{color:var(--tr-color-ink-secondary);font-size:.8125rem;font-weight:700}.school-select-control{background:var(--tr-color-surface-base);border-radius:var(--tr-radius-control,8px);color:var(--tr-color-ink-primary);font:inherit;border:1px solid #cdd3e2;height:36px;padding:0 10px;font-size:.875rem;font-weight:700}.calendar-view-toggle{border-radius:var(--tr-radius-control,8px);background:#f1f5f9;padding:3px;display:inline-flex}.calendar-toggle-btn{color:var(--tr-color-ink-secondary);cursor:pointer;font:inherit;background:0 0;border:none;border-radius:6px;padding:6px 12px;font-size:.8125rem;font-weight:700;transition:background-color .15s,color .15s}.calendar-toggle-btn.active{color:var(--tr-color-ink-primary);background:#fff;box-shadow:0 1px 3px #00000014}.calendar-layout-grid{gap:var(--tr-space-5);grid-template-columns:2fr 1fr;display:grid}@media (max-width:1024px){.calendar-layout-grid{grid-template-columns:1fr}}.calendar-grid-card{padding:var(--tr-space-5)}.calendar-grid-header{text-align:center;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin-bottom:6px;display:grid}.calendar-weekday-header{color:var(--tr-color-ink-secondary);letter-spacing:.05em;text-transform:uppercase;padding:6px 0;font-size:.75rem;font-weight:800}.calendar-weekday-header.weekend{color:#94a3b8}.calendar-grid-body{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.calendar-day-cell{box-sizing:border-box;cursor:pointer;text-align:left;background:#fafbfc;border:1px solid #e2e8f0;border-radius:10px;flex-direction:column;height:96px;padding:6px 8px;transition:all .14s;display:flex;overflow:hidden}.calendar-day-cell:hover{border-color:var(--tr-color-brand-primary);background:#fff;transform:translateY(-1px);box-shadow:0 4px 12px #6259b51f}.calendar-day-other-month{opacity:.45;background:#f8fafc}.calendar-day-today{border:2px solid var(--tr-color-brand-primary)}.calendar-day-selected{box-shadow:0 0 0 2px #6259b540;border-color:var(--tr-color-brand-primary)!important;background:#f5f4fc!important}.calendar-day-has-events{background:#fff;border-color:#cbd5e1}.calendar-day-number-row{justify-content:space-between;align-items:center;margin-bottom:4px;display:flex}.calendar-day-number{color:var(--tr-color-ink-primary);font-size:.875rem;font-weight:700}.calendar-today-tag{background:var(--tr-color-brand-primary);color:#fff;text-transform:uppercase;border-radius:999px;padding:1px 5px;font-size:.625rem;font-weight:800}.calendar-day-events-preview{gap:3px;display:grid;overflow:hidden}.calendar-mini-pill{text-overflow:ellipsis;white-space:nowrap;border-radius:4px;align-items:center;gap:4px;padding:2px 4px;font-size:.6875rem;font-weight:700;display:flex;overflow:hidden}.calendar-mini-dot{border-radius:50%;flex-shrink:0;width:5px;height:5px}.calendar-mini-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.calendar-more-pill{color:var(--tr-color-ink-secondary);padding-left:2px;font-size:.6875rem;font-weight:700}.calendar-tag{text-transform:uppercase;border-radius:6px;width:fit-content;padding:3px 8px;font-size:.75rem;font-weight:800;display:inline-flex}.calendar-tag-holiday{color:#b91c1c;background:#fee2e2}.calendar-tag-holiday .calendar-mini-dot{background-color:#e02e49}.calendar-tag-recess{color:#b45309;background:#fef3c7}.calendar-tag-recess .calendar-mini-dot{background-color:#d97706}.calendar-tag-vacation{color:#6d28d9;background:#ede9fe}.calendar-tag-vacation .calendar-mini-dot{background-color:#7c3aed}.calendar-tag-local{color:#0369a1;background:#e0f2fe}.calendar-tag-local .calendar-mini-dot{background-color:#0284c7}.calendar-tag-makeup{color:#15803d;background:#dcfce7}.calendar-tag-makeup .calendar-mini-dot{background-color:#059669}.calendar-legend{margin-top:var(--tr-space-4);padding-top:var(--tr-space-3);border-top:1px solid #f1f5f9;flex-wrap:wrap;align-items:center;gap:12px;display:flex}.calendar-legend-title{color:var(--tr-color-ink-secondary);text-transform:uppercase;font-size:.75rem;font-weight:800}.calendar-legend-item{color:var(--tr-color-ink-secondary);align-items:center;gap:6px;font-size:.8125rem;font-weight:600;display:inline-flex}.calendar-legend-dot{border-radius:50%;width:8px;height:8px}.calendar-details-card{align-content:start}.calendar-details-date-title{color:var(--tr-color-ink-primary);margin:4px 0 0;font-size:1.125rem;font-weight:800}.calendar-day-event-list{gap:var(--tr-space-3);display:grid}.calendar-event-item-card{background:#fafbfc;border:1px solid #e2e8f0;border-radius:10px;gap:6px;padding:12px 14px;display:grid}.calendar-event-header{justify-content:space-between;align-items:center;display:flex}.calendar-ext-id{color:var(--tr-color-ink-secondary);font-family:monospace;font-size:.75rem}.calendar-event-title{color:var(--tr-color-ink-primary);margin:0;font-size:1rem;font-weight:800}.calendar-event-date-text{color:var(--tr-color-ink-secondary);margin:0;font-size:.8125rem}.calendar-empty-day-state{color:var(--tr-color-ink-secondary);padding:var(--tr-space-4) 0}.calendar-empty-text{margin:0 0 6px;font-size:.9375rem;font-weight:600}.calendar-filter-pills{flex-wrap:wrap;gap:6px;display:flex}.calendar-filter-pill{color:var(--tr-color-ink-secondary);cursor:pointer;font:inherit;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:999px;padding:5px 12px;font-size:.8125rem;font-weight:700;transition:all .14s}.calendar-filter-pill:hover{color:var(--tr-color-ink-primary);background:#e2e8f0}.calendar-filter-pill.active{background:var(--tr-color-brand-primary);border-color:var(--tr-color-brand-primary);color:#fff}.calendar-import-dialog{max-width:680px!important}.calendar-modal-close-btn{color:var(--tr-color-ink-secondary);cursor:pointer;background:0 0;border:none;padding:4px;font-size:1.125rem}.calendar-modal-close-btn:hover{color:var(--tr-color-ink-primary)}.calendar-import-controls{align-items:flex-end;gap:var(--tr-space-3);flex-wrap:wrap;display:flex}.calendar-form-field{color:var(--tr-color-ink-primary);gap:6px;font-size:.875rem;font-weight:800;display:grid}.calendar-file-upload-area{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.calendar-file-btn{cursor:pointer;height:44px;padding:0 14px;font-size:.8125rem;line-height:44px;display:inline-flex}.calendar-sample-btn{height:44px;padding:0 12px;font-size:.8125rem}.calendar-import-tabs{border-bottom:1px solid #e2e8f0;gap:8px;margin-top:4px;display:flex}.calendar-import-tab{color:var(--tr-color-ink-secondary);cursor:pointer;font:inherit;background:0 0;border:none;border-bottom:2px solid #0000;padding:8px 12px;font-size:.875rem;font-weight:700;transition:all .14s}.calendar-import-tab.active{border-bottom-color:var(--tr-color-brand-primary);color:var(--tr-color-brand-primary)}.calendar-error-badge{color:#b91c1c;background:#fee2e2;border-radius:999px;margin-left:6px;padding:2px 6px;font-size:.6875rem;font-weight:800}.calendar-csv-textarea{color:var(--tr-color-ink-primary);resize:vertical;background:#fafbfc;border:1px solid #cdd3e2;border-radius:9px;width:100%;padding:10px 12px;font-family:monospace;font-size:.8125rem;line-height:1.5}.calendar-preview-wrapper{gap:8px;display:grid}.calendar-preview-summary{align-items:center;gap:12px;display:flex}.calendar-preview-table-container{border:1px solid #e2e8f0;border-radius:8px;max-height:240px;overflow-y:auto}.calendar-preview-table{margin:0;font-size:.8125rem}.calendar-preview-table th{z-index:1;background:#f8fafc;position:sticky;top:0}.calendar-invalid-line{color:#dc2626;background:#fef2f2;border-radius:4px;padding:2px 4px;font-size:.75rem}.calendar-error-text{color:var(--tr-color-danger);font-weight:700}.calendar-valid-text{color:var(--tr-color-success);font-weight:700}@media (min-width:768px){.student-shell{padding:var(--tr-space-8)}.student-nav{border-radius:var(--tr-radius-card);bottom:var(--tr-space-6);max-width:640px;padding:var(--tr-space-2);width:calc(100% - 48px);left:50%;right:auto;transform:translate(-50%)}.student-next{grid-template-columns:1fr auto}.student-next>:not(.student-primary-action){grid-column:1}.student-primary-action{grid-area:1/2/span 3;align-self:end}}@media (max-width:820px){.admin-sidebar,.school-sidebar{height:auto;min-height:auto;padding:var(--tr-space-4);width:auto;position:static;overflow:visible}.admin-navigation,.school-navigation{gap:var(--tr-space-2);margin-top:var(--tr-space-4);display:flex;overflow-x:auto}.admin-navigation p,.admin-navigation a:not([aria-current=page]),.school-navigation p,.school-navigation a:not([aria-current=page]),.admin-sidebar-footer,.school-sidebar-footer{display:none}.admin-dashboard-content,.school-dashboard-content{min-height:auto;padding:var(--tr-space-6) var(--tr-space-4);width:100%;margin-left:0}.admin-metrics,.admin-dashboard-grid,.infrastructure-layout,.infrastructure-workspace,.infrastructure-form-grid,.infrastructure-form-grid-three,.admin-simple-grid,.school-filters,.school-detail-grid,.school-metrics,.school-dashboard-grid{grid-template-columns:1fr}.admin-topbar,.school-topbar{align-items:start}.admin-user-summary strong,.admin-user-summary small,.school-user-summary strong,.school-user-summary small{display:none}.infrastructure-tabs{grid-template-columns:repeat(3,minmax(150px,1fr));overflow-x:auto}.infrastructure-tabs button{min-width:150px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto;transition-duration:.01ms!important}}
