@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(data:font/woff2;base64,d09GMgABAAAAAAjYABQAAAAAD0wAAAhrAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhYbchwuP0hWQVKBCT9NVkFSOQZgP1NUQVSBHgBsL2wRCAqFDIQVCxoAMId0ATYCJAMuBCAFhVIHdgwHG1UNUdQsyukusq8SOCcq7Il9U8YYyc4hBYUZskZi+WMmWcM83sEXLlRE1Nrz9uwBfn4fKADMKopImEh2xMakYuOJfPo5fckYZWSJ1IhUAShEvz8D1/MjoYDsVM9nP4+b+V4CCc0nqFX8XOFUWx9M1MjSWXuu0noq4g3wvx8YUbx0A4Dxufr+L8Suffx+ru62IVU87zAJEVKllHvt3uYNUZlo+6Gyila6iWSaJQ95CSpbukVaRwJB/OuyMewc71QwA4qISgSjXRykOu4mWcR2H4iG7d+jBrbV8D+I3MoTA/MIolb0olescxzYxVaigGWIAv6uSWtxu9mt4H4VWlSDB9iDeFC2wtQ2uVAbGvNmS7RmwammcTTYG9th3bYr5O2eHIt369EoyE9jy9ptrmcaWXgg//rn4AKOcgYBvVjUkiiAYBZsynvMSNTlWObVDOX5SQCcep06VyDmL5K9dChe/VkvX4BrZasJfavjPtQfZxrgdQBlWfkKYCuDiF6wMGCT8qAoUYbFSlvYxQFOkNemuMVAKtcBJ9S+j2qyG1S+JW1egPJxfFWXXzChLxcph/SEsdrKc6qeA5Ta2hYquf5+7SKw0nKVYomtHO0D/sPWXwZNOgFT/UUodAVcYp7wl1klYMhmwXJFLAz6GXDDEPIC9KNPSiq4tcb3o7XhlkmbhxQ6+KWsZ4UMw/hXQkaqrSBTPQ8e+R81mME6TPgI4GewCQtQlP9Fh1I8+4jUdV+tWa9n0nlk6sQAXvEOH6Akn5KPuThlTDyfRJKTSCKhCUWSSUIil8RRHM0l/Jr67JKLrL1J0m4HkjUXnpDkOBJLkACJJzGJXBwHHHIxn+YoXrnzqF16fLfd5rcNu3uXUFhv53BL+qj88sO4et8tLvXKCQu3/vL95yTt6d2D4F+zw0CAiyGgXLIC/GdvkrTjp8t+884TXzyJ8aU+i2v3QPqIwrrC4oDsx9nAMZd+l1/yDVx+3E9MQdjC+aA6/94571s73J944j2fXdj3Ms+F9z7Y1OezvvF9P8N70G/W95vkTLVP06m7dFHrppFVk52gOqbf3uJdlueRYiUPsBfpw+7dJblT8mLzplAx5+2Xzr/kdjN55zoccz9n3DcbwUaO135Huii/+co9/dfvZlVNn95U41C/7Bti6/LFn2/E/3xlgjYyfKz2vZYu9m3c6jHTU7+b1XnxP67ShYz3uxwtw9IS4348OFENke/GAD02+whcdNVL5qxTFAjco+yAoDPmTPy9wbTypBeMlFd2/fUeF2EQBXuYwT6Y7OYQJ/lFSJelWcO4+zuRHDe4xgi9GU/LojxwjBTgJaRhTMFsndiE+eSM8fortjPrxQO+ErKFFDkhkJNjE5XVjCemUuaJ9RaFwdj5EVGQ37kDQUGiWBqYEGYAKEQKq7KRAQwdi2y8pkyLMGX9twFEMizztFCrlSRNUKVYw8w3erlA9uMWhu1oeZTe0NJhCmqqLamAekHE0lJB06Sg0Sjo7MHpNCoDAjpamTv2V+RNTpGpaCxNHBUd7YF/4V/8LH4UXIOTcBljvzakIXax5KSYsUMG//zTZ8mTaZvP3wK3A4Kf8Ii9euk+eAFfvxZ0r9MhPV1qZFleLcxTXZOULvYa4mD2+tFME/vqOSHZ2QZdfm2B1bS9MiHPHtfRRNb5PKOisa66hehKpcx8KBP8gAJWVmoeQAENBsGwENhsWllnZ2N9YyMQ7lumtYmk7FjO0CZEr/ej4N/dsM3xrc7nXxARJ/eMtirJ1Cnjh/YMM6lV06eN7g++idili0BpUvDxY8EwDzx48Ky4rQ1omVhp4LriZw/EtQf5iH4wCG9qpsGNq4X1hH8OkAoAI5uUZq2CZYmZYdr76YF4u92mlQHdVJyvNpi0TEdLXa3Mm/vocUN987n6+or8dLin3JKy8g6dubxIKqAqoU0QHI3lxRW1rFotSTZbZWW7xhYU2RXW7RIZERGoZf9y0gxHZPVlsZRCqXZqtaKqLD/9OW/w7MWrV3k1rSkjGUVHeTY0Z5SVdZ5WW2V5/PpSE81au/ZMf5FTQzMKU1R/6j584rQ+fYb/TsWDBg7GhwrnWXm9lNV3UN9QSgMuYSRiJ7Jqi0mj6d69tdVqtTRJD07sg7QnbtzIaqRoe7mstYbSmm22JEq202h0johhsxLIM3GG291VLwecGVCCcj7axOdVirSsoUF2TrxSO4twRglTRg4IgZB78PMWl6W6kYL2AHWRlFspqkJDFYitFEW1IjKmUDF1nerM7CCXBmpys4OCbQSKi4oo3+oMFHZenlpVVyQCIAAgwL1eRvZN9bB6BU0XAQBkhq82AQDkuKLpztiOBySSltAFaBUQvuy26bEU1Y0gCPaeyiYs5s2ipqkuw2r5MzlL+VM+AZTTEeb/K2Ewl6Ox7DLTNRkqLl3px7tHPeA19LkYY87DYmlOwMpe2cXaBv9g4xBfYmuDd3RLHeCebClmN2CldwXWFk7BxugoRdumLV25sP2wt9x2OOhtwtFK490nI46h6RlQXbtHET0XTJrhdWgBTye/QwqGLQ5dEieJJLSsv1lSJD27DBU8ChVOWsvIgT3FtWWAkA2mrk1IS2QaX/1OhCjsTDeSMgy8ESroHDyR0+sSovxmICWkmd6Xs7c97HXIf6gbCShTahu7hog9HEzlvqS8vL5CuMDy03uWmryCw/YD3/zz+F4yWR6Qkbdw9rGXlu1tq5kZzuP6YHcWwqR41wzKjubMl8EcX3DOTnNHaJBTl3L0hVzLpM+olK9llt6oq8LurL/Oq5Ai/x/E3GjGdn4Imyq1Kk3adOkztEf3/yjDY84x5EhidJQ1sV4RT4S9zPs/jEVGJRZ6A4fyv1tDhkhYJN5rwAns7MD0XAA=)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/onest-cyrillic-wght-normal-DXI_y_WF.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/onest-latin-ext-wght-normal-CnNj8hVb.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Onest Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/onest-latin-wght-normal-CUIqqgP9.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color:var(--color-text);background:var(--color-background);font-synthesis:none;text-rendering:optimizelegibility;--color-background:#f6f2e9;--color-surface:#fffdf8;--color-surface-muted:#efebe2;--color-text:#192233;--color-text-muted:#586273;--color-border:#d4d0c7;--color-border-strong:#6f7988;--color-primary:#2f5f9f;--color-brand-wordmark-blue:#2677cc;--color-brand-tagline:#2c873b;--brand-lockup-font-weight:680;--brand-lockup-letter-spacing:-.075em;--brand-lockup-line-height:.95;--brand-lockup-shared-s-shadow:0 0 .35em color-mix(in srgb, var(--color-brand-wordmark-blue) 16%, transparent);--brand-lockup-class-width:2.04em;--brand-lockup-class-prefix-width:1.59em;--brand-lockup-shared-s-width:.446em;--brand-lockup-solved-prefix-width:.68em;--brand-lockup-solved-suffix-width:.965em;--brand-lockup-handshake-slot-width:.78em;--brand-lockup-handshake-width:.88em;--brand-lockup-handshake-height:.8em;--brand-lockup-handshake-left:-.05em;--brand-lockup-handshake-y:.14em;--brand-lockup-handshake-optical-lift:0px;--brand-lockup-handshake-transform:translateY(calc(var(--brand-lockup-handshake-y) - var(--brand-lockup-handshake-optical-lift)));--brand-lockup-handshake-filter:blur(0) drop-shadow(0 0 .15em #2677cc33);--brand-lockup-hand-size:.72em;--brand-lockup-hand-filter:drop-shadow(0 0 .13em #2ac6d533);--brand-lockup-domain-margin:.13em;--brand-lockup-domain-width:.746em;--brand-lockup-domain-top:.486em;--brand-lockup-domain-size:.38em;--brand-lockup-domain-weight:630;--brand-lockup-domain-spacing:-.035em;--brand-lockup-domain-transform:none;--global-chrome-max-width:92rem;--global-chrome-height:5rem;--global-chrome-inline:24px;--global-brand-wordmark-size:clamp(1.45rem, 2.25vw, 1.8rem);--global-brand-wordmark-width:9.65rem;--global-brand-width:9.65rem;--global-brand-height:3rem;--color-primary-hover:#244b80;--color-on-primary:#fff;--color-primary-surface:#e7eef8;--color-success:#1d6547;--color-success-surface:#e7f4ed;--color-warning:#704b00;--color-warning-surface:#fff3d6;--color-danger:#8b3733;--color-danger-surface:#fcebea;--color-focus:#174f9d;--color-control:#fff;--color-control-hover-border:#8c98aa;--color-disabled-text:#747d8c;--color-disabled-surface:#e5e1d8;--color-surface-glass:#fffdf8b8;--color-surface-glass-strong:#fffdf8eb;--color-global-chrome-surface:#fefcf7;--color-interactive-subtle:#ffffff85;--color-interactive-subtle-strong:#ffffffbd;--color-overlay:#1018287a;--color-overlay-subtle:#10182861;--color-success-border:#80bea2;--color-danger-border:#d39a97;--color-warm-text:#6b4d32;--color-warm-surface:#f7eadc;--color-violet-text:#6b4d92;--color-violet-surface:#f0e9f7;--color-chart-track:#e7e4dc;--color-skeleton-edge:#e9e5dc;--color-skeleton-mid:#f7f4ec;--color-finance-summary:#162746;--color-finance-summary-text:#fff;--color-finance-summary-muted:#cfdaed;--color-finance-summary-kicker:#b9c9e7;--color-finance-summary-highlight:#7aabff47;--color-finance-summary-line:#fff3;--shadow-sm:0 .2rem .7rem #17203314;--shadow-md:0 1rem 2rem #17203324;--shadow-lg:0 1.5rem 4rem #1720331f;--shadow-drawer:-1.5rem 0 4rem #1018282e;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--radius-sm:.5rem;--radius-md:.75rem;--radius-lg:1rem;--focus-ring:0 0 0 3px var(--color-background), 0 0 0 6px var(--color-focus);--ink:var(--color-text);--canvas:var(--color-background);--muted:var(--color-text-muted);--line:var(--color-border);--line-strong:var(--color-border-strong);--blue:var(--color-primary);--green:var(--color-success);--red:var(--color-danger);--surface:var(--color-surface-glass-strong);font-family:Onest Variable,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root[data-theme=dark]{--color-background:#121821;--color-surface:#1a2330;--color-surface-muted:#232e3d;--color-text:#f3f6fa;--color-text-muted:#b6c0ce;--color-border:#354357;--color-border-strong:#6b788b;--color-primary:#83b6fb;--color-brand-wordmark-blue:#83b6fb;--color-brand-tagline:#9ae57f;--color-primary-hover:#a8ccfc;--color-on-primary:#102038;--color-primary-surface:#213b5d;--color-success:#81d8ad;--color-success-surface:#18362a;--color-warning:#f1c869;--color-warning-surface:#3a3019;--color-danger:#ffaaa4;--color-danger-surface:#452522;--color-focus:#a9cdff;--color-control:#1d2735;--color-control-hover-border:#91a1b7;--color-disabled-text:#8995a6;--color-disabled-surface:#283342;--color-surface-glass:#1a2330c7;--color-surface-glass-strong:#1a2330f0;--color-global-chrome-surface:#19222f;--color-interactive-subtle:#2c394bb8;--color-interactive-subtle-strong:#334256e6;--color-overlay:#04080eb8;--color-overlay-subtle:#04080e9e;--color-success-border:#3f8263;--color-danger-border:#9d5d59;--color-warm-text:#f0bb88;--color-warm-surface:#3b2d22;--color-violet-text:#d4b5f4;--color-violet-surface:#352847;--color-chart-track:#2d3949;--color-skeleton-edge:#263242;--color-skeleton-mid:#354357;--color-finance-summary:#1b3154;--color-finance-summary-text:#f5f8ff;--color-finance-summary-muted:#d2ddf0;--color-finance-summary-kicker:#bfd1ed;--color-finance-summary-highlight:#7fb1ff4d;--color-finance-summary-line:#e5eeff3d;--shadow-sm:0 .2rem .7rem #00000047;--shadow-md:0 1rem 2rem #00000057;--shadow-lg:0 1.5rem 4rem #00000061;--shadow-drawer:-1.5rem 0 4rem #0000006b}*{box-sizing:border-box}html:root{background:linear-gradient(to bottom, var(--color-global-chrome-surface) 0 calc(var(--global-chrome-height) - 1px), var(--color-border) calc(var(--global-chrome-height) - 1px) var(--global-chrome-height), var(--color-background) var(--global-chrome-height)) fixed;scrollbar-gutter:stable;scrollbar-color:var(--color-border-strong) transparent;min-width:0}@supports selector(::-webkit-scrollbar){html{scrollbar-color:auto}html::-webkit-scrollbar{width:15px}html::-webkit-scrollbar-track{background:linear-gradient(to bottom, var(--color-global-chrome-surface) 0 calc(var(--global-chrome-height) - 1px), var(--color-border) calc(var(--global-chrome-height) - 1px) var(--global-chrome-height), var(--color-background) var(--global-chrome-height)) fixed}html::-webkit-scrollbar-thumb{background:var(--color-border-strong);background-clip:content-box;border:4px solid #0000;border-radius:999px}}@media (hover:hover) and (pointer:fine){html:root{scrollbar-gutter:auto;overflow-y:scroll}}body{min-width:0;min-height:100vh;color:var(--color-text);background:var(--color-background);margin:0}::selection{color:var(--color-on-primary);background:var(--color-primary)}button,input,select,textarea{font:inherit}:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}.shell{flex-direction:column;width:100%;min-height:100svh;margin:0 auto;display:flex}.choice-group{border:0;width:fit-content;min-width:0;max-width:100%;margin:0;padding:0}.choice-group>legend{color:var(--muted);margin-bottom:.45rem;font-size:.88rem;font-weight:650}.choice-group__options{border:1px solid var(--line);background:var(--color-interactive-subtle);border-radius:.8rem;width:fit-content;max-width:100%;padding:.2rem;display:inline-flex}.choice-group__option{min-width:0;min-height:44px;color:var(--text);cursor:pointer;text-align:center;background:0 0;border:0;border-radius:.6rem;justify-content:center;align-items:center;gap:.45rem;padding:.5rem .75rem;font-size:.84rem;font-weight:700;line-height:1.2;display:inline-flex;position:relative}.choice-group__option[data-selected=true]{background:var(--color-control);box-shadow:var(--shadow-sm)}.choice-group__option:has(input:focus-visible){box-shadow:var(--focus-ring);outline:0}.choice-group__icon{font-size:1.1rem;line-height:1}.child-gender-choice{width:100%}.child-gender-choice .choice-group__options{grid-template-columns:repeat(2,minmax(0,1fr));width:100%;display:grid}.child-gender-choice .choice-group__option{width:100%}.class-switcher__list{gap:.4rem;display:grid}.class-switcher__row{width:100%;min-height:44px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:.75rem;gap:.12rem;padding:.65rem .7rem;display:grid}.class-switcher__row:hover:not(:disabled){background:var(--color-interactive-subtle)}.class-switcher__row:focus-visible{box-shadow:var(--focus-ring);outline:0}.class-switcher__row--current{border-color:var(--line);background:var(--color-surface);cursor:default}.class-switcher__primary{justify-content:space-between;align-items:center;gap:.5rem;min-width:0;font-weight:700;display:flex}.class-switcher__current{color:var(--blue);text-transform:uppercase;letter-spacing:.04em;flex:none;font-size:.72rem;font-weight:700}.class-switcher__secondary,.class-switcher__children,.class-switcher__more span{overflow-wrap:anywhere;color:var(--muted);font-size:.78rem;line-height:1.35}.class-switcher__more{justify-content:space-between;align-items:baseline;gap:.75rem;padding:.65rem .2rem 0;display:flex}.class-directory{gap:1.25rem;display:grid}.class-directory__filters{gap:1rem;display:grid}.class-directory__total{color:var(--muted);margin:0;font-size:.88rem}.class-directory__list{gap:.65rem;display:grid}.class-directory__row{border:1px solid var(--line);background:var(--color-surface);border-radius:.9rem;justify-content:space-between;align-items:center;gap:1rem;min-width:0;padding:1rem;display:flex}.class-directory__row>div{min-width:0}.class-directory__row h2,.class-directory__row p{overflow-wrap:anywhere;margin:0}.class-directory__row h2{font-size:1rem}.class-directory__row p{color:var(--muted);margin-top:.2rem;font-size:.85rem}@container (width<=50rem){.class-directory .filter-bar{grid-template-columns:minmax(0,1fr)}.class-directory__row{flex-direction:column;align-items:stretch}.class-directory__row .button{width:100%}}.child-rows{gap:.85rem;display:grid}.child-row-editor{border:1px solid var(--line);border-radius:.75rem;grid-template-columns:minmax(12rem,1fr) auto minmax(10rem,.7fr) auto;align-items:end;gap:.75rem;padding:.9rem;display:grid}.child-row-editor>legend{padding:0 .3rem;font-weight:700}@media (width<=760px){.class-directory__row{flex-direction:column;align-items:stretch}.class-directory__row .button{width:100%}.child-row-editor{grid-template-columns:1fr}.choice-group__options{width:100%}}.global-chrome{width:100vw;height:var(--global-chrome-height);min-height:var(--global-chrome-height);z-index:30;box-shadow:inset 0 -1px 0 var(--line);background:var(--color-global-chrome-surface);-webkit-backdrop-filter:blur(.8rem);backdrop-filter:blur(.8rem);grid-template-columns:16rem minmax(0,1fr) 19rem;align-items:center;gap:1rem;margin-inline:0;padding-inline-start:max(var(--global-chrome-inline), calc((100% - var(--global-chrome-max-width)) / 2 + var(--global-chrome-inline)));padding-inline-end:calc(max(var(--global-chrome-inline), calc((100% - var(--global-chrome-max-width)) / 2 + var(--global-chrome-inline))) + (100vw - 100%));display:grid;position:sticky;top:0}.brand.global-brand-anchor{--brand-compact-handshake-optical-lift:4.5px;--brand-compact-domain-gap:.34em;--brand-compact-domain-top:1.36em;--brand-lockup-handshake-optical-lift:var(--brand-compact-handshake-optical-lift);--brand-lockup-handshake-transform:translateY(calc(var(--brand-lockup-handshake-y) - var(--brand-compact-handshake-optical-lift)));--brand-lockup-domain-margin:var(--brand-compact-domain-gap);--brand-lockup-domain-top:var(--brand-compact-domain-top);width:var(--global-brand-width);height:var(--global-brand-height);flex:none;grid-column:1;margin-inline-start:0}.global-brand-anchor .brand__copy{width:100%}.global-brand-anchor .brand__name,.global-brand-anchor .brand__wordmark{width:var(--global-brand-wordmark-width)}.global-chrome__controls,.global-chrome__actions,.global-chrome__compact-actions,.global-chrome__profile-slot{justify-content:flex-end;align-items:center;gap:.5rem;min-width:0;display:flex}.global-chrome__controls{grid-column:3;margin-inline-end:1rem}.global-chrome__compact-actions{display:none}.global-chrome__profile-slot{flex:none;width:44px;height:44px;position:relative}.profile-menu{width:44px;height:44px;position:relative}.profile-menu__trigger,.profile-menu__action,.profile-menu__logout{border:1px solid var(--line);color:var(--ink);background:var(--color-interactive-subtle-strong);cursor:pointer}.profile-menu__trigger{border-radius:50%;place-items:center;width:44px;height:44px;padding:0;font-size:.82rem;font-weight:800;display:grid}.profile-menu__trigger[aria-expanded=true]{border-color:var(--line-strong);background:var(--color-control);box-shadow:var(--shadow-sm)}.profile-menu__popover{width:min(20rem,100vw - 1rem);top:calc(100% + (var(--global-chrome-height) - 44px) / 2 + .5rem);z-index:70;border:1px solid var(--line);color:var(--ink);background:var(--color-surface);box-shadow:var(--shadow-md);border-radius:.9rem;gap:.7rem;padding:.8rem;display:grid;position:absolute;right:0}.profile-menu__identity{grid-template-columns:2.25rem minmax(0,1fr);align-items:center;gap:.65rem;min-width:0;display:grid}.profile-menu__identity>div{gap:.1rem;min-width:0;display:grid}.profile-menu__avatar{width:2.25rem;height:2.25rem;color:var(--color-on-primary);background:var(--blue);border-radius:50%;place-items:center;font-size:.78rem;font-weight:800;display:grid}.profile-menu__label{color:var(--muted);font-size:.72rem;font-weight:750}.profile-menu__email{min-width:0;color:var(--ink);overflow-wrap:anywhere;font-size:.82rem;font-weight:650;line-height:1.35}.profile-menu__feedback:empty{display:none}.profile-menu__feedback .inline-status{min-height:0;margin:0;padding:.65rem .7rem;font-size:.78rem}.profile-menu__divider{background:var(--line);border:0;width:100%;height:1px;margin:0}.profile-menu__action,.profile-menu__logout{text-align:left;width:100%;min-height:44px;font:inherit;border-color:#0000;border-radius:.65rem;align-items:center;gap:.65rem;padding:.65rem .75rem;font-size:.86rem;font-weight:750;display:flex}.profile-menu__action:hover,.profile-menu__logout:hover:not(:disabled){background:var(--color-surface-muted)}.profile-menu__logout:hover:not(:disabled){color:var(--color-danger);background:var(--color-danger-surface)}.profile-menu__action svg,.profile-menu__logout svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:1.15rem;height:1.15rem}.profile-menu__logout:disabled{cursor:wait;opacity:.75}.brand{--brand-wordmark-size:var(--global-brand-wordmark-size);color:var(--ink);letter-spacing:-.02em;align-items:center;gap:.75rem;font-weight:700;display:flex}.brand__copy{gap:.08rem;min-width:0;display:grid}.brand__name{font-family:Onest Variable,Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,sans-serif;font-size:var(--brand-wordmark-size);font-weight:var(--brand-lockup-font-weight);line-height:var(--brand-lockup-line-height);letter-spacing:var(--brand-lockup-letter-spacing);white-space:nowrap;display:inline-flex}.brand__wordmark,.brand__word{align-items:baseline;display:inline-flex}.brand__word--class{width:var(--brand-lockup-class-width);flex:none}.brand__class-prefix{width:var(--brand-lockup-class-prefix-width);flex:none}.brand__shared-s{width:var(--brand-lockup-shared-s-width);flex:none}.brand__solved-prefix{width:var(--brand-lockup-solved-prefix-width);flex:none}.brand__solved-suffix{width:var(--brand-lockup-solved-suffix-width);flex:none}.brand__shared-s{color:var(--color-brand-wordmark-blue);text-shadow:var(--brand-lockup-shared-s-shadow)}.brand__handshake-slot{width:var(--brand-lockup-handshake-slot-width);place-items:center;display:inline-grid;position:relative}.brand__handshake{left:var(--brand-lockup-handshake-left);width:var(--brand-lockup-handshake-width);height:var(--brand-lockup-handshake-height);transform:var(--brand-lockup-handshake-transform);transform-origin:50% 54%;filter:var(--brand-lockup-handshake-filter);place-items:center;display:inline-grid;position:relative}.brand__handshake-glyph{font-family:Apple Color Emoji,Segoe UI Emoji,Noto Color Emoji,sans-serif;font-size:var(--brand-lockup-hand-size);filter:var(--brand-lockup-hand-filter);line-height:1}.brand__domain{width:var(--brand-lockup-domain-width);margin-top:var(--brand-lockup-domain-top);margin-left:var(--brand-lockup-domain-margin);color:var(--muted);font-size:var(--brand-lockup-domain-size);font-weight:var(--brand-lockup-domain-weight);letter-spacing:var(--brand-lockup-domain-spacing);transform:var(--brand-lockup-domain-transform);align-self:flex-start;display:inline-block}.brand--link:hover .brand__handshake,.brand--link:focus-visible .brand__handshake{animation:.56s ease-in-out brand-handshake-rock}@keyframes brand-handshake-rock{0%,to{transform:var(--brand-lockup-handshake-transform) rotate(0)}20%{transform:translateY(calc(var(--brand-lockup-handshake-y) - var(--brand-lockup-handshake-optical-lift) - 1px)) rotate(-6deg)}40%{transform:translateY(calc(var(--brand-lockup-handshake-y) - var(--brand-lockup-handshake-optical-lift) + 1px)) rotate(5deg)}60%{transform:translateY(calc(var(--brand-lockup-handshake-y) - var(--brand-lockup-handshake-optical-lift) - 1px)) rotate(-4deg)}80%{transform:translateY(calc(var(--brand-lockup-handshake-y) - var(--brand-lockup-handshake-optical-lift) + 1px)) rotate(3deg)}}.hero{grid-template-columns:minmax(20rem,.9fr) minmax(30rem,1.1fr);align-items:center;gap:clamp(2rem,5vw,5rem);width:min(72rem,100%);margin:auto 0;margin-inline:auto;padding:2.5rem 1.25rem;display:grid}.hero h1{font-size:clamp(3rem,5vw,4rem)}.hero__copy{min-width:0}.hero__wordmark{justify-self:end}.hero__wordmark-placeholder{aspect-ratio:16/9;border:1px solid var(--line);background:var(--color-surface-muted);border-radius:clamp(1.25rem,3vw,2.6rem);width:min(42rem,100%);min-width:0}.eyebrow{color:var(--blue);letter-spacing:.11em;text-transform:uppercase;margin:0 0 1rem;font-size:.8rem;font-weight:800}h1{max-width:13ch;color:var(--ink);letter-spacing:-.065em;margin:0;font-size:clamp(2.65rem,7vw,5.75rem);line-height:.98}.lead{max-width:39rem;color:var(--muted);margin:1.75rem 0 2.75rem;font-size:clamp(1.05rem,2vw,1.25rem);line-height:1.6}.hero__actions{flex-wrap:wrap;gap:.75rem;margin:-1rem 0 2.75rem;display:flex}.button{cursor:pointer;border:1px solid #0000;border-radius:.75rem;justify-content:center;align-items:center;min-height:2.9rem;padding:.75rem 1.15rem;font-weight:750;line-height:1.2;text-decoration:none;transition:background-color .15s,border-color .15s,transform .15s;display:inline-flex}.button:hover:not(:disabled){transform:translateY(-1px)}.button:disabled{cursor:wait;opacity:.65}.button--primary{color:var(--color-on-primary);background:var(--blue)}.button--primary:hover:not(:disabled){background:var(--color-primary-hover)}.button--secondary{color:var(--ink);border-color:var(--line-strong);background:var(--color-interactive-subtle)}.button--secondary:hover:not(:disabled){border-color:var(--blue)}.status-panel{border-block:1px solid var(--line);justify-content:space-between;align-items:flex-end;gap:1.5rem;padding:1.25rem 0;display:flex}.status-panel__label,.status-panel__note{color:var(--muted);margin:0;font-size:.78rem}.status{color:var(--ink);margin:.35rem 0 0;font-weight:700}.status--ok span{color:var(--green)}.status--error{color:var(--red)}.status--checking{color:var(--muted)}@media (width<=64rem){.hero{grid-template-columns:minmax(0,1fr);justify-items:center;gap:2rem;padding:2.5rem 1.25rem}.hero__copy{width:min(38rem,100%)}.hero__wordmark{grid-row:1;justify-self:center;width:min(36rem,100%)}}@media (width<=36rem){.shell{--global-chrome-inline:1rem}.hero{gap:1.5rem;padding:1.75rem 1rem 2.5rem}.hero h1{font-size:clamp(2.45rem,12vw,3.35rem)}.lead{margin:1.25rem 0 2rem}.status-panel{flex-direction:column;align-items:flex-start;gap:.75rem}}@media (width<=44rem){.hero__wordmark-placeholder{aspect-ratio:4/3}}.access-shell{width:100%;min-height:100svh;margin:0 auto}.access-shell__body{min-height:calc(100svh - var(--global-chrome-height));display:grid}.brand--link{border-radius:.35rem;width:fit-content;text-decoration:none}.brand--link:focus-visible{outline:3px solid var(--color-focus);outline-offset:4px}@media (prefers-reduced-motion:reduce){.brand--link:hover .brand__handshake,.brand--link:focus-visible .brand__handshake{animation:none}}.access-card{width:min(30rem, calc(100% - var(--global-chrome-inline) - var(--global-chrome-inline)));border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-lg);border-radius:1.25rem;place-self:center;margin:3rem 0;padding:clamp(1.35rem,4vw,2.4rem)}.access-card h1{letter-spacing:-.055em;overflow-wrap:anywhere;max-width:none;font-size:clamp(2rem,7vw,3rem);line-height:1.02}.access-card__description{color:var(--muted);margin:1rem 0 1.75rem;line-height:1.55}.access-card__footer{border-top:1px solid var(--line);color:var(--muted);margin-top:1.5rem;padding-top:1.25rem;font-size:.92rem}.access-card a:not(.button){color:var(--blue);font-weight:700}.access-form{gap:1.15rem;display:grid}.field{gap:.45rem;min-width:0;display:grid}.field label,.field__label-row{color:var(--ink);font-size:.9rem;font-weight:750}.field__label-row{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.field__label-row a{font-size:.82rem}.field input{border:1px solid var(--line-strong);width:100%;min-width:0;min-height:3rem;color:var(--ink);background:var(--color-control);border-radius:.65rem;padding:.7rem .8rem}.field textarea{border:1px solid var(--line-strong);width:100%;min-width:0;color:var(--ink);background:var(--color-control);resize:vertical;border-radius:.65rem;padding:.7rem .8rem;line-height:1.5}.field select,.workspace-nav select{border:1px solid var(--line-strong);width:100%;min-width:0;min-height:3rem;color:var(--ink);background:var(--color-control);border-radius:.65rem;padding:.7rem 2.2rem .7rem .8rem}.field input:hover{border-color:var(--color-control-hover-border)}.field input[aria-invalid=true]{border-color:var(--red)}.field__hint,.field__error{margin:0;font-size:.8rem;line-height:1.4}.field__hint{color:var(--muted)}.field__error{color:var(--red)}.field__error--slot{min-height:1.15rem}.notice-slot{min-height:3.65rem}.field__support{min-height:1.15rem}.form-actions{flex-wrap:wrap;align-items:center;gap:.75rem;min-height:3rem;display:flex}.inline-status{min-height:3.2rem;color:var(--muted);border:1px solid #0000;border-radius:.65rem;align-items:center;padding:.75rem .9rem;font-size:.86rem;line-height:1.45;display:flex}.inline-status--success{color:var(--color-success);border-color:var(--color-success-border);background:var(--color-success-surface)}.inline-status--error{color:var(--color-danger);border-color:var(--color-danger-border);background:var(--color-danger-surface)}.posting-preview__live-value{justify-content:flex-end;align-items:center;gap:.45rem;display:inline-flex}.searchable-combobox{z-index:8;min-width:0;position:relative}.searchable-combobox__control{min-width:0;position:relative}.searchable-combobox__control input{padding-right:2.8rem}.searchable-combobox__clear{width:2.5rem;height:2.5rem;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:.55rem;place-items:center;padding:0;font-size:1.25rem;display:grid;position:absolute;top:50%;right:.25rem;transform:translateY(-50%)}.searchable-combobox__popup{width:100%;min-height:0;position:absolute;top:calc(100% + .35rem);left:0}.searchable-combobox__popup[data-placement=top]{top:auto;bottom:calc(100% + .35rem)}.searchable-combobox__popup[data-open=true]{border:1px solid var(--line-strong);background:var(--color-surface);min-height:3.2rem;box-shadow:var(--shadow-md);border-radius:.8rem;overflow:hidden}.searchable-combobox__popup [role=listbox]{max-height:min(22rem, var(--combobox-popup-max-height,50svh));overscroll-behavior:contain;overflow-y:auto}.searchable-combobox__status{min-height:3.2rem;color:var(--muted);background:var(--color-surface-muted);grid-template-columns:minmax(0,1fr) 1.5rem;align-items:center;gap:.75rem;padding:.65rem .85rem;font-size:.78rem;display:grid}.searchable-combobox__status[data-state=error]{grid-template-columns:minmax(0,1fr) auto}.searchable-combobox__summary{overflow-wrap:anywhere;min-width:0}.searchable-combobox__popup [role=option]{border:0;border-top:1px solid var(--line);width:100%;min-width:0;min-height:3rem;color:var(--ink);background:var(--color-surface);text-align:left;cursor:pointer;gap:.2rem;padding:.75rem .85rem;display:grid}.searchable-combobox__popup [role=option][data-active=true]{background:var(--color-primary-surface)}.searchable-combobox__popup [role=option] span{color:var(--muted);font-size:.8rem}.notice{overflow-wrap:anywhere;border-radius:.65rem;margin:0;padding:.9rem 1rem;font-size:.9rem;line-height:1.45}.notice--error{color:var(--color-danger);border:1px solid var(--color-danger-border);background:var(--color-danger-surface)}.notice--success{color:var(--color-success);border:1px solid var(--color-success-border);background:var(--color-success-surface);gap:.25rem;display:grid}.notice+.access-form{margin-top:1.15rem}.account-summary{margin:0 0 1.25rem}.account-summary div{border-block:1px solid var(--line);min-width:0;padding:1rem 0}.account-summary dt{color:var(--muted);font-size:.78rem}.account-summary dd{overflow-wrap:anywhere;margin:.25rem 0 0;font-weight:700}.not-found-shell{width:100%;min-height:100svh;margin:0 auto}.not-found{min-height:calc(100svh - var(--global-chrome-height));text-align:center;place-content:center;gap:1rem;padding:1.25rem;display:grid}.not-found h1{font-size:clamp(2rem,8vw,4rem)}.product-shell{width:min(76rem,100%);min-height:100svh;margin:0 auto;padding:1.25rem}.product-shell--center{align-content:center;justify-items:start;gap:1rem;display:grid}.product-shell--center h1,.empty-state h1,.onboarding h1{overflow-wrap:anywhere;max-width:none}.product-shell--center h1,.empty-state h1{font-size:clamp(2.2rem,7vw,4.4rem)}.segmented{border:1px solid var(--line);background:var(--color-interactive-subtle);border-radius:.8rem;width:fit-content;max-width:100%;padding:.25rem;display:flex}.segmented label{cursor:pointer;border-radius:.55rem;align-items:center;gap:.5rem;min-width:0;padding:.55rem .7rem;font-size:.88rem;font-weight:700;display:flex}.segmented input[type=radio]{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.segmented label:has(input:focus-visible){box-shadow:var(--focus-ring)}.segmented label:has(input:checked){background:var(--color-control);box-shadow:var(--shadow-sm)}@media (width<=36rem){.shell{--global-chrome-inline:1rem}.hero{padding:3rem 1rem 2rem}.hero__actions,.hero__actions .button{width:100%}.status-panel{flex-direction:column;align-items:flex-start}.access-shell{--global-chrome-inline:1rem}.access-card{margin:2rem 0 1rem}.product-shell{padding:1rem}}.finance-tabs{border:1px solid var(--line);background:var(--color-surface-muted);border-radius:.75rem;gap:.25rem;width:fit-content;padding:.25rem;display:flex}.finance-tabs a{min-height:2.55rem;color:var(--muted);border-radius:.55rem;place-items:center;padding:.55rem 1rem;font-size:.84rem;font-weight:750;text-decoration:none;display:grid}.finance-tabs a:hover,.finance-tabs a:focus-visible{color:var(--ink)}.finance-tabs .finance-tabs__active{color:var(--ink);background:var(--color-surface);box-shadow:var(--shadow-sm)}.collection-groups,.collection-group,.collection-list{gap:1rem;min-width:0;display:grid}.collection-groups{gap:2rem}.collection-group>header{border-bottom:1px solid var(--line-strong);align-items:baseline;gap:.6rem;display:flex}.collection-group>header h2{letter-spacing:.01em;margin:0 0 .65rem;font-size:1rem}.collection-group>header span{color:var(--muted);font-size:.75rem}.collection-card{border:1px solid var(--line);background:var(--color-surface-glass);border-radius:1rem;grid-template-columns:minmax(0,1fr) minmax(15rem,.55fr);min-width:0;display:grid;overflow:hidden}.collection-card__main{min-width:0;color:inherit;padding:1.25rem;text-decoration:none;display:block}.collection-card__main:hover h3,.collection-card__main:focus-visible h3{color:var(--blue)}.collection-card__heading{color:var(--muted);justify-content:space-between;align-items:center;gap:1rem;font-size:.75rem;display:flex}.collection-card h3{overflow-wrap:anywhere;margin:.8rem 0 .4rem;font-size:clamp(1.15rem,2.5cqi,1.55rem)}.collection-card p{color:var(--muted);overflow-wrap:anywhere;margin:0;line-height:1.5}.collection-kind{width:fit-content;min-height:1.65rem;color:var(--color-warm-text);background:var(--color-warm-surface);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;align-items:center;padding:.25rem .55rem;font-size:.68rem;font-weight:800;display:inline-flex}.collection-kind--voluntary{color:var(--color-success);background:var(--color-success-surface)}.collection-card__totals{border-left:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;margin:0;display:grid}.metric{align-content:center;gap:.35rem;min-width:0;padding:1rem;display:grid}.metric+.metric{border-left:1px solid var(--line)}.metric dt{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.68rem}.metric dd{font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:0;font-size:.94rem}.metric dd strong{font-size:1.1rem}.metric--neutral{border:1px solid var(--line);background:var(--color-surface-muted);border-radius:.8rem}.collection-detail__header{border-bottom:1px solid var(--line-strong);justify-content:space-between;align-items:flex-end;gap:1.5rem;min-width:0;padding-bottom:1.5rem;display:flex}.collection-detail__header>div:first-child{min-width:0}.collection-detail__header h1{letter-spacing:-.06em;overflow-wrap:anywhere;max-width:18ch;margin:.8rem 0 .5rem;font-size:clamp(2.4rem,7cqi,5.2rem);line-height:.96}.collection-detail__header p{max-width:42rem;color:var(--muted);overflow-wrap:anywhere;margin:0 0 .65rem;line-height:1.55}.collection-detail__header>div>span:last-child,.back-link{color:var(--muted);font-size:.82rem}.back-link{width:fit-content;font-weight:750;text-decoration:none}.back-link:hover,.back-link:focus-visible{color:var(--blue)}.collection-composition{border:1px solid var(--line);background:var(--color-surface-glass);border-radius:1rem;gap:1rem;min-width:0;padding:clamp(1rem,3vw,1.6rem);display:grid}.collection-composition__bar{background:var(--color-chart-track);border-radius:999px;height:.85rem;overflow:hidden}.collection-composition__bar span{border-radius:inherit;background:var(--blue);height:100%;display:block}.collection-composition dl{grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.collection-composition dl .metric--neutral{margin-left:.7rem}.collection-composition--voluntary dl{grid-template-columns:repeat(2,minmax(0,1fr))}.collection-charge-table th:nth-last-child(-n+3),.collection-charge-table td:nth-last-child(-n+3){text-align:right}.collection-charge-cards dl .metric{padding:0}.collection-charge-cards dl .metric+.metric{border-left:0}.collection-section-state{min-height:8rem;color:var(--muted);text-align:center;place-content:center;justify-items:center;gap:.8rem;padding:1rem;display:grid}.collection-cash-list{border-top:1px solid var(--line-strong);display:grid}.collection-cash-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:1rem;min-width:0;padding:1rem 0;display:grid}.collection-cash-row>div{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.25rem .65rem;min-width:0;display:grid}.collection-cash-row strong,.collection-cash-row small{overflow-wrap:anywhere}.collection-cash-row small{color:var(--muted);grid-column:2}.entry-kind--refund{color:var(--color-danger);background:var(--color-danger-surface)}.collection-export{width:fit-content}.finance-form__explanation{min-height:3rem;color:var(--muted);margin:0;font-size:.82rem;line-height:1.5}.multi-combobox{border:1px solid var(--line-strong);background:var(--color-interactive-subtle);border-radius:.8rem;gap:.55rem;min-width:0;padding:.6rem;display:grid}.multi-combobox__chips{flex-wrap:wrap;gap:.4rem;display:flex}.multi-combobox__chips button{border:1px solid var(--line);min-width:0;color:var(--ink);background:var(--color-primary-surface);cursor:pointer;overflow-wrap:anywhere;border-radius:999px;align-items:center;gap:.35rem;padding:.35rem .55rem;font-size:.75rem;font-weight:700;display:inline-flex}.multi-combobox .field{gap:.3rem}.finance-audience-editor{gap:.75rem;min-width:0;display:grid}@media (width<=64rem){.collection-card{grid-template-columns:minmax(0,1fr)}.collection-card__totals{border-top:1px solid var(--line);border-left:0}.collection-detail__header{flex-direction:column;align-items:stretch}}@media (width<=48rem){.finance-tabs{width:100%}.finance-tabs a{flex:1;min-width:0}.collection-card__heading{flex-direction:column;align-items:flex-start;gap:.5rem}.collection-detail__header h1{max-width:12ch;font-size:clamp(2.45rem,13vw,4rem)}.collection-detail__header .finance-header__actions,.collection-detail__header .button{width:100%}.collection-composition dl,.collection-composition--voluntary dl{grid-template-columns:minmax(0,1fr)}.collection-composition dl .metric,.collection-composition dl .metric--neutral{border-top:1px solid var(--line);border-left:0;margin:0}.collection-composition dl .metric:first-child{border-top:0}.collection-cash-row{grid-template-columns:minmax(0,1fr) auto}.collection-cash-row .button{grid-column:1/-1;width:100%}}@media (width<=28rem){.collection-card__totals{grid-template-columns:minmax(0,1fr)}.collection-card__totals .metric+.metric{border-top:1px solid var(--line);border-left:0}.collection-cash-row{grid-template-columns:minmax(0,1fr)}}.skip-link{z-index:100;clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;color:var(--color-on-primary);background:var(--blue);border:0;border-radius:.6rem;margin:-1px;padding:0;position:fixed;top:.75rem;left:50%;overflow:hidden}.skip-link:focus-visible{clip:auto;white-space:normal;width:auto;height:auto;margin:0;padding:.7rem 1rem;overflow:visible;transform:translate(-50%)}.three-pane-shell{width:100%;min-height:100svh}.three-pane-shell__body{width:min(var(--global-chrome-max-width), 100%);min-height:calc(100svh - var(--global-chrome-height) + var(--global-chrome-inline));padding:var(--global-chrome-inline);grid-template:"left center right"minmax(0,1fr)/min(16rem,256px) minmax(0,1fr) min(19rem,304px);align-items:start;gap:1rem;margin:0 auto;display:grid}.three-pane-shell__body[data-has-context=false]{grid-template-columns:min(16rem,256px) minmax(0,1fr);grid-template-areas:"left center"}.app-fatal-shell{min-height:100svh}.app-fatal-error{width:min(38rem,100% - 2rem);min-height:calc(100svh - var(--global-chrome-height));align-content:center;justify-items:start;gap:1rem;margin:0 auto;padding:2rem 0 4rem;display:grid}.app-fatal-error h1,.app-fatal-error p{margin:0}.app-fatal-error>p:not(.eyebrow){max-width:34rem;color:var(--muted);line-height:1.55}.drawer-toggle,.drawer-backdrop,.drawer-close,.app-drawer__mobile-heading,.three-pane-center__context-action{display:none}.app-drawer{min-width:0;height:calc(100svh - var(--global-chrome-height) - var(--global-chrome-inline) - var(--global-chrome-inline));top:calc(var(--global-chrome-height) + var(--global-chrome-inline));scrollbar-width:thin;border:1px solid var(--line);background:var(--color-surface-glass);border-radius:1rem;padding:1rem;position:sticky;overflow-y:auto}.app-drawer--left{grid-area:left}.app-drawer--right{grid-area:right}.app-drawer__content{min-width:0}.three-pane-center{min-width:0;min-height:calc(100svh - var(--global-chrome-height) - var(--global-chrome-inline));grid-area:center;padding:clamp(1rem,2.5vw,2.25rem) .5rem 4rem;container-type:inline-size}.app-route-placeholder{align-content:start;gap:1.25rem;width:min(58rem,100%);min-height:calc(100svh - 6rem);margin:0 auto;padding:clamp(1.5rem,4vw,2.75rem) 0 4rem;display:grid}.app-route-placeholder__visual,.app-placeholder__hero,.app-placeholder__rows,.app-placeholder__form,.app-drawer-placeholder,.app-context-placeholder,.app-drawer-placeholder__links{gap:.8rem;min-width:0;display:grid}.app-route-placeholder__visual{gap:1.5rem}.app-placeholder__hero{border-bottom:1px solid var(--line-strong);align-content:start;min-height:11rem;padding-bottom:1.5rem}.app-placeholder__feature{border:1px solid var(--line);background:var(--color-surface-glass);border-radius:1rem;grid-template-columns:3.5rem minmax(0,1fr);align-items:start;gap:1.25rem;min-height:12rem;padding:1.5rem;display:grid}.app-placeholder__feature>div{gap:.9rem;display:grid}.app-placeholder__toolbar,.app-placeholder__metrics{gap:.75rem;min-width:0;display:grid}.app-placeholder__toolbar{border:1px solid var(--line);border-radius:.85rem;grid-template-columns:minmax(0,1fr) minmax(10rem,.5fr);padding:.85rem}.app-placeholder__metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.app-placeholder__rows{border-block:1px solid var(--line-strong);align-content:start;min-height:16rem;padding:1.25rem 0}.app-placeholder__form{border-left:.2rem solid var(--line-strong);background:var(--color-surface-glass);border-radius:0 .8rem .8rem 0;align-content:start;min-height:25rem;padding:1.25rem}.app-bootstrap-status{min-height:1.4rem;color:var(--muted);margin:0;font-size:.82rem}.app-skeleton{background:linear-gradient(100deg, var(--color-skeleton-edge) 30%, var(--color-skeleton-mid) 48%, var(--color-skeleton-edge) 66%);background-size:260% 100%;border-radius:999px;width:100%;height:.72rem;animation:2.4s ease-in-out infinite app-bootstrap-shift;display:block}.app-skeleton--short{width:32%}.app-skeleton--medium{width:62%}.app-skeleton--long{width:88%}.app-skeleton--title{border-radius:.8rem;width:min(28rem,72%);height:clamp(2.8rem,7cqi,4.6rem)}.app-skeleton--field{border-radius:.7rem;height:2.85rem}.app-skeleton--action{border-radius:.75rem;width:min(14rem,70%);height:3rem;margin-top:.5rem}.app-skeleton--mark{width:3.5rem;height:3.5rem}.app-skeleton--metric{border-radius:.9rem;height:8rem}.app-skeleton--avatar{width:2.25rem;height:2.25rem}.app-drawer-placeholder,.app-context-placeholder{padding-top:1.25rem}.app-drawer-placeholder__links{gap:1.15rem;margin-top:1.2rem}.app-bootstrap-error{min-height:calc(100svh - 6rem)}@keyframes app-bootstrap-shift{50%{background-position:-120% 0}}@media (prefers-reduced-motion:reduce){.app-skeleton{animation:none}}.setup-page,.setup-loading,.setup-state{width:min(61rem,100%);min-width:0;margin:0 auto;padding:clamp(1.5rem,4vw,2.75rem) 0 5rem}.setup-header{border-bottom:1px solid var(--line-strong);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:2rem;min-width:0;padding-bottom:2rem;display:grid}.setup-header h1,.setup-state h1{overflow-wrap:anywhere;max-width:15ch;font-size:clamp(2.6rem,7cqi,4.5rem)}.setup-header>div:first-child>p:not(.eyebrow){max-width:42rem;color:var(--muted);margin:1rem 0 0;line-height:1.6}.setup-header__facts{border:1px solid var(--line);background:var(--color-interactive-subtle);white-space:nowrap;border-radius:.9rem;grid-template-columns:auto auto;align-items:baseline;gap:.15rem .45rem;padding:1rem 1.1rem;display:grid}.setup-header__facts strong{color:var(--ink);font-size:1.25rem}.setup-header__facts span{color:var(--muted);font-size:.76rem}.setup-progress{scrollbar-width:thin;min-width:0;margin:1.25rem 0 2.25rem;overflow-x:auto}.setup-progress ol{grid-template-columns:repeat(6,minmax(0,1fr));min-width:42rem;margin:0;padding:0;list-style:none;display:grid}.setup-progress li{min-width:0;position:relative}.setup-progress li:not(:last-child):after{content:"";background:var(--line-strong);height:1px;position:absolute;top:1rem;left:calc(50% + 1rem);right:1px}.setup-progress li[data-state=done]:not(:last-child):after{background:var(--blue)}.setup-progress button{width:100%;min-width:0;color:var(--muted);text-align:left;cursor:pointer;background:0 0;border:0;justify-items:start;gap:.45rem;padding:0;font-size:.7rem;font-weight:750;display:grid}.setup-progress button:disabled{cursor:default;opacity:1}.setup-progress button>span{z-index:1;border:1px solid var(--line-strong);background:var(--color-background);border-radius:50%;place-items:center;width:2rem;height:2rem;display:grid;position:relative}.setup-progress li[data-state=future] button>span{border-color:var(--line-strong);color:var(--muted);background:var(--color-background)}.setup-progress li[data-state=active] button{color:var(--ink)}.setup-progress li[data-state=active] button>span,.setup-progress li[data-state=done] button>span{border-color:var(--blue);color:var(--color-on-primary);background:var(--blue)}.setup-workspace{min-height:34rem}.setup-step{gap:1.5rem;min-width:0;display:grid}.setup-step__intro{gap:.65rem;min-width:0;display:grid}.setup-step__number{color:var(--blue);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.72rem;font-weight:800}.setup-step__intro h2{max-width:19ch;color:var(--ink);letter-spacing:-.055em;overflow-wrap:anywhere;margin:0;font-size:clamp(2rem,5cqi,3.35rem);line-height:1.02}.setup-step__intro>p:last-child{max-width:43rem;color:var(--muted);margin:0;line-height:1.6}.setup-parameter-list{border-block:1px solid var(--line-strong);grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0;display:grid}.setup-parameter-list div{border-bottom:1px solid var(--line);min-width:0;padding:1.25rem 0}.setup-parameter-list div:nth-child(odd){padding-right:1.5rem}.setup-parameter-list div:nth-child(2n){border-left:1px solid var(--line);padding-left:1.5rem}.setup-parameter-list dt{color:var(--muted);font-size:.75rem}.setup-parameter-list dd{color:var(--ink);overflow-wrap:anywhere;margin:.35rem 0 0;font-size:1.05rem;font-weight:750}.setup-form,.manual-roster,.csv-import,.draft-review,.invitation-manager{gap:1.25rem;min-width:0;display:grid}.setup-form{width:min(46rem,100%)}.field small{color:var(--muted);font-size:.72rem;font-weight:550}.field-error{color:var(--color-danger);font-size:.76rem;font-weight:650;line-height:1.35}.nested-editor,.family-editor{border:1px solid var(--line);background:var(--color-interactive-subtle);border-radius:1rem;gap:1rem;min-width:0;margin:0;padding:1.25rem;display:grid}.nested-editor legend,.family-editor legend{color:var(--ink);padding:0 .4rem;font-weight:800}.nested-editor__rows,.manual-roster__families,.family-editor__children{gap:.85rem;display:grid}.child-editor{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1.5fr) minmax(10rem,.8fr) auto;align-items:end;gap:.75rem;min-width:0;padding-bottom:.85rem;display:grid}.child-editor:last-child{border-bottom:0;padding-bottom:0}.child-editor>.text-button{align-self:end;min-height:3rem}.setup-actions{z-index:0;min-height:5.25rem;padding:.9rem 0 calc(.9rem + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:var(--color-background);justify-content:flex-end;align-items:center;gap:.75rem;margin-top:.5rem;display:flex;position:relative}.setup-actions--split{justify-content:space-between}html:has(.setup-page){scroll-padding-block-end:calc(var(--setup-actions-reserved-height,5.25rem) + env(safe-area-inset-bottom) + 1rem)}.setup-step :is(label,input,select,textarea,button,legend,li,[role=alert],.field-error){scroll-margin-block-end:calc(var(--setup-actions-reserved-height,5.25rem) + env(safe-area-inset-bottom) + 1rem)}.setup-mode{border:1px solid var(--line);background:var(--color-interactive-subtle);border-radius:.8rem;gap:.25rem;width:fit-content;padding:.25rem;display:flex}.setup-mode button{min-height:2.75rem;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:.6rem;padding:.55rem 1rem;font-weight:750}.setup-mode button[aria-pressed=true]{color:var(--ink);background:var(--color-control);box-shadow:var(--shadow-sm)}.family-editor{background:var(--color-surface-glass)}.family-editor__heading{grid-template-columns:minmax(8rem,.55fr) repeat(2,minmax(0,1fr));gap:1rem;display:grid}.family-editor__actions{flex-wrap:wrap;justify-content:space-between;gap:1rem;display:flex}.csv-import__tools{flex-wrap:wrap;align-items:center;gap:.75rem 1rem;display:flex}.csv-import__help{max-width:32rem;color:var(--muted);font-size:.82rem;line-height:1.45}.csv-import__help summary{min-height:2.75rem;color:var(--blue-strong);cursor:pointer;align-items:center;font-weight:700;display:inline-flex}.csv-import__help p{margin:.35rem 0 0}.file-drop{border:1px dashed var(--line-strong);width:100%;min-height:10rem;color:var(--ink);background:var(--color-interactive-subtle);font:inherit;text-align:center;cursor:pointer;border-radius:1rem;place-content:center;gap:.5rem;padding:1.5rem;display:grid}.file-drop:hover,.file-drop:focus-visible,.file-drop[data-state=drag-over]{border-color:var(--blue);background:var(--color-control)}.file-drop[data-state=uploading]{cursor:wait}.file-drop[data-state=error]{border-color:var(--color-danger-border);background:var(--color-danger-surface)}.file-drop strong{overflow-wrap:anywhere;justify-content:center;align-items:center;gap:.5rem;display:inline-flex}.file-drop__activity{flex:0 0 1.5rem}.file-drop small{max-width:32rem;color:var(--muted);line-height:1.5}.file-drop__status{min-height:1.35rem;color:var(--muted);font-size:.78rem;line-height:1.35}.file-drop[data-state=error] .file-drop__status{color:var(--color-danger);font-weight:650}.csv-replace-confirmation{border:1px solid var(--color-warning);background:var(--color-warning-surface);border-radius:.85rem;justify-content:space-between;align-items:center;gap:1rem;min-width:0;padding:1rem;display:flex}.csv-replace-confirmation>div:first-child{gap:.25rem;min-width:0;display:grid}.csv-replace-confirmation span{color:var(--muted);font-size:.82rem;line-height:1.4}.csv-replace-confirmation__actions{flex-wrap:wrap;flex:none;gap:.5rem;display:flex}.draft-review__summary,.invitation-summary,.readiness-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.draft-review__summary>div,.invitation-summary>div,.readiness-grid>article{border:1px solid var(--line);background:var(--color-interactive-subtle);border-radius:.85rem;gap:.3rem;min-width:0;padding:1rem;display:grid}.draft-review__summary strong,.invitation-summary strong{color:var(--ink);font-size:1.65rem}.draft-review__summary span,.invitation-summary span{color:var(--muted);font-size:.75rem}.draft-review__summary [data-tone=danger],.invitation-summary [data-tone=attention]{border-color:var(--color-danger-border);background:var(--color-danger-surface)}.draft-errors{border:1px solid var(--color-danger-border);background:var(--color-danger-surface);border-radius:.85rem;padding:1rem}.draft-errors h3,.draft-errors ol{margin:0}.draft-errors ol{color:var(--muted);gap:.45rem;margin-top:.75rem;padding-left:1.35rem;display:grid}.draft-families,.review-roster,.invitation-list{border-block:1px solid var(--line-strong);gap:0;min-width:0;display:grid}.draft-family,.review-roster>section{border-bottom:1px solid var(--line);gap:1rem;min-width:0;padding:1.25rem 0;display:grid}.draft-family>header,.review-roster>section>header{justify-content:space-between;align-items:flex-start;gap:1rem;min-width:0;display:flex}.draft-family h3,.draft-family p,.review-roster h3{margin:0}.draft-family p,.review-roster header span{color:var(--muted);overflow-wrap:anywhere;margin-top:.25rem;font-size:.78rem}.review-roster>section>header>span{white-space:nowrap;overflow-wrap:normal;flex:none}.draft-family ul,.review-roster ul,.invitation-children ul{gap:0;margin:0;padding:0;list-style:none;display:grid}.draft-family li,.review-roster li{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(13rem,.55fr);align-items:center;gap:1rem;min-width:0;padding:.75rem 0;display:grid}.draft-family .draft-child{grid-template-columns:minmax(0,1fr)}.draft-family .draft-child--duplicate{grid-template-columns:minmax(0,1fr) minmax(15rem,.55fr)}.draft-family li>div,.review-roster li{min-width:0;color:var(--ink)}.draft-family li span,.review-roster li span{color:var(--muted);margin-top:.2rem;font-size:.75rem;display:block}.draft-family__meta,.draft-child__meta{flex-wrap:wrap;gap:.35rem 1.25rem;min-width:0;margin:0;display:flex}.draft-family__meta{margin-top:.35rem}.draft-family__meta div,.draft-child__meta div{align-items:baseline;gap:.35rem;min-width:0;display:flex}.draft-family__meta dt,.draft-child__meta dt{color:var(--muted);font-size:.75rem;font-weight:650}.draft-family__meta dd,.draft-child__meta dd{min-width:0;color:var(--ink);overflow-wrap:anywhere;margin:0;font-size:.86rem;font-weight:650}.draft-child__identity{gap:.45rem;display:grid}.draft-child__identity>strong{overflow-wrap:anywhere;font-size:1rem;line-height:1.35}.draft-family li label{color:var(--muted);gap:.35rem;font-size:.72rem;display:grid}.draft-family select,.invitation-filters select,.draft-family .field select{border:1px solid var(--line-strong);width:100%;min-width:0;min-height:2.8rem;color:var(--ink);background:var(--color-control);border-radius:.65rem;padding:.6rem 2rem .6rem .7rem}.status-chip{width:fit-content;max-width:100%;color:var(--muted);background:var(--color-surface-muted);overflow-wrap:anywhere;border-radius:999px;align-items:center;padding:.28rem .55rem;font-size:.7rem;font-weight:800;line-height:1.25;display:inline-flex}.status-chip--success{color:var(--color-success);background:var(--color-success-surface)}.status-chip--danger{color:var(--color-danger);background:var(--color-danger-surface)}.status-chip--warning{color:var(--color-warning);background:var(--color-warning-surface)}.status-chip--info{color:var(--blue);background:var(--color-primary-surface)}.invitation-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.invitation-filters{border:1px solid var(--line);background:var(--color-interactive-subtle);border-radius:.85rem;grid-template-columns:minmax(0,1.3fr) repeat(2,minmax(10rem,.7fr));gap:.75rem;padding:1rem;display:grid}.invitation-result-status{min-height:1.4rem;color:var(--muted);font-size:.76rem}.invitation-row{border-bottom:1px solid var(--line);grid-template-columns:2rem minmax(10rem,1fr) minmax(7rem,auto) minmax(11rem,.8fr) minmax(10rem,auto);align-items:center;gap:.85rem;min-width:0;padding:1rem 0;display:grid}.invitation-row__select input{width:1.1rem;height:1.1rem}.invitation-row__identity,.invitation-row__history{min-width:0}.invitation-row h3,.invitation-row p{overflow-wrap:anywhere;margin:0}.invitation-row h3{font-size:.9rem}.invitation-row p,.invitation-row__history{color:var(--muted);font-size:.73rem;line-height:1.45}.invitation-row__history{gap:.2rem;display:grid}.invitation-row__send{white-space:normal;width:100%;min-width:0}.invitation-bulk{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;min-width:0;padding-top:1rem;display:flex}.invitation-bulk>p{max-width:32rem;color:var(--muted);margin:0;font-size:.78rem;line-height:1.45}.invitation-bulk>div{gap:.65rem;display:flex}.readiness-grid article>span{width:2rem;height:2rem;color:var(--color-on-primary);background:var(--blue);border-radius:50%;place-items:center;font-weight:850;display:grid}.readiness-grid article p{color:var(--muted);margin:.4rem 0 0;font-size:.75rem}.readiness-grid article strong{color:var(--ink);overflow-wrap:anywhere;font-size:1.05rem;line-height:1.35}.stable-state{min-height:15rem;color:var(--muted);align-content:center;justify-items:start;gap:.65rem;display:grid}.stable-state h3,.stable-state p{margin:0}.setup-loading{align-content:start;gap:1.25rem;min-height:calc(100svh - 6rem);display:grid}.setup-loading__title,.setup-loading__steps,.setup-loading__body{background:var(--color-skeleton-edge);border-radius:.85rem}.setup-loading__title{width:min(30rem,75%);height:4.5rem}.setup-loading__steps{width:100%;height:4rem}.setup-loading__body{width:100%;height:24rem}.setup-loading>p:last-child{color:var(--muted);margin:0;font-size:.8rem}.setup-state{align-content:center;justify-items:start;gap:1rem;min-height:calc(100svh - 6rem);display:grid}.setup-reminder,.joined-confirmation{border:1px solid var(--line-strong);background:var(--color-primary-surface);border-radius:1rem;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1.5rem;min-width:0;margin-top:1.5rem;padding:1.25rem;display:grid}.setup-reminder h2,.setup-reminder p,.joined-confirmation h2,.joined-confirmation p{margin:0}.setup-reminder h2,.joined-confirmation h2{color:var(--ink);letter-spacing:-.03em;font-size:1.25rem}.setup-reminder p:not(.dashboard-section__kicker),.joined-confirmation p:not(.dashboard-section__kicker){color:var(--muted);margin-top:.5rem;line-height:1.5}.joined-confirmation{border-color:var(--color-success-border);background:var(--color-success-surface);grid-template-columns:3rem minmax(0,1fr)}.joined-confirmation>span{width:3rem;height:3rem;color:var(--color-on-primary);background:var(--color-success);border-radius:50%;place-items:center;font-size:1.25rem;font-weight:900;display:grid}.invitation-preview{border-block:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0;display:grid}.invitation-preview div{border-bottom:1px solid var(--line);min-width:0;padding:.9rem 0}.invitation-preview div:nth-child(2n){border-left:1px solid var(--line);padding-left:1rem}.invitation-preview dt{color:var(--muted);font-size:.72rem}.invitation-preview dd{color:var(--ink);overflow-wrap:anywhere;margin:.25rem 0 0;font-weight:750}.invitation-children{gap:.65rem;display:grid}.invitation-children h2{margin:0;font-size:1rem}.invitation-children li{border-bottom:1px solid var(--line);color:var(--ink);padding:.55rem 0;font-weight:650}.invitation-access-note{color:var(--muted);background:var(--color-interactive-subtle);border-radius:.7rem;margin:0;padding:.85rem;font-size:.82rem;line-height:1.5}@media (width<=48rem){.setup-page,.setup-loading,.setup-state{padding-top:.75rem}.setup-header{grid-template-columns:minmax(0,1fr);gap:1rem}.setup-header h1{font-size:clamp(2.45rem,13vw,3.5rem)}.setup-header__facts{width:fit-content}.setup-progress{margin-inline:-1rem;padding-inline:1rem}.setup-workspace{min-height:28rem}.setup-parameter-list,.family-editor__heading,.csv-import__guide,.draft-review__summary,.invitation-summary,.readiness-grid,.invitation-filters{grid-template-columns:minmax(0,1fr)}.csv-replace-confirmation,.csv-replace-confirmation__actions{flex-direction:column;align-items:stretch}.setup-parameter-list div:nth-child(odd),.setup-parameter-list div:nth-child(2n){border-left:0;padding-inline:0}.child-editor{grid-template-columns:minmax(0,1fr);align-items:stretch}.child-editor>.text-button{justify-self:start;min-height:2.5rem}.nested-editor,.family-editor{padding:1rem}.setup-actions,.setup-actions--split{--setup-actions-inline-bleed:min(1rem, 16px);margin-inline:calc(0px - var(--setup-actions-inline-bleed));padding-inline:max(var(--setup-actions-inline-bleed), env(safe-area-inset-left)) max(var(--setup-actions-inline-bleed), env(safe-area-inset-right));justify-content:stretch}.setup-actions .button{width:100%}.setup-actions--split{grid-template-columns:minmax(0,1fr);display:grid}.draft-family>header,.review-roster>section>header{align-items:flex-start}.review-roster>section>header{flex-direction:column;gap:.25rem}.review-roster>section>header>span{margin-top:0}.draft-family li,.draft-family .draft-child--duplicate,.review-roster li{grid-template-columns:minmax(0,1fr)}.invitation-row{grid-template-columns:1.75rem minmax(0,1fr) auto;align-items:start}.invitation-row__history,.invitation-row__send{grid-column:2/-1}.invitation-bulk{flex-direction:column;align-items:stretch}.invitation-bulk>div{grid-template-columns:minmax(0,1fr);display:grid}.invitation-bulk .button{width:100%}.setup-reminder{grid-template-columns:minmax(0,1fr);align-items:stretch}.setup-reminder .button{width:100%}.joined-confirmation{grid-template-columns:2.5rem minmax(0,1fr)}.joined-confirmation>span{width:2.5rem;height:2.5rem}.invitation-preview{grid-template-columns:minmax(0,1fr)}.invitation-preview div:nth-child(2n){border-left:0;padding-left:0}}.drawer-kicker,.dashboard-section__kicker{color:var(--muted);letter-spacing:.09em;text-transform:uppercase;margin:0 0 .75rem;font-size:.72rem;font-weight:800}.workspace-nav{gap:2rem;display:grid}.class-switcher-shell{gap:.65rem;min-width:0;display:grid}.class-switcher{gap:.65rem;min-width:0;padding-top:1.25rem;display:grid}.class-switcher label{color:var(--muted);font-size:.75rem;font-weight:750}.class-switcher select{border:1px solid var(--line-strong);width:100%;min-width:0;min-height:2.8rem;color:var(--ink);background:var(--color-control);border-radius:.65rem;padding:.65rem 2rem .65rem .7rem}.class-switcher a,.class-switcher-shell a,.back-link{width:fit-content;color:var(--blue);font-size:.84rem;font-weight:750}.workspace-links{gap:.35rem;display:grid}.nav-item{min-width:0;color:var(--ink);overflow-wrap:anywhere;border-radius:.6rem;padding:.7rem .75rem;font-size:.86rem;font-weight:700;display:block}.nav-item--active{color:var(--color-primary-hover);background:var(--color-primary-surface)}.center-state{align-content:center;justify-items:start;gap:1rem;width:min(42rem,100%);min-height:60svh;margin:0 auto;display:grid}.center-state h1{overflow-wrap:anywhere;max-width:14ch;font-size:clamp(2.7rem,8vw,5rem)}.center-state>p:not(.eyebrow,.notice){max-width:35rem;color:var(--muted);margin:.25rem 0 .75rem;font-size:1.02rem;line-height:1.6}.center-state--welcome{min-height:70svh}.text-button{color:var(--blue);cursor:pointer;background:0 0;border:0;padding:0;font-weight:750}.text-button--danger{color:var(--color-danger);text-align:left}.context-section{border-top:1px solid var(--line);min-width:0;padding:1.25rem 0}.app-drawer--right>.app-drawer__content>.context-section:first-child{border-top:0;padding-top:0}.context-section h2{color:var(--ink);letter-spacing:-.03em;overflow-wrap:anywhere;margin:0 0 .7rem;font-size:1.2rem;line-height:1.15}.context-section>p:not(.drawer-kicker){color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:.88rem;line-height:1.55}.class-time{text-align:left;gap:.35rem;width:auto;max-width:none;padding:1.25rem 0;display:grid}.class-time strong{color:var(--ink);overflow-wrap:anywhere;line-height:1.3}.class-time span{color:var(--muted);letter-spacing:normal;text-transform:none;font-size:.78rem;font-weight:500}.context-facts{gap:.75rem;margin:0;display:grid}.context-facts div{min-width:0}.context-facts dt{color:var(--muted);font-size:.72rem}.context-facts dd{color:var(--ink);overflow-wrap:anywhere;margin:.2rem 0 0;font-size:.84rem;font-weight:700}.dashboard{min-width:0}.today-header{border-bottom:1px solid var(--line-strong);min-width:0;padding:clamp(1.5rem,4vw,2.75rem) 0 clamp(1.75rem,4vw,2.75rem)}.today-header h1{letter-spacing:-.055em;max-width:none;font-size:clamp(2.75rem,7cqi,4.4rem);line-height:.98}.class-context{min-width:0;color:var(--muted);grid-template-columns:minmax(0,1fr);gap:.25rem;margin-top:1.5rem;font-size:.86rem;line-height:1.4;display:grid}.class-context>*{overflow-wrap:anywhere;min-width:0}.class-context__name{border-bottom:1px solid var(--line);color:var(--ink);padding-bottom:.45rem;font-size:1.05rem}.today-empty{grid-template-columns:3rem minmax(0,1fr);gap:1.25rem;min-width:0;margin-top:clamp(2rem,5vw,3.5rem);padding:1.5rem 0;display:grid}.today-empty__mark{border:1px solid var(--color-success-border);width:3rem;height:3rem;color:var(--color-success);background:var(--color-success-surface);border-radius:50%;place-items:center;font-size:1.25rem;font-weight:800;display:grid}.today-empty h2{color:var(--ink);letter-spacing:-.04em;margin:0 0 .7rem;font-size:clamp(1.6rem,4cqi,2.25rem)}.today-empty p:not(.dashboard-section__kicker){max-width:36rem;color:var(--muted);margin:0;line-height:1.55}.admin-tools__actions{gap:.85rem;display:grid}.admin-tools__actions .button{width:100%}.context-action-link{min-height:2.75rem;color:var(--blue);align-items:center;font-size:.86rem;font-weight:750;display:inline-flex}.settings-form{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr);gap:1rem;margin:1.25rem 0 0;padding:1.25rem 0 0;display:grid}.settings-form .notice,.settings-form .button{grid-column:auto;justify-self:stretch}.settings-policy-note{border-left:.2rem solid var(--blue);background:var(--color-surface-muted);min-width:0;color:var(--muted);border-radius:0 .65rem .65rem 0;gap:.4rem;padding:.85rem;font-size:.8rem;line-height:1.45;display:grid}.settings-policy-note strong{color:var(--ink);overflow-wrap:anywhere}.settings-policy-note a{color:var(--blue);font-weight:750}.confirmation{color:var(--ink);align-items:flex-start;gap:.65rem;line-height:1.45;display:flex}.confirmation input{flex:none;width:1.1rem;height:1.1rem;margin-top:.1rem}.button--danger{width:100%;color:var(--color-on-primary);background:var(--color-danger);justify-self:stretch}.contacts-page{width:min(66rem,100%);min-width:0;margin:0 auto;padding:clamp(1.5rem,4vw,2.75rem) 0 4rem}.contacts-header{border-bottom:1px solid var(--line-strong);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:1.5rem;min-width:0;padding-bottom:1.75rem;display:grid}.contacts-header>div:first-child{min-width:0}.contacts-header h1{overflow-wrap:anywhere;max-width:none;font-size:clamp(2.5rem,7cqi,4.5rem)}.contacts-header p:not(.eyebrow){max-width:42rem;color:var(--muted);margin:1rem 0 0;line-height:1.58}.contacts-view-switch{border:1px solid var(--line);background:var(--color-surface-muted);border-radius:.8rem;padding:.25rem;display:inline-flex}.contacts-view-switch button{min-height:2.55rem;color:var(--muted);font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:.58rem;padding:.55rem .85rem;font-size:.82rem;font-weight:750}.contacts-view-switch button[aria-pressed=true]{color:var(--ink);background:var(--color-surface);box-shadow:var(--shadow-sm)}.contacts-directory,.own-contacts{min-height:30rem;padding-top:1.25rem}.contacts-filters .filter-bar{grid-template-columns:minmax(14rem,1.4fr) repeat(3,minmax(8.5rem,auto)) auto;align-items:end}.contacts-filters .button{min-height:2.75rem}.contacts-collection-status{justify-content:space-between;align-items:center;gap:1rem;min-height:4.25rem;padding:.75rem 0;display:flex}.contacts-collection-status p{color:var(--muted);margin:0;font-size:.85rem;font-weight:700}.contacts-table-wrap{border-block:1px solid var(--line-strong);width:100%;min-width:0;overflow:hidden}.contacts-table{border-collapse:collapse;table-layout:fixed;text-align:left;width:100%}.contacts-table th,.contacts-table td{border-bottom:1px solid var(--line);vertical-align:top;overflow-wrap:anywhere;min-width:0;padding:1rem .8rem}.contacts-table thead th{color:var(--muted);letter-spacing:.07em;text-transform:uppercase;padding-block:.65rem;font-size:.72rem;font-weight:800}.contacts-table thead th:first-child{width:20%}.contacts-table thead th:nth-child(2){width:22%}.contacts-table thead th:nth-child(3){width:18%}.contacts-table thead th:nth-child(4){width:40%}.contacts-table tbody th{color:var(--ink);font-size:.94rem;line-height:1.4}.contacts-table tbody td{color:var(--muted);font-size:.88rem;line-height:1.45}.contacts-own-mark,.contact-visibility{width:fit-content;color:var(--color-primary-hover);background:var(--color-primary-surface);border-radius:999px;margin-top:.35rem;padding:.18rem .45rem;font-size:.68rem;font-weight:750;display:block}.contact-methods{gap:.9rem;margin:0;padding:0;list-style:none;display:grid}.contact-methods>li{gap:.45rem;min-width:0;display:grid}.contact-methods__value{gap:.08rem;min-width:0;display:grid}.contact-methods__value>span:first-child{color:var(--muted);text-transform:uppercase;font-size:.68rem;font-weight:750}.contact-methods__value strong{color:var(--ink);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:.88rem}.contact-actions{flex-wrap:wrap;gap:.35rem .65rem;display:flex}.contact-actions a{color:var(--blue);font-size:.76rem;font-weight:750}.contacts-mobile-list{display:none}.contacts-state{border-bottom:1px solid var(--line);align-content:center;justify-items:start;gap:.75rem;min-height:18rem;padding:2rem 0;display:grid}.contacts-state h2{max-width:24ch;color:var(--ink);letter-spacing:-.04em;margin:0;font-size:clamp(1.7rem,4vw,2.35rem);line-height:1.08}.contacts-state p{max-width:38rem;color:var(--muted);margin:0;line-height:1.55}.contacts-skeleton,.own-contacts-skeleton{align-content:start;gap:.8rem;min-height:24rem;padding-top:1rem;display:grid}.contacts-skeleton span,.own-contacts-skeleton span{color:var(--muted);font-size:.82rem}.contacts-skeleton div,.own-contacts-skeleton div{background:var(--color-skeleton-edge);border-radius:.65rem;height:5.5rem;animation:1.3s ease-in-out infinite alternate app-skeleton-pulse}.own-contacts__toolbar{justify-content:space-between;align-items:center;gap:1rem;min-height:4.5rem;display:flex}.own-contacts__toolbar p{color:var(--muted);margin:0;font-size:.9rem}.own-contact-list{border-top:1px solid var(--line-strong);margin:1rem 0 0;padding:0;list-style:none;display:grid}.own-contact-list>li{border-bottom:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;min-width:0;padding:1rem 0;display:grid}.own-contact-list__order{grid-template-columns:2rem 2rem;gap:.25rem;display:grid}.icon-button{border:1px solid var(--line);width:2rem;height:2rem;color:var(--ink);background:var(--color-control);cursor:pointer;border-radius:.55rem;place-items:center;padding:0;display:grid}.icon-button:disabled{opacity:.35;cursor:default}.own-contact-list__body{gap:.15rem;min-width:0;display:grid}.own-contact-list__body>span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.7rem;font-weight:800}.own-contact-list__body strong{color:var(--ink);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-size:1rem}.own-contact-list__body small{color:var(--muted);font-size:.78rem}.own-contact-list__actions{gap:.8rem;display:flex}.text-button--danger{color:var(--color-danger)}.contact-editor{border:1px solid var(--line-strong);background:var(--color-surface);box-shadow:var(--shadow-sm);border-radius:1rem;gap:1.25rem;margin:1rem 0 1.5rem;padding:clamp(1rem,3vw,1.5rem);display:grid}.contact-editor>header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.contact-editor h2{color:var(--ink);margin:0;font-size:1.65rem;line-height:1.1}.contact-editor .eyebrow{margin-bottom:.45rem;font-size:.68rem}.contact-editor__fields{grid-template-columns:minmax(9rem,.45fr) minmax(14rem,1fr);gap:.85rem;display:grid}.contact-editor__fields label,.contact-messengers legend{color:var(--ink);font-size:.85rem;font-weight:750}.contact-editor__fields label{gap:.4rem;display:grid}.contact-editor__fields input,.contact-editor__fields select{border:1px solid var(--line-strong);width:100%;min-width:0;min-height:2.9rem;color:var(--ink);background:var(--color-control);font:inherit;border-radius:.65rem;padding:.65rem .75rem}.contact-messengers{border:0;border-top:1px solid var(--line);gap:.65rem;min-width:0;margin:0;padding:1rem 0 0;display:grid}.contact-messengers input{width:1.1rem;height:1.1rem;margin-top:.12rem}.contact-messengers p{color:var(--muted);margin:0;font-size:.78rem;line-height:1.45}.contact-audience-preview{min-height:3rem;color:var(--ink);background:var(--color-surface-muted);border-radius:.7rem;margin:0;padding:.8rem;font-size:.84rem;line-height:1.5}.contact-messengers>div{flex-wrap:wrap;gap:.65rem 1.25rem;display:flex}.contact-messengers label{color:var(--ink);align-items:center;gap:.45rem;font-size:.85rem;font-weight:700;display:inline-flex}.contact-editor>footer,.contact-confirm>div:last-child{justify-content:flex-end;gap:.65rem;display:flex}.contact-confirm{border-left:.25rem solid var(--color-danger);background:var(--color-danger-surface);border-radius:.35rem .75rem .75rem .35rem;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;margin:1rem 0;padding:1rem;display:grid}.contact-confirm h2,.contact-confirm p{margin:0}.contact-confirm h2{color:var(--ink);font-size:1.05rem}.contact-confirm p{color:var(--muted);margin-top:.35rem;font-size:.82rem;line-height:1.45}.contact-confirm .button--danger{width:auto}.contact-context-panel{border-bottom:1px solid var(--line);gap:.9rem;padding:1.25rem 0;display:grid}.contact-context-panel h2,.contact-context-panel p{margin:0}.contact-context-panel h2{color:var(--ink);font-size:1.35rem;line-height:1.1}.contact-context-panel>p:not(.drawer-kicker){color:var(--muted);font-size:.84rem;line-height:1.5}.contact-context-panel nav{gap:.4rem;display:grid}.contact-context-panel nav a{color:var(--blue);padding:.55rem 0;font-size:.84rem;font-weight:750}.contact-context-panel dl{border-top:1px solid var(--line);gap:.55rem;margin:0;padding-top:.8rem;display:grid}.contact-context-panel dl div{justify-content:space-between;gap:.75rem;display:flex}.contact-context-panel dt,.contact-context-panel dd{margin:0;font-size:.76rem}.contact-context-panel dt{color:var(--muted)}.contact-context-panel dd{color:var(--ink);text-align:right;font-weight:700}.onboarding{width:min(45rem,100%);margin:0 auto;padding:1rem 0 4rem}.onboarding__intro h1{max-width:12ch;font-size:clamp(3rem,8vw,5rem);line-height:.98}.onboarding__intro>p:not(.eyebrow){max-width:38rem;color:var(--muted);line-height:1.6}.onboarding-form{gap:2rem;margin-top:3rem;display:grid}.onboarding-form fieldset{border:0;border-top:1px solid var(--line-strong);gap:1.2rem;min-width:0;margin:0;padding:1.5rem 0 0;display:grid}.onboarding-form legend{color:var(--ink);padding-right:1rem;font-size:1.25rem;font-weight:800}.city-field{width:100%;max-width:24rem}.school-field-slot .field__support{min-height:2.75rem}.onboarding-steps{gap:1.5rem;padding-top:1.25rem;display:grid}.onboarding-steps ol{gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.onboarding-step{min-width:0;color:var(--muted);border-radius:.6rem;grid-template-columns:1.8rem minmax(0,1fr);align-items:center;gap:.65rem;padding:.6rem;font-size:.84rem;font-weight:700;display:grid}.onboarding-step span{border:1px solid var(--line);border-radius:50%;place-items:center;width:1.8rem;height:1.8rem;font-size:.72rem;display:grid}.onboarding-step--active{color:var(--color-primary-hover);background:var(--color-primary-surface)}.onboarding-step--active span{color:var(--color-on-primary);border-color:var(--blue);background:var(--blue)}.invitation-actions{gap:.75rem;display:grid}.roster-page{width:min(52rem,100%);min-width:0;margin:0 auto;padding:clamp(1.5rem,4vw,2.75rem) 0 4rem}.roster-header{border-bottom:1px solid var(--line-strong);justify-content:space-between;align-items:flex-end;gap:1.5rem;min-width:0;padding-bottom:2rem;display:flex}.roster-header>div{min-width:0}.roster-header h1{overflow-wrap:anywhere;max-width:none;font-size:clamp(2.6rem,7cqi,4.25rem)}.roster-header p:not(.eyebrow){max-width:38rem;color:var(--muted);margin:1rem 0 0;line-height:1.55}.roster-header>.button{flex:none}.collection-tools{margin:1.25rem 0}.filter-bar{border:1px solid var(--line);background:var(--color-surface);border-radius:.85rem;flex-wrap:wrap;align-items:flex-end;gap:.65rem;min-width:0;padding:.65rem;display:flex}.filter-bar>label{min-width:0;color:var(--muted);flex:12rem;gap:.35rem;font-size:.75rem;font-weight:750;display:grid}.filter-bar>label>input:not([type=checkbox]),.filter-bar>label>select{border:1px solid var(--line-strong);width:100%;min-width:0;min-height:2.75rem;color:var(--ink);background:var(--color-control);border-radius:.6rem;padding:.6rem .7rem}.filter-bar>.choice-group{flex:0 auto}.filter-bar>.button{flex:none;margin-left:auto}.execution-toggle-group{gap:.15rem;min-width:0;display:grid}.execution-toggle-group .execution-completed-toggle{min-height:44px;color:var(--ink);cursor:pointer;border-radius:.6rem;align-items:center;gap:.5rem;padding:.45rem .6rem;font-size:.82rem;line-height:1.25;display:inline-flex}.execution-toggle-group .execution-completed-toggle input{flex:none;width:1.1rem;height:1.1rem;margin:0}.pagination{min-height:3.25rem;color:var(--muted);text-align:center;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.75rem;margin-top:1.25rem;font-size:.82rem;display:grid}.mobile-filter-sheet{display:none}.mobile-filter-sheet>.button{justify-content:center;align-items:center;gap:.45rem;display:inline-flex}.mobile-filter-sheet__trigger-count{min-width:1.35rem;min-height:1.35rem;color:var(--color-on-primary);background:var(--blue);border-radius:999px;place-items:center;padding:0 .35rem;font-size:.72rem;font-weight:800;display:grid}.mobile-filter-sheet__backdrop{z-index:80;background:var(--color-overlay);align-items:end;display:grid;position:fixed;inset:0}.mobile-filter-sheet__panel{background:var(--color-background);border-radius:1rem 1rem 0 0;max-height:85svh;padding:1rem;overflow-y:auto}.mobile-filter-sheet__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.mobile-filter-sheet__header>div{flex:8rem;gap:.15rem;min-width:0;display:grid}.mobile-filter-sheet__header>div>span{color:var(--muted);font-size:.75rem}.mobile-filter-sheet__clear{margin-left:0}.mobile-filter-sheet__panel .filter-bar{background:0 0;border:0;grid-template-columns:minmax(0,1fr);align-items:stretch;padding:0;display:grid}.mobile-filter-sheet__panel .filter-bar>.choice-group,.mobile-filter-sheet__panel .choice-group,.mobile-filter-sheet__panel .choice-group__options{width:100%}.mobile-filter-sheet__panel .choice-group__options{grid-template-columns:repeat(auto-fit,minmax(min(8rem,100%),1fr));display:grid}.mobile-filter-sheet__panel .choice-group__option{width:100%}.mobile-filter-sheet__panel .filter-bar>.button:last-child{display:none}.mobile-filter-sheet__panel .execution-toggle-group{width:100%}.design-harness{color:var(--ink);background:var(--color-background);gap:1rem;padding:1.25rem;display:grid}.design-harness[data-theme=dark]{--color-background:#151b26;--color-surface:#202938;--color-surface-muted:#2a3546;--color-text:#f2f5f9;--color-text-muted:#b4bfce;--color-border:#3d4a5d;--color-border-strong:#66748a;--ink:var(--color-text);--muted:var(--color-text-muted);--line:var(--color-border);--line-strong:var(--color-border-strong);--surface:var(--color-surface)}.roster-form{border-left:.2rem solid var(--blue);background:var(--surface);border-radius:0 .75rem .75rem 0;gap:1rem;min-width:0;margin-top:1rem;padding:1rem;display:grid}.roster-form--primary{margin:1.5rem 0;padding:1.25rem}.roster-form h2{color:var(--ink);letter-spacing:-.03em;margin:0;font-size:1.35rem}.roster-form>.button{justify-self:start}.roster-state{justify-items:start;gap:.85rem;padding:2.5rem 0;display:grid}.roster-state--empty{grid-template-columns:3rem minmax(0,1fr);align-items:start}.roster-state--empty>span{border:1px solid var(--line-strong);width:3rem;height:3rem;color:var(--blue);border-radius:50%;place-items:center;font-size:1.4rem;display:grid}.roster-state h2{color:var(--ink);letter-spacing:-.04em;margin:0;font-size:1.7rem}.roster-state p{max-width:34rem;color:var(--muted);margin:.5rem 0 0;line-height:1.55}.family-list{border-bottom:1px solid var(--line-strong)}.family-row{border-top:1px solid var(--line-strong);min-width:0;padding:1.75rem 0}.family-row__header{justify-content:space-between;align-items:flex-start;gap:1rem;min-width:0;display:flex}.family-row__header h2{max-width:30rem;color:var(--ink);letter-spacing:-.04em;overflow-wrap:anywhere;margin:0;font-size:clamp(1.45rem,4cqi,2rem);line-height:1.1}.status-text{color:var(--color-warning);font-size:.8rem;font-weight:750;line-height:1.35}.status-text--ok{color:var(--color-success)}.status-text--muted{color:var(--muted)}.child-list{border-top:1px solid var(--line);margin:1.25rem 0 0;padding:0;list-style:none}.child-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.85rem 1.25rem;min-width:0;padding:1rem 0;display:grid}.child-row__identity{gap:.25rem;min-width:0;display:grid}.child-row__identity strong,.child-row__identity span{overflow-wrap:anywhere}.child-row__identity span{color:var(--muted);font-size:.82rem}.child-row__membership{text-align:right;justify-items:end;gap:.35rem;display:grid}.child-row__transfer{grid-column:1/-1;gap:.4rem;min-width:0;display:grid}.child-row__transfer>label{color:var(--muted);font-size:.76rem;font-weight:700}.child-row__transfer>div{align-items:center;gap:.65rem;min-width:0;display:flex}.child-row__transfer select{border:1px solid var(--line-strong);min-width:0;min-height:2.7rem;color:var(--ink);background:var(--color-control);border-radius:.65rem;flex:1;padding:.55rem 2rem .55rem .65rem}.button.button--compact{justify-self:start;width:auto;min-height:2.45rem;padding:.55rem .8rem;font-size:.82rem}.confirmation-panel{border:1px solid var(--color-danger-border);background:var(--color-danger-surface);border-radius:.75rem;gap:.55rem;margin-top:1rem;padding:1rem;display:grid}.confirmation-panel p{color:var(--muted);margin:0;font-size:.86rem;line-height:1.5}.inline-actions,.family-row__actions{flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem;display:flex}.family-row__actions{margin-top:1rem}.invitation-history{color:var(--muted);overflow-wrap:anywhere;margin:1rem 0 0;font-size:.8rem;line-height:1.45}.roles-page{width:min(58rem,100%);min-width:0;margin:0 auto;padding:clamp(1.5rem,4vw,2.75rem) 0 4rem}.roles-header{border-bottom:1px solid var(--line-strong);min-width:0;padding-bottom:2rem}.roles-header h1{overflow-wrap:normal;text-wrap:balance;max-width:14ch;font-size:clamp(2.65rem,7cqi,4.5rem)}.roles-header>p:not(.eyebrow){max-width:42rem;color:var(--muted);margin:1.25rem 0 0;line-height:1.6}.roles-state{align-content:center;justify-items:start;gap:1rem;min-height:24rem;display:grid}.roles-state h2{color:var(--ink);margin:0;font-size:1.8rem}.roles-state__skeleton{background:linear-gradient(90deg, var(--color-skeleton-edge), var(--color-skeleton-mid), var(--color-skeleton-edge));background-size:200% 100%;border-radius:1rem;width:min(28rem,80%);height:.75rem;animation:2.4s ease-in-out infinite app-bootstrap-shift}.roles-feedback{min-height:1rem;padding-top:1rem}.roles-feedback:empty{padding-top:0}.role-assignment,.current-roles,.permission-matrix{border-bottom:1px solid var(--line-strong);min-width:0;padding:clamp(2rem,5vw,3.25rem) 0}.role-section-heading{justify-content:space-between;align-items:flex-end;gap:1rem 2rem;min-width:0;margin-bottom:1.5rem;display:flex}.role-section-heading h2{max-width:22ch;color:var(--ink);letter-spacing:-.045em;overflow-wrap:anywhere;text-wrap:balance;margin:0;font-size:clamp(1.8rem,4cqi,2.55rem);line-height:1.05}.role-section-heading>span{max-width:17rem;color:var(--muted);text-align:right;font-size:.78rem;line-height:1.4}.role-flow-tabs{flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem;display:flex}.role-flow-tabs button{border:1px solid var(--line-strong);min-height:2.75rem;color:var(--ink);cursor:pointer;background:0 0;border-radius:2rem;padding:.65rem .9rem;font-weight:750}.role-flow-tabs button[aria-pressed=true]{color:var(--color-on-primary);border-color:var(--blue);background:var(--blue)}.role-assignment-workspace{grid-template-columns:minmax(0,1fr) minmax(18rem,1fr);align-items:start;gap:1.25rem;min-width:0;display:grid}.candidate-combobox{z-index:4;gap:.45rem;width:100%;min-width:0;display:grid;position:relative}.candidate-combobox>label{color:var(--ink);font-size:.88rem;font-weight:750}.candidate-combobox>input{border:1px solid var(--line-strong);width:100%;min-width:0;min-height:3.25rem;color:var(--ink);background:var(--color-control);border-radius:.75rem;padding:.75rem .9rem;font-size:1rem}.candidate-results{width:100%;min-height:0;position:absolute;top:calc(100% + .35rem);left:0}.candidate-results[data-open=true]{border:1px solid var(--line-strong);background:var(--color-control);min-height:4rem;box-shadow:var(--shadow-md);border-radius:.8rem;overflow:hidden}.candidate-results [role=listbox]{overscroll-behavior:contain;max-height:22rem;overflow-y:auto}.candidate-results__status{min-height:2.4rem;color:var(--muted);background:var(--surface);align-items:center;padding:.6rem .85rem;font-size:.78rem;display:flex}.candidate-results [role=option]{border:0;border-top:1px solid var(--line);width:100%;min-width:0;color:var(--ink);background:var(--color-control);text-align:left;cursor:pointer;gap:.2rem;padding:.75rem .85rem;display:grid}.candidate-results [role=option][data-active=true]{background:var(--color-primary-surface)}.candidate-results [role=option] strong,.candidate-results [role=option] span{overflow-wrap:anywhere}.candidate-results [role=option] span{color:var(--muted);font-size:.8rem}.candidate-results__pagination{border-top:1px solid var(--line-strong);background:var(--color-control);color:var(--muted);grid-template-columns:1fr auto 1fr;align-items:center;gap:.7rem;padding:.6rem;font-size:.76rem;display:grid;position:sticky;bottom:0}.candidate-results__pagination button{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:.55rem;min-height:2.35rem;font-weight:700}.role-consequence{border-left:.2rem solid var(--blue);background:var(--surface);border-radius:0 .8rem .8rem 0;align-content:start;justify-items:start;gap:1rem;min-height:16rem;margin-top:0;padding:1.25rem;display:grid}.role-consequence h3{color:var(--ink);letter-spacing:-.03em;overflow-wrap:anywhere;margin:0 0 .55rem;font-size:1.25rem}.role-consequence p:not(.dashboard-section__kicker,.notice){max-width:42rem;color:var(--muted);margin:0;line-height:1.55}.role-consequence__empty{min-height:12.5rem;color:var(--muted);align-content:center;gap:.35rem;display:grid}.role-consequence__empty strong{color:var(--ink)}.roles-empty{gap:.45rem;padding:1.25rem 0;display:grid}.roles-empty p{max-width:36rem;color:var(--muted);margin:0;line-height:1.55}.current-role-list{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.current-role-list>li{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;min-width:0;padding:1.25rem 0;display:grid;position:relative}.current-role-list>li>div:first-child{gap:.3rem;min-width:0;display:grid}.current-role-list strong,.current-role-list span{overflow-wrap:anywhere}.current-role-list>li>div:first-child>span:last-child{color:var(--muted);font-size:.82rem}.role-page-navigation{grid-template-columns:minmax(5rem,auto) minmax(0,1fr) minmax(5rem,auto);align-items:center;gap:1rem;min-height:3.5rem;padding-top:1rem;display:grid}.role-page-navigation span{color:var(--muted);text-align:center}.role-page-navigation .text-button{min-height:2.75rem}.role-page-navigation button:last-child{justify-self:end}.role-mark{width:fit-content;color:var(--color-primary-hover);background:var(--color-primary-surface);border-radius:1rem;padding:.25rem .5rem;font-size:.7rem;font-weight:800}.role-mark--financier{color:var(--color-warning);background:var(--color-warning-surface)}.role-revoke-confirmation{border:1px solid var(--color-danger-border);background:var(--color-danger-surface);border-radius:.75rem;grid-column:1/-1;gap:.85rem;padding:1rem;display:grid}.role-revoke-confirmation h3,.role-revoke-confirmation p{margin:0}.role-revoke-confirmation p{color:var(--muted);line-height:1.5}.permission-matrix__desktop{border:1px solid var(--line);border-radius:.8rem;width:100%;overflow-x:auto}.permission-matrix table{border-collapse:collapse;background:var(--color-interactive-subtle);width:100%;min-width:44rem}.permission-matrix th,.permission-matrix td{border-bottom:1px solid var(--line);text-align:center;vertical-align:middle;padding:.75rem}.permission-matrix thead th{color:var(--muted);background:var(--surface);font-size:.75rem}.permission-matrix tbody th{width:42%;color:var(--ink);text-align:left;font-size:.8rem;font-weight:650}.permission-matrix td{color:var(--color-danger);font-weight:800}.permission-matrix td[data-allowed=true]{color:var(--color-success)}.permission-value{border-radius:50%;place-items:center;min-width:1.4rem;min-height:1.4rem;font-size:1rem;line-height:1;display:inline-grid}.permission-matrix tr:last-child>*{border-bottom:0}.permission-matrix__mobile{display:none}.visually-hidden{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.audit-page{width:min(61rem,100%);min-width:0;margin:0 auto;padding:clamp(1.5rem,4vw,2.75rem) 0 4rem}.audit-header{border-bottom:1px solid var(--line-strong);justify-content:space-between;align-items:flex-end;gap:1.5rem;min-width:0;padding-bottom:2rem;display:flex}.audit-header>div{min-width:0}.audit-header h1{overflow-wrap:anywhere;max-width:none;font-size:clamp(2.65rem,7cqi,4.5rem)}.audit-header p:not(.eyebrow){max-width:42rem;color:var(--muted);margin:1.1rem 0 0;line-height:1.6}.audit-header>.button{flex:none;min-width:7.5rem}.audit-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;min-width:0;margin-top:1.25rem;display:flex}.audit-segments{border:1px solid var(--line);background:var(--color-interactive-subtle);border-radius:.75rem;gap:.25rem;min-width:0;padding:.25rem;display:flex}.audit-segments button{min-height:2.55rem;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:.55rem;padding:.55rem .8rem;font-size:.82rem;font-weight:750}.audit-segments button[aria-pressed=true]{color:var(--ink);background:var(--color-control);box-shadow:var(--shadow-sm)}.audit-page .filter-bar{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end}.audit-page .filter-bar .field{min-width:0}.audit-page .filter-bar .button{align-self:end;min-height:2.75rem}.audit-filter-count{color:var(--muted);margin:0 0 .75rem;font-size:.8rem}.audit-result-meta{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;min-height:3.25rem;padding:.65rem 0;display:flex}.audit-result-meta>div{flex-wrap:wrap;align-items:baseline;gap:.5rem 1rem;min-width:0;display:flex}.audit-result-meta strong{font-size:.9rem}.audit-result-meta span,.audit-result-meta a{color:var(--muted);font-size:.78rem}.audit-state{align-content:center;justify-items:start;gap:.85rem;min-height:25rem;display:grid}.audit-state h2{color:var(--ink);letter-spacing:-.04em;overflow-wrap:anywhere;margin:0;font-size:clamp(1.8rem,4cqi,2.5rem)}.audit-state>p:not(.eyebrow){max-width:38rem;color:var(--muted);margin:0;line-height:1.55}.audit-state__skeleton{background:linear-gradient(90deg, var(--color-skeleton-edge), var(--color-skeleton-mid), var(--color-skeleton-edge));background-size:200% 100%;border-radius:1rem;width:min(32rem,90%);height:.8rem;animation:2.4s ease-in-out infinite app-bootstrap-shift}.audit-state--empty{grid-template-columns:3rem minmax(0,1fr);align-items:center}.audit-state--empty>span{border:1px solid var(--line-strong);width:3rem;height:3rem;color:var(--blue);border-radius:50%;place-items:center;font-size:1.35rem;display:grid}.audit-state--empty>div{justify-items:start;gap:.65rem;min-width:0;display:grid}.audit-state--empty p:not(.eyebrow){max-width:36rem;color:var(--muted);margin:0;line-height:1.55}.audit-timeline{min-width:0}.audit-day{border-bottom:1px solid var(--line-strong);grid-template-columns:9rem minmax(0,1fr);gap:1.5rem;min-width:0;padding:2rem 0;display:grid}.audit-day>h2{color:var(--muted);text-transform:capitalize;margin:0;font-size:.8rem;line-height:1.45}.audit-day ol{gap:0;min-width:0;margin:0;padding:0;list-style:none;display:grid}.audit-day li{grid-template-columns:1rem minmax(0,1fr);gap:.85rem;min-width:0;padding-bottom:1.75rem;display:grid;position:relative}.audit-day li:not(:last-child):before{content:"";background:var(--line-strong);width:1px;position:absolute;top:1rem;bottom:0;left:.36rem}.audit-day li:last-child{padding-bottom:0}.audit-timeline__mark{z-index:1;border:.2rem solid var(--color-background);background:var(--blue);width:.8rem;height:.8rem;box-shadow:0 0 0 1px var(--blue);border-radius:50%;margin-top:.3rem;position:relative}.audit-event{min-width:0}.audit-event__meta,.audit-event__footer{min-width:0;color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.4rem 1rem;font-size:.76rem;display:flex}.audit-event__meta span{color:var(--color-primary-hover);background:var(--color-primary-surface);border-radius:1rem;padding:.2rem .45rem;font-weight:750}.audit-event h2,.audit-event h3{color:var(--ink);letter-spacing:-.025em;overflow-wrap:anywhere;margin:.55rem 0 .35rem;font-size:1.12rem}.audit-event>p{color:var(--muted);overflow-wrap:anywhere;margin:0;font-size:.88rem;line-height:1.5}.audit-event__footer{border-top:1px solid var(--line);margin-top:.8rem;padding-top:.65rem}.audit-table{border:1px solid var(--line);border-radius:.8rem;max-width:100%;margin-top:1rem;overflow-x:auto}.audit-table table{border-collapse:collapse;background:var(--color-interactive-subtle);width:100%;min-width:46rem}.audit-table caption{color:var(--muted);background:var(--surface);text-align:left;padding:.75rem;font-size:.75rem}.audit-table th,.audit-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;min-width:0;padding:.8rem}.audit-table thead th{color:var(--muted);background:var(--surface);font-size:.73rem}.audit-table td{color:var(--muted);overflow-wrap:anywhere;font-size:.8rem;line-height:1.45}.audit-table td strong,.audit-table td span{display:block}.audit-table td strong{color:var(--ink);margin-bottom:.25rem}.audit-table tbody tr:last-child td{border-bottom:0}.audit-compact-list{display:none}.audit-eventual-note{color:var(--muted);margin:1.5rem 0 0;font-size:.78rem;line-height:1.5}.audit-detail__backdrop{z-index:100;background:var(--color-overlay);place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.audit-detail{background:var(--color-background);width:min(36rem,100%);max-height:min(42rem,100svh - 2rem);box-shadow:var(--shadow-lg);border-radius:1rem;padding:clamp(1rem,4vw,1.5rem);overflow-y:auto}.audit-detail>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:1rem;padding-bottom:1rem;display:flex}.audit-detail>header>div{min-width:0}.audit-detail .drawer-close{flex:none;display:grid}.audit-detail h2,.audit-detail h3{color:var(--ink);overflow-wrap:anywhere;margin:0}.audit-detail h2{letter-spacing:-.04em;font-size:clamp(1.55rem,5vw,2rem)}.audit-detail h3{font-size:1.05rem}.audit-detail>p{color:var(--muted);line-height:1.55}.audit-detail__facts{border-block:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.25rem 0;padding:1rem 0;display:grid}.audit-detail__facts div{min-width:0}.audit-detail__facts dt{color:var(--muted);font-size:.72rem}.audit-detail__facts dd{color:var(--ink);overflow-wrap:anywhere;margin:.25rem 0 0;font-weight:700}.audit-detail ul{gap:.65rem;margin:.8rem 0 0;padding-left:1.25rem;display:grid}.audit-detail li{color:var(--muted);overflow-wrap:anywhere;line-height:1.5}@media (width<=79.99rem){:root{--global-chrome-height:72px;--global-brand-wordmark-size:23.2px;--global-brand-wordmark-width:124.8px;--global-brand-width:124.8px;--global-brand-height:44px}.global-chrome{padding-inline:max(24px, env(safe-area-inset-left)) max(24px, env(safe-area-inset-right));gap:4px;display:flex}.brand.global-brand-anchor{--brand-compact-handshake-optical-lift:4.594px;--brand-compact-domain-top:1.16em;margin-inline-start:0}.global-chrome__controls{flex:auto;gap:2px;margin-inline-end:0}.global-chrome__compact-actions{gap:2px;display:flex}.three-pane-shell__body{min-height:calc(100svh - var(--global-chrome-height));padding:0;display:block}.three-pane-center__context-action{justify-content:flex-end;margin-bottom:.75rem;display:flex}.drawer-toggle,.drawer-close{border:1px solid var(--line);width:44px;height:44px;color:var(--ink);background:var(--color-interactive-subtle-strong);cursor:pointer;border-radius:11.2px;place-items:center;padding:0;font-weight:800;display:grid}.drawer-backdrop{z-index:40;background:var(--color-overlay-subtle);opacity:0;visibility:hidden;border:0;transition:opacity .16s,visibility .16s;display:block;position:fixed;inset:0}.drawer-backdrop[data-open=true]{opacity:1;visibility:visible}.app-drawer{z-index:50;background:var(--color-background);visibility:hidden;border-radius:0;width:min(21rem,100vw - 2.5rem);height:100svh;padding:1rem;transition:transform .18s,visibility 0s linear .18s;position:fixed;top:0;bottom:0}.app-drawer--left{left:0;transform:translate(-100%)}.app-drawer--right{right:0;transform:translate(100%)}.app-drawer[data-open=true]{visibility:visible;transition:transform .18s,visibility;transform:translate(0)}.app-drawer__mobile-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;padding-bottom:1rem;display:flex}.app-drawer__mobile-heading+.app-drawer__content{padding-top:1rem}.three-pane-center{width:min(48rem,100%);min-height:calc(100svh - var(--global-chrome-height));margin:0 auto;padding:1.25rem 1rem 4rem}.app-route-placeholder,.app-bootstrap-error{min-height:calc(100svh - 6.75rem)}.workspace-nav{border:0;padding:0}.roster-page,.roles-page{padding-top:1rem}}@media (width<=399px){:root{--global-brand-wordmark-size:clamp(12.64px, calc((100vw - 252px) * .186), 23.2px);--global-brand-wordmark-width:clamp(68px, calc(100vw - 252px), 124.8px);--global-brand-width:var(--global-brand-wordmark-width)}.global-chrome{padding-inline:max(16px, env(safe-area-inset-left)) max(16px, env(safe-area-inset-right));gap:0}.brand.global-brand-anchor{--brand-compact-handshake-optical-lift:clamp(2.88px, calc(2.88px + (100vw - 320px) * .0217), 4.594px);--brand-compact-domain-top:clamp(1.16em, calc(1.324em - (100vw - 320px) * .00208), 1.324em)}.global-chrome__controls,.global-chrome__compact-actions{gap:0}.global-chrome__compact-actions,.theme-switcher,.drawer-toggle,.global-chrome__profile-slot{flex:none}}@media (width<=48rem){.app-route-placeholder{padding-top:.75rem}.app-placeholder__hero{min-height:9rem}.app-placeholder__toolbar,.app-placeholder__metrics,.app-placeholder__feature{grid-template-columns:minmax(0,1fr)}.app-skeleton--title{width:78%;height:clamp(2.6rem,12vw,3.5rem)}.audit-page .collection-tools--desktop{display:none}.audit-page .mobile-filter-sheet{display:block}.audit-page .mobile-filter-sheet__panel .filter-bar{grid-template-columns:minmax(0,1fr)}.audit-table{display:none}.audit-compact-list{gap:0;display:grid}.audit-compact-list article{border-bottom:1px solid var(--line-strong);padding:1.25rem 0}.role-assignment-workspace{grid-template-columns:minmax(0,1fr)}.collection-tools--desktop{display:none}.mobile-filter-sheet{margin:1rem 0;display:block}.mobile-filter-sheet__panel .filter-bar{grid-template-columns:minmax(0,1fr)}.role-consequence{margin-top:.75rem}.role-section-heading{flex-direction:column;align-items:flex-start}.role-section-heading>span{text-align:left}.permission-matrix__desktop{display:none}.permission-matrix__mobile{border-top:1px solid var(--line-strong);gap:0;display:grid}.permission-matrix__mobile>section{border-bottom:1px solid var(--line-strong);padding:1.5rem 0}.permission-matrix__mobile h3{color:var(--ink);letter-spacing:-.035em;margin:0;font-size:1.4rem}.permission-matrix__mobile p{color:var(--muted);margin:.4rem 0 1rem;line-height:1.45}.permission-matrix__mobile ul{gap:.45rem;margin:0;padding:0;list-style:none;display:grid}.permission-matrix__mobile li{color:var(--ink);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.45rem 0;font-size:.86rem;line-height:1.45;display:grid}.permission-matrix__mobile li[data-allowed=true] .permission-value{color:var(--color-success)}.permission-matrix__mobile li[data-allowed=false] .permission-value{color:var(--color-danger)}}.finance-context>p:not(.drawer-kicker){color:var(--muted);margin:0;line-height:1.6}.finance-context__actions{gap:.65rem;display:grid}.finance-context__actions .button{width:100%}.finance-context__note{border:1px solid var(--line);background:color-mix(in srgb, var(--surface) 74%, var(--canvas));border-radius:.85rem;padding:.9rem 1rem;font-size:.86rem}.finance-page{gap:1.5rem;width:min(66rem,100%);margin:0 auto;display:grid}.finance-header{justify-content:space-between;align-items:flex-start;gap:1.5rem;padding-top:.4rem;display:flex}.finance-header h1{max-width:13ch;font-size:clamp(2.5rem,6cqi,4.9rem)}.finance-header p:not(.eyebrow){max-width:39rem;color:var(--muted);margin:1.1rem 0 0;line-height:1.6}.finance-header__actions{flex-wrap:wrap;flex:none;justify-content:flex-end;gap:.65rem;display:flex}@container (width<=50rem){.finance-header,.collection-detail__header{flex-direction:column;align-items:stretch}.finance-header__actions,.collection-detail__header .finance-header__actions{justify-content:flex-start}}.finance-status-slot{min-height:3.2rem}.fund-summary{min-width:0;color:var(--color-finance-summary-text);background:radial-gradient(circle at 85% 0%, var(--color-finance-summary-highlight), transparent 44%), var(--color-finance-summary);box-shadow:var(--shadow-lg);border-radius:1.25rem;grid-template-columns:minmax(0,1.4fr) minmax(12rem,.6fr);gap:clamp(1.2rem,4vw,3rem);padding:clamp(1.35rem,4vw,2.5rem);display:grid}.fund-summary .dashboard-section__kicker{color:var(--color-finance-summary-kicker)}.fund-summary h2{letter-spacing:-.065em;overflow-wrap:anywhere;margin:0;font-size:clamp(2.5rem,7cqi,5.4rem);line-height:.95}.fund-summary p{color:var(--color-finance-summary-muted);margin:1rem 0 0;line-height:1.5}.fund-summary__scope{border-left:1px solid var(--color-finance-summary-line);align-content:end;gap:.45rem;min-width:0;padding-left:1.5rem;display:grid}.fund-summary__scope strong{overflow-wrap:anywhere;font-size:1.45rem}.fund-summary__scope span{color:var(--color-finance-summary-muted);font-size:.88rem;line-height:1.5}.finance-chart-card,.finance-ledger{border:1px solid var(--line);background:var(--color-surface-glass);border-radius:1rem;min-width:0;padding:clamp(1.1rem,3vw,1.75rem)}.finance-section-heading{justify-content:space-between;align-items:flex-end;gap:1rem;min-width:0;margin-bottom:1.2rem;display:flex}.finance-section-heading h2{letter-spacing:-.04em;margin:0;font-size:clamp(1.55rem,3cqi,2.3rem)}.finance-section-heading>span,.finance-section-heading>div>span{color:var(--muted);font-size:.82rem}.finance-section-heading--ledger{align-items:center}.balance-chart{min-width:0}.balance-chart svg{width:100%;height:clamp(10rem,28cqi,15rem);display:block;overflow:visible}.balance-chart circle{fill:var(--color-surface);stroke:var(--blue);stroke-width:3px}.chart-axis{stroke:var(--line-strong);stroke-width:1px}.chart-line{fill:none;stroke:var(--blue);stroke-width:4px;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.chart-table{border-top:1px solid var(--line);margin-top:.65rem}.chart-table summary{width:fit-content;color:var(--blue);cursor:pointer;padding:.85rem 0 .35rem;font-size:.82rem;font-weight:750}.chart-table table{border-collapse:collapse;width:100%;font-size:.82rem}.chart-table th,.chart-table td{border-bottom:1px solid var(--line);text-align:left;padding:.55rem 0}.chart-table th:last-child,.chart-table td:last-child{text-align:right}.finance-page .filter-bar{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr))}.finance-page .filter-bar .field{gap:.25rem}.finance-table-wrap{width:100%;min-width:0;margin-top:1rem;overflow-x:auto}.finance-table{border-collapse:collapse;width:100%;min-width:47rem}.finance-table th{border-bottom:1px solid var(--line-strong);color:var(--muted);letter-spacing:.06em;text-align:left;text-transform:uppercase;padding:.7rem .65rem;font-size:.7rem}.finance-table th:nth-last-child(-n+2),.finance-table td:nth-last-child(-n+2){text-align:right}.finance-table td{border-bottom:1px solid var(--line);vertical-align:top;overflow-wrap:anywhere;max-width:19rem;padding:1rem .65rem;font-size:.84rem}.finance-table td>strong,.finance-table td>small{display:block}.finance-table td>small{color:var(--muted);margin-top:.25rem;font-size:.72rem}.entry-kind{width:fit-content;color:var(--ink);background:var(--color-surface-muted);border-radius:.5rem;gap:.18rem;padding:.35rem .55rem;font-size:.72rem;font-weight:750;display:grid}.entry-kind small{color:var(--muted);font-size:.62rem;font-weight:600}.entry-kind--contribution{color:var(--color-success);background:var(--color-success-surface)}.entry-kind--expense{color:var(--color-warm-text);background:var(--color-warm-surface)}.entry-kind--correction,.entry-kind--reversal{color:var(--color-violet-text);background:var(--color-violet-surface)}.amount{white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:800}.amount--positive{color:var(--color-success)}.amount--negative{color:var(--ink)}.finance-cards{display:none}.finance-entry-card{border-bottom:1px solid var(--line-strong);min-width:0;padding:1rem 0}.finance-entry-card__top{justify-content:space-between;align-items:flex-start;gap:.75rem;min-width:0;display:flex}.finance-entry-card h3{overflow-wrap:anywhere;margin:.9rem 0;font-size:1rem;line-height:1.4}.finance-entry-card dl{flex-wrap:wrap;gap:.7rem 1.5rem;margin:0 0 1rem;display:flex}.finance-entry-card dl div{gap:.15rem;display:grid}.finance-entry-card dt{color:var(--muted);text-transform:uppercase;font-size:.68rem}.finance-entry-card dd{overflow-wrap:anywhere;margin:0;font-size:.84rem;font-weight:700}.finance-empty{border-block:1px solid var(--line);justify-content:center;align-items:center;gap:1.25rem;min-height:14rem;padding:2rem;display:flex}.finance-empty>span{width:3.4rem;height:3.4rem;color:var(--blue);background:var(--color-primary-surface);border-radius:50%;flex:none;place-items:center;font-size:1.4rem;font-weight:800;display:grid}.finance-empty h3,.finance-empty p{margin:0}.finance-empty p{max-width:32rem;color:var(--muted);margin-top:.5rem;line-height:1.55}.finance-dialog-layer{z-index:90;position:fixed;inset:0}.finance-dialog-backdrop{background:var(--color-overlay);border:0;width:100%;height:100%;position:absolute;inset:0}.finance-dialog{border-left:1px solid var(--line-strong);background:var(--color-background);width:min(33rem,100vw - 2rem);height:100svh;box-shadow:var(--shadow-drawer);overscroll-behavior:contain;padding:clamp(1.1rem,3vw,2rem);position:absolute;top:0;right:0;overflow-y:auto}.finance-dialog>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:1rem;padding-bottom:1rem;display:flex}.finance-dialog h2{letter-spacing:-.05em;margin:0;font-size:clamp(1.8rem,5vw,2.6rem)}.finance-dialog .drawer-close{flex:none;display:grid}.finance-form{gap:1rem;padding:1.25rem 0 4rem;display:grid}.finance-form .field input,.finance-form .field textarea{width:100%}.finance-type-switch{border:1px solid var(--line);background:var(--color-surface-muted);border-radius:.75rem;grid-template-columns:repeat(2,minmax(0,1fr));padding:.25rem;display:grid}.finance-type-switch button{min-height:2.7rem;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:.55rem;padding:.55rem;font-weight:750}.finance-type-switch button[aria-pressed=true]{color:var(--ink);background:var(--color-surface);box-shadow:var(--shadow-sm)}.posting-preview,.immutable-source{border:1px solid var(--line-strong);background:var(--color-interactive-subtle);border-radius:.8rem;min-width:0;padding:1rem}.posting-preview>strong,.immutable-source>span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.72rem}.posting-preview dl{gap:.65rem;margin:.85rem 0 0;display:grid}.posting-preview dl div{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.posting-preview dt{color:var(--muted);font-size:.8rem}.posting-preview dd{text-align:right;overflow-wrap:anywhere;margin:0;font-weight:800}.immutable-source{gap:.5rem;display:grid}.immutable-source strong{overflow-wrap:anywhere}.immutable-source p{color:var(--muted);margin:0;font-size:.82rem;line-height:1.5}.finance-confirmation{color:var(--ink);grid-template-columns:1.25rem minmax(0,1fr);align-items:start;gap:.7rem;line-height:1.5;display:grid}.finance-confirmation input{width:1.2rem;height:1.2rem;margin:.15rem 0 0}.finance-form-message{min-height:3.2rem}.finance-form__actions{flex-wrap:wrap;gap:.65rem;min-height:3rem;display:flex}@media (width<=64rem){.finance-header{flex-direction:column;align-items:stretch}.finance-header__actions{justify-content:flex-start}}@media (width<=48rem){.finance-page{gap:1rem;padding-top:.6rem}.finance-header h1{max-width:11ch;font-size:clamp(2.45rem,13vw,4rem)}.finance-header__actions .button{flex:10rem}.fund-summary{grid-template-columns:minmax(0,1fr);gap:1.25rem}.fund-summary h2{font-size:clamp(2.35rem,13vw,4rem)}.fund-summary__scope{border-top:1px solid var(--color-finance-summary-line);border-left:0;padding:1rem 0 0}.finance-section-heading{flex-direction:column;align-items:flex-start}.finance-section-heading--ledger .button{width:100%}.balance-chart svg{height:11rem}.finance-page .collection-tools--desktop,.finance-table-wrap{display:none}.finance-page .mobile-filter-sheet,.finance-cards{display:block}.finance-page .mobile-filter-sheet{margin:.8rem 0}.finance-cards{border-top:1px solid var(--line-strong)}.finance-dialog{border-top:1px solid var(--line-strong);width:100%;height:min(92svh,52rem);box-shadow:0 -1.5rem 4rem color-mix(in srgb, var(--color-overlay) 48%, transparent);border-left:0;border-radius:1.1rem 1.1rem 0 0;top:auto;bottom:0}.finance-form__actions{display:grid}.finance-form__actions .button{width:100%}.posting-preview dl div{flex-direction:column;align-items:flex-start;gap:.2rem}.posting-preview dd{text-align:left}}@media (width<=36rem){.audit-header{flex-direction:column;align-items:stretch}.audit-header h1{font-size:clamp(2.5rem,11vw,3.2rem)}.audit-header>.button,.audit-toolbar,.audit-segments{width:100%}.audit-segments button{flex:1;min-width:0}.audit-day{grid-template-columns:minmax(0,1fr);gap:1rem}.audit-day>h2{font-size:.86rem}.audit-state--empty{grid-template-columns:minmax(0,1fr)}.audit-detail__backdrop{align-items:end;padding:0}.audit-detail{border-radius:1rem 1rem 0 0;width:100%;max-height:90svh}.audit-detail__facts{grid-template-columns:minmax(0,1fr)}.today-header{padding-top:1.5rem}.today-header h1,.onboarding__intro h1,.center-state h1{font-size:clamp(2.5rem,11vw,3.2rem)}.segmented{flex-flow:wrap;width:100%}.segmented label{flex:auto;justify-content:center}.class-context__name{padding-bottom:.45rem}.today-empty{grid-template-columns:minmax(0,1fr)}.onboarding-form>.button,.settings-form .button{width:100%}.roster-header{flex-direction:column;align-items:stretch}.roster-header>.button,.roster-form>.button{width:100%}.family-row__header,.child-row__transfer>div{flex-direction:column;align-items:stretch}.family-row__header .status-text{align-self:flex-start}.child-row{grid-template-columns:minmax(0,1fr)}.child-row__membership{text-align:left;justify-items:start}.child-row__transfer{grid-column:1}.child-row__transfer .button,.confirmation-panel .button{width:100%}.pagination{grid-template-columns:1fr 1fr}.pagination span{grid-area:1/1/auto/-1}.roster-state--empty{grid-template-columns:minmax(0,1fr)}.roles-header h1{font-size:clamp(2.5rem,11vw,3.2rem)}.role-flow-tabs{grid-template-columns:minmax(0,1fr);display:grid}.role-flow-tabs button,.role-consequence>.button,.role-revoke-confirmation .button{width:100%}.role-consequence{min-height:18rem;padding:1rem}.current-role-list>li{grid-template-columns:minmax(0,1fr)}.current-role-list>li>.text-button{justify-self:start}}@media (width<=64rem){.contacts-header{grid-template-columns:minmax(0,1fr);align-items:stretch}.contacts-view-switch{width:fit-content}.contacts-filters .filter-bar{grid-template-columns:minmax(12rem,1fr) repeat(2,minmax(8rem,auto))}}@media (width<=48rem){.contacts-page{padding-top:.6rem}.contacts-header{gap:1rem;padding-bottom:1.25rem}.contacts-header h1{font-size:clamp(2.4rem,13vw,3.8rem)}.contacts-view-switch{width:100%}.contacts-view-switch button{white-space:normal;flex:1;min-width:0}.contacts-directory,.own-contacts{min-height:28rem}.contacts-filters--desktop,.contacts-table-wrap{display:none}.contacts-page .mobile-filter-sheet{margin:.9rem 0 0;display:block}.contacts-page .mobile-filter-sheet>.button{width:100%}.contacts-page .mobile-filter-sheet .filter-bar{background:0 0;border:0;grid-template-columns:minmax(0,1fr);padding:0}.contacts-collection-status{flex-direction:column;justify-content:center;align-items:stretch;min-height:6rem}.contacts-collection-status .button{width:100%}.contacts-mobile-list{border-top:1px solid var(--line-strong);gap:0;margin:0;padding:0;list-style:none;display:grid}.contacts-mobile-list>li{border-bottom:1px solid var(--line);gap:.65rem;min-width:0;padding:1.15rem 0;display:grid}.contacts-mobile-list header{justify-content:space-between;align-items:baseline;gap:.75rem;display:flex}.contacts-mobile-list header strong{min-width:0;color:var(--ink);overflow-wrap:anywhere;font-size:1.05rem}.contacts-mobile-list header span{color:var(--blue);flex:none;font-size:.7rem;font-weight:750}.contacts-mobile-list>li>p{color:var(--muted);margin:0;font-size:.84rem;line-height:1.45}.contacts-mobile-list__roles{font-weight:700}.contacts-mobile-list .contact-methods{gap:.7rem}.contacts-mobile-list .contact-methods>li{background:var(--color-surface-muted);border-radius:.75rem;padding:.8rem}.contacts-mobile-list .contact-methods__value strong{font-size:1rem}.contacts-mobile-list .contact-actions{gap:.5rem}.contacts-mobile-list .contact-actions a{border:1px solid var(--line-strong);background:var(--color-control);border-radius:.6rem;align-items:center;min-height:2.35rem;padding:.5rem .65rem;text-decoration:none;display:inline-flex}.own-contacts__toolbar{flex-direction:column;align-items:stretch;padding-bottom:.75rem}.own-contacts__toolbar .button{width:100%}.own-contact-list>li{grid-template-columns:auto minmax(0,1fr);align-items:start}.own-contact-list__order{grid-template-columns:2.4rem}.icon-button{width:2.4rem;height:2.4rem}.own-contact-list__actions{grid-column:2;justify-content:flex-start}.contact-editor{margin-inline:calc(-1*clamp(0rem,2vw,.5rem))}.contact-editor__fields{grid-template-columns:minmax(0,1fr)}.contact-editor>footer,.contact-confirm>div:last-child{grid-template-columns:minmax(0,1fr);display:grid}.contact-editor>footer .button,.contact-confirm .button,.contact-confirm .button--danger{width:100%}.contact-confirm{grid-template-columns:minmax(0,1fr)}}@media (width<=24rem){.contacts-view-switch{display:grid}.contacts-view-switch button{width:100%}}.policy-page{width:min(62rem,100%);min-width:0;margin:0 auto;padding:clamp(1.5rem,4vw,2.75rem) 0 4rem}.policy-header{border-bottom:1px solid var(--line-strong);justify-content:space-between;align-items:flex-end;gap:1.5rem 2.5rem;min-width:0;padding-bottom:1.75rem;display:flex}.policy-header>div{min-width:0}.policy-header h1{overflow-wrap:anywhere;text-wrap:balance;max-width:none;font-size:clamp(2.65rem,7cqi,4.75rem)}.policy-header p:not(.eyebrow){max-width:46rem;color:var(--muted);margin:1rem 0 0;line-height:1.58}.policy-header>.button{flex:none}.policy-feedback{align-items:center;min-height:4.4rem;padding:.65rem 0;display:grid}.policy-feedback:empty{visibility:hidden}.policy-current,.policy-history,.policy-editor{min-width:0}.policy-current__heading,.policy-history__heading{justify-content:space-between;align-items:flex-end;gap:1rem 2rem;margin-bottom:1.5rem;display:flex}.policy-current__heading h2,.policy-history__heading h2,.policy-editor h2{color:var(--ink);letter-spacing:-.045em;text-wrap:balance;margin:0;font-size:clamp(1.9rem,4cqi,2.75rem);line-height:1.05}.policy-current__heading>p,.policy-history__heading>span{max-width:24rem;color:var(--muted);text-align:right;margin:0;font-size:.8rem;line-height:1.45}.policy-thresholds{border-block:1px solid var(--line-strong);grid-template-columns:repeat(3,minmax(0,1fr));min-width:0;display:grid}.policy-thresholds>div{border-right:1px solid var(--line);gap:.25rem;min-width:0;padding:clamp(1rem,3vw,1.5rem);display:grid}.policy-thresholds>div:last-child{border-right:0}.policy-thresholds strong{color:var(--ink);letter-spacing:-.055em;font-size:clamp(2rem,5cqi,3.25rem);line-height:1}.policy-thresholds span{color:var(--muted);font-size:.78rem;font-weight:720;line-height:1.35}.policy-rule-grid{background:var(--line);grid-template-columns:repeat(12,minmax(0,1fr));gap:1px;min-width:0;margin-top:1px;display:grid}.policy-rule{background:var(--surface);grid-column:span 6;min-width:0;padding:clamp(1.15rem,3vw,1.75rem)}.policy-rule--wide{grid-column:1/-1}.policy-rule:nth-child(2){grid-column:span 7}.policy-rule:nth-child(3){grid-column:span 5}.policy-rule h3{color:var(--ink);letter-spacing:-.035em;overflow-wrap:anywhere;margin:0;font-size:clamp(1.25rem,3cqi,1.65rem)}.policy-rule>p:last-child,.policy-rule__text{color:var(--muted);overflow-wrap:anywhere;white-space:pre-wrap;margin:.8rem 0 0;line-height:1.6}.policy-deadlines{margin:1rem 0 0}.policy-deadlines>div{border-top:1px solid var(--line);grid-template-columns:minmax(7.5rem,1fr) minmax(8rem,auto);gap:.75rem 1rem;min-width:0;padding:.85rem 0;display:grid}.policy-deadlines dt{color:var(--ink);font-weight:720}.policy-deadlines dd{text-align:right;justify-items:end;gap:.15rem;min-width:0;margin:0;display:grid}.policy-deadlines dd span{color:var(--muted);overflow-wrap:anywhere;font-size:.74rem;line-height:1.35}.policy-history{padding-top:clamp(2.5rem,6vw,4.25rem)}.policy-timeline{gap:1.15rem;min-width:0;margin:0;padding:0 0 0 1.5rem;list-style:none;display:grid;position:relative}.policy-timeline:before{content:"";background:var(--line-strong);width:1px;position:absolute;inset:0 auto 0 .35rem}.policy-timeline>li{min-width:0;position:relative}.policy-timeline>li:before{border:2px solid var(--surface);content:"";background:var(--blue);width:.75rem;height:.75rem;box-shadow:0 0 0 1px var(--blue);border-radius:50%;position:absolute;top:1.35rem;left:-1.53rem}.policy-timeline article{border:1px solid var(--line);background:var(--color-surface-muted);border-radius:.9rem;min-width:0;padding:clamp(1rem,3vw,1.4rem)}.policy-timeline article>header{justify-content:space-between;align-items:baseline;gap:.75rem 1.5rem;min-width:0;display:flex}.policy-timeline article>header>div{flex-wrap:wrap;align-items:center;gap:.55rem;min-width:0;display:flex}.policy-timeline article>header strong{color:var(--ink);font-size:1.05rem}.policy-timeline time,.policy-timeline__actor{color:var(--muted);font-size:.77rem}.policy-timeline time{text-align:right}.policy-timeline__actor{margin:.4rem 0 .9rem}.policy-diff{border-top:1px solid var(--line);gap:0;min-width:0;margin:0;display:grid}.policy-diff>div{border-bottom:1px solid var(--line);grid-template-columns:minmax(10rem,.75fr) minmax(0,1.5fr);gap:.75rem 1rem;min-width:0;padding:.8rem 0;display:grid}.policy-diff dt{color:var(--ink);overflow-wrap:anywhere;font-size:.8rem;font-weight:720}.policy-diff dd{min-width:0;color:var(--muted);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:start;gap:.65rem;margin:0;font-size:.78rem;line-height:1.5;display:grid}.policy-diff dd span{overflow-wrap:anywhere;white-space:pre-wrap;min-width:0}.policy-diff__before{-webkit-text-decoration-color:var(--muted);text-decoration-color:var(--muted);text-decoration-line:line-through}.policy-diff__after{color:var(--ink);font-weight:680}.policy-empty{grid-template-columns:auto minmax(0,1fr);align-content:center;gap:1.25rem;min-height:24rem;padding:2.5rem 0;display:grid}.policy-empty__mark{color:var(--blue);font-size:clamp(4rem,10vw,7rem);font-weight:320;line-height:.8}.policy-empty h2{color:var(--ink);letter-spacing:-.045em;margin:0;font-size:clamp(1.8rem,4cqi,2.6rem)}.policy-empty p:last-child{max-width:40rem;color:var(--muted);margin:.8rem 0 0;line-height:1.6}.policy-editor>header{max-width:48rem;padding-bottom:1.5rem}.policy-editor>header>p:last-child{color:var(--muted);margin:1rem 0 0;line-height:1.6}.policy-editor>form{gap:0;min-width:0;display:grid}.policy-fieldset{border:0;border-top:1px solid var(--line-strong);gap:1rem;min-width:0;margin:0;padding:clamp(1.4rem,4vw,2rem) 0;display:grid}.policy-fieldset legend{color:var(--ink);letter-spacing:-.025em;padding:0;font-size:1.25rem;font-weight:780}.policy-fieldset>p{max-width:45rem;color:var(--muted);margin:-.5rem 0 0;font-size:.84rem;line-height:1.5}.policy-form-grid,.policy-deadline-editor{gap:1rem;min-width:0;display:grid}.policy-form-grid--three,.policy-deadline-editor{grid-template-columns:repeat(3,minmax(0,1fr))}.policy-deadline-editor>section{border-left:.2rem solid var(--blue);background:var(--surface);border-radius:0 .75rem .75rem 0;align-content:start;gap:.8rem;min-width:0;padding:1rem;display:grid}.policy-deadline-editor h3{color:var(--ink);letter-spacing:-.02em;margin:0;font-size:1rem}.policy-form-status{align-items:center;min-height:4.3rem;padding:.55rem 0;display:grid}.policy-preview{border:1px solid var(--blue);background:var(--color-primary-surface);border-radius:1rem;gap:1.25rem;min-width:0;margin-top:1.5rem;padding:clamp(1.25rem,4vw,2rem);display:grid}.policy-preview h3{color:var(--ink);letter-spacing:-.035em;margin:0;font-size:clamp(1.4rem,3cqi,2rem)}.policy-preview>div>p:last-child{color:var(--muted);margin:.7rem 0 0;line-height:1.5}.policy-preview>.button{justify-self:start}.policy-loading__current,.policy-loading__history{background:linear-gradient(90deg, var(--color-skeleton-edge), var(--color-skeleton-mid), var(--color-skeleton-edge));background-size:200% 100%;border-radius:.9rem;animation:2.4s ease-in-out infinite app-bootstrap-shift}.policy-loading__current{height:25rem;margin-top:.75rem}.policy-loading__history{width:82%;height:12rem;margin-top:2rem}.policy-context h2{overflow-wrap:anywhere}@media (width<=48rem){.policy-page{padding-top:.6rem}.policy-header,.policy-current__heading,.policy-history__heading,.policy-timeline article>header{flex-direction:column;align-items:stretch}.policy-header h1{font-size:clamp(2.5rem,13vw,3.8rem)}.policy-header>.button,.policy-preview>.button,.policy-editor .form-actions .button{width:100%}.policy-current__heading>p,.policy-history__heading>span,.policy-timeline time{text-align:left}.policy-thresholds,.policy-form-grid--three,.policy-deadline-editor{grid-template-columns:minmax(0,1fr)}.policy-thresholds>div{border-right:0;border-bottom:1px solid var(--line);grid-template-columns:auto minmax(0,1fr);align-items:baseline}.policy-thresholds>div:last-child{border-bottom:0}.policy-thresholds strong{font-size:2.15rem}.policy-rule,.policy-rule:nth-child(2),.policy-rule:nth-child(3){grid-column:1/-1}.policy-deadlines>div{grid-template-columns:minmax(0,1fr)}.policy-deadlines dd{text-align:left;justify-items:start}.policy-diff>div,.policy-diff dd{grid-template-columns:minmax(0,1fr)}.policy-diff dd>span[aria-hidden=true]{background:var(--surface);border-radius:50%;place-items:center;width:1.8rem;height:1.8rem;display:grid;transform:rotate(90deg)}.policy-empty{grid-template-columns:minmax(0,1fr)}.policy-empty__mark{font-size:4rem}.policy-timeline{padding-left:1.15rem}.policy-timeline>li:before{left:-1.18rem}.policy-loading__history{width:100%}}@media (prefers-reduced-motion:reduce){.roles-state__skeleton,.audit-state__skeleton,.policy-loading__current,.policy-loading__history{animation:none}}.classolved-loader{--loader-size:1.5rem;--loader-blue:var(--blue);--loader-cyan:var(--cyan);width:var(--loader-size);height:var(--loader-size);vertical-align:middle;isolation:isolate;flex:none;place-items:center;display:inline-grid;position:relative}.classolved-loader[data-variant=block]{--loader-size:4rem}.classolved-loader[data-variant=button]{--loader-size:1.25rem;--loader-blue:currentColor;--loader-cyan:color-mix(in srgb, currentColor 62%, white)}.classolved-loader__motion{opacity:0;place-items:center;transition:opacity .1s ease-out;display:grid;position:absolute;inset:0}.classolved-loader[data-visible=true] .classolved-loader__motion{opacity:1}.classolved-loader__glyph{fill:currentColor;transform-origin:50%;will-change:transform, opacity, filter;width:72%;height:72%;position:absolute;top:50%;left:50%;overflow:visible}.classolved-loader__glyph--left{z-index:2;color:var(--loader-blue);filter:drop-shadow(0 0 calc(var(--loader-size) * .12) color-mix(in srgb, var(--loader-blue) 20%, transparent));animation:2.8s linear infinite classolved-loader-left}.classolved-loader__glyph--right{z-index:1;color:var(--loader-cyan);animation:2.8s linear infinite classolved-loader-right}.classolved-loader__ring{z-index:0;border:max(1px, calc(var(--loader-size) * .025)) solid var(--loader-blue);opacity:0;border-radius:999px;width:46%;height:46%;animation:2.8s ease-out infinite classolved-loader-ring;position:absolute}.classolved-loader__sparks,.classolved-loader__sparks i{pointer-events:none;position:absolute;inset:0}.classolved-loader__sparks i{--spark-x:0px;--spark-y:0px;width:max(2px, calc(var(--loader-size) * .065));height:max(2px, calc(var(--loader-size) * .065));background:var(--loader-cyan);clip-path:polygon(50% 0,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0 50%,38% 38%);opacity:0;animation:2.8s ease-out infinite classolved-loader-spark;inset:50% auto auto 50%}.classolved-loader__sparks i:first-child{--spark-x:calc(var(--loader-size) * -.38);--spark-y:calc(var(--loader-size) * -.26)}.classolved-loader__sparks i:nth-child(2){--spark-x:calc(var(--loader-size) * .34);--spark-y:calc(var(--loader-size) * -.32);animation-delay:35ms}.classolved-loader__sparks i:nth-child(3){--spark-x:calc(var(--loader-size) * .46);--spark-y:calc(var(--loader-size) * .12);animation-delay:70ms}.classolved-loader__sparks i:nth-child(4){--spark-x:calc(var(--loader-size) * -.31);--spark-y:calc(var(--loader-size) * .36);animation-delay:.105s}.classolved-loader__sparks i:nth-child(5){--spark-x:calc(var(--loader-size) * .18);--spark-y:calc(var(--loader-size) * .43);animation-delay:.14s}.pending-button-content{grid-template-columns:minmax(0,auto) 1.25rem;justify-content:center;align-items:center;gap:.55rem;display:inline-grid}.loading-activity{flex:0 0 1.5rem;place-items:center;width:1.5rem;height:1.5rem;display:inline-grid}.classolved-loading-block{place-items:center;min-height:6rem;display:grid}@keyframes classolved-loader-left{0%,4%{opacity:0;transform:translate(calc(-50% - var(--loader-size) * .78), -50%) scale(.96)}7%{opacity:1;transform:translate(calc(-50% - var(--loader-size) * .78), -50%) scale(1);animation-timing-function:cubic-bezier(.22,1,.36,1)}37%{opacity:1;filter:blur();transform:translate(calc(-50% - var(--loader-size) * .42), -50%);animation-timing-function:linear}45%{transform:translate(calc(-50% - var(--loader-size) * .42), -50%);animation-timing-function:cubic-bezier(.4,0,.2,1)}55%{transform:translate(calc(-50% - var(--loader-size) * .17), -50%) scale(1.015);animation-timing-function:cubic-bezier(.22,1,.36,1)}66%{opacity:.76;filter:blur(calc(var(--loader-size) * .038));transform:translate(calc(-50% - var(--loader-size) * .31), -50%) scale(.965);animation-timing-function:cubic-bezier(.4,0,.2,1)}77%{opacity:1;filter:blur();animation-timing-function:cubic-bezier(.22,1,.36,1);transform:translate(-50%,-50%)scale(1.035)}82%,93%{opacity:1;filter:blur();transform:translate(-50%,-50%)scale(1)}98%,to{opacity:0;transform:translate(-50%,-50%)scale(.92)}}@keyframes classolved-loader-right{0%,4%{opacity:0;transform:translate(calc(-50% + var(--loader-size) * .78), -50%) scale(.96)}7%{opacity:1;transform:translate(calc(-50% + var(--loader-size) * .78), -50%) scale(1);animation-timing-function:cubic-bezier(.22,1,.36,1)}37%{opacity:1;filter:blur();transform:translate(calc(-50% + var(--loader-size) * .42), -50%);animation-timing-function:linear}45%{transform:translate(calc(-50% + var(--loader-size) * .42), -50%);animation-timing-function:cubic-bezier(.4,0,.2,1)}55%{transform:translate(calc(-50% + var(--loader-size) * .17), -50%) scale(1.015);animation-timing-function:cubic-bezier(.22,1,.36,1)}66%{opacity:.76;filter:blur(calc(var(--loader-size) * .038));transform:translate(calc(-50% + var(--loader-size) * .31), -50%) scale(.965);animation-timing-function:cubic-bezier(.4,0,.2,1)}77%{opacity:0;filter:blur(calc(var(--loader-size) * .05));transform:translate(-50%,-50%)scale(.9)}to{opacity:0;transform:translate(-50%,-50%)scale(.9)}}@keyframes classolved-loader-ring{0%,73%{opacity:0;transform:scale(.34)}79%{opacity:.68}93%,to{opacity:0;transform:scale(2.4)}}@keyframes classolved-loader-spark{0%,78%{opacity:0;transform:translate(-50%,-50%)scale(.25)rotate(0)}83%{opacity:.9}96%,to{opacity:0;transform:translate(calc(-50% + var(--spark-x)), calc(-50% + var(--spark-y))) scale(1) rotate(70deg)}}@media (prefers-reduced-motion:reduce){.classolved-loader__glyph--left{opacity:1;filter:none;animation:1.2s ease-in-out infinite classolved-loader-reduced;transform:translate(-50%,-50%)}.classolved-loader__glyph--right,.classolved-loader__ring,.classolved-loader__sparks{animation:none;display:none}}@keyframes classolved-loader-reduced{50%{opacity:.58}}.theme-switcher{border:0;min-width:0;margin:0;padding:0;display:block;position:relative}.theme-switcher__options{border:1px solid var(--line-strong);background:var(--color-surface-muted);box-shadow:var(--shadow-sm);border-radius:999px;grid-template-columns:repeat(3,2.75rem);gap:.2rem;padding:.2rem;display:inline-grid}.theme-switcher__options[data-error=true]{border-color:var(--color-danger);box-shadow:0 0 0 1px var(--color-danger)}.theme-switcher__status{min-height:.75rem;color:var(--color-danger);white-space:nowrap;padding-inline:.35rem;font-size:.65rem;font-weight:750;line-height:.75rem;position:absolute;top:100%;right:0}.theme-switcher__option{cursor:pointer;min-width:0;position:relative}.theme-switcher__input{opacity:0;width:1px;height:1px;position:absolute}.theme-switcher__segment{width:2.75rem;height:2.75rem;color:var(--muted);cursor:pointer;background:0 0;border:2px solid #0000;border-radius:999px;place-items:center;transition:color .15s,background-color .15s,border-color .15s,box-shadow .15s,transform .1s;display:grid;position:relative}.theme-switcher__option:hover .theme-switcher__segment{border-color:var(--line-strong);color:var(--ink);background:var(--color-interactive-subtle)}.theme-switcher__input:checked+.theme-switcher__segment,.theme-switcher__option:hover .theme-switcher__input:checked+.theme-switcher__segment{border-color:var(--blue);color:var(--ink);background:var(--color-primary-surface);box-shadow:var(--shadow-sm)}.theme-switcher__input:focus-visible+.theme-switcher__segment{outline:3px solid var(--color-focus);outline-offset:2px}.theme-switcher__input:active+.theme-switcher__segment{transform:scale(.94)}.theme-switcher__icon{place-items:center;width:1.15rem;height:1.15rem;transition:opacity .15s;display:grid}.theme-switcher__icon svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:100%;height:100%}.theme-switcher__selected-mark{border:2px solid var(--color-surface-muted);width:.85rem;height:.85rem;color:var(--color-on-primary);background:var(--blue);opacity:0;border-radius:50%;place-items:center;transition:opacity .15s,transform .15s;display:grid;position:absolute;inset-block-start:-.18rem;inset-inline-end:-.18rem;transform:scale(.6)}.theme-switcher__selected-mark svg{fill:none;stroke:currentColor;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;width:.58rem;height:.58rem}.theme-switcher__input:checked+.theme-switcher__segment .theme-switcher__selected-mark{opacity:1;transform:scale(1)}.theme-switcher__loader{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%)}.theme-switcher__options[data-pending=true] .theme-switcher__input:checked+.theme-switcher__segment .theme-switcher__icon{opacity:.16}.theme-switcher[data-disabled=true] .theme-switcher__option,.theme-switcher[data-disabled=true] .theme-switcher__segment{cursor:wait}.theme-switcher__tooltip{z-index:30;border:1px solid var(--line-strong);border-radius:var(--radius-sm);width:max-content;max-width:min(13rem,100vw - 2rem);color:var(--canvas);background:var(--ink);box-shadow:var(--shadow-md);pointer-events:none;opacity:0;visibility:hidden;padding:.45rem .6rem;font-size:.72rem;font-weight:600;line-height:1.3;transition:opacity .12s,transform .12s,visibility .12s;display:block;position:absolute;inset-block-start:calc(100% + .55rem);inset-inline-start:50%;transform:translate(-50%,-.2rem)}.theme-switcher__tooltip>span{gap:.1rem;display:grid}.theme-switcher__tooltip strong{font-size:inherit}.theme-switcher__tooltip>span>span{color:var(--color-background);font-size:.68rem;font-weight:500}.theme-switcher__option[data-value=system] .theme-switcher__tooltip,.theme-switcher__option[data-value=dark] .theme-switcher__tooltip{inset-inline:auto 0;transform:translateY(-.2rem)}.theme-switcher__option:hover .theme-switcher__tooltip,.theme-switcher__option:focus-within .theme-switcher__tooltip{opacity:1;visibility:visible;transform:translate(-50%)}.theme-switcher__option[data-value=system]:hover .theme-switcher__tooltip,.theme-switcher__option[data-value=system]:focus-within .theme-switcher__tooltip,.theme-switcher__option[data-value=dark]:hover .theme-switcher__tooltip,.theme-switcher__option[data-value=dark]:focus-within .theme-switcher__tooltip{transform:translate(0)}@media (prefers-reduced-motion:reduce){.theme-switcher__segment,.theme-switcher__icon,.theme-switcher__selected-mark,.theme-switcher__tooltip{transition:none}}@media (width<=79.99rem){.theme-switcher__options{grid-template-columns:repeat(3,44px);gap:0;padding:2px}.theme-switcher__segment{width:44px;height:44px}.theme-switcher__icon{width:18.4px;height:18.4px}.theme-switcher__selected-mark{width:13.6px;height:13.6px;inset-block-start:-2.88px;inset-inline-end:-2.88px}.theme-switcher__selected-mark svg{width:9.28px;height:9.28px}.theme-switcher__status{min-height:10.4px;padding-inline:4px;font-size:9.28px;line-height:10.4px}}@media (width<=399px){.theme-switcher__options{padding:0}}
