@font-face{font-family:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/438aa629764e75f3-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:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/875ae681bfde4580-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/51251f8b9793cdb3-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:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/e857b654a2caa584-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:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/cc978ac5ee68c2b6-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:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/4c9affa5bc8f420e-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:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/438aa629764e75f3-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:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/875ae681bfde4580-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/51251f8b9793cdb3-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:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e857b654a2caa584-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:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/cc978ac5ee68c2b6-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:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/4c9affa5bc8f420e-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:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/438aa629764e75f3-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:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/875ae681bfde4580-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/51251f8b9793cdb3-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:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/e857b654a2caa584-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:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/cc978ac5ee68c2b6-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:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/4c9affa5bc8f420e-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:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/438aa629764e75f3-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:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/875ae681bfde4580-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/51251f8b9793cdb3-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:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/e857b654a2caa584-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:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/cc978ac5ee68c2b6-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:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/4c9affa5bc8f420e-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:Manrope;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/438aa629764e75f3-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:Manrope;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/875ae681bfde4580-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/51251f8b9793cdb3-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:Manrope;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/e857b654a2caa584-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:Manrope;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/cc978ac5ee68c2b6-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:Manrope;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/4c9affa5bc8f420e-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:Manrope Fallback;src:local("Arial");ascent-override:103.31%;descent-override:29.07%;line-gap-override:0.00%;size-adjust:103.19%}.__className_6b03d3{font-family:Manrope,Manrope Fallback;font-style:normal}

/*! tailwindcss v4.2.0 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-border-style:solid;--tw-font-weight:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:host,:root{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--color-gray-300:oklch(87.2% .01 258.338);--color-gray-700:oklch(37.3% .034 259.733);--color-gray-900:oklch(21% .034 264.665);--spacing:.25rem;--breakpoint-md:48rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--font-weight-bold:700;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.flex{display:flex}.hidden{display:none}.w-full{width:100%}.max-w-screen-md{max-width:var(--breakpoint-md)}.flex-wrap{flex-wrap:wrap}.justify-between{justify-content:space-between}.gap-x-5{column-gap:calc(var(--spacing) * 5)}.border{border-style:var(--tw-border-style);border-width:1px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-gray-300{border-color:var(--color-gray-300)}.px-1{padding-inline:calc(var(--spacing) * 1)}.py-8{padding-block:calc(var(--spacing) * 8)}.pt-16{padding-top:calc(var(--spacing) * 16)}.pb-8{padding-bottom:calc(var(--spacing) * 8)}.text-center{text-align:center}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.text-gray-700{color:var(--color-gray-700)}.text-gray-900{color:var(--color-gray-900)}.uppercase{text-transform:uppercase}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{color-scheme:light;--green:#66bf9f;--green-deep:#007c72;--green-dark:#045c54;--purple:#793e78;--purple-deep:#4b3446;--pink:#ffc9ed;--pink-deep:#c15e96;--page:#f4f1f4;--backdrop:#dee3de;--shell-max:1720px;--shell-gap:28px;--ink:#29262b;--gray:#6d6670;--gray-soft:#9f97a2;--line:#e4dfe5;--white:#fff;--warning:#f6c65e;--danger:#a6472e;--radius:16px;--sidebar:248px;--shadow:0 18px 45px -32px #3d2a3a6b}*{box-sizing:border-box}body,html{background:var(--backdrop)}body{color:var(--ink);margin:0;overflow-x:hidden}button,input,select,textarea{font:inherit}select,select optgroup,select option{color:var(--ink);color-scheme:light;background-color:#fff}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--green-deep)}@supports (color:color-mix(in lab,red,red)){button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid color-mix(in srgb,var(--green-deep) 32%,transparent)}}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px}button:disabled{cursor:not-allowed;opacity:.55}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.app-loader{background:radial-gradient(circle at 50% 30%,#fff 0,var(--page) 48%);place-content:center;justify-items:center;gap:28px;min-height:100vh;display:grid}.spinner-label{align-items:center;gap:9px;font-size:13px;font-weight:700;display:inline-flex}.login-page{background:#e6ebe7;place-items:center;min-height:100dvh;padding:22px;display:grid}.login-shell{background:#fff;border-radius:22px;grid-template-columns:44% 56%;width:min(1360px,100%);height:min(890px,100dvh - 44px);min-height:680px;display:grid;overflow:hidden;box-shadow:0 28px 70px -38px #30453e7a}.login-visual{color:#fff;background-color:#55b996;background-image:url(/assets/images/login-illustration.webp);background-position:50%;background-size:cover;min-height:0;padding:44px;position:relative;overflow:hidden}.login-visual:after{content:"";pointer-events:none;background:linear-gradient(#2d6f5b1a,#0000 24% 76%,#28514417);position:absolute;inset:0}.login-brand-copy{z-index:2;text-shadow:0 1px 2px #394d4614;width:max-content;position:relative}.login-brand-copy span{font-size:18px;font-weight:700}.login-brand-copy h1{text-transform:uppercase;letter-spacing:-.04em;margin:4px 0 0;font-size:32px;font-weight:800;line-height:1.07}.login-brand-copy p{margin:5px 0 0;font-size:14px;font-weight:800}.login-support{z-index:3;opacity:.92;margin:0;font-size:11px;font-weight:500;position:absolute;bottom:44px;left:44px;right:44px}.login-form-side{place-items:center;padding:48px;display:grid}.login-card{width:min(360px,100%);transform:translateY(-12px)}.mobile-brand{display:none}.eyebrow{color:var(--green-deep);letter-spacing:.095em;text-transform:uppercase;font-size:11px;font-weight:800;display:block}.login-card h2{color:var(--purple-deep);letter-spacing:-.02em;margin:0 0 7px;font-size:21px;line-height:1.25}.login-subtitle{color:var(--gray);margin:0 0 28px;font-size:12.5px;line-height:1.5}.field-label{color:var(--purple-deep);margin:17px 0 8px;font-size:12px;font-weight:800;display:block}.field input,.field select,.field textarea,.login-card input{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:11px;transition:border .15s,box-shadow .15s}.login-card input{border-radius:10px;height:42px;padding:0 14px;font-size:12.5px}.login-card input::placeholder{color:#8e8790;opacity:1}.field input:focus,.field select:focus,.field textarea:focus,.login-card input:focus{border-color:var(--green-deep);outline:none;box-shadow:0 0 0 3px #087c7214}.login-forgot{color:var(--purple);cursor:pointer;background:0 0;border:0;margin:10px 0 0 auto;padding:0;font-size:11.5px;font-weight:700;display:block}.form-alert{color:#9c422e;background:#fff1ed;border:1px solid #e8c6bd;border-radius:11px;align-items:flex-start;gap:9px;margin-bottom:18px;padding:12px 14px;font-size:12.5px;line-height:1.5;display:flex}.form-alert svg{flex:none;margin-top:2px}.login-submit{border-radius:10px;justify-content:center;width:100%;min-height:44px;margin-top:20px;font-size:12px}.login-divider{background:var(--line);height:1px;margin-top:21px}.login-help{color:var(--gray);text-align:center;margin:19px 0 0;font-size:11.5px;line-height:1.45}.login-note{max-width:330px;color:var(--gray-soft);text-align:center;margin:21px auto 0;font-size:10.5px;line-height:1.5}.button{cursor:pointer;border:0;border-radius:11px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 17px;font-size:13px;font-weight:800;transition:transform .12s,background .15s,opacity .15s;display:inline-flex}.button:active:not(:disabled){transform:translateY(1px)}.button-primary{color:#fff;background:var(--purple);box-shadow:0 8px 18px -13px var(--purple)}.button-primary:hover:not(:disabled){background:#683667}.button-ghost{color:var(--purple-deep);background:#f2eff2}.button-soft{color:var(--purple-deep);border:1px solid var(--line);background:#f8f6f8}.button-ghost:hover:not(:disabled),.button-soft:hover:not(:disabled){background:#ebe6eb}.button-small{border-radius:9px;min-height:33px;padding:0 11px;font-size:11.5px}.icon-button{border:1px solid var(--line);cursor:pointer;background:#faf8fa;border-radius:10px;flex:none;place-items:center;width:36px;height:36px;display:inline-grid}.icon-button:hover:not(:disabled){background:#eee9ee}.icon-button.danger{color:var(--danger)}.text-button{color:var(--purple);background:0 0;align-items:center;gap:3px;font-size:12px;font-weight:800;display:inline-flex}.switch,.text-button{cursor:pointer;border:0}.switch{background:#d7d2d8;border-radius:20px;flex:none;width:43px;height:25px;transition:background .18s;position:relative}.switch span{background:#fff;border-radius:50%;width:19px;height:19px;transition:left .18s;position:absolute;top:3px;left:3px;box-shadow:0 2px 5px #0003}.switch.on{background:var(--green-deep)}.switch.on span{left:21px}.director-app{width:100%;max-width:var(--shell-max);min-height:calc(100vh - var(--shell-gap) * 2);margin:var(--shell-gap) auto;background:var(--page);border-radius:22px;display:flex;box-shadow:0 40px 80px -30px #0a282359}.sidebar{width:var(--sidebar);height:calc(100vh - var(--shell-gap) * 2);top:var(--shell-gap);z-index:40;color:#fff;background:linear-gradient(180deg,var(--green-deep) 0,var(--green-dark) 100%);border-radius:22px 0 0 22px;flex-direction:column;flex:none;display:flex;position:sticky}.sidebar:before{content:"";pointer-events:none;border:1px solid #ffffff14;border-radius:50%;width:220px;height:220px;position:absolute;top:-110px;right:-100px}.sidebar-head{border-bottom:1px solid #ffffff1a;padding:27px 22px 21px}.brand-lockup{align-items:center;gap:11px;display:flex;position:relative}.brand-mark{width:37px;height:37px;color:var(--green);background:#fff;border-radius:11px;flex:none;place-items:center;font-size:25px;font-weight:800;display:grid;overflow:hidden}.brand-mark span{transform:rotate(-20deg)translateY(-2px)}.brand-lockup small,.brand-lockup strong{display:block}.brand-lockup strong{font-size:14px;line-height:1.25}.brand-lockup small{color:#ffffff94;margin-top:2px;font-size:10.5px}.sidebar nav{flex:1;padding:23px 13px}.sidebar nav button{color:#ffffffa8;cursor:pointer;background:0 0;border:0;border-radius:11px;align-items:center;gap:12px;width:100%;min-height:45px;margin-bottom:4px;padding:0 13px;font-size:12.5px;font-weight:700;display:flex;position:relative}.sidebar nav button svg{width:18px;height:18px}.sidebar nav button:hover{color:#fff;background:#ffffff12}.sidebar nav button.active{color:var(--green-dark);background:#fff}.sidebar nav button.active svg{stroke:var(--green-dark)}.sidebar nav button.active>i{background:var(--green-deep);border-radius:3px 0 0 3px;width:3px;height:21px;position:absolute;right:0}.sidebar-footer{border-top:1px solid #ffffff1a;padding:18px}.sidebar-person{align-items:center;gap:10px;display:flex}.sidebar-person>div:last-child{min-width:0}.sidebar-person span,.sidebar-person strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.sidebar-person strong{font-size:11.5px}.sidebar-person span{color:#ffffff8c;margin-top:2px;font-size:10px}.logout-button{color:#ffffff8c;cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;margin-top:14px;padding:5px 0;font-size:10.5px;display:flex}.logout-button:hover{color:#fff}.menu-button,.mobile-close{display:none}.app-main{border-radius:0 22px 22px 0;flex:1;min-width:0}.topbar{z-index:30;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(13px);backdrop-filter:blur(13px);background:#ffffffe6;justify-content:space-between;align-items:center;height:80px;padding:0 32px;display:flex;position:sticky;top:0}.topbar>div>span{color:var(--gray-soft);font-size:10px;font-weight:700}.topbar h1{color:var(--purple-deep);margin:1px 0 0;font-size:19px;line-height:1.2}.profile-chip{cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:12px;align-items:center;gap:9px;max-width:250px;padding:7px 9px 7px 7px;display:flex}.profile-chip:hover{border-color:var(--line);background:#faf8fa}.profile-chip>span{flex:1;min-width:0}.profile-chip small,.profile-chip strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.profile-chip strong{font-size:11.5px}.profile-chip small{font-size:9.5px}.profile-chip small,.profile-chip>svg{color:var(--gray-soft)}.avatar{color:#fff;background:var(--purple);border-radius:50%;flex:none;place-items:center;width:34px;height:34px;font-size:11px;font-weight:800;display:grid}.app-content{width:min(1440px,100%);margin:0 auto;padding:28px 32px 60px}.view-stack{flex-direction:column;gap:19px;animation:fade-up .28s;display:flex}@keyframes fade-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.content-loader{min-height:420px;color:var(--gray);place-items:center;display:grid}.page-intro,.welcome-row{justify-content:space-between;align-items:flex-end;gap:20px;display:flex}.page-intro h2,.welcome-row h2{color:var(--purple-deep);letter-spacing:-.03em;margin:4px 0 0;font-size:23px}.page-intro p{color:var(--gray);margin:5px 0 0;font-size:12px}.period-selector{border:1px solid var(--line);color:var(--gray);background:#ffffffa6;border-radius:20px;align-items:center;gap:7px;padding:5px 7px 5px 11px;font-size:10.5px;font-weight:700;display:flex}.period-selector select{color:var(--purple-deep);cursor:pointer;background:0 0;border:0;font-size:10.5px;font-weight:800}.stat-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.stat-card{border:1px solid var(--line);border-radius:var(--radius);min-height:113px;box-shadow:var(--shadow);background:#fff;flex-direction:column;justify-content:center;padding:17px 19px;display:flex;position:relative;overflow:hidden}.stat-card:after{content:"";background:#66bf9f24;border-radius:50%;width:55px;height:55px;position:absolute;top:-22px;right:-25px}.stat-card strong{color:var(--green-deep);font-size:29px;line-height:1}.stat-card span{color:var(--gray);margin-top:8px;font-size:11.5px}.stat-card.accent strong{color:var(--purple)}.stat-card.accent:after{background:#793e781a}.callout{border-radius:14px;align-items:center;gap:13px;padding:13px 15px;display:flex}.warning-callout{background:#fff6e9;border:1px solid #efdcbb}.callout-icon{color:#774900;background:var(--warning);border-radius:10px;flex:none;place-items:center;width:34px;height:34px;display:grid}.callout>div:nth-child(2){flex:1}.callout strong{font-size:12px;display:block}.callout p{color:var(--gray);margin:2px 0 0;font-size:11px}.dashboard-grid{grid-template-columns:1.25fr 1fr;align-items:stretch;gap:18px;display:grid}.panel,.table-panel{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);background:#fff}.panel{padding:20px 21px}.panel-head{justify-content:space-between;align-items:center;gap:18px;margin-bottom:14px;display:flex}.panel-head h3{color:var(--purple-deep);margin:3px 0 0;font-size:15px}.feedback-list{flex-direction:column;display:flex}.feedback-item{border-top:1px solid var(--line);align-items:center;gap:10px;padding:11px 0;display:flex}.feedback-main{flex:1;min-width:0}.feedback-main span,.feedback-main strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.feedback-main strong{font-size:11.5px}.feedback-main span{color:var(--gray);margin-top:2px;font-size:10.5px}.feedback-main p{color:var(--gray-soft);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:4px 0 0;font-size:9.5px;line-height:1.35;display:-webkit-box;overflow:hidden}.rating-badge{border-radius:9px;place-items:center;width:31px;height:31px;font-size:17px;display:grid}.rating-easy{color:#287458;background:#e4f5ee}.rating-ok{color:#765300;background:#fff4d2}.rating-difficult{color:#a6472e;background:#fbeae6}.progress-panel{flex-direction:column;display:flex}.mini-chart{flex:1;align-items:flex-end;gap:9px;min-height:150px;padding-top:12px;display:flex}.bar-column{flex-direction:column;flex:1;justify-content:flex-end;align-items:center;gap:5px;min-width:25px;height:137px;display:flex}.bar-column>span{color:var(--purple);font-size:9px;font-weight:800}.bar-track{background:#f1edf1;border-radius:7px;align-items:flex-end;width:min(22px,75%);height:100px;display:flex;overflow:hidden}.bar-track i{background:linear-gradient(180deg,var(--green),var(--green-deep));border-radius:7px;width:100%;min-height:4px}.bar-column small{color:var(--gray-soft);font-size:8px}.progress-summary{grid-template-columns:1fr 1fr;gap:9px;margin-top:11px;display:grid}.progress-summary div{background:var(--page);border-radius:10px;padding:10px}.progress-summary span,.progress-summary strong{display:block}.progress-summary strong{color:var(--purple);font-size:18px}.progress-summary span{color:var(--gray);font-size:9.5px}.quick-actions{grid-template-columns:.8fr repeat(4,1fr);align-items:stretch;gap:12px;display:grid}.quick-actions>div{padding:10px 4px}.quick-actions h3{color:var(--purple-deep);margin:3px 0;font-size:15px}.quick-actions button{border:1px solid var(--line);cursor:pointer;text-align:left;background:#fff;border-radius:13px;align-items:center;gap:10px;padding:13px;display:flex}.quick-actions button:hover{box-shadow:var(--shadow);border-color:#cfc7d0;transform:translateY(-1px)}.quick-actions button>svg:first-child{width:18px;height:18px;color:var(--purple)}.quick-actions button>svg:last-child{color:var(--gray-soft);margin-left:auto}.quick-actions button span{flex:1;min-width:0}.quick-actions small,.quick-actions strong{display:block}.quick-actions strong{font-size:11px}.quick-actions small{color:var(--gray);margin-top:2px;font-size:9.5px}.toolbar{border:1px solid var(--line);background:#ffffffad;border-radius:13px;justify-content:space-between;align-items:center;gap:16px;padding:11px 13px;display:flex}.toolbar>span{color:var(--gray-soft);font-size:10.5px}.search-field{align-items:center;gap:9px;width:min(380px,100%);display:flex}.search-field svg{color:var(--gray-soft);flex:none}.search-field input{background:0 0;border:0;outline:0;width:100%;font-size:12px}.toolbar:has(.field) .search-field,.toolbar:has(select) .search-field{border:1px solid var(--line);background:#fff;border-radius:9px;height:36px;padding:0 12px}.toolbar:has(.field) .search-field:focus-within,.toolbar:has(select) .search-field:focus-within{border-color:var(--green-deep);box-shadow:0 0 0 3px #007c7214}.axis-panel{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:15px;overflow:hidden}.axis-head{gap:15px;min-height:64px;padding:10px 16px}.axis-head,.axis-title{align-items:center;display:flex}.axis-title{cursor:pointer;text-align:left;background:0 0;border:0;flex:1;gap:11px;min-width:0;padding:0}.axis-title>i{border-radius:4px;flex:none;width:12px;height:12px}.axis-title>span{flex:1;min-width:0}.axis-title small,.axis-title strong{display:block}.axis-title strong{color:var(--purple-deep);font-size:12px}.axis-title small{color:var(--gray);margin-top:3px;font-size:9.5px}.axis-title>svg{color:var(--gray-soft);transition:transform .18s}.axis-panel.collapsed .axis-title>svg{transform:rotate(-90deg)}.activity-list,.activity-row{border-top:1px solid var(--line)}.activity-row{align-items:center;gap:11px;min-height:61px;padding:9px 16px;display:flex}.activity-row:first-child{border-top:0}.activity-row:hover{background:#fdfcfd}.activity-code{width:116px;color:var(--purple);letter-spacing:-.025em;text-overflow:ellipsis;white-space:nowrap;flex:none;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:9.5px;font-weight:800;overflow:hidden}.activity-name{flex:1;min-width:180px}.activity-name span,.activity-name strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.activity-name strong{font-size:11.5px}.activity-name span{color:var(--gray);margin-top:2px;font-size:9.5px}.pill{color:var(--gray);text-transform:uppercase;white-space:nowrap;background:#f0eef0;border-radius:20px;align-items:center;padding:4px 8px;font-size:8.5px;font-weight:800;display:inline-flex}.pill-own{color:var(--purple);background:#f2e5f0}.pill-draft{color:#7a5700;background:#fff2c8}.pill-archived{color:var(--gray);background:#efedef}.pill-stage{color:var(--pink-deep);background:#ffeaf6}.row-actions{justify-content:flex-end;align-items:center;gap:6px;display:flex}.responsive-table table:has(td:last-child>.row-actions) th:last-child,.responsive-table table:has(td:last-child>.table-actions) th:last-child{text-align:right}.row-actions .icon-button{width:32px;height:32px}.invite-card{background:#ffffffc7;border:1px dashed #cfc5cf;border-radius:15px;padding:20px}.form-hint{color:var(--gray);margin:-3px 0 16px;font-size:10.5px}.form-grid{gap:13px;display:grid}.two-columns{grid-template-columns:1fr 1fr}.three-columns{grid-template-columns:repeat(3,1fr)}.span-two{grid-column:span 2}.field>span{color:var(--purple-deep);margin-bottom:6px;font-size:10.5px;font-weight:800;display:block}.field input,.field select{height:41px;padding:0 11px}.field textarea{resize:vertical;padding:10px 11px;line-height:1.5}.field input,.field select,.field textarea{font-size:11.5px}.form-actions{justify-content:flex-end;gap:9px;margin-top:16px;display:flex}.table-panel{overflow:hidden}.responsive-table{overflow-x:auto}table{border-collapse:collapse;width:100%}th{color:var(--gray-soft);text-align:left;text-transform:uppercase;letter-spacing:.06em;padding:13px 15px 10px;font-size:8.5px;font-weight:800}td{border-top:1px solid var(--line);color:var(--gray);vertical-align:middle;padding:13px 15px}td,td strong{font-size:10.5px}td strong{color:var(--ink)}tbody tr:hover{background:#fdfcfd}.person-cell{align-items:center;gap:10px;min-width:205px;display:flex}.person-cell span,.person-cell strong{display:block}.cell-subtitle,.person-cell span{color:var(--gray-soft);margin-top:2px;font-size:9px}.cell-subtitle{display:block}.status{align-items:center;gap:5px;font-size:9.5px;font-weight:800;display:inline-flex}.status i{border-radius:50%;width:7px;height:7px}.status.active{color:var(--green-deep)}.status.active i{background:var(--green)}.status.inactive{color:var(--gray)}.status.inactive i{background:var(--gray-soft)}.table-actions{justify-content:flex-end;gap:8px;display:flex}.filter-tabs{gap:6px;display:flex;overflow-x:auto}.filter-tabs button{border:1px solid var(--line);color:var(--gray);white-space:nowrap;cursor:pointer;background:#ffffffb3;border-radius:20px;padding:8px 12px;font-size:10.5px;font-weight:800}.filter-tabs button.active{border-color:var(--purple);color:#fff;background:var(--purple)}.rating-pill{white-space:nowrap;border-radius:20px;align-items:center;gap:5px;padding:5px 8px;font-size:9px;font-weight:800;display:inline-flex}.comment-cell{min-width:220px;max-width:380px;line-height:1.45}.muted{color:var(--gray-soft)}.settings-stack{max-width:900px;margin-inline:auto}.settings-panel{padding:22px}.school-identity{align-items:center;gap:15px;padding-top:4px;display:flex}.school-logo-placeholder{width:58px;height:58px;color:var(--gray-soft);background:#faf8fa;border:1.5px dashed #c9c1ca;border-radius:13px;flex:none;place-items:center;display:grid;overflow:hidden}.school-logo-placeholder img{object-fit:contain;width:100%;height:100%}.school-identity>div:nth-child(2){flex:1}.school-identity strong{font-size:12px}.preference-row p,.school-identity p{color:var(--gray);margin:3px 0 0;font-size:10.5px;line-height:1.5}.school-meta{border-top:1px solid var(--line);gap:8px;margin-top:16px;padding-top:13px;display:flex}.school-meta span{color:var(--gray);background:var(--page);border-radius:20px;padding:5px 9px;font-size:9.5px}.preference-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:25px;padding:15px 0;display:flex}.preference-row strong{font-size:11.5px}.connection-error,.integration-note{color:var(--gray);background:#ffffff8c;border:1px solid #d9d4db;border-radius:14px;align-items:center;gap:13px;padding:15px 17px;display:flex}.connection-error>svg,.integration-note>svg{width:20px;height:20px;color:var(--purple);flex:none}.connection-error strong,.integration-note strong{color:var(--purple-deep);font-size:11.5px}.connection-error p,.integration-note p{margin:2px 0 0;font-size:10.5px;line-height:1.5}.connection-error>div{flex:1}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);overscroll-behavior:contain;background:#271a2685;place-items:center;padding:25px;display:grid;position:fixed;inset:0}.modal-card{overscroll-behavior:contain;background:#fff;border-radius:20px;flex-direction:column;width:min(720px,100%);max-height:90vh;animation:modal-in .22s both;display:flex;overflow:hidden;box-shadow:0 35px 80px -28px #00000075}.activity-modal{width:min(680px,100%);max-height:min(88vh,900px)}.confirmation-modal{width:min(480px,100%)}.confirmation-copy{color:var(--ink);align-items:flex-start;gap:13px;padding:24px 22px;display:flex}.confirmation-copy>svg{color:#b7791f;flex:none;font-size:22px}.confirmation-copy p{color:var(--gray);margin:7px 0 0;font-size:13px;line-height:1.55}@keyframes modal-in{0%{opacity:0;transform:scale(.98)translateY(8px)}}.modal-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:15px;padding:19px 22px;display:flex}.modal-head h2{color:var(--purple-deep);margin:3px 0 0;font-size:17px}.modal-note{color:#765716;background:#fff8e9;border-bottom:1px solid #f0dfbf;align-items:flex-start;gap:8px;padding:11px 22px;font-size:10.5px;line-height:1.5;display:flex}.modal-note svg{flex:none;margin-top:2px}.modal-note strong{color:#68470c}.modal-form{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.modal-form>.form-grid{overscroll-behavior:contain;min-height:0;padding:20px 22px;overflow-y:auto}.activity-modal-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 112px;gap:14px}.span-all{grid-column:1/-1}.duration-field input{text-align:center}.field>span small{color:var(--gray-soft);font-size:9px;font-weight:600}.activity-grade-field{border:0;min-width:0;margin:0;padding:0}.activity-grade-field legend,.activity-section-label{color:var(--purple-deep);margin-bottom:8px;font-size:10.5px;font-weight:800}.grade-options{flex-wrap:wrap;gap:10px;display:flex}.grade-option{border:1px solid var(--line);cursor:pointer;background:#faf8fa;border-radius:10px;align-items:center;gap:8px;min-height:40px;padding:8px 12px;font-size:11px;font-weight:800;display:flex}.grade-option:has(input:checked){border-color:var(--green-deep)}@supports (color:color-mix(in lab,red,red)){.grade-option:has(input:checked){border-color:color-mix(in srgb,var(--green-deep) 45%,var(--line))}}.grade-option:has(input:checked){background:var(--green)}@supports (color:color-mix(in lab,red,red)){.grade-option:has(input:checked){background:color-mix(in srgb,var(--green) 12%,white)}}.grade-option input{width:16px;height:16px;accent-color:var(--green-deep);margin:0}.grade-option small{color:var(--gray);font-size:9.5px;font-weight:600}.activity-section-label{border-top:1px solid var(--line);margin:4px 0 -4px;padding-top:16px;font-size:11.5px}.activity-step-field>span{color:var(--gray);font-weight:700}.modal-actions{border-top:1px solid var(--line);justify-content:flex-end;gap:9px;padding:14px 22px;display:flex}.empty-state{text-align:center;place-content:center;justify-items:center;min-height:190px;padding:25px;display:grid}.empty-state>div{width:43px;height:43px;color:var(--purple);background:#f1e9f0;border-radius:13px;place-items:center;margin-bottom:10px;display:grid}.empty-state strong{color:var(--purple-deep);font-size:12px}.empty-state p{max-width:320px;color:var(--gray);margin:5px 0 0;font-size:10.5px;line-height:1.5}.toast{z-index:200;color:#fff;background:var(--purple-deep);opacity:0;pointer-events:none;border-radius:11px;align-items:center;gap:8px;padding:11px 16px;font-size:11.5px;font-weight:700;transition:all .22s;display:flex;position:fixed;bottom:26px;left:50%;transform:translate(-50%,14px);box-shadow:0 15px 35px -15px #00000080}.toast.show{opacity:1;transform:translate(-50%)}.account-gate-page{background:radial-gradient(circle at 50% 24%,#fff 0,#eeebee 62%,#e7e2e7 100%);place-items:center;min-height:100dvh;padding:28px;display:grid}.account-gate-card{border:1px solid var(--line);background:#fff;border-radius:22px;width:min(500px,100%);padding:clamp(28px,5vw,48px);box-shadow:0 30px 75px -45px #3d2a3a80}.account-gate-card .brand-lockup{color:var(--purple-deep);margin-bottom:38px}.account-gate-card .brand-mark{color:#fff;background:var(--green-deep)}.account-gate-card .brand-lockup small{color:var(--gray)}.account-gate-card h1{color:var(--purple-deep);letter-spacing:-.03em;margin:6px 0 8px;font-size:25px}.account-gate-card>p{color:var(--gray);margin:0 0 24px;font-size:12.5px;line-height:1.65}.admin-integration-note{background:#f8f6f8}.admin-overview-actions{margin-top:2px}.admin-action-grid{grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:12px;display:grid}.admin-breakdown-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.admin-breakdown-card{min-width:0}.admin-breakdown-list{gap:.9rem;display:grid}.admin-breakdown-row{gap:.35rem;display:grid}.admin-breakdown-label{color:var(--ink-soft);justify-content:space-between;align-items:center;gap:1rem;font-size:.82rem;display:flex}.admin-breakdown-label strong{color:var(--ink);font-size:.9rem}.admin-breakdown-track{background:var(--surface-muted);border-radius:999px;height:.45rem;overflow:hidden}.admin-breakdown-track span{border-radius:inherit;background:linear-gradient(90deg,var(--purple),var(--mint));height:100%;transition:width .22s;display:block}.admin-action-grid button{border:1px solid var(--line);min-height:82px;color:var(--purple-deep);cursor:pointer;text-align:left;background:#fff;border-radius:13px;align-items:center;gap:12px;padding:14px;transition:all .16s;display:flex}.admin-action-grid button:hover{border-color:var(--purple)}@supports (color:color-mix(in lab,red,red)){.admin-action-grid button:hover{border-color:color-mix(in srgb,var(--purple) 32%,var(--line))}}.admin-action-grid button:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.admin-action-grid button>svg{width:21px;height:21px;color:var(--purple);flex:none}.admin-action-grid small,.admin-action-grid strong{display:block}.admin-action-grid strong{font-size:11px}.admin-action-grid small{color:var(--gray);margin-top:3px;font-size:9px;line-height:1.35}.admin-modal-fields{padding:21px 22px}.admin-compact-button{border-radius:8px;min-height:32px;padding:0 10px;font-size:9.5px}.admin-filter-toolbar{flex-wrap:wrap}.admin-filter-toolbar .search-field{flex:260px;max-width:420px;margin-right:auto}.admin-inline-field{min-width:250px;margin:0}.admin-inline-field>span{display:none}.admin-inline-field.admin-labelled-field{min-width:170px}.admin-inline-field.admin-labelled-field>span{margin-bottom:5px;display:block}.admin-inline-field select,.admin-status-filter{border:1px solid var(--line);height:36px;color:var(--ink);background:#fff;border-radius:9px;padding:0 34px 0 11px;font-size:10.5px}.admin-inline-field select,.admin-status-filter,.field select{appearance:none;cursor:pointer;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%236d6670' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right 11px center;background-repeat:no-repeat;background-size:13px;padding-right:32px}.admin-inline-field select:disabled,.field select:disabled{cursor:not-allowed}.admin-status-filter{min-width:150px}.report-filters{grid-template-columns:repeat(auto-fit,minmax(185px,1fr));align-items:end;gap:14px;display:grid}.report-filters .field{margin:0}.report-hint{color:var(--gray-soft);grid-column:1/-1;margin:2px 0 0;font-size:10.5px;line-height:1.55}.report-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;display:grid}.report-card{flex-direction:column;gap:11px;display:flex}.report-card p{color:var(--gray);flex:1;margin:0;font-size:12px;line-height:1.55}.report-card .button{align-self:flex-start}.admin-heading-actions{gap:9px;display:flex}.admin-activity-status{text-transform:uppercase;border-radius:20px;padding:5px 8px;font-size:8.5px;font-weight:800;display:inline-flex}.admin-activity-status.draft{color:#77580c;background:#fff2c8}.admin-activity-status.published{color:#287458;background:#e4f5ee}.admin-activity-status.archived{color:var(--gray);background:#efedef}.admin-activity-modal{width:min(760px,100%)}.admin-version-list{min-height:220px;padding:12px 22px 24px;overflow-y:auto}.admin-version-list article{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:18px;padding:14px 0;display:flex}.admin-version-list article:first-child{border-top:0}.admin-version-list span,.admin-version-list strong{display:block}.admin-version-list strong{color:var(--purple-deep);font-size:11px}.admin-version-list span,.admin-version-list time{color:var(--gray);margin-top:3px;font-size:9.5px}.admin-pending-table{min-height:330px}.admin-profile-summary{align-items:center;gap:15px;display:flex}.admin-profile-avatar{width:58px;height:58px;font-size:16px}.admin-profile-summary h3{color:var(--purple-deep);margin:3px 0 0;font-size:16px}.admin-profile-summary p{color:var(--gray);margin:3px 0 0;font-size:10.5px}.admin-permission-list{flex-wrap:wrap;gap:8px;display:flex}.admin-permission-list span{color:var(--purple);background:#f2e8f1;border-radius:20px;padding:6px 9px;font-size:8.5px;font-weight:800}@media (max-width:1100px){.stat-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.quick-actions{grid-template-columns:repeat(3,1fr)}.quick-actions>div{grid-column:1/-1}.admin-action-grid,.three-columns{grid-template-columns:repeat(2,1fr)}.admin-breakdown-grid{grid-template-columns:1fr}}@media (max-width:820px){:root{--sidebar:260px}.login-page{padding:0}.login-shell{border-radius:0;grid-template-columns:1fr;height:auto;min-height:100vh}.login-visual{display:none}.mobile-brand{margin-bottom:36px;display:block}.login-card{transform:none}.mobile-brand .brand-lockup{color:var(--purple-deep)}.mobile-brand .brand-mark{color:#fff;background:var(--green-deep)}.mobile-brand .brand-lockup small{color:var(--gray)}.admin-portal,.director-app{max-width:none;min-height:100vh;box-shadow:none;border-radius:0;margin:0}.app-main,.sidebar{border-radius:0}.sidebar{top:0;height:100vh;transition:transform .22s;position:fixed;inset:0 auto 0 0;transform:translate(-100%);box-shadow:20px 0 45px -25px #0000008c}.sidebar.open{transform:translate(0)}.nav-scrim{z-index:35;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#23192266;border:0;position:fixed;inset:0}.mobile-close{color:#fff;background:#ffffff0f;border-color:#ffffff26;display:grid;position:absolute;top:25px;right:12px}.app-main{width:100%;margin-left:0}.topbar{height:70px;padding:0 18px}.menu-button{border:1px solid var(--line);background:#fff;border-radius:10px;place-items:center;width:38px;height:38px;display:grid}.topbar>div{flex:1;margin-left:12px}.topbar>div>span{display:none}.topbar h1{font-size:17px}.profile-chip>span,.profile-chip>svg{display:none}.app-content{padding:23px 18px 50px}.quick-actions{grid-template-columns:1fr}.quick-actions>div{grid-column:auto}.activity-row{flex-wrap:wrap}.activity-name{min-width:calc(100% - 130px)}.row-actions{width:100%;padding-left:127px}.three-columns{grid-template-columns:1fr}.admin-heading-actions{width:100%}.admin-heading-actions .button{flex:1}.admin-filter-toolbar .search-field,.admin-inline-field,.admin-status-filter{width:100%}}@media (max-width:600px){.login-form-side{padding:28px 23px}.page-intro,.welcome-row{flex-direction:column;align-items:flex-start}.period-selector{justify-content:space-between;align-self:stretch}.page-intro .button{width:100%}.stat-grid{grid-template-columns:1fr 1fr;gap:10px}.stat-card{min-height:106px;padding:14px}.stat-card strong{font-size:25px}.callout{flex-wrap:wrap;align-items:flex-start}.callout .text-button{margin-left:47px}.toolbar{flex-direction:column;align-items:flex-start}.search-field{width:100%}.axis-head{flex-direction:column;align-items:flex-start}.axis-head>.button{margin-left:23px}.activity-row{padding:12px}.activity-code{width:112px}.activity-name{min-width:calc(100% - 125px)}.row-actions{padding-left:0}.two-columns{grid-template-columns:1fr}.span-two{grid-column:auto}.modal-backdrop{align-items:end;padding:0}.modal-card{border-radius:20px 20px 0 0;max-height:calc(100dvh - 12px)}.activity-modal-grid{grid-template-columns:1fr}.activity-modal-grid .span-all{grid-column:auto}.duration-field input{text-align:left}.modal-actions,.modal-form>.form-grid,.modal-head,.modal-note{padding-left:20px;padding-right:20px}.modal-actions .button{flex:1;padding-left:10px;padding-right:10px}.school-identity{flex-wrap:wrap;align-items:flex-start}.school-identity .button{width:100%}.school-meta{flex-wrap:wrap}.responsive-table{overflow:visible}table,tbody,td,th,thead,tr{display:block}thead{display:none}tbody tr{border-top:1px solid var(--line);padding:12px 14px}tbody tr:first-child{border-top:0}td{text-align:left;border:0;grid-template-columns:95px 1fr;gap:12px;padding:7px 0;display:grid}td:before{content:attr(data-label);color:var(--gray-soft);text-transform:uppercase;letter-spacing:.04em;font-size:8px;font-weight:800}.person-cell{min-width:0}.table-actions{justify-content:flex-end;display:flex}.comment-cell{min-width:0;max-width:none}.connection-error{flex-wrap:wrap;align-items:flex-start}.connection-error .button{width:100%}.admin-action-grid{grid-template-columns:1fr}.admin-heading-actions{flex-direction:column}.admin-heading-actions .button{width:100%}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}