:root{--brand-primary:#c04000;--brand-cta:#f04b0c;--brand-on-primary:#fff;--brand-navigation:#111b2e;--brand-on-navigation:#fff}@font-face{font-family:InterVariable;src:url(/fonts/InterVariable.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}:root{color:var(--ink);background:var(--page);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;text-rendering:optimizelegibility;font-variation-settings:"opsz" 20;--white:#fff;--page:color-mix(in srgb, var(--brand-primary) 1.5%, #fdfbf9);--page-deep:color-mix(in srgb, var(--brand-primary) 5%, #f9f5f1);--sidebar-surface:color-mix(in srgb, var(--brand-primary) 0.5%, #fefdfd);--ink:color-mix(in srgb, var(--brand-primary) 5%, #171411);--ink-soft:color-mix(in srgb, var(--brand-primary) 10%, #4b453c);--ink-muted:color-mix(in srgb, var(--brand-primary) 6%, #6b6459);--line:color-mix(in srgb, var(--brand-primary) 4%, #f2ede8);--line-strong:color-mix(in srgb, var(--brand-primary) 12%, #e3dad2);--accent:var(--brand-primary);--accent-vivid:var(--brand-cta,var(--brand-primary));--accent-strong:color-mix(in srgb, var(--brand-primary) 92%, black);--accent-soft:color-mix(in srgb, var(--accent-vivid) 11%, #fdf4ea);--accent-glow:color-mix(in srgb, var(--accent-vivid) 24%, transparent);--surface-dark:color-mix(in srgb, var(--brand-primary) 14%, #0d0906);--cta-gradient:linear-gradient(135deg, color-mix(in oklch, var(--accent-vivid) 74%, black) 0%, var(--accent-vivid) 62%, color-mix(in oklch, var(--accent-vivid) 80%, white) 100%);--radius-lg:18px;--radius-md:16px;--radius-sm:12px;--shadow:0 10px 26px color-mix(in srgb, var(--brand-primary) 8%, transparent);--shadow-soft:0 3px 10px color-mix(in srgb, var(--brand-primary) 7%, transparent);--shadow-lift:0 18px 42px color-mix(in srgb, var(--brand-primary) 13%, transparent);--navy-950:var(--ink);--navy-900:var(--ink);--navy-800:var(--ink-soft);--slate-700:var(--ink-soft);--slate-500:var(--ink-muted);--slate-300:var(--line-strong);--slate-200:var(--line);--slate-100:color-mix(in srgb, var(--brand-primary) 6%, #f6f1ed);--orange-700:color-mix(in srgb, var(--brand-primary) 78%, black);--orange-600:var(--accent-strong);--orange-500:var(--accent);--orange-300:color-mix(in srgb, var(--brand-primary) 44%, white);--orange-100:var(--accent-soft);--green-600:#157a55;--green-700:#0e6b49;--green-100:#e8f2ee;--red-600:#b53a2f;--red-100:#f8ebea;font-family:InterVariable,Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;min-width:320px}body{min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}button:focus-visible,a:focus-visible{outline:3px solid color-mix(in srgb, var(--brand-primary) 42%, transparent);outline-offset:3px}.app-shell{background:var(--page);min-height:100vh}.app-shell--panel{grid-template-columns:320px minmax(0,1fr);align-items:start;display:grid}.brand{color:inherit;align-items:center;gap:12px;text-decoration:none;display:inline-flex}.brand-wordmark{width:auto;max-width:100%;height:34px;display:block}.brand-wordmark--fallback{color:var(--ink);letter-spacing:.13em;align-items:center;gap:10px;font-size:17px;font-weight:900;display:inline-flex}.brand-mark-image{object-fit:cover;border-radius:12px;flex:none;width:38px;height:38px;display:block}.brand-mark{width:38px;height:38px;color:var(--brand-on-primary);background:var(--cta-gradient);box-shadow:0 7px 18px var(--accent-glow);border-radius:12px;flex:none;place-items:center;display:grid}.brand-mark span{font-size:19px;font-weight:900;line-height:1}.app-sidebar{border-right:1px solid color-mix(in srgb, var(--brand-primary) 2%, #f7f4f1);background:var(--sidebar-surface);flex-direction:column;gap:26px;height:100dvh;padding:30px 20px 20px;display:flex;position:sticky;top:0}.app-sidebar__brand{justify-items:center;padding:0;display:grid}.app-sidebar__logo{width:100%;max-width:267px;height:auto;margin:0 auto}.app-sidebar__logo.brand-wordmark--fallback{justify-content:center;font-size:34px}.app-sidebar__logo.brand-wordmark--fallback .brand-mark{width:62px;height:62px}.app-sidebar__logo.brand-wordmark--fallback .brand-mark span{font-size:30px}.app-nav{flex-direction:column;flex:1;gap:6px;min-width:0;min-height:0;display:flex;overflow-y:auto}.app-nav__item{min-height:52px;color:var(--ink-soft);text-align:left;background:0 0;border:0;border-radius:14px;align-items:center;gap:14px;padding:0 18px;font-size:15px;font-weight:700;display:flex}.app-nav__item svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:20px;height:20px}.app-nav__item:hover:not(.active){color:var(--ink);background:var(--page-deep)}.app-nav__item.active{color:var(--brand-on-primary);background:var(--cta-gradient);box-shadow:0 10px 22px var(--accent-glow)}.account-identity{gap:1px;min-width:0;display:grid}.account-identity strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.account-identity>span{color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.panel-body{flex-direction:column;min-width:0;min-height:100dvh;display:flex}.app-topbar{z-index:5;background:color-mix(in srgb, var(--page) 92%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:0;justify-content:space-between;align-items:center;gap:18px;min-height:86px;padding:10px 22px;display:flex;position:sticky;top:0}.app-topbar__side{align-items:center;gap:12px;display:flex}.page-header{flex:auto;justify-content:space-between;align-items:center;gap:16px;min-width:0;display:flex}.page-header__text{gap:1px;min-width:0;display:grid}.page-header__eyebrow{color:var(--orange-600);letter-spacing:.12em;margin:0;font-size:12px;font-weight:800;line-height:1.2}.page-header__title{color:var(--ink);letter-spacing:-.02em;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:22px;font-weight:800;line-height:1.2;overflow:hidden}.page-header__helper{color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:13px;line-height:1.25;overflow:hidden}.page-header__helper:first-letter{text-transform:uppercase}.page-header__actions{flex:none;align-items:center;gap:8px;display:flex}.page-header__actions button{white-space:nowrap;min-height:40px}.public-topbar{border-bottom:1px solid var(--line);background:var(--white);justify-content:space-between;align-items:center;gap:24px;min-height:76px;padding:0 5vw;display:flex}.public-topbar__logo{height:32px}.connection-alert{border:1px solid color-mix(in srgb, var(--red-600) 40%, transparent);color:var(--red-600);background:var(--red-100);white-space:nowrap;border-radius:999px;align-items:center;gap:8px;margin:0;padding:7px 12px;font-size:12px;font-weight:800;display:inline-flex}.connection-alert__marker{border:2px solid;border-radius:2px;flex:none;width:9px;height:9px;transform:rotate(45deg)}.account-control{border:1px solid var(--line);background:var(--white);box-shadow:var(--shadow-soft);border-radius:999px;align-items:center;gap:10px;padding:6px 6px 6px 10px;display:inline-flex}.account-control__mark{width:34px;height:34px}.account-control__demo{border:1px solid color-mix(in srgb, var(--brand-primary) 30%, transparent);color:var(--accent-strong);background:var(--accent-soft);white-space:nowrap;border-radius:999px;flex:none;align-items:center;padding:3px 9px;font-size:12px;font-weight:800;line-height:1.2;display:inline-flex}.account-control button{min-height:36px;color:var(--accent-strong);background:var(--accent-soft);border:0;border-radius:999px;align-items:center;gap:7px;padding:0 13px;font-size:12px;font-weight:800;display:inline-flex}.account-control button svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.account-control button:hover{color:var(--brand-on-primary);background:var(--cta-gradient)}.session-loading{min-height:100vh;color:var(--ink-muted);place-content:center;justify-items:center;gap:16px;display:grid}.session-loading span{border:3px solid var(--line);border-top-color:var(--accent);border-radius:50%;width:32px;height:32px;animation:.9s linear infinite spin}.login-page{background:var(--page);min-height:100vh}.login-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);min-height:100vh;display:grid}.login-intro{background:radial-gradient(circle at 12% 6%, var(--accent-glow), transparent 46%), radial-gradient(circle at 88% 92%, color-mix(in srgb, var(--brand-primary) 12%, transparent), transparent 42%), var(--page-deep);flex-direction:column;justify-content:center;padding:clamp(32px,5vw,72px) clamp(22px,5vw,76px);display:flex}.login-wordmark{align-self:flex-start;height:clamp(38px,4vw,52px);margin-bottom:clamp(26px,4vw,44px)}.login-intro h1{color:var(--ink-soft);letter-spacing:-.02em;margin-bottom:12px;font-size:clamp(19px,1.9vw,24px);font-weight:750;line-height:1.2}.login-tagline{max-width:15ch;color:var(--ink);letter-spacing:-.045em;margin-bottom:20px;font-size:clamp(32px,4.2vw,50px);font-weight:800;line-height:1.06}.login-tagline em{color:var(--accent-strong);font-style:normal}@supports ((-webkit-background-clip:text) or (background-clip:text)){.login-tagline em{background-image:var(--cta-gradient);color:#0000;-webkit-background-clip:text;background-clip:text}}.login-lead{max-width:44ch;color:var(--ink-soft);margin-bottom:26px;font-size:15px;line-height:1.6}.login-benefits{gap:14px;margin:0 0 30px;padding:0;list-style:none;display:grid}.login-benefits li{color:var(--ink);align-items:center;gap:13px;font-size:14px;font-weight:650;display:flex}.login-benefit-icon{width:38px;height:38px;color:var(--accent-strong);background:var(--white);box-shadow:var(--shadow-soft);border-radius:12px;flex:none;place-items:center;display:grid}.login-benefit-icon svg,.login-assurance-icon svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.login-access{width:min(470px,100%)}.login-quick-access,.login-access .login-form{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--white);box-shadow:var(--shadow-lift);padding:26px}.login-quick-access h2,.login-form-title{color:var(--ink);letter-spacing:-.02em;margin-bottom:6px;font-size:19px}.login-quick-access>p{color:var(--ink-muted);margin-bottom:18px;font-size:13px}.cta-button{border-radius:var(--radius-sm);width:100%;min-height:50px;color:var(--brand-on-primary);background:var(--cta-gradient);box-shadow:0 14px 28px var(--accent-glow);border:0;justify-content:center;align-items:center;padding:0 20px;font-size:14px;font-weight:800;display:inline-flex}.cta-button:hover:not(:disabled){filter:brightness(1.05)}.login-alt-account{width:100%;color:var(--ink-muted);text-underline-offset:3px;background:0 0;border:0;margin-top:12px;padding:4px;font-size:13px;font-weight:700;text-decoration:underline}.login-alt-account:hover{color:var(--accent-strong)}.login-security{max-width:52ch;color:var(--ink-muted);margin:22px 0 0;font-size:12px;line-height:1.6}.login-showcase{background:radial-gradient(circle at 78% 12%, color-mix(in srgb, var(--brand-primary) 46%, transparent), transparent 52%), radial-gradient(circle at 18% 88%, color-mix(in srgb, var(--brand-primary) 24%, transparent), transparent 46%), var(--surface-dark);flex-direction:column;justify-content:center;gap:clamp(22px,3vw,38px);padding:clamp(28px,4vw,56px) clamp(20px,4vw,56px);display:flex}.login-showcase-badge{border:1px solid color-mix(in srgb, var(--white) 18%, transparent);color:color-mix(in srgb, var(--white) 92%, transparent);background:color-mix(in srgb, var(--white) 8%, transparent);border-radius:999px;align-items:center;gap:10px;margin:0 auto;padding:10px 18px;font-size:13px;font-weight:650;display:inline-flex}.login-showcase-badge span{color:var(--orange-300);display:inline-flex}.login-showcase-badge svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.login-preview{border:1px solid color-mix(in srgb, var(--white) 14%, transparent);border-radius:var(--radius-lg);background:var(--white);grid-template-columns:168px minmax(0,1fr);display:grid;overflow:hidden;box-shadow:0 40px 90px #0000006b}.login-preview__sidebar{border-right:1px solid var(--line);background:var(--white);padding:18px 12px}.login-preview__logo{height:24px;margin:0 6px 18px}.login-preview__sidebar ul{gap:3px;margin:0;padding:0;list-style:none;display:grid}.login-preview__sidebar li{min-height:34px;color:var(--ink-muted);border-radius:11px;align-items:center;gap:9px;padding:0 10px;font-size:12px;font-weight:700;display:flex}.login-preview__sidebar li.is-active{color:var(--brand-on-primary);background:var(--cta-gradient)}.login-preview__sidebar svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.login-preview__main{background:var(--page);gap:14px;padding:18px;display:grid}.login-preview__topbar{justify-content:space-between;align-items:center;gap:12px;display:flex}.login-preview__topbar strong{color:var(--ink);font-size:15px;display:block}.login-preview__topbar span{color:var(--ink-muted);font-size:12px}.login-preview__profile{border:1px solid var(--line);background:var(--white);white-space:nowrap;border-radius:999px;padding:6px 11px;font-weight:700}.login-preview__metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;display:grid}.login-preview__metrics>div{border:1px solid var(--line);background:var(--white);border-radius:13px;gap:9px;padding:11px;display:grid}.login-preview__metrics span{color:var(--ink-muted);font-size:12px;font-weight:700;line-height:1.3}.login-preview__metrics i{background:var(--accent-soft);border-radius:5px;width:62%;height:15px}.login-preview__panel{border:1px solid var(--line);background:var(--white);border-radius:14px;padding:14px}.login-preview__panel strong{color:var(--ink);margin-bottom:11px;font-size:12px;display:block}.login-preview__panel ul{gap:10px;margin:0;padding:0;list-style:none;display:grid}.login-preview__panel li{grid-template-columns:54px minmax(0,1fr);align-items:center;gap:11px;display:grid}.login-preview__panel i{background:var(--slate-100);border-radius:5px;height:9px}.login-preview__panel li i:first-child{background:var(--accent-soft)}.login-assurances{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:0;padding:0;list-style:none;display:grid}.login-assurances li{gap:7px;display:grid}.login-assurances strong{color:color-mix(in srgb, var(--white) 96%, transparent);font-size:14px}.login-assurances li>span:last-child{color:color-mix(in srgb, var(--white) 62%, transparent);font-size:12px;line-height:1.5}.login-assurance-icon{width:34px;height:34px;color:var(--orange-300);background:color-mix(in srgb, var(--white) 10%, transparent);border-radius:11px;place-items:center;display:grid}.login-form{gap:17px;display:grid}.login-form label{gap:7px;display:grid}.login-form label>span{color:var(--slate-700);font-size:12px;font-weight:750}.login-form input{border:1px solid var(--slate-300);border-radius:var(--radius-sm);width:100%;height:48px;color:var(--ink);background:var(--white);outline:0;padding:0 14px}.login-form input:focus{border-color:var(--orange-500);box-shadow:0 0 0 4px color-mix(in srgb, var(--brand-primary) 12%, transparent)}.login-form button:not(.cta-button):not(.login-mode-switch):not(.login-secondary-button):not(.password-visibility){border-radius:var(--radius-sm);min-height:48px;color:var(--brand-on-primary);background:var(--cta-gradient);box-shadow:0 12px 24px var(--accent-glow);border:0;font-size:13px;font-weight:800}.mfa-form{gap:14px}.mfa-setup{border:1px solid var(--slate-200);background:var(--slate-100);border-radius:14px;justify-items:center;gap:13px;padding:14px;display:grid}.mfa-setup>p,.mfa-expiry,.field-help{color:var(--slate-500);margin:0;font-size:12px;line-height:1.5}.mfa-setup>p{text-align:center}.mfa-qr{border:8px solid var(--white);background:var(--white);border-radius:10px;width:188px;height:188px;display:block}.mfa-qr-fallback{color:#815116;text-align:center;background:#fff3d9;border-radius:10px;margin:4px 0;padding:12px;font-size:12px;line-height:1.5}.mfa-manual-key{text-align:center;gap:6px;width:100%;display:grid}.mfa-manual-key>span{color:var(--slate-700);font-size:12px;font-weight:750}.mfa-manual-key code{border:1px dashed var(--slate-300);color:var(--navy-900);background:var(--white);letter-spacing:.12em;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;border-radius:9px;padding:9px 10px;font-size:13px;font-weight:800}.mfa-expiry{text-align:center}.field-help{margin-top:-9px}.login-form .login-mode-switch{min-height:auto;color:var(--orange-600);box-shadow:none;background:0 0;border:0;justify-self:center;padding:2px;font-size:12px}.login-form .login-mode-switch:hover{text-decoration:underline}.login-form .login-secondary-button{border:1px solid var(--slate-300);min-height:42px;color:var(--slate-700);background:var(--white);box-shadow:none}.login-form .login-secondary-button:hover{background:var(--slate-100)}.recovery-step{gap:15px}.recovery-code-list{border:1px solid var(--slate-200);background:var(--slate-100);border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:12px;list-style:none;display:grid}.recovery-code-list li{min-width:0;color:var(--navy-900);background:var(--white);text-align:center;-webkit-user-select:all;user-select:all;border-radius:8px;padding:8px 6px;font-size:12px;font-weight:800}.recovery-code-list code{overflow-wrap:anywhere}.login-form .recovery-confirmation{cursor:pointer;align-items:flex-start;gap:10px;display:flex}.login-form .recovery-confirmation input{width:19px;height:19px;accent-color:var(--orange-500);flex:none;margin:1px 0 0}.login-form .recovery-confirmation>span{color:var(--slate-700);font-size:12px;line-height:1.5}.recovery-step button:disabled{cursor:not-allowed}.login-reset-link,.login-back-link{color:var(--orange-600);justify-self:center;font-size:12px;font-weight:750;text-decoration:none}.login-reset-link:hover,.login-back-link:hover{text-decoration:underline}.login-error{color:var(--red-600);background:var(--red-100);border-radius:10px;margin:-2px 0 0;padding:11px 12px;font-size:12px;line-height:1.45}.login-warning{color:#815116;background:#fff3d9;border-radius:10px;margin:-2px 0 0;padding:11px 12px;font-size:12px;line-height:1.45}.login-security{color:var(--slate-500);text-align:center;margin:22px 0 0;font-size:12px;line-height:1.5}.public-access-badge{border:1px solid var(--line);color:var(--accent-strong);background:var(--accent-soft);border-radius:999px;padding:7px 12px;font-size:12px;font-weight:750}.public-access-card{width:min(470px,100%)}.public-access-result{color:var(--slate-700);text-align:center;justify-items:center;gap:10px;display:grid}.public-access-result>span{width:48px;height:48px;color:var(--green-600);background:var(--green-100);border-radius:50%;place-items:center;font-size:22px;font-weight:900;display:grid}.public-access-result--error>span{color:var(--red-600);background:var(--red-100)}.public-access-result h2{color:var(--navy-900);margin:3px 0 0;font-size:21px}.public-access-result p{margin:0 0 8px;font-size:13px;line-height:1.55}.public-access-result .secondary-button{place-items:center;text-decoration:none;display:inline-grid}.password-requirements{color:var(--slate-700);background:var(--slate-100);border-radius:10px;margin:0;padding:10px 12px;font-size:12px;line-height:1.5}.login-form .password-visibility{cursor:pointer;align-items:center;gap:8px;display:flex}.login-form .password-visibility input{width:18px;height:18px;accent-color:var(--orange-500)}.login-form .password-visibility>span{font-size:12px}.status-dot{background:var(--slate-300);border-radius:50%;flex:none;width:8px;height:8px}.online .status-dot{background:#42d39b;box-shadow:0 0 0 4px #42d39b21}.offline .status-dot{background:#ff7a70;box-shadow:0 0 0 4px #ff7a701f}.checking .status-dot{background:#f7b267;animation:1.3s ease-in-out infinite pulse}.dashboard{width:min(1360px,100%);min-width:0;margin:0 auto;padding:30px 34px 56px}.page-heading{justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:28px;display:flex}.eyebrow{color:var(--orange-600);letter-spacing:.13em;text-transform:uppercase;margin:0 0 7px;font-size:12px;font-weight:800}h1,h2,h3,p{margin-top:0}h1{color:var(--ink);letter-spacing:-.035em;margin-bottom:4px;font-size:clamp(27px,2.6vw,36px);line-height:1.08}.today{color:var(--ink-muted);margin:0;font-size:14px}.today:first-letter{text-transform:uppercase}.refresh-button{border:1px solid var(--line);border-radius:var(--radius-sm);min-height:44px;color:var(--ink-soft);background:var(--white);box-shadow:var(--shadow-soft);align-items:center;gap:9px;padding:0 17px;font-size:13px;font-weight:750;display:inline-flex}.refresh-button:hover:not(:disabled){border-color:var(--line-strong);background:var(--page)}.refresh-button svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:17px}.metrics-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:18px;display:grid}.metric-card{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--white);min-height:138px;box-shadow:var(--shadow);align-items:flex-start;gap:16px;padding:21px;display:flex}.metric-icon{width:42px;height:42px;color:var(--orange-600);background:var(--orange-100);border-radius:12px;flex:none;place-items:center;display:grid}.metric-icon svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.metric-card p{color:var(--slate-700);margin:1px 0 5px;font-size:12px;font-weight:700}.metric-card strong{color:var(--navy-900);letter-spacing:-.035em;margin-bottom:4px;font-size:29px;line-height:1.05;display:block}.metric-card>div:last-child>span{color:var(--slate-500);font-size:12px}.metric-alert .metric-icon{color:var(--red-600);background:var(--red-100)}.content-grid{grid-template-columns:minmax(0,2fr) minmax(280px,.82fr);align-items:start;gap:18px;display:grid}.panel{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--white);box-shadow:var(--shadow);overflow:hidden}.panel-heading{border-bottom:1px solid var(--slate-100);justify-content:space-between;align-items:center;gap:16px;min-height:88px;padding:23px 25px 18px;display:flex}.panel-heading .eyebrow{margin-bottom:5px}.panel-heading h2{color:var(--navy-900);letter-spacing:-.02em;margin-bottom:0;font-size:19px}.count-badge{min-width:28px;height:28px;color:var(--orange-600);background:var(--orange-100);border-radius:999px;place-items:center;padding:0 8px;font-size:12px;font-weight:800;display:grid}.rides-list{margin:0;padding:0;list-style:none}.ride-row{border-bottom:1px solid var(--slate-100);grid-template-columns:74px minmax(160px,1fr) auto minmax(130px,.65fr);align-items:center;gap:18px;min-height:82px;padding:15px 24px;display:grid}.ride-row:last-child{border-bottom:0}.ride-time{gap:2px;display:grid}.ride-time strong{color:var(--navy-900);font-size:18px}.ride-time span,.ride-main span,.ride-instructor span{color:var(--slate-500);font-size:12px}.ride-main,.ride-instructor{gap:4px;min-width:0;display:grid}.ride-main strong,.ride-instructor strong{color:var(--navy-800);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.ride-meta{color:var(--slate-500);align-items:center;gap:7px;font-size:12px;display:flex}.ride-meta .category{color:var(--orange-600);background:var(--orange-100);border-radius:7px;padding:5px 8px;font-weight:800}.loading-list{gap:12px;padding:18px 24px 24px;display:grid}.loading-list span{background:linear-gradient(90deg, var(--slate-100) 25%, #f8f9fa 50%, var(--slate-100) 75%);background-size:200% 100%;border-radius:12px;height:58px;animation:1.5s linear infinite shimmer}.empty-state{text-align:center;align-content:center;justify-items:center;min-height:292px;padding:48px 24px;display:grid}.empty-icon{width:42px;height:42px;color:var(--red-600);background:var(--red-100);border-radius:50%;place-items:center;margin-bottom:16px;font-size:18px;font-weight:900;display:grid}.empty-icon.calendar{color:var(--green-600);background:var(--green-100)}.empty-state h3{color:var(--navy-900);margin-bottom:7px;font-size:16px}.empty-state p{max-width:350px;color:var(--slate-500);margin-bottom:17px;font-size:13px;line-height:1.55}.empty-state button{min-height:40px;color:var(--white);background:var(--orange-600);border:0;border-radius:10px;padding:0 14px;font-size:12px;font-weight:800}.system-list{margin:0;padding:9px 24px 4px}.system-list>div{border-bottom:1px solid var(--slate-100);justify-content:space-between;align-items:center;gap:16px;padding:15px 0;display:flex}.system-list dt{color:var(--slate-500);font-size:12px}.system-list dd{color:var(--navy-800);text-align:right;margin:0;font-size:12px;font-weight:750}.system-list dd.online,.system-list dd.offline,.system-list dd.checking{align-items:center;gap:7px;display:inline-flex}.system-list dd.online{color:var(--green-600)}.system-list dd.offline{color:var(--red-600)}.system-list code{max-width:160px;color:var(--slate-700);text-overflow:ellipsis;white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;display:block;overflow:hidden}.system-note{color:var(--slate-700);background:var(--slate-100);border-radius:11px;margin:16px 24px 24px;padding:14px;font-size:12px;line-height:1.55}.primary-button,.secondary-button{border-radius:var(--radius-sm);min-height:44px;padding:0 17px;font-size:13px;font-weight:800}.primary-button{color:var(--brand-on-primary);background:var(--cta-gradient);box-shadow:0 10px 22px var(--accent-glow);border:0}.primary-button:hover:not(:disabled){filter:brightness(.97)}.secondary-button{border:1px solid var(--line);color:var(--ink-soft);background:var(--white)}.content-grid--secondary{grid-template-columns:minmax(0,2fr) minmax(280px,.82fr);margin-top:18px}.panel-note{color:var(--ink-muted);margin:0;padding:22px 25px 26px;font-size:13px;line-height:1.6}.progress-list{margin:0;padding:6px 0;list-style:none}.progress-list li{border-bottom:1px solid var(--slate-100);gap:9px;padding:15px 25px;display:grid}.progress-list li:last-child{border-bottom:0}.progress-identity>span{color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.progress-meter{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:11px;display:grid}.progress-track{appearance:none;background:var(--slate-100);width:100%;height:9px;color:var(--accent);border:0;border-radius:999px;display:block}.progress-track::-webkit-progress-bar{background:var(--slate-100);border-radius:999px}.progress-track::-webkit-progress-value{background:var(--cta-gradient);border-radius:999px}.progress-track::-moz-progress-bar{background:var(--cta-gradient);border-radius:999px}.progress-value{color:var(--accent-strong);font-size:13px;font-weight:800}.progress-next{color:var(--ink-soft);margin:0;font-size:12px;line-height:1.5}.activity-list{margin:0;padding:6px 0;list-style:none}.activity-list li{border-bottom:1px solid var(--slate-100);align-items:flex-start;gap:13px;padding:14px 25px;display:flex}.activity-list li:last-child{border-bottom:0}.activity-list>li>div{gap:3px;min-width:0;display:grid}.activity-list strong{color:var(--ink);font-size:13px;font-weight:700;line-height:1.45}.activity-list span:last-child{color:var(--ink-muted);font-size:12px}.activity-icon{width:34px;height:34px;color:var(--accent-strong);background:var(--accent-soft);border-radius:11px;flex:none;place-items:center;display:grid}.activity-icon svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.schedule-page{width:min(1680px,100%)}.schedule-heading{margin-bottom:20px}.schedule-guardrail{color:#25674f;background:#eef9f4;border:1px solid #bfe5d5;border-radius:13px;align-items:center;gap:12px;margin-bottom:16px;padding:13px 16px;font-size:12px;line-height:1.5;display:flex}.schedule-guardrail strong{flex:none}.schedule-toolbar{border:1px solid var(--slate-200);background:var(--white);border-radius:15px;justify-content:space-between;align-items:end;gap:18px;margin-bottom:16px;padding:14px;display:flex;box-shadow:0 5px 18px #111b2e0a}.week-controls{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.week-controls button,.clear-filters{border:1px solid var(--slate-200);min-height:38px;color:var(--navy-800);background:var(--white);border-radius:9px;padding:0 12px;font-size:12px;font-weight:750}.week-controls .week-arrow{width:38px;padding:0;font-size:17px}.week-controls button:hover,.clear-filters:hover{border-color:var(--slate-300);background:var(--slate-100)}.schedule-filters{flex-wrap:wrap;justify-content:flex-end;align-items:end;gap:9px;display:flex}.schedule-filters label{gap:5px;display:grid}.schedule-filters label>span{color:var(--slate-500);font-size:12px;font-weight:750}.schedule-filters select,.draft-form select,.draft-form input{border:1px solid var(--slate-300);min-width:140px;height:40px;color:var(--navy-800);background:var(--white);border-radius:9px;outline:0;padding:0 10px;font-size:12px}.schedule-filters select:focus,.draft-form select:focus,.draft-form input:focus{border-color:var(--orange-500);box-shadow:0 0 0 3px color-mix(in srgb, var(--brand-primary) 11%, transparent)}.clear-filters{color:var(--orange-600)}.schedule-notice,.schedule-error{border-radius:11px;margin:0 0 14px;padding:12px 15px;font-size:12px;line-height:1.5}.schedule-notice{color:var(--green-600);background:var(--green-100)}.schedule-error{color:var(--red-600);background:var(--red-100)}.week-planner{scrollbar-color:var(--slate-300) transparent;grid-template-columns:repeat(7,minmax(205px,1fr));gap:10px;padding-bottom:12px;display:grid;overflow-x:auto}.day-column{border:1px solid var(--slate-200);background:#ffffffb8;border-radius:15px;min-height:440px;overflow:hidden}.day-column--today{border-color:color-mix(in srgb, var(--brand-primary) 62%, transparent);box-shadow:0 0 0 2px color-mix(in srgb, var(--brand-primary) 8%, transparent)}.day-column>header{border-bottom:1px solid var(--slate-200);background:var(--white);justify-content:space-between;align-items:center;gap:8px;min-height:49px;padding:0 12px;display:flex}.day-column--today>header{background:var(--orange-100)}.day-column>header h2{color:var(--navy-800);text-transform:capitalize;margin:0;font-size:12px}.day-column>header span{min-width:22px;height:22px;color:var(--slate-700);background:var(--slate-100);border-radius:99px;place-items:center;font-size:12px;font-weight:800;display:grid}.day-column__items{align-content:start;gap:8px;padding:9px;display:grid}.day-empty{color:var(--slate-500);text-align:center;margin:26px 0;font-size:12px}.schedule-card{border:1px solid var(--slate-200);border-left:4px solid var(--slate-500);background:var(--white);border-radius:11px;padding:11px;box-shadow:0 4px 12px #111b2e0a}.schedule-card--draft{border-left-color:var(--orange-500);background:color-mix(in srgb, var(--brand-primary) 2%, white)}.schedule-card--published{border-left-color:var(--green-600)}.schedule-card--reserved{border-left-color:#356fc0}.schedule-card__top{justify-content:space-between;align-items:center;gap:6px;display:flex}.schedule-card__top>strong{color:var(--navy-900);font-size:13px}.slot-state{color:var(--slate-700);background:var(--slate-100);letter-spacing:.04em;text-transform:uppercase;border-radius:6px;padding:4px 6px;font-size:12px;font-weight:850}.schedule-card--draft .slot-state{color:var(--orange-600);background:var(--orange-100)}.schedule-card h3{color:var(--navy-900);text-overflow:ellipsis;white-space:nowrap;margin:9px 0 3px;font-size:12px;overflow:hidden}.schedule-card>p{color:var(--slate-500);margin:0;font-size:12px;line-height:1.45}.schedule-card dl{gap:5px;margin:9px 0 0;display:grid}.schedule-card dl>div{grid-template-columns:42px minmax(0,1fr);gap:5px;display:grid}.schedule-card dt{color:var(--slate-500);font-size:12px}.schedule-card dd{color:var(--slate-700);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:12px;font-weight:700;overflow:hidden}.schedule-card .slot-warning{color:#9c5819;background:#fff3d9;border-radius:7px;margin-top:9px;padding:7px}.schedule-card__actions{border-top:1px solid var(--slate-100);flex-wrap:wrap;gap:5px;margin-top:10px;padding-top:8px;display:flex}.schedule-card__actions button{border:1px solid var(--slate-200);min-height:28px;color:var(--navy-800);background:var(--white);border-radius:7px;flex:calc(50% - 3px);font-size:12px;font-weight:800}.schedule-card__actions .publish-button{border-color:var(--orange-500);color:var(--brand-on-primary);background:var(--orange-500)}.schedule-card__actions .publish-button:hover{background:var(--orange-600)}.schedule-card__actions .archive-button{color:var(--red-600)}.schedule-card .read-only-note{color:var(--slate-500);text-align:right;text-transform:uppercase;margin-top:8px;font-size:12px;font-weight:750}.schedule-loading,.schedule-error-state{min-height:390px;color:var(--slate-500);text-align:center;place-content:center;justify-items:center;display:grid}.schedule-loading span{border:3px solid var(--slate-200);border-top-color:var(--orange-500);border-radius:50%;width:30px;height:30px;animation:.9s linear infinite spin}.schedule-loading p{margin:13px 0 0;font-size:12px}.schedule-error-state h2{color:var(--navy-900);margin-bottom:7px;font-size:18px}.schedule-error-state p{max-width:430px;margin-bottom:16px;font-size:12px;line-height:1.55}.modal-backdrop{z-index:20;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#080f1b94;place-items:center;padding:24px;display:grid;position:fixed;inset:0;overflow-y:auto}.draft-dialog{background:var(--white);border-radius:20px;width:min(720px,100%);max-height:calc(100vh - 48px);overflow-y:auto;box-shadow:0 30px 90px #080f1b52}.draft-dialog__heading{border-bottom:1px solid var(--slate-100);justify-content:space-between;align-items:center;gap:16px;padding:22px 24px 15px;display:flex}.draft-dialog__heading h2{color:var(--navy-900);margin:0;font-size:22px}.icon-button{border:1px solid var(--slate-200);width:36px;height:36px;color:var(--slate-700);background:var(--white);border-radius:10px;font-size:21px;line-height:1}.draft-visibility-note{color:#25674f;background:#eef9f4;border-radius:10px;margin:18px 24px 0;padding:12px 14px;font-size:12px;line-height:1.55}.draft-form{padding:19px 24px 24px}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.form-grid--time{margin-bottom:5px}.draft-form label{gap:6px;display:grid}.draft-form label>span{color:var(--slate-700);font-size:12px;font-weight:750}.draft-form select,.draft-form input{width:100%;min-width:0;height:44px}.form-grid__wide{grid-column:1/-1}.timezone-help{color:var(--slate-500);margin:0 0 16px;font-size:12px}.form-error{color:var(--red-600);background:var(--red-100);border-radius:9px;margin:15px 0 0;padding:11px 12px;font-size:12px;line-height:1.5}.draft-form__actions{justify-content:flex-end;gap:9px;margin-top:20px;display:flex}.configuration-page{width:min(1440px,100%)}.configuration-heading{margin-bottom:20px}.configuration-area-switch{border:1px solid var(--slate-200);background:#eef1f5;border-radius:16px;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin-bottom:24px;padding:5px;display:grid}.configuration-area-switch button{min-width:0;min-height:58px;color:var(--slate-500);text-align:left;background:0 0;border:0;border-radius:11px;align-content:center;gap:2px;padding:10px 16px;display:grid}.configuration-area-switch button.active{color:var(--navy-900);background:var(--white);box-shadow:0 4px 13px #111b2e14}.configuration-area-switch strong{font-size:12px}.configuration-area-switch span{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.catalog-workspace{gap:18px;display:grid}.catalog-heading{justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.catalog-heading h1{color:var(--navy-900);letter-spacing:-.035em;margin:0 0 5px;font-size:31px}.catalog-heading p:last-child{max-width:680px;color:var(--slate-500);margin:0;font-size:12px;line-height:1.55}.catalog-heading .primary-button{flex:none}.catalog-guardrail{color:#315c8f;background:#f5f8fc;border:1px solid #cbd9ed;border-radius:13px;gap:4px;padding:13px 16px;display:grid}.catalog-guardrail strong{font-size:12px}.catalog-guardrail span{font-size:12px;line-height:1.5}.catalog-summary{grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;display:grid}.catalog-summary button{border:1px solid var(--slate-200);min-width:0;min-height:102px;color:var(--slate-500);background:var(--white);text-align:left;border-radius:15px;align-content:center;gap:3px;padding:14px 15px;display:grid;position:relative;box-shadow:0 7px 20px #111b2e09}.catalog-summary button:before{content:"";background:0 0;border-radius:0 5px 5px 0;width:4px;position:absolute;top:16px;bottom:16px;left:0}.catalog-summary button:hover:not(.active){border-color:var(--slate-300);background:#fcfcfd}.catalog-summary button.active{border-color:color-mix(in srgb, var(--brand-primary) 28%, white);background:color-mix(in srgb, var(--brand-primary) 3%, white)}.catalog-summary button.active:before{background:var(--orange-500)}.catalog-summary span{text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:800;overflow:hidden}.catalog-summary strong{color:var(--navy-900);font-size:24px;line-height:1.1}.catalog-summary small{font-size:12px}.catalog-list-panel{border:1px solid var(--slate-200);background:var(--white);box-shadow:var(--shadow);border-radius:18px;overflow:hidden}.catalog-list-heading{border-bottom:1px solid var(--slate-100);justify-content:space-between;align-items:center;gap:18px;min-height:83px;padding:18px 22px;display:flex}.catalog-list-heading>div:first-child{gap:5px;display:grid}.catalog-list-heading h2{color:var(--navy-900);margin:0;font-size:20px}.catalog-list-heading span{color:var(--slate-500);font-size:12px}.catalog-list-controls{align-items:center;gap:12px;display:flex}.catalog-list-controls label{color:var(--slate-700);white-space:nowrap;align-items:center;gap:7px;font-size:12px;font-weight:750;display:flex}.catalog-list-controls input{width:17px;height:17px;accent-color:var(--orange-500);margin:0}.catalog-list-controls .refresh-button{min-height:38px;padding:0 12px;font-size:12px}.catalog-list{display:grid}.catalog-row{border-bottom:1px solid var(--slate-100);grid-template-columns:minmax(220px,1.1fr) minmax(230px,1.2fr) 118px auto;align-items:center;gap:18px;min-height:86px;padding:14px 22px;display:grid}.catalog-row:last-child{border-bottom:0}.catalog-row--inactive{background:#fafbfc}.catalog-row__identity{gap:4px;min-width:0;display:grid}.catalog-row__identity strong{color:var(--navy-900);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.catalog-row__identity span{color:var(--slate-500);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.4;overflow:hidden}.catalog-row__dependency{min-width:0;color:var(--slate-500);font-size:12px;line-height:1.45}.catalog-row__dependency strong{color:var(--navy-800)}.catalog-row--blocked .catalog-row__dependency strong{color:var(--red-600)}.catalog-row__state{justify-items:start;gap:5px;display:grid}.catalog-row__state small{color:var(--slate-500);font-size:12px}.catalog-state{text-transform:uppercase;white-space:nowrap;border-radius:999px;padding:5px 8px;font-size:12px;font-weight:850}.catalog-state--active{color:var(--green-600);background:var(--green-100)}.catalog-state--inactive{color:var(--slate-700);background:var(--slate-100)}.catalog-state--blocked{color:var(--red-600);background:var(--red-100)}.catalog-state--not-ready{color:#8b5b16;background:#fff3d9}.catalog-row__actions{justify-content:flex-end;gap:7px;display:flex}.catalog-row__actions button{min-height:36px;padding:0 10px;font-size:12px}.catalog-lifecycle-button{color:var(--red-600);background:var(--white);border:1px solid #f1cdcb;border-radius:9px;font-weight:800}.catalog-lifecycle-button:hover:not(:disabled){background:var(--red-100)}.catalog-empty{text-align:center;place-content:center;justify-items:center;gap:7px;min-height:210px;padding:35px 22px;display:grid}.catalog-empty strong{color:var(--navy-900);font-size:15px}.catalog-empty span{color:var(--slate-500);font-size:12px}.catalog-empty button{margin-top:7px}.catalog-list-footer{border-top:1px solid var(--slate-100);min-height:53px;color:var(--slate-500);background:#fafbfc;justify-content:space-between;align-items:center;gap:15px;padding:10px 22px;font-size:12px;display:flex}.catalog-modal{z-index:30}.catalog-dialog{background:var(--white);border-radius:20px;width:min(650px,100%);max-height:calc(100vh - 40px);overflow-y:auto;box-shadow:0 28px 80px #111b2e47}.catalog-dialog--uncertain{width:min(560px,100%)}.catalog-dialog__heading{border-bottom:1px solid var(--slate-100);justify-content:space-between;align-items:center;gap:18px;padding:21px 24px 16px;display:flex}.catalog-dialog__heading h2{color:var(--navy-900);margin:0;font-size:22px}.catalog-form{padding:20px 24px 24px}.catalog-history-note{color:#315c8f;background:#eef5fd;border-radius:10px;margin:0 0 18px;padding:12px 14px;font-size:12px;line-height:1.5}.catalog-form__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.catalog-form label{gap:6px;min-width:0;display:grid}.catalog-form label>span,.catalog-immutable>span{color:var(--slate-700);font-size:12px;font-weight:750}.catalog-form input:not([type=checkbox]),.catalog-form select{border:1px solid var(--slate-300);width:100%;min-width:0;height:44px;color:var(--navy-800);background:var(--white);border-radius:10px;outline:0;padding:0 11px;font-size:12px}.catalog-form input:not([type=checkbox]):focus,.catalog-form select:focus{border-color:var(--orange-500);box-shadow:0 0 0 3px color-mix(in srgb, var(--brand-primary) 11%, transparent)}.catalog-form__wide{grid-column:1/-1}.catalog-immutable{border:1px solid var(--slate-200);background:var(--slate-100);border-radius:10px;align-content:center;gap:4px;min-width:0;min-height:74px;padding:10px 12px;display:grid}.catalog-immutable strong{overflow-wrap:anywhere;color:var(--navy-800);font-size:12px}.catalog-immutable small{color:var(--slate-500);font-size:12px;line-height:1.35}.catalog-ready-control{border:1px solid var(--slate-200);border-radius:10px;align-items:center;min-height:74px;padding:11px 12px;gap:10px!important;display:flex!important}.catalog-ready-control input{width:19px;height:19px;accent-color:var(--orange-500);flex:none;margin:0}.catalog-ready-control>span{gap:3px;display:grid}.catalog-ready-control strong{color:var(--navy-800);font-size:12px}.catalog-ready-control small{color:var(--slate-500);font-size:12px}.catalog-form__actions{justify-content:flex-end;gap:9px;margin-top:20px;display:flex}.catalog-lifecycle-uncertain{padding:21px 24px 24px}.catalog-lifecycle-uncertain>p:first-child{color:var(--slate-700);margin:0;font-size:12px;line-height:1.6}.catalog-lifecycle-uncertain>p:first-child strong{color:var(--navy-900)}.configuration-read-only{color:#315c8f;background:#eef5fd;border:1px solid #cbd9ed;border-radius:13px;margin:0 0 16px;padding:13px 16px;font-size:12px;line-height:1.5}.readiness-card{border:1px solid var(--slate-200);border-left:5px solid var(--orange-500);background:var(--white);box-shadow:var(--shadow);border-radius:18px;margin-bottom:18px;overflow:hidden}.readiness-card--confirmed{border-left-color:var(--green-600)}.readiness-card__main{justify-content:space-between;align-items:flex-start;gap:24px;padding:22px 24px 18px;display:flex}.readiness-card__main h2{color:var(--navy-900);margin-bottom:7px;font-size:23px}.readiness-card__main p:last-child{max-width:680px;color:var(--slate-500);margin:0;font-size:12px;line-height:1.55}.rules-status{color:var(--orange-600);background:var(--orange-100);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;flex:none;padding:7px 10px;font-size:12px;font-weight:850}.rules-status--confirmed{color:var(--green-600);background:var(--green-100)}.readiness-counts{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0;padding:0 24px 20px;display:grid}.readiness-counts>div{background:var(--slate-100);border-radius:11px;padding:13px 14px}.readiness-counts dt{color:var(--slate-500);font-size:12px;font-weight:700}.readiness-counts dd{color:var(--navy-900);margin:4px 0 0;font-size:20px;font-weight:850}.readiness-card__footer{border-top:1px solid var(--slate-100);min-height:64px;color:var(--slate-500);align-items:center;gap:16px;padding:10px 24px;font-size:12px;display:flex}.readiness-card__footer strong{color:var(--orange-600);margin-left:auto}.readiness-card__footer .secondary-button{margin-left:auto}.readiness-card__footer strong+.secondary-button{margin-left:0}.configuration-section{border:1px solid var(--slate-200);background:var(--white);border-radius:18px;margin-bottom:18px;overflow:hidden;box-shadow:0 8px 24px #111b2e0b}.configuration-section__heading{border-bottom:1px solid var(--slate-100);justify-content:space-between;align-items:center;gap:28px;min-height:92px;padding:20px 24px 17px;display:flex}.configuration-section__heading h2{color:var(--navy-900);letter-spacing:-.02em;margin:0;font-size:19px}.configuration-section__heading>p{max-width:470px;color:var(--slate-500);text-align:right;margin:0;font-size:12px;line-height:1.5}.matrix-scroll{scrollbar-color:var(--slate-300) transparent;overflow-x:auto}.configuration-matrix{border-collapse:collapse;width:100%;min-width:720px}.configuration-matrix th,.configuration-matrix td{border-right:1px solid var(--slate-100);border-bottom:1px solid var(--slate-100);text-align:center;min-width:142px;padding:13px 14px}.configuration-matrix th:first-child{z-index:1;text-align:left;background:var(--white);width:230px;min-width:230px;box-shadow:1px 0 0 var(--slate-100);position:sticky;left:0}.configuration-matrix thead th{color:var(--slate-700);background:#fafbfc;font-size:12px;font-weight:800}.configuration-matrix thead th:first-child{z-index:2;background:#fafbfc}.configuration-matrix tbody th{color:var(--navy-800);font-size:12px;font-weight:800}.configuration-matrix tr:last-child th,.configuration-matrix tr:last-child td{border-bottom:0}.configuration-matrix th:last-child,.configuration-matrix td:last-child{border-right:0}.configuration-matrix input[type=checkbox]{width:20px;height:20px;accent-color:var(--orange-500);cursor:pointer;margin:0}.configuration-matrix input[type=checkbox]:disabled{cursor:default}.variant-heading,.resource-heading{gap:3px;display:grid}.variant-heading strong,.resource-heading strong{color:var(--navy-800);font-size:12px;line-height:1.3}.variant-heading small,.resource-heading small{color:var(--slate-500);font-size:12px;font-weight:650}.resource-heading strong,.resource-heading small{font-size:12px}.duration-list{display:grid}.duration-row{border-bottom:1px solid var(--slate-100);grid-template-columns:minmax(190px,.7fr) minmax(220px,1.5fr) auto;align-items:center;gap:18px;min-height:82px;padding:15px 24px;display:grid}.duration-row:last-child{border-bottom:0}.duration-values{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.unset-value{color:var(--slate-500);font-size:12px;font-style:italic}.value-chip{min-height:31px;color:var(--navy-800);background:var(--slate-100);border-radius:999px;align-items:center;gap:6px;padding:0 7px 0 10px;font-size:12px;font-weight:800;display:inline-flex}.value-chip button{width:20px;height:20px;color:var(--slate-500);background:var(--white);border:0;border-radius:50%;padding:0;line-height:1}.duration-add{align-items:center;gap:7px;display:flex}.duration-add input{border:1px solid var(--slate-300);width:96px;height:40px;color:var(--navy-800);border-radius:9px;outline:0;padding:0 10px;font-size:12px}.duration-add .secondary-button{min-height:40px}.transition-add{border:1px solid var(--slate-200);background:#fafbfc;border-radius:13px;grid-template-columns:minmax(180px,1fr) auto minmax(180px,1fr) auto;align-items:end;gap:10px;margin:16px 24px;padding:14px;display:grid}.transition-add label{gap:5px;display:grid}.transition-add label>span{color:var(--slate-500);font-size:12px;font-weight:750}.transition-add select{border:1px solid var(--slate-300);width:100%;min-width:0;height:40px;color:var(--navy-800);background:var(--white);border-radius:9px;padding:0 10px;font-size:12px}.transition-arrow{color:var(--orange-600);padding-bottom:11px;font-size:18px;font-weight:900}.transition-add .secondary-button{min-height:40px}.transition-list{display:grid}.transition-row{border-top:1px solid var(--slate-100);grid-template-columns:minmax(240px,1.1fr) minmax(480px,2fr) auto;align-items:center;gap:18px;padding:16px 24px;display:grid}.transition-route{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:8px;display:grid}.transition-route strong{color:var(--navy-800);font-size:12px;line-height:1.4}.transition-route span{color:var(--orange-600);font-weight:900}.transition-fields{grid-template-columns:repeat(3,minmax(110px,1fr));gap:9px;display:grid}.transition-fields label{gap:5px;display:grid;position:relative}.transition-fields label>span{color:var(--slate-500);font-size:12px;font-weight:750}.transition-fields input{border:1px solid var(--slate-300);width:100%;height:40px;color:var(--navy-800);background:var(--white);border-radius:9px;outline:0;padding:0 34px 0 10px;font-size:12px}.transition-fields small{color:var(--slate-500);font-size:12px;position:absolute;bottom:13px;right:10px}.duration-add input:focus,.transition-add select:focus,.transition-fields input:focus{border-color:var(--orange-500);box-shadow:0 0 0 3px color-mix(in srgb, var(--brand-primary) 11%, transparent)}.remove-rule{min-height:36px;color:var(--red-600);background:var(--white);border:1px solid #f1cdcb;border-radius:9px;padding:0 10px;font-size:12px;font-weight:800}.configuration-empty{border-top:1px solid var(--slate-100);text-align:center;place-content:center;justify-items:center;gap:6px;min-height:110px;padding:24px;display:grid}.configuration-empty strong{color:var(--navy-800);font-size:13px}.configuration-empty span{color:var(--slate-500);font-size:12px}.configuration-savebar{z-index:5;border:1px solid var(--slate-200);min-height:72px;color:var(--slate-500);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff0;border-radius:15px;justify-content:flex-end;align-items:center;gap:18px;padding:12px 16px;font-size:12px;display:flex;position:sticky;bottom:12px;box-shadow:0 14px 38px #111b2e24}.configuration-reference-warning{color:var(--red-600);background:#fff8f7;border:1px solid #f1cdcb;border-radius:12px;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;display:flex}.configuration-reference-warning div{gap:3px;display:grid}.configuration-reference-warning strong{font-size:12px}.configuration-reference-warning span{font-size:12px;line-height:1.45}.slot-readiness{border-radius:9px;gap:4px;margin-top:12px;padding:10px 11px;font-size:12px;line-height:1.4;display:grid}.slot-readiness--ready{color:var(--green-700);background:#eefaf4}.slot-readiness--blocked{color:var(--red-600);background:#fff4f2}.slot-readiness strong{font-size:12px}.slot-readiness span{color:inherit}.slot-readiness ul{gap:2px;margin:2px 0 0;padding-left:16px;display:grid}.slot-readiness-error{color:var(--red-600);margin:10px 0 0;font-size:12px;line-height:1.4}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.access-page{width:min(1540px,100%)}.access-heading{align-items:center}.access-notice,.access-error{border-radius:11px;margin:0 0 16px;padding:12px 15px;font-size:12px;line-height:1.5}.access-notice{color:var(--green-600);background:var(--green-100)}.access-error{color:var(--red-600);background:var(--red-100)}.access-denied{text-align:center;place-content:center;min-height:360px;display:grid}.access-denied p{color:var(--slate-500)}.activation-link-card{border:1px solid #bfe5d5;border-left:5px solid var(--green-600);background:var(--white);box-shadow:var(--shadow);border-radius:17px;grid-template-columns:minmax(240px,.75fr) minmax(420px,1.4fr);align-items:center;gap:24px;margin-bottom:18px;padding:22px 24px;display:grid}.activation-link-card h2{color:var(--navy-900);margin-bottom:6px;font-size:18px}.activation-link-card p{color:var(--slate-500);margin:0;font-size:12px;line-height:1.55}.activation-link-copy{grid-template-columns:minmax(0,1fr) auto auto;gap:8px;display:grid}.activation-link-copy input{border:1px solid var(--slate-300);min-width:0;height:44px;color:var(--navy-800);background:var(--slate-100);border-radius:10px;padding:0 12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.activation-copy-warning{grid-column:2;color:var(--red-600)!important}.access-layout{grid-template-columns:minmax(320px,.72fr) minmax(0,1.65fr);align-items:start;gap:18px;display:grid}.access-form{gap:15px;padding:21px 24px 24px;display:grid}.access-form label{gap:6px;display:grid}.access-form label>span{color:var(--slate-700);font-size:12px;font-weight:750}.access-form input,.access-form select{border:1px solid var(--slate-300);width:100%;min-width:0;height:44px;color:var(--navy-800);background:var(--white);border-radius:10px;outline:0;padding:0 11px;font-size:12px}.access-form input:focus,.access-form select:focus{border-color:var(--orange-500);box-shadow:0 0 0 3px color-mix(in srgb, var(--brand-primary) 11%, transparent)}.access-form input:read-only{color:var(--slate-700);background:var(--slate-100)}.access-form label small{color:var(--slate-500);font-size:12px;line-height:1.4}.access-form-help{color:var(--slate-500);margin:0;font-size:12px;line-height:1.5}.access-form .primary-button{width:100%}.access-loading{gap:11px;padding:20px 24px 26px;display:grid}.access-loading span{background:linear-gradient(90deg, var(--slate-100) 25%, #f8f9fa 50%, var(--slate-100) 75%);background-size:200% 100%;border-radius:11px;height:62px;animation:1.5s linear infinite shimmer}.access-empty{min-height:330px}.access-table-scroll{scrollbar-color:var(--slate-300) transparent;overflow-x:auto}.access-table{border-collapse:collapse;width:100%;min-width:760px}.access-table th,.access-table td{border-bottom:1px solid var(--slate-100);text-align:left;vertical-align:middle;padding:14px 16px}.access-table th{color:var(--slate-500);letter-spacing:.05em;text-transform:uppercase;background:#fafbfc;font-size:12px;font-weight:800}.access-table tbody tr:last-child td{border-bottom:0}.access-table td{color:var(--slate-700);font-size:12px}.access-table td:first-child{min-width:210px}.access-table td:first-child strong,.access-table td:first-child span,.access-table td:nth-child(4) span,.access-table td:nth-child(4) small{display:block}.access-table td:first-child strong{color:var(--navy-800);margin-bottom:4px;font-size:12px}.access-table td:first-child span,.access-table td:nth-child(4) small{color:var(--slate-500);font-size:12px}.access-table td:nth-child(4) small{margin-top:4px}.invitation-status{color:var(--orange-600);background:var(--orange-100);border-radius:999px;padding:5px 8px;font-size:12px;font-weight:850;display:inline-flex}.invitation-status--accepted{color:var(--green-600);background:var(--green-100)}.invitation-status--expired,.invitation-status--revoked{color:var(--slate-700);background:var(--slate-100)}.invitation-status--revoked{color:var(--red-600);background:var(--red-100)}.revoke-invitation{min-height:34px;color:var(--red-600);background:var(--white);border:1px solid #f1cdcb;border-radius:9px;padding:0 10px;font-size:12px;font-weight:800}.revoke-invitation:hover:not(:disabled){background:var(--red-100)}.students-page{width:min(1580px,100%)}.students-heading{align-items:center;margin-bottom:20px}.students-heading__actions{align-items:center;gap:9px;display:flex}.students-notice,.students-alert{border-radius:11px;margin:0 0 16px;padding:12px 15px;font-size:12px;line-height:1.5}.students-notice{color:var(--green-600);background:var(--green-100)}.students-alert{color:var(--red-600);background:var(--red-100)}.students-filters{border:1px solid var(--slate-200);background:var(--white);border-radius:16px;grid-template-columns:minmax(220px,1.5fr) repeat(4,minmax(125px,.72fr)) auto;align-items:end;gap:10px;margin-bottom:18px;padding:16px;display:grid;box-shadow:0 5px 18px #111b2e0a}.students-filters label,.student-form label,.student-import-form label{gap:6px;min-width:0;display:grid}.students-filters label>span,.student-form label>span,.student-import-form label>span{color:var(--slate-700);font-size:12px;font-weight:750}.students-filters input,.students-filters select,.student-form input,.student-form select,.student-form textarea,.student-import-form input{border:1px solid var(--slate-300);width:100%;min-width:0;color:var(--navy-800);background:var(--white);border-radius:10px;outline:0;font-size:12px}.students-filters input,.students-filters select,.student-form input,.student-form select,.student-import-form input{height:42px;padding:0 11px}.student-form textarea{resize:vertical;min-height:104px;padding:11px}.students-filters input:focus,.students-filters select:focus,.student-form input:focus,.student-form select:focus,.student-form textarea:focus,.student-import-form input:focus{border-color:var(--orange-500);box-shadow:0 0 0 3px color-mix(in srgb, var(--brand-primary) 11%, transparent)}.students-filter-actions{gap:7px;display:flex}.students-filter-actions .primary-button,.students-filter-actions .secondary-button{min-height:42px;padding:0 13px}.students-list-panel,.student-editor,.student-import,.student-contact-card,.student-enrollment-card{border:1px solid var(--slate-200);background:var(--white);box-shadow:var(--shadow);border-radius:18px}.students-list-panel{overflow:hidden}.students-list-heading{border-bottom:1px solid var(--slate-100);justify-content:space-between;align-items:center;gap:16px;min-height:78px;padding:18px 22px;display:flex}.students-list-heading>div{align-items:baseline;gap:10px;display:flex}.students-table-scroll,.student-import-table-scroll{scrollbar-color:var(--slate-300) transparent;position:relative;overflow-x:auto}.students-table-scroll:focus-visible,.student-import-table-scroll:focus-visible{outline:3px solid color-mix(in srgb, var(--brand-primary) 32%, transparent);outline-offset:-3px}.students-table,.student-import-table{border-collapse:collapse;width:100%;min-width:1040px}.student-import-table{min-width:920px}.students-table th,.students-table td,.student-import-table th,.student-import-table td{border-bottom:1px solid var(--slate-100);text-align:left;vertical-align:middle;padding:14px 16px}.students-table th,.student-import-table th{color:var(--slate-500);letter-spacing:.05em;text-transform:uppercase;background:#fafbfc;font-size:12px;font-weight:800}.students-table td,.student-import-table td{color:var(--slate-700);font-size:12px;line-height:1.45}.students-table tbody tr:last-child td,.student-import-table tbody tr:last-child td{border-bottom:0}.students-table tbody tr:hover,.student-import-table tbody tr:hover{background:#fcfcfd}.students-table td:first-child{min-width:190px}.students-table td:first-child strong,.students-table td:first-child span:not(.status-badge):not(.status-badge__marker),.students-table td:nth-child(2) strong,.students-table td:nth-child(2) span:not(.status-badge):not(.status-badge__marker),.student-import-table td:nth-child(2) strong,.student-import-table td:nth-child(2) span{display:block}.students-table td:first-child strong,.students-table td:nth-child(2) strong,.student-import-table td:nth-child(2) strong{color:var(--navy-800);margin-bottom:3px;font-size:12px}.students-table td:first-child span:not(.status-badge):not(.status-badge__marker),.students-table td:nth-child(2) span:not(.status-badge):not(.status-badge__marker),.student-import-table td:nth-child(2) span{color:var(--slate-500);font-size:12px}.students-table td:first-child small{color:var(--red-600);margin-top:4px;font-size:12px;font-weight:750;display:block}.student-stage,.student-state,.import-status,.import-action{color:#315c8f;white-space:nowrap;background:#eef5fd;border-radius:999px;padding:5px 8px;font-size:12px;font-weight:850;display:inline-flex}.student-state--active,.import-status--committed,.import-action--create{color:var(--green-600);background:var(--green-100)}.student-state--inactive,.import-status--expired,.import-action--blocked{color:var(--red-600);background:var(--red-100)}.import-status--preview,.import-action--noop{color:var(--orange-600);background:var(--orange-100)}.student-open,.student-back{color:var(--orange-700);background:0 0;border:0;padding:0;font-size:12px;font-weight:800}.student-open:hover,.student-back:hover{text-decoration:underline}.students-empty{text-align:center;place-content:center;min-height:230px;padding:38px 22px;display:grid}.students-empty--compact{border:1px dashed var(--slate-300);border-radius:15px;min-height:160px}.students-empty h3{color:var(--navy-900);margin-bottom:7px;font-size:16px}.students-empty p{max-width:380px;color:var(--slate-500);margin:0;font-size:12px;line-height:1.5}.students-pagination{border-top:1px solid var(--slate-100);min-height:66px;color:var(--slate-500);justify-content:space-between;align-items:center;gap:16px;padding:11px 18px;font-size:12px;display:flex}.students-pagination>div{gap:7px;display:flex}.students-pagination .secondary-button{min-height:38px;padding:0 12px;font-size:12px}.student-editor,.student-import{padding:24px}.student-editor__heading{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:22px;display:flex}.student-editor__heading h2{color:var(--navy-900);margin:0;font-size:23px}.student-form{gap:18px;display:grid}.student-form__fieldset{border:1px solid var(--slate-200);border-radius:14px;margin:0;padding:18px}.student-form__fieldset legend{color:var(--navy-800);padding:0 7px;font-size:12px;font-weight:800}.student-form__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.student-form__wide{grid-column:1/-1}.student-form__privacy-hint{color:#815116;grid-column:1/-1;margin:-5px 0 0;font-size:12px;line-height:1.5}.student-form__error{color:var(--red-600);background:var(--red-100);border-radius:10px;margin:0;padding:11px 13px;font-size:12px;line-height:1.5}.student-form__help{color:var(--slate-500);margin:0;font-size:12px;line-height:1.5}.student-form__actions{justify-content:flex-end;gap:9px;display:flex}.student-card-page__heading{gap:16px;margin-bottom:18px;display:grid}.student-card-page__title{justify-content:space-between;align-items:center;gap:20px;display:flex}.student-card-page__title h2{color:var(--navy-900);margin:0;font-size:28px}.student-card-page__actions{flex-wrap:wrap;align-items:center;gap:9px;display:flex}.danger-button{min-height:44px;color:var(--red-600);background:var(--white);border:1px solid #f1cdcb;border-radius:12px;padding:0 17px;font-size:13px;font-weight:800}.danger-button:hover:not(:disabled){background:var(--red-100)}.student-contact-card{margin-bottom:22px;padding:16px 20px}.student-contact-card dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0;display:grid}.student-contact-card dl>div{min-width:0}.student-contact-card dt,.student-enrollment-meta dt{color:var(--slate-500);font-size:12px;font-weight:700}.student-contact-card dd,.student-enrollment-meta dd{overflow-wrap:anywhere;color:var(--navy-800);margin:4px 0 0;font-size:12px;font-weight:750}.student-enrollments-heading{justify-content:space-between;align-items:center;gap:16px;margin-bottom:12px;display:flex}.student-enrollments-heading h3{color:var(--navy-900);margin:0;font-size:19px}.student-enrollment-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.student-enrollment-card{padding:19px}.student-enrollment-card--inactive{box-shadow:none;border-style:dashed}.student-enrollment-card>header{justify-content:space-between;align-items:flex-start;gap:15px;display:flex}.student-enrollment-card>header>div{gap:4px;display:grid}.student-enrollment-card>header strong{color:var(--navy-900);font-size:15px}.student-enrollment-card>header span:not(.student-stage){color:var(--slate-700);font-size:12px}.student-enrollment-card>header span.student-enrollment-history{color:var(--orange-700);font-weight:800}.student-enrollment-meta{grid-template-columns:repeat(3,minmax(0,1fr));gap:11px;margin:17px 0;display:grid}.minute-balance{background:var(--slate-100);border-radius:12px;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:12px;display:grid}.minute-balance>div{gap:4px;min-width:0;display:grid}.minute-balance span{color:var(--slate-700);font-size:12px}.minute-balance strong{color:var(--navy-800);font-size:12px}.enrollment-minute-ledger{margin-top:11px}.minute-ledger-toggle{border:1px solid var(--slate-200);width:100%;min-height:44px;color:var(--navy-800);background:var(--white);text-align:left;border-radius:11px;justify-content:space-between;align-items:center;gap:12px;padding:0 11px;font-size:12px;font-weight:800;display:flex}.minute-ledger-toggle:hover{border-color:var(--orange-500);color:var(--orange-700)}.minute-ledger-toggle:focus-visible,.minute-ledger-message .secondary-button:focus-visible,.minute-ledger-more:focus-visible{outline:3px solid var(--orange-700);outline-offset:3px}.minute-ledger-toggle>span:last-child{font-size:17px;line-height:1}.minute-ledger-content{padding:10px 0 2px}.minute-ledger-disclaimer{color:#755020;background:#fff7e8;border-radius:9px;margin:0 0 10px;padding:9px 10px;font-size:12px;line-height:1.5}.minute-ledger-loading{min-height:64px;color:var(--slate-700);justify-content:center;align-items:center;gap:9px;font-size:12px;display:flex}.minute-ledger-loading span{border:2px solid var(--slate-200);border-top-color:var(--orange-500);border-radius:50%;width:15px;height:15px;animation:.75s linear infinite spin}.minute-ledger-loading p,.minute-ledger-message p{margin:0}.minute-ledger-message{border-radius:9px;gap:8px;padding:10px;font-size:12px;line-height:1.5;display:grid}.minute-ledger-message--error{color:var(--red-600);background:var(--red-100)}.minute-ledger-message .secondary-button{min-height:44px;padding:0 11px;font-size:12px}.minute-ledger-message .secondary-button[aria-disabled=true],.minute-ledger-more[aria-disabled=true]{cursor:wait;opacity:.65}.minute-ledger-status{color:var(--slate-700);margin:8px 0;font-size:12px;line-height:1.5}.minute-ledger-status:focus{outline:2px solid var(--orange-700);outline-offset:2px}.minute-ledger-empty{color:var(--slate-700);background:var(--slate-100);text-align:center;border-radius:9px;margin:0;padding:12px;font-size:12px}.minute-ledger-list{border:1px solid var(--slate-200);border-radius:11px;margin:0;padding:0;list-style:none;display:grid;overflow:hidden}.minute-ledger-entry{gap:9px;padding:11px;display:grid}.minute-ledger-entry+.minute-ledger-entry{border-top:1px solid var(--slate-200)}.minute-ledger-entry__heading{gap:3px;display:grid}.minute-ledger-entry__heading strong{color:var(--navy-800);font-size:12px}.minute-ledger-entry__heading time{color:var(--slate-700);font-size:12px}.minute-ledger-deltas{flex-wrap:wrap;gap:6px;margin:0;display:flex}.minute-ledger-deltas>div{background:var(--slate-100);border-radius:8px;gap:2px;min-width:90px;padding:7px 8px;display:grid}.minute-ledger-deltas dt{color:var(--slate-700);font-size:12px}.minute-ledger-deltas dd{margin:0;font-size:12px;font-weight:850}.minute-ledger-deltas dd.positive{color:var(--green-700)}.minute-ledger-deltas dd.negative{color:var(--red-600)}.minute-ledger-more{width:100%;min-height:44px;margin-top:9px;font-size:12px}.student-office-note{color:var(--slate-700);white-space:pre-wrap;margin:14px 0 0;font-size:12px;line-height:1.55}.enrollment-change-history{margin-top:11px}.change-history-toggle{border:1px solid var(--slate-200);width:100%;min-height:44px;color:var(--navy-800);background:var(--white);text-align:left;border-radius:11px;justify-content:space-between;align-items:center;gap:12px;padding:0 11px;font-size:12px;font-weight:800;display:flex}.change-history-toggle:hover{border-color:var(--orange-500);color:var(--orange-700)}.change-history-toggle:focus-visible,.change-history-message .secondary-button:focus-visible,.change-history-more:focus-visible{outline:3px solid var(--orange-700);outline-offset:3px}.change-history-toggle>span:last-child{font-size:17px;line-height:1}.change-history-content{padding:10px 0 2px}.change-history-disclaimer{color:#69481a;background:#fff7e8;border-radius:9px;margin:0 0 10px;padding:9px 10px;font-size:12px;line-height:1.5}.change-history-loading{min-height:64px;color:var(--slate-700);justify-content:center;align-items:center;gap:9px;font-size:12px;display:flex}.change-history-loading span{border:2px solid var(--slate-200);border-top-color:var(--orange-500);border-radius:50%;width:15px;height:15px;animation:.75s linear infinite spin}.change-history-loading p,.change-history-message p{margin:0}.change-history-message{border-radius:9px;gap:8px;padding:10px;font-size:12px;line-height:1.5;display:grid}.change-history-message--error{color:var(--red-600);background:var(--red-100)}.change-history-message .secondary-button{min-height:44px;padding:0 11px;font-size:12px}.change-history-message .secondary-button[aria-disabled=true],.change-history-more[aria-disabled=true]{cursor:wait;opacity:.65}.change-history-status{color:var(--slate-700);margin:8px 0;font-size:12px;line-height:1.5}.change-history-status:focus{outline:2px solid var(--orange-700);outline-offset:2px}.change-history-empty{color:var(--slate-700);background:var(--slate-100);text-align:center;border-radius:9px;margin:0;padding:12px;font-size:12px}.change-history-list{border:1px solid var(--slate-200);border-radius:11px;margin:0;padding:0;list-style:none;display:grid;overflow:hidden}.change-history-entry{gap:9px;padding:11px;display:grid}.change-history-entry+.change-history-entry{border-top:1px solid var(--slate-200)}.change-history-entry__heading{gap:3px;display:grid}.change-history-entry__heading strong{color:var(--navy-800);font-size:12px}.change-history-entry__heading time{color:var(--slate-700);font-size:12px}.change-history-areas{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.change-history-areas li{color:var(--navy-800);background:var(--slate-100);border-radius:8px;padding:6px 8px;font-size:12px;font-weight:750}.change-history-more{width:100%;min-height:44px;margin-top:9px;font-size:12px}.enrollment-edit{min-height:38px;margin-top:15px;font-size:12px}.enrollment-formalities{border-top:1px solid var(--slate-200);margin-top:17px;padding-top:16px}.enrollment-formalities__heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.enrollment-formalities__heading h4{color:var(--navy-900);margin:0;font-size:14px}.formality-refresh{border:1px solid var(--slate-200);min-height:32px;color:var(--slate-700);background:var(--white);border-radius:9px;padding:0 9px;font-size:12px;font-weight:800}.formality-refresh:hover:not(:disabled){border-color:var(--orange-300);color:var(--orange-600)}.formality-disclaimer{color:#755020;background:#fff7e8;border-radius:10px;margin:9px 0 12px;padding:10px 11px;font-size:12px;line-height:1.5}.formality-loading{min-height:72px;color:var(--slate-500);justify-content:center;align-items:center;gap:9px;font-size:12px;display:flex}.formality-loading span{border:2px solid var(--slate-200);border-top-color:var(--orange-500);border-radius:50%;width:15px;height:15px;animation:.75s linear infinite spin}.formality-loading p{margin:0}.formality-message{border-radius:10px;gap:8px;margin:10px 0;padding:10px 11px;font-size:12px;line-height:1.5;display:grid}.formality-message p{margin:0}.formality-message .secondary-button,.formality-message .primary-button{min-height:34px;padding:0 11px;font-size:12px}.formality-message--neutral{color:var(--slate-700);background:var(--slate-100)}.formality-message--success{color:var(--green-600);background:var(--green-100)}.formality-message--error{color:var(--red-600);background:var(--red-100)}.formality-message--uncertain{color:#68430f;background:#fff4dd;border:1px solid #edc57b}.formality-message--uncertain>div{flex-wrap:wrap;gap:7px;display:flex}.formality-list{border:1px solid var(--slate-200);border-radius:12px;margin:0;padding:0;list-style:none;display:grid;overflow:hidden}.formality-row{border-bottom:1px solid var(--slate-100);grid-template-columns:minmax(150px,1fr) minmax(190px,auto);align-items:center;gap:10px;min-width:0;padding:11px;display:grid}.formality-row:last-child{border-bottom:0}.formality-row__identity{justify-items:start;gap:6px;min-width:0;display:grid}.formality-row__identity strong{color:var(--navy-800);font-size:12px;line-height:1.35}.formality-status{color:var(--orange-600);background:var(--orange-100);white-space:nowrap;border-radius:999px;padding:4px 7px;font-size:12px;font-weight:850;display:inline-flex}.formality-status--confirmed{color:var(--green-600);background:var(--green-100)}.formality-status--not-applicable,.formality-status--untracked{color:var(--slate-700);background:var(--slate-100)}.formality-row__actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.formality-row__actions button{border-radius:9px;min-height:34px;padding:0 9px;font-size:12px;font-weight:800}.formality-row__actions .secondary-button{min-height:34px;padding:0 9px}.formality-confirm,.formality-status-button{border:1px solid var(--slate-200);color:var(--slate-700);background:var(--white)}.formality-confirm{color:var(--green-600);background:#f5fbf7;border-color:#b9dec7}.formality-confirm:hover:not(:disabled){background:var(--green-100)}.formality-status-button:hover:not(:disabled){border-color:var(--orange-300);color:var(--orange-600)}.formality-readonly{color:var(--slate-500);margin:10px 0 0;font-size:12px;line-height:1.45}.student-import-form{grid-template-columns:minmax(260px,1fr) minmax(260px,1fr) auto;align-items:end;gap:12px;margin-bottom:22px;display:grid}.student-import-help{color:var(--slate-700);background:var(--slate-100);border-radius:11px;grid-column:1/-1;gap:4px;padding:13px 14px;font-size:12px;display:grid}.student-import-help code{color:var(--navy-800);white-space:nowrap;font-size:12px;overflow-x:auto}.student-import-preview{border:1px solid var(--slate-200);border-radius:15px;overflow:hidden}.student-import-preview__heading{border-bottom:1px solid var(--slate-100);justify-content:space-between;align-items:flex-start;gap:16px;padding:17px 18px;display:flex}.student-import-preview__heading h3{color:var(--navy-900);margin:0 0 4px;font-size:18px}.student-import-preview__heading>div>span{color:var(--slate-500);font-size:12px}.import-summary{border-bottom:1px solid var(--slate-100);grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin:0;padding:15px 18px;display:grid}.import-summary>div{background:var(--slate-100);border-radius:9px;padding:10px}.import-summary dt{color:var(--slate-500);font-size:12px}.import-summary dd{color:var(--navy-900);margin:3px 0 0;font-size:17px;font-weight:850}.import-result{color:var(--green-600);background:var(--green-100);border-radius:11px;gap:4px;margin:16px 18px;padding:13px 14px;font-size:12px;line-height:1.5;display:grid}.student-import-table td:last-child{max-width:300px}.student-import-table ul{margin:0;padding-left:16px}.student-import-rows-purged{color:var(--slate-700);background:var(--slate-100);border-radius:11px;margin:16px 18px;padding:13px 14px;font-size:12px;line-height:1.5}.student-import-preview__actions{border-top:1px solid var(--slate-100);justify-content:flex-end;gap:9px;padding:14px 18px;display:flex}@keyframes pulse{50%{opacity:.4}}@keyframes shimmer{to{background-position:-200% 0}}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:1200px){.login-intro{padding-left:clamp(22px,4vw,44px);padding-right:clamp(22px,4vw,44px)}.login-showcase{padding-left:clamp(18px,3vw,34px);padding-right:clamp(18px,3vw,34px)}.login-preview{grid-template-columns:120px minmax(0,1fr)}.login-preview__sidebar{padding:14px 8px}.login-preview__sidebar li{gap:6px;padding:0 7px;font-size:12px}.login-preview__metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.login-assurances{gap:14px}.login-assurances li>span:last-child{font-size:12px}}@media (max-width:900px){.login-layout{grid-template-columns:minmax(0,1fr)}.login-showcase{padding-top:clamp(28px,6vw,48px)}.login-tagline{max-width:none}.login-access{width:min(560px,100%)}.login-preview{grid-template-columns:minmax(0,1fr)}.login-preview__sidebar{display:none}.login-assurances{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:1050px){.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.content-grid,.content-grid--secondary{grid-template-columns:1fr}.system-panel{max-width:none}.schedule-toolbar{flex-direction:column;align-items:stretch}.schedule-filters{justify-content:flex-start}.duration-row{grid-template-columns:minmax(180px,.8fr) minmax(220px,1.2fr)}.duration-add{grid-column:1/-1}.transition-add{grid-template-columns:1fr auto 1fr}.transition-add .secondary-button{grid-column:1/-1}.transition-row{grid-template-columns:1fr}.remove-rule{justify-self:end}.activation-link-card{grid-template-columns:1fr}.activation-copy-warning{grid-column:auto}.access-layout{grid-template-columns:1fr}.students-filters{grid-template-columns:repeat(3,minmax(0,1fr))}.students-filter-query{grid-column:span 2}.students-filter-actions{justify-content:flex-end}.student-enrollment-grid{grid-template-columns:1fr}.student-import-form{grid-template-columns:repeat(2,minmax(0,1fr))}.student-import-form .primary-button{grid-column:1/-1}.catalog-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.catalog-row{grid-template-columns:minmax(190px,1fr) minmax(210px,1.2fr) 100px}.catalog-row__actions{border-top:1px solid var(--slate-100);grid-column:1/-1;justify-content:flex-end;padding-top:9px}}@media (max-width:980px){.app-shell--panel{grid-template-columns:minmax(0,1fr)}.app-sidebar{z-index:6;border-right:0;border-bottom:1px solid var(--line);flex-direction:row;align-items:center;gap:16px;height:auto;padding:12px 18px;position:sticky;top:0}.app-sidebar__brand{padding:0}.app-sidebar__logo{width:auto;max-width:180px;height:34px}.app-nav{flex-direction:row;flex:1;gap:6px;min-width:0;overflow:auto hidden}.app-nav__item{white-space:nowrap;min-height:40px;padding:0 12px;font-size:13px}.app-topbar{min-height:64px;padding:12px 18px}.dashboard{padding:24px 18px 44px}}@media (max-width:700px){.app-topbar{flex-wrap:wrap;gap:12px}.app-topbar__side{flex-wrap:wrap;justify-content:flex-start;gap:8px;width:100%}.public-topbar{min-height:68px;padding:0 20px}.connection-alert{padding:6px 10px;font-size:12px}.account-control .account-identity{display:none}.dashboard{padding:22px 16px 40px}.login-intro,.login-showcase{padding-left:20px;padding-right:20px}.login-assurances{grid-template-columns:minmax(0,1fr);gap:18px}.login-preview__metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.metrics-grid{grid-template-columns:1fr}.metric-card{min-height:116px}.ride-row{grid-template-columns:60px minmax(0,1fr);gap:12px}.ride-meta,.ride-instructor{grid-column:2}.schedule-guardrail{flex-direction:column;align-items:flex-start;gap:4px}.schedule-filters{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.schedule-filters select{width:100%;min-width:0}.modal-backdrop{padding:12px}.draft-dialog{max-height:calc(100vh - 24px)}.configuration-heading{flex-direction:column;align-items:flex-start}.configuration-heading .primary-button{width:100%}.readiness-counts{grid-template-columns:repeat(2,minmax(0,1fr))}.readiness-card__footer{flex-direction:column;align-items:flex-start}.readiness-card__footer strong,.readiness-card__footer .secondary-button{margin-left:0}.configuration-section__heading{flex-direction:column;align-items:flex-start;gap:7px}.configuration-section__heading>p{text-align:left}.transition-add{grid-template-columns:1fr}.transition-arrow{display:none}.transition-fields{grid-template-columns:1fr}.activation-link-copy{grid-template-columns:1fr auto}.activation-link-copy .secondary-button{grid-column:1/-1}.students-heading{flex-direction:column;align-items:flex-start}.students-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.students-filter-query,.students-filter-actions{grid-column:1/-1}.students-filter-actions button{flex:1}.student-editor,.student-import{padding:20px 18px}.student-editor__heading{flex-direction:column;align-items:stretch;gap:13px}.student-editor__heading .secondary-button{width:100%}.student-card-page__title{align-items:flex-start}.student-contact-card dl{grid-template-columns:repeat(2,minmax(0,1fr))}.student-contact-card dl>div:last-child{grid-column:1/-1}.student-enrollment-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.formality-row{grid-template-columns:1fr}.formality-row__actions{justify-content:flex-start}.import-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.catalog-heading{flex-direction:column;align-items:stretch}.catalog-heading .primary-button{width:100%}.catalog-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-list-heading{flex-direction:column;align-items:flex-start}.catalog-list-controls{justify-content:space-between;width:100%}.catalog-row{grid-template-columns:minmax(0,1fr) auto;gap:11px}.catalog-row__dependency{grid-column:1/-1}.catalog-row__state{grid-area:1/2;justify-items:end}.catalog-row__actions{grid-column:1/-1}}@media (max-width:440px){.refresh-button{justify-content:center;width:44px;padding:0;font-size:0}.refresh-button svg{width:18px}.panel-heading,.ride-row,.progress-list li,.activity-list li{padding-left:18px;padding-right:18px}.login-quick-access,.login-access .login-form{border-radius:var(--radius-md);padding:22px 18px}.mfa-qr{width:168px;height:168px}.recovery-code-list{grid-template-columns:1fr}.app-sidebar{gap:10px}.app-nav__item{padding:0 10px;font-size:12px}.app-nav__item svg{width:17px;height:17px}.account-control{padding:4px 4px 4px 6px}.account-control button span{display:none}.account-control button{padding:0 10px}.login-preview__metrics{grid-template-columns:minmax(0,1fr)}.demo-badge{padding:6px 9px;font-size:12px}.schedule-heading{flex-direction:column;align-items:flex-start}.schedule-heading .primary-button{width:100%}.schedule-filters,.form-grid{grid-template-columns:1fr}.form-grid__wide{grid-column:auto}.draft-dialog__heading,.draft-form{padding-left:18px;padding-right:18px}.draft-visibility-note{margin-left:18px;margin-right:18px}.readiness-card__main{flex-direction:column;align-items:flex-start}.readiness-counts{grid-template-columns:1fr}.duration-row{grid-template-columns:1fr;padding-left:18px;padding-right:18px}.duration-add{grid-column:auto}.duration-add input{flex:1}.transition-add{margin-left:18px;margin-right:18px}.transition-row{padding-left:18px;padding-right:18px}.transition-route{grid-template-columns:1fr}.transition-route span{justify-self:start;transform:rotate(90deg)}.configuration-savebar{flex-direction:column;align-items:stretch;gap:8px;bottom:6px}.configuration-savebar .primary-button{width:100%}.public-access-badge{font-size:0}.public-access-badge:after{content:"Bezpiecznie";font-size:12px}.activation-link-card{padding:19px 18px}.activation-link-copy{grid-template-columns:1fr}.activation-link-copy .secondary-button{grid-column:auto}.students-heading__actions,.student-card-page__actions,.student-form__actions,.student-import-preview__actions{flex-direction:column;align-items:stretch}.students-heading__actions button,.student-card-page__actions button,.student-form__actions button,.student-import-preview__actions button{width:100%}.students-filters{grid-template-columns:1fr}.students-filter-query,.students-filter-actions{grid-column:auto}.students-list-heading{flex-direction:column;align-items:flex-start}.students-list-heading .refresh-button{width:100%;font-size:12px}.students-pagination{flex-direction:column;align-items:stretch}.students-pagination>div{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.student-form__grid{grid-template-columns:1fr}.student-form__wide,.student-form__privacy-hint{grid-column:auto}.student-card-page__title{flex-direction:column;gap:10px}.student-contact-card dl,.student-enrollment-meta,.minute-balance{grid-template-columns:1fr}.formality-message--uncertain>div,.formality-row__actions{grid-template-columns:1fr;display:grid}.formality-message--uncertain button,.formality-row__actions button{width:100%}.student-contact-card dl>div:last-child{grid-column:auto}.student-import-form{grid-template-columns:1fr}.student-import-form .primary-button{grid-column:auto}.student-import-preview__heading{flex-direction:column}.import-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.configuration-area-switch{grid-template-columns:1fr}.catalog-summary{scroll-snap-type:x mandatory;display:flex;overflow-x:auto}.catalog-summary button{scroll-snap-align:start;min-width:154px}.catalog-list-controls{flex-direction:column;align-items:stretch}.catalog-list-controls .refresh-button{width:100%;font-size:12px}.catalog-row{padding-left:17px;padding-right:17px}.catalog-row__identity span{white-space:normal}.catalog-row__actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.catalog-row__actions button{width:100%}.catalog-list-footer{flex-direction:column;align-items:flex-start}.catalog-dialog{max-height:calc(100vh - 24px)}.catalog-dialog__heading,.catalog-form,.catalog-lifecycle-uncertain{padding-left:18px;padding-right:18px}.catalog-form__grid{grid-template-columns:1fr}.catalog-form__wide{grid-column:auto}.catalog-form__actions{flex-direction:column;align-items:stretch}.catalog-form__actions button{width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--shell-gutter:32px;--bottom-nav-height:64px;--touch-target:44px}.app-shell--panel{align-items:stretch}.app-shell--desktop{grid-template-columns:320px minmax(0,1fr)}.app-shell--tablet,.app-shell--mobile{grid-template-columns:none;display:block}.app-shell--mobile .panel-body{padding-bottom:calc(var(--bottom-nav-height) + 18px)}.app-topbar{gap:14px}.app-topbar__menu{min-height:var(--touch-target);min-width:var(--touch-target);border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink);background:var(--white);align-items:center;gap:8px;padding:0 12px;font-size:14px;font-weight:700;display:inline-flex}.app-topbar__menu svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;width:20px;height:20px}.app-topbar__brand{flex:none;align-items:center;display:inline-flex}.app-topbar__logo{width:auto;height:34px}.app-shell--mobile .app-topbar{flex-wrap:wrap;gap:8px 12px;min-height:60px;padding:8px 16px}.app-shell--mobile .app-topbar__logo{height:30px}.app-shell--mobile .page-header{flex:100%;order:2}.app-shell--mobile .page-header__eyebrow{display:none}.app-shell--mobile .page-header__title{font-size:19px}.app-shell--mobile .page-header__actions button{min-height:var(--touch-target)}.app-shell--tablet .app-topbar{min-height:80px;padding:10px 20px}.app-shell--tablet .page-header__title{font-size:20px}.bottom-nav{height:var(--bottom-nav-height);padding:4px 4px calc(4px + env(safe-area-inset-bottom,0px));z-index:20;border-top:1px solid var(--line);background:var(--white);grid-template-columns:repeat(5,minmax(0,1fr));gap:2px;display:grid;position:fixed;inset:auto 0 0}.bottom-nav__item{min-height:var(--touch-target);min-width:0;color:var(--ink-muted);background:0 0;border:0;border-radius:12px;align-content:center;justify-items:center;gap:2px;padding:4px 2px;font-size:12px;font-weight:700;display:grid}.bottom-nav__item span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.bottom-nav__item svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.bottom-nav__item.active{color:var(--brand-on-primary);background:var(--cta-gradient)}.sheet-backdrop{z-index:40;background:color-mix(in srgb, var(--surface-dark) 42%, transparent);display:flex;position:fixed;inset:0}.sheet-backdrop--center{justify-content:center;align-items:center;padding:24px}.sheet-backdrop--right{justify-content:flex-end;align-items:stretch;padding:0}.sheet-backdrop--left{justify-content:flex-start;align-items:stretch;padding:0}.sheet-backdrop--bottom{justify-content:center;align-items:flex-end;padding:0}.sheet{border-radius:var(--radius-lg);background:var(--white);max-width:100%;max-height:100%;box-shadow:var(--shadow-lift);flex-direction:column;gap:14px;display:flex;overflow:auto}.sheet--dialog{width:min(680px,100%);padding:0}.sheet--panel{border-radius:0;width:min(430px,100%);padding:22px 24px 32px}.sheet:focus-visible{outline:3px solid var(--accent-glow);outline-offset:-3px}.panel-drawer,.panel-more{width:min(320px,90%);padding:20px 18px 26px}.panel-drawer__logo{height:30px}.panel-drawer__heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.panel-drawer__heading h2{margin:0;font-size:18px}.panel-drawer__account{border:1px solid var(--line);border-radius:var(--radius-md);align-items:center;gap:10px;padding:12px;display:flex}.panel-drawer__mark{width:34px;height:34px}.panel-drawer{border-radius:0;height:100%}.panel-more{border-radius:var(--radius-lg) var(--radius-lg) 0 0;width:min(560px,100%)}@media (max-width:767px){.sheet-backdrop{justify-content:stretch;align-items:stretch;padding:0}.sheet--dialog,.sheet--panel,.panel-drawer,.panel-more{border-radius:0;width:100%;height:100%;max-height:100%}}.panel-page{width:min(1440px,100%);min-width:0;padding:16px var(--shell-gutter) 40px;align-content:start;gap:14px;margin:0 auto;display:grid}.app-shell--tablet .panel-page{--shell-gutter:20px}.app-shell--mobile .panel-page{--shell-gutter:16px;padding-top:14px}.app-shell--fit.app-shell--desktop,.app-shell--fit.app-shell--tablet{height:100dvh;overflow:hidden}.app-shell--fit.app-shell--desktop .panel-body,.app-shell--fit.app-shell--tablet .panel-body{height:100dvh;min-height:0;overflow:hidden}.app-shell--fit .app-topbar{flex:none}.app-shell--fit.app-shell--desktop .panel-page,.app-shell--fit.app-shell--tablet .panel-page{flex-direction:column;height:100%;min-height:0;padding-bottom:12px;display:flex;overflow:hidden}.calendar-stage{min-width:0;min-height:0;display:grid}.app-shell--fit.app-shell--desktop .calendar-stage,.app-shell--fit.app-shell--tablet .calendar-stage{flex:auto;min-height:0}.panel-hint{border-radius:var(--radius-sm);border:1px solid color-mix(in srgb, var(--brand-primary) 24%, transparent);background:var(--accent-soft);color:var(--ink-soft);margin:0;padding:10px 14px;font-size:13px;line-height:1.5}.panel-notice,.panel-alert{border-radius:var(--radius-sm);margin:0;padding:12px 15px;font-size:14px;line-height:1.5}.panel-notice{border:1px solid color-mix(in srgb, var(--green-600) 30%, transparent);background:var(--green-100);color:var(--green-700)}.panel-alert{border:1px solid color-mix(in srgb, var(--red-600) 30%, transparent);background:var(--red-100);color:var(--red-600)}.panel-loading{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--white);min-height:160px;color:var(--ink-muted);place-content:center;justify-items:center;gap:12px;font-size:14px;display:grid}.panel-loading>span{border:3px solid var(--line);border-top-color:var(--accent);border-radius:50%;width:34px;height:34px;animation:.9s linear infinite panel-spin}.panel-loading p{margin:0}@keyframes panel-spin{to{transform:rotate(360deg)}}.panel-error-state,.panel-empty-state{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--white);text-align:center;align-content:center;justify-items:center;gap:10px;min-height:180px;padding:30px 24px;display:grid}.panel-error-state{border-color:color-mix(in srgb, var(--red-600) 26%, transparent)}.panel-empty-state--filters{border-style:dashed}.panel-error-state--inline,.panel-empty-state--inline{background:0 0;border:0;min-height:120px;padding:18px 12px}.panel-error-state h1,.panel-error-state h2,.panel-error-state h3,.panel-empty-state h2,.panel-empty-state h3{color:var(--ink);margin:0;font-size:17px}.panel-error-state p,.panel-empty-state p{max-width:46ch;color:var(--ink-muted);margin:0;font-size:14px;line-height:1.55}.link-button{min-height:var(--touch-target);color:var(--accent-strong);background:0 0;border:0;border-radius:10px;padding:0 10px;font-size:13px;font-weight:800}.link-button:hover{background:var(--accent-soft)}.status-badge{border:1px solid var(--line-strong);min-height:24px;color:var(--ink-soft);background:var(--page-deep);border-radius:999px;align-items:center;gap:6px;padding:3px 9px;font-size:12px;font-weight:700;line-height:1.3;display:inline-flex}.status-badge__marker{border:2px solid;border-radius:50%;flex:none;width:9px;height:9px}.status-badge--draft{color:var(--ink-soft);background:var(--page-deep)}.status-badge--draft .status-badge__marker{border-style:dashed;border-radius:3px}.status-badge--free{color:var(--green-700);border-color:color-mix(in srgb, var(--green-600) 40%, transparent);background:var(--green-100)}.status-badge--free .status-badge__marker{background:0 0}.status-badge--confirmed{color:var(--accent-strong);border-color:color-mix(in srgb, var(--brand-primary) 42%, transparent);background:var(--accent-soft)}.status-badge--confirmed .status-badge__marker{background:currentColor}.status-badge--in-progress{color:var(--accent-strong);border-color:var(--accent);background:var(--accent-soft)}.status-badge--in-progress .status-badge__marker{background:currentColor;border-radius:2px}.status-badge--fulfilled{color:var(--green-700);border-color:color-mix(in srgb, var(--green-600) 40%, transparent);background:var(--green-100)}.status-badge--fulfilled .status-badge__marker{background:currentColor;border-radius:2px}.status-badge--archived{color:var(--ink-muted)}.status-badge--conflict,.status-badge--attention{color:var(--red-600);border-color:color-mix(in srgb, var(--red-600) 40%, transparent);background:var(--red-100)}.status-badge--conflict .status-badge__marker,.status-badge--attention .status-badge__marker{border-radius:2px;transform:rotate(45deg)}.kpi-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;display:grid}.app-shell--mobile .kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi-card{text-align:left;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--white);min-width:0;min-height:116px;box-shadow:var(--shadow-soft);color:inherit;align-content:start;justify-items:start;gap:4px;padding:16px 18px;display:grid}.kpi-card:hover{border-color:var(--line-strong);box-shadow:var(--shadow)}.kpi-card__icon{width:30px;height:30px;color:var(--accent-strong);background:var(--accent-soft);border-radius:9px;place-items:center;display:grid}.kpi-card__icon svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.kpi-card__label{color:var(--ink-soft);margin:0;font-size:13px;font-weight:700}.kpi-card__value{color:var(--ink);letter-spacing:-.02em;font-size:28px;font-weight:800}.kpi-card__note{color:var(--ink-muted);font-size:12px;line-height:1.4}.kpi-card--placeholder{box-shadow:none;border-style:dashed}.kpi-card--placeholder .kpi-card__value{color:var(--ink-muted)}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-items:start;gap:16px;display:grid}.panel-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--white);min-width:0;box-shadow:var(--shadow-soft);align-content:start;gap:12px;padding:18px 20px 20px;display:grid}.panel-card--seam{box-shadow:none;border-style:dashed}.panel-card__heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.panel-card__heading h2{color:var(--ink);margin:0;font-size:18px}.today-list,.attention-list,.progress-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.today-list__item,.progress-list__item{width:100%;min-height:var(--touch-target);border:1px solid var(--line);border-radius:var(--radius-md);background:var(--white);text-align:left;color:inherit;grid-template-columns:62px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 12px;display:grid}.today-list__item:hover,.progress-list__item:hover{border-color:var(--line-strong);background:var(--page)}.today-list__time{gap:1px;display:grid}.today-list__time strong{color:var(--ink);font-size:15px}.today-list__time span{color:var(--ink-muted);font-size:12px}.today-list__main{gap:1px;min-width:0;display:grid}.today-list__main strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.today-list__main span{color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.attention-list>li{border:1px solid color-mix(in srgb, var(--red-600) 22%, transparent);border-radius:var(--radius-md);background:var(--red-100);grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;display:grid}.attention-list__icon{color:var(--red-600);place-items:center;display:grid}.progress-list__item{grid-template-columns:minmax(0,1fr);gap:8px}.progress-identity{gap:2px;min-width:0;display:grid}.progress-identity strong{color:var(--ink);font-size:14px}.progress-identity>span{color:var(--ink-muted);font-size:12px}.progress-meter{gap:4px;display:grid}.progress-meter .progress-value,.progress-meter>span{color:var(--ink-soft);font-size:12px;font-weight:700}.progress-reserved{color:var(--ink-muted);font-size:12px}.dashboard-sync{color:var(--ink-muted);margin:0;font-size:12px}.payments-seam{text-align:left;justify-items:start}.payments-seam__list{color:var(--ink-soft);gap:6px;margin:0;padding-left:20px;font-size:13px;line-height:1.55;display:grid}@media (prefers-reduced-motion:reduce){.panel-loading>span{animation:none}.kpi-card,.today-list__item,.progress-list__item{transition:none}}:root{--cal-hour-height:32px;--cal-axis-width:56px}.cal-toolbar{flex-wrap:wrap;flex:none;align-items:center;gap:8px 10px;min-height:52px;display:flex}.cal-toolbar__period{align-items:center;gap:6px;display:flex}.cal-step,.cal-today,.cal-mode{min-height:var(--touch-target);border:1px solid var(--line-strong);border-radius:var(--radius-sm);color:var(--ink);background:var(--white);padding:0 14px;font-size:14px;font-weight:700}.cal-step{min-width:var(--touch-target);padding:0}.cal-step:hover,.cal-today:hover{background:var(--page-deep)}.cal-datepick input{min-height:var(--touch-target);border:1px solid var(--line-strong);border-radius:var(--radius-sm);color:var(--ink);background:var(--white);padding:0 10px;font-size:14px}.cal-toolbar__modes{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--page-deep);flex-wrap:wrap;gap:3px;padding:3px;display:flex}.cal-mode{min-height:38px;color:var(--ink-soft);background:0 0;border:0;padding:0 11px}.cal-mode--active{color:var(--brand-on-primary);background:var(--cta-gradient)}.cal-summary{color:var(--ink-muted);flex:none;margin:0;font-size:12px}.cal-filters{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.cal-filters__field{min-width:0;display:block}.cal-filters__fields label{gap:4px;min-width:0;display:grid}.cal-filters__fields label>span{color:var(--ink-soft);font-size:12px;font-weight:700}.cal-filters__field select,.cal-filters__fields select,.cal-filters__fields input[type=search]{min-height:var(--touch-target);border:1px solid var(--line-strong);border-radius:var(--radius-sm);min-width:150px;max-width:100%;color:var(--ink);background:var(--white);padding:0 10px;font-size:14px}.cal-filters__more{min-height:var(--touch-target);border:1px solid var(--line-strong);border-radius:var(--radius-sm);color:var(--ink);background:var(--white);padding:0 16px;font-size:14px;font-weight:700}.cal-filters__chips{flex:none;align-items:center;gap:10px;min-width:0;display:flex}.cal-filters__chips ul{scrollbar-width:thin;flex:auto;gap:6px;min-width:0;margin:0;padding:2px 0;list-style:none;display:flex;position:relative;overflow-x:auto}.filter-chip{white-space:nowrap;border:1px solid var(--line-strong);min-height:34px;color:var(--ink-soft);background:var(--white);border-radius:999px;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:700;display:inline-flex}.filter-chip:hover{border-color:var(--accent);color:var(--accent-strong)}.filter-chip__remove{font-size:15px;line-height:1}.cal-filters__clear{min-height:34px;color:var(--accent-strong);background:var(--accent-soft);border:0;border-radius:999px;flex:none;padding:0 12px;font-size:12px;font-weight:800}.cal-filters__panel{gap:16px;padding:20px 22px 26px}.cal-filters__panel-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.cal-filters__panel-heading h2{margin:0;font-size:18px}.cal-filters__fields{gap:12px;display:grid}.cal-filters__switch{min-height:var(--touch-target);align-items:center;gap:8px;display:flex}.cal-filters__switch input{width:20px;height:20px}.cal-filters__switch span{color:var(--ink);font-size:14px;font-weight:700}.cal-filters__note{color:var(--ink-muted);margin:0;font-size:12px;line-height:1.5}.cal-filters__panel-actions{justify-content:flex-end;gap:10px;display:flex}@media (min-width:768px){.sheet.cal-filters__panel{width:min(420px,100%)}}.cal-frame{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--white);grid-template-rows:auto minmax(0,1fr);min-width:0;height:100%;min-height:0;display:grid;overflow:hidden}.cal-headrow{z-index:3;border-bottom:1px solid var(--line);background:var(--white);flex:none;display:flex}.cal-axis-head{width:var(--cal-axis-width);border-right:1px solid var(--line);flex:none}.cal-dayheads{flex:auto;min-width:0;margin:0;padding:0;list-style:none;display:grid}.cal-dayheads--1{grid-template-columns:minmax(0,1fr)}.cal-dayheads--3{grid-template-columns:repeat(3,minmax(0,1fr))}.cal-dayheads--7{grid-template-columns:repeat(7,minmax(0,1fr))}.cal-dayhead{border-left:1px solid var(--line);justify-items:center;gap:1px;min-width:0;padding:6px 8px;display:grid}.cal-dayhead:first-child{border-left:0}.cal-dayhead__label{max-width:100%;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:800;overflow:hidden}.cal-dayhead__count{color:var(--ink-muted);font-size:12px}.cal-dayhead--today{background:var(--accent-soft)}.cal-dayhead__today{color:var(--accent-strong);font-size:12px;font-weight:800}.cal-scroll{flex-direction:column;min-height:0;display:flex;overflow:hidden auto}.cal-body{flex:1 0 auto;min-width:0;display:flex}.cal-body--h1{min-height:calc(1 * var(--cal-hour-height))}.cal-body--h2{min-height:calc(2 * var(--cal-hour-height))}.cal-body--h3{min-height:calc(3 * var(--cal-hour-height))}.cal-body--h4{min-height:calc(4 * var(--cal-hour-height))}.cal-body--h5{min-height:calc(5 * var(--cal-hour-height))}.cal-body--h6{min-height:calc(6 * var(--cal-hour-height))}.cal-body--h7{min-height:calc(7 * var(--cal-hour-height))}.cal-body--h8{min-height:calc(8 * var(--cal-hour-height))}.cal-body--h9{min-height:calc(9 * var(--cal-hour-height))}.cal-body--h10{min-height:calc(10 * var(--cal-hour-height))}.cal-body--h11{min-height:calc(11 * var(--cal-hour-height))}.cal-body--h12{min-height:calc(12 * var(--cal-hour-height))}.cal-body--h13{min-height:calc(13 * var(--cal-hour-height))}.cal-body--h14{min-height:calc(14 * var(--cal-hour-height))}.cal-body--h15{min-height:calc(15 * var(--cal-hour-height))}.cal-body--h16{min-height:calc(16 * var(--cal-hour-height))}.cal-body--h17{min-height:calc(17 * var(--cal-hour-height))}.cal-body--h18{min-height:calc(18 * var(--cal-hour-height))}.cal-body--h19{min-height:calc(19 * var(--cal-hour-height))}.cal-body--h20{min-height:calc(20 * var(--cal-hour-height))}.cal-body--h21{min-height:calc(21 * var(--cal-hour-height))}.cal-body--h22{min-height:calc(22 * var(--cal-hour-height))}.cal-body--h23{min-height:calc(23 * var(--cal-hour-height))}.cal-body--h24{min-height:calc(24 * var(--cal-hour-height))}.cal-axis{width:var(--cal-axis-width);border-right:1px solid var(--line);background:var(--white);flex:none;margin:0;padding:0;list-style:none;display:grid}.cal-axis--h1{grid-template-rows:repeat(1,minmax(0,1fr))}.cal-axis--h2{grid-template-rows:repeat(2,minmax(0,1fr))}.cal-axis--h3{grid-template-rows:repeat(3,minmax(0,1fr))}.cal-axis--h4{grid-template-rows:repeat(4,minmax(0,1fr))}.cal-axis--h5{grid-template-rows:repeat(5,minmax(0,1fr))}.cal-axis--h6{grid-template-rows:repeat(6,minmax(0,1fr))}.cal-axis--h7{grid-template-rows:repeat(7,minmax(0,1fr))}.cal-axis--h8{grid-template-rows:repeat(8,minmax(0,1fr))}.cal-axis--h9{grid-template-rows:repeat(9,minmax(0,1fr))}.cal-axis--h10{grid-template-rows:repeat(10,minmax(0,1fr))}.cal-axis--h11{grid-template-rows:repeat(11,minmax(0,1fr))}.cal-axis--h12{grid-template-rows:repeat(12,minmax(0,1fr))}.cal-axis--h13{grid-template-rows:repeat(13,minmax(0,1fr))}.cal-axis--h14{grid-template-rows:repeat(14,minmax(0,1fr))}.cal-axis--h15{grid-template-rows:repeat(15,minmax(0,1fr))}.cal-axis--h16{grid-template-rows:repeat(16,minmax(0,1fr))}.cal-axis--h17{grid-template-rows:repeat(17,minmax(0,1fr))}.cal-axis--h18{grid-template-rows:repeat(18,minmax(0,1fr))}.cal-axis--h19{grid-template-rows:repeat(19,minmax(0,1fr))}.cal-axis--h20{grid-template-rows:repeat(20,minmax(0,1fr))}.cal-axis--h21{grid-template-rows:repeat(21,minmax(0,1fr))}.cal-axis--h22{grid-template-rows:repeat(22,minmax(0,1fr))}.cal-axis--h23{grid-template-rows:repeat(23,minmax(0,1fr))}.cal-axis--h24{grid-template-rows:repeat(24,minmax(0,1fr))}.cal-axis__hour{min-height:0;color:var(--ink-muted);font-variant-numeric:tabular-nums;justify-content:flex-end;align-items:flex-start;padding:2px 8px 0 0;font-size:12px;display:flex}.cal-grid{flex:auto;align-self:stretch;min-width:0;display:block}.cal-hourline{stroke:var(--line);stroke-width:1px}.cal-hourline--major{stroke:var(--line-strong)}.cal-dayline{stroke:var(--line);stroke-width:1px}.cal-nowline{stroke:var(--accent);stroke-width:2px;stroke-dasharray:4 3}.cal-daysurface{fill:#0000}.cal-daysurface--clickable{cursor:copy}.cal-eventbox{overflow:visible}.cal-event{border:1px solid var(--line-strong);border-left:4px solid var(--ink-muted);background:var(--white);width:100%;height:100%;color:var(--ink);text-align:left;box-shadow:var(--shadow-soft);border-radius:8px;flex-direction:column;gap:1px;padding:4px 6px;display:flex;overflow:hidden}.cal-event__time{font-variant-numeric:tabular-nums;font-size:12px;font-weight:800}.cal-event__who{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:700;overflow:hidden}.cal-event__status{color:var(--ink-soft);white-space:nowrap;align-items:center;gap:5px;font-size:12px;display:inline-flex;overflow:hidden}.cal-event__marker{border:2px solid;border-radius:50%;flex:none;width:8px;height:8px}.cal-event__conflict{color:var(--red-600);background:var(--red-100);border-radius:999px;padding:0 5px;font-size:12px;font-weight:800}.cal-event__extra{color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.cal-event--draft{border-style:dashed;border-left-color:var(--ink-muted);background:var(--page)}.cal-event--draft .cal-event__marker{border-style:dashed;border-radius:2px}.cal-event--free{border-left-color:var(--green-600);background:var(--green-100)}.cal-event--free .cal-event__status{color:var(--green-700)}.cal-event--confirmed{border-left-color:var(--accent);background:var(--accent-soft)}.cal-event--confirmed .cal-event__marker{background:currentColor}.cal-event--in-progress{border-left-color:var(--accent-strong);background:var(--accent-soft)}.cal-event--in-progress .cal-event__marker{background:currentColor;border-radius:2px}.cal-event--fulfilled{border-left-color:var(--green-700);background:var(--white)}.cal-event--fulfilled .cal-event__marker{background:currentColor;border-radius:2px}.cal-event--archived{opacity:.7}.cal-event--conflict{border-color:var(--red-600);border-left-color:var(--red-600)}.cal-event--overlapping{box-shadow:var(--shadow)}.cal-event--selected{outline:3px solid var(--accent);outline-offset:-1px}.cal-event--compact .cal-event__status{font-size:12px}.cal-agenda{align-content:start;gap:14px;min-height:0;display:grid;overflow:hidden auto}.cal-agenda__day{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--white);overflow:hidden}.cal-agenda__heading{z-index:2;border-bottom:1px solid var(--line);background:var(--white);color:var(--ink);justify-content:space-between;align-items:center;gap:12px;margin:0;padding:12px 16px;font-size:15px;display:flex;position:sticky;top:0}.cal-agenda__heading--today{background:var(--accent-soft)}.cal-agenda__count{color:var(--ink-muted);font-size:12px;font-weight:700}.cal-agenda__empty{color:var(--ink-muted);margin:0;padding:14px 16px;font-size:13px}.cal-agenda__list{gap:8px;margin:0;padding:10px;list-style:none;display:grid}.cal-agenda__item{width:100%;min-height:var(--touch-target);border:1px solid var(--line);border-left:4px solid var(--ink-muted);border-radius:var(--radius-md);background:var(--white);color:inherit;text-align:left;grid-template-columns:62px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px 12px;display:grid}.cal-agenda__item:hover{border-color:var(--line-strong);background:var(--page)}.cal-agenda__item--draft{border-style:dashed}.cal-agenda__item--free{border-left-color:var(--green-600)}.cal-agenda__item--confirmed,.cal-agenda__item--in-progress{border-left-color:var(--accent)}.cal-agenda__item--fulfilled{border-left-color:var(--green-700)}.cal-agenda__item--conflict{border-left-color:var(--red-600)}.cal-agenda__item--selected{outline:3px solid var(--accent);outline-offset:-1px}.cal-agenda__time{font-variant-numeric:tabular-nums;gap:1px;display:grid}.cal-agenda__time strong{color:var(--ink);font-size:15px}.cal-agenda__time>span{color:var(--ink-muted);font-size:12px}.cal-agenda__main{gap:2px;min-width:0;display:grid}.cal-agenda__main strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.cal-agenda__main>span{color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.cal-agenda__badges{justify-items:end;gap:4px;display:grid}@media (max-width:767px){.cal-agenda__item{grid-template-columns:56px minmax(0,1fr)}.cal-agenda__badges{grid-column:1/-1;justify-items:start}.cal-toolbar__modes{width:100%}.cal-mode{flex:auto;padding:0 8px}.cal-filters{width:100%}.cal-filters__field{flex:140px}.cal-filters__field select{width:100%;min-width:0}.cal-month__weekday{padding:6px 2px}}.cal-month{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--white);grid-template-rows:auto minmax(0,1fr);min-width:0;height:100%;min-height:0;display:grid;overflow:hidden}.cal-month__weekdays{border-bottom:1px solid var(--line);background:var(--white);grid-template-columns:repeat(7,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.cal-month__weekday{color:var(--ink-soft);text-align:center;padding:7px 6px;font-size:12px;font-weight:800}.cal-month__grid{grid-template-columns:repeat(7,minmax(0,1fr));min-height:0;margin:0;padding:0;list-style:none;display:grid}.cal-month__grid--w4{grid-template-rows:repeat(4,minmax(0,1fr))}.cal-month__grid--w5{grid-template-rows:repeat(5,minmax(0,1fr))}.cal-month__grid--w6{grid-template-rows:repeat(6,minmax(0,1fr))}.cal-monthday{border-left:1px solid var(--line);border-top:1px solid var(--line);grid-template-rows:auto minmax(0,1fr) auto;gap:2px;min-width:0;min-height:0;padding:3px 4px 4px;display:grid;overflow:hidden}.cal-monthday:nth-child(7n+1){border-left:0}.cal-monthday--weekend{background:var(--page)}.cal-monthday--weekend .cal-monthday__number{text-underline-offset:3px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.cal-monthday--outside{background:var(--page-deep)}.cal-monthday--outside .cal-monthday__number{color:var(--ink-soft)}.cal-monthday--today .cal-monthday__number{color:var(--accent-strong)}.cal-monthday--selected{outline:2px solid var(--accent);outline-offset:-2px}.cal-monthday__head{width:100%;min-height:24px;color:inherit;text-align:left;background:0 0;border:0;border-radius:6px;align-items:center;gap:5px;padding:0 2px;display:flex}.cal-monthday__head:hover{background:var(--page-deep)}.cal-monthday__number{color:var(--ink);font-variant-numeric:tabular-nums;font-size:13px;font-weight:800}.cal-monthday__today{color:var(--accent-strong);font-size:12px;font-weight:800}.cal-monthday__count{color:var(--ink-muted);margin-left:auto;font-size:12px;font-weight:700}.cal-monthday__list{align-content:start;gap:2px;min-height:0;margin:0;padding:0;list-style:none;display:grid;overflow:hidden}.cal-monthevent{border:1px solid var(--line-strong);border-left:3px solid var(--ink-muted);background:var(--white);width:100%;min-height:21px;color:var(--ink);text-align:left;border-radius:6px;align-items:center;gap:5px;padding:1px 5px;font-size:12px;display:flex;overflow:hidden}.cal-monthevent__marker{border:2px solid;border-radius:50%;flex:none;width:8px;height:8px}.cal-monthevent__time{font-variant-numeric:tabular-nums;flex:none;font-weight:800}.cal-monthevent__who{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.cal-monthevent__conflict{color:var(--red-600);background:var(--red-100);border-radius:999px;flex:none;padding:0 5px;font-size:12px;font-weight:800}.cal-monthevent--draft{background:var(--page);border-style:dashed}.cal-monthevent--draft .cal-monthevent__marker{border-style:dashed;border-radius:2px}.cal-monthevent--free{border-left-color:var(--green-600);color:var(--green-700)}.cal-monthevent--confirmed{border-left-color:var(--accent)}.cal-monthevent--confirmed .cal-monthevent__marker{background:currentColor}.cal-monthevent--in-progress{border-left-color:var(--accent-strong)}.cal-monthevent--in-progress .cal-monthevent__marker{background:currentColor;border-radius:2px}.cal-monthevent--fulfilled{border-left-color:var(--green-700)}.cal-monthevent--fulfilled .cal-monthevent__marker{background:currentColor;border-radius:2px}.cal-monthevent--archived{opacity:.7}.cal-monthevent--conflict{border-color:var(--red-600);border-left-color:var(--red-600)}.cal-monthevent--selected{outline:2px solid var(--accent);outline-offset:-1px}.cal-monthday__more{min-height:20px;color:var(--accent-strong);background:var(--accent-soft);text-align:left;border:0;border-radius:6px;padding:0 5px;font-size:12px;font-weight:800}.cal-month--compact .cal-month__grid{grid-template-rows:none;grid-auto-rows:minmax(46px,auto)}.cal-month--compact .cal-monthday{grid-template-rows:auto}.cal-month--compact .cal-monthday__head{min-height:var(--touch-target);flex-direction:column;justify-content:center;align-items:center;gap:1px}.cal-month--compact .cal-monthday__count{margin-left:0}.cal-dayagenda{gap:12px}.cal-dayagenda__heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.cal-dayagenda__heading h2{margin:0;font-size:18px}.cal-dayagenda__heading h2:first-letter{text-transform:uppercase}.event-panel__heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.event-panel__heading h2{color:var(--ink);margin:0;font-size:20px}.event-panel__time{color:var(--ink-soft);margin:0;font-size:15px;font-weight:700}.event-panel__badges{flex-wrap:wrap;gap:6px;margin:0;display:flex}.event-panel__warning,.event-panel__error,.event-panel__note{border-radius:var(--radius-sm);margin:0;padding:10px 12px;font-size:13px;line-height:1.5}.event-panel__warning,.event-panel__error{border:1px solid color-mix(in srgb, var(--red-600) 30%, transparent);background:var(--red-100);color:var(--red-600)}.event-panel__note{background:var(--page-deep);color:var(--ink-soft)}.event-panel__facts{gap:10px;margin:0;display:grid}.event-panel__facts>div{gap:2px;display:grid}.event-panel__facts dt{color:var(--ink-muted);font-size:12px;font-weight:700}.event-panel__facts dd{color:var(--ink);margin:0;font-size:14px;line-height:1.45}.event-panel__links,.event-panel__actions{flex-wrap:wrap;gap:8px;display:flex}.event-panel__links .secondary-button,.event-panel__actions button{min-height:var(--touch-target)}:root{--sch-hour-height:52px;--sch-axis-width:52px;--sch-pool-width:320px;--sch-inspector-width:320px;--sch-name-width:132px}.sch-page{grid-template-rows:auto auto minmax(0,1fr);gap:10px;height:100%;min-height:0;display:grid}.sch-page__notice{margin:0}.sch-layout{grid-template-columns:var(--sch-pool-width) minmax(0, 1fr) var(--sch-inspector-width);gap:12px;min-height:0;display:grid}.sch-main{flex-direction:column;min-width:0;min-height:0;display:flex}@media (max-width:1279px){.sch-layout{grid-template-columns:280px minmax(0,1fr)}.sch-inspector{display:none}}@media (max-width:767px){.sch-layout{grid-template-columns:minmax(0,1fr)}.sch-pool{max-height:42vh}}.sch-toolbar{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--white);flex-wrap:wrap;align-items:center;gap:8px;padding:8px 10px;display:flex}.sch-toolbar__nav{align-items:center;gap:6px;display:flex}.sch-toolbar__date{color:var(--ink);font-size:14px;font-weight:800}.sch-toolbar__modes{flex-wrap:wrap;gap:4px;margin-inline-start:auto;display:flex}.sch-toolbar__mode{min-height:var(--touch-target);border:1px solid var(--line-strong);background:var(--white);color:var(--ink-soft);cursor:pointer;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:700}.sch-toolbar__mode--active{background:var(--accent-vivid);color:var(--on-accent,#fff);border-color:#0000}.sch-toolbar__context{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sch-toolbar__instructor,.sch-toolbar__instructor select{font-size:13px}.sch-toolbar__instructor select{min-height:var(--touch-target)}.sch-zoom{align-items:center;gap:4px;display:flex}.sch-team-picker__list{z-index:20;border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--white);max-height:320px;box-shadow:var(--shadow-lift);gap:4px;padding:10px;display:grid;position:absolute;overflow-y:auto}.sch-team-picker__item{align-items:center;gap:6px;font-size:13px;display:flex}.sch-pool{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--white);grid-template-rows:auto auto auto minmax(0,1fr);gap:8px;min-height:0;padding:10px;display:grid;overflow:hidden}.sch-pool__head{justify-content:space-between;align-items:baseline;display:flex}.sch-pool__title{color:var(--ink);margin:0;font-size:15px;font-weight:800}.sch-pool__count{background:var(--accent-soft);color:var(--accent-strong);border-radius:999px;padding:2px 8px;font-size:12px;font-weight:800}.sch-pool__search{gap:6px;display:flex}.sch-pool__searchbox{min-width:0;min-height:var(--touch-target);border:1px solid var(--line-strong);border-radius:var(--radius-sm);flex:auto;padding:6px 10px;font-size:13px}.sch-pool__filters-toggle{min-height:var(--touch-target)}.sch-pool__statuses{color:var(--ink-muted);margin:0;font-size:12px}.sch-pool__filterpanel{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--page);gap:8px;padding:10px;display:grid}.sch-pool__filter{color:var(--ink-soft);gap:4px;font-size:12px;display:grid}.sch-pool__filter select,.sch-pool__filter input{min-height:var(--touch-target);border:1px solid var(--line-strong);border-radius:var(--radius-sm);padding:4px 8px;font-size:13px}.sch-pool__filter--statuses{border:0;margin:0;padding:0}.sch-pool__checkbox{align-items:center;gap:6px;font-size:12px;display:flex}.sch-pool__list{gap:6px;min-height:0;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.sch-pool__loading{margin:0}.sch-pool-card{border:1px solid var(--line);border-left:3px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--white);gap:4px;padding:8px 10px;display:grid}.sch-pool-card--ready-to-schedule{border-left-color:var(--accent-vivid)}.sch-pool-card--change-request-pending{border-left-color:#b45309}.sch-pool-card--missing-availability{border-left-color:#6b7280}.sch-pool-card--blocked-formalities{border-left-color:#b91c1c}.sch-pool-card--course-complete{border-left-color:#047857}.sch-pool-card--selected{background:var(--accent-soft)}.sch-pool-card__main{text-align:start;cursor:pointer;background:0 0;border:0;gap:3px;padding:0;display:grid}.sch-pool-card__row{justify-content:space-between;align-items:center;gap:8px;display:flex}.sch-pool-card__name{color:var(--ink);font-size:13px;font-weight:800}.sch-pool-card__priority{background:var(--accent-soft);color:var(--accent-strong);border-radius:999px;padding:1px 7px;font-size:12px;font-weight:800}.sch-pool-card__meta{color:var(--ink-muted);gap:6px;font-size:12px}.sch-pool-card__note{color:var(--ink-soft);font-size:12px}.sch-pool-card__warnings{color:#b45309;font-size:12px;font-weight:700}.sch-pool-card__actions{gap:10px;display:flex}.sch-pool-chip{font-size:12px}.sch-pool-chip--ready-to-schedule{background:var(--accent-soft);color:var(--accent-strong)}.sch-pool-chip--has-future-lesson{color:#1b5e20;background:#e8f5e9}.sch-pool-chip--change-request-pending{color:#8a4b00;background:#fff4e5}.sch-pool-chip--missing-availability{color:#4b5563;background:#f1f2f4}.sch-pool-chip--blocked-formalities{color:#8c1d18;background:#fdecea}.sch-pool-chip--course-complete{color:#1b5e20;background:#e8f5e9}.sch-frame{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--white);grid-template-rows:auto minmax(0,1fr);min-width:0;height:100%;min-height:0;display:grid;overflow:hidden}.sch-headrow{border-bottom:1px solid var(--line);background:var(--white);z-index:3;flex:none;display:flex;position:sticky;top:0}.sch-axis-head{width:var(--sch-axis-width);border-right:1px solid var(--line);flex:none}.sch-colheads{flex:auto;min-width:0;margin:0;padding:0;list-style:none;display:grid}.sch-colheads--1{grid-template-columns:repeat(1,minmax(0,1fr))}.sch-colheads--2{grid-template-columns:repeat(2,minmax(0,1fr))}.sch-colheads--3{grid-template-columns:repeat(3,minmax(0,1fr))}.sch-colheads--4{grid-template-columns:repeat(4,minmax(0,1fr))}.sch-colheads--5{grid-template-columns:repeat(5,minmax(0,1fr))}.sch-colheads--6{grid-template-columns:repeat(6,minmax(0,1fr))}.sch-colheads--7{grid-template-columns:repeat(7,minmax(0,1fr))}.sch-colhead{border-left:1px solid var(--line);justify-items:center;gap:1px;min-width:0;padding:6px 8px;display:grid}.sch-colhead:first-child{border-left:0}.sch-colhead--today{background:var(--accent-soft)}.sch-colhead__color{width:8px;height:8px}.sch-colhead__label{max-width:100%;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:800;overflow:hidden}.sch-colhead__sub{color:var(--ink-muted);font-size:12px}.sch-scroll{flex-direction:column;min-height:0;display:flex;overflow:hidden auto}.sch-body{flex:1 0 auto;min-width:0;display:flex}.sch-body--h1{min-height:calc(1 * var(--sch-hour-height))}.sch-axis--h1{grid-template-rows:repeat(1,minmax(0,1fr))}.sch-body--h2{min-height:calc(2 * var(--sch-hour-height))}.sch-axis--h2{grid-template-rows:repeat(2,minmax(0,1fr))}.sch-body--h3{min-height:calc(3 * var(--sch-hour-height))}.sch-axis--h3{grid-template-rows:repeat(3,minmax(0,1fr))}.sch-body--h4{min-height:calc(4 * var(--sch-hour-height))}.sch-axis--h4{grid-template-rows:repeat(4,minmax(0,1fr))}.sch-body--h5{min-height:calc(5 * var(--sch-hour-height))}.sch-axis--h5{grid-template-rows:repeat(5,minmax(0,1fr))}.sch-body--h6{min-height:calc(6 * var(--sch-hour-height))}.sch-axis--h6{grid-template-rows:repeat(6,minmax(0,1fr))}.sch-body--h7{min-height:calc(7 * var(--sch-hour-height))}.sch-axis--h7{grid-template-rows:repeat(7,minmax(0,1fr))}.sch-body--h8{min-height:calc(8 * var(--sch-hour-height))}.sch-axis--h8{grid-template-rows:repeat(8,minmax(0,1fr))}.sch-body--h9{min-height:calc(9 * var(--sch-hour-height))}.sch-axis--h9{grid-template-rows:repeat(9,minmax(0,1fr))}.sch-body--h10{min-height:calc(10 * var(--sch-hour-height))}.sch-axis--h10{grid-template-rows:repeat(10,minmax(0,1fr))}.sch-body--h11{min-height:calc(11 * var(--sch-hour-height))}.sch-axis--h11{grid-template-rows:repeat(11,minmax(0,1fr))}.sch-body--h12{min-height:calc(12 * var(--sch-hour-height))}.sch-axis--h12{grid-template-rows:repeat(12,minmax(0,1fr))}.sch-body--h13{min-height:calc(13 * var(--sch-hour-height))}.sch-axis--h13{grid-template-rows:repeat(13,minmax(0,1fr))}.sch-body--h14{min-height:calc(14 * var(--sch-hour-height))}.sch-axis--h14{grid-template-rows:repeat(14,minmax(0,1fr))}.sch-body--h15{min-height:calc(15 * var(--sch-hour-height))}.sch-axis--h15{grid-template-rows:repeat(15,minmax(0,1fr))}.sch-body--h16{min-height:calc(16 * var(--sch-hour-height))}.sch-axis--h16{grid-template-rows:repeat(16,minmax(0,1fr))}.sch-body--h17{min-height:calc(17 * var(--sch-hour-height))}.sch-axis--h17{grid-template-rows:repeat(17,minmax(0,1fr))}.sch-body--h18{min-height:calc(18 * var(--sch-hour-height))}.sch-axis--h18{grid-template-rows:repeat(18,minmax(0,1fr))}.sch-body--h19{min-height:calc(19 * var(--sch-hour-height))}.sch-axis--h19{grid-template-rows:repeat(19,minmax(0,1fr))}.sch-body--h20{min-height:calc(20 * var(--sch-hour-height))}.sch-axis--h20{grid-template-rows:repeat(20,minmax(0,1fr))}.sch-body--h21{min-height:calc(21 * var(--sch-hour-height))}.sch-axis--h21{grid-template-rows:repeat(21,minmax(0,1fr))}.sch-body--h22{min-height:calc(22 * var(--sch-hour-height))}.sch-axis--h22{grid-template-rows:repeat(22,minmax(0,1fr))}.sch-body--h23{min-height:calc(23 * var(--sch-hour-height))}.sch-axis--h23{grid-template-rows:repeat(23,minmax(0,1fr))}.sch-body--h24{min-height:calc(24 * var(--sch-hour-height))}.sch-axis--h24{grid-template-rows:repeat(24,minmax(0,1fr))}.sch-axis{width:var(--sch-axis-width);border-right:1px solid var(--line);flex:none;margin:0;padding:0;list-style:none;display:grid}.sch-axis__hour{color:var(--ink-muted);justify-content:flex-end;padding:0 6px;font-size:12px;display:flex}.sch-grid{flex:auto;min-width:0}.sch-hourline{stroke:var(--line);stroke-width:1px}.sch-hourline--major{stroke:var(--line-strong)}.sch-colline{stroke:var(--line-strong);stroke-width:1px}.sch-nowline{stroke:#d92d20;stroke-width:2px}.sch-surface{fill:#0000}.sch-surface--clickable{cursor:crosshair}.sch-eventbox{overflow:hidden}.sch-event{border:1px solid var(--line-strong);border-left:3px solid var(--accent-vivid);border-radius:var(--radius-sm);background:var(--white);width:100%;height:100%;color:var(--ink);text-align:start;cursor:pointer;align-content:start;gap:1px;padding:3px 5px;display:grid;overflow:hidden}.sch-event--selected{outline:2px solid var(--accent-strong)}.sch-event--scheduled{border-left-color:var(--accent-vivid)}.sch-event--change-requested{background:#fff9f0;border-left-color:#b45309}.sch-event--in-progress{background:#f2f6ff;border-left-color:#1d4ed8}.sch-event--completed{background:#f2fbf6;border-left-color:#047857}.sch-event--cancelled-on-time,.sch-event--cancelled-late,.sch-event--cancelled-by-school{background:#f7f7f8;border-left-color:#6b7280}.sch-event--no-show{background:#fdf3f2;border-left-color:#b91c1c}.sch-event__time{text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:800;overflow:hidden}.sch-event__who{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.sch-event__status{color:var(--ink-soft);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:4px;font-size:12px;display:flex;overflow:hidden}.sch-event__marker{background:currentColor;border-radius:50%;flex:none;width:6px;height:6px}.sch-event__extra{color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.sch-event--minimal .sch-event__extra{display:none}.sch-event--minimal{padding:2px 4px}.sch-event--minimal .sch-event__time,.sch-event--minimal .sch-event__who,.sch-event--minimal .sch-event__status{font-size:12px}.sch-block{border:1px dashed var(--line-strong);border-radius:var(--radius-sm);width:100%;height:100%;color:var(--ink-muted);background:repeating-linear-gradient(45deg,#f5f5f6,#f5f5f6 6px,#ececee 6px 12px);padding:3px 5px;font-size:12px;overflow:hidden}.sch-dispatch{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--white);grid-template-rows:auto minmax(0,1fr);height:100%;min-height:0;display:grid;overflow:hidden}.sch-dispatch__timescale{border-bottom:1px solid var(--line);z-index:3;background:var(--white);display:flex;position:sticky;top:0}.sch-dispatch__corner{width:var(--sch-name-width);border-right:1px solid var(--line);flex:none}.sch-dispatch__hours{flex:auto;justify-content:space-between;padding:3px 4px;display:flex}.sch-dispatch__hour{color:var(--ink-muted);font-size:12px}.sch-dispatch__rows{min-height:0;margin:0;padding:0;list-style:none;display:grid}.sch-dispatch--rows1 .sch-dispatch__rows{grid-template-rows:repeat(1,minmax(0,1fr))}.sch-dispatch--rows2 .sch-dispatch__rows{grid-template-rows:repeat(2,minmax(0,1fr))}.sch-dispatch--rows3 .sch-dispatch__rows{grid-template-rows:repeat(3,minmax(0,1fr))}.sch-dispatch--rows4 .sch-dispatch__rows{grid-template-rows:repeat(4,minmax(0,1fr))}.sch-dispatch--rows5 .sch-dispatch__rows{grid-template-rows:repeat(5,minmax(0,1fr))}.sch-dispatch--rows6 .sch-dispatch__rows{grid-template-rows:repeat(6,minmax(0,1fr))}.sch-dispatch--rows7 .sch-dispatch__rows{grid-template-rows:repeat(7,minmax(0,1fr))}.sch-dispatch--rows8 .sch-dispatch__rows{grid-template-rows:repeat(8,minmax(0,1fr))}.sch-dispatch--rows9 .sch-dispatch__rows{grid-template-rows:repeat(9,minmax(0,1fr))}.sch-dispatch--rows10 .sch-dispatch__rows{grid-template-rows:repeat(10,minmax(0,1fr))}.sch-dispatch--rows11 .sch-dispatch__rows{grid-template-rows:repeat(11,minmax(0,1fr))}.sch-dispatch--rows12 .sch-dispatch__rows{grid-template-rows:repeat(12,minmax(0,1fr))}.sch-dispatch--rows13 .sch-dispatch__rows{grid-template-rows:repeat(13,minmax(0,1fr))}.sch-dispatch--rows14 .sch-dispatch__rows{grid-template-rows:repeat(14,minmax(0,1fr))}.sch-dispatch--rows15 .sch-dispatch__rows{grid-template-rows:repeat(15,minmax(0,1fr))}.sch-dispatch--rows16 .sch-dispatch__rows{grid-template-rows:repeat(16,minmax(0,1fr))}.sch-dispatch--rows17 .sch-dispatch__rows{grid-template-rows:repeat(17,minmax(0,1fr))}.sch-dispatch--rows18 .sch-dispatch__rows{grid-template-rows:repeat(18,minmax(0,1fr))}.sch-dispatch--rows19 .sch-dispatch__rows{grid-template-rows:repeat(19,minmax(0,1fr))}.sch-dispatch--rows20 .sch-dispatch__rows{grid-template-rows:repeat(20,minmax(0,1fr))}.sch-dispatch__row{border-top:1px solid var(--line);min-height:0;display:flex}.sch-dispatch__row:first-child{border-top:0}.sch-dispatch__name{width:var(--sch-name-width);border:0;border-right:1px solid var(--line);background:var(--white);color:var(--ink);text-align:start;cursor:pointer;z-index:2;flex:none;align-items:center;gap:5px;padding:2px 6px;font-size:12px;font-weight:700;display:flex;position:sticky;inset-inline-start:0}.sch-dispatch__color{flex:none;width:8px;height:8px}.sch-dispatch__label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sch-dispatch__lane{flex:auto;min-width:0}.sch-dispatch__grid{width:100%;height:100%}.sch-dispatch__hourline{stroke:var(--line);stroke-width:1px}.sch-dispatch__cardbox{overflow:hidden}.sch-dispatch-card{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--white);width:100%;height:100%;color:var(--ink);cursor:pointer;align-items:center;gap:4px;padding:1px 4px;font-size:12px;display:flex;overflow:hidden}.sch-dispatch-card--fit{padding:0}.sch-dispatch-card__busy{background:var(--accent-vivid);border-radius:2px;width:100%;height:100%}.sch-dispatch-card__time{font-weight:800}.sch-dispatch-card__who{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sch-dispatch-card__extra{color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sch-dispatch-card__marker{background:currentColor;border-radius:50%;flex:none;width:6px;height:6px;margin-inline-start:auto}.sch-dispatch-card--selected{outline:2px solid var(--accent-strong)}.sch-dispatch-card--scheduled{border-left:3px solid var(--accent-vivid)}.sch-dispatch-card--change-requested{border-left:3px solid #b45309}.sch-dispatch-card--in-progress{border-left:3px solid #1d4ed8}.sch-dispatch-card--completed{border-left:3px solid #047857}.sch-dispatch-card--no-show{border-left:3px solid #b91c1c}.sch-dispatch-block{width:100%;height:100%;color:var(--ink-muted);background:repeating-linear-gradient(45deg,#ededef,#ededef 5px,#e1e1e4 5px 10px);border-radius:2px;font-size:12px;overflow:hidden}.sch-dispatch-block__title{padding:0 4px}.sch-matrix-scroll{min-height:0;position:relative;overflow-x:auto}.sch-matrix{border-collapse:collapse;background:var(--white);width:100%;font-size:13px}.sch-matrix th,.sch-matrix td{border:1px solid var(--line);text-align:center;padding:4px}.sch-matrix__name{text-align:start;white-space:nowrap}.sch-matrix__color{width:8px;height:8px;margin-inline-end:5px}.sch-matrix__cell{width:100%;min-height:var(--touch-target);border-radius:var(--radius-sm);color:var(--ink);cursor:pointer;background:0 0;border:0;gap:1px;font-size:12px;display:grid}.sch-matrix__cell--free{color:var(--ink-muted)}.sch-matrix__cell--light{background:#f3f8f4}.sch-matrix__cell--busy{background:#e8f1fb}.sch-matrix__cell--full{background:var(--accent-soft)}.sch-matrix__cell--conflict{outline:2px solid #b91c1c}.sch-matrix__count{font-weight:800}.sch-matrix__minutes{color:var(--ink-muted)}.sch-matrix__warn{color:#b91c1c;font-weight:700}.sch-month{min-height:0;overflow-y:auto}.sch-month__grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;margin:0;padding:0;list-style:none;display:grid}.sch-month__day{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--white)}.sch-month__day--outside{opacity:.55}.sch-month__day--today{border-color:var(--accent-strong)}.sch-month__daybutton{text-align:start;cursor:pointer;background:0 0;border:0;align-content:start;gap:2px;width:100%;min-height:64px;padding:4px 6px;display:grid}.sch-month__date{color:var(--ink);font-size:13px;font-weight:800}.sch-month__count{color:var(--accent-strong);font-size:12px}.sch-agenda{gap:6px;min-height:0;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.sch-agenda__item{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--white)}.sch-agenda__button{width:100%;min-height:var(--touch-target);text-align:start;cursor:pointer;background:0 0;border:0;gap:2px;padding:8px 10px;display:grid}.sch-agenda__term{color:var(--ink);font-size:13px;font-weight:800}.sch-agenda__who{color:var(--ink-soft);font-size:13px}.sch-agenda__meta{color:var(--ink-muted);font-size:12px}.sch-inspector{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--white);align-content:start;gap:8px;min-height:0;padding:12px;display:grid;overflow-y:auto}.sch-inspector__head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.sch-inspector__title{color:var(--ink);margin:0;font-size:15px;font-weight:800}.sch-inspector__facts{gap:6px;margin:0;display:grid}.sch-inspector__facts div{gap:1px;display:grid}.sch-inspector__facts dt{color:var(--ink-muted);font-size:12px}.sch-inspector__facts dd{color:var(--ink);margin:0;font-size:13px}.sch-inspector__actions{gap:6px;display:grid}.sch-inspector__actions button{min-height:var(--touch-target)}.sch-inspector__request-actions{flex-wrap:wrap;gap:6px;display:flex}.sch-inspector__reasons{margin:0;padding-inline-start:16px;font-size:12px}.sch-status-chip{justify-self:start;font-size:12px}.sch-status-chip--scheduled{background:var(--accent-soft);color:var(--accent-strong)}.sch-status-chip--change-requested{color:#8a4b00;background:#fff4e5}.sch-status-chip--in-progress{color:#14367a;background:#eaf1ff}.sch-status-chip--completed{color:#1b5e20;background:#e8f5e9}.sch-status-chip--cancelled-on-time,.sch-status-chip--cancelled-late,.sch-status-chip--cancelled-by-school{color:#4b5563;background:#f1f2f4}.sch-status-chip--no-show{color:#8c1d18;background:#fdecea}.sch-draft{gap:10px;display:grid}.sch-draft__student{color:var(--ink-soft);margin:0;font-size:13px}.sch-draft__diff{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--page);gap:3px;padding:8px 10px;display:grid}.sch-draft__diff-row{color:var(--ink-soft);margin:0;font-size:13px}.sch-draft__diff-row--after{color:var(--ink);font-weight:700}.sch-draft__diff-label{min-width:46px;color:var(--ink-muted);text-transform:uppercase;font-size:12px;font-weight:800;display:inline-block}.sch-draft__fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.sch-draft__fields label,.sch-draft label,.sch-report label{color:var(--ink-soft);gap:3px;font-size:12px;display:grid}.sch-draft input,.sch-draft select,.sch-draft textarea{min-height:var(--touch-target);border:1px solid var(--line-strong);border-radius:var(--radius-sm);padding:5px 8px;font-size:13px}.sch-draft textarea{min-height:72px}.sch-draft__warning{align-items:center;gap:6px;font-size:13px;display:flex}.sch-draft__actions{flex-wrap:wrap;gap:8px;display:flex}.sch-draft__actions button{min-height:var(--touch-target)}.sch-report__competencies{border:1px solid var(--line);border-radius:var(--radius-sm);grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:8px;display:grid}@media (max-width:767px){.sch-draft__fields,.sch-report__competencies{grid-template-columns:minmax(0,1fr)}}.sch-profile{align-content:start;gap:10px;min-height:0;display:grid;overflow-y:auto}.sch-profile__head{gap:3px;display:grid}.sch-profile__name{color:var(--ink);margin:0;font-size:20px;font-weight:800}.sch-profile__number,.sch-profile__quals{color:var(--ink-muted);margin:0;font-size:13px}.sch-profile__kpis{margin:0}.sch-profile__tabs{flex-wrap:wrap;gap:4px;display:flex}.sch-profile__tab{min-height:var(--touch-target);border:1px solid var(--line-strong);background:var(--white);color:var(--ink-soft);cursor:pointer;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:700}.sch-profile__tab--active{background:var(--accent-vivid);color:var(--on-accent,#fff);border-color:#0000}.sch-profile__card{gap:8px;display:grid}.sch-profile__card h3{color:var(--ink);margin:0;font-size:14px;font-weight:800}.sch-profile__lessons,.sch-profile__hours,.sch-profile__enrollments,.sch-profile__formalities,.sch-profile__blocks,.sch-profile__trend{gap:4px;margin:0;padding:0;font-size:13px;list-style:none;display:grid}.sch-profile__lesson{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px;padding:5px 0;display:flex}.sch-profile__lesson-term{font-weight:700}.sch-profile__lesson-meta{color:var(--ink-muted);font-size:12px}.sch-profile__trend-item{grid-template-columns:92px minmax(0,1fr) 52px;align-items:center;gap:6px;display:grid}.sch-profile__trend-date{color:var(--ink-muted);font-size:12px}.sch-profile__trend-bar{width:100%;height:10px}.sch-profile__trend-bar rect{fill:var(--accent-vivid)}.sch-profile__trend-score{font-size:12px;font-weight:800}.sch-profile__focus{color:var(--ink-soft);margin:0;font-size:13px}.sch-admin{align-content:start;gap:10px;min-height:0;display:grid;overflow-y:auto}.sch-admin__tabs{flex-wrap:wrap;gap:4px;display:flex}.sch-admin__tab{min-height:var(--touch-target);border:1px solid var(--line-strong);background:var(--white);color:var(--ink-soft);cursor:pointer;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:700}.sch-admin__tab--active{background:var(--accent-vivid);color:var(--on-accent,#fff);border-color:#0000}.sch-admin__card{gap:10px;display:grid}.sch-admin__scopes,.sch-admin__templates,.sch-admin__groups,.sch-admin__week,.sch-admin__holidays,.sch-admin__connections,.sch-admin__divergences,.sch-admin__audit,.sch-admin__exceptions{gap:4px;margin:0;padding:0;font-size:13px;list-style:none;display:grid}.sch-admin__template{border-bottom:1px solid var(--line);gap:2px;padding:6px 0;display:grid}.sch-admin__template-scopes,.sch-admin__template-caps{color:var(--ink-muted);font-size:12px}.sch-admin__filters{flex-wrap:wrap;align-items:flex-end;gap:8px;display:flex}.sch-admin__field{color:var(--ink-soft);gap:3px;font-size:12px;display:grid}.sch-admin__field input{min-height:var(--touch-target);border:1px solid var(--line-strong);border-radius:var(--radius-sm);padding:5px 8px;font-size:13px}.sch-admin__audit-item{border-bottom:1px solid var(--line);gap:3px;padding:8px 0;display:grid}.sch-admin__audit-head{font-size:13px;font-weight:800}.sch-admin__audit-actor,.sch-admin__audit-reason{color:var(--ink-soft);font-size:12px}.sch-admin__diff{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.sch-admin__diff-col{gap:2px;min-width:0;display:grid}.sch-admin__diff-label{color:var(--ink-muted);text-transform:uppercase;font-size:12px;font-weight:800}.sch-admin__diff pre{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--page);margin:0;padding:6px;font-size:12px;overflow-x:auto}.sch-admin__open{color:#8a4b00;font-weight:700}.sch-admin__exception{font-size:12px}.sch-admin__exception--open{color:#1b5e20;background:#e8f5e9}.sch-admin__exception--closed{color:#4b5563;background:#f1f2f4}.sch-admin__members{border:1px solid var(--line);border-radius:var(--radius-sm);gap:4px;max-height:180px;padding:8px;font-size:12px;display:grid;overflow-y:auto}@media (max-width:767px){.sch-admin__diff{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){.sch-toolbar__mode,.sch-profile__tab,.sch-admin__tab{transition:none}}.inspector-participants{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.inspector-participant-minutes{color:var(--sch-muted,#5b6472);font-variant-numeric:tabular-nums}.inspector-participant-flag{color:var(--sch-warning-fg,#8a5a00);font-weight:600}.students-filter-switch{min-height:var(--touch-target);align-items:center;gap:8px;display:flex}.students-filter-switch input{width:20px;height:20px}.students-filter-switch span{color:var(--ink);font-size:14px;font-weight:700}.students-list-panel{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--white);min-width:0;overflow:hidden}.students-list-heading{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:14px 18px;display:flex}.students-list-heading h2{color:var(--ink);margin:0;font-size:18px}.students-list-heading span{color:var(--ink-muted);font-size:13px}.students-table--v2{border-collapse:collapse;width:100%}.students-table--v2 th{color:var(--ink-muted);text-align:left;white-space:nowrap;border-bottom:1px solid var(--line);padding:10px 12px;font-size:12px;font-weight:800}.students-table--v2 td{border-bottom:1px solid var(--line);color:var(--ink);vertical-align:top;padding:12px;font-size:14px}.students-table--v2 td>strong{font-size:14px;display:block}.students-table--v2 td>span:not(.status-badge):not(.students-progress):not(.students-formalities):not(.students-person):not(.student-state),.students-table--v2 td>small{color:var(--ink-muted);font-size:12px;display:block}.students-table--v2 td>.students-progress,.students-table--v2 td>.students-formalities{color:var(--ink-muted);font-size:12px}.students-table--v2 td>.status-badge{margin-top:4px}.students-row--attention td{background:color-mix(in srgb, var(--red-600) 4%, transparent)}.students-cell__muted{color:var(--ink-muted);font-size:12px}.students-course,.students-progress,.students-formalities{gap:3px;min-width:0;display:grid}.students-course strong,.students-formalities strong{color:var(--ink);font-size:14px}.students-course>span,.students-progress>span,.students-formalities>span{color:var(--ink-muted);font-size:12px}.students-progress strong{color:var(--ink);font-size:13px;font-weight:800}.students-progress .progress-track{width:100%;max-width:160px}.students-balance{color:var(--ink-muted);font-size:14px}.students-cards{gap:12px;margin:0;padding:12px;list-style:none;display:grid}.student-card{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--white);gap:10px;padding:14px;display:grid}.student-card__open{width:100%;min-height:var(--touch-target);color:inherit;text-align:left;background:0 0;border:0;justify-items:start;gap:2px;padding:0;display:grid}.student-card__open strong{color:var(--ink);font-size:16px}.student-card__open span{color:var(--ink-muted);font-size:13px}.student-card__facts{gap:8px;margin:0;display:grid}.student-card__facts>div{grid-template-columns:120px minmax(0,1fr);align-items:start;gap:10px;display:grid}.student-card__facts dt{color:var(--ink-muted);font-size:12px;font-weight:700}.student-card__facts dd{color:var(--ink);margin:0;font-size:13px}.student-card__attention{flex-wrap:wrap;gap:6px;margin:0;display:flex}.student-tabs{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--page-deep);scrollbar-width:thin;gap:4px;min-width:0;padding:4px;display:flex;overflow-x:auto}.student-tab{min-height:var(--touch-target);border-radius:var(--radius-sm);color:var(--ink-soft);white-space:nowrap;background:0 0;border:0;flex:none;padding:0 14px;font-size:14px;font-weight:700}.student-tab--active{color:var(--brand-on-primary);background:var(--cta-gradient)}.student-tabpanel{gap:14px;min-width:0;display:grid}.student-rides{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--white);padding:16px 18px}.student-rides h3{color:var(--ink);margin:0 0 10px;font-size:16px}.student-rides__list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.student-rides__list>li{border:1px solid var(--line);border-radius:var(--radius-sm);gap:2px;padding:10px 12px;display:grid}.student-rides__list strong{color:var(--ink);font-size:14px}.student-rides__list span{color:var(--ink-muted);font-size:12px}.student-formalities-block{gap:8px;display:grid}.student-formalities-block>h3{color:var(--ink);margin:0;font-size:15px}@media (max-width:767px){.students-filters{grid-template-columns:minmax(0,1fr)}.student-card__facts>div{grid-template-columns:minmax(0,1fr);gap:2px}}.payments-page{gap:16px;min-width:0;display:grid}.payments-heading__actions{flex-wrap:wrap;gap:8px;display:flex}.kpi-grid--payments{min-width:0}.pay-tabs{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--page-deep);scrollbar-width:thin;gap:4px;min-width:0;padding:4px;display:flex;overflow-x:auto}.pay-tab{min-height:var(--touch-target);border-radius:var(--radius-sm);color:var(--ink-soft);white-space:nowrap;background:0 0;border:0;flex:none;padding:0 18px;font-size:14px;font-weight:700}.pay-tab--active{color:var(--brand-on-primary);background:var(--cta-gradient)}.pay-filters{gap:10px;min-width:0;display:grid}.pay-filters__primary{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.pay-filters__primary label,.pay-filters__fields label{gap:4px;min-width:0;display:grid}.pay-filters__primary label>span,.pay-filters__fields label>span{color:var(--ink-muted);font-size:12px;font-weight:700}.pay-filters__primary select,.pay-filters__fields select,.pay-filters__fields input,.pay-filters__fields textarea{min-height:var(--touch-target);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--white);min-width:0;color:var(--ink);padding:0 10px;font-size:14px}.pay-filters__more{min-height:var(--touch-target);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--white);color:var(--ink);padding:0 16px;font-size:14px;font-weight:700}.pay-filters__chips{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.pay-filters__chips ul{scrollbar-width:thin;gap:6px;margin:0;padding:0;list-style:none;display:flex;position:relative;overflow-x:auto}.pay-filters__clear{min-height:var(--touch-target);border-radius:var(--radius-sm);color:var(--ink-soft);background:0 0;border:0;padding:0 12px;font-size:13px;font-weight:700;text-decoration:underline}.pay-filters__fields{gap:12px;padding:4px 0;display:grid}.pay-filters__note{color:var(--ink-muted);margin:0;font-size:12px}.pay-filters__panel-heading,.pay-form__heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.pay-filters__panel-heading h2,.pay-form__heading h2{color:var(--ink);margin:0;font-size:18px}.pay-filters__panel-actions,.pay-form__actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;padding-top:6px;display:flex}.pay-panel{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--white);gap:12px;min-width:0;padding:14px 16px 16px;display:grid}.pay-panel__heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.pay-panel__heading h2{color:var(--ink);margin:0;font-size:18px}.pay-panel__heading span{color:var(--ink-muted);font-size:13px;display:block}.pay-panel__sort{color:var(--ink-muted);margin:0;font-size:12px}.pay-table-scroll{scrollbar-width:thin;min-width:0;position:relative;overflow-x:auto}.pay-table-scroll:focus-visible{outline:3px solid color-mix(in srgb, var(--brand-primary) 32%, transparent);outline-offset:-3px}.pay-table{border-collapse:collapse;width:100%}.pay-table th{color:var(--ink-muted);text-align:left;white-space:nowrap;border-bottom:1px solid var(--line);padding:10px 12px;font-size:12px;font-weight:800}.pay-table td{border-bottom:1px solid var(--line);color:var(--ink);vertical-align:top;padding:12px;font-size:14px}.pay-table td>strong{font-size:14px;display:block}.pay-course{color:var(--ink-muted);font-size:12px;display:block}.pay-muted{color:var(--ink-muted);font-size:13px}.pay-amount{white-space:nowrap;text-align:right;font-variant-numeric:tabular-nums}.pay-row--selected td{background:color-mix(in srgb, var(--brand-primary) 8%, transparent)}.pay-row__actions{flex-wrap:wrap;gap:8px;display:flex}.pay-open{min-height:var(--touch-target);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--white);color:var(--ink);padding:0 12px;font-size:13px;font-weight:700}.pay-cards{gap:12px;margin:0;padding:0;list-style:none;display:grid}.pay-card{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--white);gap:10px;padding:14px;display:grid}.pay-card--selected{border-color:var(--brand-primary)}.pay-card__open{width:100%;min-height:var(--touch-target);color:inherit;text-align:left;background:0 0;border:0;justify-items:start;gap:2px;padding:0;display:grid}.pay-card__open strong{color:var(--ink);font-size:16px}.pay-card__lead-amount{font-variant-numeric:tabular-nums;font-size:20px}.pay-card__title{color:var(--ink);font-size:14px;font-weight:700}.pay-card__course{color:var(--ink-muted);font-size:12px}.pay-card__amount{justify-content:space-between;align-items:baseline;gap:10px;margin:0;display:flex}.pay-card__amount span{color:var(--ink-muted);font-size:12px;font-weight:700}.pay-card__amount strong{color:var(--ink);font-variant-numeric:tabular-nums;font-size:18px}.pay-card__meta{flex-wrap:wrap;align-items:center;gap:8px;margin:0;display:flex}.pay-card__meta span{color:var(--ink-muted);font-size:12px}.pay-card__facts{gap:4px;margin:0;display:grid}.pay-card__facts>div{grid-template-columns:110px minmax(0,1fr);gap:8px;display:grid}.pay-card__facts dt{color:var(--ink-muted);font-size:12px;font-weight:700}.pay-card__facts dd{color:var(--ink);font-variant-numeric:tabular-nums;margin:0;font-size:13px}.pay-card__actions{flex-wrap:wrap;gap:8px;margin:0;display:flex}.pay-status,.pay-state{border:1px solid var(--line);color:var(--ink);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:3px 8px;font-size:12px;font-weight:700;display:inline-flex}.pay-status__marker,.pay-state__marker{background:var(--ink-muted);border-radius:50%;width:8px;height:8px}.pay-status--overdue,.pay-status--balance-overdue{border-color:var(--red-600);color:var(--red-600)}.pay-status--overdue .pay-status__marker,.pay-status--balance-overdue .pay-status__marker{background:var(--red-600)}.pay-status--due-today,.pay-status--balance-due_soon{border-color:var(--orange-700);color:var(--orange-700)}.pay-status--due-today .pay-status__marker,.pay-status--balance-due_soon .pay-status__marker{background:var(--orange-700)}.pay-status--paid,.pay-status--balance-settled{border-color:var(--green-600);color:var(--green-600)}.pay-status--paid .pay-status__marker,.pay-status--balance-settled .pay-status__marker{background:var(--green-600)}.pay-status--cancelled{color:var(--ink-muted)}.pay-state--reversed{border-color:var(--red-600);color:var(--red-600)}.pay-state--reversed .pay-state__marker{background:var(--red-600)}.pay-state--posted .pay-state__marker{background:var(--green-600)}.pay-pagination{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding-top:4px;display:flex}.pay-pagination>span{color:var(--ink-muted);font-size:13px}.pay-pagination>div{gap:8px;display:flex}.pay-details{align-content:start;gap:14px;display:grid}.pay-details__heading{justify-content:space-between;align-items:start;gap:10px;display:flex}.pay-details__heading h2{color:var(--ink);margin:2px 0 0;font-size:20px}.pay-details__subject{color:var(--ink-muted);margin:4px 0 0;font-size:13px}.pay-details__facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0;display:grid}.pay-details__facts dt{color:var(--ink-muted);font-size:12px;font-weight:700}.pay-details__facts dd{color:var(--ink);font-variant-numeric:tabular-nums;margin:2px 0 0;font-size:15px}.pay-details__note{color:var(--ink-soft);margin:0;font-size:13px}.pay-details__actions{flex-wrap:wrap;gap:8px;display:flex}.pay-details__section{gap:8px;display:grid}.pay-details__section h3{color:var(--ink);margin:0;font-size:15px}.pay-details__payments,.pay-details__timeline,.student-payments__list,.student-payments__timeline{gap:8px;margin:0;padding:0;list-style:none;display:grid}.pay-details__payments>li,.pay-details__timeline>li,.student-payments__list>li,.student-payments__timeline>li{border:1px solid var(--line);border-radius:var(--radius-sm);gap:2px;padding:10px 12px;display:grid}.pay-details__payments strong,.student-payments__list strong{color:var(--ink);font-variant-numeric:tabular-nums;font-size:15px}.pay-details__payments span,.pay-details__timeline span,.student-payments__list span,.student-payments__timeline span{color:var(--ink-muted);font-size:12px}.pay-details__payment--focus{border-color:var(--brand-primary)}.student-payments{gap:14px;min-width:0;display:grid}.student-payments__switcher{flex-wrap:wrap;gap:6px;min-width:0;display:flex}.student-payments__enrollment{min-height:var(--touch-target);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--white);color:var(--ink-soft);text-align:left;padding:0 14px;font-size:13px;font-weight:700}.student-payments__enrollment--active{border-color:var(--brand-primary);color:var(--ink)}.student-payments__summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:0;display:grid}.student-payments__summary dt{color:var(--ink-muted);font-size:12px;font-weight:700}.student-payments__summary dd{color:var(--ink);font-variant-numeric:tabular-nums;margin:2px 0 0;font-size:16px}.student-payments h3{color:var(--ink);margin:0 0 8px;font-size:15px}.pay-form{align-content:start;gap:12px;display:grid}.pay-form form{gap:12px;display:grid}.pay-form label{gap:4px;min-width:0;display:grid}.pay-form label>span{color:var(--ink-muted);font-size:12px;font-weight:700}.pay-form input,.pay-form select,.pay-form textarea{min-height:var(--touch-target);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--white);min-width:0;color:var(--ink);padding:8px 10px;font-family:inherit;font-size:14px}.pay-form textarea{resize:vertical;min-height:72px}.pay-form__context{color:var(--ink);margin:0;font-size:13px;font-weight:700}.dashboard-money{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;margin:0;display:flex}.dashboard-money>span{color:var(--ink-muted);font-size:13px;font-weight:700}.dashboard-money>strong{color:var(--ink);font-variant-numeric:tabular-nums;font-size:24px}@media (max-width:767px){.app-shell--mobile .kpi-grid--payments{grid-template-columns:minmax(0,1fr)}.kpi-grid--payments .kpi-card__value{overflow-wrap:anywhere;max-width:100%}.pay-details__facts,.student-payments__summary{grid-template-columns:minmax(0,1fr)}.pay-card__facts>div{grid-template-columns:minmax(0,1fr);gap:2px}.payments-heading__actions{width:100%}.payments-heading__actions>button{flex:auto}}.learning-page{grid-template-columns:minmax(0,1fr);align-content:start;gap:14px;min-width:0;display:grid}.learning-sections{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--page-deep);scrollbar-width:thin;gap:4px;min-width:0;padding:4px;display:flex;overflow-x:auto}.learning-sections__item{min-height:var(--touch-target);border-radius:var(--radius-sm);color:var(--ink-soft);white-space:nowrap;background:0 0;border:0;flex:none;padding:0 18px;font-size:14px;font-weight:700}.learning-sections__item.active{color:var(--brand-on-primary);background:var(--cta-gradient)}.learning-toolbar{flex-wrap:wrap;align-items:end;gap:10px;min-width:0;display:flex}.learning-toolbar__field{gap:4px;min-width:0;display:grid}.learning-toolbar__field>span{color:var(--ink-muted);font-size:12px;font-weight:700}.learning-toolbar__field input,.learning-toolbar__field select{min-height:var(--touch-target);border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--white);padding:0 10px;font-size:14px}.learning-toolbar__summary{color:var(--ink-soft);flex:240px;margin:0;font-size:13px}.learning-state{border:1px dashed var(--line-strong);border-radius:var(--radius-md);background:var(--white);color:var(--ink-soft);justify-items:start;gap:8px;margin:0;padding:22px 16px;font-size:14px;display:grid}.learning-state p{margin:0}.learning-state--error{border-style:solid;border-color:var(--danger,#b3261e)}.learning-notice{border-radius:var(--radius-sm);background:var(--page-deep);color:var(--ink);margin:0;padding:10px 14px;font-size:13px}.learning-notice--error{border:1px solid var(--danger,#b3261e);background:var(--white);justify-items:start;gap:8px;display:grid}.learning-notice--error p{margin:0}.learning-table-wrap{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--white);min-width:0;position:relative;overflow-x:auto}.learning-table{border-collapse:collapse;width:100%;font-size:13px}.learning-table th,.learning-table td{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);padding:10px 12px}.learning-table thead th{color:var(--ink-muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px}.learning-table tbody tr:last-child th,.learning-table tbody tr:last-child td{border-bottom:0}.learning-table__title{font-weight:700;display:block}.learning-table__code{color:var(--ink-muted);font-size:12px;display:block}.learning-table__hash{color:var(--ink-muted);font-family:ui-monospace,monospace;font-size:12px;display:block}.learning-table__actions{flex-wrap:wrap;gap:6px;display:flex}.learning-badge{background:var(--page-deep);color:var(--ink-soft);border-radius:999px;padding:2px 10px;font-size:12px;font-weight:700;display:inline-block}.learning-badge--active{background:color-mix(in srgb, var(--brand-primary) 14%, #fff);color:var(--ink)}.learning-pagination{color:var(--ink-soft);flex-wrap:wrap;align-items:center;gap:12px;font-size:13px;display:flex}.learning-subheading{margin:8px 0 0;font-size:15px}.learning-form{gap:12px;min-width:0;padding:16px;display:grid}.learning-form label{gap:4px;display:grid}.learning-form label>span{color:var(--ink-muted);font-size:12px;font-weight:700}.learning-form input,.learning-form select,.learning-form textarea{min-height:var(--touch-target);border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--white);font:inherit;padding:8px 10px;font-size:14px}.learning-form textarea{resize:vertical}.learning-form__hint{color:var(--ink-muted);margin:0;font-size:12px}.learning-form__error{color:var(--danger,#b3261e);margin:0;font-size:13px;font-weight:600}.learning-form__actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.learning-form__rights{border:1px solid var(--line);border-radius:var(--radius-md);gap:10px;padding:12px;display:grid}.learning-form__rights legend{color:var(--ink-soft);padding:0 4px;font-size:12px;font-weight:700}.learning-form__radio{align-items:center;gap:8px;display:flex!important}.learning-form__radio input{min-height:0}.learning-editor{grid-template-columns:minmax(0,1fr);gap:12px;min-width:0;display:grid}.learning-editor__bar{flex-wrap:wrap;align-items:center;gap:10px;min-width:0;display:flex}.learning-editor__title{min-width:0;display:grid}.learning-editor__title strong{font-size:15px}.learning-editor__title span{color:var(--ink-muted);font-size:12px}.learning-editor__save{color:var(--ink-soft);margin:0 0 0 auto;font-size:12px;font-weight:700}.learning-editor__bar-actions{flex-wrap:wrap;gap:6px;display:flex}.learning-editor__bar-actions .secondary-button.active{outline:2px solid var(--brand-primary)}.learning-editor__grid{grid-template-columns:260px minmax(0,1fr) 300px;align-items:start;gap:12px;min-width:0;display:grid}.learning-editor__grid--stack{grid-template-columns:minmax(0,1fr)}.learning-outline,.learning-content,.learning-aside{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--white);min-width:0;max-height:calc(100vh - 272px);padding:12px;overflow-y:auto}.learning-editor__grid--stack .learning-outline,.learning-editor__grid--stack .learning-content{max-height:none}.learning-outline ol{gap:6px;margin:0;padding:0;list-style:none;display:grid}.learning-outline>ol>li{gap:4px;display:grid}.learning-outline__module{justify-content:space-between;align-items:center;gap:6px;font-size:13px;font-weight:700;display:flex}.learning-outline__lesson{border-radius:var(--radius-sm);justify-content:space-between;align-items:center;gap:6px;padding:2px 4px;display:flex}.learning-outline__lesson.active{background:var(--page-deep)}.learning-outline__open{text-align:left;color:var(--ink);background:0 0;border:0;flex:auto;min-width:0;padding:6px 4px;font-size:13px}.learning-outline__lesson.active .learning-outline__open{font-weight:700}.learning-outline__controls{flex:none;gap:2px;display:inline-flex}.learning-outline__controls button{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--white);min-width:26px;min-height:26px;color:var(--ink-soft);font-size:12px;line-height:1}.learning-outline__controls button:disabled{opacity:.35}.learning-outline__add{border:1px dashed var(--line-strong);border-radius:var(--radius-sm);color:var(--ink-soft);background:0 0;padding:8px;font-size:13px;font-weight:700}.learning-content__lesson{margin:0 0 10px;font-size:15px}.learning-blocks{gap:10px;margin:0;padding:0;list-style:none;display:grid}.learning-blocks:focus{outline:2px solid var(--brand-primary);outline-offset:2px}.learning-block{border:1px solid var(--line);border-radius:var(--radius-md);gap:8px;padding:10px 12px;display:grid}.learning-block--new{border-style:dashed}.learning-block__head{justify-content:space-between;align-items:center;gap:8px;display:flex}.learning-block__type{color:var(--ink-muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:700}.learning-block__body{margin:0;font-size:14px}.learning-block__body ul{margin:4px 0 0;padding-left:20px}.learning-block__body--multiline{white-space:pre-line}.learning-block__host{color:var(--ink-muted);font-size:12px}.learning-block__figure{gap:4px;margin:0;display:grid}.learning-block__figure img,.learning-preview__body img{border-radius:var(--radius-sm);border:1px solid var(--line);max-width:min(100%,360px);height:auto}.learning-block__figure figcaption{color:var(--ink-muted);font-size:12px}.learning-add-block{color:var(--ink-muted);flex-wrap:wrap;align-items:center;gap:6px;margin-top:12px;font-size:13px;display:flex}.learning-properties{gap:10px;font-size:13px;display:grid}.learning-properties h3{text-transform:uppercase;letter-spacing:.04em;color:var(--ink-muted);margin:6px 0 0;font-size:13px}.learning-properties__meta{gap:4px;margin:0;display:grid}.learning-properties__meta>div{justify-content:space-between;gap:8px;display:flex}.learning-properties__meta dt{color:var(--ink-muted)}.learning-properties__meta dd{text-align:right;overflow-wrap:anywhere;margin:0}.learning-properties__hint{color:var(--ink-muted);margin:0;font-size:12px}.learning-properties__actions{gap:8px;display:grid}.learning-validation-summary{margin:0;font-weight:600}.learning-issues{gap:6px;margin:0;padding:0;list-style:none;display:grid}.learning-issues button{text-align:left;border:1px solid var(--danger,#b3261e);border-radius:var(--radius-sm);background:var(--white);gap:2px;width:100%;padding:8px 10px;font-size:12px;display:grid}.learning-issues strong{color:var(--danger,#b3261e)}.learning-issues small{color:var(--ink-muted);font-family:ui-monospace,monospace;font-size:12px}.learning-preview{gap:10px;display:grid}.learning-preview__bar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.learning-preview__bar p{color:var(--ink-muted);margin:0;font-size:12px}.learning-preview__body{gap:10px;font-size:14px;display:grid}.learning-preview__body h3{margin:0}.learning-preview__body h4{margin:8px 0 0;font-size:15px}.learning-preview__body h5{margin:6px 0 0;font-size:13px}.learning-preview__lesson{border-left:3px solid var(--line);gap:6px;padding-left:10px;display:grid}.learning-preview__lesson--current{border-left-color:var(--brand-primary)}.learning-preview__heading{margin:0;font-size:15px;font-weight:700}.learning-preview__tip{border-radius:var(--radius-sm);background:var(--page-deep);margin:0;padding:8px 10px}.learning-preview__flashcard{border:1px solid var(--line);border-radius:var(--radius-sm);margin:0;padding:8px 10px}.learning-preview__disclaimer{color:var(--ink-muted);margin:8px 0 0;font-size:12px;font-style:italic}.learning-assets__grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.learning-asset-card{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--white);align-content:start;gap:8px;padding:10px;display:grid}.learning-asset-card img{object-fit:contain;background:var(--page-deep);border-radius:var(--radius-sm);width:100%;height:140px}.learning-asset-card__meta{color:var(--ink-soft);gap:2px;font-size:12px;display:grid}.learning-asset-card__meta strong{color:var(--ink);font-size:13px}.learning-asset-card__rights{overflow-wrap:anywhere}.learning-competencies{gap:10px;min-width:0;display:grid}.learning-competencies__head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.learning-competencies__head h2,.learning-competencies__head h3{margin:0;font-size:17px}.learning-competencies__list{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.learning-competencies__item{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--white);gap:4px;min-width:0;padding:10px 12px;display:grid}.learning-answer-row{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.learning-answer-row input[type=text],.learning-answer-row input:not([type]){min-width:0}.learning-question-sheet .learning-form{max-width:560px}.learning-history{gap:10px;margin:0;padding:0 0 0 18px;font-size:13px;display:grid}.learning-history>li{gap:4px;min-width:0;display:grid}.learning-history p{color:var(--ink-soft);margin:0}.learning-history__answers{color:var(--ink-soft);gap:2px;margin:0;padding-left:16px;display:grid}.learning-assessment-detail{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--white);gap:14px;min-width:0;padding:16px;display:grid}.learning-assessment-detail h2,.learning-assessment-detail h3,.learning-assessment-detail h4{margin:0}.learning-assessment-detail h3{font-size:15px}.learning-assessment-detail h4{color:var(--ink-muted);text-transform:uppercase;letter-spacing:.04em;font-size:13px}.learning-draft-editor{gap:12px;min-width:0;display:grid}.learning-draft-config{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));align-items:end;gap:10px;display:grid}.learning-validation{border:1px solid var(--danger,#b3261e);border-radius:var(--radius-md);gap:8px;padding:12px;display:grid}.learning-validation--ok{border-color:var(--line)}.learning-validation h4,.learning-validation p{margin:0}@media (max-width:767px){.learning-draft-config,.learning-competencies__list{grid-template-columns:minmax(0,1fr)}}.chat-layout{grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:20px;min-height:620px;display:grid}.chat-inbox,.chat-thread{background:#fff;border:1px solid #e9ddd5;border-radius:24px;overflow:hidden;box-shadow:0 12px 35px #6c3a1b14}.chat-filters{border-bottom:1px solid #e9ddd5;gap:12px;padding:18px;display:grid}.chat-filters input[type=text],.chat-filters input:not([type]){min-height:48px}.conversation-tile{text-align:left;color:#181611;background:#fff;border:0;border-bottom:1px solid #f1e8e2;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;padding:16px;display:grid}.conversation-tile:hover,.conversation-tile.is-active{background:#fff5ed}.conversation-tile span:nth-child(2){gap:5px;min-width:0;display:grid}.conversation-tile small{text-overflow:ellipsis;white-space:nowrap;color:#696257;overflow:hidden}.conversation-avatar{color:#c74400;background:#fff0e5;border-radius:50%;place-items:center;width:48px;height:48px;font-weight:800;display:grid}.unread-badge{color:#fff;background:#f04b0c;border-radius:50%;place-items:center;min-width:24px;height:24px;display:grid}.chat-thread{flex-direction:column;display:flex}.chat-thread>header{border-bottom:1px solid #e9ddd5;align-items:center;gap:12px;padding:18px;display:flex}.chat-thread h2,.chat-thread p{margin:0}.chat-thread header p{color:#696257}.message-list{background:linear-gradient(135deg,#fcfaf8,#fff7f0);flex-direction:column;flex:1;gap:10px;padding:22px;display:flex;overflow:auto}.message-bubble{background:#fff;border:1px solid #e9ddd5;border-radius:20px;align-self:flex-start;max-width:75%;padding:13px 16px}.message-bubble.outgoing{background:#ffe0cb;align-self:flex-end}.message-bubble small{color:#696257;text-align:right;margin-top:5px;display:block}.message-composer{border-top:1px solid #e9ddd5;grid-template-columns:1fr auto;gap:12px;padding:16px;display:grid}.message-composer textarea{resize:vertical;min-height:52px;max-height:140px;font:inherit;border:1px solid #e9ddd5;border-radius:18px;padding:14px}.inline-alert{color:#8b2f00;background:#fff0e5;border-radius:14px;margin-bottom:12px;padding:12px 16px}@media (max-width:800px){.chat-layout{grid-template-columns:1fr}.chat-thread{min-height:560px}}.enrollment-tabs{flex-wrap:wrap;gap:8px;margin-bottom:16px;display:flex}.enrollment-tab--active{pointer-events:none}.enrollment-filters{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.enrollment-detail{flex-direction:column;gap:12px;display:flex}.enrollment-detail__grid{grid-template-columns:minmax(120px,auto) 1fr;gap:4px 12px;margin:0;display:grid}.enrollment-detail__grid dt{color:var(--ink-muted)}.enrollment-detail__grid dd{margin:0}.enrollment-detail__requirements{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.enrollment-detail__requirements>li{border:1px solid var(--line);border-radius:var(--radius-sm);padding:10px 12px}.enrollment-detail__requirement-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px;display:flex}.enrollment-detail__requirement-actions input{flex:160px;min-width:120px}.enrollment-detail__decisions{border-top:1px solid var(--line);flex-direction:column;gap:8px;padding-top:12px;display:flex}.courses-page .status-chip{margin-right:6px}@media (max-width:767px){.enrollment-detail__grid{grid-template-columns:1fr}}.app-sidebar__footer{margin-top:auto;position:relative}.app-sidebar__account{border:1px solid var(--line);border-radius:var(--radius-sm);width:100%;min-height:56px;color:inherit;background:var(--white);box-shadow:var(--shadow-soft);text-align:left;align-items:center;gap:10px;padding:9px 10px;display:flex}.app-sidebar__account:hover{border-color:var(--line-strong);background:var(--page-deep)}.app-sidebar__account-icon{width:36px;height:36px;color:var(--accent-strong);background:var(--accent-soft);border-radius:10px;flex:none;place-items:center;display:grid}.app-sidebar__account-icon svg,.app-sidebar__account-chevron svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:19px;height:19px}.app-sidebar__account-chevron{color:var(--ink-muted);place-items:center;margin-left:auto;display:grid}.account-control__demo--sidebar{padding:2px 7px;font-size:10.5px}.account-menu{z-index:30;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--white);box-shadow:var(--shadow-lift);justify-items:start;gap:8px;padding:14px;display:grid;position:absolute;bottom:calc(100% + 8px);left:0;right:0}.account-menu__name{color:var(--ink);margin:0;font-size:14px;font-weight:800}.account-menu__role{color:var(--ink-muted);margin:0;font-size:12.5px}.account-menu__logout{width:100%;min-height:40px;color:var(--accent-strong);background:var(--accent-soft);border:0;border-radius:10px;justify-content:center;align-items:center;gap:8px;margin-top:4px;padding:0 12px;font-size:13px;font-weight:800;display:inline-flex}.account-menu__logout:hover{color:var(--brand-on-primary);background:var(--cta-gradient)}.account-menu__logout svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:17px;height:17px}.app-nav__badge{min-width:21px;height:21px;color:var(--brand-on-primary);background:var(--accent);border-radius:999px;place-items:center;margin-left:auto;padding:0 6px;font-size:11.5px;font-weight:800;line-height:1;display:inline-grid}.app-nav__item.active .app-nav__badge{color:var(--accent-strong);background:var(--white)}.global-search{align-items:center;display:flex;position:relative}.global-search__icon{color:var(--ink-muted);pointer-events:none;place-items:center;display:grid;position:absolute;left:12px}.global-search__icon svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:17px;height:17px}.global-search__input{border:1px solid var(--line);width:clamp(180px,22vw,280px);min-height:42px;color:var(--ink);background:var(--white);border-radius:999px;padding:0 64px 0 38px;font-size:13.5px}.global-search__input::placeholder{color:var(--ink-muted)}.global-search__input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow);outline:none}.global-search__kbd{border:1px solid var(--line);color:var(--ink-muted);background:var(--page-deep);pointer-events:none;border-radius:7px;padding:3px 7px;font-family:inherit;font-size:10.5px;font-weight:700;position:absolute;right:12px}.global-search__results{z-index:30;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--white);width:min(340px,90vw);max-height:330px;box-shadow:var(--shadow-lift);gap:2px;padding:8px;display:grid;position:absolute;top:calc(100% + 8px);right:0;overflow-y:auto}.global-search__note{color:var(--ink-muted);margin:0;padding:12px;font-size:13px}.global-search__option{text-align:left;background:0 0;border:0;border-radius:10px;gap:1px;width:100%;padding:9px 12px;display:grid}.global-search__option strong{color:var(--ink);font-size:13.5px}.global-search__option span{color:var(--ink-muted);font-size:12px}.global-search__option--active{background:var(--accent-soft)}.topbar-bell{position:relative}.topbar-bell__button{border:1px solid var(--line);width:42px;height:42px;color:var(--ink-soft);background:var(--white);border-radius:999px;place-items:center;display:grid;position:relative}.topbar-bell__button:hover{border-color:var(--line-strong);background:var(--page-deep)}.topbar-bell__button svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:19px;height:19px}.topbar-bell__dot{border:2px solid var(--white);background:var(--accent);border-radius:50%;width:8px;height:8px;position:absolute;top:9px;right:10px}.topbar-bell__popover{z-index:30;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--white);width:min(330px,90vw);box-shadow:var(--shadow-lift);gap:6px;padding:12px;display:grid;position:absolute;top:calc(100% + 8px);right:0}.topbar-bell__heading{color:var(--ink);margin:0 0 2px;font-size:13px;font-weight:800}.topbar-bell__note{color:var(--ink-muted);margin:0;padding:6px 2px 4px;font-size:13px}.topbar-bell__entry{border:1px solid var(--line);background:var(--page);text-align:left;border-radius:10px;gap:2px;width:100%;padding:10px 12px;display:grid}.topbar-bell__entry:hover{border-color:var(--accent);background:var(--accent-soft)}.topbar-bell__entry strong{color:var(--ink);font-size:13px}.topbar-bell__entry span{color:var(--ink-muted);font-size:12px}.premium-table-scroll{overflow-x:auto}.premium-table{border-collapse:collapse;width:100%;font-size:13.5px}.premium-table th{color:var(--ink-muted);letter-spacing:.02em;text-align:left;white-space:nowrap;padding:10px 14px;font-size:12px;font-weight:800}.premium-table td{border-top:1px solid var(--line);color:var(--ink-soft);vertical-align:middle;padding:13px 14px}.premium-table tbody tr:hover td{background:var(--page-deep)}.premium-table__person{align-items:center;gap:11px;display:inline-flex}.premium-table__person strong{color:var(--ink);font-weight:700}.avatar-initials{width:38px;height:38px;color:var(--accent-strong);background:var(--accent-soft);border-radius:50%;flex:none;place-items:center;font-size:13px;font-weight:800;display:inline-grid}.avatar-initials--lg{width:52px;height:52px;font-size:17px}.status-chip{white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:4px 11px;font-size:12px;font-weight:800;display:inline-flex}.status-chip--available{color:var(--green-700);background:var(--green-100)}.status-chip--busy{color:var(--accent-strong);background:var(--accent-soft)}.status-chip--off{color:var(--ink-muted);background:var(--page-deep)}.week-bars{grid-template-columns:repeat(7,minmax(0,1fr));align-items:end;gap:8px;display:grid}.week-bars__item{justify-items:center;gap:5px;display:grid}.week-bars__value{color:var(--ink-soft);font-size:11px;font-weight:800}.week-bars__label{color:var(--ink-muted);font-size:11.5px}.week-bars__bar{justify-items:center;width:100%;display:grid}.week-bars__bar progress{appearance:none;writing-mode:vertical-lr;background:var(--page-deep);direction:rtl;border:0;border-radius:8px;width:24px;height:108px;overflow:hidden}.week-bars__bar progress::-webkit-progress-bar{background:var(--page-deep);border-radius:8px}.week-bars__bar progress::-webkit-progress-value{background:linear-gradient(180deg, var(--accent) 0%, color-mix(in srgb, var(--accent) 55%, white) 100%);border-radius:8px}.week-bars__bar progress::-moz-progress-bar{background:linear-gradient(180deg, var(--accent) 0%, color-mix(in srgb, var(--accent) 55%, white) 100%);border-radius:8px}.legend-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.legend-list li{color:var(--ink-soft);align-items:center;gap:10px;font-size:13.5px;display:flex}.legend-list strong{color:var(--ink);margin-left:auto;font-size:14px}.legend-dot{border-radius:50%;flex:none;width:10px;height:10px}.legend-dot--green{background:#2e9e6b}.legend-dot--orange{background:var(--accent)}.legend-dot--blue{background:#3d7edb}.legend-dot--red{background:var(--red-600)}.legend-dot--muted{background:var(--line-strong)}.premium-pagination{color:var(--ink-muted);justify-content:flex-end;align-items:center;gap:10px;margin-top:4px;font-size:13px;display:flex}.premium-pagination .icon-button{border:1px solid var(--line);width:36px;height:36px;color:var(--ink-soft);background:var(--white);border-radius:10px;place-items:center;display:grid}.premium-pagination .icon-button svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.premium-pagination .icon-button:disabled{opacity:.4;cursor:default}.table-search{align-items:center;min-width:0;display:flex;position:relative}.table-search span[aria-hidden=true]{color:var(--ink-muted);pointer-events:none;place-items:center;display:grid;position:absolute;left:12px}.table-search svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.table-search input{border:1px solid var(--line);width:100%;min-height:42px;color:var(--ink);background:var(--white);border-radius:12px;padding:0 14px 0 36px;font-size:13.5px}.table-search input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow);outline:none}.occupancy-cell{align-items:center;gap:9px;display:inline-flex}.occupancy-cell span{min-width:38px;color:var(--ink);font-size:12.5px;font-weight:800}.occupancy-cell progress{appearance:none;background:var(--page-deep);border:0;border-radius:6px;width:76px;height:7px;overflow:hidden}.occupancy-cell progress::-webkit-progress-bar{background:var(--page-deep);border-radius:6px}.occupancy-cell progress::-webkit-progress-value{background:var(--accent);border-radius:6px}.occupancy-cell progress::-moz-progress-bar{background:var(--accent);border-radius:6px}.instructors-layout{grid-template-columns:minmax(0,1fr) minmax(260px,320px);align-items:start;gap:20px;display:grid}.instructors-side{gap:20px;display:grid}.instructors-toolbar{gap:12px;margin-bottom:6px;display:flex}.instructors-toolbar .table-search{flex:320px;max-width:380px}.instructor-detail{margin-top:20px}@media (max-width:1180px){.instructors-layout{grid-template-columns:minmax(0,1fr)}.instructors-side{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}}.page-header__accent{color:var(--accent)}.kpi-card--static{cursor:default}@media (prefers-reduced-motion:reduce){.global-search__results,.topbar-bell__popover,.account-menu{transition:none}}.dashboard-hero{border-radius:var(--radius-lg);background:var(--surface-dark);min-height:208px;box-shadow:var(--shadow);position:relative;overflow:hidden}.dashboard-hero__photo{object-fit:cover;object-position:62% 42%;width:100%;height:100%;position:absolute;inset:0}.dashboard-hero__scrim{background:linear-gradient(90deg,#0a0704db 0%,#0a07049e 38%,#0a070414 72%,#0a070400 100%);position:absolute;inset:0}.dashboard-hero__content{z-index:1;justify-items:start;gap:8px;max-width:460px;padding:34px 38px;display:grid;position:relative}.dashboard-hero__content h2{color:#fff;letter-spacing:-.02em;margin:0;font-size:30px;font-weight:800;line-height:1.15}.dashboard-hero__content p{color:#ffffffd1;margin:0;font-size:14.5px;line-height:1.45}.dashboard-hero__cta{align-items:center;gap:8px;margin-top:10px;display:inline-flex}.kpi-card:has(>.kpi-card__body){text-align:left;align-items:center;gap:14px;display:flex}.kpi-card__body{gap:2px;min-width:0;display:grid}.kpi-card__chevron{color:var(--ink-muted);place-items:center;margin-left:auto;display:grid}.kpi-card__chevron svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.dashboard-grid{grid-template-columns:minmax(0,.92fr) minmax(0,1.24fr) minmax(0,1.18fr);grid-template-areas:"plan occupancy attention""plan progress chat";align-items:stretch;gap:20px;display:grid}.app-shell--desktop .dashboard-grid{grid-template-rows:228px 238px;gap:15px}.app-shell--desktop .dashboard-chat__item{padding:7px 9px}.app-shell--desktop .dashboard-chat__item .dashboard-avatar-photo,.app-shell--desktop .dashboard-chat__item .avatar-initials{width:34px;height:34px}.app-shell--desktop .dashboard-chat__cta{display:none}.app-shell--desktop .dashboard-grid>.panel-card{min-height:0;overflow:hidden}.app-shell--desktop .dashboard-plan{scrollbar-width:thin;overflow-y:auto}.app-shell--desktop .week-chart{height:158px}.app-shell--desktop .dashboard-grid .attention-list li:nth-child(n+4),.app-shell--desktop .dashboard-grid .progress-list li:nth-child(n+3){display:none}.dashboard-plan{grid-area:plan}.dashboard-occupancy{grid-area:occupancy}.dashboard-attention{grid-area:attention}.dashboard-progress{grid-area:progress}.dashboard-chat{grid-area:chat}@media (max-width:1360px){.dashboard-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"plan occupancy""attention progress""chat chat"}}@media (max-width:900px){.dashboard-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"plan""occupancy""attention""progress""chat"}}.day-timeline{gap:14px;margin:0;padding:0 0 0 4px;list-style:none;display:grid;position:relative}.day-timeline:before{content:"";background:var(--line);width:2px;position:absolute;top:12px;bottom:12px;left:8px}.day-timeline__row{grid-template-columns:18px 46px minmax(0,1fr);align-items:start;gap:8px;display:grid;position:relative}.day-timeline__dot{border:2px solid var(--accent-vivid);background:var(--white);z-index:1;border-radius:50%;justify-self:start;width:10px;height:10px;margin-top:6px;margin-left:2px;position:relative}.day-timeline__time{color:var(--ink);margin-top:2px;font-size:13px;font-weight:800}.day-timeline__card{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--white);width:100%;box-shadow:var(--shadow-soft);text-align:left;justify-items:start;gap:3px;padding:11px 13px;display:grid}.day-timeline__card:hover{border-color:var(--line-strong);transform:translateY(-1px)}.day-timeline__card strong{color:var(--ink);font-size:13.5px}.day-timeline__card>span:not(.status-badge){color:var(--ink-muted);font-size:12.5px}.attention-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.attention-list__item{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--white);width:100%;box-shadow:var(--shadow-soft);text-align:left;align-items:center;gap:12px;padding:12px 13px;display:flex}.attention-list__item:hover{border-color:var(--accent);background:var(--accent-soft)}.attention-list__icon{width:38px;height:38px;color:var(--accent-strong);background:var(--accent-soft);border-radius:11px;flex:none;place-items:center;display:grid}.attention-list__icon svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:19px;height:19px}.attention-list__body{gap:1px;min-width:0;display:grid}.attention-list__body strong{color:var(--ink);font-size:13.5px}.attention-list__body span{color:var(--ink-muted);font-size:12.5px}.attention-list__chevron{color:var(--ink-muted);flex:none;place-items:center;margin-left:auto;display:grid}.attention-list__chevron svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:17px;height:17px}.progress-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.progress-list__item{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--white);width:100%;box-shadow:var(--shadow-soft);text-align:left;align-items:center;gap:12px;padding:11px 13px;display:flex}.progress-list__item:hover{border-color:var(--line-strong)}.progress-identity{flex:auto;gap:1px;min-width:0;display:grid}.progress-identity strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;overflow:hidden}.progress-identity span{color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.progress-ring{flex:none;place-items:center;width:44px;height:44px;display:grid;position:relative}.progress-ring svg{width:100%;height:100%;position:absolute;inset:0}.progress-ring__track{stroke:var(--page-deep)}.progress-ring__fill{stroke:var(--accent-vivid)}.progress-ring__value{color:var(--ink);font-size:10.5px;font-weight:800;position:relative}.progress-meter{flex:30%;gap:4px;min-width:120px;display:grid}.progress-value{color:var(--ink-muted);font-size:11.5px}.dashboard-chat__badge{vertical-align:middle;margin-left:8px}.dashboard-chat__list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.dashboard-chat__item{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--white);width:100%;box-shadow:var(--shadow-soft);text-align:left;align-items:center;gap:11px;padding:10px 12px;display:flex}.dashboard-chat__item:hover{border-color:var(--line-strong);background:var(--page-deep)}.dashboard-chat__body{flex:auto;gap:1px;min-width:0;display:grid}.dashboard-chat__body strong{color:var(--ink);font-size:13.5px}.dashboard-chat__body span{color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.dashboard-chat__meta{color:var(--ink-muted);justify-items:end;gap:4px;font-size:11.5px;display:grid}.dashboard-chat__cta{text-align:center;justify-self:center;width:100%;margin-top:10px}.week-bars__item--today .week-bars__value{color:var(--accent-strong)}.week-bars__item--today .week-bars__bar progress::-webkit-progress-value{background:var(--accent-strong)}.week-bars__item--today .week-bars__bar progress::-moz-progress-bar{background:var(--accent-strong)}.attention-list>li{background:0 0;border:0;padding:0;display:block}.progress-list li{border-bottom:0;padding:0;display:block}.progress-meter{grid-template-columns:minmax(0,1fr)}.progress-value{color:var(--ink-muted);font-weight:600}.dashboard-page{gap:16px;padding-bottom:24px}.dashboard-page .panel-card{gap:10px;padding:16px 18px}.dashboard-grid{gap:16px}.dashboard-hero{min-height:196px}.progress-ring{width:40px;height:40px}.progress-list__item{gap:10px;padding:9px 12px}.dashboard-chat__item{padding:9px 11px}.attention-list__item{padding:10px 12px}.kpi-grid{gap:16px}.login-layout{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:0}.login-intro{background:radial-gradient(circle at 8% 96%, var(--accent-glow), transparent 40%), var(--page);justify-content:flex-start;align-items:center;padding:clamp(28px,4vw,56px) clamp(22px,4vw,64px)}.login-wordmark{align-self:center;width:clamp(300px,33vw,556px);height:auto;margin:clamp(6px,1.5vh,20px) auto clamp(14px,2.5vh,26px)}.login-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--white);width:min(480px,100%);box-shadow:var(--shadow);gap:6px;padding:clamp(22px,3vw,34px);display:grid}.login-eyebrow{color:var(--accent);letter-spacing:.01em;margin:0;font-size:13px;font-weight:800}.login-card h1{color:var(--ink);letter-spacing:-.02em;margin:0 0 2px;font-size:clamp(26px,2.6vw,34px);font-weight:800}.login-card .login-lead{color:var(--ink-muted);margin:0 0 10px;font-size:14.5px}.login-field{align-items:center;display:flex;position:relative}.login-field__icon{width:46px;height:100%;color:var(--ink-muted);border-right:1px solid var(--line);pointer-events:none;place-items:center;display:grid;position:absolute;left:0}.login-field__icon svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.login-field input{width:100%;padding-left:58px}.login-field__toggle{width:36px;height:36px;color:var(--ink-muted);background:0 0;border:0;border-radius:9px;place-items:center;display:grid;position:absolute;right:6px}.login-field__toggle:hover{color:var(--ink);background:var(--page-deep)}.login-field__toggle svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:19px;height:19px}.login-form__meta{justify-content:flex-end;display:flex}.login-showcase{align-items:stretch;padding:clamp(14px,1.6vw,24px);display:grid}.login-showcase__photo{object-fit:cover;object-position:64% 40%;border-radius:var(--radius-lg);width:100%;height:100%;min-height:0}@media (max-width:960px){.login-layout{grid-template-columns:minmax(0,1fr)}.login-showcase{display:none}}.login-showcase{background:var(--page)}.login-page{overflow:hidden}.page-actions-row{justify-content:flex-end;padding:10px 22px 0}.page-actions-row button{min-height:46px}.login-access{flex-direction:column;gap:14px;display:flex}.login-access .login-quick-access{order:2}.login-quick-access+.login-form{margin-top:0}.calendar-body{flex:auto;align-items:stretch;gap:16px;min-height:0;display:flex}.calendar-body .calendar-stage{flex:auto;min-width:0}.calendar-body .calendar-main{flex:auto;align-content:start;gap:16px;min-width:0;display:grid}.calendar-main .calendar-stage{width:100%}.calendar-rail{flex-direction:column;flex:0 0 300px;gap:14px;width:300px;min-height:0;display:flex;overflow-y:auto}.calendar-rail__card{gap:9px;padding:14px 16px}.calendar-rail__card h2{color:var(--ink);margin:0;font-size:15px}.calendar-rail__money{color:var(--ink);letter-spacing:-.02em;margin:0;font-size:26px;font-weight:800}.occupancy-donut{align-items:center;gap:14px;display:flex}.occupancy-donut__ring{flex:none;place-items:center;width:104px;height:104px;display:grid;position:relative}.occupancy-donut__ring svg{width:100%;height:100%;position:absolute;inset:0}.occupancy-donut__track{stroke:var(--page-deep)}.occupancy-donut__fill{stroke:var(--accent-vivid)}.occupancy-donut__value{justify-items:center;gap:0;display:grid;position:relative}.occupancy-donut__value strong{color:var(--ink);font-size:19px;font-weight:800}.occupancy-donut__value span{color:var(--ink-muted);font-size:10.5px}@media (max-width:1499px){.calendar-rail{display:none}}.event-panel--ride{width:min(1160px,96vw)}.ride-heading{align-items:flex-start;gap:14px;display:flex}.ride-heading__icon{width:52px;height:52px;color:var(--accent-strong);background:var(--accent-soft);border-radius:14px;flex:none;place-items:center;display:grid}.ride-heading__icon svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:24px;height:24px}.ride-heading__meta{color:var(--ink-soft);flex-wrap:wrap;align-items:center;gap:8px;margin:0;font-size:13px;font-weight:700;display:flex}.ride-heading__date{color:var(--ink-muted);margin:2px 0 0;font-size:13px}.ride-heading__time{color:var(--ink);letter-spacing:-.02em;margin:0;font-size:30px;font-weight:800}@media (max-width:900px){.ride-layout{grid-template-columns:minmax(0,1fr)}}.ride-facts{align-content:start;gap:10px;display:grid}.ride-fact{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--white);box-shadow:var(--shadow-soft);align-items:center;gap:12px;padding:12px 13px;display:flex}.ride-fact__icon{width:40px;height:40px;color:var(--accent-strong);background:var(--accent-soft);border-radius:11px;flex:none;place-items:center;display:grid}.ride-fact__icon svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:19px;height:19px}.ride-fact__body{gap:1px;min-width:0;display:grid}.ride-fact__label{color:var(--ink-muted);font-size:11.5px;font-weight:700}.ride-fact__body strong{color:var(--ink);font-size:14px}.ride-fact__detail{color:var(--ink-muted);font-size:12px}.ride-fact__action{border:1px solid var(--line);color:var(--accent-strong);background:var(--white);white-space:nowrap;border-radius:999px;align-items:center;gap:4px;margin-left:auto;padding:7px 11px;font-size:12px;font-weight:800;display:inline-flex}.ride-fact__action:hover{border-color:var(--accent);background:var(--accent-soft)}.ride-fact__action svg{fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.route-map{border-radius:var(--radius-lg);min-height:380px;box-shadow:var(--shadow);background:#131210;flex-direction:column;display:flex;position:relative;overflow:hidden}.route-map__chrome{z-index:2;pointer-events:none;justify-content:space-between;align-items:center;gap:10px;display:flex;position:absolute;top:12px;left:12px;right:12px}.route-map__legend{color:#f5efe9;background:#131210db;border-radius:999px;align-items:center;gap:9px;padding:8px 13px;font-size:12.5px;font-weight:700;display:inline-flex}.route-map__legend-line{background:var(--accent-vivid);border-radius:4px;width:22px;height:4px}.route-map__zoom{pointer-events:auto;gap:6px;display:grid}.route-map__zoom button{color:#f5efe9;background:#131210db;border:1px solid #ffffff29;border-radius:9px;place-items:center;width:34px;height:34px;font-size:17px;font-weight:700;display:grid}.route-map__zoom button:hover{background:#302c28f2}.route-map__canvas{cursor:grab;touch-action:none;flex:auto;min-height:320px;position:relative}.route-map__canvas:active{cursor:grabbing}.route-map__canvas svg{width:100%;height:100%;position:absolute;inset:0}.route-map__ground{fill:#191d27}.route-map__street{stroke:#262b38;stroke-linecap:round}.route-map__marker-halo{fill:color-mix(in srgb, var(--accent-vivid) 24%, transparent)}.route-map__marker{fill:var(--accent-vivid)}.route-map__marker--start,.route-map__marker--finish{fill:#2f9e57}.route-map__marker-core{fill:#fff}.route-map__trace-halo{fill:none;stroke:color-mix(in srgb, var(--accent-vivid) 26%, transparent);stroke-width:11px;stroke-linecap:round;stroke-linejoin:round}.route-map__trace{fill:none;stroke-width:4.5px;stroke-linecap:round;stroke-linejoin:round}.route-map__trace--primary{stroke:#f07c1d}.route-map__trace--secondary{stroke:#e2483d}.route-map__waypoint{fill:#f07c1d;stroke:#fff;stroke-width:2.5px}.route-map__waypoint-label{fill:#fff;font-size:13px;font-weight:800}.route-map__street-label{fill:#97a0b5;font-size:12px;font-weight:600}.route-map__city{fill:#aeb6c9;letter-spacing:.02em;font-size:26px;font-weight:700}.route-map__terminus-label{fill:#fff;letter-spacing:.08em;font-size:12.5px;font-weight:800}.route-map__start{color:#fff;letter-spacing:.08em;pointer-events:none;background:#131210e0;border-radius:999px;align-items:center;gap:6px;padding:6px 11px;font-size:11.5px;font-weight:800;display:inline-flex;position:absolute;top:58%;left:50%;transform:translate(-50%)}.route-map__start-flag{color:var(--accent-vivid);place-items:center;display:grid}.route-map__start-flag svg{fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.route-map__empty{z-index:1;text-align:center;place-content:center;justify-items:center;gap:6px;padding:24px;display:grid;position:absolute;inset:0}.route-map__empty>span[aria-hidden]{width:52px;height:52px;color:var(--accent-vivid);background:#ffffff0f;border-radius:50%;place-items:center;display:grid}.route-map__empty svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:24px;height:24px}.route-map__empty strong{color:#f5efe9;font-size:16px}.route-map__empty p{color:#f5efe9b8;max-width:340px;margin:0;font-size:13px}.route-map__empty-note{font-size:12px}.route-map__coords{color:#f5efe9c7;background:#131210eb;margin:0;padding:10px 14px;font-size:12px}.payments-body{align-items:flex-start;gap:16px;display:flex}.payments-main{flex:auto;gap:16px;min-width:0;display:grid}.payments-rail{flex:0 0 300px;gap:14px;width:300px;display:grid}@media (max-width:1499px){.payments-rail{display:none}.payments-body{display:grid}}.structure-donut{align-items:center;gap:14px;display:flex}.structure-donut__paid{stroke:#2e9e6b}.structure-donut__open{stroke:var(--accent-vivid)}.structure-donut__overdue{stroke:var(--red-600)}.occupancy-donut__value--small strong{font-size:12px}.recent-payments{gap:8px;margin:0;padding:0;list-style:none;display:grid}.recent-payments li{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--white);align-items:center;gap:10px;padding:9px 10px;display:flex}.recent-payments__check{width:28px;height:28px;color:var(--green-700);background:var(--green-100);border-radius:50%;flex:none;place-items:center;display:grid}.recent-payments__check svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.recent-payments__body{flex:auto;gap:0;min-width:0;display:grid}.recent-payments__body strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.recent-payments__body span{color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;overflow:hidden}.recent-payments__meta{justify-items:end;gap:0;display:grid}.recent-payments__meta strong{color:var(--green-700);font-size:12.5px}.recent-payments__meta span{color:var(--ink-muted);font-size:11px}.student-learning{gap:16px;display:grid}.student-learning__block{gap:10px;display:grid}.student-learning__stats{flex-wrap:wrap;gap:10px;display:flex}.student-learning__stat{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--white);color:var(--ink-muted);align-items:center;gap:10px;padding:10px 13px;font-size:13px;display:inline-flex}.student-learning__stat strong{color:var(--ink)}.student-learning__weak{color:var(--ink-soft);flex-wrap:wrap;align-items:center;gap:6px;margin:0;font-size:13px;display:flex}.student-learning__attempts{gap:8px;margin:0;padding:0;list-style:none;display:grid}.student-learning__attempts li{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--white);align-items:center;gap:12px;padding:10px 12px;display:flex}.student-learning__attempts strong{color:var(--ink);font-size:13.5px}.student-learning__attempts li>span:not(.status-chip){color:var(--ink-muted);font-size:12.5px}.student-learning__attempts .status-chip{margin-left:auto}.chat-layout{grid-template-columns:minmax(240px,25fr) minmax(0,40fr) minmax(260px,35fr)}.chat-avatar-photo{object-fit:cover;border-radius:50%;width:48px;height:48px}.chat-context__photo{object-fit:cover;border-radius:50%;width:64px;height:64px}.chat-unread-divider{color:var(--accent-strong);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:10px;margin:4px 0;font-size:11.5px;font-weight:800;display:flex}.chat-unread-divider:before,.chat-unread-divider:after{content:"";border-top:1px solid color-mix(in srgb, var(--brand-primary) 24%, #f0e4da);flex:1}.chat-new-conversation{justify-self:end}@media (max-width:1280px){.chat-layout{grid-template-columns:minmax(260px,330px) minmax(0,1fr)}.chat-context{display:none}}.chat-inbox__heading{padding:16px 18px 0}.chat-inbox__heading h2{color:var(--ink);align-items:center;gap:8px;margin:0;font-size:17px;display:flex}.chat-filter-chips{gap:8px;display:flex}.chat-chip{border:1px solid var(--line);color:var(--ink-soft);background:var(--white);border-radius:999px;padding:7px 14px;font-size:12.5px;font-weight:700}.chat-chip--active{border-color:var(--accent);color:var(--accent-strong);background:var(--accent-soft)}.chat-send{border-radius:50%;place-items:center;width:46px;min-height:46px;padding:0;display:grid}.chat-send svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:19px;height:19px}.chat-context{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--white);box-shadow:var(--shadow-soft);align-content:start;gap:12px;padding:18px;display:grid}.chat-context h2{color:var(--ink);margin:0;font-size:16px}.chat-context__person{align-items:center;gap:12px;display:flex}.chat-context__person strong{color:var(--ink);font-size:15px;display:block}.chat-context__status{color:var(--ink-muted);font-size:12px;display:block}.chat-context__status--active{color:var(--green-700);font-weight:700}.chat-context__course{color:var(--ink-muted);font-size:12px;display:block}.chat-context__progress{gap:5px;display:grid}.chat-context__progress-row{color:var(--ink-soft);justify-content:space-between;font-size:12.5px;display:flex}.chat-context__progress-row strong{color:var(--ink)}.chat-context__facts{gap:8px;margin:0;display:grid}.chat-context__facts div{border:1px solid var(--line);border-radius:10px;justify-content:space-between;gap:10px;padding:9px 11px;display:flex}.chat-context__facts dt{color:var(--ink-muted);font-size:12.5px}.chat-context__facts dd{color:var(--ink);text-align:right;margin:0;font-size:12.5px;font-weight:700}.chat-context__cta{justify-content:center}.chat-context__note{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--page-deep);gap:3px;padding:11px 13px;display:grid}.chat-context__note strong{color:var(--ink);font-size:12.5px}.chat-context__note p{color:var(--ink-soft);margin:0;font-size:12.5px}.occupancy-donut__value--small{text-align:center;max-width:64px}.occupancy-donut__value--small strong{overflow-wrap:break-word;font-size:10px;line-height:1.2}.occupancy-donut__value--small span{font-size:9.5px}.kpi-card__value{overflow-wrap:anywhere;min-width:0;max-width:100%}.app-shell--mobile .kpi-card__value{font-size:clamp(19px,6.4vw,26px)}.app-shell--mobile .dashboard-hero__content{max-width:100%;padding:22px 20px}.app-shell--mobile .dashboard-hero__content h2{font-size:23px}.app-shell--panel.app-shell--desktop{grid-template-columns:320px minmax(0,1fr)}.app-shell--desktop .app-sidebar__logo{max-width:267px}.app-shell--desktop .panel-page{gap:13px;width:100%;padding:2px 22px 32px}.kpi-card{border-color:color-mix(in srgb, var(--brand-primary) 2.5%, #f8f4f1);min-height:106px;box-shadow:0 6px 18px color-mix(in srgb, var(--brand-primary) 7%, transparent);border-radius:16px}.app-shell--desktop .kpi-card:has(>.kpi-card__body) .kpi-card__icon{border-radius:50%;width:65px;height:65px}.app-shell--desktop .kpi-card:has(>.kpi-card__body) .kpi-card__icon svg{width:28px;height:28px}.app-shell--desktop .page-header__eyebrow{display:none}.panel-card{border-color:color-mix(in srgb, var(--brand-primary) 3%, #f6f2ee);box-shadow:0 6px 20px color-mix(in srgb, var(--brand-primary) 6%, transparent);border-radius:18px}.app-sidebar__account{border-radius:14px;min-height:70px;padding:13px 14px}.app-shell--desktop .app-sidebar{padding-bottom:38px}.account-chip{border:1px solid var(--line);background:var(--white);min-height:60px;box-shadow:var(--shadow-soft);color:inherit;border-radius:16px;align-items:center;gap:10px;padding:8px 14px 8px 9px;display:inline-flex}.account-chip .account-control__mark{border-radius:50%;width:42px;height:42px}.app-shell--desktop .account-chip .account-identity>span{display:none}.app-shell--desktop .account-chip .account-identity strong{font-size:15px}.account-chip:hover{border-color:var(--line-strong);background:var(--page-deep)}.account-chip__chevron{color:var(--ink-muted);place-items:center;display:grid}.account-chip__chevron svg{fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.account-chip-wrap{position:relative}.account-chip-wrap .account-menu{width:min(260px,90vw);inset:calc(100% + 8px) 0 auto auto}.avatar-initials--xl{width:84px;height:84px;font-size:26px}.student-card-hero{align-items:center;gap:18px;display:flex}.student-card-hero__body{gap:4px;display:grid}.student-card-hero__body h2{letter-spacing:-.02em;align-items:center;gap:12px;margin:0;font-size:26px;display:flex}.student-card-hero__contacts{color:var(--ink-soft);flex-wrap:wrap;gap:6px 18px;margin:0;padding:0;font-size:13.5px;list-style:none;display:flex}.student-card-hero__contacts li{align-items:center;gap:7px;display:inline-flex}.student-card-hero__contacts svg{fill:none;width:16px;height:16px;stroke:var(--ink-muted);stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round}.app-shell--desktop .app-sidebar{padding-top:39px}.app-shell--desktop .app-sidebar__logo{max-width:275px;position:relative;top:0;left:1px}.app-shell--desktop .app-nav{gap:7px;margin-top:3px}.app-shell--desktop .dashboard-hero{height:208px;min-height:208px}.app-shell--desktop .dashboard-hero__content{gap:7px;padding:40px 38px 0}.app-shell--desktop .dashboard-hero__content h2{font-size:32px}.app-shell--desktop .dashboard-hero__content p{max-width:300px}.app-shell--desktop .dashboard-hero__cta{margin-top:6px}.pay-table td,.pay-table th{padding:12px 4px;font-size:13px}.pay-table td:first-child{white-space:nowrap;color:var(--ink);font-weight:700}.pay-table td{vertical-align:middle;white-space:nowrap}.pay-table td:first-child{max-width:178px;overflow:hidden}.pay-person strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.pay-table td:nth-child(2){text-overflow:ellipsis;max-width:80px;overflow:hidden}.pay-table td:nth-child(3){text-overflow:ellipsis;max-width:100px;overflow:hidden}.pay-table td>strong{font-size:13px}.pay-table .pay-status,.pay-table .pay-state{padding:4px 9px;font-size:12px}.pay-row__actions{flex-wrap:nowrap;gap:6px}.pay-open{place-items:center;display:inline-grid}.pay-open svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:17px;height:17px}.app-shell--desktop .pay-open{border-radius:10px;width:32px;min-width:32px;height:32px;min-height:32px;padding:0}.students-table--v2 td{vertical-align:middle;padding-top:12px;padding-bottom:12px}.students-table--v2 td:first-child strong{white-space:nowrap}.students-progress--ring{grid-template-columns:44px minmax(0,1fr);align-items:center;gap:10px}.students-progress__meta{gap:2px;min-width:0;display:grid}.students-progress__meta>span{color:var(--ink-muted);font-size:12px}.app-sidebar__account{flex-wrap:wrap}.account-control__demo--sidebar{order:5;justify-content:center;width:100%}.ride-page{gap:14px}.ride-breadcrumb{color:var(--ink-muted);align-items:center;gap:10px;font-size:13.5px;font-weight:600;display:flex}.ride-breadcrumb .link-button{font-size:13.5px}.ride-breadcrumb__back{border:1px solid var(--line);background:var(--white);width:38px;height:38px;color:var(--ink);border-radius:12px;place-items:center;display:grid}.ride-breadcrumb__back:hover{border-color:var(--line-strong);background:var(--page-deep)}.ride-breadcrumb__back svg{fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.ride-hero{align-items:center;gap:18px;padding:20px 24px;display:flex}.ride-hero__icon{width:64px;height:64px;color:var(--accent-strong);background:var(--accent-soft);border-radius:50%;flex:none;place-items:center;display:grid}.ride-hero__icon svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:28px;height:28px}.ride-hero__body{gap:2px;display:grid}.ride-hero__meta{color:var(--ink-soft);align-items:center;gap:8px;margin:0;font-size:14px;display:flex}.ride-hero__meta strong{color:var(--ink);font-weight:800}.ride-hero__date{color:var(--ink-muted);margin:0;font-size:13.5px}.ride-hero__time{color:var(--ink);letter-spacing:-.02em;margin:0;font-size:34px;font-weight:800}.ride-layout{grid-template-columns:minmax(320px,.62fr) minmax(0,1.38fr);align-items:stretch;gap:16px;display:grid}.ride-layout__facts{align-content:start;gap:10px;display:grid}.ride-layout__map{align-content:start;gap:8px;display:grid}.ride-layout__map .route-map{min-height:460px}.ride-layout__map .route-map__canvas{min-height:380px}.ride-fact__avatar{object-fit:cover;border-radius:50%;flex:none;width:44px;height:44px}.ride-page__note{color:var(--ink-muted);margin:0;font-size:13px}.ride-bottom{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:16px;display:grid}.ride-actions{flex-wrap:wrap;align-items:center;gap:12px;padding:18px 20px;display:flex}.ride-actions .primary-button,.ride-actions .secondary-button{align-items:center;gap:8px;display:inline-flex}.ride-actions .primary-button svg,.ride-actions .secondary-button svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:17px;height:17px}.ride-actions__note{color:var(--ink-muted);flex:100%;margin:0;font-size:12.5px}.ride-history{align-content:start;gap:12px;padding:18px 20px;display:grid}.ride-history h2{color:var(--ink);align-items:center;gap:8px;margin:0;font-size:15.5px;font-weight:800;display:flex}.ride-history h2 svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.ride-history ul{gap:10px;margin:0;padding:0;list-style:none;display:grid}.ride-history li{align-items:center;gap:10px;display:flex}.ride-history__icon{width:34px;height:34px;color:var(--green-700,#1d7a46);background:var(--green-100,#e5f6ec);border-radius:10px;flex:none;place-items:center;display:grid}.ride-history__icon svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.ride-history__body{flex:1;min-width:0}.ride-history__body strong{color:var(--ink);font-size:13.5px}.ride-history li time{color:var(--ink-muted);white-space:nowrap;font-size:12.5px}.app-shell--mobile .ride-layout,.app-shell--mobile .ride-bottom{grid-template-columns:minmax(0,1fr)}.student-hero-card{justify-content:space-between;align-items:center;gap:24px;padding:22px 26px;display:flex}.student-card-hero__photo{object-fit:cover;border:4px solid color-mix(in srgb, var(--brand-primary) 14%, #fff);border-radius:50%;flex:none;width:132px;height:132px}.student-card-hero__course{color:var(--ink-soft);margin:0;font-size:15px;font-weight:700}.student-card-page__actions{justify-items:stretch;gap:8px;min-width:220px;display:grid}.student-card-page__actions .primary-button,.student-card-page__actions .secondary-button{justify-content:center;align-items:center;gap:8px;display:inline-flex}.student-card-page__actions svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.student-card-page__secondary{justify-content:center;gap:14px;display:flex}.link-button--danger{color:#b3261e}.ride-breadcrumb__current{color:var(--accent-strong);font-weight:700}.student-overview-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.student-overview-grid--secondary{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr) minmax(0,1fr)}.student-ov-card{align-content:start;gap:12px;padding:16px 18px;display:grid}.student-ov-card header{justify-content:space-between;align-items:center;gap:8px;display:flex}.student-ov-card header h3{color:var(--ink);margin:0;font-size:14.5px;font-weight:800}.student-ov-card header svg{fill:none;width:17px;height:17px;stroke:var(--ink-muted);stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round}.student-ov-card__cta{justify-self:start}.progress-ring--lg{width:84px;height:84px}.progress-ring--lg .progress-ring__value{font-size:17px}.student-ov-progress{align-items:center;gap:16px;display:flex}.student-ov-progress__meta{justify-items:start;gap:3px;display:grid}.student-ov-progress__meta strong{color:var(--ink);letter-spacing:-.01em;font-size:22px;font-weight:800}.student-ov-progress__meta span{color:var(--ink-muted);font-size:12.5px}.student-ov-next{align-items:flex-start;gap:12px;display:flex}.student-ov-next>div{gap:2px;display:grid}.student-ov-next strong{color:var(--ink);font-size:16px;font-weight:800}.student-ov-next span{color:var(--ink-muted);font-size:12.5px}.student-ov-next__icon{width:44px;height:44px;color:var(--accent-strong);background:var(--accent-soft);border-radius:12px;flex:none;place-items:center;display:grid}.student-ov-next__icon svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.student-ov-payments{gap:8px;margin:0;display:grid}.student-ov-payments div{gap:1px;display:grid}.student-ov-payments dt{color:var(--ink-muted);font-size:12px}.student-ov-payments dd{letter-spacing:-.01em;margin:0;font-size:20px;font-weight:800}.student-ov-paid{color:#1d7a46}.student-ov-due{color:var(--accent-strong)}.student-ov-documents{gap:8px;margin:0;padding:0;list-style:none;display:grid}.student-ov-documents li{align-items:center;gap:9px;display:flex}.student-ov-documents .link-button{text-align:left;font-size:13px}.student-ov-doc-marker{border-radius:8px;flex:none;place-items:center;width:26px;height:26px;display:grid}.student-ov-doc-marker svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.student-ov-doc-marker--confirmed{color:#1d7a46;background:#e5f6ec}.student-ov-doc-marker--pending{color:#9a6a00;background:#fdf2d9}.student-ov-doc-marker--not-applicable,.student-ov-doc-marker--untracked{color:var(--ink-muted);background:var(--page-deep)}.student-ov-empty{color:var(--ink-muted);margin:0;font-size:13px}.student-ov-rides{gap:10px;margin:0;padding:0;list-style:none;display:grid}.student-ov-rides li{align-items:center;gap:12px;display:flex}.student-ov-rides__date{border:1px solid var(--line);width:46px;height:46px;color:var(--accent-strong);background:var(--accent-soft);border-radius:10px;flex:none;align-content:center;place-items:center;font-size:16px;font-weight:800;line-height:1;display:grid}.student-ov-rides__date small{color:var(--ink-muted);text-transform:lowercase;font-size:10px;font-weight:700}.student-ov-rides__body{flex:1;gap:1px;min-width:0;display:grid}.student-ov-rides__body strong{color:var(--ink);font-size:13.5px}.student-ov-rides__body span{color:var(--ink-muted);font-size:12px}.student-ov-facts{gap:0;margin:0;display:grid}.student-ov-facts div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:8px 0;display:flex}.student-ov-facts div:last-child{border-bottom:0}.student-ov-facts dt{color:var(--ink-muted);font-size:12.5px}.student-ov-facts dd{color:var(--ink);text-align:right;margin:0;font-size:13px;font-weight:700}.student-ov-active{color:#1d7a46}.app-shell--mobile .student-overview-grid,.app-shell--mobile .student-overview-grid--secondary{grid-template-columns:minmax(0,1fr)}.app-shell--mobile .student-hero-card{flex-direction:column;align-items:stretch}.app-shell--desktop .student-tabs{border:0;border-bottom:1px solid var(--line);background:0 0;border-radius:0;gap:2px;padding:0}.app-shell--desktop .student-tab{min-height:44px;color:var(--ink-soft);border-bottom:2.5px solid #0000;border-radius:0;padding:0 16px;font-size:14.5px}.app-shell--desktop .student-tab:hover{color:var(--ink);background:0 0}.app-shell--desktop .student-tab--active{color:var(--accent-strong);border-bottom-color:var(--accent);background:0 0}.learning-kpi-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.learning-layout{grid-template-columns:minmax(0,1fr) 330px;align-items:start;gap:16px;display:grid}.learning-more{position:relative}.learning-more>button{align-items:center;gap:6px;display:inline-flex}.learning-more>button svg{fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.learning-more__menu{z-index:30;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--white);min-width:200px;box-shadow:var(--shadow-lift);gap:2px;padding:6px;display:grid;position:absolute;top:calc(100% + 6px);left:0}.learning-more__menu button{color:var(--ink);text-align:left;background:0 0;border:0;border-radius:9px;padding:9px 12px;font-size:13.5px;font-weight:600}.learning-more__menu button:hover{background:var(--page-deep)}.learning-more__menu button.active{color:var(--accent-strong);background:var(--accent-soft)}.learning-program-cards{gap:10px;margin:0;padding:0;list-style:none;display:grid}.learning-program-card{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--white);box-shadow:var(--shadow-soft);align-items:center;gap:14px;padding:12px 14px;display:flex}.learning-program-thumb{color:#fff;border-radius:12px;flex:none;place-items:center;width:72px;height:54px;display:grid}.learning-program-thumb svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:24px;height:24px}.learning-program-thumb--a{background:linear-gradient(135deg,#f07c1d,#e2483d)}.learning-program-thumb--b{background:linear-gradient(135deg,#23324a,#4a6390)}.learning-program-thumb--c{background:linear-gradient(135deg,#1d7a46,#58b97a)}.learning-program-thumb--d{background:linear-gradient(135deg,#8d4bd8,#c08bf0)}.learning-program-card__body{flex:1;gap:2px;min-width:0;display:grid}.learning-program-card__body strong{color:var(--ink);font-size:15px}.learning-program-card__meta{color:var(--ink-muted);font-size:12.5px}.learning-program-card__ring{flex:none}.learning-rail{align-content:start;gap:14px;display:grid}.learning-rail-card{align-content:start;gap:10px;padding:16px 18px;display:grid}.learning-rail-card header{justify-content:space-between;align-items:center;gap:8px;display:flex}.learning-rail-card h3{color:var(--ink);margin:0;font-size:14.5px;font-weight:800}.learning-rail-note{color:var(--ink-muted);margin:0;font-size:12.5px}.learning-rail-chip{color:#1d7a46;white-space:nowrap;background:#e5f6ec;border-radius:999px;padding:3px 9px;font-size:11px;font-weight:800}.learning-pub-chart{grid-template-columns:repeat(7,minmax(0,1fr));align-items:end;gap:6px;display:grid}.learning-pub-chart__col{justify-items:center;gap:3px;display:grid}.learning-pub-chart__col svg{width:100%;max-width:18px;height:88px}.learning-pub-chart__bar{fill:var(--accent-vivid)}.learning-pub-chart__bar--empty{fill:color-mix(in srgb, var(--brand-primary) 12%, #f4ede7)}.learning-pub-chart__value{min-height:14px;color:var(--ink);font-size:11px;font-weight:800}.learning-pub-chart__day{color:var(--ink-muted);font-size:10.5px}.learning-rail-list{gap:9px;margin:0;padding:0;list-style:none;display:grid}.learning-rail-list li{align-items:flex-start;gap:9px;display:flex}.learning-rail-list li>span:last-child{gap:1px;display:grid}.learning-rail-list strong{color:var(--ink);font-size:13px}.learning-rail-list small{color:var(--ink-muted);font-size:11.5px}.learning-rail-marker{border-radius:9px;flex:none;place-items:center;width:28px;height:28px;display:grid}.learning-rail-marker svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.learning-rail-marker--draft{color:var(--accent-strong);background:var(--accent-soft)}.learning-rail-marker--warn{color:#9a6a00;background:#fdf2d9}.learning-rail-assets{gap:9px;margin:0;padding:0;list-style:none;display:grid}.learning-rail-assets li{align-items:center;gap:10px;display:flex}.learning-rail-assets img{object-fit:cover;border-radius:8px;width:46px;height:36px}.learning-rail-assets li>span:last-child{gap:1px;min-width:0;display:grid}.learning-rail-assets strong{color:var(--ink);font-size:12.5px}.learning-rail-assets small{color:var(--ink-muted);font-size:11px}.learning-rail-rank{width:22px;height:22px;color:var(--brand-on-primary);background:var(--accent);border-radius:50%;flex:none;place-items:center;font-size:11.5px;font-weight:800;display:grid}.app-shell--mobile .learning-layout,.app-shell--mobile .learning-kpi-row{grid-template-columns:minmax(0,1fr)}.app-shell--desktop .dashboard-hero__photo{object-position:50% 62%}.dashboard-avatar-photo{object-fit:cover;border-radius:50%;flex:none;width:40px;height:40px}.week-chart{align-items:stretch;gap:8px;display:flex}.week-chart__axis{color:var(--ink-muted);align-content:space-between;justify-items:end;padding:18px 0 22px;font-size:10.5px;display:grid}.week-chart__plot{flex:1;position:relative}.week-chart__grid{width:100%;height:calc(100% - 40px);position:absolute;inset:18px 0 22px}.week-chart__grid line{stroke:color-mix(in srgb, var(--brand-primary) 6%, #efe9e3);stroke-width:1px;vector-effect:non-scaling-stroke}.week-chart__bars{grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;height:100%;display:grid;position:relative}.week-chart__col{grid-template-rows:18px 1fr 22px;justify-items:center;display:grid}.week-chart__col svg{width:100%;max-width:22px;height:100%}.week-chart__col rect{fill:#f4a259}.week-chart__col--today rect{fill:var(--accent-vivid)}.week-chart__value{color:var(--ink);font-size:11px;font-weight:800}.week-chart__col--today .week-chart__value{color:var(--accent-strong)}.week-chart__label{color:var(--ink-muted);align-self:end;font-size:11px}.calendar-hero{border-radius:var(--radius-lg);height:110px;box-shadow:var(--shadow);flex:none;overflow:hidden}.calendar-hero img{object-fit:cover;object-position:50% 46%;width:100%;height:100%}.cal-filters-toggle{border:1px solid var(--line);background:var(--white);min-height:42px;color:var(--ink);border-radius:12px;align-items:center;gap:7px;padding:0 14px;font-size:13.5px;font-weight:700;display:inline-flex}.cal-filters-toggle:hover{border-color:var(--line-strong);background:var(--page-deep)}.cal-filters-toggle--active{border-color:var(--accent);color:var(--accent-strong)}.cal-filters-panel{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--white);box-shadow:var(--shadow-soft);padding:12px 14px}.calendar-bottom-row{grid-template-columns:minmax(0,1.15fr) minmax(0,1.15fr) minmax(0,1fr);gap:16px;display:grid}.calendar-bottom-card{align-content:start;gap:7px;padding:12px 15px;display:grid}.calendar-bottom-row{flex:none}.calendar-bottom-card .panel-card__heading h2{font-size:14.5px}.calendar-bottom-card .occupancy-donut__ring{width:92px;height:92px}.calendar-bottom-card .legend-list{gap:4px}.calendar-bottom-card .legend-list li{font-size:12px}.calendar-progress-row button{gap:3px;padding:4px}.calendar-progress-row strong{font-size:12px}.calendar-free-table th,.calendar-free-table td{padding:2px}.calendar-free-pill{min-width:22px;height:22px;font-size:11px}.calendar-bottom-card .link-button{justify-self:start;align-items:center;gap:4px;display:inline-flex}.calendar-bottom-card .link-button svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.calendar-bottom-count{color:var(--accent-strong);margin-left:6px}.calendar-free-table{border-collapse:collapse;width:100%}.calendar-free-table th{color:var(--ink-muted);text-align:center;padding:4px 2px;font-size:11px;font-weight:700}.calendar-free-table th[scope=row]{text-align:left;font-variant-numeric:tabular-nums}.calendar-free-table td{text-align:center;padding:3px 2px}.calendar-free-pill{min-width:26px;height:26px;color:var(--accent-strong);background:var(--accent-soft);border-radius:8px;place-items:center;padding:0 6px;font-size:12px;font-weight:800;display:inline-grid}.calendar-free-empty{color:var(--line-strong)}.calendar-progress-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}.calendar-progress-row button{text-align:center;background:0 0;border:0;border-radius:12px;justify-items:center;gap:4px;width:100%;padding:8px 6px;display:grid}.calendar-progress-row button:hover{background:var(--page-deep)}.calendar-progress-row strong{color:var(--ink);font-size:12.5px}.calendar-progress-row button>span:last-of-type{color:var(--ink-muted);font-size:11.5px}.progress-ring--md{width:64px;height:64px}.progress-ring--md .progress-ring__value{font-size:13px}.calendar-progress-avatar{object-fit:cover;border:2px solid var(--white);border-radius:50%;width:30px;height:30px;margin-top:-14px}span.calendar-progress-avatar{place-items:center;font-size:11px;display:grid}.app-shell--mobile .calendar-bottom-row{grid-template-columns:minmax(0,1fr)}.ride-hero__conflict{color:#b3261e;margin:4px 0 0;font-size:13px;font-weight:600}.availability-donut__available{stroke:#2f9e57}.availability-donut__busy{stroke:var(--accent-vivid)}.availability-donut__off{stroke:color-mix(in srgb, var(--brand-primary) 10%, #d9d2ca)}.week-chart--compact{height:150px}.week-chart--compact .week-chart__bars{gap:7px}.instructors-team-cta{padding:8px}.students-filters--bar{flex-wrap:wrap;align-items:center;gap:10px;padding:10px 12px;display:flex}.students-filters--bar .students-filter-query{flex:240px;display:block;position:relative}.students-filter-query__icon{color:var(--ink-muted);pointer-events:none;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.students-filter-query__icon svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.students-filters--bar .students-filter-query input{border-radius:12px;width:100%;min-height:42px;padding-left:38px}.students-filters--bar>label>select{border-radius:12px;min-height:42px}.students-filters__more{border-top:1px solid var(--line);flex-wrap:wrap;flex:100%;align-items:end;gap:12px;padding-top:10px;display:flex}.students-person{align-items:center;gap:11px;display:flex}.students-person__photo{object-fit:cover;border-radius:50%;flex:none;width:46px;height:46px}.students-person__body{gap:1px;min-width:0;display:grid}.students-person__body strong{color:var(--ink);white-space:nowrap;font-size:14px}.students-person__body>span{color:var(--ink-muted);align-items:center;gap:5px;font-size:12px;display:inline-flex}.students-person__body svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:12.5px;height:12.5px}.students-table--v2 td>.students-person{align-items:center;gap:11px;display:flex}.students-table--v2 td{padding-top:10px;padding-bottom:10px}.students-course{gap:2px}.students-course>span:not(.student-stage){font-size:11.5px}.week-chart--compact{height:176px;padding-bottom:4px}.instructors-side .structure-donut{align-items:center}.kpi-card__icon--green{color:#1d7a46;background:#e5f6ec}.kpi-card__icon--orange{color:var(--accent-strong);background:var(--accent-soft)}.kpi-card__icon--red{color:#b3261e;background:#fde7e5}.kpi-card__value--green{color:#1d7a46}.pay-person{align-items:center;gap:8px;display:flex}.pay-person__photo{object-fit:cover;border-radius:50%;flex:none;width:30px;height:30px}.pay-person__initials{width:30px;height:30px;font-size:11px}.app-shell--desktop .pay-tabs{border:0;border-bottom:1px solid var(--line);background:0 0;border-radius:0;gap:2px;padding:0}.app-shell--desktop .pay-tab{min-height:44px;color:var(--ink-soft);background:0 0;border-bottom:2.5px solid #0000;border-radius:0;padding:0 16px;font-size:14.5px}.app-shell--desktop .pay-tab--active{color:var(--accent-strong);border-bottom-color:var(--accent);background:0 0}.app-shell--none .login-access .login-form,.login-access .login-form{box-shadow:none;background:0 0;border:0;padding:6px 0 0}.login-form__meta--split{justify-content:space-between;align-items:center;gap:12px;display:flex}.login-remember{color:var(--ink-soft);align-items:center;gap:8px;font-size:13.5px;display:inline-flex}.login-remember input{width:18px;height:18px;accent-color:var(--accent)}.login-quick-access{box-shadow:none;background:color-mix(in srgb, var(--brand-primary) 4%, #fdfaf7);border-radius:var(--radius-md);border:0;order:2;padding:12px 16px}.login-quick-access h2{margin-bottom:2px;font-size:13.5px}.login-quick-access>p{margin-bottom:8px;font-size:12px}.login-quick-access .cta-button{background:var(--white);min-height:38px;color:var(--accent-strong);border:1px solid var(--line-strong);box-shadow:none;padding:0 14px;font-size:13px}.login-layout{gap:0}.login-showcase{border-radius:0;margin:0}.login-showcase__photo{object-position:42% 50%;border-radius:0}.login-intro{background:radial-gradient(140% 90% at -24% 118%, transparent 62%, color-mix(in srgb, var(--brand-primary) 14%, transparent) 62.35%, transparent 63.4%), radial-gradient(150% 100% at -30% 125%, transparent 55%, color-mix(in srgb, var(--brand-primary) 9%, transparent) 55.4%, transparent 56.6%), radial-gradient(circle at 8% 96%, var(--accent-glow), transparent 40%), var(--page)}.login-showcase{padding:0}.login-showcase__photo{object-fit:cover;width:100%;height:100vh}.login-form .login-remember{white-space:nowrap;flex-direction:row;align-items:center;display:inline-flex}.configuration-tabs .student-tab{align-items:center;gap:7px;display:inline-flex}.configuration-tabs .student-tab svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.config-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px;display:grid}.config-grid--single{grid-template-columns:minmax(0,1fr)}.config-card{align-content:start;gap:12px;padding:18px 20px;display:grid}.config-card__heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.config-card__heading h3{color:var(--ink);margin:0;font-size:15.5px;font-weight:800}.config-card__heading .link-button{align-items:center;gap:5px;display:inline-flex}.config-card__heading .link-button svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.config-facts{margin:0;display:grid}.config-facts div{border-bottom:1px solid var(--line);align-items:center;gap:12px;padding:9px 0;display:flex}.config-facts div:last-child{border-bottom:0}.config-facts dt{min-width:150px;color:var(--ink-muted);align-items:center;gap:8px;font-size:13px;display:inline-flex}.config-facts dt svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.config-facts dd{color:var(--ink);margin:0;font-size:13.5px;font-weight:600}.config-entity-list{gap:9px;margin:0;padding:0;list-style:none;display:grid}.config-entity-list li{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--page);align-items:center;gap:11px;padding:9px 11px;display:flex}.config-entity__icon{width:34px;height:34px;color:var(--accent-strong);background:var(--accent-soft);border-radius:10px;flex:none;place-items:center;display:grid}.config-entity__icon svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.config-entity__body{flex:1;gap:1px;min-width:0;display:grid}.config-entity__body strong{color:var(--ink);font-size:13.5px}.config-entity__body span{color:var(--ink-muted);font-size:12px}.config-toggle-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.config-toggle-list li{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--page);align-items:center;gap:11px;padding:10px 12px;display:flex}.config-toggle__icon{width:34px;height:34px;color:var(--accent-strong);background:var(--accent-soft);border-radius:10px;flex:none;place-items:center;display:grid}.config-toggle__icon svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:16px;height:16px}.config-toggle__body{flex:1;gap:1px;min-width:0;display:grid}.config-toggle__body strong{color:var(--ink);font-size:13.5px}.config-toggle__body span{color:var(--ink-muted);font-size:12px}.config-toggle__state{color:var(--ink-muted);font-size:12px;font-weight:700}.config-switch{background:color-mix(in srgb, var(--brand-primary) 12%, #ded6cd);border:0;border-radius:999px;flex:none;width:46px;height:26px;position:relative}.config-switch span{background:#fff;border-radius:50%;width:20px;height:20px;transition:left .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #1f150c40}.config-switch--on{background:var(--accent-vivid)}.config-switch--on span{left:23px}.config-switch:disabled{opacity:.6}.config-drawer-backdrop{z-index:60;background:#18100a59;justify-content:flex-end;display:flex;position:fixed;inset:0}.config-drawer{background:var(--white);flex-direction:column;width:min(455px,96vw);height:100%;display:flex;box-shadow:-18px 0 50px #1f150c38}.config-drawer__heading{justify-content:space-between;align-items:center;gap:10px;padding:22px 26px 14px;display:flex}.config-drawer__heading h2{color:var(--ink);margin:0;font-size:20px;font-weight:800}.config-drawer__form{flex:1;align-content:start;gap:14px;padding:6px 26px 26px;display:grid;overflow-y:auto}.config-drawer__form label{gap:6px;display:grid}.config-drawer__form label>span{color:var(--ink-soft);font-size:13px;font-weight:600}.config-drawer__form input{border:1px solid var(--line-strong);border-radius:12px;min-height:46px;padding:0 14px;font-size:14px}.config-drawer__form input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow);outline:none}.config-input--invalid{border-color:#e2483d!important}.config-field-error{color:#b3261e;font-size:12.5px}.config-drawer__row{grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:12px;display:grid}.config-drawer__actions{justify-content:space-between;gap:12px;margin-top:8px;display:flex}.config-drawer__actions .primary-button{flex:1}.app-shell--mobile .config-grid{grid-template-columns:minmax(0,1fr)}
