:root{color-scheme:light dark}*{box-sizing:border-box}html,body{margin:0;min-height:100%;overflow-x:clip}body{background:radial-gradient(circle at 10% 5%,rgba(255,167,71,.2),transparent 30%),radial-gradient(circle at 88% 10%,rgba(22,163,138,.2),transparent 28%),linear-gradient(180deg,#f7f2e9,#f4f7fa 48%,#eef3ef)}.app-layout-body,.app-layout-main{min-height:100vh;display:flex;flex-direction:column}html[data-mantine-color-scheme=dark] body{background:radial-gradient(circle at 12% 7%,rgba(255,167,71,.1),transparent 34%),radial-gradient(circle at 84% 8%,rgba(22,163,138,.12),transparent 30%),linear-gradient(180deg,#101720,#111b26 45%,#0d141d)}a{color:inherit}.site-footer{border-top:1px solid color-mix(in srgb,var(--mantine-color-default-border) 82%,transparent);background:color-mix(in srgb,var(--mantine-color-body) 92%,transparent)}.site-footer__inner{max-width:72rem;margin:0 auto;padding:.85rem 1rem;display:flex;justify-content:space-between;align-items:center;font-size:.9rem;color:var(--mantine-color-dimmed)}@media(max-width:48em){.landing-cta-button{width:100%}}.error-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:clamp(1.25rem,4vw,3rem)}.error-card{width:min(720px,100%);border:1px solid color-mix(in srgb,var(--mantine-color-default-border) 82%,transparent);border-radius:28px;padding:clamp(1.25rem,4vw,2.25rem);background:radial-gradient(circle at 14% 12%,rgba(255,167,71,.18),transparent 44%),radial-gradient(circle at 88% 18%,rgba(22,163,138,.14),transparent 42%),color-mix(in srgb,var(--mantine-color-body) 92%,transparent);box-shadow:0 20px 48px #00000029}.error-eyebrow{margin:0;text-transform:uppercase;font-size:.78rem;font-weight:800;letter-spacing:.1em;color:var(--mantine-color-dimmed)}.error-title{margin:.2rem 0 0;font-family:Fraunces,Iowan Old Style,Palatino,serif;font-size:clamp(3.2rem,12vw,5.5rem);line-height:.95}.error-subtitle{margin:.5rem 0 0;font-size:clamp(1.15rem,3vw,1.45rem);font-weight:700}.error-copy{margin:.65rem 0 0;color:var(--mantine-color-dimmed);max-width:52ch}.error-actions{margin-top:1.2rem;display:flex;flex-wrap:wrap;gap:.55rem}.error-action{display:inline-flex;align-items:center;justify-content:center;padding:.55rem .9rem;border-radius:999px;border:1px solid color-mix(in srgb,var(--mantine-color-default-border) 84%,transparent);text-decoration:none;font-weight:600;transition:transform .12s ease,background-color .12s ease}.error-action:hover{transform:translateY(-1px)}.error-action--primary{border-color:transparent;background:var(--mantine-primary-color-filled);color:var(--mantine-color-white)}.surface-soft{background:var(--mantine-color-gray-0)}html[data-mantine-color-scheme=dark] .surface-soft{background:var(--mantine-color-dark-6)}.mobile-bottom-nav{display:block;position:fixed;left:0;right:0;bottom:0;z-index:1000;border:1px solid color-mix(in srgb,var(--mantine-color-default-border) 78%,transparent);border-bottom:0;border-radius:8% 8% 0 0/18% 18% 0 0;background:color-mix(in srgb,var(--mantine-color-body) 86%,transparent);backdrop-filter:blur(18px) saturate(130%);-webkit-backdrop-filter:blur(18px) saturate(130%);box-shadow:0 -10px 28px #0000002e}.mobile-bottom-nav__inner{height:100%;align-items:stretch;min-height:calc(clamp(4.8rem,12vw,6rem) + env(safe-area-inset-bottom,0px));padding:clamp(.3rem,1.2vw,.55rem) clamp(.35rem,1.4vw,.7rem) calc(env(safe-area-inset-bottom,0px) + clamp(.3rem,1.2vw,.55rem))}.mobile-bottom-nav__item{display:flex;position:relative;flex:1;min-width:0;flex-direction:column;align-items:center;justify-content:center;gap:clamp(.14rem,.55vw,.28rem);padding-block:clamp(.48rem,1.8vw,.8rem);padding-inline:clamp(.3rem,1.2vw,.7rem);height:100%;border-radius:12%/18%;color:var(--mantine-color-dimmed);font-size:var(--mantine-font-size-xs);font-weight:600;transition:background-color .12s ease,color .12s ease}.mobile-bottom-nav__item[data-active=true]{color:var(--mantine-color-text);background:color-mix(in srgb,var(--mantine-primary-color-light) 66%,transparent);border-radius:10%/16%}html[data-mantine-color-scheme=dark] .mobile-bottom-nav__item[data-active=true]{background:color-mix(in srgb,var(--mantine-primary-color-filled) 16%,transparent)}.mobile-sheet-backdrop{position:fixed;inset:0;z-index:980;border:0;padding:0;margin:0;background:color-mix(in srgb,var(--mantine-color-black) 50%,transparent);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.mobile-sheet{position:fixed;left:0;right:0;bottom:0;z-index:990;height:min(88vh,calc(100dvh - env(safe-area-inset-top,0px) - .5rem));max-height:none;overflow-y:auto;padding:.35rem .75rem calc(env(safe-area-inset-bottom,0px) + 1rem);border-top-left-radius:20px;border-top-right-radius:20px;border:1px solid color-mix(in srgb,var(--mantine-color-default-border) 78%,transparent);border-bottom:0;background:color-mix(in srgb,var(--mantine-color-body) 95%,transparent);box-shadow:0 -24px 44px #00000047}.mobile-sheet__notch-button{display:flex;width:100%;justify-content:center;align-items:center;border:0;background:transparent;padding:.3rem 0 .45rem;margin:0;cursor:grab}.mobile-sheet__notch-button:active{cursor:grabbing}.mobile-sheet__notch{display:block;width:3rem;height:.34rem;border-radius:999px;background:color-mix(in srgb,var(--mantine-color-dimmed) 62%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--mantine-color-default-border) 86%,transparent)}.workspace-main{overflow-x:clip}.workspace-navbar__toggle{display:inline-flex;align-items:center;justify-content:center;width:1.9rem;height:1.9rem;border-radius:8px;color:var(--mantine-color-dimmed);border:1px solid color-mix(in srgb,var(--mantine-color-default-border) 82%,transparent);background:color-mix(in srgb,var(--mantine-color-body) 88%,transparent);transition:background-color .12s ease,color .12s ease,border-color .12s ease}.workspace-navbar__toggle:hover{color:var(--mantine-color-text);border-color:color-mix(in srgb,var(--mantine-primary-color-filled) 30%,var(--mantine-color-default-border));background:color-mix(in srgb,var(--mantine-primary-color-light) 52%,transparent)}.workspace-navbar__command-button{width:2.4rem;align-self:center}.workspace-main-content{width:100%;max-width:100%;overflow-x:clip;padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}.workspace-page-container{max-width:100%;padding-inline:clamp(.65rem,1.8vw,1.5rem);padding-top:clamp(.45rem,1.2vh,.9rem);padding-bottom:clamp(.8rem,2vh,1.35rem)}.app-global-loader{position:fixed;inset:0;z-index:2200;background:radial-gradient(circle at 10% 5%,rgba(255,167,71,.18),transparent 30%),radial-gradient(circle at 88% 10%,rgba(22,163,138,.18),transparent 28%),color-mix(in srgb,var(--mantine-color-body) 94%,transparent);backdrop-filter:blur(4px) saturate(120%);-webkit-backdrop-filter:blur(4px) saturate(120%)}.workspace-shell-footer{margin-top:auto;padding-top:.6rem;border-top:1px solid color-mix(in srgb,var(--mantine-color-default-border) 82%,transparent)}.workspace-shell-footer--mobile{margin-top:.8rem;padding-top:.8rem}@media(max-width:62em){.workspace-main-content{padding-bottom:calc(env(safe-area-inset-bottom,0px) + 108px)}}@media(min-width:62em){.workspace-page-container{padding-inline:clamp(.9rem,2vw,1.85rem);padding-top:clamp(.6rem,1.1vh,1rem);padding-bottom:clamp(.95rem,2.2vh,1.5rem)}}@media(min-width:62em){.mobile-bottom-nav,.mobile-sheet,.mobile-sheet-backdrop{display:none}}.cmdk-dialog{position:fixed;inset:0;z-index:380;display:flex;justify-content:center;align-items:flex-start;padding-top:min(14vh,120px)}.cmdk-overlay{position:fixed;inset:0;background:color-mix(in srgb,var(--mantine-color-black) 48%,transparent);backdrop-filter:blur(5px)}.cmdk-surface{position:relative;width:min(760px,calc(100vw - 2rem));background:var(--mantine-color-body);border:1px solid var(--mantine-color-default-border);border-radius:16px;overflow:hidden;box-shadow:0 24px 48px #00000038}.cmdk-input{width:100%;border:0;border-bottom:1px solid var(--mantine-color-default-border);background:transparent;color:var(--mantine-color-text);outline:none;padding:.9rem 1rem;font:inherit}.cmdk-input::placeholder{color:var(--mantine-color-dimmed)}.cmdk-list{max-height:min(70vh,520px);overflow-y:auto;padding:.5rem}.cmdk-empty{color:var(--mantine-color-dimmed);padding:.8rem .75rem;font-size:.92rem}.cmdk-group{margin-bottom:.3rem}.cmdk-group [cmdk-group-heading]{color:var(--mantine-color-dimmed);font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;font-weight:700;padding:.45rem .65rem}.cmdk-item{display:flex;align-items:center;justify-content:space-between;border-radius:10px;padding:.55rem .7rem;gap:.75rem;cursor:pointer;user-select:none}.cmdk-item[data-selected=true]{background:var(--mantine-color-default-hover)}.programs-grid{--ag-font-family: var(--mantine-font-family);--ag-font-size: var(--mantine-font-size-sm);--ag-foreground-color: var(--mantine-color-text);--ag-background-color: var(--mantine-color-body);--ag-header-background-color: color-mix(in srgb, var(--mantine-color-default) 55%, transparent);--ag-header-foreground-color: var(--mantine-color-text);--ag-border-color: var(--mantine-color-default-border);--ag-row-border-color: color-mix(in srgb, var(--mantine-color-default-border) 80%, transparent);--ag-secondary-border-color: color-mix(in srgb, var(--mantine-color-default-border) 74%, transparent);--ag-odd-row-background-color: color-mix(in srgb, var(--mantine-color-default) 35%, transparent);--ag-row-hover-color: color-mix(in srgb, var(--mantine-primary-color-light) 32%, transparent);--ag-selected-row-background-color: color-mix(in srgb, var(--mantine-primary-color-light) 40%, transparent);--ag-input-background-color: var(--mantine-color-body);--ag-input-border-color: var(--mantine-color-default-border);--ag-input-focus-border-color: var(--mantine-primary-color-filled);--ag-checkbox-unchecked-color: var(--mantine-color-dimmed);--ag-checkbox-checked-color: var(--mantine-primary-color-filled);--ag-control-panel-background-color: var(--mantine-color-body);--ag-panel-background-color: var(--mantine-color-body);--ag-subheader-background-color: color-mix(in srgb, var(--mantine-color-default) 45%, transparent);--ag-borders: solid 1px;border:1px solid var(--mantine-color-default-border);border-radius:var(--mantine-radius-lg);overflow:hidden;background:var(--mantine-color-body);box-shadow:var(--mantine-shadow-xs)}.programs-grid .ag-root-wrapper{border:0}.programs-grid .ag-header{border-bottom:1px solid var(--mantine-color-default-border)}.programs-grid .ag-header-cell-label{font-weight:700;font-size:var(--mantine-font-size-sm)}.programs-grid .ag-header-cell-menu-button,.programs-grid .ag-header-cell-filter-button{border-radius:8px;opacity:.9;transition:background-color .12s ease,opacity .12s ease}.programs-grid .ag-header-cell-menu-button:hover,.programs-grid .ag-header-cell-filter-button:hover{opacity:1;background:color-mix(in srgb,var(--mantine-primary-color-light) 36%,transparent)}.programs-grid .ag-row{transition:background-color .12s ease}.programs-grid .ag-row-hover{background:color-mix(in srgb,var(--mantine-primary-color-light) 30%,transparent)!important}.programs-grid .ag-cell{display:flex;align-items:center;line-height:1.3}.programs-grid .ag-floating-filter-body input{border-radius:8px;border:1px solid var(--mantine-color-default-border);background:var(--mantine-color-body);color:var(--mantine-color-text);min-height:30px;padding-inline:8px}.programs-grid .ag-floating-filter-body input:focus-visible{outline:none;border-color:var(--mantine-primary-color-filled);box-shadow:0 0 0 1px var(--mantine-primary-color-filled)}.programs-grid .ag-paging-panel{border-top:1px solid var(--mantine-color-default-border);min-height:42px;font-size:var(--mantine-font-size-xs);color:var(--mantine-color-dimmed)}html[data-mantine-color-scheme=dark] .programs-grid{--ag-foreground-color: var(--mantine-color-gray-1);--ag-background-color: var(--mantine-color-dark-7);--ag-header-background-color: color-mix(in srgb, var(--mantine-color-dark-6) 88%, transparent);--ag-border-color: color-mix(in srgb, var(--mantine-color-dark-4) 85%, transparent);--ag-row-border-color: color-mix(in srgb, var(--mantine-color-dark-4) 72%, transparent);--ag-secondary-border-color: color-mix(in srgb, var(--mantine-color-dark-4) 72%, transparent);--ag-odd-row-background-color: color-mix(in srgb, var(--mantine-color-dark-6) 88%, transparent);--ag-row-hover-color: color-mix(in srgb, var(--mantine-primary-color-filled) 16%, transparent);--ag-selected-row-background-color: color-mix(in srgb, var(--mantine-primary-color-filled) 20%, transparent);--ag-input-background-color: var(--mantine-color-dark-6);--ag-input-border-color: color-mix(in srgb, var(--mantine-color-dark-3) 78%, transparent);--ag-control-panel-background-color: var(--mantine-color-dark-7);--ag-panel-background-color: var(--mantine-color-dark-7);--ag-subheader-background-color: color-mix(in srgb, var(--mantine-color-dark-6) 90%, transparent);border-color:color-mix(in srgb,var(--mantine-color-dark-4) 82%,transparent);background:var(--mantine-color-dark-7)}html[data-mantine-color-scheme=dark] .programs-grid .ag-row-hover{background:color-mix(in srgb,var(--mantine-primary-color-filled) 14%,transparent)!important}html[data-mantine-color-scheme=dark] .programs-grid .ag-header-cell-menu-button:hover,html[data-mantine-color-scheme=dark] .programs-grid .ag-header-cell-filter-button:hover{background:color-mix(in srgb,var(--mantine-primary-color-filled) 22%,transparent)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
