@font-face{font-family:__Fira_Sans_e73a44;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ddb3191311bbadd9-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Fira_Sans_e73a44;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/88bf4b3847941340-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Fira_Sans_e73a44;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/96768aa85868c24d-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:__Fira_Sans_e73a44;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/01c851130b81e027-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__Fira_Sans_e73a44;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/23f83596e15cde83-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Fira_Sans_e73a44;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/e633912c3a84ee22-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Fira_Sans_e73a44;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/07f0d0991c204e49-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Fira_Sans_e73a44;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/20ea8c59830c6877-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Fira_Sans_e73a44;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/226c28b3cdbac862-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Fira_Sans_e73a44;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/82f4f1cc7c956bae-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:__Fira_Sans_e73a44;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/892b469d4e403134-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__Fira_Sans_e73a44;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/99bdd7d9251d3e2b-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Fira_Sans_e73a44;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/19d4c7d3ac217664-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Fira_Sans_e73a44;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/b036901809a398af-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Fira_Sans_e73a44;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/2a6cbe03d9225eda-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Fira_Sans_e73a44;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/182c86d2a59c914e-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Fira_Sans_e73a44;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/a28144df510b02c5-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:__Fira_Sans_e73a44;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/b9d4144fe754221c-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__Fira_Sans_e73a44;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/09499a614c8cefa6-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Fira_Sans_e73a44;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/dc81e2274d40fa6c-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Fira_Sans_e73a44;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/99adbc1ad871a018-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Fira_Sans_e73a44;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/d8b3228beb707b94-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Fira_Sans_e73a44;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/3fe293ad2324b3dd-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Fira_Sans_e73a44;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/4955c13deae8b809-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:__Fira_Sans_e73a44;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/e0ac28cda337c95b-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__Fira_Sans_e73a44;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/04cd9c0f73dfd3a5-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Fira_Sans_e73a44;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/a3daefb2b997c503-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Fira_Sans_e73a44;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/8f8b5df3cd5f6b3d-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Fira_Sans_e73a44;font-style:normal;font-weight:900;font-display:swap;src:url(/_next/static/media/3f29bbd9949edd36-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Fira_Sans_e73a44;font-style:normal;font-weight:900;font-display:swap;src:url(/_next/static/media/5eb8ba9dba471446-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Fira_Sans_e73a44;font-style:normal;font-weight:900;font-display:swap;src:url(/_next/static/media/b28adbf8c488f5d8-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:__Fira_Sans_e73a44;font-style:normal;font-weight:900;font-display:swap;src:url(/_next/static/media/36be4ca540a5acd3-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__Fira_Sans_e73a44;font-style:normal;font-weight:900;font-display:swap;src:url(/_next/static/media/b3e9ade14c9c92bc-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Fira_Sans_e73a44;font-style:normal;font-weight:900;font-display:swap;src:url(/_next/static/media/09a16de97adb4368-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Fira_Sans_e73a44;font-style:normal;font-weight:900;font-display:swap;src:url(/_next/static/media/cd43cbfd0c1164ee-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Fira_Sans_Fallback_e73a44;src:local("Arial");ascent-override:91.01%;descent-override:25.79%;line-gap-override:0.00%;size-adjust:102.74%}.__className_e73a44{font-family:__Fira_Sans_e73a44,__Fira_Sans_Fallback_e73a44;font-style:normal}.__variable_e73a44{--font-fira:"__Fira_Sans_e73a44","__Fira_Sans_Fallback_e73a44"}@keyframes fadeIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.95)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}:root{color-scheme:light;--accent:#bf5b21;--surface:#fff;--surface-muted:#f8fafc;--surface-subtle:#e2e8f0;--text:#0f172a;--text-muted:#475569;--text-soft:#64748b}.favicon{width:48px;height:45px}*{box-sizing:border-box}body{margin:0;min-height:100%;background:radial-gradient(circle at top,rgba(8,149,166,.08),transparent 55%),var(--surface-muted);color:var(--text);font-family:Inter,Segoe UI,system-ui,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased}.auth-page{min-height:100vh;align-items:center;justify-content:center;padding:3.5rem 1.5rem}.auth-card,.auth-page{display:flex;flex-direction:column}.auth-card{width:100%;max-width:28rem;background:var(--surface);border-radius:1.5rem;border:1px solid rgba(148,163,184,.18);box-shadow:0 30px 60px -35px rgba(15,23,42,.45);padding:3rem 2.5rem;gap:1.75rem}.auth-card__header{text-align:center;display:flex;flex-direction:column;gap:1.25rem}.auth-card__title{margin:0;font-size:1.9rem;font-weight:700;color:var(--text)}.auth-card__subtitle{margin:0;font-size:.98rem;color:var(--text-muted)}.google-button{border:none;border-radius:.85rem;background:var(--accent);color:#fff;font-weight:600;font-size:1rem;padding:.85rem 1.25rem;width:100%;display:inline-flex;align-items:center;justify-content:center;gap:.75rem;box-shadow:0 18px 32px -24px rgba(8,149,166,.85);cursor:pointer;transition:background .15s ease,transform .15s ease,box-shadow .15s ease}.google-button:hover{background:rgba(8,149,166,.9);transform:translateY(-1px)}.google-button:disabled{opacity:.75;cursor:not-allowed;transform:none;box-shadow:none}.google-button__icon{height:20px;width:20px;display:block}.auth-status{font-size:.95rem}.auth-hint,.auth-status{color:var(--text-soft);text-align:center;margin:0}.auth-hint{font-size:.85rem}.app-shell{min-height:100vh;background:var(--surface-muted);display:flex;flex-direction:column}.app-header{background:var(--surface);border-bottom:1px solid rgba(148,163,184,.16);box-shadow:0 12px 32px -28px rgba(15,23,42,.55)}.app-header__inner{max-width:70rem;margin:0 auto;padding:1rem 1.75rem;display:flex;align-items:center;justify-content:space-between;gap:1.5rem}.app-brand__title{margin:0;font-size:1.3rem;font-weight:700}.app-user{gap:1rem;position:relative}.app-user,.app-user__avatar{display:flex;align-items:center}.app-user__avatar{height:2.5rem;width:2.5rem;border-radius:999px;background:rgba(148,163,184,.35);justify-content:center;font-weight:600;color:var(--text)}.app-user__meta{display:flex;flex-direction:column;gap:.15rem}.app-user__email{font-size:.85rem;color:var(--text-soft)}.app-ghost-button,.button{border-radius:999px;border:1px solid rgba(148,163,184,.5);background:#fff;color:var(--text);font-weight:600;padding:.45rem 1.1rem;cursor:pointer;transition:color .15s ease,border-color .15s ease,box-shadow .15s ease}.app-ghost-button:hover,.button:hover{border-color:var(--accent);color:var(--accent);box-shadow:0 12px 32px -26px rgba(8,149,166,.35)}.button--ghost{border:1px solid rgba(148,163,184,.5);background:transparent;color:var(--text)}.app-ghost-button:disabled,.button:disabled{opacity:.55;cursor:not-allowed;box-shadow:none;pointer-events:none}.app-profile-trigger{border:none;border-radius:999px;background:rgba(8,149,166,.14);color:var(--accent);font-weight:600;padding:.45rem 1rem;cursor:pointer;transition:background .15s ease,box-shadow .15s ease}.app-profile-trigger:hover{background:rgba(8,149,166,.22)}.profile-popover{position:absolute;top:calc(100% + .75rem);right:0;width:min(32rem,calc(100vw - 2rem));z-index:20}.profile-popover__card{width:100%;max-height:clamp(20rem,70vh,36rem);overflow-y:auto;background:var(--surface);border-radius:1.25rem;border:1px solid rgba(148,163,184,.2);box-shadow:0 24px 48px -30px rgba(15,23,42,.55);padding:2rem}.profile-panel-card{padding:2rem;background:hsla(0,0%,100%,.98);box-shadow:0 35px 60px -40px rgba(126,147,199,.45)}.profile-popover__header{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.5rem 2rem;flex-shrink:0;border-bottom:1px solid rgba(148,163,184,.2)}.profile-panel-card{width:100%;display:flex;flex-direction:column;overflow:hidden;background:linear-gradient(180deg,hsla(0,0%,100%,.98),rgba(241,245,249,.6));border-radius:1.75rem;border:1px solid rgba(148,163,184,.35);box-shadow:0 35px 60px -40px rgba(15,23,42,.45)}.profile-panel-card h2{margin:0;font-size:1.45rem}.profile-panel-card p{color:var(--text-soft)}.student-profile-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));grid-gap:1rem;gap:1rem;margin-top:1rem}.student-profile-summary dt{margin:0;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-soft)}.student-profile-summary dd{margin:0;font-size:1rem;font-weight:600}.profile-panel-card .form-actions{justify-content:flex-end;margin-top:1.25rem}.status-banner{margin-top:1rem}.profile-overlay{position:fixed;inset:0;background:rgba(15,23,42,.45);display:flex;align-items:center;justify-content:center;padding:1.5rem;z-index:30}.profile-popup__body{width:min(640px,100%);max-height:calc(100vh - 3rem);display:flex;flex-direction:column}.profile-popup__scrollable{flex:1 1;overflow-y:auto;padding:0 2rem 2rem}.profile-header__actions{display:flex;gap:.5rem;align-items:center;flex-shrink:0}.student-stack{gap:1.75rem}.admin-card,.student-stack{display:flex;flex-direction:column}.admin-card{background:var(--surface);border-radius:1.25rem;border:1px solid rgba(148,163,184,.16);box-shadow:0 28px 48px -34px rgba(15,23,42,.4);padding:2rem 2.25rem;gap:1.5rem}.student-card__header h2{margin:0;font-size:1.45rem;font-weight:700}.status-banner{border-radius:.85rem;border:1px solid rgba(148,163,184,.3);padding:.75rem 1rem;font-size:.95rem;line-height:1.5}.status-banner--error{border-color:#fca5a5;background:#fef2f2;color:#b91c1c}.status-banner--success{border-color:rgba(16,185,129,.45);background:#ecfdf5;color:#047857}.student-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));grid-gap:1rem;gap:1rem;align-items:end}.student-filters-container{display:flex;flex-direction:column;gap:.75rem}.student-filters__header{display:flex;align-items:center;justify-content:space-between}.student-filters__title{margin:0;font-weight:600}.student-filters__toggle{font-size:.95rem;padding:.35rem .75rem;line-height:1.2}.field{display:flex;flex-direction:column;gap:.25rem}.select-input,.text-input,textarea{border-radius:.85rem;border:1px solid rgba(148,163,184,.45);background:#fff;padding:.55rem .85rem;font-size:.95rem}.form-actions{display:flex;gap:.75rem}.form-actions--inline{justify-content:flex-end;align-items:center}.event-grid{list-style:none;margin:0;padding:0;display:grid;grid-gap:1.25rem;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(18rem,1fr))}.event-card{border-radius:1.25rem;border:1px solid rgba(148,163,184,.25);padding:1.25rem;background:hsla(0,0%,100%,.9)}.event-card__name{font-size:1rem;font-weight:600;margin:0}.muted{color:var(--text-soft)}.user-details--compact{display:grid;grid-gap:.85rem;gap:.85rem}.user-details--compact dt{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text-soft);margin-bottom:.25rem}.user-details--compact dd{margin:0;font-size:1rem}.profile-popover__close{border:none;background:transparent;color:var(--text-soft);font-size:1.5rem;line-height:1;cursor:pointer;border-radius:50%;width:2.25rem;height:2.25rem;display:flex;align-items:center;justify-content:center}.profile-popover__close:hover{color:var(--accent)}@media (max-width:900px){.profile-overlay{padding:1rem}.profile-popup__body{width:100%;max-height:calc(100vh - 2rem)}.profile-popover__header{padding:1rem 1.25rem;gap:.75rem;flex-wrap:wrap}.profile-panel-card h2{font-size:1.15rem}.profile-panel-card p{font-size:.85rem}.profile-popup__scrollable{padding:0 1.25rem 1.25rem}.profile-header__actions{gap:.4rem}.profile-header__actions .button{font-size:.8rem;padding:.4rem .85rem}}@media (max-width:640px){.profile-popover{position:fixed;inset:1rem}.profile-overlay{padding:.5rem}.profile-popup__body{max-height:calc(100vh - 1rem)}.profile-popover__header{padding:.85rem 1rem}.profile-panel-card{border-radius:1rem}.profile-panel-card h2{font-size:1.05rem}.profile-panel-card p{font-size:.8rem}.profile-popup__scrollable{padding:0 1rem 1rem}.student-stack{gap:1.25rem}.form-grid label{font-size:.85rem}}.app-main{flex:1 1;padding:3rem 1.75rem 4rem;display:flex;align-items:flex-start;justify-content:center}.portal-container{width:100%;max-width:70rem;margin:0 auto;display:flex;flex-direction:column;gap:1.5rem}.portal-columns{display:grid;grid-template-columns:minmax(0,2.1fr) minmax(0,1fr);grid-gap:1.5rem;gap:1.5rem}.portal-column{display:flex;flex-direction:column;gap:1.5rem}.portal-column--aside{gap:1rem}.form-grid{display:flex;flex-direction:column;gap:1rem}.app-user__name{font-weight:600}.student-calendar-list{margin-top:2rem}.student-calendar-list h3{margin:0 0 .5rem;font-size:1.1rem}.student-calendar-list ul{list-style:none;padding:0;margin:0;display:grid;grid-gap:1rem;gap:1rem}.student-calendar-list li{background:#fff;gap:.35rem}.calendar-event-group,.student-calendar-list li{border:1px solid rgba(148,163,184,.25);border-radius:1rem;padding:1rem;display:flex;flex-direction:column}.calendar-event-group{background:var(--surface);margin-bottom:1rem;gap:.75rem}.calendar-event-group__header{display:flex;align-items:center;gap:.5rem}.event-grid--compact{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr))}.admin-list__actions{justify-content:flex-end}@media (max-width:900px){.portal-columns{grid-template-columns:1fr}.app-header__inner{flex-direction:column;align-items:flex-start}.app-user{width:100%;justify-content:flex-end}}.admin-section{gap:1rem}.admin-list,.admin-section{display:flex;flex-direction:column}.admin-list{list-style:none;margin:0;padding:0;gap:.75rem}.admin-list__item{border:1px solid rgba(148,163,184,.35);border-radius:1rem;padding:1rem;display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;flex-wrap:wrap}.admin-list__title{margin:0;font-size:1rem;font-weight:600}.admin-list__description{margin:.25rem 0 0;color:var(--text-soft);font-size:.9rem}.admin-list__actions{display:flex;gap:.5rem;flex-wrap:wrap}.badge{display:inline-flex;align-items:center;border-radius:999px;padding:.2rem .75rem;font-size:.75rem;gap:.35rem}.badge--muted{background:rgba(148,163,184,.2);color:var(--text-soft)}[data-admin-dark=true] .admin-section{background-color:#1e1410!important;border-color:hsla(0,0%,100%,.09)!important}[data-admin-dark=true] .admin-section>header{background-color:#251a10!important;border-bottom-color:hsla(0,0%,100%,.09)!important}[data-admin-dark=true] .admin-section h2,[data-admin-dark=true] .admin-section h3{color:#f0e6dc!important}[data-admin-dark=true] .admin-section .section-description,[data-admin-dark=true] .admin-section>header p{color:#8a7060!important}[data-admin-dark=true] .admin-section>div{background-color:#1e1410}[data-admin-dark=true] .field label,[data-admin-dark=true] .field>label>span,[data-admin-dark=true] .field>span{color:#c4a898!important}[data-admin-dark=true] .select-input,[data-admin-dark=true] .text-input,[data-admin-dark=true] textarea{background:#2a1c12!important;color:#f0e6dc!important;border-color:hsla(0,0%,100%,.13)!important}[data-admin-dark=true] .text-input::placeholder,[data-admin-dark=true] textarea::placeholder{color:#5a4438!important}[data-admin-dark=true] .select-input:focus,[data-admin-dark=true] .text-input:focus,[data-admin-dark=true] textarea:focus{border-color:#bf5b21!important;box-shadow:0 0 0 3px rgba(191,91,33,.2)!important;outline:none}[data-admin-dark=true] .select-input option,[data-admin-dark=true] .text-input option{background:#2a1c12;color:#f0e6dc}[data-admin-dark=true] .admin-list__item{background:#1e1410;border-color:hsla(0,0%,100%,.09)}[data-admin-dark=true] .admin-list__title{color:#f0e6dc}[data-admin-dark=true] .admin-list__description{color:#8a7060!important}[data-admin-dark=true] .admin-section p{color:#c4a898}[data-admin-dark=true] .admin-section .hint,[data-admin-dark=true] .admin-section small{color:#6a5448!important}[data-admin-dark=true] .admin-teacher-card{background-color:#1e1410!important;border-color:hsla(0,0%,100%,.09)!important}[data-admin-dark=true] .admin-teacher-card p,[data-admin-dark=true] .admin-teacher-card span{color:#c4a898}[data-admin-dark=true] .admin-teacher-card[data-blocked=true]{background-color:#2a1414!important;border-color:#7f1d1d!important}@media (max-width:900px){.admin-teacher-card>div{flex-wrap:wrap}}@media (max-width:640px){.admin-teacher-card>div>div:last-child{width:100%;justify-content:flex-start!important}}[data-admin-dark=true] .app-ghost-button,[data-admin-dark=true] .button{background:hsla(0,0%,100%,.07)!important;border-color:hsla(0,0%,100%,.14)!important;color:#f0e6dc!important}[data-admin-dark=true] .app-ghost-button:hover,[data-admin-dark=true] .button:hover{background:rgba(191,91,33,.16)!important;border-color:#bf5b21!important;color:#d9712e!important;box-shadow:0 2px 8px rgba(191,91,33,.2)!important}[data-admin-dark=true] .button--ghost{background:transparent!important;border-color:hsla(0,0%,100%,.14)!important;color:#f0e6dc!important}[data-admin-dark=true] .button--ghost:hover{background:rgba(191,91,33,.16)!important;border-color:#bf5b21!important;color:#d9712e!important}[data-admin-dark=true] .app-ghost-button:disabled,[data-admin-dark=true] .button:disabled{opacity:.4!important}.badge--accent{background:rgba(8,149,166,.18);color:var(--accent)}.badge--success{background:rgba(34,197,94,.18);color:#15803d}.badge--danger{background:hsla(0,91%,71%,.22);color:#b91c1c}.checkbox-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));grid-gap:.5rem;gap:.5rem}.checkbox-item{display:flex;align-items:center;gap:.35rem;font-size:.95rem}.analytics-table table{width:100%;border-collapse:collapse}.analytics-table td,.analytics-table th{text-align:left;border-bottom:1px solid rgba(148,163,184,.3);padding:.45rem .35rem;font-size:.85rem}.profile-panel-card button,.profile-panel-card input,.profile-panel-card select,.profile-panel-card textarea{pointer-events:auto}