@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.0e__wj8580tc5.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e629b5bc06499d58-s.10u7vx61f1ie7.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/1a099d89ee94ee96-s.35a5cae5tspm2.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.18rizl4rsrl42.woff2)format("woff2");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}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.0e__wj8580tc5.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/e629b5bc06499d58-s.10u7vx61f1ie7.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1a099d89ee94ee96-s.35a5cae5tspm2.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.18rizl4rsrl42.woff2)format("woff2");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}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.0e__wj8580tc5.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/e629b5bc06499d58-s.10u7vx61f1ie7.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/1a099d89ee94ee96-s.35a5cae5tspm2.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.18rizl4rsrl42.woff2)format("woff2");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}@font-face{font-family:Plus Jakarta Sans Fallback;src:local(Arial);ascent-override:98.88%;descent-override:21.15%;line-gap-override:0.0%;size-adjust:104.98%}.plus_jakarta_sans_45ba0dac-module__hDTZcG__className{font-family:Plus Jakarta Sans,Plus Jakarta Sans Fallback;font-style:normal}.plus_jakarta_sans_45ba0dac-module__hDTZcG__variable{--font-ui-loaded:"Plus Jakarta Sans", "Plus Jakarta Sans Fallback"}
@font-face{font-family:Space Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(../media/32687112bd2dd8db-s.1gepa_7fcx9fm.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(../media/28868e710e86be81-s.2eksvhm1z0jwa.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(../media/0c89a48fa5027cee-s.p.2cyn07wtgehh0.woff2)format("woff2");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}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(../media/32687112bd2dd8db-s.1gepa_7fcx9fm.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(../media/28868e710e86be81-s.2eksvhm1z0jwa.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(../media/0c89a48fa5027cee-s.p.2cyn07wtgehh0.woff2)format("woff2");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}@font-face{font-family:Space Grotesk Fallback;src:local(Arial);ascent-override:89.71%;descent-override:26.62%;line-gap-override:0.0%;size-adjust:109.69%}.space_grotesk_90f0921a-module__wGYuUa__className{font-family:Space Grotesk,Space Grotesk Fallback;font-style:normal}.space_grotesk_90f0921a-module__wGYuUa__variable{--font-num-loaded:"Space Grotesk", "Space Grotesk Fallback"}
:root{--fb-ink:#0e1530;--fb-violet:#5b3df5;--fb-violet-tint:#eeebff;--fb-mint:#12b886;--fb-amber:#f59f00;--fb-coral:#ef4e4e;--fb-canvas:#f7f7fb;--fb-surface:#fff;--fb-line:#e6e6ef;--fb-muted:#6b7090;--fb-navy:#161e3d;--bg:var(--fb-canvas);--surface:var(--fb-surface);--surface-sunk:#f1f1f7;--text:var(--fb-ink);--text-muted:#62678a;--line:var(--fb-line);--line-strong:#d3d4e2;--primary:var(--fb-violet);--primary-hover:#4c2fe6;--primary-press:#3f24cc;--on-primary:#fff;--primary-tint:var(--fb-violet-tint);--primary-text:var(--fb-violet);--inverse:var(--fb-ink);--on-inverse:#fff;--paid:var(--fb-mint);--paid-tint:#e3f7f0;--paid-text:#087553;--due:var(--fb-amber);--due-tint:#fff4db;--due-text:#8a5300;--overdue:var(--fb-coral);--overdue-tint:#fdecec;--overdue-text:#b42323;--danger:#c42b2b;--partial:var(--fb-violet);--partial-tint:var(--fb-violet-tint);--partial-text:#4527d6;--pending:#6b7090;--pending-tint:#efeff5;--pending-text:#474c68;--reversed:#6b7090;--reversed-tint:#f1f1f7;--reversed-text:#474c68;--focus-ring:0 0 0 2px var(--surface), 0 0 0 4px var(--primary-text);--font-ui:"Plus Jakarta Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-num:"Space Grotesk", "Plus Jakarta Sans", ui-sans-serif, system-ui, sans-serif;--weight-regular:400;--weight-medium:500;--weight-bold:700;--text-display:56px;--lh-display:64px;--text-h1:40px;--lh-h1:48px;--text-h2:28px;--lh-h2:36px;--text-h3:20px;--lh-h3:28px;--text-lg:18px;--lh-lg:28px;--text-md:16px;--lh-md:24px;--text-sm:14px;--lh-sm:20px;--text-xs:12px;--lh-xs:16px;--amount-xl:48px;--lh-amount-xl:56px;--amount-lg:32px;--lh-amount-lg:40px;--amount-md:22px;--lh-amount-md:28px;--tracking-tight:-.02em;--tracking-caps:.06em;--space-0:0;--space-half:4px;--space-1:8px;--space-2:16px;--space-3:24px;--space-4:32px;--space-5:40px;--space-6:48px;--space-8:64px;--space-10:80px;--space-12:96px;--radius-card:16px;--radius-control:12px;--radius-sm:8px;--radius-pill:999px;--radius-sheet:24px;--shadow:0 1px 2px #0e15300a, 0 8px 24px -6px #0e15301a;--shadow-overlay:0 24px 64px -12px #0e153047;--scrim:#0e15307a;--control-h:48px;--control-h-sm:36px;--touch-min:48px;--icon-stroke:1.75;--sidebar-w:248px;--content-max:1200px;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-pack:cubic-bezier(.34, 1.56, .64, 1);--dur-fast:.12s;--dur-base:.2s;--dur-pack:.38s}:root[data-theme=dark]{--bg:var(--fb-ink);--surface:var(--fb-navy);--surface-sunk:#1c2549;--text:#eef0fa;--text-muted:#a4a9c6;--line:#273159;--line-strong:#36406b;--primary:#5b3df5;--primary-hover:#6a4fff;--primary-press:#4c2fe6;--on-primary:#fff;--primary-tint:#262061;--primary-text:#afa2ff;--inverse:#eef0fa;--on-inverse:#0e1530;--paid-tint:#12b88629;--paid-text:#4fd8ae;--due-tint:#f59f0029;--due-text:#ffc555;--overdue-tint:#ef4e4e2e;--overdue-text:#ff8f8f;--partial-tint:#262061;--partial-text:#b9aeff;--pending-tint:#232c52;--pending-text:#c3c7de;--reversed-tint:#1f2749;--reversed-text:#c3c7de;--shadow:0 1px 2px #0000004d, 0 8px 24px -6px #00000073;--shadow-overlay:0 24px 64px -12px #0009;--scrim:#050814a3;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:var(--fb-ink);--surface:var(--fb-navy);--surface-sunk:#1c2549;--text:#eef0fa;--text-muted:#a4a9c6;--line:#273159;--line-strong:#36406b;--primary:#5b3df5;--primary-hover:#6a4fff;--primary-press:#4c2fe6;--on-primary:#fff;--primary-tint:#262061;--primary-text:#afa2ff;--inverse:#eef0fa;--on-inverse:#0e1530;--paid-tint:#12b88629;--paid-text:#4fd8ae;--due-tint:#f59f0029;--due-text:#ffc555;--overdue-tint:#ef4e4e2e;--overdue-text:#ff8f8f;--partial-tint:#262061;--partial-text:#b9aeff;--pending-tint:#232c52;--pending-text:#c3c7de;--reversed-tint:#1f2749;--reversed-text:#c3c7de;--shadow:0 1px 2px #0000004d, 0 8px 24px -6px #00000073;--shadow-overlay:0 24px 64px -12px #0009;--scrim:#050814a3;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}@media (prefers-reduced-motion:reduce){:root{--dur-fast:0s;--dur-base:0s;--dur-pack:0s}}
*{box-sizing:border-box}body{background:var(--bg);color:var(--text);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.5}button,input,select,textarea{font:inherit;border-radius:var(--radius-control);-webkit-tap-highlight-color:transparent}button{cursor:pointer;border:0}button:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--primary);outline-offset:3px}svg{stroke:currentColor;fill:none;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;width:20px;height:20px;display:block}h1,h2,h3,p{margin:0}h1,h2{font-family:var(--font-ui);letter-spacing:-.035em;font-weight:400}h1{font-size:38px;line-height:1.15}h2{font-size:24px;line-height:1.25}h3{font-size:14px}a{color:var(--primary-text)}fieldset{border:0;min-width:0;margin:0;padding:0}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;top:0;left:0;overflow:hidden}.skip-link{z-index:100;border-radius:var(--radius-control);background:var(--surface);padding:12px 18px;font-weight:700;position:fixed;top:-100px;left:15px}.skip-link:focus{top:15px}.overline{text-transform:uppercase;letter-spacing:.13em;color:var(--text-muted);font-size:11px;font-weight:700}.small{font-size:12px}.muted{color:var(--text-muted)}.money{font-variant-numeric:tabular-nums;white-space:nowrap}.nowrap{white-space:nowrap}.normal-weight{font-weight:400}.spaced{justify-content:space-between;align-items:center;gap:16px;display:flex}.btn{min-height:var(--control-h);background:var(--primary);color:var(--on-primary);justify-content:center;align-items:center;gap:8px;padding:11px 18px;font-size:13px;font-weight:700;text-decoration:none;transition:background .15s,border-color .15s;display:inline-flex}.btn:hover:enabled,.btn[href]:hover{background:var(--primary-hover)}.btn.secondary{background:var(--surface);border:1px solid var(--line-strong);color:var(--text)}.btn.secondary:hover:enabled,.btn.secondary[href]:hover{background:var(--surface-sunk);border-color:var(--primary-tint)}.btn.full{width:100%}.text-btn{min-height:var(--control-h);color:var(--primary);background:0 0;justify-content:center;align-items:center;gap:7px;padding:9px 0;font-size:12px;font-weight:700;display:inline-flex}.text-btn:hover:enabled{text-decoration:underline}.text-btn svg{width:15px;height:15px}.icon-btn{width:40px;height:40px;color:var(--text);background:0 0;flex-shrink:0;place-items:center;display:grid}.icon-btn:hover:enabled{background:var(--primary-tint)}.field{gap:7px;min-width:0;display:grid}.field label{font-size:12px;font-weight:700;line-height:1.5}.field input,.field select,.field textarea{min-height:var(--control-h);border:1px solid var(--line-strong);width:100%;color:var(--text);background:var(--surface);min-width:0;padding:11px 13px;transition:border-color .15s}.field input:hover:not(:disabled),.field select:hover:not(:disabled),.field textarea:hover:not(:disabled){border-color:var(--text-muted)}.field input:disabled,.field select:disabled,.field textarea:disabled{background:var(--line);color:var(--text-muted)}.field textarea{resize:vertical}.audit-details summary{cursor:pointer;min-height:var(--control-h);padding:14px 16px;font-weight:600}.audit-details summary:focus-visible{outline:3px solid var(--primary);outline-offset:2px}.field input::placeholder{color:var(--text-muted)}.field .hint{color:var(--text-muted);font-size:12px;line-height:1.6}.form-error{color:var(--danger);border-radius:var(--radius-control);background:var(--overdue-tint);padding:11px 13px;font-size:12px;line-height:1.65}.notice{border:1px solid var(--line-strong);border-radius:var(--radius-control);background:var(--due-tint);color:var(--primary);padding:12px 14px;font-size:12px;line-height:1.65}.pill{border-radius:var(--radius-control);white-space:nowrap;background:var(--primary-tint);color:var(--paid-text);align-items:center;padding:4px 9px;font-size:11px;font-weight:700;display:inline-flex}.pill.warn{background:var(--due-tint);color:var(--due-text)}.pill.neutral{background:var(--line);color:var(--text-muted)}.avatar{border-radius:var(--radius-control);background:var(--primary-tint);width:35px;height:35px;color:var(--paid-text);flex-shrink:0;place-items:center;font-size:12px;font-weight:700;display:grid}.brand{align-items:center;gap:11px;display:flex}.brand-mark{background:var(--primary);width:36px;height:36px;color:var(--on-primary);border-radius:var(--radius-control);flex-shrink:0;place-items:center;display:grid}.brand strong{color:var(--text);letter-spacing:-.04em;font-size:17px;font-weight:800}.app-shell{grid-template-columns:232px minmax(0,1fr);min-height:100vh;display:grid}.app-shell h1,.app-shell h2,dialog h2{font-family:var(--font-ui);letter-spacing:-.045em;font-weight:700}.sidebar{background:var(--surface);color:var(--text);border-right:1px solid var(--line);flex-direction:column;height:100dvh;min-height:540px;padding:30px 18px 20px;display:flex;position:sticky;top:0;overflow-y:auto}.sidebar .brand{padding:0 10px 32px}.institution-side{color:var(--text-muted);padding:0 12px 26px;font-size:12px;line-height:1.6}.institution-side .overline{color:var(--text-muted);font-size:10px}.institution-side strong{color:var(--text);overflow-wrap:anywhere;margin-top:7px;font-size:13px;font-weight:600;display:block}.admin-nav{gap:6px;display:grid}.admin-nav button{text-align:left;min-height:var(--control-h);color:var(--text-muted);background:0 0;align-items:center;gap:12px;padding:12px 14px;font-size:13px;transition:background .15s,color .15s;display:flex}.admin-nav button:hover{background:var(--surface-sunk);color:var(--text)}.admin-nav button[aria-current=page]{background:var(--line);color:var(--primary);font-weight:700}.admin-nav svg{width:18px;height:18px}.sidebar button:focus-visible{outline-color:var(--primary)}.sidebar-bottom{margin-top:auto;padding-top:30px}.account{border-top:1px solid var(--line);align-items:center;gap:9px;padding:17px 7px;display:flex}.account .avatar{background:var(--primary-tint);color:var(--paid-text);width:33px;height:33px}.account>div{min-width:0}.account strong{font-size:12px;display:block}.account small{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;max-width:145px;font-size:11px;display:block;overflow:hidden}.signout{color:var(--text-muted);min-height:var(--control-h);background:0 0;align-items:center;gap:8px;width:100%;padding:8px 10px;font-size:12px;display:flex}.signout:hover:enabled{background:var(--surface-sunk);color:var(--text)}.signout svg{width:16px;height:16px}.admin-main{width:100%;min-width:0;max-width:1680px;padding:30px 40px 60px}.workspace-label{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:9px;min-height:36px;margin-bottom:30px;font-size:12px;display:flex}.workspace-label .dot{background:var(--text-muted);border-radius:50%;width:3px;height:3px}.workspace-label .refresh{color:var(--text-muted);margin-left:auto;font-size:11px;font-weight:400}.page-heading{align-items:center;margin-bottom:30px}.page-heading p{color:var(--text-muted);margin-top:9px;font-size:14px}.page-heading h1{font-size:32px}.page-heading h1:focus{outline:none}.heading-actions{flex-wrap:wrap;flex-shrink:0;gap:10px;display:flex}.metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:30px;display:grid}.metric{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);min-width:0;padding:24px}.metric:first-child{background:var(--primary-tint);border-color:var(--line)}.metric-label{color:var(--text-muted);font-size:12px;display:block}.metric-value{font-variant-numeric:tabular-nums;letter-spacing:-.045em;margin-top:12px;font-size:32px;font-weight:600;line-height:1.2;display:block}.metric-value.money{scrollbar-width:thin;max-width:100%;overflow-x:auto}.metric-foot{color:var(--text-muted);margin-top:10px;font-size:12px;display:block}.content-grid{grid-template-columns:minmax(0,1.65fr) minmax(270px,1fr);align-items:start;gap:22px;display:grid}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-card);min-width:0;overflow:hidden}.panel-head{border-bottom:1px solid var(--line);padding:21px 23px}.panel-head h2{font-size:19px}.panel-head p{color:var(--text-muted);margin-top:6px;font-size:12px}.table-scroll{overflow:auto}table{border-collapse:collapse;text-align:left;font-variant-numeric:tabular-nums;width:100%;font-size:13px}th{letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);background:var(--surface-sunk);border-bottom:1px solid var(--line);white-space:nowrap;padding:14px 20px;font-size:10px;font-weight:700}td{border-bottom:1px solid var(--line);vertical-align:middle;padding:17px 20px}tbody tr:hover{background:var(--surface-sunk)}tr:last-child td{border-bottom:0}.right{text-align:right}.cell-meta{color:var(--text-muted);margin-top:4px;font-size:11px;display:block}.student-cell{align-items:center;gap:11px;min-width:145px;display:flex}.student-cell strong{display:block}.student-cell small{color:var(--text-muted);margin-top:2px;font-size:11px;display:block}.table-link{color:var(--primary);min-height:var(--control-h);white-space:nowrap;background:0 0;padding:6px 0;font-size:12px;font-weight:700}.table-link:hover{text-decoration:underline}.table-note{color:var(--text-muted);border-top:1px solid var(--line);padding:14px 22px;font-size:11px}.payment-row{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:18px 22px;display:flex}.payment-row:last-child{border-bottom:0}.payment-icon{border:1px solid var(--line);background:var(--primary-tint);border-radius:var(--radius-control);width:34px;height:34px;color:var(--paid-text);flex-shrink:0;place-items:center;display:grid}.payment-icon svg{width:15px;height:15px}.payment-name{color:inherit;text-align:left;background:0 0;min-width:0;padding:0}.payment-name:hover strong{text-decoration:underline}.payment-name strong{font-size:13px;display:block}.payment-name small{color:var(--text-muted);margin-top:3px;font-size:11px;display:block}.payment-row>.money{margin-left:auto;font-size:13px;font-weight:700}.quiet-note{border-top:1px solid var(--line);color:var(--text-muted);padding:19px 23px;font-size:12px;line-height:1.75}.empty{text-align:center;color:var(--text-muted);padding:37px 20px 39px}.empty-mark{border:1px solid var(--line);border-radius:var(--radius-control);width:42px;height:42px;color:var(--paid-text);background:var(--primary-tint);place-items:center;margin:0 auto 15px;display:grid}.empty h3{color:var(--text);margin-bottom:7px}.empty p{max-width:350px;margin:auto;font-size:12px}.empty .btn{margin-top:19px}.filterbar{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:13px;padding:18px 22px;display:flex}.searchbox{flex:1;max-width:390px;position:relative}.searchbox svg{width:17px;height:17px;color:var(--text-muted);position:absolute;top:15px;left:13px}.searchbox input{padding-left:39px}.filterbar select{min-width:130px;font-size:12px}.table-summary{color:var(--text-muted);white-space:nowrap;margin-left:auto;font-size:11px}.segmented{border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface-sunk);flex-shrink:0;gap:4px;padding:3px;display:flex}.segmented button{min-height:38px;color:var(--text-muted);background:0 0;padding:7px 13px;font-size:12px}.segmented button[aria-pressed=true]{background:var(--surface);color:var(--text);box-shadow:var(--shadow);font-weight:700}.getting-started{background:var(--primary-tint);border:1px solid var(--line);border-radius:var(--radius-card);justify-content:space-between;align-items:center;gap:25px;margin-bottom:28px;padding:25px 26px;display:flex}.getting-started h2{margin-top:6px;font-size:22px}.getting-started p:not(.overline){color:var(--text-muted);margin-top:8px;font-size:13px}.setup-actions{gap:7px;min-width:230px;display:grid}.setup-step{background:var(--surface);border:1px solid var(--line-strong);text-align:left;color:var(--text);min-height:var(--control-h);align-items:center;gap:15px;padding:12px 15px;display:flex}.setup-step:hover{background:var(--surface-sunk)}.setup-step span{font-variant-numeric:tabular-nums;color:var(--paid-text);font-size:13px}.setup-step strong{font-size:12px}.setup-step svg{width:16px;height:16px;margin-left:auto}.banner{border-radius:var(--radius-control);align-items:center;gap:10px;margin-bottom:20px;padding:10px 16px;font-size:12px;line-height:1.6;display:flex}.banner>span{flex:1}.success-banner{background:var(--primary-tint);border:1px solid var(--line-strong);color:var(--paid-text)}.error-banner{background:var(--overdue-tint);border:1px solid var(--line);color:var(--danger)}.banner .icon-btn{width:32px;height:32px}.gate-stage{background:var(--bg);flex-direction:column;align-items:center;min-height:100dvh;padding:72px 24px 35px;display:flex}.gate-brand{margin-bottom:34px}.gate-brand .brand strong{color:var(--text)}.gate-brand .brand-mark{background:var(--primary);color:var(--on-primary)}.gate-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-control);width:100%;max-width:470px;box-shadow:var(--shadow);padding:38px}.gate-card h1{margin-top:10px;font-size:36px}.gate-card>p:not(.overline){color:var(--text-muted);margin-top:16px;font-size:13px;line-height:1.8}.gate-card>p.form-error{color:var(--overdue-text)}.gate-card>.btn,.gate-actions{margin-top:25px}.gate-actions{gap:10px;display:flex}.gate-foot{color:var(--text-muted);text-align:center;margin-top:27px;font-size:12px}.login-form{margin-top:28px}.login-form fieldset{gap:20px;display:grid}.gate-card>.login-help{border-top:1px solid var(--line);padding-top:20px;margin-top:25px!important;font-size:12px!important}.loading-line{color:var(--text-muted);align-items:center;gap:12px;margin-top:30px;font-size:12px;display:flex}.spinner{border:2px solid var(--line);border-top-color:var(--primary);border-radius:50%;width:17px;height:17px;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}dialog{border:1px solid var(--line);border-radius:var(--radius-control);background:var(--surface);width:calc(100% - 32px);max-width:510px;max-height:calc(100dvh - 48px);color:var(--text);box-shadow:var(--shadow);overscroll-behavior:contain;padding:0}dialog::backdrop{background:var(--shadow);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}dialog.dialog-wide{max-width:620px}.modal-head{border-bottom:1px solid var(--line);padding:20px 26px}.modal-head h2{font-size:22px}.modal-head p{color:var(--text-muted);margin-top:5px;font-size:12px}.modal-body{gap:19px;padding:24px 26px;display:grid}.modal-foot{border-top:1px solid var(--line);background:var(--surface-sunk);justify-content:flex-end;gap:10px;padding:18px 26px 22px;display:flex}.form-grid{grid-template-columns:1fr 1fr;align-items:start;gap:14px;display:grid}.class-entry-row{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;display:grid}.class-entry-actions{justify-items:start;gap:8px;display:grid}.class-entry-actions .hint{color:var(--text-muted);font-size:11px}.balance-strip{background:var(--primary-tint);border-radius:var(--radius-control);justify-content:space-between;align-items:center;gap:20px;padding:15px 16px;font-size:12px;display:flex}.balance-strip strong{font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:20px;font-weight:600}.allocation-preview{border:1px solid var(--line);border-radius:var(--radius-control);overflow:hidden}.allocation-heading{background:var(--surface-sunk);padding:15px 17px}.allocation-heading h3{font-size:12px}.allocation-heading p{color:var(--text-muted);margin-top:5px;font-size:11px;line-height:1.65}.allocation-preview th{padding:11px 16px;font-size:10px}.allocation-preview td{padding:12px 16px;font-size:12px}.allocation-total{background:var(--surface-sunk);border-top:1px solid var(--line);justify-content:space-between;gap:16px;padding:13px 16px;font-size:12px;display:flex}.fee-structures{margin-bottom:24px}.import-preview{border:1px solid var(--line);border-radius:var(--radius-control);max-height:300px}.import-preview table{min-width:540px}.field input[type=file]{min-width:0;padding:9px}.table-actions{justify-content:flex-end;gap:18px;display:flex}.summary-card{background:var(--primary-tint);border-radius:var(--radius-control);justify-content:space-between;align-items:center;gap:16px;padding:15px 17px;font-size:12px;display:flex}.summary-card strong{font-size:19px}.assignment-students h3{margin-bottom:7px;font-size:17px}.selection-list{border:1px solid var(--line);border-radius:var(--radius-control);max-height:260px;margin-top:12px;overflow:auto}.student-choice{border-bottom:1px solid var(--line);cursor:pointer;align-items:center;gap:12px;padding:12px 14px;font-size:12px;display:flex}.student-choice:last-child{border:0}.student-choice input{width:17px;height:17px;accent-color:var(--primary-text);flex-shrink:0}.student-choice>span:first-of-type{overflow-wrap:anywhere;flex:1;min-width:0}.student-choice small{color:var(--text-muted);margin-top:4px;font-size:11px;display:block}.student-choice .money{font-size:11px}.confirmation{align-items:flex-start;gap:10px;font-size:12px;line-height:1.7;display:flex}.confirmation input{width:17px;height:17px;accent-color:var(--primary-text);flex-shrink:0;margin:3px 0 0}.receipt{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-control);padding:23px}.receipt-top{border-bottom:1px dashed var(--line-strong);justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;padding-bottom:17px;display:flex}.receipt-top strong{font-size:13px;display:block}.receipt-top small{color:var(--text-muted);margin-top:3px;font-size:11px;display:block}.receipt-amount{text-align:center;padding:8px 0 22px}.receipt-amount .money{letter-spacing:-.04em;font-size:35px;font-weight:600;display:block}.receipt-amount>span{color:var(--text-muted);margin-bottom:5px;font-size:11px;display:block}.receipt-data{gap:11px;font-size:12px;display:grid}.receipt-data>div{justify-content:space-between;gap:20px;display:flex}.receipt-data span{color:var(--text-muted)}.receipt-data strong{text-align:right;overflow-wrap:anywhere;font-weight:400}.receipt-allocations{border-top:1px dashed var(--line-strong);border-bottom:1px dashed var(--line-strong);margin:18px 0;padding:15px 0}.receipt-allocations h3{text-transform:uppercase;letter-spacing:.07em;margin-bottom:8px;font-size:10px}.fee-line{border-bottom:1px solid var(--line);justify-content:space-between;gap:20px;padding:12px 17px;font-size:12px;display:flex}.fee-line:last-child{border-bottom:0}.fee-line strong{font-weight:400}.fee-line>div,.receipt-top>div{overflow-wrap:anywhere;min-width:0}.fee-line small{color:var(--text-muted);margin-top:4px;font-size:11px;display:block}.receipt .fee-line{border:0;padding:9px 0;font-size:11px}.receipt-foot{text-align:center;color:var(--text-muted);border-top:1px dashed var(--line-strong);margin-top:20px;padding-top:15px;font-size:11px}.institution-chooser{flex:1;min-width:180px;max-width:320px}.institution-chooser label{font-size:11px}.institution-chooser select{width:100%;font-size:13px}.pilot-note{background:var(--surface);border-left:3px solid var(--paid-text);margin:-8px 0 24px;padding:12px 16px;font-size:12px;line-height:1.7}.setup-checklist{margin-bottom:28px}.setup-checklist ol{margin:0;padding:0;list-style:none}.setup-checklist li{border-top:1px solid var(--line);align-items:center;gap:15px;padding:18px 23px;display:flex}.setup-checklist li>div{flex:1;min-width:0}.setup-checklist li p{color:var(--text-muted);margin:4px 0 0;font-size:12px;line-height:1.6}.setup-status{border:1px solid var(--line);border-radius:50%;flex:none;place-items:center;width:32px;height:32px;font-size:11px;display:grid}.setup-status.complete{background:var(--primary-tint);color:var(--paid-text)}.setup-status svg{width:16px;height:16px}.recovery-link{margin-top:16px}@media (min-width:1440px){.admin-main{padding-left:50px;padding-right:50px}}@media (max-width:1190px){.admin-main{padding:27px 28px 50px}.content-grid{grid-template-columns:1fr}.metric{padding:20px}.metric-value{font-size:28px}.page-heading,.getting-started{align-items:flex-start}}@media (max-width:1000px){.metrics{grid-template-columns:1fr 1fr}.metric:first-child{grid-column:1/-1}}@media (max-width:850px){.app-shell{grid-template-columns:180px minmax(0,1fr)}.sidebar{padding:26px 12px 18px}.sidebar .brand{padding:0 8px 28px}.brand strong{font-size:15px}.brand-mark{width:32px;height:32px}.institution-side{padding-left:8px;padding-right:8px}.account small{max-width:105px}.admin-main{padding:25px 24px 45px}.metrics{gap:12px}.metric{padding:20px 18px}.metric-value{font-size:27px}.page-heading{flex-direction:column;gap:20px}.heading-actions{width:100%}.getting-started{flex-direction:column}.setup-actions{grid-template-columns:1fr 1fr;width:100%}.filterbar{flex-wrap:wrap;gap:11px}.searchbox{flex-basis:100%;max-width:none}.table-summary{margin-left:auto}}@media (max-width:620px){.app-shell{display:block}.sidebar{border-right:0;border-bottom:1px solid var(--line);grid-template-columns:1fr auto;align-items:center;gap:16px;height:auto;min-height:0;padding:18px 18px 12px;display:grid;position:static;overflow:visible}.sidebar .brand{padding:0}.institution-side{display:none}.admin-nav{order:3;grid-column:1/-1;grid-template-columns:repeat(4,1fr);gap:4px;display:grid}.admin-nav button{flex-direction:column;justify-content:center;gap:6px;min-height:59px;padding:10px 6px;font-size:11px}.sidebar-bottom{margin:0;padding:0}.account{display:none}.signout{width:auto;min-height:var(--control-h);padding:8px;font-size:11px}.signout svg{width:15px;height:15px}.admin-main{padding:20px 18px 40px}.workspace-label{gap:7px;margin-bottom:22px;font-size:11px}.workspace-label .refresh{gap:5px;font-size:11px}.workspace-label .refresh svg{width:14px;height:14px}.institution-chooser{flex-basis:100%;max-width:none}.page-heading h1{font-size:28px}.page-heading p{font-size:13px}.page-heading{gap:18px;margin-bottom:24px}.heading-actions .btn{flex:1;font-size:12px}.metrics{gap:12px;margin-bottom:24px}.metric{padding:20px 16px}.metric:first-child .metric-value{font-size:32px}.metric-value{font-size:25px}.metric-foot{font-size:11px}.content-grid{gap:20px}.panel-head{flex-wrap:wrap;gap:10px;padding:18px}.panel-head h2{font-size:19px}th{padding:13px 16px}td,.filterbar{padding:16px}.filterbar>.field:not(.searchbox){flex:1}.field input,.field select,.field textarea{font-size:16px}.getting-started{gap:20px;padding:22px}.getting-started h2{font-size:22px}.setup-actions{grid-template-columns:1fr;min-width:0}.setup-checklist li{flex-wrap:wrap;gap:10px;padding:18px 16px}.setup-checklist li>div{min-width:calc(100% - 48px)}.setup-checklist li>.btn{margin-left:42px}.pilot-note{margin-top:0}.gate-stage{padding:44px 20px 28px}.gate-card{padding:30px 26px}.gate-card h1{font-size:34px}.gate-brand{margin-bottom:28px}dialog{width:calc(100% - 24px);max-height:calc(100dvh - 28px)}.modal-head{padding:18px 20px}.modal-head h2{font-size:21px}.modal-body{gap:20px;padding:22px 20px}.modal-foot{padding:18px 20px}.modal-foot .btn{padding:10px 12px;font-size:12px}.form-grid{gap:14px}.receipt{padding:18px}.receipt-amount .money{font-size:32px}.banner{padding:11px 12px;font-size:12px}}@media (max-width:480px){.form-grid{grid-template-columns:1fr}.modal-foot{flex-wrap:wrap}.modal-foot .btn{flex:1}}@media (max-width:380px){.workspace-label>span:first-child{max-width:125px}.metric-value{font-size:23px}.metric-foot{overflow-wrap:anywhere}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media print{@page{margin:18mm}body{background:var(--surface);font-size:12px}:is(body:has(.receipt-dialog[open]) .app-shell,body:has(.receipt-dialog[open]) .skip-link){display:none!important}.receipt-dialog[open]{width:100%;max-width:none;height:auto;max-height:none;box-shadow:var(--shadow);border:0;border-radius:0;margin:0;display:block;position:static;overflow:visible}.receipt-dialog::backdrop{background:0 0}.receipt-dialog .modal-head,.receipt-dialog .modal-foot{display:none!important}.receipt-dialog .modal-body{padding:0;display:block}.receipt{break-inside:avoid;border:0;border-radius:0;padding:0}.receipt-top{margin-top:0}.receipt-amount .money{font-size:32px}.pill{border:1px solid var(--primary-tint);background:var(--surface);color:var(--text)}}
html[class]{--font-ui:var(--font-ui-loaded);--font-num:var(--font-num-loaded)}body{font-family:var(--font-ui)}h1,h2,h3{font-family:var(--font-ui);letter-spacing:var(--tracking-tight);font-weight:700}h1{font-size:var(--text-h1);line-height:var(--lh-h1)}h2{font-size:var(--text-h2);line-height:var(--lh-h2)}h3{font-size:var(--text-h3);line-height:var(--lh-h3)}a{color:var(--primary-text)}button,input,select,textarea{border-radius:var(--radius-control)}svg{stroke-width:1.75px}:is(button,a,input,select,textarea,summary):focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px}.money,.metric-value,.receipt-data strong,.setup-status,.amt,.numeric{font-family:var(--font-num);font-variant-numeric:tabular-nums}.overline{font-size:var(--text-xs);line-height:var(--lh-xs);letter-spacing:var(--tracking-caps)}.btn{min-height:var(--control-h);border-radius:var(--radius-control);background:var(--primary);color:var(--on-primary);padding:12px 20px;font-size:14px;font-weight:700}.btn.secondary{border-color:var(--line-strong);background:var(--surface);color:var(--text)}.btn.secondary:hover:enabled,.btn.secondary[href]:hover{background:var(--surface-sunk);border-color:var(--line-strong)}.btn.danger{background:var(--danger);color:var(--on-primary)}.btn.sm{min-height:36px;padding:8px 12px}.btn:disabled{opacity:.55}.text-btn,.table-link{min-height:48px;color:var(--primary-text);font-size:14px}.icon-btn{border-radius:var(--radius-control);width:48px;height:48px}.field{gap:var(--space-1)}.field label{font-size:14px}.field input,.field select,.field textarea{border-color:var(--line-strong);border-radius:var(--radius-control);background:var(--surface);min-height:48px;padding:12px 16px;font-size:16px}.field input::placeholder{color:var(--text-muted)}.field .hint{font-size:12px}.form-error{color:var(--overdue-text);background:var(--overdue-tint);border-radius:var(--radius-control);align-items:flex-start;gap:8px;font-size:14px;display:flex}.form-error svg{flex:none;margin-top:2px}.notice{border-color:var(--line);background:var(--due-tint);color:var(--due-text);border-radius:var(--radius-control);font-size:14px}.banner{border-radius:var(--radius-control);font-size:14px}.success-banner{background:var(--paid-tint);color:var(--paid-text);border-color:var(--line)}.error-banner{background:var(--overdue-tint);color:var(--overdue-text);border-color:var(--line)}.avatar{border-radius:var(--radius-control);background:var(--primary-tint);width:40px;height:40px;color:var(--primary-text);font-weight:700}.app-shell{grid-template-columns:var(--sidebar-w) minmax(0,1fr)}.sidebar{min-height:0;padding:32px 16px 16px}.sidebar .brand{padding:0 16px 32px}.admin-nav button{border-radius:var(--radius-control);min-height:48px;color:var(--text-muted);padding:12px 16px;font-size:16px}.admin-nav button:hover{background:var(--surface-sunk)}.admin-nav button[aria-current=page]{background:var(--primary-tint);color:var(--primary-text)}.admin-nav svg{width:20px;height:20px}.admin-main{max-width:1280px;padding:24px 40px 64px}.workspace-label{border-bottom:1px solid var(--line);min-height:64px;margin-bottom:24px;padding-bottom:16px}.workspace-search{flex:1;min-width:120px;max-width:340px}.workspace-search input{border:1px solid var(--line-strong);background:var(--surface);width:100%;min-height:48px;color:var(--text);padding:12px 16px}.account-menu{position:relative}.account-menu summary{cursor:pointer;border:1px solid var(--line);border-radius:var(--radius-control);align-items:center;gap:12px;min-height:48px;padding:12px;list-style:none;display:flex}.account-menu summary::-webkit-details-marker{display:none}.account-menu summary>div{min-width:0}.account-menu summary small{color:var(--text-muted);text-overflow:ellipsis;max-width:140px;font-size:12px;display:block;overflow:hidden}.account-popover{background:var(--surface);border:1px solid var(--line);width:280px;box-shadow:var(--shadow);border-radius:var(--radius-card);z-index:70;padding:12px;position:absolute;bottom:calc(100% + 8px);left:0}.account-popover :is(button,a){text-align:left;width:100%;min-height:48px;color:var(--text);background:0 0;align-items:center;gap:8px;padding:12px;text-decoration:none;display:flex}.account-popover :is(button,a):hover{background:var(--surface-sunk)}.account-popover .field{padding:8px}.account-popover select{width:100%}.page-heading h1{font-size:32px;line-height:40px}.page-heading p{font-size:16px}.metric{background:var(--surface);border-radius:var(--radius-card);box-shadow:var(--shadow);padding:24px}.metric:first-child{background:var(--surface);border-color:var(--line)}.metric-label{letter-spacing:var(--tracking-caps);text-transform:uppercase;font-size:12px;font-weight:700}.metric-value{margin-top:16px;font-size:32px;font-weight:700;line-height:40px}.panel{border-radius:var(--radius-card)}.panel-head{padding:24px}.panel-head h2{font-size:20px}table{font-size:14px}th{background:var(--surface-sunk);color:var(--text-muted);letter-spacing:var(--tracking-caps);padding:16px 24px;font-size:12px}td{border-color:var(--line);padding:16px 24px}.getting-started{background:var(--primary-tint);border-color:var(--line);border-radius:var(--radius-card)}.setup-status{border-radius:var(--radius-sm)}.segmented{border-radius:var(--radius-control);background:var(--surface-sunk);padding:4px}.segmented button{min-height:48px;font-size:14px}.payment-tabs{border-bottom:1px solid var(--line);gap:8px;margin-bottom:24px;display:flex;overflow:auto}.payment-tabs button{color:var(--text-muted);white-space:nowrap;background:0 0;border-bottom:2px solid #0000;border-radius:0;min-height:48px;padding:12px 16px}.payment-tabs button[aria-selected=true]{color:var(--text);border-bottom-color:var(--primary);font-weight:700}.gate-stage{padding-top:64px}.gate-card{border-radius:var(--radius-card);max-width:480px;box-shadow:var(--shadow);padding:40px}.gate-card h1{font-size:32px;line-height:40px}.gate-card>p:not(.overline){font-size:16px}dialog{border-radius:var(--radius-card);max-width:560px;box-shadow:var(--shadow)}dialog::backdrop{background:var(--scrim)}.modal-head,.modal-body,.modal-foot{padding:24px}.modal-head h2{font-size:24px}.modal-foot{background:var(--surface)}.modal-body{gap:24px}.balance-strip{background:var(--primary-tint);border-radius:var(--radius-control);padding:16px}.balance-strip strong{font-size:32px}.receipt{border-radius:var(--radius-card);padding:24px}.receipt-amount .money{font-size:48px;font-weight:700;line-height:56px}.fee-line{border-radius:var(--radius-control);align-items:center;gap:12px;padding:16px;font-size:14px}.fee-line>div{flex:1}.fee-line strong{font-weight:700}.fee-line small{font-size:12px}.empty{padding:48px 24px}.empty h3{font-size:20px}.empty p{font-size:14px}.empty-art{width:128px;height:112px;margin:0 auto 16px;position:relative}.empty-art .bx:first-child{position:absolute;top:8px;left:24px}.empty-art .bx:nth-child(2){position:absolute;top:56px;left:88px;transform:rotate(8deg)}.empty-art .bx:nth-child(3){position:absolute;top:64px;left:0;transform:rotate(-10deg)}.wm{color:var(--text);font-family:var(--font-num);letter-spacing:-.055em;font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;font-weight:700;line-height:1;display:inline-flex}.wm .wm-o{stroke:none;width:.72em;height:.72em;margin:0 .015em;overflow:visible}.wm-o rect{fill:var(--primary)}.wm-o path{fill:none;stroke:var(--on-primary);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round}.wm--inverse{color:var(--on-primary)}.wm--inverse .wm-o rect{fill:var(--on-primary)}.wm--inverse .wm-o path{stroke:var(--primary)}.bx{vertical-align:middle;flex:none;display:inline-block;overflow:visible}.bx .bx-b,.bx .bx-l{fill:var(--surface);stroke:currentColor;stroke-width:1.75px;stroke-linejoin:round}.bx .bx-h{fill:currentColor;stroke:none}.bx .bx-t{fill:none;stroke:var(--on-primary);stroke-width:2.25px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1px}.bx .bx-l{transform-box:view-box;transform-origin:3px 9px}.bx--due{color:var(--due)}.bx--overdue{color:var(--overdue)}.bx--partial{color:var(--partial)}.bx--pending,.bx--reversed{color:var(--text-muted)}.bx--pending .bx-b,.bx--pending .bx-l,.bx--reversed .bx-b,.bx--reversed .bx-l{stroke-dasharray:2.5 2.5}.bx--paid{color:var(--paid)}.bx--brand,.bx--empty{color:var(--primary)}.bx--paid .bx-b,.bx--paid .bx-l,.bx--brand .bx-b,.bx--brand .bx-l{fill:currentColor}.bx--empty .bx-b,.bx--empty .bx-l{fill:var(--primary-tint)}.bx--paid .bx-t,.bx--brand .bx-t{stroke-dashoffset:0}.bx--open .bx-l{transform:rotate(-26deg)}.bx.is-packing{animation:bx-squish var(--dur-pack) var(--ease-out)}.bx.is-packing .bx-b,.bx.is-packing .bx-l{animation:bx-fill var(--dur-pack) linear}.bx.is-packing .bx-l{animation:bx-lid var(--dur-pack) var(--ease-pack),bx-fill var(--dur-pack) linear}.bx.is-packing .bx-t{animation:bx-tick var(--dur-pack) var(--ease-out)}@keyframes bx-lid{0%{transform:rotate(-26deg)}40%{transform:rotate(3deg)}55%,to{transform:rotate(0)}}@keyframes bx-squish{0%{transform:scale(1)}38%{transform:scale(.88)}68%{transform:scale(1.07)}to{transform:scale(1)}}@keyframes bx-fill{0%,36%{fill:var(--surface);stroke:var(--due)}44%,to{fill:var(--paid);stroke:var(--paid)}}@keyframes bx-tick{0%,42%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}.chip{border-radius:var(--radius-pill);height:28px;font:700 12px/1 var(--font-ui);white-space:nowrap;align-items:center;gap:6px;padding:0 12px 0 8px;display:inline-flex}.chip svg{width:16px;height:16px}.chip--paid{background:var(--paid-tint);color:var(--paid-text)}.chip--due{background:var(--due-tint);color:var(--due-text)}.chip--overdue{background:var(--overdue-tint);color:var(--overdue-text)}.chip--partial{background:var(--partial-tint);color:var(--partial-text)}.chip--pending{background:var(--pending-tint);color:var(--pending-text)}.chip--reversed{background:var(--reversed-tint);color:var(--reversed-text)}.chip--neutral{background:var(--surface-sunk);color:var(--text-muted)}.chip--brand{background:var(--primary-tint);color:var(--primary-text)}.skeleton{background:var(--surface-sunk);border-radius:var(--radius-control);min-height:24px;animation:1.5s ease-in-out infinite alternate skeleton-pulse}.amount-control{position:relative}.amount-control>span{font:700 24px/32px var(--font-num);position:absolute;top:14px;left:16px}.amount-control>input{padding-left:40px;font-size:32px}.quick-amounts{flex-wrap:wrap;gap:8px;margin-top:8px;display:flex}.otp-input{position:relative}.otp-input>input{opacity:0;z-index:1;position:absolute;inset:0}.otp-boxes{gap:8px;display:flex}.otp-boxes>span{border:1px solid var(--line-strong);border-radius:var(--radius-control);height:56px;font:700 24px/32px var(--font-num);background:var(--surface);flex:1;place-items:center;display:grid}.otp-input:focus-within .current{outline:2px solid var(--focus-ring)}.tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.tiles legend{margin-bottom:8px;font-weight:700}.tile{border:1px solid var(--line-strong);border-radius:var(--radius-control);cursor:pointer;gap:8px;padding:16px;display:grid}.tile.selected{border-color:var(--primary);background:var(--primary-tint)}.tile small{color:var(--text-muted)}.switch-control{cursor:pointer;align-items:center;gap:12px;min-height:48px;display:flex;position:relative}.switch-control input{opacity:0;position:absolute}.switch-track{border-radius:var(--radius-pill);background:var(--line-strong);width:44px;height:24px;padding:3px;display:block}.switch-track:after{content:"";background:var(--surface);border-radius:var(--radius-pill);width:18px;height:18px;display:block}.switch-control input:checked+.switch-track{background:var(--primary)}.switch-control input:checked+.switch-track:after{transform:translate(20px)}.switch-control input:focus-visible+.switch-track{outline:2px solid var(--focus-ring);outline-offset:3px}.card{padding:24px}.fee-box{border:1px solid var(--line)}.fee-box--overdue{border-color:var(--overdue)}.fee-box--paid{background:var(--paid-tint)}.fee-box-amount{justify-items:end;gap:8px;display:grid}.stepper{gap:24px;padding:0;list-style:none;display:flex}.stepper li{color:var(--text-muted);align-items:center;gap:8px;font-size:14px;display:flex}.stepper li[aria-current]{color:var(--primary-text);font-weight:700}.theme-moon{display:block}.theme-sun,:root[data-theme=dark] .theme-moon{display:none}:root[data-theme=dark] .theme-sun{display:block}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .theme-moon{display:none}:root:not([data-theme=light]) .theme-sun{display:block}}#payment-amount{font-size:32px;line-height:40px}@keyframes skeleton-pulse{to{opacity:.45}}@media (max-width:767px){.app-shell{display:block}.sidebar{z-index:40;border-bottom:1px solid var(--line);flex-direction:row;justify-content:space-between;align-items:center;height:72px;min-height:0;padding:16px;display:flex;position:sticky;top:0;overflow:visible}.sidebar .brand{padding:0}.institution-side{display:none}.sidebar-bottom{margin:0;padding:0}.account-menu summary>div{display:none}.account-popover{max-width:calc(100vw - 32px);inset:calc(100% + 8px) 0 auto auto}.admin-nav{background:var(--surface);border-top:1px solid var(--line);padding:8px 8px max(8px,env(safe-area-inset-bottom));z-index:40;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;display:grid;position:fixed;bottom:0;left:0;right:0}.admin-nav button{flex-direction:column;gap:4px;min-height:56px;padding:8px;font-size:12px}.admin-main{padding:16px 16px 112px}.workspace-label{flex-wrap:wrap}.workspace-search{flex-basis:100%;max-width:none}.page-heading{flex-direction:column;align-items:stretch;gap:16px}.page-heading h1{font-size:28px}.heading-actions{width:100%}.metrics{grid-template-columns:1fr}.metric:first-child{grid-column:auto}.metric-value{font-size:32px}.table-scroll table{display:block}.table-scroll thead{display:none}.table-scroll tbody{width:100%;display:grid}.table-scroll tr{border-bottom:1px solid var(--line);flex-wrap:wrap;gap:8px 16px;padding:16px;display:flex}.table-scroll td{overflow-wrap:anywhere;border:0;flex:40%;padding:0;display:block}.table-scroll td:first-child{flex-basis:100%}.table-scroll .right{text-align:left}.table-scroll td[data-label]:before{content:attr(data-label);font:500 12px/20px var(--font-ui);color:var(--text-muted);display:block}.import-preview table{min-width:0}.filterbar{padding:16px}.filterbar>.field,.filterbar select{min-width:0}dialog{border-radius:var(--radius-sheet) var(--radius-sheet) 0 0;width:100%;max-width:100%;max-height:90dvh;margin:auto 0 0;position:fixed;inset:auto 0 0}.modal-head,.modal-body,.modal-foot{padding:24px}.modal-foot{padding-bottom:max(24px,env(safe-area-inset-bottom))}.gate-stage{padding:32px 16px}.gate-card{padding:24px}.gate-card h1{font-size:28px}.form-grid{grid-template-columns:1fr}.receipt-amount .money{font-size:40px}.receipt-data>div{gap:12px}.fee-line .money{white-space:normal}}@media (prefers-reduced-motion:reduce){.bx.is-packing,.bx.is-packing *,.skeleton{animation:none}.bx.is-packing .bx-t{stroke-dashoffset:0}}@media print{.receipt{background:var(--surface);color:var(--text)}.receipt-dialog[open]{border-radius:0;position:static}.receipt-dialog .fee-line{display:flex}.receipt-dialog table{display:table}.receipt-dialog thead{display:table-header-group}}.fee-cell{align-items:center;gap:12px;display:flex}.fee-cell strong{flex:1}.child-status{gap:8px;display:flex}.searchbox input{padding-left:44px}.field input[type=date],.field input[inputmode=decimal],.nowrap{font-family:var(--font-num);font-variant-numeric:tabular-nums}.receipt:has(.bx.is-packing){animation:packed-ring .6s var(--ease-out) .38s}@keyframes packed-ring{0%{box-shadow:0 0 0 0 var(--paid-tint)}to{box-shadow:0 0 0 12px #0000}}@media (prefers-reduced-motion:reduce){.receipt:has(.bx.is-packing){animation:none}}body{font:var(--weight-regular) var(--text-md)/var(--lh-md) var(--font-ui)}a{font-weight:var(--weight-medium);text-decoration:none}a:hover{text-decoration:underline}:is(button,a,input,select,textarea,summary,[tabindex]):focus-visible{box-shadow:var(--focus-ring);outline:none}.overline{font:var(--weight-bold) var(--text-xs)/var(--lh-xs) var(--font-ui);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-muted)}.wm{letter-spacing:-.035em;align-items:baseline}.wm .wm-o{align-self:baseline;width:.56em;height:.56em;margin:0 .035em 0 .03em;transform:translateY(.035em)}.btn{height:var(--control-h);min-height:0;padding:0 var(--space-3);font:var(--weight-bold) var(--text-md)/1 var(--font-ui);white-space:nowrap;transition:background var(--dur-fast),border-color var(--dur-fast),transform var(--dur-fast);border:1px solid #0000;text-decoration:none!important}.btn:active:enabled,.btn[href]:active{transform:translateY(1px)}.btn.secondary{border-color:var(--line-strong)}.btn.ghost{color:var(--primary-text);background:0 0}.btn.ghost:hover:enabled,.btn.ghost[href]:hover{background:var(--primary-tint)}.btn.danger:hover:enabled{background:var(--danger);filter:brightness(.92)}.btn.sm{height:var(--control-h-sm);padding:0 var(--space-2);font-size:var(--text-sm);position:relative}.btn.sm:before{content:"";height:48px;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.btn:disabled,.btn[aria-disabled=true]{opacity:.45;cursor:not-allowed}.btn svg{width:20px;height:20px}.text-btn,.table-link{font:var(--weight-bold) var(--text-sm)/var(--lh-sm) var(--font-ui);color:var(--primary-text);background:0 0;padding:0}.text-btn:hover:enabled,.table-link:hover:enabled{text-decoration:underline}.icon-btn{color:var(--text-muted)}.icon-btn:hover:enabled{background:var(--surface-sunk);color:var(--text)}.field{gap:var(--space-1);flex-direction:column;display:flex}.field label{font:var(--weight-bold) var(--text-sm)/var(--lh-sm) var(--font-ui);color:var(--text)}.field input,.field select,.field textarea{height:var(--control-h);min-height:0;padding:0 var(--space-2);border:1px solid var(--line-strong);border-radius:var(--radius-control);background:var(--surface);color:var(--text);font:var(--weight-medium) var(--text-md)/1 var(--font-ui);transition:border-color var(--dur-fast),box-shadow var(--dur-fast)}.field input[type=file]{height:auto;padding:12px var(--space-2)}.field textarea{height:96px;padding:12px var(--space-2);line-height:var(--lh-md);resize:none}.field input:hover:not(:disabled),.field select:hover:not(:disabled),.field textarea:hover:not(:disabled){border-color:var(--line-strong)}.field :is(input,select,textarea):focus-visible{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 22%,transparent)}.field :is(input,select,textarea)[aria-invalid=true]{border-color:var(--overdue);box-shadow:0 0 0 3px color-mix(in srgb,var(--overdue) 15%,transparent)}.field input::placeholder,.field textarea::placeholder{color:var(--text-muted);font-weight:var(--weight-regular)}.field input:disabled,.field select:disabled,.field textarea:disabled{background:var(--surface-sunk);color:var(--text-muted);border-color:#0000}.field .hint{font-size:var(--text-sm);line-height:var(--lh-sm);color:var(--text-muted)}.amount-control>input{height:auto;padding:var(--space-2) var(--space-2) var(--space-2) 48px;font:var(--weight-bold) 40px/48px var(--font-num)}.amount-control>span{top:var(--space-2);left:var(--space-2);font:var(--weight-medium) 28px/48px var(--font-num);color:var(--text-muted)}.quick-amounts .btn.sm{border-radius:var(--radius-pill);font-family:var(--font-num);padding:0 14px}.banner,.form-error,.notice{padding:var(--space-2);border-radius:var(--radius-control);font:var(--weight-regular) var(--text-sm)/var(--lh-sm) var(--font-ui);color:var(--text);background:var(--primary-tint);border:0;align-items:flex-start;gap:12px;display:flex}.notice{display:block}.banner svg,.form-error svg,.notice svg{flex:none;width:20px;height:20px;margin-top:0}.banner b,.notice>strong:first-child{font-size:var(--text-md);line-height:var(--lh-md);margin-bottom:2px;display:block}.form-error,.error-banner{background:var(--overdue-tint);color:var(--text);font-weight:var(--weight-medium)}.form-error svg,.error-banner svg{color:var(--overdue-text)}.notice{background:var(--due-tint)}.banner .text-btn{min-height:0;margin-left:auto}.banner>.chip{flex:none}.success-banner{z-index:80;width:max-content;max-width:min(420px,100vw - 32px);padding:12px var(--space-2);background:var(--inverse);color:var(--on-inverse);font-weight:var(--weight-medium);box-shadow:var(--shadow-overlay);animation:toast-rise var(--dur-base) var(--ease-out);align-items:center;margin:0;position:fixed;bottom:32px;left:50%;transform:translate(-50%)}.success-banner svg{color:var(--paid)}.success-banner .icon-btn{width:32px;height:32px;color:inherit;margin:-4px -8px -4px 0}.success-banner .icon-btn svg{color:inherit}.success-banner .icon-btn:hover:enabled{background:color-mix(in srgb,var(--on-inverse) 12%,transparent);color:inherit}@keyframes toast-rise{0%{opacity:0;transform:translate(-50%,12px)}}.panel{box-shadow:var(--shadow)}.panel-head{justify-content:space-between;align-items:center;gap:var(--space-2);min-height:64px;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--line);display:flex}.panel-head:not(.spaced){flex-direction:column;justify-content:center;align-items:flex-start;gap:0}.panel-head h2{font:var(--weight-bold) var(--text-h3)/var(--lh-h3) var(--font-ui);letter-spacing:0}.panel-head p{font-size:var(--text-sm);line-height:var(--lh-sm);color:var(--text-muted);margin-top:2px}.panel-head .text-btn{min-height:0}.metrics{gap:var(--space-3);margin-bottom:0}.metric{gap:var(--space-1);padding:var(--space-3);border:1px solid var(--line);flex-direction:column;display:flex}.metric>.spaced{align-items:center}.metric-label{font:var(--weight-bold) var(--text-xs)/var(--lh-xs) var(--font-ui);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-muted)}.metric-value{font:var(--weight-bold) var(--amount-lg)/var(--lh-amount-lg) var(--font-num);letter-spacing:-.01em;margin:0}.metric-foot{font-size:var(--text-sm);line-height:var(--lh-sm);color:var(--text-muted);margin:0}.stat-icon{border-radius:var(--radius-control);flex:none;place-items:center;width:40px;height:40px;display:grid}.stat-icon svg{width:20px;height:20px}.stat-icon--paid{background:var(--paid-tint);color:var(--paid-text)}.stat-icon--due{background:var(--due-tint);color:var(--due-text)}.stat-icon--overdue{background:var(--overdue-tint);color:var(--overdue-text)}.stat-icon--brand{background:var(--primary-tint);color:var(--primary-text)}.table-note,.quiet-note{padding:var(--space-2) var(--space-3);font-size:var(--text-sm);line-height:var(--lh-sm);color:var(--text-muted);border-top:1px solid var(--line)}table{border-collapse:separate;border-spacing:0;font-size:var(--text-sm)}th{padding:12px var(--space-2);font:var(--weight-bold) var(--text-xs)/var(--lh-xs) var(--font-ui);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-muted);background:var(--surface-sunk);border-bottom:1px solid var(--line)}td{height:64px;padding:12px var(--space-2);border-bottom:1px solid var(--line)}:is(th,td):first-child{padding-left:var(--space-3)}:is(th,td):last-child{padding-right:var(--space-3)}tbody tr:hover{background:0 0}tbody tr:hover td{background:var(--surface-sunk)}.cell-meta,.student-cell small{font-size:var(--text-sm);line-height:var(--lh-sm);margin-top:0}.student-cell{gap:var(--space-2)}.student-cell strong{font-weight:var(--weight-bold)}.table-scroll{border-radius:0 0 var(--radius-card) var(--radius-card)}.payment-row{gap:var(--space-2);min-height:64px;padding:12px var(--space-3)}.payment-row .bx{width:28px;height:28px}.payment-name strong{font-size:var(--text-md);line-height:var(--lh-md);font-weight:var(--weight-bold)}.payment-name small{font-size:var(--text-sm);line-height:var(--lh-sm);margin-top:0}.payment-row>.money{font:var(--weight-bold) var(--text-md)/var(--lh-md) var(--font-num)}.fee-line{gap:var(--space-2);min-height:72px;padding:var(--space-2);font-size:var(--text-md)}.fee-line .bx{width:32px;height:32px}.fee-line strong{font-size:var(--text-md);line-height:var(--lh-md)}.fee-line small{font-size:var(--text-sm);line-height:var(--lh-sm);margin-top:0}.fee-line>.money{font:var(--weight-bold) var(--text-md)/var(--lh-md) var(--font-num)}.fee-box>div:not(.fee-box-amount){flex:1;min-width:0}.fee-box>div:not(.fee-box-amount)>:is(strong,small){white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.fee-box-amount{gap:4px;flex:none!important}.fee-box-amount .chip{height:24px;padding:0 10px 0 6px}.receipt .fee-line{gap:12px;min-height:0;padding:8px 0}.receipt .fee-line .bx{width:24px;height:24px}.allocation-preview{border-radius:var(--radius-card)}.allocation-preview .fee-line{border-radius:0}.allocation-heading{padding:12px var(--space-2)}.allocation-heading h3{font:var(--weight-bold) var(--text-xs)/var(--lh-xs) var(--font-ui);letter-spacing:var(--tracking-caps);text-transform:uppercase;color:var(--text-muted)}.segmented{border:0;gap:4px;padding:4px}.segmented button{height:40px;min-height:0;padding:0 var(--space-2);font:var(--weight-bold) var(--text-sm)/1 var(--font-ui);color:var(--text-muted);border-radius:9px;position:relative}.segmented button:before{content:"";height:48px;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.segmented button[aria-pressed=true]{box-shadow:0 1px 3px #0e15301f}.payment-tabs{scrollbar-width:none;gap:4px;margin-bottom:0}.payment-tabs button{height:48px;min-height:0;padding:0 var(--space-2);font:var(--weight-bold) 15px/1 var(--font-ui);color:var(--text-muted);margin-bottom:-1px}.payment-tabs button:hover{color:var(--text)}.empty{align-items:center;gap:var(--space-2);padding:var(--space-6) var(--space-3);flex-direction:column;display:flex}.empty-art{width:120px;height:96px;margin:0}.empty h3{font:var(--weight-bold) var(--text-h3)/var(--lh-h3) var(--font-ui);letter-spacing:0;margin:0}.empty p{max-width:360px;font-size:var(--text-md);line-height:var(--lh-md);color:var(--text-muted);margin:0}.empty .btn{margin-top:0}.avatar{font:var(--weight-bold) var(--text-sm)/1 var(--font-num)}dialog{border-radius:var(--radius-card);box-shadow:var(--shadow-overlay);border:0;max-width:560px}dialog.dialog-wide{max-width:880px}dialog[open]{animation:modal-rise var(--dur-base) var(--ease-out)}@keyframes modal-rise{0%{opacity:0;transform:translateY(12px)}}.modal-head{padding:var(--space-3) var(--space-3) var(--space-2);border-bottom:0}.modal-head .spaced{align-items:flex-start}.modal-head h2{font:var(--weight-bold) var(--text-h3)/var(--lh-h3) var(--font-ui);letter-spacing:0}.modal-head p{font-size:var(--text-sm);line-height:var(--lh-sm);color:var(--text-muted);margin-top:4px}.modal-head .icon-btn{margin:-8px -8px 0 0}.modal-body{gap:var(--space-2);padding:0 var(--space-3) var(--space-3);flex-direction:column;display:flex}.modal-foot{gap:var(--space-1);padding:var(--space-2) var(--space-3);border-top:1px solid var(--line);background:var(--surface)}.sidebar{padding:var(--space-2);gap:var(--space-1);flex-direction:column;display:flex}.sidebar .brand{height:48px;margin-bottom:var(--space-1);padding:0 12px}.institution-side{display:none}.admin-nav{gap:4px}.admin-nav button{height:48px;min-height:0;font:var(--weight-bold) 15px/1 var(--font-ui);color:var(--text-muted);gap:12px;padding:0 12px}.admin-nav button:hover{color:var(--text)}.sidebar-bottom{margin-top:auto;padding-top:0}.account-menu summary{background:var(--surface);gap:12px;padding:8px}.account-menu summary:hover{background:var(--surface-sunk)}.account-menu summary>div{flex:1}.account-menu summary strong{font-size:var(--text-sm);line-height:var(--lh-sm);white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.account-menu summary small{line-height:var(--lh-xs)}.account-menu summary>svg{color:var(--text-muted);flex:none;width:18px;height:18px}.account-popover{padding:var(--space-1);box-shadow:var(--shadow-overlay);min-width:260px}.account-popover :is(button,a){height:44px;min-height:0;font:var(--weight-medium) var(--text-sm)/1 var(--font-ui);border-radius:10px;padding:0 12px}.app-main{background:var(--bg);flex-direction:column;min-width:0;display:flex}.topbar{align-items:center;gap:var(--space-2);height:72px;padding:0 var(--space-4);background:var(--surface);border-bottom:1px solid var(--line);z-index:30;display:flex;position:sticky;top:0}.topbar .grow{flex:1}.topbar .workspace-search{background:var(--surface-sunk);width:320px;max-width:100%;height:44px;color:var(--text-muted);font:var(--weight-medium) var(--text-sm)/1 var(--font-ui);border:0;justify-content:flex-start;gap:8px;padding:0 12px}.topbar .workspace-search:hover:enabled{background:var(--surface-sunk);color:var(--text)}.topbar .workspace-search svg{width:18px;height:18px}.topbar .text-btn{min-height:48px;color:var(--text-muted);font-weight:var(--weight-medium);gap:6px}.topbar .text-btn:hover:enabled{color:var(--text);text-decoration:none}.topbar .text-btn svg{width:18px;height:18px}.kbd{border:1px solid var(--line-strong);min-width:22px;height:22px;font:var(--weight-bold) 11px/1 var(--font-num);color:var(--text-muted);border-bottom-width:2px;border-radius:6px;place-items:center;margin-left:auto;padding:0 6px;display:inline-grid}.admin-main{gap:var(--space-3);flex-direction:column;max-width:1200px;margin:0 auto;padding:32px 40px 64px;display:flex}.admin-main>*{margin-top:0;margin-bottom:0}.page-heading{justify-content:space-between;align-items:flex-end;gap:var(--space-2);flex-wrap:wrap;margin-bottom:0;display:flex}.page-heading h1{font:var(--weight-bold) var(--text-h1)/var(--lh-h1) var(--font-ui);letter-spacing:var(--tracking-tight)}.page-heading p{font-size:var(--text-md);line-height:var(--lh-md);color:var(--text-muted);margin-top:4px}.heading-actions{gap:var(--space-1)}.content-grid{gap:var(--space-3);grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}.setup-checklist li{gap:var(--space-2);padding:var(--space-2) var(--space-3);border-top:0;border-bottom:1px solid var(--line)}.setup-checklist li:last-child{border-bottom:0}.setup-checklist li.current{background:color-mix(in srgb,var(--primary-tint) 50%,var(--surface))}.setup-checklist li.complete strong{text-decoration:line-through;-webkit-text-decoration-color:var(--text-muted);text-decoration-color:var(--text-muted);color:var(--text-muted)}.setup-checklist li p{font-size:var(--text-sm);line-height:var(--lh-sm);margin-top:0}.setup-checklist .bx{width:28px;height:28px}.setup-count{font:var(--weight-bold) var(--amount-md)/var(--lh-amount-md) var(--font-num)}.row-amount{flex-direction:column;align-items:flex-end;gap:4px;margin-left:auto;display:flex}.row-amount .chip{height:24px;padding:0 10px 0 6px}.side-stack{gap:var(--space-3);flex-direction:column;min-width:0;display:flex}.list-button{width:100%;color:var(--text);text-align:left;background:0 0;border-radius:0}.list-button:hover{background:var(--surface-sunk)}.list-button .payment-name{flex:1}.list-button>.money{margin-left:auto}.panel-foot{padding:var(--space-2) var(--space-3);border-top:1px solid var(--line)}.setup-done{align-items:center;gap:var(--space-2);padding:var(--space-2);display:flex}.setup-done p{font-size:var(--text-sm);line-height:var(--lh-sm);color:var(--text-muted)}.filterbar{padding:var(--space-2) var(--space-3);gap:12px}.searchbox svg{width:20px;height:20px;top:50%;left:16px;transform:translateY(-50%)}.table-summary{font-size:var(--text-sm)}.auth{background:var(--bg);grid-template-columns:1fr 1fr;min-height:100dvh;display:grid}.auth-l{flex-direction:column;padding:32px 48px;display:flex}.auth-l>.brand-link{align-self:flex-start;text-decoration:none!important}.auth-form{gap:var(--space-3);flex-direction:column;width:100%;max-width:420px;margin:auto;padding:40px 0;display:flex}.auth-form h1{font:var(--weight-bold) var(--text-h2)/var(--lh-h2) var(--font-ui);letter-spacing:-.01em}.auth-form h1+p{color:var(--text-muted);margin-top:6px}.auth-form>h1+p,.auth-form>.overline+h1{margin-top:-18px}.auth-form--wide{max-width:560px}.auth-form form{gap:var(--space-3);flex-direction:column;display:flex}.auth-form .recovery-link{align-self:center;min-height:0}.neutral-banner{background:var(--surface-sunk);color:var(--text-muted)}.auth-form .login-form,.auth-form .login-form fieldset{gap:var(--space-3);flex-direction:column;margin:0;display:flex}.auth-foot{font-size:var(--text-xs);line-height:var(--lh-xs);color:var(--text-muted)}.auth-r{justify-content:center;gap:var(--space-3);background:var(--primary);color:var(--on-primary);flex-direction:column;padding:64px;display:flex;position:relative;overflow:hidden}.auth-r>.bx{opacity:.14;color:var(--fb-ink);position:absolute;top:-60px;right:-60px}.auth-r>.bx .bx-b,.auth-r>.bx .bx-l{fill:currentColor}.auth-r>.bx .bx-t{stroke-dashoffset:0}.auth-r h2{max-width:440px;font:var(--weight-bold) 36px/44px var(--font-ui);letter-spacing:-.02em}.auth-r p{max-width:440px;color:color-mix(in srgb,var(--on-primary) 82%,transparent);font-size:17px;line-height:26px}.auth-card{gap:var(--space-1);max-width:420px;padding:var(--space-2);background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:var(--shadow);flex-direction:column;display:flex}.auth-card .fee-line{border:1px solid var(--line);border-radius:var(--radius-card)}.auth-card .fee-box--paid{background:color-mix(in srgb,var(--paid-tint) 45%,var(--surface))}.label-row{justify-content:space-between;align-items:center;gap:var(--space-1);display:flex}.label-row .table-link{min-height:0}@media (max-width:1000px){.auth{grid-template-columns:1fr}.auth-r{display:none}}@media (max-width:767px){.topbar{display:none}.sidebar{height:64px;padding:0 8px 0 16px}.sidebar .brand{height:auto;margin:0;padding:0}.admin-nav{height:80px;padding:8px 8px max(12px,env(safe-area-inset-bottom));gap:0}.admin-nav button{height:auto;font:var(--weight-bold) var(--text-xs)/var(--lh-xs) var(--font-ui);flex:1;gap:4px;padding:0;background:0 0!important}.admin-nav button>svg{box-sizing:content-box;width:22px;height:22px;transition:background var(--dur-base);border-radius:12px;padding:5px 17px}.admin-nav button[aria-current=page]{color:var(--text)}.admin-nav button[aria-current=page]>svg{background:var(--primary-tint);color:var(--primary-text)}.admin-main{gap:var(--space-2);padding:16px 16px 112px}.page-heading h1{font-size:var(--text-h2);line-height:var(--lh-h2)}.metrics{gap:var(--space-2)}.auth-l{padding:24px 16px}.auth-form{padding:32px 0}.success-banner{bottom:96px}}
