@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-font-weight:initial;--tw-tracking:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-ease:initial}}}@layer theme{:root,:host{--font-sans:var(--font-geist-sans);--font-mono:var(--font-geist-mono);--color-red-500:#fb2c36;--color-amber-50:#fffbeb;--color-amber-200:#fee685;--color-amber-700:#b75000;--color-emerald-50:#ecfdf5;--color-emerald-200:#a4f4cf;--color-emerald-600:#009767;--color-emerald-700:#007956;--color-blue-50:#eff6ff;--color-blue-200:#bedbff;--color-blue-600:#155dfc;--color-blue-700:#1447e6;--color-rose-50:#fff1f2;--color-rose-200:#ffccd3;--color-rose-600:#e70044;--color-rose-700:#c20039;--color-rose-800:#a30037;--color-slate-50:#f8fafc;--color-slate-100:#f1f5f9;--color-slate-200:#e2e8f0;--color-slate-300:#cad5e2;--color-slate-400:#90a1b9;--color-slate-500:#62748e;--color-slate-600:#45556c;--color-slate-700:#314158;--color-slate-800:#1d293d;--color-slate-900:#0f172b;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-7xl:80rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-tight:-.025em;--tracking-wider:.05em;--radius-md:.375rem;--radius-lg:.5rem;--ease-out:cubic-bezier(0, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-geist-sans);--default-mono-font-family:var(--font-geist-mono)}@supports (color:lab(0% 0 0)){:root,:host{--color-red-500:lab(55.4814% 75.0732 48.8528);--color-amber-50:lab(98.6252% -.635922 8.42309);--color-amber-200:lab(91.7203% -.505269 49.9084);--color-amber-700:lab(47.2709% 42.9082 69.2966);--color-emerald-50:lab(97.8462% -6.94966 1.85487);--color-emerald-200:lab(90.2247% -31.039 9.47084);--color-emerald-600:lab(55.0481% -49.9246 15.93);--color-emerald-700:lab(44.4871% -41.0396 11.0361);--color-blue-50:lab(96.492% -1.14644 -5.11479);--color-blue-200:lab(86.15% -4.04379 -21.0797);--color-blue-600:lab(44.0605% 29.0279 -86.0352);--color-blue-700:lab(36.9089% 35.0961 -85.6872);--color-rose-50:lab(96.2369% 4.94155 1.28011);--color-rose-200:lab(86.806% 19.1909 4.07754);--color-rose-600:lab(49.1882% 81.577 36.0311);--color-rose-700:lab(41.1651% 71.6251 30.3087);--color-rose-800:lab(34.6481% 60.802 20.1957);--color-slate-50:lab(98.1434% -.369519 -1.05966);--color-slate-100:lab(96.286% -.852436 -2.46847);--color-slate-200:lab(91.7353% -.998765 -4.76968);--color-slate-300:lab(84.7652% -1.94535 -7.93337);--color-slate-400:lab(65.5349% -2.25151 -14.5072);--color-slate-500:lab(48.0876% -2.03595 -16.5814);--color-slate-600:lab(35.5623% -1.74978 -15.4316);--color-slate-700:lab(26.9569% -1.47016 -15.6993);--color-slate-800:lab(16.132% -.318035 -14.6672);--color-slate-900:lab(7.78673% 1.82345 -15.0537)}}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.\@container{container-type:inline-size}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.top-10{top:calc(var(--spacing) * 10)}.isolate{isolation:isolate}.row-10{grid-row:10}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.mx-auto{margin-inline:auto}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-12{margin-top:calc(var(--spacing) * 12)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.grid\!{display:grid!important}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.table-row{display:table-row}.h-full{height:100%}.min-h-full{min-height:100%}.max-w-7xl{max-width:var(--container-7xl)}.max-w-xs{max-width:var(--container-xs)}.min-w-full{min-width:100%}.shrink{flex-shrink:1}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-1{gap:var(--spacing)}.gap-2{gap:calc(var(--spacing) * 2)}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}:where(.divide-slate-100>:not(:last-child)){border-color:var(--color-slate-100)}:where(.divide-slate-200>:not(:last-child)){border-color:var(--color-slate-200)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.rounded{border-radius:.25rem}.rounded-full{border-radius:3.40282e38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.border{border-style:var(--tw-border-style);border-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-amber-200{border-color:var(--color-amber-200)}.border-blue-200{border-color:var(--color-blue-200)}.border-emerald-200{border-color:var(--color-emerald-200)}.border-rose-200{border-color:var(--color-rose-200)}.border-slate-200{border-color:var(--color-slate-200)}.border-slate-300{border-color:var(--color-slate-300)}.bg-amber-50{background-color:var(--color-amber-50)}.bg-emerald-50{background-color:var(--color-emerald-50)}.bg-rose-50{background-color:var(--color-rose-50)}.bg-slate-50{background-color:var(--color-slate-50)}.bg-white{background-color:var(--color-white)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-4{padding-inline:calc(var(--spacing) * 4)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-3\.5{padding-block:calc(var(--spacing) * 3.5)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.text-center{text-align:center}.text-left{text-align:left}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.text-amber-700{color:var(--color-amber-700)}.text-blue-600{color:var(--color-blue-600)}.text-blue-700{color:var(--color-blue-700)}.text-emerald-600{color:var(--color-emerald-600)}.text-emerald-700{color:var(--color-emerald-700)}.text-red-500{color:var(--color-red-500)}.text-rose-600{color:var(--color-rose-600)}.text-rose-700{color:var(--color-rose-700)}.text-rose-800{color:var(--color-rose-800)}.text-slate-400{color:var(--color-slate-400)}.text-slate-500{color:var(--color-slate-500)}.text-slate-600{color:var(--color-slate-600)}.text-slate-700{color:var(--color-slate-700)}.text-slate-800{color:var(--color-slate-800)}.text-slate-900{color:var(--color-slate-900)}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.shadow,.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.grayscale{--tw-grayscale:grayscale(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition\!{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events!important;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function))!important;transition-duration:var(--tw-duration,var(--default-transition-duration))!important}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.\[action\:\<context\>\]{action:<context>}.\[action\:users\]{action:users}@media (hover:hover){.hover\:bg-blue-50:hover{background-color:var(--color-blue-50)}.hover\:bg-rose-50:hover{background-color:var(--color-rose-50)}.hover\:bg-slate-50:hover{background-color:var(--color-slate-50)}.hover\:bg-slate-50\/60:hover{background-color:#f8fafc99}@supports (color:color-mix(in lab, red, red)){.hover\:bg-slate-50\/60:hover{background-color:color-mix(in oklab, var(--color-slate-50) 60%, transparent)}}}.disabled\:opacity-50:disabled{opacity:.5}}:root{--background:#f8fbff;--foreground:#152238;--brand-blue:#1565d8;--brand-blue-dark:#0b3d91;--brand-yellow:#ffd447;--brand-green:#35b76f;--brand-red:#f05a5b;--ink-muted:#64748b;--line:#dbe6f3;--panel:#fff;--sticky-header-h:64px}body{background:var(--background);color:var(--foreground);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input{font:inherit}.studio-shell{grid-template-columns:224px minmax(0,1fr);min-height:100vh;display:grid}.studio-sidebar{background:var(--panel);border-right:1px solid var(--line);height:100vh;z-index:var(--z-chrome);flex-direction:column;gap:24px;padding:18px 12px;display:flex;position:sticky;top:0}.studio-logo{border:1px solid var(--line);background:#fff;border-radius:10px;justify-content:center;align-items:center;width:44px;height:44px;margin:0 0 0 2px;display:flex;overflow:hidden}.studio-logo img{width:35px;height:auto}.brand-link img{width:100%;height:auto}.studio-sidebar nav{overscroll-behavior:contain;scrollbar-width:thin;justify-items:stretch;gap:4px;min-height:0;margin:0 -12px;padding:0 12px;display:grid;overflow:hidden auto}.studio-sidebar nav::-webkit-scrollbar{width:8px;display:block}.studio-sidebar nav::-webkit-scrollbar-thumb{background:var(--line);border-radius:8px}.studio-sidebar nav::-webkit-scrollbar-track{background:0 0}.studio-sidebar nav a{color:#34445f;border-radius:8px;justify-content:flex-start;align-items:center;gap:12px;width:100%;height:42px;padding:0 12px;font-size:14px;font-weight:700;display:flex;position:relative}.studio-sidebar nav a:hover{color:var(--brand-blue-dark);background:#eef6ff}.studio-sidebar nav a[aria-current=page]{background:var(--brand-blue);color:#fff;box-shadow:0 4px 12px #1565d847}.studio-sidebar nav a[aria-current=page]:hover{background:var(--brand-blue-dark);color:#fff}.studio-sidebar nav a:after{color:#fff;content:none;opacity:0;pointer-events:none;white-space:nowrap;z-index:50;background:#101828;border-radius:7px;padding:9px 10px;font-size:12px;font-weight:800;line-height:1;transition:opacity .12s,transform .12s;position:absolute;top:50%;left:calc(100% + 10px);transform:translate(-4px,-50%);box-shadow:0 10px 28px #10182833}.studio-sidebar nav a:hover:after,.studio-sidebar nav a:focus-visible:after{opacity:1;transform:translateY(-50%)}.studio-sidebar nav a span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dashboard-calendar-head-actions{align-items:flex-start;gap:12px;display:flex}.time-zone-switcher{justify-items:end;gap:4px;display:grid}.time-zone-switcher label{color:var(--ink-muted);letter-spacing:.06em;text-transform:uppercase;font-size:10px;font-weight:800}.time-zone-switcher select{border:1px solid var(--line);background:#fff;border-radius:8px;max-width:14rem;min-height:32px;padding:0 8px;font-size:12px}.time-zone-note{color:var(--ink-muted);text-align:right;max-width:14rem;margin:0;font-size:11px;line-height:1.35}.sidebar-profile{flex:none;justify-content:center;align-items:center;margin-top:auto;display:flex;position:relative}.sidebar-profile-col{flex-direction:column;align-items:stretch;gap:3px;width:100%;display:flex}.sidebar-profile-trigger{cursor:pointer;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:10px;width:100%;min-width:0;padding:6px;display:flex}.sidebar-profile-trigger:hover,.sidebar-profile-trigger[aria-expanded=true]{background:#eef6ff}.sidebar-profile-name{gap:1px;min-width:0;display:grid}.sidebar-profile-name strong{color:#101828;text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.sidebar-profile-name small{color:var(--ink-muted);font-size:11px;font-weight:700}.sidebar-version-tag{color:var(--muted);letter-spacing:.02em;opacity:.75;font-size:.65rem;font-weight:800}.profile-popover-version{color:var(--muted);margin-top:4px;font-size:.72rem;font-weight:700}.sidebar-avatar{color:#fff;cursor:pointer;background:#101828;border:0;border-radius:999px;flex:none;justify-content:center;align-items:center;width:38px;height:38px;font-weight:900;display:inline-flex}.sidebar-avatar.large{flex:none;width:44px;height:44px}.profile-popover{border:1px solid var(--line);min-width:260px;z-index:var(--z-sidebar-popover);background:#fff;border-radius:8px;gap:12px;padding:14px;display:grid;position:absolute;bottom:0;left:calc(100% + 12px);box-shadow:0 18px 44px #15223829}.profile-popover-head{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.profile-popover-head strong,.profile-popover-head small,.profile-popover-meta span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.profile-popover-head strong{color:var(--foreground);font-size:14px;display:block}.profile-popover-head small,.profile-popover-meta span{color:var(--ink-muted);font-size:12px;font-weight:700;display:block}.profile-popover-close{border:1px solid var(--line);color:var(--brand-blue-dark);cursor:pointer;background:#eef6ff;border-radius:999px;justify-content:center;align-items:center;width:28px;height:28px;transition:background-color .15s,border-color .15s;display:inline-flex}.profile-popover-close:hover{background:#dbeafe;border-color:#bfdbfe}.profile-popover-meta{border:1px solid var(--line);background:#f6f9ff;border-radius:8px;gap:4px;padding:10px;display:grid}.profile-menu-action{border:1px solid var(--line);color:var(--brand-blue-dark);cursor:pointer;-webkit-user-select:none;user-select:none;background:#eef6ff;border-radius:8px;align-items:center;gap:8px;width:100%;min-height:38px;padding:0 12px;font-family:inherit;font-size:13px;font-weight:700;transition:background-color .15s,border-color .15s,transform 50ms;display:flex}.profile-menu-action:hover{color:#1e40af;background:#dbeafe;border-color:#bfdbfe}.profile-menu-action:active{background:#bfdbfe;transform:translateY(1px)}.profile-menu-action.danger{color:#b42318;background:#fff0ed;border-color:#ffd0c7}.profile-menu-action.danger:hover{color:#912018;background:#fee4e2;border-color:#fecdca}.profile-menu-action.danger:active{background:#fecdca;transform:translateY(1px)}.profile-dialog-backdrop{z-index:var(--z-profile-dialog);background:#0f172a8c;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.profile-dialog{border:1px solid var(--line);background:#fff;border-radius:8px;width:min(560px,100%);max-height:min(720px,100vh - 48px);padding:18px;overflow:auto;box-shadow:0 24px 64px #15223838}.profile-dialog-head{justify-content:space-between;align-items:start;gap:14px;margin-bottom:14px;display:flex}.profile-dialog-head h2{color:var(--brand-blue-dark);margin:2px 0 0;font-size:22px}.dialog-actions{justify-content:flex-end;gap:10px;display:flex}.primary-button.compact,.secondary-button.compact{align-items:center;gap:6px;width:auto;min-height:34px;padding:0 12px;display:inline-flex}.secondary-button.danger{color:#b42318;background:#fff0ed;border-color:#ffd0c7}.secondary-button.warning{color:#984c0c;background:#fff8d9;border-color:#ffe58f}.studio-main{width:100%;min-width:0}.studio-header{border-bottom:1px solid var(--line);min-height:92px;z-index:var(--z-chrome);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f8fbffdb;justify-content:space-between;align-items:center;padding:20px 36px;display:flex;position:sticky;top:0}.studio-header h1,.page-intro h2,.auth-copy h1{letter-spacing:0}.studio-header h1{margin:2px 0 0;font-size:24px;font-weight:800}.eyebrow{color:var(--brand-blue);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:12px;font-weight:800}.header-action,.auth-form button,.primary-button,.filter-bar button,.users-table form button:not(.icon-button),.action-cluster button:not(.icon-button){background:var(--brand-blue);color:#fff;border:0;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 18px;font-weight:800;display:inline-flex}.header-action:hover{background:var(--brand-blue-dark)}.text-link{color:var(--brand-blue);margin-top:10px;font-weight:900;text-decoration:none;display:inline-flex}.text-link:hover{color:var(--brand-blue-dark);text-decoration:underline}.text-link.small{font-size:12px}.content-stack{gap:18px;min-width:0;padding:22px;display:grid}.content-stack>*{width:100%;min-width:0}.page-toolbar{background:var(--panel);border:1px solid var(--line);border-radius:8px;justify-content:space-between;align-items:center;gap:18px;min-height:86px;padding:18px 20px;display:flex}.page-toolbar h2{margin:0 0 4px;font-size:26px;line-height:1.15}.page-toolbar p{color:var(--ink-muted);margin:0;font-size:14px;line-height:1.45}.page-intro{background:linear-gradient(120deg, #ffd4476b, transparent 36%), linear-gradient(120deg, #35b76f2e, #1565d81a), var(--panel);border:1px solid var(--line);border-radius:8px;padding:32px}.page-intro.compact{background:var(--panel)}.page-intro h2{max-width:760px;margin:8px 0 12px;font-size:clamp(30px,4vw,48px);line-height:1.04}.page-intro.compact h2{font-size:34px}.page-intro p:last-child,.auth-copy p:last-child{color:var(--ink-muted);max-width:760px;margin:0;font-size:17px;line-height:1.7}.dashboard-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.dashboard-grid.two-up{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-grid.dashboard-grid-wide{grid-template-columns:repeat(3,minmax(0,1fr))}.metric-card{background:var(--panel);border:1px solid var(--line);border-radius:8px;gap:4px;min-height:82px;padding:12px 14px;display:grid}.metric-card svg{color:var(--brand-green);width:18px;height:18px}.metric-card p{color:var(--ink-muted);margin:0;font-size:12px;font-weight:800}.metric-card strong{font-size:22px;line-height:1}.metric-card span{color:var(--ink-muted);font-size:12px;line-height:1.35}.dashboard-calendar-shell{gap:16px;padding:18px;display:grid}.dashboard-calendar-head{justify-content:space-between;align-items:center;display:flex}.dashboard-calendar-head h2{color:var(--brand-blue-dark);margin:2px 0 0;font-size:24px}.today-chip{color:#6f4a00;background:#fff8d9;border:1px solid #ffe58f;border-radius:999px;align-items:center;gap:6px;min-height:34px;padding:0 12px;font-size:12px;font-weight:900;display:inline-flex}.today-chip:hover{border-color:#f4c430}.dashboard-calendar-layout{grid-template-columns:minmax(0,1fr) minmax(260px,.38fr);gap:16px;display:grid}.dashboard-calendar-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}.calendar-day{color:inherit;text-align:left;min-height:96px}.calendar-day.today{background:#fff8d9;border-color:#f4c430;box-shadow:inset 0 0 0 2px #f4c43052}.calendar-day.selected{border-color:var(--brand-blue);box-shadow:inset 0 0 0 2px #1565d833}button.calendar-day{cursor:pointer;font:inherit}button.calendar-day:hover{border-color:var(--brand-blue)}.calendar-day.blank{pointer-events:none}.calendar-day .class-dot.status-live{color:#106b38;background:#e8fff1;border-color:#9de8b6}.calendar-day .class-dot.status-ended{color:#59657a;background:#f4f6f8}.calendar-day .class-dot.status-cancelled{color:#b42318;background:#fff0ed;border-color:#ffd0c7}.class-more{color:var(--ink-muted)!important}.today-class-panel{border:1px solid var(--line);background:#f8fbff;border-radius:8px;align-content:start;gap:10px;padding:14px;display:grid}.today-class-panel>strong{color:var(--brand-blue-dark);font-size:15px}.today-class-panel p{color:var(--ink-muted);margin:0;font-size:13px;line-height:1.45}.today-class-row{border:1px solid var(--line);color:inherit;background:#fff;border-radius:8px;grid-template-columns:64px minmax(0,1fr) auto;align-items:start;gap:10px;padding:10px;text-decoration:none;display:grid}.today-class-row:hover{border-color:var(--brand-blue)}.today-class-row span{color:var(--brand-blue-dark);font-size:12px;font-weight:900}.today-class-row b,.today-class-row small{min-width:0;display:block}.today-class-row b{font-size:13px;line-height:1.25}.today-class-row small{color:var(--ink-muted);margin-top:2px;font-size:12px;line-height:1.35}.today-class-row em{color:var(--ink-muted);text-transform:uppercase;font-size:11px;font-style:normal;font-weight:900}.dashboard-focus-banner{background:linear-gradient(120deg, #ffd44752, transparent 34%), linear-gradient(120deg, #35b76f1f, #1565d81a), var(--panel);border:1px solid var(--line);border-radius:8px;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:18px;min-height:108px;padding:18px 20px;display:grid}.dashboard-focus-banner h2{color:var(--brand-blue-dark);margin:2px 0 6px;font-size:28px;line-height:1.1}.dashboard-focus-banner p{color:var(--ink-muted);margin:0;line-height:1.45}.dashboard-focus-meta{border:1px solid var(--line);background:#ffffffb8;border-radius:8px;align-items:center;gap:2px;min-width:170px;padding:12px 14px;display:grid}.dashboard-focus-meta span,.dashboard-focus-meta small{color:var(--ink-muted);font-size:12px;line-height:1.3}.dashboard-focus-meta strong{color:var(--brand-blue-dark);font-size:22px;line-height:1}.artifact-collection{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;display:grid}.artifact-card{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;padding:16px;display:grid}.artifact-emoji{background:#fff8d9;border:1px solid #ffe58f;border-radius:8px;justify-content:center;align-items:center;width:46px;height:46px;font-size:24px;display:inline-flex}.artifact-card small{color:var(--brand-blue);text-transform:uppercase;margin-bottom:4px;font-size:11px;font-weight:900;display:block}.artifact-card h3{margin:0 0 4px;font-size:17px}.artifact-card p{color:var(--ink-muted);margin:0;font-size:13px;line-height:1.45}.artifact-card blockquote{border-left:3px solid var(--brand-blue);color:var(--foreground);background:#f7fbff;margin:10px 0 0;padding:8px 10px;font-size:13px;line-height:1.45}.artifact-ratings{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.artifact-ratings span{color:var(--brand-blue-dark);background:#eef6ff;border:1px solid #c6ddff;border-radius:999px;padding:5px 8px;font-size:11px;font-weight:900}.table-shell,.question-list{background:var(--panel);border:1px solid var(--line);border-radius:8px;width:100%;display:block;overflow-x:auto}.table-row{box-sizing:border-box;grid-template-columns:160px minmax(0,1fr) 160px;align-items:center;gap:16px;width:max(100%,980px);min-width:100%;padding:13px 16px;display:grid}.table-row+.table-row{border-top:1px solid var(--line)}.table-row:not(.table-head):hover{background:#fbfdff}.table-head{color:#42526b;letter-spacing:0;text-transform:uppercase;background:#f3f8ff;font-size:11px;font-weight:800}.table-row span,.table-row em{color:var(--ink-muted)}.table-row em{font-style:normal}.question-list{counter-reset:question;gap:0;margin:0;padding:0;list-style:none;display:grid}.question-list li{counter-increment:question;grid-template-columns:42px minmax(0,1fr);gap:14px;padding:20px 24px;line-height:1.55;display:grid}.question-list li:before{background:var(--brand-yellow);color:#342700;content:counter(question);border-radius:999px;justify-content:center;align-items:center;width:30px;height:30px;font-weight:900;display:inline-flex}.question-list li+li{border-top:1px solid var(--line)}.auth-page{background:radial-gradient(circle at 20% 18%,#ffd4476b,#0000 24%),linear-gradient(135deg,#f8fbff,#eaf5ff 52%,#f7fff8);align-items:center;min-height:100vh;padding:32px;display:grid}.auth-panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;gap:28px;width:100%;max-width:520px;margin:0 auto;padding:36px;display:grid}.brand-link{width:190px;display:block}.auth-copy h1{margin:8px 0 12px;font-size:34px;line-height:1.12}.auth-form{gap:16px;display:grid}.quick-login-panel{border:1px solid var(--line);background:#f6f9ff;border-radius:8px;gap:10px;padding:12px;display:grid}.quick-login-panel p{color:var(--ink-muted);text-transform:uppercase;margin:0;font-size:12px;font-weight:900}.quick-login-panel div{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.quick-login-panel button{border:1px solid var(--line);color:var(--brand-blue-dark);cursor:pointer;background:#fff;border-radius:8px;min-height:34px;padding:0 8px;font-size:12px;font-weight:900}.quick-login-panel button:hover{border-color:var(--brand-blue);color:var(--brand-blue)}.auth-form label{color:#34445f;gap:8px;font-size:14px;font-weight:800;display:grid}.auth-form label span{border:1px solid var(--line);border-radius:8px;align-items:center;gap:10px;min-height:48px;padding:0 14px;display:flex}.auth-form input{color:var(--foreground);border:0;outline:0;width:100%}.auth-form button:disabled,.auth-form input:disabled,.primary-button:disabled{cursor:not-allowed;opacity:.7}.field-error,.field-help,.form-error,.error-panel{color:#b42318}.form-error,.form-success,.success-panel,.error-panel{border-radius:8px;padding:12px 14px;line-height:1.45}.form-error,.error-panel{background:#fff0ed;border:1px solid #ffd0c7}.field-error{font-size:12px;font-weight:800}.label-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.required-mark,.optional-mark{text-transform:uppercase;border-radius:999px;padding:5px 7px;font-size:10px;font-weight:900;line-height:1}.required-mark{color:#b42318;background:#fff0ed}.optional-mark{color:var(--brand-blue-dark);background:#eef6ff}.field-help{color:var(--ink-muted);font-size:12px;font-weight:700}.form-success,.success-panel{color:#067647;background:#ecfdf3;border:1px solid #abefc6}.credential-panel{background:#f6fef9;border:1px solid #abefc6;border-radius:8px;gap:14px;padding:18px;display:grid}.credential-panel h4{color:#067647;margin:4px 0 0;font-size:20px}.credential-row{background:#fff;border:1px solid #d1fadf;border-radius:8px;grid-template-columns:110px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.credential-row span{color:var(--ink-muted);text-transform:uppercase;font-size:12px;font-weight:900}.credential-row strong{color:var(--foreground);overflow-wrap:anywhere}input[aria-invalid=true],select[aria-invalid=true]{border-color:#f97066;box-shadow:0 0 0 3px #f05a5b24}.header-user{align-items:center;gap:14px;display:flex}.header-user span{text-align:right;font-weight:800;display:grid}.header-user small{color:var(--ink-muted);font-size:12px;font-weight:700}.form-shell{background:var(--panel);border:1px solid var(--line);border-radius:8px;gap:20px;padding:24px;display:grid}.form-shell h3{margin:4px 0 0;font-size:24px}.user-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.user-form label,.filter-bar label{color:#34445f;gap:7px;font-size:13px;font-weight:800;display:grid}.user-form input,.filter-bar input{border:1px solid var(--line);color:var(--foreground);background:#fff;border-radius:8px;outline:0;min-height:42px;padding:0 12px}.user-form select,.filter-bar select,.users-table select{appearance:none;border:1px solid var(--line);color:var(--foreground);cursor:pointer;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;border-radius:8px;outline:0;min-height:42px;padding:0 32px 0 12px;font-family:inherit;font-size:13px}.user-form fieldset:not(.checkbox-grid-fieldset){border:1px solid var(--line);border-radius:8px;grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0;padding:18px;display:grid}.user-form legend{color:var(--brand-blue-dark);padding:0 8px;font-size:13px;font-weight:900}.user-form .form-error,.user-form .form-success,.user-form .primary-button{grid-column:1/-1}.user-form.single-column,.profile-dialog-form{grid-template-columns:1fr}.user-form.single-column .dialog-actions,.profile-dialog-form .dialog-actions{grid-column:1/-1}.temporary-password{border:1px solid var(--line);letter-spacing:.04em;-webkit-user-select:all;user-select:all;word-break:break-all;background:#f4f7fb;border-radius:8px;padding:14px 16px;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,monospace;font-size:18px;font-weight:700}.form-warning{color:#6f4a00;background:#fff8d9;border:1px solid #ffe58f;border-radius:8px;margin:0;padding:10px 12px;font-size:13px;font-weight:800;line-height:1.45}.batch-form{gap:18px;display:grid}.batch-form-top-bar.is-sticky-top,.track-compose-top-bar.is-sticky-top{z-index:20;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--line);background:#fffffff5;border-radius:8px;justify-content:space-between;align-items:center;gap:16px;padding:12px 18px;display:flex;position:sticky;top:0;box-shadow:0 4px 12px #0000000d}.batch-form-top-bar .top-bar-meta,.track-compose-top-bar .top-bar-meta{align-items:center;gap:12px;min-width:0;display:flex}.batch-form-top-bar .top-bar-title,.track-compose-top-bar .top-bar-title{color:var(--brand-blue-dark);white-space:nowrap;font-size:16px;font-weight:700}.batch-form-top-bar .top-bar-subtitle,.track-compose-top-bar .top-bar-subtitle{color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.batch-form-top-bar .top-bar-actions,.track-compose-top-bar .top-bar-actions{flex-shrink:0;align-items:center;gap:10px;display:flex}.batch-form-main{grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);align-items:start;gap:18px;display:grid}.batch-form-fields,.batch-fieldset{gap:16px;min-width:0;display:grid}.batch-fieldset{border:1px solid var(--line);border-radius:8px;margin:0;padding:18px}.batch-fieldset legend{color:var(--brand-blue-dark);padding:0 8px;font-size:13px;font-weight:900}.batch-fieldset label{color:#34445f;gap:7px;font-size:13px;font-weight:800;display:grid}.batch-fieldset input,.batch-fieldset select{border:1px solid var(--line);color:var(--foreground);background:#fff;border-radius:8px;outline:0;min-height:42px;padding:0 12px}.batch-fieldset input[readonly],.batch-fieldset input:disabled,.batch-fieldset select:disabled{color:var(--ink-muted);background:#f5f7fb}.pin-input-group{align-items:center;gap:8px;display:flex}.pin-input-group input{flex:1}.schedule-toolbar{justify-content:space-between;align-items:center;gap:12px;display:flex}.schedule-toolbar span{color:var(--ink-muted);font-size:13px;font-weight:700}.schedule-table{gap:10px;display:grid}.schedule-row{border:1px solid var(--line);background:#f8fbff;border-radius:8px;grid-template-columns:minmax(220px,1fr) 150px 130px 80px 140px;align-items:center;gap:12px;padding:12px;display:grid}.schedule-row strong,.schedule-row span,.schedule-row small{min-width:0;display:block}.schedule-row input{width:100%;min-width:0}.schedule-row strong{color:var(--brand-blue-dark)}.schedule-row>div span,.schedule-row>small{color:var(--ink-muted);font-size:12px;line-height:1.35}.schedule-row label span{color:var(--ink-muted);text-transform:uppercase;font-size:11px}.batch-calendar-panel,.dashboard-calendar-shell{border:1px solid var(--line);background:#fff;border-radius:8px}.batch-calendar-panel{top:calc(var(--sticky-header-h) + 14px);gap:14px;padding:16px;display:grid;position:sticky}.batch-calendar-empty{color:var(--ink-muted);text-align:center;place-items:center;gap:8px;min-height:240px;display:grid}.batch-calendar-empty svg{color:var(--brand-blue)}.batch-month{gap:10px;display:grid}.batch-month h3{color:var(--brand-blue-dark);margin:0;font-size:16px}.batch-weekdays,.batch-days{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.batch-weekdays span,.calendar-weekday{color:var(--ink-muted);text-align:center;text-transform:uppercase;font-size:11px;font-weight:900}.batch-day,.calendar-day{border:1px solid var(--line);background:#f8fbff;border-radius:8px;gap:4px;min-height:70px;padding:7px;display:grid}.batch-day.blank,.calendar-day.blank{background:0 0;border-color:#0000}.batch-day.has-session,.calendar-day.has-class{background:#eef6ff;border-color:#c6ddff}.batch-day>span,.calendar-day strong{color:var(--foreground);font-size:13px;line-height:1}.batch-day small,.calendar-day small{border:1px solid var(--line);color:var(--brand-blue-dark);background:#fff;border-radius:6px;padding:3px 5px;font-size:10px;font-weight:900;line-height:1.25}.workspace-actions{justify-content:flex-end;align-items:center;gap:10px;margin-top:2px;display:flex}.filter-bar{background:var(--panel);border:1px solid var(--line);border-radius:8px;grid-template-columns:minmax(260px,1fr) 180px 180px;align-items:center;gap:12px;padding:10px;display:grid}.filter-bar label{border:1px solid var(--line);border-radius:8px;align-items:center;min-height:38px;padding:0 12px;display:flex}.filter-bar label input{border:0;width:100%;min-height:auto;padding:0}.search-field{position:relative}.filter-groups{gap:12px;display:grid}.filter-group{border:0;min-width:0;margin:0;padding:0}.filter-group legend{color:#7c8aa3;letter-spacing:.04em;text-transform:uppercase;padding:0;font-size:11px;font-weight:600}.filter-group .chip-row{margin-top:6px}.filter-group .chip[aria-pressed=true],.filter-group .chip.is-on{background:var(--brand-blue-dark);border-color:var(--brand-blue-dark);color:#fff}.clear-search{justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex;color:#7c8aa3!important;background:0 0!important;border:0!important;min-height:28px!important;padding:0!important}.clear-search:hover{color:var(--brand-blue-dark)!important}.users-table .table-row{grid-template-columns:minmax(220px,1.2fr) 120px 150px 150px 260px}.users-table .table-row small,.students-table .table-row small,.trainers-table .table-row small,.reference-table .table-row small{color:var(--ink-muted);margin-top:4px;display:block}.users-table form,.students-table form,.reference-table form{align-items:center;gap:8px;display:flex}.action-cluster{flex-wrap:nowrap;justify-content:flex-start;align-items:center;gap:6px;display:flex}.action-cluster form{gap:6px;display:flex}.action-cluster .modal-panel form.user-form{gap:16px;display:grid}.status-action{border:1px solid var(--line);background:#f8fbff;border-radius:8px;align-items:center;padding:3px;display:inline-flex!important}.status-action select{background:0 0;border:0;max-width:128px;padding:0 6px}.action-cluster button:not(.icon-button),.action-cluster select,.status-action select{min-height:34px}.action-cluster button:not(.icon-button),.reference-table button:not(.icon-button),.students-table button:not(.icon-button),.users-table form button:not(.icon-button){border-radius:7px;min-height:34px;padding:0 10px;font-size:12px}.action-cluster .secondary-button,.secondary-button{border:1px solid var(--line);color:var(--brand-blue-dark);background:#eef6ff}.action-cluster .danger-button,.danger-button{color:#b42318;background:#fff0ed;border:1px solid #ffd0c7}.status-action button{border:1px solid var(--line);color:var(--brand-blue-dark);background:#fff}.icon-button{color:#0b3d91;background:#dfeeff;border:1px solid #9cc7ff;border-radius:8px;flex:none;justify-content:center;align-items:center;width:34px;height:34px;min-height:34px;padding:0;display:inline-flex}.icon-button svg{flex:none}.icon-button:hover{color:#062b68;background:#c9e2ff}.danger-icon-button{color:#b42318;background:#ffe2dc;border-color:#ffafa3}.danger-icon-button:hover{color:#8a1f14;background:#ffd0c7}.inline-edit-form{grid-column:1/-1;grid-template-columns:minmax(180px,1fr) 150px 150px minmax(180px,1fr) minmax(220px,auto);gap:12px;width:100%;align-items:start!important;display:grid!important}.inline-edit-form label,.read-only-cell{color:#34445f;gap:6px;font-size:12px;font-weight:900;display:grid}.inline-edit-form input,.inline-edit-form select{border:1px solid var(--line);color:var(--foreground);background:#fff;border-radius:8px;outline:0;min-height:38px;padding:0 10px}.read-only-cell strong{color:var(--foreground);min-height:38px;font-size:13px}.protected-note{background:#fff8df;border:1px solid #ffe08a;border-radius:8px;justify-content:center;align-items:center;min-height:38px;padding:0 12px;font-size:12px;font-weight:900;display:inline-flex;color:#7a4f00!important}.status-cell{place-items:flex-start start;gap:4px;display:grid}.status-pill{border-radius:999px;align-items:center;min-height:24px;padding:0 9px;font-size:11px;font-weight:900;display:inline-flex}.status-active{color:#067647;background:#ecfdf3}.secondary-button.is-current,.course-card[data-highlighted=true]{border-color:var(--brand-blue-dark);box-shadow:inset 0 0 0 1px var(--brand-blue-dark);font-weight:700}.status-invited{color:var(--brand-blue-dark);background:#eef6ff}.status-inactive{color:#475569;background:#f1f5f9}.status-archived{color:#b42318;background:#fff0ed}.students-table .table-row{grid-template-columns:minmax(220px,1.2fr) 150px minmax(250px,1fr) 120px 260px}.trainers-table .table-row{grid-template-columns:minmax(220px,1fr) minmax(130px,.5fr) 110px 260px minmax(130px,.6fr) 86px;width:max(100%,1040px)}.trainers-table .table-row>span:first-child{gap:4px;min-width:0;display:grid}.trainers-table .table-row>span:first-child strong,.trainers-table .table-row>span:first-child small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.trainers-table .table-row>span:first-child strong{color:#34445f}.reference-table .table-row{grid-template-columns:minmax(240px,1fr) minmax(190px,1fr) 120px 210px}.students-edit-form{grid-template-columns:repeat(5,minmax(130px,1fr))}.reference-edit-form{grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) 140px minmax(200px,auto)}.skill-chip-list{flex-wrap:wrap;align-content:center;align-items:center;gap:4px;min-width:0;max-width:260px;display:flex}.skill-chip{overflow-wrap:anywhere;background:#eef6ff;border:1px solid #c9e2ff;border-radius:999px;max-width:100%;padding:4px 8px;font-size:11px;font-weight:900;color:var(--brand-blue-dark)!important;margin:0!important;display:inline-flex!important}.skill-more-btn{color:var(--brand-blue-dark);cursor:pointer;background:#f0f4f8;border:1px solid #d0dbe7;border-radius:999px;align-items:center;gap:3px;padding:3px 8px;font-family:inherit;font-size:11px;font-weight:700;line-height:1;transition:background .15s,border-color .15s;display:inline-flex}.skill-more-btn:hover{background:#e2ecf5;border-color:#b8cce0}.skill-more-btn.is-expanded{background:#e8f0fe;border-color:#bad0f7}.checkbox-grid-fieldset{border:1px solid var(--line);border-radius:8px;grid-column:1/-1;grid-template-columns:1fr;gap:12px;margin:0;padding:16px;display:grid}.checkbox-grid-fieldset legend{color:var(--brand-blue-dark);padding:0 8px;font-size:13px;font-weight:900}.checkbox-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;display:grid}.checkbox-option{border:1px solid var(--line);background:#f8fbff;border-radius:8px;align-items:center;padding:10px;gap:10px!important;display:flex!important}.checkbox-option input{width:auto;min-height:auto}.checkbox-option span{gap:2px;display:grid}.checkbox-option small{color:var(--ink-muted);font-weight:700}.reference-table button:not(.icon-button),.students-table button:not(.icon-button){background:var(--brand-blue);color:#fff;border:0;border-radius:8px;justify-content:center;align-items:center;min-height:38px;padding:0 14px;font-weight:800;display:inline-flex}.empty-state{color:var(--ink-muted);padding:24px}.split-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.read-only-input{border:1px solid var(--line);color:var(--foreground);background:#f8fbff;border-radius:8px;align-items:center;min-height:42px;padding:0 12px;display:inline-flex}.modal-backdrop{z-index:var(--z-modal);background:#0f172a70;justify-content:center;align-items:flex-start;padding:12px;display:flex;position:fixed;inset:0;overflow:auto}.modal-panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;gap:20px;width:calc(100vw - 24px);max-width:none;max-height:calc(100vh - 24px);padding:24px;display:grid;overflow:auto;box-shadow:0 24px 80px #15223838}.modal-head{background:var(--panel);border-bottom:1px solid var(--line);z-index:2;justify-content:space-between;align-items:flex-start;padding-bottom:16px;display:flex;position:sticky;top:-24px}.modal-head h3{margin:4px 0 0;font-size:22px;line-height:1.2}.user-form>.modal-head{grid-column:1/-1}.modal-head-actions{justify-content:flex-end;align-items:center;gap:10px;display:flex}.confirm-backdrop{z-index:var(--z-confirm);align-items:center;padding:18px}.confirm-panel{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:14px;width:min(430px,100vw - 36px);max-width:430px;margin:auto;padding:18px;display:grid;overflow:visible}.confirm-icon{color:var(--brand-blue-dark);background:#eef6ff;border:1px solid #c6ddff;border-radius:8px;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.confirm-panel.tone-danger .confirm-icon{color:#b42318;background:#fff0ed;border-color:#ffd0c7}.confirm-panel.tone-warning .confirm-icon{color:#984c0c;background:#fff8d9;border-color:#ffe58f}.confirm-copy{min-width:0}.confirm-copy h3{margin:0 0 6px;font-size:16px;line-height:1.2}.confirm-copy p{color:var(--ink-muted);margin:0;font-size:13px;line-height:1.5}.confirm-actions{grid-column:1/-1;justify-content:flex-end;gap:10px;padding-top:2px;display:flex}.icon-link{border:1px solid var(--line);color:var(--brand-blue-dark);background:#eef6ff;border-radius:8px;align-items:center;min-height:36px;padding:0 12px;font-size:13px;font-weight:900;display:inline-flex}.course-grid,.workspace-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.course-grid:has(.course-card:only-child){grid-template-columns:minmax(0,720px)}.course-card,.workspace-card,.task-panel,.chat-panel,.view-panel,.classroom-header-panel{background:var(--panel);border:1px solid var(--line);border-radius:8px}.course-card,.workspace-card{gap:18px;min-height:220px;padding:18px;display:grid}.course-card{background:linear-gradient(135deg, #ffd44738, transparent 38%), var(--panel);transition:border-color .15s,box-shadow .15s,transform .12s}.course-card:hover{border-color:var(--brand-red);transform:translateY(-2px);box-shadow:0 16px 36px #15223817}.course-card-main{grid-template-columns:minmax(0,1fr) auto;gap:14px;display:grid}.course-stat{border:1px solid var(--line);color:var(--brand-blue-dark);background:#eef6ff;border-radius:999px;flex-direction:column;justify-content:center;align-items:center;width:72px;height:72px;display:inline-flex}.course-stat strong{font-size:24px;line-height:1}.course-stat span{text-transform:uppercase;font-size:10px;font-weight:900}.course-card h3,.workspace-card h3{margin:6px 0 8px;font-size:22px;line-height:1.2}.course-card p,.workspace-card p,.workspace-meta dd,.workspace-meta dt{margin:0}.course-card p,.workspace-card p,.workspace-meta dd{color:var(--ink-muted);line-height:1.45}.course-card-footer,.workspace-card-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.course-card-footer a{background:var(--brand-blue-dark);color:#fff;border-radius:999px;min-height:34px;padding:8px 14px;font-weight:900}.workspace-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.workspace-meta div{border:1px solid var(--line);background:#f8fbff;border-radius:8px;gap:4px;min-width:0;padding:10px 12px;display:grid}.workspace-meta .workspace-next-class{grid-column:1/-1}.workspace-meta dt{color:#42526b;text-transform:uppercase;align-items:center;gap:6px;font-size:11px;font-weight:900;display:inline-flex}.workspace-meta dd{color:#1a2a44;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:800;overflow:hidden}.classroom-shell{gap:12px;padding:16px;display:grid}.classroom-header-panel{justify-content:space-between;align-items:center;gap:20px;min-height:104px;padding:18px 20px;display:flex}.classroom-header-panel h2{margin:4px 0 6px;font-size:26px;line-height:1.16}.classroom-header-panel p{color:var(--ink-muted);margin:0;line-height:1.45}.classroom-context{border:1px solid var(--line);text-align:right;background:#f6f9ff;border-radius:8px;gap:4px;min-width:220px;padding:12px;display:grid}.classroom-context span{font-weight:900}.classroom-context small{color:var(--ink-muted);font-weight:700}.session-strip{background:var(--panel);border:1px solid var(--line);border-radius:8px;gap:8px;padding:10px;display:flex;overflow-x:auto}.session-pill{border:1px solid var(--line);color:#33445f;background:#f4f8ff;border-radius:999px;flex:none;justify-content:center;align-items:center;gap:6px;min-width:44px;min-height:34px;padding:0 12px;font-weight:900;display:inline-flex}.session-pill.complete:not(.active),.session-pill.class-complete,.session-pill.class-complete.active{color:#475467;background:#f3f5f8;border-color:#d7dee8}.session-pill.class-live{color:#067647;background:#ecfdf3;border-color:#75e0a7}.session-pill.class-scheduled{color:#33445f;background:#f8fafc;border-color:#d7dee8}.classroom-grid{grid-template-columns:280px minmax(320px,.85fr) minmax(460px,1.25fr);gap:12px;min-height:calc(100vh - 250px);display:grid}.task-panel,.chat-panel,.view-panel{min-width:0;overflow:hidden}.class-chat.ended{background:linear-gradient(0deg, #f8fafcb8, #f8fafcb8), var(--panel);border-color:#d7dee8}.class-chat.ended .conversation-log{opacity:.82}.class-chat.ended .chat-composer{background:#f3f6fa;border-color:#d7dee8}.task-panel{grid-template-rows:auto 1fr auto auto;gap:14px;padding:16px;display:grid}.panel-heading{align-items:center;gap:8px;display:flex}.panel-heading h3{margin:0;font-size:16px}.panel-heading span{color:var(--brand-blue-dark);background:#eef6ff;border-radius:999px;margin-left:auto;padding:5px 8px;font-size:12px;font-weight:900}.task-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.task-list li{border:1px solid var(--line);color:#33445f;background:#f8fbff;border-radius:8px;grid-template-columns:24px minmax(0,1fr);align-items:start;gap:8px;padding:10px;line-height:1.35;display:grid}.task-list li span{border:1px solid var(--line);background:#fff;border-radius:999px;justify-content:center;align-items:center;width:22px;height:22px;font-size:11px;font-weight:900;display:inline-flex}.task-list li input[type=checkbox]{accent-color:var(--brand-green);width:18px;height:18px;margin-top:2px}.task-list li.done{background:#ecfdf3;border-color:#abefc6}.artifact-note,.reflection-note,.chat-rule{color:#34445f;border-radius:8px;margin:0;padding:10px;font-size:13px;font-weight:700;line-height:1.45}.artifact-note{background:#fff8d9}.reflection-note,.chat-rule{background:#f6f9ff}.class-chat{grid-template-rows:auto minmax(0,1fr) auto auto;gap:12px;padding:16px;display:grid}.class-chat:not(:has(.panel-heading)){grid-template-rows:minmax(0,1fr) auto auto}.chat-log{gap:10px;padding-right:4px;display:grid;overflow:auto}.chat-bubble{border-radius:8px;gap:4px;max-width:92%;padding:10px 12px;display:grid}.chat-bubble>span{text-transform:none;font-size:11px;font-weight:900}.chat-bubble p{white-space:pre-wrap;margin:0;line-height:1.45}.chat-bubble.student{background:#eef6ff;justify-self:end}.chat-bubble.ai,.chat-bubble.trainer{border:1px solid var(--line);background:#f6f9ff}.empty-chat{color:var(--ink-muted);margin:0}.chat-composer{grid-template-columns:auto minmax(0,1fr) auto;gap:8px;display:grid}.chat-composer input,.chat-composer select{border:1px solid var(--line);border-radius:8px;min-height:40px;padding:0 12px}.chat-composer select{color:var(--brand-blue-dark);background:#fff;max-width:110px;font-size:12px;font-weight:900}.chat-composer button{background:var(--brand-blue);color:#fff;border:0;border-radius:8px;padding:0 16px;font-weight:900}.chat-composer.readonly{opacity:.65}.classroom-workbench{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr);display:grid}.workbench-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding:10px;display:flex}.view-toggle,.file-tabs{border:1px solid var(--line);background:#f4f8ff;border-radius:8px;align-items:center;gap:4px;padding:3px;display:inline-flex}.view-toggle button,.file-tabs button{color:#42526b;background:0 0;border:0;border-radius:6px;align-items:center;gap:6px;min-height:30px;padding:0 10px;font-size:12px;font-weight:900;display:inline-flex}.view-toggle button.active,.file-tabs button.active{color:var(--brand-blue-dark);background:#fff;box-shadow:0 1px 3px #15223814}.code-editor-readonly{color:#e6edf7;font-family:var(--font-geist-mono), ui-monospace, SFMono-Regular, Menlo, monospace;white-space:pre-wrap;background:#101828;margin:0;padding:18px;font-size:13px;line-height:1.6;overflow:auto}.preview-frame.classroom-preview{background:#fff;border:0;width:100%;height:100%}.preview-stack{flex-direction:column;height:100%;min-height:0;display:flex}.preview-stack>.preview-frame{flex:1;min-height:0}.preview-stack>.narrow-preview{align-self:center}.preview-page-bar{border-bottom:1px solid var(--line);background:#f4f8ff;align-items:center;gap:8px;padding:5px 10px;display:flex}.preview-page-bar .preview-page-back:disabled{opacity:.4}.preview-page-name{color:#42526b;font-family:var(--font-geist-mono), ui-monospace, SFMono-Regular, Menlo, monospace;font-size:12px;font-weight:700}.course-detail-hero{border:1px solid var(--line);background:linear-gradient(120deg,#ffd44757,#0000 42%),linear-gradient(135deg,#fff,#f3f9ff);border-radius:8px;grid-template-columns:auto minmax(0,1fr) 160px;align-items:end;gap:18px;padding:20px;display:grid}.course-detail-hero h2{color:var(--brand-blue-dark);margin:4px 0 8px;font-size:34px;line-height:1.08}.course-detail-hero p{color:var(--ink-muted);margin:0;line-height:1.55}.course-detail-stats{border:1px solid var(--line);text-align:right;background:#fff;border-radius:8px;gap:2px;padding:12px;display:grid}.course-detail-stats span,.course-detail-stats small{color:var(--ink-muted);text-transform:uppercase;font-size:11px;font-weight:900}.course-detail-stats strong{color:var(--brand-blue-dark);font-size:24px;line-height:1}.course-about{background:var(--panel);border:1px dashed var(--line);border-radius:8px;padding:14px 16px}.course-about summary{color:var(--brand-blue-dark);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:7px;font-size:13px;font-weight:900;display:inline-flex}.course-about summary:before{color:var(--brand-red);content:">";font-weight:900;transition:transform .15s;display:inline-block}.course-about[open] summary:before{transform:rotate(90deg)}.course-about-body{color:var(--ink-muted);margin-top:10px;font-size:13px;line-height:1.65}.course-about-body p{margin:0 0 8px}.course-about-body ul{gap:4px;margin:8px 0 0;padding-left:18px;display:grid}.section-header{justify-content:space-between;align-items:end;gap:16px;display:flex}.section-header h2{color:var(--brand-blue-dark);margin:4px 0 0;font-size:24px}.course-timeline{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.lesson-card{background:var(--panel);border:1px solid var(--line);color:inherit;cursor:pointer;text-align:left;border-radius:8px;grid-template-columns:44px minmax(0,1fr);align-items:start;gap:14px;width:100%;min-height:150px;padding:16px;transition:border-color .15s,transform .12s;display:grid}.lesson-card:hover{border-color:var(--brand-red);transform:translateY(-1px)}.lesson-card-number{color:var(--ink-muted);background:#e8eef7;border-radius:999px;flex:none;justify-content:center;align-items:center;width:36px;height:36px;font-weight:900;display:inline-flex}.lesson-card-content{gap:8px;min-width:0;display:grid}.lesson-card h3{color:var(--brand-blue-dark);margin:0;font-size:20px;line-height:1.2}.lesson-card p{color:var(--ink-muted);max-width:74ch;margin:0;font-size:14px;line-height:1.5}.lesson-card small{color:var(--ink-muted);text-align:left;font-size:12px;font-weight:800}.session-detail-dialog{background:var(--panel);border-radius:8px;width:min(720px,100vw - 32px);max-height:min(760px,100vh - 40px);padding:24px;overflow:auto;box-shadow:0 24px 70px #15223838}.session-dialog-body{gap:18px;padding-top:16px;display:grid}.session-dialog-lead{color:#34445f;margin:0;font-size:17px;line-height:1.55}.session-dialog-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.session-dialog-meta span{border:1px solid var(--line);color:var(--ink-muted);background:#f6f9ff;border-radius:8px;gap:5px;padding:12px;line-height:1.45;display:grid}.session-dialog-meta strong{color:var(--brand-blue-dark);text-transform:uppercase;font-size:11px}.dialog-task-list{gap:8px;margin:10px 0 0;padding:0;list-style:none;display:grid}.dialog-task-list li{border:1px solid var(--line);color:#34445f;background:#fbfdff;border-radius:8px;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:10px;padding:10px 12px;display:grid}.dialog-task-list span{background:var(--brand-yellow);color:#342700;border-radius:999px;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;font-weight:900;display:inline-flex}.workspace-card{cursor:default;gap:14px;transition:border-color .15s,box-shadow .15s,transform .12s}.workspace-card:hover{border-color:var(--brand-blue-dark);transform:translateY(-2px);box-shadow:0 16px 36px #15223817}.workspace-card.is-archived{opacity:.82;background:#f7f9fc;border-style:dashed}.batch-archive-panel{justify-content:space-between;align-items:center;gap:16px;display:flex}.batch-archive-panel h3{color:#24344d;margin:0 0 4px;font-size:15px}.workspace-card-top{align-items:flex-start}.trainer-student-head{align-items:center;gap:12px;min-width:0;display:flex}.avatar{background:var(--brand-yellow);color:#342700;border-radius:50%;flex:none;justify-content:center;align-items:center;width:40px;height:40px;font-weight:900;display:inline-flex}.trainer-student-head h3{color:var(--brand-blue-dark);text-overflow:ellipsis;white-space:nowrap;margin:0 0 3px;font-size:18px;overflow:hidden}.trainer-student-head p,.trainer-student-progress{color:var(--ink-muted);margin:0;font-size:12.5px}.workspace-progress{gap:8px;display:grid}.workspace-progress>div:first-child{color:var(--ink-muted);text-transform:uppercase;justify-content:space-between;align-items:center;font-size:12px;font-weight:800;display:flex}.workspace-progress strong{color:var(--brand-blue-dark);font-size:13px}.progress-bar{background:#e8eef7;border-radius:999px;height:10px;overflow:hidden}.progress-bar span{background:var(--brand-green);border-radius:999px;height:100%;display:block}.classroom-shell{box-sizing:border-box;grid-template-rows:auto auto minmax(0,1fr);gap:10px;height:100vh;min-height:0;padding:16px 22px;display:grid;overflow:hidden}.classroom-shell-live{grid-template-rows:auto minmax(0,1fr)}.studio-shell:has(.classroom-shell){grid-template-columns:minmax(0,1fr)}:is(.studio-shell:has(.classroom-shell) .studio-sidebar,.studio-main:has(.classroom-shell) .studio-header){display:none}.studio-main:has(.classroom-shell){height:100vh;overflow:hidden}.classroom-header-panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 12px;min-height:48px;padding:7px 10px;display:grid}.classroom-title-section{gap:4px;min-width:0;display:grid}.classroom-action-section{flex-wrap:nowrap;justify-content:flex-end;align-items:start;gap:10px;min-width:0;display:flex}.classroom-action-section:empty{display:none}.classroom-close-button{color:var(--brand-blue-dark);background:#eaf3ff;border:1.5px solid #9cc7ff;flex:none;width:40px;height:40px}.classroom-close-button:hover{border-color:var(--brand-blue);color:var(--brand-blue);background:#dcecff}.classroom-title-row{flex-wrap:wrap;align-items:center;gap:10px;min-width:0;display:flex}.classroom-title-row h2{color:var(--brand-blue-dark);overflow-wrap:anywhere;min-width:0;margin:0;font-size:17px;line-height:1.2}.classroom-heading-compact{flex:0 280px;gap:3px;min-width:0;display:grid}.classroom-heading-compact h2{text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.classroom-course-caption{color:var(--ink-muted);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.classroom-date-meta{border-left:1px solid var(--line);color:var(--ink-muted);gap:3px;padding-left:12px;font-size:11px;display:grid}.classroom-date-meta time{color:var(--ink);font-weight:600}.session-status{text-transform:uppercase;border-radius:999px;flex:none;align-items:center;gap:6px;padding:4px 10px;font-size:11px;font-weight:900;display:inline-flex}.session-status small{opacity:.78;text-transform:none;border-left:1px solid;padding-left:8px;font-size:11px;line-height:1}.session-status:before{content:"";background:currentColor;border-radius:999px;width:7px;height:7px;display:inline-block}.session-status.completed{color:#067647;background:#ecfdf3}.session-status.in-progress,.session-status.status-scheduled{color:#984c0c;background:#fff8d9}.session-status.status-live{color:#067647;background:#ecfdf3}.session-status.status-ended{color:var(--brand-blue-dark);background:#eaf2ff}.session-status.status-cancelled{color:#b42318;background:#fff0ed}.session-status.status-rescheduled{color:#475467;background:#f3f4f6}.session-status.status-unscheduled{color:#64748b;background:#f8fafc}.tasks-popover{position:relative}.tasks-popover summary{list-style:none}.tasks-popover summary::-webkit-details-marker{display:none}.tasks-trigger{background:var(--panel);border:1.5px solid var(--brand-blue-dark);color:var(--brand-blue-dark);cursor:pointer;white-space:nowrap;border-radius:999px;flex:none;align-items:center;gap:8px;min-height:38px;padding:0 14px;font-size:13px;font-weight:900;display:flex}.tasks-trigger strong{background:var(--brand-red);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:42px;padding:4px 8px;font-size:12px;display:inline-flex}.tasks-trigger-icon{place-items:center;display:grid}.tasks-menu{border:1px solid var(--line);overscroll-behavior:contain;-webkit-overflow-scrolling:touch;z-index:5;background:#fff;border-radius:8px;gap:10px;width:min(420px,100vw - 48px);max-height:min(520px,100dvh - 190px);padding:14px;display:grid;position:absolute;top:calc(100% + 8px);right:0;overflow-y:auto;box-shadow:0 18px 44px #15223824}.classroom-info-disclosure{justify-self:end;position:relative}.classroom-info-disclosure.inline{flex:none;justify-self:auto}.classroom-info-disclosure summary{color:var(--brand-blue-dark);cursor:pointer;background:#eef6ff;border:1px solid #c6ddff;border-radius:999px;justify-content:center;align-items:center;gap:6px;width:34px;height:34px;padding:0;font-size:0;font-weight:900;list-style:none;display:inline-flex}.classroom-info-disclosure summary:hover{color:var(--brand-blue);background:#dcecff;border-color:#9cc7ff}.classroom-info-disclosure.inline .classroom-info-section{left:0;right:auto}.classroom-info-disclosure summary::-webkit-details-marker{display:none}.classroom-info-section{border:1px solid var(--line);z-index:20;background:#fff;border-radius:8px;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:min(680px,100vw - 110px);margin-top:8px;padding:8px;display:grid;position:absolute;top:100%;right:0;box-shadow:0 16px 40px #16243e1f}.classroom-info-section.compact{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.classroom-info-section.with-learning-panels{align-content:start;width:min(780px,100vw - 72px);max-height:min(760px,100dvh - 90px);overflow-y:auto}.classroom-info-card{border:1px solid var(--line);background:#f6f9ff;border-radius:8px;gap:2px;min-width:0;min-height:54px;padding:7px 10px;display:grid}.classroom-info-card small{color:var(--ink-muted);text-transform:uppercase;font-size:11px;font-weight:900}.classroom-info-card strong,.classroom-info-card span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.classroom-info-card strong{color:var(--foreground);font-size:13px;font-weight:900}.classroom-info-card span{color:var(--ink-muted);font-size:12px;font-weight:700}.compact-reflection-summary{border:1px solid var(--line);background:#f6f9ff;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;min-width:0;min-height:54px;padding:7px 10px;display:flex}.compact-reflection-summary div:first-child{gap:2px;min-width:0;display:grid}.compact-reflection-summary small{color:var(--ink-muted);text-transform:uppercase;font-size:11px;font-weight:900}.compact-reflection-summary strong{color:var(--brand-blue-dark);font-size:18px;font-weight:1000}.compact-rating-chips{flex-wrap:wrap;justify-content:flex-end;gap:5px;display:inline-flex}.compact-rating-chips span,.compact-reflection-chip{color:var(--brand-blue-dark);white-space:nowrap;background:#fff;border:1px solid #d8e5f7;border-radius:999px;align-items:center;min-height:24px;padding:0 8px;font-size:11px;font-weight:1000;display:inline-flex}.compact-reflection-chip.muted{color:var(--ink-muted)}.class-info-drawer{border:1px solid var(--line);background:#fff;border-radius:8px;grid-column:1/-1;min-width:0;display:grid;overflow:hidden}.class-info-drawer summary{border:0;border-bottom:1px solid var(--line);color:var(--brand-blue-dark);cursor:pointer;background:#f6f9ff;border-radius:0;justify-content:space-between;align-items:center;width:auto;height:auto;min-height:38px;padding:0 12px;font-size:13px;font-weight:1000;list-style:none;display:flex}.class-info-drawer summary::-webkit-details-marker{display:none}.class-info-drawer summary:after{content:"+";font-size:16px;line-height:1}.class-info-drawer[open] summary:after{content:"-"}.class-info-drawer .lesson-panel,.class-info-drawer .class-reflections-panel{max-height:min(480px,58dvh);padding:12px;overflow-y:auto}.class-control-panel{flex-direction:column;place-items:end;gap:4px;min-width:max-content;display:flex;position:relative}.class-actions{flex-wrap:nowrap;justify-content:flex-end;align-items:center;gap:8px;min-width:max-content;display:flex}.class-toast{color:#067647;text-overflow:ellipsis;white-space:nowrap;max-width:320px;z-index:var(--z-toast);background:#ecfdf3;border:1px solid #abefc6;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:900;animation:.16s ease-out toastIn;position:absolute;top:calc(100% + 8px);right:0;overflow:hidden;box-shadow:0 12px 28px #16243e24}@keyframes toastIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.class-status-form{align-items:center;gap:8px;display:inline-flex}.attendance-buttons{border:1px solid var(--line);white-space:nowrap;background:#fff;border-radius:8px;flex-wrap:nowrap;flex:none;align-items:center;gap:2px;min-height:32px;padding:3px;display:inline-flex}.attendance-label{border-right:1px solid var(--line);color:var(--brand-blue);flex:none;align-items:center;height:20px;margin-right:2px;padding:0 6px 0 3px;display:inline-flex}.attendance-buttons form{display:inline-flex}.attendance-button{color:var(--ink-muted);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;width:26px;height:24px;transition:background .18s,color .18s,box-shadow .18s;display:inline-grid}.attendance-button:hover{color:var(--brand-blue-dark);background:#eef6ff}.attendance-button.active{background:var(--brand-blue);color:#fff;box-shadow:0 6px 14px #1641942e}.attendance-button:disabled{cursor:not-allowed;opacity:.55}.class-status-form select{border:1px solid var(--line);color:var(--foreground);background:#fff;border-radius:8px;min-height:32px;padding:0 28px 0 10px;font-size:12px;font-weight:800}.temp-reset-actions,.temp-reset-tools{border-left:1px solid var(--line);align-items:center;gap:6px;margin-left:2px;padding-left:8px;display:inline-flex}.temp-reset-actions form,.temp-reset-tools form{display:inline-flex}.temp-reset-tools{border:1px solid var(--line);white-space:nowrap;background:#f8fbff;border-radius:8px;flex:none;grid-column:2;gap:5px;margin-left:auto;padding:5px}.temp-reset-pill{border:1px solid var(--line);color:var(--ink-muted);cursor:pointer;background:#fff;border-radius:999px;flex:0 0 30px;justify-content:center;align-items:center;width:30px;height:28px;padding:0;transition:background .18s,border-color .18s,color .18s;display:inline-flex}.temp-reset-pill.warning{color:#984c0c;background:#fff8d9;border-color:#ffe58f}.temp-reset-pill.danger{color:#b42318;background:#fff0ed;border-color:#ffd0c7}.temp-reset-pill:hover{color:var(--brand-blue-dark);background:#eef6ff;border-color:#9cc7ff}.temp-reset-pill:disabled{cursor:not-allowed;opacity:.55}.temp-reset-feedback{text-overflow:ellipsis;white-space:nowrap;border-radius:999px;max-width:150px;padding:5px 8px;font-size:11px;font-weight:900;overflow:hidden}.temp-reset-feedback.error{color:#b42318;background:#fff0ed}.temp-reset-feedback.success{color:#067647;background:#ecfdf3}.form-error.compact,.form-success.compact{max-width:300px;margin:0;padding:8px 10px;font-size:12px}.classroom-session-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-height:0;display:grid}.session-strip{flex-wrap:nowrap;gap:4px;padding:8px 10px}.session-tasks-popover{justify-self:end}.session-pill{border-radius:9px;width:34px;min-width:34px;height:34px;min-height:34px;padding:0}.session-pill.active{box-shadow:0 0 0 2px #16419447}.session-pill.complete:not(.active),.session-pill.class-complete:not(.active),.session-pill.class-complete.active{color:#475467;background:#f3f5f8;border-color:#d7dee8}.session-pill.class-live,.session-pill.class-live.active{color:#067647;background:#ecfdf3;border-color:#75e0a7}.session-pill.class-scheduled,.session-pill.class-scheduled.active{color:#33445f;background:#f8fafc;border-color:#d7dee8}.session-pill.locked,.session-pill:disabled{color:#9aa7b8;cursor:not-allowed;opacity:.72;background:#f3f5f8;border-color:#e1e7ef}.classroom-grid{grid-template-columns:minmax(0,42.5fr) minmax(0,42.5fr) minmax(200px,15fr);height:100%;min-height:0}.classroom-grid.focused{grid-template-columns:46px minmax(0,42.5fr) minmax(0,42.5fr) minmax(190px,15fr)}.classroom-grid.focused.call-collapsed{grid-template-columns:46px minmax(280px,34fr) minmax(0,66fr) 46px}.classroom-grid.no-call{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.classroom-grid.focused.no-call{grid-template-columns:46px minmax(280px,40fr) minmax(0,60fr)}.class-call-panel header .call-collapse{color:#cbd5e1;background:0 0;border:0;padding:2px}.class-call-panel header span{align-items:center;gap:6px;display:inline-flex}.class-call-rail{align-content:start;place-items:center;gap:8px;padding:6px 4px;overflow:hidden}.class-call-rail button{width:36px;min-width:36px;height:36px;padding:0}.class-call-rail button.danger{background:#7f1d1d;border-color:#b91c1c}.class-call-rail button.rail-join{background:#166534;border-color:#22c55e}.class-call-rail .rail-people{justify-items:center;gap:6px;padding-top:4px;display:grid}.class-call-rail .rail-dot{background:#475569;border-radius:999px;width:10px;height:10px;display:block}.class-call-rail .rail-dot.on{background:#22c55e;box-shadow:0 0 0 3px #22c55e40}.class-call-rail .rail-recording{background:#ef4444;border-radius:999px;width:10px;height:10px;animation:1.6s ease-in-out infinite rail-blink;display:block}.class-call-rail .rail-alert{color:#1f1300;background:#f59e0b;border-radius:999px;place-items:center;width:18px;height:18px;font-size:12px;font-weight:800;display:grid}.class-call-rail .rail-muted-icon{color:#94a3b8}@keyframes rail-blink{50%{opacity:.35}}@media (prefers-reduced-motion:reduce){.class-call-rail .rail-recording{animation:none}}.classroom-session-rail{border:1px solid var(--line);background:#f8fbff;border-radius:8px;flex-direction:column;gap:6px;min-height:0;padding:6px;display:flex;overflow:hidden}.classroom-session-list{flex-direction:column;flex:1;gap:6px;min-height:0;display:flex;overflow-y:auto}.classroom-student-identity{width:32px;height:32px;color:var(--brand);border-radius:50%;flex-shrink:0;align-self:center}.classroom-session-rail .session-pill{width:34px;min-width:34px;height:34px;min-height:34px}.class-chat{height:100%;min-height:0;overflow:hidden}.class-chat:has(.chat-current-task){grid-template-rows:auto auto minmax(0,1fr) auto auto}.chat-current-task{color:#714000;background:#fffaf0;border:1px solid #f7d488;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;margin-bottom:10px;padding:10px 12px;display:grid}.chat-current-task div{gap:3px;min-width:0;display:grid}.chat-current-task small{text-transform:uppercase;font-size:11px;font-weight:1000}.chat-current-task strong{color:#5c3700;overflow-wrap:anywhere;font-size:13px;line-height:1.35}.chat-current-task>span{background:#fff;border:1px solid #f7d488;border-radius:999px;justify-content:center;align-items:center;width:30px;height:30px;font-size:12px;font-weight:1000;display:inline-flex}.class-chat-toolbar{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) max-content;align-items:center;gap:12px;padding-bottom:8px;display:grid}.panel-heading{align-items:center;gap:8px;min-width:0;min-height:22px;display:flex}.chat-panel-tabs{border:1px solid var(--line);background:#f4f8ff;border-radius:999px;flex:0 auto;align-items:center;gap:3px;max-width:100%;padding:3px;display:inline-flex}.chat-panel-tabs button{color:#42526b;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:999px;min-height:28px;padding:0 11px;font-size:12px;font-weight:900}.chat-panel-tabs button.active{background:var(--brand-blue-dark);color:#fff}.section-kicker{color:var(--brand-blue);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:12px;font-weight:900}.chat-scroll-wrap{height:100%;min-height:0;display:flex;position:relative;overflow:hidden}.chat-log{flex-direction:column;flex:1;align-content:start;gap:8px;min-width:0;min-height:0;padding:6px 16px 12px 2px;display:flex;overflow-y:auto}.trainer-notes-panel,.class-reflections-panel{flex:1;align-content:start;gap:10px;min-width:0;padding:6px 12px 12px 2px;display:grid;overflow-y:auto}.class-reflection-average{flex-wrap:wrap;align-items:center;gap:6px;margin:-4px 0 0;display:flex}.class-reflection-average-label{color:var(--ink-muted);font-size:12.5px;font-weight:700}.class-reflection-average-chip{border:1px solid var(--line);color:var(--brand-blue-dark);background:#fff;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:900}.class-reflection-average-help{color:var(--ink-muted);cursor:help;align-items:center;display:inline-flex}.class-reflection-average-help:focus-visible{outline:2px solid var(--brand-blue-dark);outline-offset:2px}.trainer-notes-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.trainer-notes-head strong{color:var(--brand-blue-dark);font-size:14px}.trainer-notes-head span{color:#984c0c;background:#fff8d9;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:900}.trainer-note-card{border:1px solid var(--line);background:#f6f9ff;border-radius:8px;gap:5px;padding:10px;display:grid}.trainer-note-card small{color:var(--ink-muted);text-transform:uppercase;font-size:11px;font-weight:900}.trainer-note-card p{color:#33445f;white-space:pre-line;margin:0;font-size:13px;line-height:1.45}.class-reflection-card{background:#f7fbff;border:1px solid #d7e6fb;border-radius:8px;gap:8px;min-width:0;padding:11px;display:grid}.class-reflection-card.pending{background:#fbfcff;border-style:dashed}.class-reflection-title{gap:2px;display:grid}.class-reflection-title small{color:var(--ink-muted);text-transform:uppercase;font-size:11px;font-weight:900}.class-reflection-title strong{color:var(--brand-blue-dark);font-size:14px}.class-reflection-card blockquote,.class-reflection-card p{color:#33445f;overflow-wrap:anywhere;margin:0;font-size:13px;line-height:1.45}.class-reflection-pending{font-weight:800;color:var(--ink-muted)!important}.class-reflection-card blockquote{border-left:3px solid var(--brand-yellow);padding-left:9px}.class-reflection-ratings{flex-wrap:wrap;gap:6px;display:flex}.class-reflection-ratings span{border:1px solid var(--line);color:var(--brand-blue-dark);background:#fff;border-radius:999px;padding:4px 8px;font-size:11px;font-weight:900}.class-reflection-card time{color:var(--ink-muted);font-size:11px;font-weight:800}.chat-task-group{display:contents}.task-divider{align-items:center;gap:8px;margin:8px 0 2px;display:flex}.task-divider-line{background:var(--line);flex:1;height:1px}.task-divider-badge{color:var(--ink-muted);background:#e8eef7;border-radius:50%;flex:none;justify-content:center;align-items:center;width:18px;height:18px;font-size:10px;font-weight:900;display:inline-flex}.task-divider strong{color:var(--ink-muted);white-space:nowrap;font-size:12px;font-weight:800}.task-divider.done .task-divider-badge{background:var(--brand-green);color:#fff}.chat-msg{word-break:break-word;align-items:end;gap:8px;min-width:0;max-width:88%;font-size:15px;line-height:1.55;display:flex}.chat-row-stack{align-items:flex-start;gap:8px;max-width:100%;display:grid}.trainer-chat-guidance{color:#714000;background:#fffaf0;border:1px solid #f7d488;border-radius:8px;max-width:min(500px,92%);padding:8px 10px}.trainer-chat-guidance summary{cursor:pointer;align-items:center;gap:7px;font-size:12px;font-weight:1000;list-style:none;display:flex}.trainer-chat-guidance summary::-webkit-details-marker{display:none}.trainer-chat-guidance div{gap:5px;margin-top:8px;display:grid}.trainer-chat-guidance p{overflow-wrap:anywhere;margin:0;font-size:12px;font-weight:750;line-height:1.45}.chat-bubble{border-radius:14px;gap:4px;min-width:min(180px,100%);max-width:100%;padding:10px 13px;display:grid}.chat-bubble>span{opacity:.76;font-size:12px;font-weight:900}.chat-avatar{color:var(--brand-blue-dark);background:#dcecff;border:1px solid #b8d5ff;border-radius:50%;flex:0 0 34px;justify-content:center;align-items:center;width:34px;height:34px;font-size:12px;font-weight:1000;display:inline-flex}.chat-avatar.assistant{background:#fff;border-color:#dbe7f6;padding:3px;box-shadow:0 6px 14px #1641941f}.chat-avatar.assistant img{object-fit:contain;width:26px;height:26px}.chat-message-body{gap:8px;display:grid}.chat-copyable-paragraph{padding-right:38px;display:block;position:relative}.chat-copyable-prompt{padding-right:0}.chat-copy-inline-button{color:var(--brand-blue-dark);cursor:pointer;background:#eef6ff;border:1px solid #c6ddff;border-radius:7px;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex;position:absolute;top:0;right:0}.chat-copyable-prompt .chat-line{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.chat-copyable-prompt .chat-copy-inline-button{flex:none;width:26px;height:26px;position:static}.prompt-copy-chip{white-space:normal;line-height:1.55}.chat-copy-inline-button:hover{color:var(--brand-blue);background:#dcecff}.chat-msg p,.chat-message-body p{white-space:pre-line;word-break:normal;overflow-wrap:anywhere;margin:0}.chat-code-wrap{position:relative}.chat-copy-button{color:#d7e3f4;cursor:pointer;z-index:1;background:#ffffff1f;border:1px solid #fff3;border-radius:7px;justify-content:center;align-items:center;width:26px;height:26px;display:inline-flex;position:absolute;top:8px;right:8px}.chat-copy-button:hover{color:#fff;background:#fff3}.chat-code-block{color:#d7e3f4;font-family:var(--font-geist-mono), ui-monospace, SFMono-Regular, Menlo, monospace;text-align:left;white-space:pre;background:#0f1d3a;border:1px solid #ffffff1f;border-radius:8px;max-width:100%;margin:2px 0;padding:12px 44px 12px 14px;font-size:13.5px;line-height:1.55;overflow-x:auto}.chat-inline-code{font-family:var(--font-geist-mono), ui-monospace, SFMono-Regular, Menlo, monospace;background:#0f1d3a1f;border-radius:5px;padding:1px 5px;font-size:.92em}.chat-line{display:block}.chat-line.action-cue{border:1px solid #bfd8ff;border-left:4px solid var(--brand-blue);color:#0b4db3;background:#eaf3ff;border-radius:8px;gap:3px;margin-top:2px;padding:9px 11px;font-weight:900;display:grid}.chat-line.action-cue:before{color:#0f6fff;content:"Action";letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:1000}.chat-msg.student .chat-code-block{color:#fff;background:#05112b6b;border-color:#fff3}.chat-msg.student .chat-inline-code{color:#fff;background:#ffffff29}.chat-msg.student{color:#fff;flex-direction:row-reverse;align-self:flex-end}.chat-msg.student .chat-bubble{background:var(--brand-blue-dark);border-bottom-right-radius:5px;min-width:96px}.chat-msg.student .chat-avatar{background:var(--brand-blue);color:#fff;border-color:#9cc7ff}.chat-msg.studio,.chat-msg.trainer{color:var(--brand-blue-dark);align-self:flex-start}.chat-msg.studio .chat-bubble,.chat-msg.trainer .chat-bubble{background:#eef6ff;border-bottom-left-radius:5px}.chat-msg.welcome{align-items:flex-end;max-width:min(560px,92%)}.chat-msg.welcome .chat-bubble{text-transform:none;background:#eef6ff;min-width:min(220px,100%);max-width:min(760px,100% - 42px);font-size:14px;font-weight:750;line-height:1.5}.welcome-message-body{gap:12px;display:grid}.welcome-message-body p{font-size:inherit;font-weight:inherit;line-height:inherit;margin:0}.chat-msg.checkpoint{color:var(--brand-blue-dark);max-width:94%}.chat-msg.quiz{color:var(--brand-blue-dark);max-width:92%}.chat-msg.quiz .chat-bubble,.chat-msg.checkpoint .chat-bubble{background:#eef6ff;border:1px solid #bfd8ff;border-bottom-left-radius:5px;box-shadow:inset 3px 0 #7fb3ff}.chat-msg.pending{opacity:.82}.typing-indicator{align-items:center;gap:5px;min-height:18px;display:inline-flex}.typing-indicator i{opacity:.5;background:currentColor;border-radius:50%;width:6px;height:6px;animation:.9s ease-in-out infinite typingPulse;display:inline-block}.typing-indicator i:nth-child(2){animation-delay:.15s}.typing-indicator i:nth-child(3){animation-delay:.3s}.quiz-choice-panel{gap:8px;display:grid}.quiz-choice-options{gap:6px;display:grid}.quiz-choice-options label{color:#27364f;cursor:pointer;background:#fff;border:1px solid #d8e7fb;border-radius:8px;align-items:center;gap:8px;padding:8px 10px;display:flex}.quiz-choice-options label.selected{border-color:var(--brand-blue);box-shadow:0 0 0 2px #2d7ff91f}.quiz-choice-options input{accent-color:var(--brand-blue)}.quiz-choice-options span{font-size:13px;font-weight:900}.quiz-choice-feedback{border-radius:8px;gap:2px;margin:0;padding:8px 10px;display:grid}.quiz-choice-feedback.correct{color:#067647;background:#ecfdf3}.quiz-choice-feedback.wrong{color:#984c0c;background:#fff8d9}@keyframes typingPulse{0%,80%,to{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}.chat-group-empty{color:var(--ink-muted);margin:0;font-size:12.5px;font-style:italic}.conversation-log{gap:10px;padding:10px 16px 12px 6px}.conversation-empty{color:var(--brand-blue-dark);text-align:center;background:0 0;border:0;align-self:center;gap:4px;max-width:300px;margin:auto 0 8px;padding:0;display:grid}.conversation-empty strong{font-size:14px}.conversation-empty p{color:var(--ink-muted);margin:0;font-size:12.5px;line-height:1.4}.chat-composer input{border-radius:999px}.class-chat .chat-composer{grid-template-columns:minmax(0,1fr) auto}.class-chat .chat-composer.empty{justify-self:center;align-items:center;width:min(100%,430px);max-width:430px}.class-chat .chat-composer.empty input{min-height:42px}.chat-composer select{border-radius:999px}.chat-composer button{background:var(--brand-red);border-radius:999px}.chat-composer .send-button{background:var(--brand-red);border:0;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;padding:0;display:inline-flex}.session-feedback-picker{border:1px solid var(--line);background:#f7fbff;border-radius:12px;gap:8px;margin:0 6px 6px;padding:10px;display:grid}.feedback-rating-row{grid-template-columns:minmax(90px,1fr) auto;align-items:center;gap:10px;display:grid}.feedback-rating-row strong{color:var(--brand-blue-dark);font-size:13px;font-weight:950;display:block}.feedback-rating-row span{color:var(--ink-muted);margin-top:1px;font-size:11px;font-weight:800;display:block}.feedback-rating-buttons{background:#fff;border:1px solid #d8e5f7;border-radius:999px;gap:3px;padding:3px;display:inline-flex}.feedback-rating-buttons button{color:var(--brand-blue-dark);cursor:pointer;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;font-size:13px;font-weight:950;display:inline-flex}.feedback-rating-buttons button.selected{background:var(--brand-blue-dark);color:#fff}.feedback-rating-buttons button:disabled{cursor:not-allowed;opacity:.6}.feedback-submit-button{background:var(--brand-red);color:#fff;cursor:pointer;border:0;border-radius:999px;justify-self:end;align-items:center;gap:7px;min-height:34px;padding:0 14px;font-size:13px;font-weight:950;display:inline-flex}.feedback-submit-button:disabled{cursor:not-allowed;opacity:.55}.class-wrapup-prompt{color:#067647;background:#ecfdf3;border:1px solid #bbf7d0;border-radius:10px;align-items:center;gap:8px;margin:0 6px 8px;padding:10px 12px;font-size:13px;font-weight:700;line-height:1.45;display:flex}.class-wrapup-prompt svg{flex:none}.session-complete-footer{color:#067647;background:#ecfdf3;border:1px solid #bbf7d0;border-radius:999px;justify-self:center;align-items:center;gap:7px;min-height:36px;margin:0 6px 8px;padding:0 14px;font-size:13px;font-weight:950;display:inline-flex}.chat-rule{color:var(--ink-muted);text-align:center;background:0 0;padding:0}.chat-rule.locked{color:#b42318;background:#fff1f2;border:1px solid #fecdd3;border-radius:8px;margin:0 6px 4px;padding:8px 10px;font-weight:900}.chat-rule strong{color:var(--brand-red)}.classroom-workbench{grid-template-columns:minmax(0,1fr);height:100%;min-height:0}.workbench-toolbar{background:var(--brand-blue-dark);box-sizing:border-box;max-inline-size:100%;max-width:100%;min-inline-size:0;border-bottom:0;grid-template-columns:auto minmax(0,1fr) auto;justify-self:stretch;align-items:center;gap:10px;width:100%;min-width:0;padding:10px 12px;display:grid;overflow:hidden}.view-toggle,.file-tabs{background:0 0;border:0;min-width:0}.file-tabs{overscroll-behavior-x:contain;scrollbar-width:none;overflow-x:auto}.file-tabs::-webkit-scrollbar{display:none}.view-toggle{background:#00000038;border:1px solid #ffffff26;border-radius:999px;align-items:center;gap:3px;padding:2px;display:inline-flex}.view-toggle button,.file-tabs button{color:#ffffffd9;border-radius:999px;flex:none}.view-toggle button{cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;gap:6px;width:auto;min-width:32px;height:30px;min-height:30px;padding:0 10px;font-size:12px;font-weight:700;transition:all .15s;display:inline-flex}.view-toggle button:hover{color:#fff;background:#ffffff1f}.view-toggle button.active,.file-tabs button.active{background:var(--brand-red);color:#fff;box-shadow:0 1px 3px #00000040}.code-editor{color:#d7e3f4;font-family:var(--font-geist-mono), ui-monospace, SFMono-Regular, Menlo, monospace;tab-size:2;background:#102044;border:0;outline:none;width:100%;height:100%;min-height:0;font-size:13px;line-height:1.6}.code-editor .cm-editor{background:#102044;height:100%}.code-editor .cm-scroller{font-family:var(--font-geist-mono), ui-monospace, SFMono-Regular, Menlo, monospace;font-size:13px;line-height:1.6;overflow:auto}.code-editor .cm-content{min-height:100%;padding:18px 0}.code-editor .cm-line{padding:0 18px}.code-editor .assistant-added-line{background:#ffd6662e;box-shadow:inset 3px 0 #ffd666}.code-editor .cm-gutters{color:#d7e3f47a;background:#0b1732;border-right:1px solid #ffffff14}.editor-save-state{color:#ffffffd1;text-align:right;text-transform:uppercase;white-space:nowrap;border-radius:999px;min-width:0;font-size:11px;font-weight:900}.preview-controls{justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.preview-refresh{color:#fff;background:#ffffff1f;border:1px solid #ffffff2e;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;padding:0;display:inline-flex}.preview-refresh:hover{background:#fff3}.editor-save-state.error{color:#ffd0c7}.editor-save-state.saved{color:#abefc6}.editor-save-state.saving{color:#ffe58f}.preview-frame.classroom-preview{box-sizing:border-box;border:14px solid #eef3fb;border-radius:0;height:100%;min-height:0}.schedule-table{container-type:inline-size}@container (max-width:820px){.schedule-row{grid-template-columns:repeat(2,minmax(0,1fr))}.schedule-row>div:first-child{grid-column:1/-1}}@media (max-width:900px){.studio-shell{grid-template-columns:minmax(0,1fr)}.studio-sidebar,.studio-sidebar nav{min-width:0}.studio-sidebar{border-bottom:1px solid var(--line);border-right:0;height:auto;padding:18px;position:static}.studio-sidebar nav{gap:8px;margin:0;padding:0;display:flex;overflow:auto visible}.studio-sidebar nav a{white-space:nowrap;justify-content:center;width:44px;padding:0}.studio-sidebar nav a:after{content:attr(aria-label)}.studio-sidebar nav a span{white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.dashboard-calendar-head-actions{flex-direction:column-reverse;align-items:flex-end}.time-zone-switcher{justify-items:start}.time-zone-note{text-align:left}.filter-bar{grid-template-columns:minmax(0,1fr)}.filter-bar input,.filter-bar select{width:100%;min-width:0}.studio-header,.content-stack{padding:22px}.dashboard-grid,.dashboard-grid.two-up,.dashboard-grid.dashboard-grid-wide,.dashboard-focus-banner,.dashboard-calendar-layout,.batch-form-main,.split-grid,.course-grid,.workspace-grid,.classroom-grid{grid-template-columns:1fr}.dashboard-focus-banner{align-items:stretch}.dashboard-focus-meta{min-width:0}.dashboard-calendar-grid,.batch-weekdays,.batch-days{gap:5px}.calendar-day,.batch-day{min-height:78px;padding:5px}.schedule-row{grid-template-columns:1fr}.workspace-actions,.schedule-toolbar,.dashboard-calendar-head{flex-direction:column;align-items:stretch}.today-class-row{grid-template-columns:56px minmax(0,1fr)}.today-class-row em{grid-column:2}.classroom-header-panel,.workbench-toolbar{align-items:stretch}.classroom-header-panel{grid-template-columns:1fr}.classroom-action-section{justify-content:flex-start}.classroom-info-section{grid-template-columns:1fr;width:min(420px,100vw - 108px);left:0;right:auto}.classroom-session-row{grid-template-columns:1fr}.studio-shell:has(.classroom-shell){grid-template-columns:minmax(0,1fr);min-height:100vh}.studio-shell:has(.classroom-shell) .studio-sidebar{display:none}.studio-shell:has(.classroom-shell) .studio-sidebar nav{display:none;overflow:visible}.studio-main:has(.classroom-shell) .classroom-grid{grid-template-rows:minmax(360px,1fr) minmax(420px,1fr) auto;grid-template-columns:minmax(0,1fr)}.studio-main:has(.classroom-shell) .classroom-grid.call-collapsed{grid-template-columns:minmax(0,1fr)}.class-call-rail{flex-wrap:wrap;justify-content:center;display:flex}.class-call-rail .rail-people{grid-auto-flow:column}.studio-main:has(.classroom-shell) .classroom-session-row{grid-template-columns:minmax(0,1fr) auto}.session-tasks-popover{justify-self:start}.studio-main:has(.classroom-shell) .session-tasks-popover{justify-self:end}.class-actions{justify-content:flex-start}.class-control-panel{align-items:start}.classroom-workbench{min-height:520px}.studio-main:has(.classroom-shell) .classroom-workbench{min-height:0}.page-toolbar,.modal-head{flex-direction:column;align-items:stretch}.table-row,.users-table .table-row,.students-table .table-row,.trainers-table .table-row,.reference-table .table-row,.filter-bar,.user-form,.user-form fieldset{grid-template-columns:1fr}}.muted-note{color:var(--ink-muted);font-size:12px}.batch-roster{flex-wrap:wrap;gap:8px;margin:0;padding:0;font-size:13px;list-style:none;display:flex}.batch-roster li{border:1px solid var(--line);background:#f6f9ff;border-radius:999px;align-items:center;min-width:0;padding:5px 9px;display:inline-flex}.batch-roster a{color:var(--brand-blue-dark);text-overflow:ellipsis;white-space:nowrap;max-width:160px;font-weight:800;text-decoration:none;overflow:hidden}.batch-roster small{color:var(--ink-muted);font-weight:700}.student-picker{border:1px solid var(--line);border-radius:8px;gap:10px;padding:12px;display:grid}.student-picker-search{border:1px solid var(--line);background:#fff;border-radius:6px;align-items:center;gap:8px;padding:6px 10px;display:flex}.student-picker-search svg{color:var(--ink-muted);flex-shrink:0}.student-picker-search input{box-shadow:none;background:0 0;border:none;outline:none;width:100%;min-height:auto;padding:0;font-size:13px}.student-picker-search input:focus{box-shadow:none;outline:none}.student-picker-list{gap:8px;max-height:260px;display:grid;overflow-y:auto}.batch-fieldset .student-picker-item{border:1px solid var(--line);cursor:pointer;background:#f8fbff;border-radius:8px;flex-direction:row;align-items:center;gap:10px;min-height:48px;padding:9px 10px;transition:background .16s,border-color .16s,box-shadow .16s;display:flex}.batch-fieldset .student-picker-item:has(input:checked){box-shadow:inset 3px 0 0 var(--brand-blue);background:#eef6ff;border-color:#9cc7ff}.batch-fieldset .student-picker-item:has(input:disabled){cursor:not-allowed;opacity:.72}.batch-fieldset .student-picker-item:hover{background:#eef6ff;border-color:#c6ddff}.batch-fieldset .student-picker-item input[type=checkbox]{accent-color:var(--brand-blue);flex:none;width:18px;height:18px;min-height:18px;margin:0;padding:0}.batch-fieldset .student-picker-item>span{color:#33445f;flex-wrap:wrap;flex:auto;align-items:baseline;gap:4px;min-width:0;font-size:14px;font-weight:900;display:flex}.batch-fieldset .student-picker-item small{color:var(--ink-muted);font-size:12px;font-weight:800}.lesson-panel{gap:22px;padding:4px 4px 24px;display:grid;overflow-y:auto}.lesson-block{gap:8px;display:grid}.lesson-block h4{color:var(--ink-muted);letter-spacing:.09em;text-transform:uppercase;align-items:baseline;gap:8px;margin:0;font-size:11px;font-weight:600;display:flex}.lesson-block p{margin:0;font-size:13.5px;line-height:1.55}.lesson-count{color:var(--ink-muted);font-variant-numeric:tabular-nums;letter-spacing:0}.lesson-script{border-left:2px solid var(--line);color:var(--ink-muted);padding-left:12px;font-style:italic}.lesson-plan-rows,.lesson-steps{gap:6px;margin:0;padding:0;list-style:none;display:grid}.lesson-plan-rows li{grid-template-columns:74px minmax(0,1fr);gap:10px;font-size:13px;line-height:1.5;display:grid}.lesson-time{color:var(--ink-muted);font-variant-numeric:tabular-nums;white-space:nowrap}.lesson-step{border-radius:8px;grid-template-columns:22px minmax(0,1fr);gap:10px;padding:7px 8px;display:grid}.lesson-step.active{background:#eef4ff;box-shadow:inset 2px 0 #2f6bff}.lesson-step.done .lesson-step-text{color:var(--ink-muted);text-decoration:line-through}.lesson-step-num{color:var(--ink-muted);font-variant-numeric:tabular-nums;text-align:right;padding-top:2px;font-size:11px}.lesson-step-text{font-size:13.5px;line-height:1.5}.lesson-cue{background:#fffaf0;border:1px solid #f3e2c0;border-radius:7px;gap:4px;margin-top:7px;padding:9px 11px;display:grid}.lesson-cue p{font-size:12.5px;line-height:1.5}.lesson-list{gap:5px;font-size:13.5px;line-height:1.5}.lesson-vocab{gap:6px;margin:0;display:grid}.lesson-vocab div{grid-template-columns:92px minmax(0,1fr);gap:8px;display:grid}.lesson-vocab dt{color:#2f6bff;font-family:var(--font-geist-mono), monospace;font-size:12px}.lesson-vocab dd{color:var(--ink-muted);margin:0;font-size:13px;line-height:1.5}.student-lesson-panel{gap:18px}.student-lesson-hero{background:#f6f9ff;border:1px solid #dbe7ff;border-radius:8px;padding:14px}.student-plan-steps{gap:10px;display:grid}.student-plan-steps article{border:1px solid var(--line);border-radius:8px;gap:8px;padding:12px;display:grid}.student-plan-steps strong{color:var(--ink);font-size:13px}.password-input{align-items:center;gap:8px;min-width:0;display:flex}.password-input input{color:var(--foreground);background:0 0;border:0;outline:0;flex:1;min-width:0;padding:0}.user-form .password-input{border:1px solid var(--line);background:#fff;border-radius:8px;gap:6px;min-height:42px;padding:0 12px}.password-input .password-input__toggle{color:var(--ink-muted);cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none;justify-content:center;align-items:center;gap:0;width:32px;height:32px;min-height:0;padding:0;font-weight:400;display:inline-flex}.password-input .password-input__toggle:hover{color:var(--brand-blue)}.password-input .password-input__toggle:focus-visible{outline:2px solid var(--brand-blue);outline-offset:1px}.field{gap:8px;min-width:0;display:grid}.auth-form .password-input{border:1px solid var(--line);border-radius:8px;min-height:48px;padding:0 14px}:root{--z-inpage-popover:40;--z-chrome:100;--z-sidebar-popover:120;--z-toast:150;--z-modal:200;--z-confirm:300;--z-profile-dialog:400}.section-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.section-heading h3{margin:0}.track-context{border-left:4px solid var(--brand-blue);padding:2px 0 2px 12px}.track-context .track-next{color:var(--ink-muted);margin:0;font-size:13px}.track-context .text-link{margin-left:6px}.track-card{border:1px solid var(--line);border-radius:12px;padding:16px 18px}.track-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.track-title-row{align-items:center;gap:10px;display:flex}.track-title-row h3{margin:0}.track-meta{color:var(--ink-muted);margin-top:4px;font-size:12px}.track-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.track-form-grid,.track-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:14px}.track-full{grid-column:1/-1}.track-members{flex-direction:column;gap:8px;margin-top:14px;display:flex}.track-member{border:1px solid var(--line);border-radius:8px;align-items:center;gap:10px;padding:8px 10px;display:flex}.track-pos{background:var(--panel);color:var(--ink-muted);border-radius:6px;justify-content:center;align-items:center;width:24px;height:24px;font-weight:800;display:inline-flex}.track-member-name{flex:1}.track-member-name b{font-size:13px;display:block}.track-member-name span{color:var(--ink-muted);font-size:12px}.track-add-course{align-items:center;gap:8px;margin-top:4px;display:flex}.track-stepper{flex-direction:column;gap:12px;display:flex}.stepper-intro h4{margin:2px 0 0;font-size:14px}.stepper-list,.stepper-step-row{flex-direction:column;display:flex}.stepper-step{border:1px solid var(--line);background:#fff;border-radius:12px;overflow:hidden}.stepper-step.locked{opacity:.78;background:#f8fafc}.stepper-head{background:var(--panel);align-items:center;gap:12px;padding:12px 16px;display:flex}.stepper-step.locked .stepper-head{background:0 0}.stepper-num{background:var(--brand);color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:28px;height:28px;font-size:14px;font-weight:800;display:inline-flex}.stepper-num.done{background:#1a7f37}.stepper-num.locked{background:#cbd5e1}.stepper-title{flex:1;min-width:0}.stepper-title b{font-size:13.5px;display:block}.stepper-meta{color:var(--ink-muted);margin-top:2px;font-size:12px;display:block}.stepper-body{border-top:1px solid var(--line);padding:4px 16px 14px}.stepper-link{background:var(--line);width:2px;height:16px;margin-left:26px}.stepper-link.is-done{background:#1a7f37}.btn{background:var(--brand);color:#fff;cursor:pointer;white-space:nowrap;border:0;border-radius:8px;align-items:center;gap:6px;padding:10px 16px;font-weight:700;display:inline-flex}.btn.ghost{border:1px solid var(--line);color:var(--brand);background:#fff}.btn.sm{border-radius:7px;padding:6px 10px;font-size:12px}.btn.danger{color:#b42318;border-color:#f2c4bd}.btnicon{border:1px solid var(--line);color:var(--ink-muted);cursor:pointer;background:#fff;border-radius:7px;justify-content:center;align-items:center;min-width:28px;height:26px;padding:0 4px;font-size:13px;display:inline-flex}.btnicon[aria-disabled=true]{opacity:.4}.numdot{background:var(--panel);border:1px solid var(--line);color:var(--ink-muted);border-radius:7px;flex:none;justify-content:center;align-items:center;width:24px;height:24px;font-size:12px;font-weight:800;display:inline-flex}.numdot.on{background:var(--brand);color:#fff;border:0}.mrow{border:1px solid var(--line);background:#fff;border-radius:9px;align-items:center;gap:10px;padding:7px 10px;display:flex}.mrow b{font-size:13px;display:block}.mrow .mt{color:var(--ink-muted);font-size:11.5px;display:block}.mrow .grow{flex:1;min-width:0}.tabs-filter{gap:8px;padding-bottom:12px;display:flex}.tab-btn{border:1px solid var(--line);color:var(--ink-muted);cursor:pointer;background:0 0;border-radius:8px;padding:7px 14px;font-size:13px;font-weight:800}.tab-btn.on{background:var(--brand);border-color:var(--brand);color:#fff}.tracks-table{border:1px solid var(--line);border-collapse:separate;border-spacing:0;border-radius:12px;width:100%;overflow:hidden}.tracks-table th{background:var(--panel);color:var(--ink-muted);letter-spacing:.04em;text-align:left;text-transform:uppercase;font-size:11px;font-weight:800}.tracks-table th,.tracks-table td{vertical-align:top;padding:11px 14px}.tracks-table thead th{border-bottom:1px solid var(--line)}.tracks-table tbody tr{border-bottom:1px solid #eef2f7}.tracks-table tbody tr:last-child{border-bottom:0}.tracks-table tbody tr+tr{border-top:1px solid #eef2f7}.tracks-sub{color:var(--ink-muted);margin-top:2px;font-size:12px}.tracks-actions-col{text-align:right;width:190px}.tracks-actions-col .track-actions{justify-content:flex-end}.tracks-manage-row td{background:#fbfcfe;padding:16px}.manage-panel{flex-direction:column;gap:16px;display:flex}.manage-members{flex-direction:column;gap:8px;display:flex}.manage-members .eyebrow{margin:0 0 2px}.track-add-course select{min-width:260px}.track-compose{grid-template-columns:minmax(0,1.35fr) minmax(330px,.75fr);align-items:start;gap:18px;display:grid}.track-compose-main{gap:18px;min-width:0;display:grid}.compose-card{background:var(--panel);border:1px solid var(--line);border-radius:12px;gap:14px;padding:18px;display:grid}.compose-card h3{margin:0}.compose-card .card-sub{color:var(--ink-muted);margin:0;font-size:13px}.compose-field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.compose-field{gap:6px;display:grid}.compose-field>span:first-child{color:var(--brand-blue-dark);font-size:12px;font-weight:800}.compose-field input[type=text],.compose-field select,.compose-field textarea{border:1px solid var(--line);font:inherit;box-sizing:border-box;border-radius:8px;width:100%;padding:9px 11px}.compose-field textarea{resize:vertical;min-height:74px}.compose-field .field-error{color:var(--brand-red);font-size:12px}.compose-field .field-help{color:var(--ink-muted);font-size:12px}.compose-add-course{gap:8px;margin-top:6px;display:flex}.compose-add-course select{flex:1;min-width:0}.track-preview{background:var(--panel);border:1px solid var(--line);top:calc(var(--sticky-header-h) + 14px);border-radius:12px;gap:12px;padding:18px;display:grid;position:sticky}.track-preview .eyebrow{margin:0 0 2px}.preview-list{gap:0;display:grid}.preview-step{align-items:center;gap:10px;padding:6px 0;display:flex}.preview-step b{font-size:13px}.preview-step .mt{color:var(--ink-muted);font-size:11.5px;display:block}.preview-arrow{color:#94a3b8;margin:-2px 0 -2px 17px}.preview-note{color:var(--ink-muted);margin:0;font-size:12px;line-height:1.5}.compose-actions{justify-content:flex-end;align-items:center;gap:10px;display:flex}.compose-actions .field-error{margin-right:auto}.class-call-panel{color:#e7edf8;background:#111b2d;border-radius:14px;flex-direction:column;gap:12px;min-width:0;padding:14px;display:flex;overflow:auto}.class-call-panel header{justify-content:space-between;gap:12px;display:flex}.class-call-panel header span,.class-call-panel small{opacity:.7;font-size:11px}.class-call-panel button{cursor:pointer;color:#f1f5f9;background:#24344e;border:1px solid #475569;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:8px;display:inline-flex}.class-call-panel button:disabled{opacity:.5;cursor:default}.class-call-cameras{grid-template-columns:1fr;gap:8px;display:grid}.class-call-cameras article{background:#1e293b;border-radius:9px;overflow:hidden}.class-call-cameras video,.camera-placeholder{aspect-ratio:4/3;object-fit:cover;place-items:center;width:100%;display:grid}.class-call-cameras span{padding:5px;font-size:11px;display:block}.class-call-controls{flex-wrap:wrap;gap:6px;display:flex}.class-call-panel label{margin:8px 0;font-size:12px;display:block}.class-call-panel select{color:#111827;max-width:100%}.recording-state{color:#9de1c0;font-size:12px}.class-recordings{gap:8px;display:grid}.class-recording-player{color:#e7edf8;background:#111b2d;border:1px solid #475569;border-radius:14px;width:min(1100px,92vw);max-height:92vh;margin:auto;padding:18px}.class-recording-player::backdrop{background:#020617cc}.class-recording-player header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.class-recordings .class-recording-player video{width:100%;max-height:78vh;display:block}.recordings-filters-container{flex-direction:column;gap:8px;margin-bottom:8px;display:flex}.recordings-filter-bar{background:var(--panel,#fff);border:1px solid var(--line,#e2e8f0);border-radius:10px;flex-wrap:wrap;align-items:center;gap:12px;padding:12px;display:flex}.recordings-filter-bar .search-field{flex:240px}.recordings-filter-bar select{appearance:none;border:1px solid var(--line,#cbd5e1);cursor:pointer;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;border-radius:8px;outline:0;min-height:38px;padding:0 32px 0 12px;font-size:14px}.recordings-filter-bar select:focus-visible{outline:2px solid var(--brand-blue,#2563eb)}.recordings-date-group{align-items:center;gap:8px;display:flex}.date-input-label{color:var(--ink-muted,#64748b);align-items:center;gap:6px;font-size:13px;font-weight:500;display:inline-flex}.date-input-label input[type=date]{border:1px solid var(--line,#cbd5e1);background:#fff;border-radius:8px;padding:6px 10px;font-size:13px}.recordings-clear-btn{border-radius:8px;padding:6px 14px;font-size:13px;text-decoration:none}.recordings-filter-loading{color:var(--brand-blue,#2563eb);margin:0;font-size:12px}.recordings-summary-count{color:var(--ink-muted,#64748b);font-size:13px;font-weight:500}.recording-batch{background:#fff;border:1px solid #dbe4ef;border-radius:12px;margin-bottom:16px;transition:box-shadow .15s,border-color .15s;overflow:hidden;box-shadow:0 1px 3px #00000008}.recording-batch[open]{border-color:#cbd5e1;box-shadow:0 3px 10px #0000000d}.recording-batch-summary{cursor:pointer;-webkit-user-select:none;user-select:none;background:#fff;align-items:center;padding:16px 20px;list-style:none;transition:background-color .15s;display:flex}.recording-batch-summary::-webkit-details-marker{display:none}.recording-batch-summary:hover{background:#f8fafc}.recording-batch[open] .recording-batch-summary{background:#fbfcfe;border-bottom:1px solid #eef2f6}.recording-batch-header-content{width:100%}.recording-batch-title-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.recording-batch-chevron{color:#64748b;font-size:14px;line-height:1;transition:transform .2s;display:inline-block}.recording-batch[open] .recording-batch-chevron{transform:rotate(0)}.recording-batch:not([open]) .recording-batch-chevron{transform:rotate(-90deg)}.recording-batch-title-row h3{color:#0f172a;margin:0;font-size:18px}.recording-count-badge{color:#475569;background:#f1f5f9;border-radius:9999px;margin-left:auto;padding:3px 9px;font-size:12px;font-weight:600;display:inline-block}.recording-course-tag{color:#1e40af;background:#eff6ff;border:1px solid #bfdbfe;border-radius:9999px;padding:2px 10px;font-size:12px;font-weight:600;display:inline-block}.recording-batch-meta{color:#64748b;flex-wrap:wrap;gap:16px;margin-top:6px;padding-left:24px;font-size:13px;display:flex}.recording-batch-content{padding:0 20px}.recording-session{border-top:1px solid #f1f5f9;padding:14px 0}.recording-batch-content>.recording-session:first-child{border-top:0}.recording-session summary{cursor:pointer;color:#1e293b;font-weight:600}.recording-session summary .session-num{color:#0f172a}.recording-session summary .session-date{color:#475569;font-weight:500}.recording-session summary .session-parts{color:#059669;font-weight:500}.recording-session .recording-session-body{margin-top:12px}.recording-session .class-recordings{flex-wrap:wrap;gap:10px;display:flex}.recordings-pagination{justify-content:center;align-items:center;gap:16px;margin:24px 0;font-size:14px;display:flex}.empty-panel{text-align:center;color:#64748b;background:#fff;border:1px dashed #cbd5e1;border-radius:12px;padding:40px 20px}.safety-alert-card{background:#fffbfa;border-color:#fecdca}.safety-alert-card h3{color:#b42318;align-items:center;gap:8px;display:flex}.safety-alert-badge{color:#d92d20;text-transform:uppercase;letter-spacing:.04em;background:#fee4e2;border:1px solid #fecdca;border-radius:9999px;padding:2px 8px;font-size:11px;font-weight:700}.safety-alert-desc{color:#b42318;margin:0;font-size:13px}.safety-card-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.safety-card-header h3{align-items:center;gap:8px;margin:0;display:flex}.safety-counter{color:var(--ink-muted);font-size:13px;font-weight:500}.safety-quote-cell{min-width:220px;max-width:380px}.safety-quote{color:#1e293b;word-break:break-word;white-space:pre-wrap;background:#f8fafc;border-left:3px solid #cbd5e1;border-radius:0 6px 6px 0;margin:0;padding:8px 12px;font-size:13px;line-height:1.45}.safety-quote.is-urgent{color:#912018;background:#fef3f2;border-left-color:#f04438;font-weight:500}.status-pill.status-danger{color:#d92d20;background:#fee4e2;border:1px solid #fecdca}.status-pill.status-warning{color:#b54708;background:#fef0c7;border:1px solid #fedf89}.status-pill.status-info{color:#0369a1;background:#e0f2fe;border:1px solid #bae6fd}.safety-empty-inline{text-align:center;color:var(--ink-muted);padding:24px 16px;font-size:13px}.safety-list-shell .list-head,.safety-list-shell .list-row{grid-template-columns:minmax(130px,1.1fr) minmax(130px,1.1fr) minmax(160px,1.3fr) 130px minmax(240px,2.5fr) 110px;gap:12px}@media (max-width:1080px){.safety-list-shell{overflow-x:auto}.safety-list-shell .list-head,.safety-list-shell .list-row{min-width:860px}}.attendance-page .page-lede{color:#66788f;margin:4px 0 18px;font-size:13px}.att-header-cluster{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:8px;display:flex}.att-header-cluster h1{margin-bottom:2px}.att-view-selector{background:#edf2f7;border:1px solid #dce3ec;border-radius:10px;gap:4px;padding:4px;display:inline-flex}.att-view-tab{color:#556882;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:6px 14px;font-size:13px;font-weight:600;transition:all .15s}.att-view-tab:hover{color:#1e293b}.att-view-tab.active{color:#0f172a;background:#fff;font-weight:700;box-shadow:0 1px 3px #00000014}.attendance-cards{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:20px;display:grid}.att-card{background:#fff;border:1px solid #dce3ec;border-radius:12px;flex-direction:column;justify-content:space-between;padding:14px 16px;display:flex;box-shadow:0 1px 2px #0f172a08}.att-card small{color:#66788f;text-transform:uppercase;letter-spacing:.4px;font-size:11px;font-weight:700}.att-card strong{margin:4px 0 2px;font-size:26px;font-weight:800;display:block}.att-card-caption{color:#8596ac;font-size:11px;line-height:1.2}.att-card.att-ok strong{color:#0e9f5b}.att-card.att-bad strong{color:#d64545}.att-card.att-warn strong{color:#b26b00}.att-card.att-info strong{color:#2459a5}.att-list{gap:10px;display:grid}.att-student{background:#fff;border:1px solid #dce3ec;border-radius:12px;padding:12px 14px}.att-student summary{cursor:pointer;gap:6px;list-style:none;display:grid}.att-student summary::-webkit-details-marker{display:none}.att-student-name{color:#24344d;font-weight:800}.att-student-counts{flex-wrap:wrap;gap:6px;display:flex}.att-table{border-collapse:collapse;width:100%;margin-top:10px;font-size:12.5px}.att-table th{color:#24344d;text-align:left;text-transform:uppercase;letter-spacing:.4px;background:#eef3fa;padding:8px 10px;font-size:11px}.att-table td{color:#24344d;border-top:1px solid #edf1f7;padding:9px 10px}.att-pill{border-radius:999px;padding:2px 9px;font-size:11px;font-weight:700;display:inline-block}.att-ok{color:#0e9f5b}.att-bad{color:#d64545}.att-warn{color:#b26b00}.att-info{color:#2459a5}.att-grey{color:#5b6b81}.att-pill.att-ok{background:#e7f8ef}.att-pill.att-bad{background:#fdeaea}.att-pill.att-warn{background:#fff4dc}.att-pill.att-info{background:#eaf1fb}.att-pill.att-grey{background:#eef1f5}.att-muted{color:#66788f}.att-correct{margin-top:.35rem}.att-correct>summary{cursor:pointer;color:var(--muted,#64748b);font-size:.75rem}.att-correct form{flex-wrap:wrap;align-items:flex-end;gap:.35rem;margin-top:.35rem;display:flex}.att-correct-field{flex-direction:column;gap:.15rem;font-size:.75rem;display:flex}.att-correct-field select,.att-correct-field input{padding:.2rem .35rem;font-size:.8rem}@media (max-width:1100px){.attendance-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}.att-staff{gap:12px;display:grid}.att-section-card{background:#fff;border:1px solid #dce3ec;border-radius:12px;padding:16px 18px;box-shadow:0 1px 3px #0f172a08}.att-section-header{border-bottom:1px solid #edf1f7;justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:12px;display:flex}.att-counter-badge{color:#475569;white-space:nowrap;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:700}.att-toolbar{background:#f8fafc;border:1px solid #eef2f6;border-radius:10px;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 12px;display:flex}.att-search{color:#24344d;background:#fff;border:1px solid #dce3ec;border-radius:9px;outline:0;min-width:230px;min-height:38px;padding:8px 12px;font-size:13px}.att-search:focus-visible{border-color:var(--brand-blue,#2563eb);outline:2px solid var(--brand-blue,#2563eb)}.att-select{appearance:none;color:#24344d;cursor:pointer;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;border:1px solid #dce3ec;border-radius:9px;outline:0;min-width:180px;min-height:38px;padding:0 32px 0 12px;font-family:inherit;font-size:13px}.att-select:focus-visible{border-color:var(--brand-blue,#2563eb);outline:2px solid var(--brand-blue,#2563eb)}.att-summary-table{border-collapse:collapse;background:#fff;border:1px solid #dce3ec;border-radius:12px;width:100%;font-size:12.5px;overflow:hidden}.att-summary-table th{color:#24344d;text-align:left;background:#eef3fa;padding:0}.att-summary-table th button.att-sort{cursor:pointer;text-transform:uppercase;letter-spacing:.4px;color:#24344d;background:0 0;border:0;gap:3px;padding:9px 10px;font-size:11px;font-weight:700;display:inline-flex}.att-summary-table th button.att-sort.active{color:#14437a}.att-summary-table td{color:#24344d;border-top:1px solid #edf1f7;padding:9px 10px}tr.att-row{cursor:pointer}tr.att-row:hover td{background:#f7fafe}tr.att-detail-row td{background:#fbfcfe;padding:12px 14px}.att-caret{color:#66788f}.att-course{color:#24344d;margin:0 0 2px;font-size:15px}.att-mark{min-width:120px}.att-toolbar label{color:#66788f;align-items:center;gap:6px;font-size:12.5px;display:inline-flex}.att-toolbar input[type=date]{color:#24344d;background:#fff;border:1px solid #dce3ec;border-radius:9px;outline:0;min-height:38px;padding:0 10px;font-size:12.5px}.att-toolbar input[type=date]:focus-visible{border-color:var(--brand-blue,#2563eb);outline:2px solid var(--brand-blue,#2563eb)}.att-window-notice{padding:8px 12px;font-size:13px}.att-window-notice a{font-weight:700;text-decoration:underline}.att-window-toggle{padding:4px 8px;font-size:11px}.att-groups{gap:16px;display:grid}.att-group h4{margin:0 0 4px}.att-sheet{background:#fff;border:1px solid #dce3ec;border-radius:12px;margin-bottom:24px;padding:14px 16px}.att-sheet-title{color:#24344d;margin:0 0 2px;font-size:16px;font-weight:700}.att-collapse{background:#fff;border:1px solid #dce3ec;border-radius:12px;overflow:hidden}.att-collapse-summary{cursor:pointer;color:#24344d;align-items:center;gap:8px;padding:13px 16px;font-size:14px;list-style:none;display:flex}.att-collapse-summary::-webkit-details-marker{display:none}.att-collapse[open] .att-collapse-summary{border-bottom:1px solid #edf1f7}.att-collapse .att-sheet{border:0;border-radius:0;margin:0;padding:12px 16px}.att-collapse-summary .att-caret{margin-left:auto}.dob-age-note{color:#0e9f5b;font-weight:700}.age-chips{flex-wrap:wrap;align-items:center;gap:6px;margin:10px 0 14px;display:flex}.age-chips-label{color:#33445f;font-size:12px;font-weight:800}.age-chips-hint{color:#66788f;width:100%;font-size:11.5px}.age-chip{color:#33445f;cursor:pointer;background:#fff;border:1px solid #dce3ec;border-radius:999px;padding:5px 12px;font-size:12px}.age-chip.on{color:#fff;background:#14437a;border-color:#14437a;font-weight:700}.course-form{gap:16px;display:grid}.course-form .checkbox-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.course-form .compose-card h4{color:#33445f;margin:14px 0 6px;font-size:13px;font-weight:800}.course-form .search-field{max-width:340px;margin-bottom:10px}.course-form .compose-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}@media (max-width:900px){.course-form .checkbox-grid{grid-template-columns:1fr}}.toolbar-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.toolbar-actions .primary-button,.toolbar-actions .secondary-button{white-space:nowrap}.chip-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.chip{border:1px solid var(--line);color:var(--brand-blue-dark);background:#eef6ff;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600}.chip.is-on{background:var(--brand-blue-dark);border-color:var(--brand-blue-dark);color:#fff}.result-count{color:var(--ink-muted);white-space:nowrap;margin-left:auto;font-size:12.5px}.list-shell{background:var(--panel);border:1px solid var(--line);border-radius:14px;overflow:hidden}.list-head,.list-row{grid-template-columns:minmax(0,2.3fr) 1fr 1.2fr 1.1fr auto;align-items:center;gap:14px;padding:12px 16px;display:grid}.list-head{color:var(--ink-muted);letter-spacing:.04em;text-transform:uppercase;background:#eef3fa;font-size:11px;font-weight:700}.list-row+.list-row{border-top:1px solid #edf1f7}.list-row:hover{background:#f8fbff}.cell-primary{flex-direction:column;gap:3px;min-width:0;display:flex}.cell-primary strong{font-size:14px}.cell-meta{color:var(--ink-muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;display:flex}.cell-numeric{font-size:13px}.cell-numeric small{color:var(--ink-muted);font-size:11.5px;display:block}.cell-actions{justify-content:flex-end;gap:6px;display:flex}.list-shell.is-wide .list-head,.list-shell.is-wide .list-row{grid-template-columns:minmax(180px,2fr) 96px minmax(140px,1.2fr) minmax(200px,2.2fr) 96px 88px}.list-empty{color:var(--ink-muted);text-align:center;grid-column:1/-1;padding:26px 16px}.section-stack{gap:18px;min-width:0;display:grid}.outcome-list{color:#33445f;margin:0;padding-left:18px;font-size:13.5px;line-height:1.5}.row-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.trainer-disclosure{border-top:1px solid var(--line);padding-top:10px}.trainer-disclosure summary{color:var(--brand-blue-dark);cursor:pointer;font-size:12.5px;font-weight:800}.trainer-notes{gap:10px;margin:10px 0 0;display:grid}.trainer-note{border:1px solid var(--line);background:#f8fbff;border-radius:10px;gap:4px;padding:10px 12px;display:grid}.trainer-note dt{color:var(--ink-muted);letter-spacing:.03em;text-transform:uppercase;font-size:11px;font-weight:900}.trainer-note dd{margin:0}.trainer-note dd p,.trainer-note dd li{color:#33445f;font-size:13px;line-height:1.5}.trainer-note dd p{margin:0}.trainer-note dd ul{margin:0;padding-left:18px}.trainer-json{border:1px solid var(--line);color:#33445f;background:#fff;border-radius:8px;margin:0;padding:8px 10px;font-size:12px;overflow-x:auto}.readiness{color:#b26b00;margin-top:3px;font-size:11.5px;display:block}.status-pill.published{color:#067647;background:#e7f8ef}.status-pill.draft{color:#b26b00;background:#fff4dc}.status-pill.archived,.status-pill.neutral{color:#5b6b81;background:#eef1f5}.status-pill.success{color:#067647;background:#e7f8ef}.notice-panel{border:1px solid #cfe0f7;border-left:3px solid var(--brand-blue);background:#eef6ff;border-radius:10px;padding:12px 14px}.notice-panel>strong{margin-bottom:4px;display:block}.readonly-block{border:1px dashed var(--line);background:#f8fbff;border-radius:10px;padding:10px 12px}.readonly-block .readonly-row{justify-content:space-between;padding:3px 0;font-size:12.5px;display:flex}.readonly-block .readonly-row span:first-child{color:var(--ink-muted)}.course-card-meta{color:var(--ink-muted);flex-wrap:wrap;gap:10px;font-size:12px;display:flex}.course-card-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto;display:flex}.course-card-footer{flex-wrap:wrap}.learner-action-primary{background:var(--brand-blue-dark);color:#fff;white-space:nowrap;border-radius:999px;align-items:center;min-height:34px;padding:8px 14px;font-weight:900;display:inline-flex}.course-card-footer a.secondary-button{color:var(--brand-blue-dark);background:#eef6ff}.course-card-footer button.secondary-button:disabled{cursor:default;opacity:.75}.learner-action-note{color:var(--ink-muted);margin:-8px 0 0;font-size:12px;font-weight:600}.course-price{color:var(--ink);white-space:nowrap;font-size:14px;font-weight:700}.course-price.is-unavailable{color:var(--ink-muted);font-weight:600}.course-offers .course-price{margin-left:auto}.checkout-outcomes{gap:16px;display:grid}.checkout-outcome{justify-items:start;gap:6px;display:grid}.compose-form{gap:16px;min-width:0;display:grid}.notice-panel.is-warning{background:#fff8e8;border-color:#f2d9a6 #f2d9a6 #f2d9a6 #b26b00}.notice-panel.is-warning>strong{color:#8a5300}.notice-panel ul{margin:6px 0 0;padding-left:18px}.notice-panel li,.notice-panel p{font-size:13px;line-height:1.5}.notice-panel p{margin:6px 0 0}.list-shell.is-tight .list-head,.list-shell.is-tight .list-row{grid-template-columns:minmax(0,1fr) auto auto}.compose-actions.is-sticky{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid var(--line);z-index:3;background:#f8fbfff0;border-radius:12px;padding:12px 14px;position:sticky;bottom:0}.compose-actions .card-sub{color:var(--ink-muted);max-width:64ch;margin:0 auto 0 0;font-size:13px}.delivery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.delivery-mode{border:1px solid var(--line);background:#fbfdff;border-radius:10px;gap:12px;padding:14px;display:grid}.delivery-mode-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.delivery-mode-head b{font-size:13.5px}.offer-toggle{color:#34445f;align-items:center;gap:7px;font-size:12.5px;font-weight:800;display:inline-flex}.modal-panel.is-form{width:100%;max-width:560px}.modal-panel.is-form-pair{width:100%;max-width:880px}.modal-panel h4{color:#33445f;margin:0 0 12px;font-size:13px;font-weight:800}.availability-panel{flex-direction:column;gap:16px;display:flex}.availability-summary{color:var(--ink-muted);flex-direction:column;gap:4px;display:flex}.availability-summary strong{color:var(--foreground)}.availability-note{color:var(--ink-muted);font-size:12.5px}.availability-grid{--availability-row:26px;background:var(--panel);border:1px solid var(--line);border-radius:12px;overflow:hidden}.availability-grid-head,.availability-grid-body{grid-template-columns:4.5rem repeat(7,minmax(0,1fr));display:grid}.availability-grid-head{border-bottom:1px solid var(--line);background:#eef4fc}.availability-grid-corner,.availability-grid-weekday{padding:6px 8px}.availability-grid-weekday{border-left:1px solid var(--line);color:var(--ink-muted);letter-spacing:.04em;text-align:center;text-transform:uppercase;font-size:11.5px;font-weight:700}.availability-grid-weekday.today{color:var(--ink)}.availability-grid-weekday.today small{letter-spacing:.06em;color:var(--accent,#c07f16);font-size:9.5px;font-weight:700;display:block}.availability-upcoming{margin-top:14px}.availability-upcoming h3{margin:0 0 6px;font-size:13px}.availability-upcoming ul{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.availability-upcoming li{border-top:1px solid var(--line);align-items:baseline;gap:10px;padding:5px 2px;display:flex}.availability-upcoming-when{color:var(--ink-muted);min-width:15rem;font-size:12.5px}.availability-upcoming-what{font-size:12.5px;font-weight:600}.availability-grid-body{max-height:32rem;position:relative;overflow-y:auto}.availability-grid-body:before{background-image:repeating-linear-gradient(to bottom,var(--line) 0,var(--line) 1px,transparent 1px,transparent calc(var(--availability-row) * 2));content:"";pointer-events:none;grid-area:1/1/-1/-1}.availability-grid-time{color:#94a3b8;text-align:right;padding-right:8px;font-size:10.5px;transform:translateY(-.5em)}.availability-grid-time.on-hour{color:var(--foreground);font-weight:700}.availability-block{border:1px solid #9bd9b8;border-left:3px solid var(--brand-green);color:#1c6b43;z-index:1;background:linear-gradient(#e6f7ee,#d3f0e0);border-radius:6px;flex-direction:column;align-self:stretch;gap:1px;margin:1px 3px;padding:3px 6px;font-size:11.5px;display:flex;overflow:hidden}.availability-block.clipped{border-style:dashed}.availability-block-time{white-space:nowrap;font-weight:700}.availability-block-duration{color:var(--ink-muted)}.availability-legend{color:var(--ink-muted);flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;display:flex}.availability-swatch{border:1px solid;border-radius:3px;width:16px;height:11px;display:inline-block}.availability-swatch.available{border-color:#9bd9b8;border-left:3px solid var(--brand-green);background:#d3f0e0}.availability-swatch.booked{background:repeating-linear-gradient(45deg,#ffe8bd,#ffe8bd 3px,#ffdd9c 3px 6px);border-color:#e0b463 #e0b463 #e0b463 #c07f16;border-left-style:solid;border-left-width:3px;margin-left:12px}.availability-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.availability-actions{align-items:center;gap:8px;display:flex}.availability-actions .time-zone-switcher{border-left:1px solid var(--line);margin-left:4px;padding-left:12px}.availability-grid-time small{color:var(--ink-muted);font-size:10px;font-weight:600;display:block}.availability-dirty{color:#b45309;font-size:12.5px;font-weight:700}.availability-clean{color:var(--ink-muted);font-size:12.5px}.availability-conflicts{background:#fff8e6;border:1px solid #f0d48a;border-radius:10px;padding:12px 16px}.availability-conflicts h3{margin:0 0 6px;font-size:13px}.availability-conflicts ul{margin:0 0 8px;padding-left:18px}.availability-conflicts li{font-size:12.5px}.availability-grid-body{touch-action:none;-webkit-user-select:none;user-select:none}.availability-grid-column{cursor:crosshair}.availability-grid-column:hover{background:#1565d80f}.availability-block{cursor:grab;position:relative}.availability-block:active{cursor:grabbing}.availability-block.preview{opacity:.75;pointer-events:none}.availability-block-locked{color:#8a5a06;font-weight:700}.availability-class-mark{color:#8a5a06;pointer-events:none;z-index:2;background:repeating-linear-gradient(45deg,#ffe8bd,#ffe8bd 5px,#ffdd9c 5px 10px);border:1px solid #e0b463;border-left:3px solid #c07f16;border-radius:4px;flex-direction:column;align-self:stretch;gap:1px;margin:1px 3px;padding:2px 6px;font-size:10.5px;display:flex;overflow:hidden}.availability-class-mark-time{white-space:nowrap;font-weight:700}.availability-class-mark-day{white-space:nowrap;align-items:center;gap:4px;display:flex}.availability-class-mark-count{color:#fff;background:#c07f16;border-radius:6px;padding:0 4px;font-size:9px;font-weight:700}.availability-class-mark-label{opacity:.85}.availability-block-handle{cursor:ns-resize;height:7px;position:absolute;left:0;right:0}.availability-block-handle.top{top:0}.availability-block-handle.bottom{bottom:0}.availability-block-delete{color:inherit;cursor:pointer;opacity:.55;background:0 0;border:none;border-radius:4px;align-items:center;padding:1px;display:flex;position:absolute;top:2px;right:2px}.availability-block-delete:hover{opacity:1;background:#00000014}.availability-cell{align-items:center;gap:8px;display:flex}.availability-missing{color:#b45309;font-weight:700}.availability-callout{background:#eef6ff;border:1px solid #bcd8f7;border-radius:10px;padding:12px 16px}.availability-callout p{margin:0 0 8px}.availability-callout ul{flex-wrap:wrap;gap:10px 18px;margin:0;padding:0;list-style:none;display:flex}.availability-callout a{font-weight:700}.ra-lede{color:#66788f;max-width:860px;margin:4px 0 16px;font-size:12.5px}.ra-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:12px;display:grid}.ra-card{background:#fff;border:1px solid #dce3ec;border-radius:12px;padding:14px}.ra-card small{color:#66788f;text-transform:uppercase;letter-spacing:.4px;font-size:11px}.ra-card strong{color:#24344d;margin-top:6px;font-size:30px;display:block}.ra-card .ra-muted{margin-top:2px;font-size:11px;display:block}.ra-block{background:#fff;border:1px solid #dce3ec;border-radius:12px;margin-bottom:18px;padding:14px 16px}.ra-title{color:#24344d;margin:0 0 8px;font-size:15px}.ra-table{border-collapse:collapse;width:100%;font-size:12.5px}.ra-table th{color:#24344d;text-align:left;text-transform:uppercase;letter-spacing:.4px;background:#eef3fa;padding:8px 10px;font-size:11px}.ra-table td{color:#24344d;border-top:1px solid #edf1f7;padding:8px 10px}.ra-name{font-weight:700}.ra-subline{color:#66788f;margin-top:2px;font-size:11px;font-weight:400;display:block}.ra-muted{color:#66788f}.ra-footnote{color:#66788f;margin-top:4px;font-size:11.5px}.ra-scale{white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.ra-scale strong{color:#24344d;font-size:14px}.ra-scale-bar{background:#eef1f5;border-radius:999px;width:72px;height:8px;display:inline-block;overflow:hidden}.ra-scale-fill{background:#2459a5;border-radius:999px;height:100%;display:block}.ra-toolbar{background:var(--panel,#fff);border:1px solid var(--line,#e2e8f0);border-radius:10px;flex-wrap:wrap;align-items:center;gap:10px;margin:6px 0 16px;padding:12px;display:flex}.ra-toolbar label{color:#66788f;align-items:center;gap:6px;font-size:12.5px;display:inline-flex}.ra-toolbar input[type=date]{color:#24344d;background:#fff;border:1px solid #dce3ec;border-radius:9px;outline:0;min-height:38px;padding:0 10px;font-size:12.5px}.ra-toolbar input[type=date]:focus-visible{border-color:var(--brand-blue,#2563eb);outline:2px solid var(--brand-blue,#2563eb)}.ra-select{appearance:none;color:#24344d;cursor:pointer;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;border:1px solid #dce3ec;border-radius:9px;outline:0;min-width:180px;min-height:38px;padding:0 32px 0 12px;font-family:inherit;font-size:13px}.ra-select:focus-visible{border-color:var(--brand-blue,#2563eb);outline:2px solid var(--brand-blue,#2563eb)}.code-editor-loading{color:#d7e3f499;justify-content:center;align-items:center;margin:0;display:flex}.session-outline-meta{color:var(--ink-muted);white-space:nowrap;font-size:13px}.payments-table .table-row{grid-template-columns:minmax(180px,1fr) minmax(220px,1.4fr) 120px 140px 110px}.payments-table .table-row small{color:var(--ink-muted);margin-top:4px;display:block}.metric-card .metric-text{overflow-wrap:anywhere;font-size:15px}.checkbox-row{flex-direction:row;align-items:center;gap:8px;display:flex}.checkbox-row input{width:auto}@media (max-width:720px){.payments-table .table-row{grid-template-columns:1fr}}.record-payment-shortcut{gap:8px;max-width:520px;display:grid}.record-payment-shortcut label{gap:6px;display:grid}.record-payment-shortcut .label-row{align-items:center;gap:6px;display:inline-flex}.typeahead-results{background:var(--panel);border:1px solid var(--line);border-radius:12px;max-height:260px;margin:0;padding:6px;list-style:none;overflow-y:auto}.typeahead-results li+li{border-top:1px solid #edf1f7}.typeahead-results .muted-note{padding:8px 10px}.typeahead-option{cursor:pointer;text-align:left;background:0 0;border:0;border-radius:8px;gap:2px;width:100%;padding:8px 10px;display:grid}.typeahead-option:hover,.typeahead-option:focus-visible{background:#f2f6fd}.typeahead-option small{color:var(--ink-muted)}.pill-cluster{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:inline-flex}.classroom-delivery-pill{vertical-align:middle;margin-left:8px}.schedule-delivery{gap:4px;display:grid}.schedule-delivery span{color:var(--ink-muted);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:700}.schedule-delivery select{min-width:130px;font-size:13px}.trainer-led-panel{grid-template-rows:auto minmax(0,1fr) auto}.trainer-led-head{align-items:center;gap:10px;min-width:0;display:flex}.trainer-led-icon{color:var(--brand-blue);background:#eef4ff;border-radius:8px;flex:none;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.trainer-led-page-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:15px;overflow:hidden}.trainer-led-counter{color:var(--ink-muted);font-variant-numeric:tabular-nums;font-size:12px;font-weight:700}.trainer-led-body{min-height:0;padding-right:4px;overflow-y:auto}.trainer-led-foot{gap:10px;display:grid}.trainer-led-nav{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.trainer-led-nav button{align-items:center;gap:4px;display:inline-flex}.trainer-led-nav .muted-note{font-size:12px}.trainer-led-tasks{border:1px solid var(--line);border-radius:8px;padding:8px 10px}.trainer-led-tasks summary{cursor:pointer;align-items:center;gap:8px;font-size:13px;font-weight:700;list-style:none;display:flex}.trainer-led-tasks summary::-webkit-details-marker{display:none}.trainer-led-tasks summary strong{color:var(--brand-blue);margin-left:auto}.trainer-led-tasks[open] summary{margin-bottom:10px}.trainer-led-tasks .task-list{max-height:34vh;overflow-y:auto}.page-markdown{gap:10px;font-size:15px;line-height:1.55;display:grid}.page-markdown h3{margin:0;font-size:18px}.page-markdown h4{margin:6px 0 0;font-size:16px}.page-markdown h5,.page-markdown h6{margin:4px 0 0;font-size:14px}.page-markdown p,.page-markdown ul,.page-markdown ol{margin:0}.page-markdown ul,.page-markdown ol{gap:4px;padding-left:22px;display:grid}.page-markdown code{border:1px solid var(--line);font-family:var(--font-mono);background:#f1f5fb;border-radius:4px;padding:1px 5px;font-size:.92em}.page-markdown pre.page-code{color:#e2e8f0;font-family:var(--font-mono);background:#0f172a;border-radius:8px;margin:0;padding:12px 14px;font-size:13px;line-height:1.5;overflow-x:auto}.page-markdown pre.page-code code{color:inherit;font-size:inherit;background:0 0;border:0;padding:0}.page-markdown blockquote{border-left:4px solid var(--brand-yellow);background:#fffbe6;border-radius:0 8px 8px 0;margin:0;padding:10px 12px}.page-table-wrap{overflow-x:auto}.page-markdown table{border-collapse:collapse;width:100%;font-size:14px}.page-markdown th,.page-markdown td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:6px 8px}.page-markdown th{background:#f8fbff}.page-markdown a{color:var(--brand-blue)}.external-workbench{place-items:center;padding:24px;display:grid}.external-workbench-card{text-align:center;place-items:center;gap:10px;max-width:380px;display:grid}.external-workbench-card h3{margin:0;font-size:18px}.external-workbench-icon{color:var(--brand-blue);background:#eef4ff;border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex}.external-workbench-host{color:var(--ink-muted);font-family:var(--font-mono);margin:0;font-size:13px}.external-workbench-card .primary-button{align-items:center;gap:6px;text-decoration:none;display:inline-flex}.external-workbench-card .muted-note{margin:0}.python-workbench{grid-template-rows:auto auto minmax(0,1fr);display:grid}.python-toolbar{justify-content:space-between;align-items:center;gap:10px;display:flex}.python-file-name{color:var(--ink-muted);font-family:var(--font-mono);font-size:13px;font-weight:700}.python-run-controls{align-items:center;gap:8px;display:flex}.python-run-controls button{align-items:center;gap:6px;display:inline-flex}.python-split{grid-template-rows:minmax(0,3fr) minmax(140px,2fr);min-height:0;display:grid}.python-editor-pane{min-height:0;overflow:hidden}.python-editor,.python-editor .cm-editor{height:100%}.python-editor .cm-editor{font-size:14px}.python-output{border-top:1px solid var(--line);grid-template-rows:auto minmax(0,1fr);min-height:0;display:grid}.python-output-tabs{border-bottom:1px solid var(--line);background:#f8fbff;align-items:center;gap:4px;padding:4px 8px;display:flex}.python-output-tabs button{color:var(--ink-muted);cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:6px;padding:4px 8px;font-size:12px;font-weight:700;display:inline-flex}.python-output-tabs button.active{border:1px solid var(--line);color:var(--foreground);background:#fff}.python-output-tabs button:disabled{cursor:default;opacity:.5}.python-status{color:var(--ink-muted);margin-left:auto;font-size:12px}.python-console{color:#e2e8f0;font-family:var(--font-mono);background:#0f172a;gap:8px;min-height:0;padding:10px 12px;font-size:13px;display:grid;overflow-y:auto}.python-console[hidden],.python-drawing[hidden]{display:none}.python-console-text{white-space:pre-wrap;word-break:break-word;margin:0}.python-console-text:empty:before{color:#64748b;content:"Press Run to see what your program prints."}.python-console-err{color:#fca5a5}.python-console-info{color:#94a3b8;font-style:italic}.python-input-form input{color:#e2e8f0;font-family:var(--font-mono);background:#1e293b;border:1px solid #334155;border-radius:6px;width:100%;padding:6px 8px;font-size:13px}.python-input-form input:focus{border-color:var(--brand-yellow);outline:none}.python-error{border-left:4px solid var(--brand-red);background:#1e1b2e;border-radius:0 8px 8px 0;gap:6px;padding:10px 12px;display:grid}.python-error strong{color:#fda4af}.python-error p{margin:0}.python-error-message{color:#e2e8f0}.python-error-hint{color:#fde68a;font-family:var(--font-sans)}.python-error .secondary-button{justify-self:start}.python-drawing{background:#fff;place-items:center;min-height:0;padding:8px;display:grid;overflow:auto}.python-drawing canvas{max-width:100%}.python-runner-host{width:0;height:0;position:relative;overflow:hidden}.python-notebook-pending{margin:auto}.python-notebook{grid-template-rows:auto auto minmax(0,1fr)}.python-notebook .python-status{margin-left:4px}.notebook-scroll{min-height:0;padding:10px 12px 24px;overflow-y:auto}.notebook-cells{gap:4px;margin:0;padding:0;list-style:none;display:grid}.notebook-cell{border:1px solid #0000;border-radius:8px;grid-template-columns:30px minmax(0,1fr) auto;gap:0 8px;padding:6px 6px 2px;display:grid;position:relative}.notebook-cell:hover,.notebook-cell:focus-within{border-color:var(--line);background:#f8fbff}.notebook-cell.has-error{border-color:#fecaca}.notebook-cell-gutter{justify-items:center;padding-top:4px;display:grid}.notebook-run-cell{background:var(--brand-blue);color:#fff;cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;width:24px;height:24px;display:inline-flex}.notebook-run-cell:disabled{cursor:default;background:#cbd5e1}.notebook-md-mark{color:var(--ink-muted);padding-top:3px;display:inline-flex}.notebook-cell-body{gap:6px;min-width:0;display:grid}.notebook-cell-code .python-editor-auto .cm-editor{border-radius:8px;overflow:hidden}.notebook-md{padding:4px 6px}.notebook-md .page-markdown{font-size:14px}.notebook-md-editor{justify-items:end;gap:6px;display:grid}.notebook-md-editor textarea{font-family:var(--font-mono);resize:vertical;width:100%;padding:8px;font-size:13px}.notebook-output{color:#e2e8f0;font-family:var(--font-mono);background:#0f172a;border-radius:8px;gap:8px;padding:8px 10px;font-size:13px;display:grid}.notebook-output .python-console-text:empty{display:none}.notebook-cell-tools{opacity:0;align-self:start;gap:2px;transition:opacity .12s;display:flex}.notebook-cell:hover .notebook-cell-tools,.notebook-cell:focus-within .notebook-cell-tools{opacity:1}.notebook-cell-tools .icon-button{width:26px;height:26px}.notebook-cell-tools .icon-button.danger{color:#b91c1c;background:#fee2e2}.notebook-add{opacity:0;grid-column:2;justify-content:center;gap:6px;padding:2px 0;transition:opacity .12s;display:flex}.notebook-cell:hover .notebook-add,.notebook-cell:focus-within .notebook-add,.notebook-add-first{opacity:1}.notebook-add button{border:1px dashed var(--line);color:var(--ink-muted);cursor:pointer;background:#fff;border-radius:999px;align-items:center;gap:4px;padding:2px 10px;font-size:11px;font-weight:700;display:inline-flex}.notebook-add button:hover{border-color:var(--brand-blue);color:var(--brand-blue)}.notebook-add-first{margin:12px 0}.notebook-drawing{border:1px solid var(--line);border-radius:8px;justify-items:center;gap:6px;margin-top:12px;padding:8px;display:grid}.notebook-drawing[hidden]{display:none}.notebook-drawing-head{color:var(--ink-muted);align-self:start;align-items:center;gap:6px;font-size:12px;font-weight:700;display:inline-flex}.notebook-drawing canvas{max-width:100%}.python-workbench{position:relative}.python-live-controls{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.python-live-badge{color:#067647;letter-spacing:.04em;text-transform:uppercase;background:#ecfdf3;border:1px solid #abefc6;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:11px;font-weight:800;display:inline-flex}.python-live-badge.paused{color:#92400e;text-transform:none;background:#fffbe6;border-color:#fde68a}.python-live-feedback{font-size:12px}.python-control-banner{color:#92400e;background:#fffbe6;border-bottom:1px solid #fde68a;align-items:center;gap:8px;margin:0;padding:8px 12px;font-size:13px;font-weight:700;display:flex}.blocks-split{grid-template-rows:minmax(0,3fr) minmax(140px,2fr)}.blocks-editor-pane{min-height:0;position:relative;overflow:hidden}.blocks-editor{width:100%;height:100%;min-height:240px}.blocks-editor-loading{color:var(--ink-muted);place-items:center;font-size:13px;display:grid}.blocks-editor .blocklySvg{background:#fbfdff}.blocks-python .python-console-text{color:#c7d2fe}.stage-split{grid-template-rows:minmax(0,3fr) minmax(220px,2fr)}.stage-editor-pane{min-height:0;display:grid}.stage-editor-host{min-height:0}.stage-editor-host[hidden]{display:none}.stage-code{min-height:0}.stage-code .python-console-text{color:#c7d2fe}.stage-tabs{background:0 0;border:0;padding:0}.stage-pane{border-top:1px solid var(--line);grid-template-rows:minmax(0,1fr) auto auto;grid-template-columns:minmax(0,1fr);gap:8px;min-height:0;padding:8px 10px 10px;display:grid}.stage-canvas-wrap{aspect-ratio:4/3;border:1px solid var(--line);background:#dff0ff;border-radius:10px;justify-self:center;max-width:100%;max-height:100%;position:relative;overflow:hidden}.stage-canvas{touch-action:none;width:100%;height:100%;display:block}.stage-idle-hint{color:#fff;background:#1522388c;border-radius:999px;align-items:center;gap:4px;padding:3px 8px;font-size:11px;font-weight:600;display:inline-flex;position:absolute;top:8px;left:8px}.stage-ask{border:1px solid var(--line);background:#fff;border-radius:10px;gap:6px;padding:6px;display:flex;position:absolute;bottom:8px;left:8px;right:8px;box-shadow:0 6px 20px #15223826}.stage-ask input{border:1px solid var(--line);font:inherit;border-radius:8px;flex:1;min-width:0;padding:6px 10px}.stage-sprites{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.stage-sprite-chip{border:1px solid var(--line);background:#f1f6fc;border-radius:999px;align-items:center;gap:5px;padding:3px 8px 3px 6px;font-size:13px;font-weight:600;display:inline-flex}.stage-sprite-emoji{font-size:17px;line-height:1}.stage-sprite-chip button{color:var(--ink-muted);cursor:pointer;background:0 0;border:0;align-items:center;padding:0 2px;display:inline-flex}.stage-sprite-chip button:hover{color:var(--brand-red)}.stage-add-sprite,.stage-backdrop{border:1px solid var(--line);font:inherit;background:#fff;border-radius:999px;padding:3px 10px;font-size:13px;font-weight:600}.stage-backdrop{margin-left:auto}.stage-log{color:var(--ink-muted);font-family:var(--font-mono);gap:2px;min-height:18px;max-height:64px;font-size:12px;display:grid;overflow:auto}.stage-log-error{color:var(--brand-red)}@media (min-width:1400px){.classroom-grid.call-collapsed .stage-split{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(0,1fr) minmax(320px,480px)}.classroom-grid.call-collapsed .stage-pane{border-left:1px solid var(--line);border-top:0}}.phone-field{grid-template-columns:minmax(7.5rem,11rem) minmax(0,1fr);gap:8px;min-width:0;display:grid}.phone-field select,.phone-field input{min-width:0}.country-field{gap:8px;min-width:0;display:grid}.catalog-page{gap:28px}.catalog-page>.page-toolbar{background:0 0;border:0;padding:8px 0 0}.catalog-page>.page-toolbar h2{letter-spacing:-1px;font-size:32px}.catalog-page>.page-toolbar p{max-width:620px;margin-top:7px}.catalog-page nav[aria-label=Course\ view]{background:#eaf0f7;border-radius:10px;gap:3px;padding:4px;display:inline-flex}.catalog-page nav[aria-label=Course\ view] a{color:#64748b;background:0 0;border:0;border-radius:7px;padding:8px 13px;font-size:12px}.catalog-page nav[aria-label=Course\ view] a[aria-current=page]{color:#175cd3;background:#fff;box-shadow:0 1px 4px #162a4510}.catalog-browser{gap:24px;min-width:0;display:grid}.catalog-toolbar{align-items:center;gap:12px;min-width:0;display:flex}.catalog-toolbar .search-field{color:#64748b;background:#fff;border:1px solid #dce3ed;border-radius:10px;flex:1;align-items:center;gap:10px;min-width:0;max-width:520px;height:44px;padding:0 14px;display:flex}.catalog-toolbar .search-field input{width:100%;min-width:0;box-shadow:none;background:0 0;border:0;padding:0;font-size:13px}.catalog-filter-toggle{color:#334155;height:44px;font:inherit;background:#fff;border:1px solid #dce3ed;border-radius:10px;padding:0 14px;font-size:13px}.catalog-track-select{appearance:none;color:#334155;font:inherit;cursor:pointer;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;border:1px solid #dce3ed;border-radius:10px;outline:0;max-width:220px;height:44px;padding:0 34px 0 14px;font-size:13px}.catalog-track-select:focus-visible{outline-offset:2px;outline:2px solid #175cd3}.catalog-filter-toggle{cursor:pointer;white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.catalog-filter-toggle[aria-expanded=true]{color:#175cd3;background:#eff6ff;border-color:#175cd3}.catalog-filter-toggle>span{color:#fff;background:#175cd3;border-radius:50%;place-items:center;width:20px;height:20px;font-size:11px;display:inline-grid}.catalog-toolbar .result-count{white-space:nowrap;color:#64748b;margin-left:auto;font-size:12px}.catalog-filter-panel{background:#fff;border:1px solid #dce3ed;border-radius:12px;grid-template-columns:1fr 1fr 2fr 1fr;gap:24px;padding:22px;display:grid}.catalog-filter-panel[hidden]{display:none}.catalog-filter-panel .filter-group{min-width:0;margin:0}.catalog-filter-panel legend{color:#475569;margin-bottom:12px;font-size:12px;font-weight:700}.catalog-filter-panel .chip-row{gap:4px;display:grid}.catalog-filter-panel [data-filter-group=skill] .chip-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 20px}.catalog-filter-option{text-align:left;color:#475569;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:5px;align-items:center;gap:8px;padding:6px 0;font-size:12px;display:flex}.catalog-filter-option:hover{color:#175cd3}.catalog-filter-check{border:1px solid #cbd5e1;border-radius:4px;flex-shrink:0;place-items:center;width:15px;height:15px;font-size:11px;display:inline-grid}.catalog-filter-option.is-on .catalog-filter-check{color:#fff;background:#175cd3;border-color:#175cd3}.catalog-filter-count{color:#94a3b8;margin-left:auto;font-size:11px}.catalog-active-filters{flex-wrap:wrap;gap:8px;display:flex}.catalog-active-filters .chip{border-radius:6px;align-items:center;gap:8px;font-weight:500;display:inline-flex}.catalog-track-section{gap:16px;min-width:0;display:grid}.catalog-track-section>.section-heading{padding-top:6px}.catalog-track-section>.section-heading h3{align-items:center;gap:9px;display:flex}.catalog-track-section>.card-sub{margin:-8px 0 4px}.catalog-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:22px}.catalog-grid:has(.course-card:only-child){grid-template-columns:minmax(0,360px)}.catalog-card.course-card{--course-tint:#eaf2ff;--course-accent:#365fad;background:#fff;border:1px solid #e1e7ef;border-radius:14px;flex-direction:column;gap:0;min-height:0;padding:0;display:flex;overflow:hidden;box-shadow:0 2px 4px #162a4503}.catalog-card--python.course-card{--course-tint:#e8f3ed;--course-accent:#37735d}.catalog-card--web.course-card{--course-tint:#eeecfb;--course-accent:#6653ac}.catalog-card--blocks.course-card{--course-tint:#fff0e4;--course-accent:#b36832}.catalog-card.course-card:hover{border-color:#bccbdf;transform:translateY(-2px);box-shadow:0 8px 24px #162a450a}.catalog-card-art{background:var(--course-tint);height:126px;color:var(--course-accent);flex-shrink:0;position:relative;overflow:hidden}.catalog-art-label{letter-spacing:.08em;text-transform:uppercase;max-width:42%;font-size:11px;font-weight:700;position:absolute;top:22px;left:22px}.catalog-art-window{border:1px solid var(--course-accent);width:145px;height:100px;position:absolute;top:22px;right:24px}@supports (color:color-mix(in lab, red, red)){.catalog-art-window{border:1px solid color-mix(in srgb, var(--course-accent) 18%, transparent)}}.catalog-art-window{background:#ffffffb0;border-radius:9px;justify-content:center;align-items:center;gap:12px;display:flex;transform:rotate(-6deg);box-shadow:0 6px 16px #162a4505}.catalog-art-dots{gap:4px;display:flex;position:absolute;top:10px;left:12px}.catalog-art-dots i{background:var(--course-accent);opacity:.35;border-radius:50%;width:4px;height:4px}.catalog-art-lines{gap:7px;width:35px;display:grid}.catalog-art-lines i{background:var(--course-accent);opacity:.2;border-radius:2px;height:4px}.catalog-art-lines i:nth-child(2){width:70%}.catalog-art-orbit{opacity:.13;border:1px solid;border-radius:50%;width:110px;height:110px;position:absolute;bottom:-72px;left:26px}.catalog-card-body{flex-direction:column;flex:1;gap:14px;padding:22px;display:flex}.catalog-card-kicker{color:#64748b;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;font-size:11px;font-weight:600;display:flex}.catalog-sale-status{align-items:center;gap:5px;font-size:10px;font-weight:500;display:inline-flex}.catalog-sale-status:before{content:"";background:#94a3b8;border-radius:50%;width:5px;height:5px}.catalog-sale-status.published:before{background:#299565}.catalog-sale-status.draft:before{background:#ca8a04}.catalog-recommended{color:#067647}.catalog-card.course-card h3{letter-spacing:-.4px;margin:0;font-size:20px;line-height:1.3}.catalog-card h3 a{color:#1e293b;text-decoration:none}.catalog-card h3 a:hover{color:#175cd3}.catalog-card.course-card .catalog-card-description{color:#64748b;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:43px;font-size:13px;line-height:1.65;display:-webkit-box;overflow:hidden}.catalog-card-facts{color:#64748b;flex-wrap:wrap;gap:6px 10px;font-size:11px;line-height:1.6;display:flex}.catalog-card-facts span+span:before{content:"·";color:#94a3b8;margin-right:10px}.catalog-card-commercial{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;margin-top:auto;padding-top:8px;display:flex}.catalog-card .course-price{letter-spacing:-.3px;font-size:18px;font-weight:650}.catalog-card .course-price.is-unavailable{letter-spacing:0;font-size:12px}.delivery-tag{letter-spacing:-.1px;white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:5px;font-weight:650;line-height:1.2;text-decoration:none;display:inline-flex}.delivery-tag--compact{padding:4px 9px;font-size:12px}.delivery-tag--large{padding:7px 13px;font-size:14px}.delivery-tag--centre{color:#8a5300;background:#fff5dd;border-color:#f2d68a}.delivery-tag--online{color:var(--brand-blue-dark);background:#eaf2ff;border-color:#c5dcfb}a.delivery-tag--centre:hover{color:#6d4100;background:#ffecc0;border-color:#e0bd5e}a.delivery-tag:focus-visible{outline:2px solid var(--brand-blue);outline-offset:2px}.catalog-card .delivery-tag{align-self:center}.delivery-row{gap:10px}.delivery-offer{align-items:center;gap:10px;margin:0;display:inline-flex}.delivery-offer-price{color:var(--ink,var(--foreground));font-size:14px;font-weight:700}.delivery-offer-label{color:var(--ink-muted);font-size:13px;font-weight:600}.catalog-card .course-card-footer{border-top:1px solid #eef1f5;gap:12px;padding-top:14px}.catalog-card .course-card-footer a{border-radius:8px;min-height:34px;font-size:12px;font-weight:600}.catalog-card .course-card-footer .catalog-view-link,.catalog-card .course-card-footer .catalog-edit-link,.catalog-card .course-card-footer a.secondary-button{color:#175cd3;background:0 0;border:0;align-items:center;gap:8px;padding:6px 0;display:inline-flex}.catalog-card .course-card-footer .catalog-edit-link{color:#64748b}.catalog-card .course-card-actions{justify-content:space-between;width:100%;margin-left:0}.catalog-card .course-card-actions .status-pill{padding:4px 7px;font-size:10px}.catalog-card .course-card-actions .learner-action-primary{background:#175cd3;padding:8px 12px}.catalog-card.course-card .learner-action-note{margin:0;font-size:11px}.catalog-browser :is(button,a,select,input):focus-visible{outline-offset:3px;outline:2px solid #175cd3}@media (max-width:1150px){.catalog-filter-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.catalog-filter-panel [data-filter-group=skill]{grid-column:1/-1}}@media (max-width:650px){.catalog-page{gap:20px}.catalog-page>.page-toolbar h2{font-size:28px}.catalog-toolbar{flex-wrap:wrap;gap:10px}.catalog-toolbar .search-field{flex-basis:100%;max-width:none}.catalog-track-select{flex:1;min-width:0;max-width:190px}:is(.catalog-grid,.catalog-grid:has(.course-card:only-child)){grid-template-columns:minmax(0,1fr);gap:18px}.catalog-filter-panel{gap:20px 16px;padding:16px}.catalog-card-body{padding:20px}.catalog-card-art{height:112px}.catalog-art-window{top:15px}}@media (prefers-reduced-motion:reduce){.catalog-card.course-card{transition:none;transform:none}}.communications-table .table-row{grid-template-columns:140px minmax(170px,1.2fr) 130px 140px minmax(240px,2fr) 120px}.communications-table .table-row small{color:var(--ink-muted);margin-top:3px;display:block}.student-whatsapp-table .table-row{grid-template-columns:150px 140px minmax(260px,2fr) 120px}.student-whatsapp-table .table-row small{color:var(--ink-muted);margin-top:3px;display:block}@media (max-width:900px){.communications-table .table-row,.student-whatsapp-table .table-row{grid-template-columns:1fr}}.pending-queue-btn{align-items:center;gap:6px;display:inline-flex}.notification-badge{color:#fff;background:#dc2626;border-radius:999px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 6px;font-size:11px;font-weight:800;line-height:1;display:inline-flex;box-shadow:0 1px 2px #0000001a}.curriculum-hero-bar{align-items:flex-start}.curriculum-eyebrow-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px;display:flex}.curriculum-back-link{color:var(--ink-muted);align-items:center;gap:5px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.curriculum-back-link:hover{color:var(--brand-blue-dark)}.curriculum-hero-desc{color:var(--ink-muted);max-width:75ch;margin:4px 0 0;font-size:15px;line-height:1.45}.curriculum-stat-strip{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin:4px 0 14px;display:grid}.curriculum-stat-item{background:var(--panel);border:1px solid var(--line);border-radius:12px;align-items:center;gap:12px;padding:14px 18px;display:flex;box-shadow:0 1px 2px #00000005}.curriculum-stat-icon{width:38px;height:38px;color:var(--brand-blue-dark);background:#eef6ff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.curriculum-stat-content{gap:2px;min-width:0;display:grid}.curriculum-stat-content strong{color:var(--foreground);font-size:15px;font-weight:800}.curriculum-stat-content span{color:var(--ink-muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.curriculum-highlights-card{background:var(--panel);border:1px solid var(--line);border-radius:14px;gap:18px;padding:22px 24px;display:grid;box-shadow:0 1px 3px #00000008}.curriculum-highlights-head{gap:10px;display:grid}.curriculum-meta-badges{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.badge-pill{border-radius:999px;align-items:center;gap:6px;padding:3px 10px;font-size:12px;font-weight:700;display:inline-flex}.level-badge{color:#6b21a8;background:#f3f0ff;border:1px solid #e9d5ff}.age-badge{color:#0f766e;background:#f0fdfa;border:1px solid #ccfbf1}.badge-pill.status-badge.published{color:#047857;background:#ecfdf5;border:1px solid #a7f3d0}.curriculum-tagline{color:var(--foreground);margin:0;font-size:16px;font-weight:500;line-height:1.5}.curriculum-outcome-banner{background:linear-gradient(135deg,#f0f7ff 0%,#f5f3ff 100%);border:1px solid #dbeafe;border-radius:12px;align-items:flex-start;gap:14px;padding:16px 18px;display:flex}.outcome-icon-wrap{color:#fff;background:#2563eb;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;margin-top:2px;display:flex}.outcome-body{gap:4px;min-width:0;display:grid}.outcome-label{text-transform:uppercase;letter-spacing:.05em;color:#1d4ed8;font-size:11px;font-weight:800}.outcome-text{color:#1e293b;margin:0;font-size:14px;line-height:1.55}.curriculum-skills-section{gap:8px;display:grid}.skills-heading{color:var(--ink-muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:700}.skills-chip-row{flex-wrap:wrap;gap:6px;display:flex}.skill-tag-pill{color:#334155;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:4px 10px;font-size:12px;font-weight:600}.curriculum-provenance-disclosure{border-top:1px solid var(--line);margin-top:2px;padding-top:14px}.curriculum-provenance-disclosure summary{color:var(--ink-muted);cursor:pointer;-webkit-user-select:none;user-select:none;font-size:12px;font-weight:700}.provenance-grid{gap:12px;margin-top:12px;display:grid}.provenance-note{align-items:center;gap:6px;margin:0;display:flex}.earlier-editions-row{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:10px;padding-top:8px;display:flex}.earlier-editions-label{color:var(--ink-muted);font-size:12px;font-weight:700}.session-library-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.session-plan-toolbar-actions{align-items:center;gap:8px;display:flex}.session-toggle-btn{align-items:center;gap:6px;font-size:12px;font-weight:600;display:inline-flex}.session-library-layout{align-items:start;gap:22px;display:grid}@media (min-width:1100px){.session-library-layout{grid-template-columns:270px minmax(0,1fr)}}.session-nav-sidebar{display:none}@media (min-width:1100px){.session-nav-sidebar{top:calc(var(--sticky-header-h,64px) + 16px);background:var(--panel);border:1px solid var(--line);border-radius:14px;max-height:calc(100vh - 120px);padding:14px;display:block;position:sticky;overflow-y:auto;box-shadow:0 1px 3px #00000008}}.session-nav-sidebar-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;margin-bottom:8px;padding-bottom:10px;display:flex}.session-nav-sidebar-header h4{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-muted);margin:0;font-size:12px;font-weight:800}.session-nav-count{color:var(--ink-muted);background:#f1f5f9;border-radius:999px;padding:2px 7px;font-size:11px;font-weight:700}.session-nav-list{gap:2px;margin:0;padding:0;list-style:none;display:grid}.session-nav-pill{color:var(--foreground);border-radius:8px;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 10px;font-size:13px;text-decoration:none;transition:background .15s,color .15s;display:grid}.session-nav-pill:hover{color:var(--brand-blue-dark);background:#f1f5f9}.session-nav-pill.is-active{color:var(--brand-blue-dark);background:#eef6ff;font-weight:700}.session-nav-badge{color:var(--ink-muted);font-variant-numeric:tabular-nums;font-size:11px;font-weight:800}.session-nav-pill.is-active .session-nav-badge{color:var(--brand-blue-dark)}.session-nav-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.session-nav-duration{color:var(--ink-muted);font-size:11px}.session-nav-rail{top:calc(var(--sticky-header-h,64px) + 8px);z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--line);background:#fffffff2;border-radius:999px;align-items:center;gap:10px;margin-bottom:12px;padding:6px 14px;display:flex;position:sticky;overflow-x:auto;box-shadow:0 2px 6px #0000000d}@media (min-width:1100px){.session-nav-rail{display:none}}.session-nav-rail-label{color:var(--ink-muted);white-space:nowrap;font-size:11px;font-weight:700}.session-nav-rail-chips{gap:6px;display:flex}.session-nav-rail-chip{color:var(--foreground);white-space:nowrap;background:#f1f5f9;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700;text-decoration:none}.session-nav-rail-chip:hover{background:#e2e8f0}.session-nav-rail-chip.is-active{background:var(--brand-blue-dark);color:#fff}.session-plans{gap:12px;margin:0;padding:0;list-style:none;display:grid}.session-plan{background:var(--panel);border:1px solid var(--line);scroll-margin-top:calc(var(--sticky-header-h,64px) + 24px);border-radius:14px;transition:border-color .15s,box-shadow .15s;box-shadow:0 1px 2px #00000005}.session-plan:hover{border-color:#cbd5e1}.session-plan details[open]{border-radius:14px}.session-plan-summary{color:inherit;cursor:default;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:16px;padding:16px 20px;list-style:none;display:grid}.session-plan details>.session-plan-summary{cursor:pointer}.session-plan details>.session-plan-summary::-webkit-details-marker{display:none}.session-plan details>.session-plan-summary:hover .session-plan-title,.session-plan details>.session-plan-summary:focus-visible .session-plan-title{color:var(--brand-blue-dark)}.session-plan details[open]>.session-plan-summary{border-bottom:1px solid var(--line)}.session-plan-number{color:var(--brand-blue-dark);background:#eef6ff;border-radius:10px;justify-content:center;align-items:center;width:44px;height:38px;font-size:14px;font-weight:800;display:inline-flex}.session-plan-heading{gap:3px;min-width:0;display:grid}.session-plan-title{color:var(--foreground);margin:0;font-size:16px;font-weight:700}.session-plan-description{color:var(--ink-muted);font-size:14px;line-height:1.45}.session-plan-meta-col{align-items:center;gap:12px;display:flex}.session-plan-meta{color:var(--ink-muted);white-space:nowrap;font-size:13px;font-weight:600}.session-plan-indicator{color:var(--ink-muted);align-items:center;transition:transform .2s;display:flex}.session-plan details[open]>summary .session-plan-indicator{transform:rotate(180deg)}.session-plan-body{gap:20px;padding:20px 22px 22px;display:grid}.session-plan-mission-banner{background:#f0f7ff;border:1px solid #bfdbfe;border-radius:10px;align-items:flex-start;gap:12px;padding:14px 16px;display:flex}.session-plan-mission-icon{color:#2563eb;flex-shrink:0;margin-top:2px}.session-plan-mission-content{gap:3px;min-width:0;display:grid}.session-plan-mission-label{text-transform:uppercase;letter-spacing:.05em;color:#1d4ed8;font-size:11px;font-weight:800}.session-plan-mission{color:#1e3a8a;margin:0;font-size:15px;font-weight:600;line-height:1.5}.session-plan-columns{grid-template-columns:minmax(0,3fr) minmax(240px,2fr);gap:24px;display:grid}@media (max-width:900px){.session-plan-columns{grid-template-columns:minmax(0,1fr)}}.session-plan-aside{align-content:start;gap:16px;display:grid}.session-plan-section{gap:10px;display:grid}.session-plan-section h4,.session-plan-section h5{color:var(--ink-muted);letter-spacing:.04em;text-transform:uppercase;align-items:center;gap:8px;margin:0;font-size:12px;font-weight:800;display:flex}.session-plan-count{color:var(--ink-muted);letter-spacing:0;text-transform:none;background:#eef2f7;border-radius:999px;padding:1px 8px;font-size:11px;font-weight:700}.session-plan-tasks{gap:10px;margin:0;padding-left:22px;list-style:decimal;display:grid}.session-plan-tasks li{color:var(--foreground);padding-left:4px;font-size:14px;line-height:1.5}.session-plan-tasks li::marker{color:var(--brand-blue-dark);font-weight:800}.session-plan-card{border:1px solid var(--line);background:#f8fafc;border-radius:10px;padding:14px 16px}.session-plan-artifact-text{color:#334155;margin:0;font-size:14px;line-height:1.5}.session-plan-outcomes{color:#334155;gap:6px;margin:0;padding-left:18px;font-size:13px;list-style:outside;display:grid}.session-plan-reflection{background:#fffdf5;border:1px solid #fde68a;border-radius:10px;padding:14px 16px}.session-plan-reflection h4{color:#92400e}.session-plan-reflection p{color:#78350f;margin:0;font-size:14px;font-weight:500;line-height:1.5}.session-pages-block{border-top:1px solid var(--line);gap:12px;margin-top:18px;padding-top:18px;display:grid}.session-pages-header{align-items:center;gap:8px;display:flex}.session-plan-pages-list{gap:12px;display:grid}.session-page-card{border:1px solid var(--line);background:var(--panel);border-radius:10px;overflow:hidden}.session-page-card-head{border-bottom:1px solid var(--line);background:#f8fafc;align-items:center;gap:10px;padding:10px 16px;display:flex}.session-page-number-pill{color:#475569;background:#e2e8f0;border-radius:6px;padding:2px 8px;font-size:11px;font-weight:700}.session-page-card-title{color:var(--foreground);margin:0;font-size:14px;font-weight:700}.session-page-card-body{max-width:72ch;padding:14px 18px;font-size:14px;line-height:1.6}.session-files-grid{margin-top:12px}.trainer-material-panel{background:#f8fafc;border:1px solid #cbd5e1;border-radius:12px;margin-top:18px;padding:16px 18px}.trainer-material-panel .trainer-disclosure summary{color:#334155;cursor:pointer;font-size:13px;font-weight:800}.trainer-material-panel .trainer-disclosure[open] summary{margin-bottom:10px}.course-sessions-section .session-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.session-heading-left,.session-heading-right{align-items:center;gap:10px;display:flex}.facts-grid{grid-template-columns:max-content minmax(0,1fr);gap:6px 18px;margin:0;display:grid}.facts-grid dt{color:var(--ink-muted);padding-top:1px;font-size:13px;font-weight:600}.facts-grid dd{overflow-wrap:anywhere;min-width:0;margin:0;line-height:1.5}.facts-grid.is-muted{font-size:13px}.facts-grid code{font-size:12px}.facts-grid+.facts-grid{border-top:1px solid var(--line);margin-top:12px;padding-top:12px}.session-library{gap:14px;display:grid}.schedule-form{gap:26px;display:grid}.schedule-form-row{flex-wrap:wrap;gap:22px;display:flex}.schedule-row-field{gap:8px;max-width:280px;display:grid}.schedule-field-label{color:var(--brand-blue-dark);font-size:14px;font-weight:800}.schedule-select{appearance:none;border:1px solid var(--line);color:var(--foreground);cursor:pointer;background-color:#fff;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;border-radius:8px;outline:0;min-width:150px;min-height:42px;padding:0 32px 0 12px}.schedule-select:focus-visible{outline:2px solid var(--brand-blue,#2563eb)}.schedule-select.compact{min-width:128px;min-height:38px}.schedule-fieldset{border:1px solid var(--line);border-radius:10px;gap:14px;margin:0;padding:18px;display:grid}.schedule-fieldset legend{color:var(--brand-blue-dark);padding:0 8px;font-size:13px;font-weight:900}.schedule-fieldset .field-help{margin:0}.schedule-times{flex-wrap:wrap;align-items:flex-end;gap:16px;display:flex}.schedule-time{gap:6px;display:grid}.schedule-time>span{color:var(--ink-muted);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:800}.schedule-days{gap:10px;margin-top:4px;display:grid}.schedule-day{border:1px solid var(--line);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:12px 14px;display:flex}.schedule-day:has(input[type=checkbox]:checked){background:#f5f9ff;border-color:#b9d3f2}.schedule-day:not(:has(input[type=checkbox]:checked)) .schedule-times{opacity:.55}.schedule-day-pick{align-items:center;gap:10px;min-width:150px;font-weight:800;display:inline-flex}.schedule-day-pick input{width:18px;height:18px}.schedule-form-actions{flex-wrap:wrap;gap:12px;display:flex}.schedule-options{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px;margin:0;padding:0;list-style:none;display:grid}@media (min-width:1360px){.schedule-options{grid-template-columns:repeat(3,minmax(0,1fr))}}.schedule-option{border:1px solid var(--line);border-radius:10px;flex-direction:column;gap:12px;padding:16px 18px;display:flex}.schedule-option-when{flex-wrap:wrap;gap:4px 14px;margin:0;font-size:16px;display:flex}.schedule-option-when span{align-items:baseline;gap:6px;display:inline-flex}.schedule-option-when strong{color:var(--brand-blue-dark)}.schedule-option p{margin:0}.schedule-option details summary{cursor:pointer;font-size:13px;font-weight:800}.schedule-option details ul{gap:6px;margin:10px 0 0;padding-left:20px;font-size:13px;display:grid}.schedule-option form{align-self:flex-start;margin-top:auto}@media (max-width:620px){.schedule-day{align-items:flex-start}.schedule-day-pick{min-width:0}}.class-chat:has(.trainer-guide-dock){grid-template-rows:auto minmax(0,1fr) auto auto}.trainer-guide-dock{background:#f3f8f5;border:1px solid #c8d9cf;border-radius:12px;min-width:0}.trainer-guide-dock>summary{cursor:pointer;color:#254f3d;align-items:center;gap:8px;padding:12px;display:flex}.trainer-guide-dock>summary span{margin-left:auto;font-size:11px}.trainer-guide-body{max-height:min(36vh,320px);padding:0 12px 12px;overflow-y:auto}.trainer-guide-controls{flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;display:flex}.trainer-guide-controls select{background:#fff;border:1px solid #c8d9cf;border-radius:6px;width:100%;min-width:0;padding:7px}.trainer-guide-controls button{background:#fff;border:1px solid #c8d9cf;border-radius:6px;padding:4px 8px}.trainer-guide-cue p{margin:9px 0;font-size:13px;line-height:1.5}.trainer-guide-plan>summary{cursor:pointer;border-top:1px solid #dbe6df;padding:8px 0;font-size:12px}.guided-student-message>p{margin:0}.guided-student-message details{margin-top:8px}.guided-student-message summary{cursor:pointer;font-size:13px}.student-next-action{color:#183354;background:#fff;border-left:3px solid #2364d2;border-radius:0 8px 8px 0;margin-top:12px;padding:12px 14px}.student-next-action>strong{letter-spacing:.07em;text-transform:uppercase;color:#315889;font-size:11px;display:block}.student-next-action>p{margin:5px 0 0;font-size:16px;font-weight:600;line-height:1.45}.class-pin-panel{border-radius:18px;gap:16px;padding:26px}.class-pin-panel .confirm-icon{border-radius:12px;width:40px;height:40px}.class-pin-form{gap:8px;display:grid}.class-pin-form h3{margin:0;font-size:20px}.class-pin-form label{gap:8px;margin-top:16px;display:grid}.class-pin-form .label-row{color:var(--ink-muted);font-size:12px;font-weight:700}.class-pin-form input{box-sizing:border-box;border:1px solid var(--line);width:100%;min-width:0;height:54px;color:var(--ink);letter-spacing:.45em;text-align:center;background:#f8f9ff;border-radius:10px;padding:10px 16px;font:600 24px/1.2 ui-monospace,monospace}.class-pin-form input::placeholder{color:#a7acc5}.class-pin-form input:focus-visible{outline:2px solid var(--brand-blue-dark);outline-offset:2px}.class-pin-form input[aria-invalid=true]{border-color:#b42318}.class-pin-form .confirm-actions{padding-top:16px}.class-pin-form .confirm-actions button{flex:1;justify-content:center;min-height:40px}.class-pin-form .form-error{color:#b42318}@media (max-width:420px){.class-pin-panel{grid-template-columns:minmax(0,1fr);padding:20px}.class-pin-panel .confirm-icon{display:none}}.classroom-course-line{align-items:center;gap:5px;min-width:0;display:flex}.classroom-course-line .classroom-course-caption{min-width:0}.classroom-course-line .course-title-info{flex:none}.classroom-course-line .course-title-info>summary{background:#eef6ff;border:1px solid #c6ddff;width:24px;height:24px;min-height:24px;padding:0}.classroom-course-line .classroom-delivery-pill{flex-shrink:0;padding:2px 6px;font-size:10px}.website-anatomy{color:#293348;background:#f8f6ef;min-width:0;padding:20px;overflow:auto}.anatomy-heading{max-width:600px;margin:0 auto 14px}.anatomy-heading>span{letter-spacing:.14em;color:#6b647c;font-size:10px;font-weight:700}.anatomy-heading h2{margin:5px 0;font-size:25px}.anatomy-heading p,.anatomy-tip{margin:4px 0;font-size:12px}.anatomy-paper{background:#fffefa;border:2px solid #475166;border-radius:9px 15px 8px 12px;max-width:600px;margin:auto;box-shadow:4px 5px #ded9cc}.anatomy-browser{color:#93869c;border-bottom:2px solid #475166;padding:7px 12px;font-size:10px}.anatomy-browser span{color:#687084;margin-left:20px}.anatomy-header,.anatomy-nav,.anatomy-footer{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:10px 14px;display:flex}.anatomy-header strong{font-size:19px}.anatomy-nav{background:#f0edff;border-block:1px dashed #a49db8;font-size:12px}.anatomy-label{color:#514168;cursor:pointer;background:#f3effe;border:1px solid #9587b4;border-radius:7px 4px 8px 5px;padding:5px 9px;font-size:11px;font-weight:650}.anatomy-label.selected{outline-offset:2px;background:#ded3fa;outline:2px solid #8973b2}.anatomy-label:focus-visible{outline-offset:3px;outline:3px solid #4338ca}.anatomy-section{padding:14px}.anatomy-section h3{margin:10px 0 5px;font-size:20px}.anatomy-section p{margin:0 0 10px;font-size:12px;line-height:1.5}.anatomy-landscape{background:#edf5ef;border:1.5px dashed #7b9a8c;border-radius:10px 4px;align-items:center;gap:10px;margin-bottom:12px;padding:6px 10px;display:flex}.anatomy-landscape svg{fill:none;stroke:#688b7a;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:65%;max-height:90px}.anatomy-card-section{padding:0 14px 14px}.anatomy-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:9px;display:grid}.anatomy-cards>div{background:#fff5dd;border:1.5px solid #b29970;border-radius:4px 9px 5px 8px;padding:10px;font-size:18px}.anatomy-cards strong,.anatomy-cards span{margin-top:4px;font-size:12px;display:block}.anatomy-cards span{font-size:10px}.anatomy-footer{border-top:1px dashed #a49db8;font-size:10px}.anatomy-caption{flex-wrap:wrap;gap:8px;max-width:600px;margin:16px auto 8px;font-size:12px;display:flex}.anatomy-tip{color:#6a6e79;max-width:600px;margin:auto}.website-lesson-panel{flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.website-lesson-panel>.website-anatomy,.website-lesson-panel>.classroom-workbench{flex:1;min-height:0}.website-lesson-tabs{background:#fff;border-bottom:1px solid #ddd9e8;flex-wrap:wrap;align-items:center;gap:8px;padding:8px 12px;display:flex}.website-lesson-tabs button{color:#514168;cursor:pointer;background:#fff;border:1px solid #d8d0e8;border-radius:7px;padding:6px 10px;font-size:12px}.website-lesson-tabs button[aria-pressed=true]{background:#eee7fc;border-color:#8973b2}.website-lesson-tabs span{color:#655a77;text-transform:capitalize;margin-left:auto;font-size:11px}.anatomy-paper[data-focus=website],.anatomy-paper[data-focus=header] .anatomy-header,.anatomy-paper[data-focus=navigation] .anatomy-nav,.anatomy-paper[data-focus=section] .anatomy-section,.anatomy-paper[data-focus=image] .anatomy-landscape,.anatomy-paper[data-focus=cards] .anatomy-card-section,.anatomy-paper[data-focus=footer] .anatomy-footer{outline-offset:3px;z-index:1;outline:3px solid #8060c4;position:relative;box-shadow:0 0 0 7px #e6dcfa}.anatomy-paper[data-focus=header] .anatomy-header,.anatomy-paper[data-focus=navigation] .anatomy-nav,.anatomy-paper[data-focus=section] .anatomy-section,.anatomy-paper[data-focus=footer] .anatomy-footer{background:#f2ecff}.anatomy-browser{background:#edf0f6;border-radius:8px 12px 0 0;flex-wrap:wrap;align-items:center;gap:8px;display:flex}.anatomy-browser label{color:#4c5670;flex-basis:100%;font-size:10px}.anatomy-browser input{color:#28324a;background:#fff;border:1px solid #9aa5b8;border-radius:6px;flex:1;min-width:0;padding:7px 10px;font-size:12px}.anatomy-browser button,.anatomy-footer>button{color:#3b4162;cursor:pointer;background:#fff;border:1px solid #9aa5b8;border-radius:6px;padding:6px 8px;font-size:11px}.anatomy-browser-journey{color:#354158;flex-basis:100%;margin:2px 0;font-size:12px;line-height:1.7}.website-anatomy .anatomy-action-cue,.media-workshop .anatomy-action-cue{color:#443369;outline-offset:2px;background:#fff1b8;border-color:#8060c4;outline:2px solid #8060c4;font-weight:700;animation:1.8s ease-out infinite anatomy-action-pulse}@keyframes anatomy-action-pulse{0%,to{box-shadow:0 0 0 4px #8060c440}65%{box-shadow:0 0 0 11px #8060c400}}@media (prefers-reduced-motion:reduce){.website-anatomy .anatomy-action-cue,.media-workshop .anatomy-action-cue{animation:none;box-shadow:0 0 0 4px #8060c433}}.anatomy-nav nav{gap:8px;display:flex}.anatomy-nav nav button{color:#514168;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #7961a3;padding:6px;font-size:13px}.anatomy-explore{color:#335342;cursor:pointer;background:#edf5ef;border:1px solid #688b7a;border-radius:8px;padding:8px 12px;font-size:12px}.anatomy-cards svg{stroke:#6f7c49;stroke-width:2px;fill:none;stroke-linecap:round;width:100%;height:70px}.anatomy-paper[data-focus=browser] .anatomy-browser{outline-offset:3px;z-index:1;outline:3px solid #8060c4;position:relative;box-shadow:0 0 0 7px #e6dcfa}.complete-prompt-card{background:#fffdf5;border:1px solid #d9c891;border-radius:12px;margin:12px 0;padding:14px}.complete-prompt-card>strong{color:#65511e;font-size:12px}.complete-prompt-card p{white-space:pre-wrap;line-height:1.6}.complete-prompt-actions{flex-wrap:wrap;gap:8px;display:flex}.complete-prompt-actions button{cursor:pointer;color:#443369;font:inherit;background:#f0eaff;border:1px solid #8270be;border-radius:7px;padding:8px 12px}.guided-student-message ul{margin:.6rem 0;padding-left:1.4rem;list-style:outside}.guided-student-message li{margin:.3rem 0;padding-left:.15rem;display:list-item}.guided-student-message li::marker{color:#514168}.sample-view-tabs{gap:8px;max-width:600px;margin:0 auto 14px;display:flex}.sample-view-tabs button{color:#443369;cursor:pointer;background:#fff;border:1px solid #8973b2;border-radius:7px;padding:7px 12px}.sample-view-tabs button[aria-pressed=true]{background:#e6dcfa;font-weight:700}.sample-code-peek{max-width:600px;margin:auto}.sample-code-peek p,.code-peek-note{color:#443369;background:#f0eaff;margin:0;padding:10px 14px;font-size:13px;line-height:1.5}.sample-code-peek pre{white-space:pre-wrap;overflow-wrap:anywhere;color:#e8edf7;background:#192238;border-radius:10px;margin:12px 0;padding:18px;font-size:13px;line-height:1.8}.sample-code-peek mark{color:#342416;background:#ffe69a;border-radius:3px}.code-peek-open{grid-template-rows:auto auto minmax(0,1fr)}.code-peek-open:has(.reflection-note){grid-template-rows:auto auto auto minmax(0,1fr)}.code-peek-toolbar .view-toggle button{gap:6px;width:auto;padding:0 10px}.code-peek-toolbar .view-toggle button span{display:inline}.workbench-toolbar button.lumi-control-cue,.shared-workshop-bar button.lumi-control-cue{outline-offset:2px!important;border-radius:999px!important;outline:2px solid #ffe69a!important;animation:1.8s ease-out infinite anatomy-action-pulse!important}@media (prefers-reduced-motion:reduce){.workbench-toolbar button.lumi-control-cue,.shared-workshop-bar button.lumi-control-cue{animation:none}}.session-complete-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin:0 6px 8px;display:flex}.session-complete-actions .session-complete-footer{margin:0}.session-summary-link{color:var(--ink);cursor:pointer;font:inherit;text-underline-offset:3px;background:0 0;border:0;padding:8px 2px;font-size:13px;text-decoration:underline}.session-summary-link:focus-visible{outline-offset:3px;border-radius:4px;outline:2px solid}.classroom-session-rail{padding:5px}.classroom-session-list{scrollbar-width:none;padding:2px}.classroom-session-list::-webkit-scrollbar{display:none}.classroom-session-rail .session-pill{flex-shrink:0;width:100%;min-width:0;position:relative}.session-complete-mark{color:#067647;background:#ecfdf3;border-radius:50%;position:absolute;bottom:0;right:0}.classroom-student-identity{font-weight:800}.media-workshop{color:#26344a;background:#fffdf6;border:1px solid #d7d2c5;border-radius:12px;flex:1;min-height:0;padding:20px;overflow:auto}.media-workshop h2{margin:8px 0;font-size:22px}.media-workshop p{font-size:14px;line-height:1.5}.media-workshop header small{letter-spacing:.08em;color:#6c5392;font-weight:800}.media-picture-library{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:14px;display:grid}.media-picture-library button{cursor:pointer;color:inherit;background:#fff;border:2px solid #b3adc4;border-radius:14px 10px 18px 8px;padding:10px}.media-picture-library img{object-fit:contain;width:100%;height:110px}.media-picture-library strong{padding-top:8px;display:block}.media-sketch-controls{flex-wrap:wrap;gap:10px;margin:16px 0;display:flex}.media-sketch-controls button{color:inherit;cursor:pointer;background:#fff;border:2px solid #a89abc;border-radius:10px;padding:9px 12px}.media-sketch-controls button[aria-pressed=true]{background:#eae0fa;border-color:#8053d5}.media-sketch-collection{gap:16px;padding:10px;display:grid;overflow:auto}.media-sketch-collection.layout-row{grid-auto-columns:minmax(160px,1fr);grid-auto-flow:column}.media-sketch-collection.layout-grid{grid-template-columns:repeat(2,minmax(140px,1fr))}.media-sketch-collection.layout-stack{grid-template-columns:minmax(0,1fr)}.media-sketch-card{background:#fff;border:2px dashed #8390a3;border-radius:12px 18px 10px 16px;min-width:0;margin:0;padding:12px}.media-sketch-card h3{margin:10px 0;font-size:17px}.media-sketch-card figcaption{padding:8px;font-size:14px}.media-image-frame{background:#e5eaf0;border-radius:10px;height:160px;overflow:hidden}.media-image-frame.fit-demo{background:repeating-linear-gradient(45deg,#e5eaf0,#e5eaf0 8px,#f8fafc 8px 16px);border:2px dashed #8053d5;width:100%;max-width:320px;height:100px;margin:20px auto}.media-image-frame img{width:100%;height:100%;display:block}.media-workshop .part-highlight{outline-offset:3px;outline:3px solid #8053d5}.media-missing-image{text-align:center;color:#923c34;place-content:center;height:100%;display:grid}.media-sketch-explanation,.media-caption-compare{background:#efe7fc;border-radius:10px;padding:12px}.classroom-preview.narrow-preview{border-inline:5px solid #a69ac1;justify-self:center;width:min(100%,360px)}.preview-size-toggle{color:#fff;cursor:pointer;background:0 0;border:1px solid #a69ac1;border-radius:8px;padding:6px;font-size:12px}.media-part-reveal{animation:1.2s ease-out media-part-reveal}@keyframes media-part-reveal{0%,55%{box-shadow:0 0 0 9px #8053d54d}to{box-shadow:0 0 #8053d500}}@media (prefers-reduced-motion:reduce){.media-part-reveal{animation:none}}.code-picture-description{background:#fffdf6;border-left:3px solid #8053d5;margin-top:8px;padding:8px 10px;line-height:1.5;display:block}.media-image-frame.fit-demo .fit-robot-drawing{width:100%;height:100%;display:block;overflow:hidden}.media-sketch-titlebar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.website-lesson-tabs.media-toolbar-tabs{background:0 0;border:0;flex-wrap:nowrap;gap:4px;padding:0}.media-toolbar-tabs button{white-space:nowrap}.workbench-toolbar .media-toolbar-tabs button{color:#fff;background:0 0;border-color:#ffffff50}.workbench-toolbar .media-toolbar-tabs button[aria-pressed=true]{color:#30216b;background:#fff}.classroom-student-identity{cursor:default;place-items:center;font-weight:800;display:grid}.classroom-workbench{container-type:inline-size}.workbench-toolbar.web-toolbar{flex-wrap:nowrap;justify-content:flex-start;align-items:center;gap:8px;padding:7px 10px;display:flex;overflow-x:auto}.web-toolbar>*{flex:none}.web-toolbar .view-toggle{padding:0}.web-toolbar .media-toolbar-tabs button{min-height:32px;padding:5px 9px;font-size:12px}.web-toolbar .preview-controls{white-space:nowrap;gap:6px;margin-left:auto}.web-toolbar .preview-size-toggle{align-items:center;gap:5px;min-height:32px;padding:5px 8px;display:inline-flex}.web-toolbar .preview-refresh{width:32px;height:32px;min-height:32px}.web-publish-button,.web-live-link{color:#fff;cursor:pointer;background:0 0;border:1px solid #a69ac1;border-radius:8px;align-items:center;gap:5px;min-height:32px;padding:5px 10px;font-size:12px;font-weight:700;line-height:1;text-decoration:none;transition:background .15s,border-color .15s;display:inline-flex}.web-publish-button:hover:not(:disabled){background:#ffffff24;border-color:#fff}.web-publish-button:disabled{opacity:.6;cursor:progress}.web-live-link{color:var(--brand-blue-dark);background:#fff;border-color:#fff}.web-live-link:hover,.web-live-link:focus-visible{color:var(--brand-blue-dark);background:#efeafc}.web-live-dot{background:#16a34a;border-radius:50%;width:7px;height:7px}.web-toolbar .web-file-picker{min-width:0;margin-left:auto}.web-file-picker select{background:var(--brand-blue-dark);color:#fff;border:1px solid #ffffff60;border-radius:6px;width:104px;height:32px;padding:0 5px;font-size:12px;display:none}.web-toolbar .editor-save-state{align-items:center;gap:5px;display:inline-flex}.web-toolbar .save-state-dot{background:currentColor;border-radius:50%;width:7px;height:7px}@container (max-width:850px){.web-file-picker .file-tabs{display:none}.web-file-picker select{display:block}.web-toolbar .preview-size-toggle span,.web-toolbar .save-state-label,.web-toolbar .web-live-link span{display:none}}@container (max-width:570px){.web-toolbar{gap:5px;padding-inline:6px}.web-toolbar .view-toggle button span{display:none}.web-toolbar .view-toggle button{justify-content:center;width:30px;padding:0}.web-toolbar .media-toolbar-tabs button{padding-inline:6px;font-size:11px}.web-toolbar .preview-controls{gap:4px}}.shared-workshop-bar{background:var(--brand-blue-dark);color:#fff;box-sizing:border-box;flex-wrap:nowrap;flex-shrink:0;align-items:center;gap:10px;min-height:46px;padding:6px 12px;display:flex;overflow-x:auto}.shared-workshop-bar>.media-toolbar-tabs{flex:none;gap:4px;display:inline-flex}.shared-workshop-bar .media-toolbar-tabs button{color:#ffffffe0;cursor:pointer;background:#ffffff14;border:1px solid #fff3;border-radius:6px;min-height:32px;padding:5px 12px;font-size:12px;font-weight:700;transition:all .15s}.shared-workshop-bar .media-toolbar-tabs button:hover{color:#fff;background:#ffffff29}.shared-workshop-bar .media-toolbar-tabs button[aria-pressed=true]{color:var(--brand-blue-dark);background:#fff;border-color:#fff;box-shadow:0 1px 3px #0003}.shared-workshop-controls{flex:auto;min-width:0}.shared-workshop-controls .web-toolbar{align-items:center;gap:8px;padding:0;display:flex;overflow:visible}.shared-workshop-controls .view-toggle{background:#00000040;border:1px solid #ffffff26;border-radius:999px;align-items:center;gap:2px;padding:2px;display:inline-flex}.shared-workshop-controls .view-toggle button{color:#ffffffd9;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;gap:6px;width:auto;min-width:32px;height:30px;min-height:30px;padding:0 10px;font-size:12px;font-weight:700;transition:all .15s;display:inline-flex}.shared-workshop-controls .view-toggle button:hover{color:#fff;background:#ffffff1f}.shared-workshop-controls .view-toggle button.active{background:var(--brand-red);color:#fff;box-shadow:0 1px 3px #00000040}.shared-workshop-controls .web-file-picker .file-tabs{display:none}.shared-workshop-controls .web-file-picker select{display:block}.shared-workshop-controls .preview-size-toggle span,.shared-workshop-controls .save-state-label{display:none}.classroom-workbench.shared-toolbar-workbench{grid-template-rows:minmax(0,1fr);height:auto}.classroom-workbench.shared-toolbar-workbench.code-peek-open{grid-template-rows:auto minmax(0,1fr)}.chat-offtopic-note{color:#7a5a12;background:#fff8e6;border:1px solid #f2d68a;border-radius:8px;align-items:center;gap:7px;margin:6px 0 0;padding:8px 10px;font-size:12.5px;line-height:1.4;display:flex}.chat-offtopic-note svg{flex-shrink:0}.private-prices-table table{border-collapse:collapse;text-align:left;width:100%}.private-prices-table th,.private-prices-table td{border-bottom:1px solid var(--border-color,#e5e7eb);vertical-align:top;padding:.85rem}.private-prices-table th{font-size:.8rem}.private-prices-table small{margin-top:.25rem;display:block}.private-price-compact{align-items:baseline;gap:8px;display:inline-flex}.private-price-compact del{color:#64748b;font-weight:500;text-decoration-thickness:1.5px}.private-price-compact strong{color:var(--brand-blue-dark);font-weight:800}.private-price-breakdown p{margin:.35rem 0}.private-price-breakdown strong{font-size:1.15rem}.schedule-picker,.schedule-picker-form{gap:18px;display:grid}.schedule-picker-head h3{font-size:1.15rem}.schedule-picker-head .field-help{max-width:78ch;margin:6px 0 0}.schedule-picker-start{border:1px solid var(--line);background:#f8fbff;border-radius:12px;flex-wrap:wrap;align-items:center;gap:6px 16px;padding:12px 14px;display:flex}.schedule-picker-start label{align-items:center;gap:10px;font-size:13px;font-weight:800;display:inline-flex}.schedule-picker-start label>span{color:var(--brand-blue-dark);letter-spacing:.02em}.schedule-picker-start .field-help{flex:260px;margin:0}.schedule-picker-start-note{color:var(--brand-blue-dark);flex:100%;min-height:20px;margin:0;font-size:13px;font-weight:700}.schedule-picker-grid{gap:14px;display:grid}.schedule-picker-total{gap:12px;display:grid}.schedule-picker-verdict{color:var(--ink-muted);background:#eef5ff;border:1px solid #c9dcf6;border-radius:12px;min-height:78px;padding:14px;font-size:13px;line-height:1.5;display:block}.schedule-picker-verdict b{color:var(--brand-blue-dark);font-size:1.5rem;line-height:1.15;display:block}.schedule-picker-verdict-note{margin-top:4px;display:block}.schedule-picker-verdict.is-warning{background:#fff8e8;border-color:#f2d08a}.schedule-picker-verdict.is-warning b{color:#7a5a00}.schedule-grid-empty{border:1px dashed var(--line);color:var(--ink-muted);background:#f8fbff;border-radius:11px;flex-wrap:wrap;align-items:baseline;gap:4px 10px;min-height:44px;margin-bottom:14px;padding:10px 12px;font-size:13px;display:flex}.schedule-grid-empty b{color:var(--brand-blue-dark)}.schedule-grid-scroll{overflow-anchor:none;max-height:520px;overflow:hidden auto}.schedule-grid{border-collapse:separate;border-spacing:4px;table-layout:fixed;width:100%}.schedule-grid th{font-weight:700}.schedule-grid thead th{color:var(--ink-muted);text-align:center;padding-bottom:2px;font-size:12px}.schedule-grid thead th:first-child{text-align:right;width:62px}.schedule-grid tbody th{color:var(--ink-muted);text-align:right;width:62px;padding-right:6px;font-size:11px;font-weight:700;line-height:1.1}.schedule-grid tbody th small{color:#94a3b8;font-size:9px;font-weight:600;display:block}.schedule-grid tbody td{padding:0}.schedule-hour{border:1px solid var(--line);height:var(--hour-row,44px);text-align:left;touch-action:none;background:#fff;border-radius:8px;width:100%;padding:0 4px;display:block;position:relative;overflow:hidden}.schedule-hour[data-preview=true]{border-color:var(--brand-yellow);background:#fff4d1;box-shadow:inset 0 0 0 2px #ffd4478c}.schedule-hour[data-preview=true] .schedule-hour-fill{color:#7a5a00}.schedule-hour-fill{color:var(--ink-muted);white-space:nowrap;font-size:9px;line-height:1.2}.schedule-hour[data-state=offered]{background:#cfe3ff;border-color:#8fb8ea}.schedule-hour[data-state=best]{background:#8fe0b4;border-color:#35b76f}.schedule-hour[data-state=unavailable]{cursor:not-allowed;background:#f7cfd1;border-color:#e08d92}.schedule-hour[data-state=unavailable] .schedule-hour-fill{color:#8a3f45}.schedule-hour[data-state=unavailable]:after{content:"";background:linear-gradient(to top right,#0000 47%,#dca0a4 47% 53%,#0000 53%);position:absolute;inset:0}.schedule-hour[data-state=booked],.schedule-hour[data-state=closed]{cursor:not-allowed}.schedule-hour[data-state=closed]{cursor:default;background:#fafbfd;border-color:#eef1f6}.schedule-hour[data-state=closed]:before{content:"";background:#d7dee8;border-radius:2px;width:8px;height:1px;margin:-1px 0 0 -4px;position:absolute;top:50%;left:50%}.schedule-hour[data-picked=true]{background:var(--brand-blue-dark);border-color:var(--brand-blue-dark);color:#fff;box-shadow:0 3px 10px #0b3d914d}.schedule-hour[data-picked=true] .schedule-hour-fill{color:#fff}.schedule-hour-count{background:#ffffff38;border-radius:999px;padding:1px 5px;font:700 9px/1.4 Arial;position:absolute;top:3px;right:4px}.schedule-hour-run{letter-spacing:.02em;text-align:center;font:700 9px/1 Arial;position:absolute;bottom:2px;left:0;right:0}.schedule-hour[data-cont=end]:before,.schedule-hour[data-cont=middle]:before{background:var(--brand-yellow);content:"";width:3px;position:absolute;top:-5px;bottom:-5px;left:3px}.schedule-hour[data-cont=end]:before{bottom:50%}.schedule-grid-legend{color:var(--ink-muted);flex-wrap:wrap;gap:8px 16px;margin-top:12px;font-size:12px;display:flex}.schedule-grid-legend span{align-items:center;gap:6px;display:inline-flex}.schedule-grid-legend i{border:1px solid var(--line);border-radius:4px;width:14px;height:14px;display:inline-block}.schedule-grid-legend .sw-offered{background:#cfe3ff;border-color:#8fb8ea}.schedule-grid-legend .sw-best{background:#8fe0b4;border-color:#35b76f}.schedule-grid-legend .sw-picked{background:var(--brand-blue-dark);border-color:var(--brand-blue-dark)}.schedule-grid-legend .sw-unavailable{background:#f7cfd1;border-color:#e08d92}.schedule-grid-legend .sw-closed{background:#fff;border-color:#dfe6ee}.schedule-grid-tools{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.schedule-grid-toggle{align-items:center;gap:8px;font-size:13px;display:inline-flex}.schedule-grid-toggle input{width:16px;height:16px}.schedule-grid-count{color:var(--ink-muted);font-size:12px}.schedule-minimum{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.schedule-minimum-option{border:1px solid var(--line);background:#fff;border-radius:12px;flex:220px;padding:12px}.schedule-minimum-option b{color:var(--brand-blue-dark);margin-top:8px;font-size:14px;display:block}.schedule-minimum-option small{color:var(--ink-muted);margin-top:2px;font-size:12px;display:block}.schedule-minimum-or{color:var(--ink-muted);letter-spacing:.08em;text-transform:uppercase;font:700 11px/1 Arial}.schedule-minimum-note{color:var(--ink-muted);flex:260px;font-size:13px}.schedule-minimum-note b{color:var(--brand-blue-dark)}.schedule-mini-week{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.schedule-mini-week span{color:#94a3b8;text-align:center;background:#f1f5f9;border-radius:6px;height:24px;font:600 9px/24px Arial}.schedule-mini-week span[data-on=true]{background:var(--brand-blue);color:#fff}.schedule-grid-summary{border:1px solid var(--line);background:#f8fbff;border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 18px;padding:12px 14px;display:flex}.schedule-grid-picks{flex-wrap:wrap;gap:6px;display:flex}.schedule-grid-pick{background:var(--brand-blue);color:#fff;border-radius:999px;padding:5px 11px;font-size:13px;font-weight:700}.schedule-grid-pick small{opacity:.85;font-weight:500}.schedule-grid-total{color:var(--ink-muted);font-size:13px}.schedule-grid-total b{color:var(--brand-blue-dark)}.schedule-grid-note{background:#fff8e8;border:1px solid #f2d08a;border-radius:11px;align-items:flex-start;gap:8px;padding:9px 11px;font-size:13px;display:flex}.schedule-grid-note b{color:#7a5a00}.schedule-hour-local{color:var(--brand-blue-dark);letter-spacing:.02em;font-size:10px;font-weight:700;line-height:1.1;display:block}.schedule-grid-zone{color:var(--ink-muted);max-width:82ch;margin-top:10px;font-size:12px}.schedule-week-phone{display:none}.schedule-phone-day{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:10px 11px}.schedule-phone-day+.schedule-phone-day{margin-top:8px}.schedule-phone-day[data-closed=true]{background:#fafbfd}.schedule-phone-day-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.schedule-phone-day-head b{color:var(--brand-blue-dark);font-size:14px}.schedule-phone-day-head span{color:var(--ink-muted);font-size:12px}.schedule-phone-hours{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:8px;display:grid}.schedule-phone-hour{border:1px solid var(--line);color:#34445f;background:#fff;border-radius:9px;flex-direction:column;justify-content:center;align-items:center;gap:2px;height:48px;font-size:13px;font-weight:700;display:flex}.schedule-phone-hour small{color:var(--ink-muted);font-size:9px;font-weight:600}.schedule-phone-hour[data-state=offered]{background:#cfe3ff;border-color:#8fb8ea}.schedule-phone-hour[data-state=best]{background:#8fe0b4;border-color:#35b76f}.schedule-phone-hour[data-state=unavailable]{color:#8a3f45;background:#f7cfd1;border-color:#e08d92}.schedule-phone-hour[data-state=closed]{color:#b6c1cf;background:#fff;border-color:#eef1f6}.schedule-phone-hour[data-picked=true]{background:var(--brand-blue-dark);border-color:var(--brand-blue-dark);color:#fff;box-shadow:0 3px 10px #0b3d914d}.schedule-phone-hour[data-picked=true] small{color:#ffffffd9}@media (max-width:900px){.schedule-grid-scroll{display:none}.schedule-week-phone{display:block}}.schedule-no-js{display:block}@media (scripting:enabled){.schedule-no-js{display:none}}.schedule-batch{border-top:1px solid var(--line);gap:14px;margin-top:6px;padding-top:18px;display:grid}.schedule-batch-actions{justify-items:start;gap:12px;display:grid}.schedule-batch-actions .field-help{max-width:68ch;margin:0}.schedule-batch-weeks{gap:8px;margin:0;padding:0;list-style:none;display:grid}.schedule-batch-weeks>li{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:baseline;gap:4px 14px;padding-bottom:8px;display:flex}.schedule-batch-weeks>li:last-child{border-bottom:0}.schedule-batch-week{color:var(--ink-muted);letter-spacing:.04em;text-transform:uppercase;flex:none;width:92px;font:700 11px/1.6 Arial}.schedule-batch-classes{flex-wrap:wrap;flex:320px;gap:6px 10px;display:flex}.schedule-batch-class{border:1px solid var(--line);background:#f8fbff;border-radius:8px;align-items:baseline;gap:6px;padding:4px 9px;font-size:13px;display:inline-flex}.schedule-batch-class b{color:var(--brand-blue-dark)}.schedule-batch-class em{color:var(--ink-muted);font-size:11px;font-style:normal}.schedule-grid-fallback{border-top:1px solid var(--line);margin-top:16px;padding-top:14px}.schedule-grid-fallback>summary{color:var(--brand-blue-dark);cursor:pointer;font-size:14px;font-weight:800}.schedule-grid-fallback-body{margin-top:14px}.schedule-grid-fallback-body .panel{border:0;padding:0}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.invoice-sheet{background:var(--panel);border:1px solid var(--line);border-radius:8px;gap:24px;padding:32px;display:grid}.invoice-masthead{border-bottom:2px solid var(--brand-blue-dark);grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:24px;padding-bottom:20px;display:grid}.invoice-masthead h3{color:var(--brand-blue-dark);margin:0 0 4px;font-size:18px}.invoice-masthead p{color:var(--ink-muted);margin:0 0 2px}.invoice-kind{color:var(--brand-blue-dark);letter-spacing:.08em;text-transform:uppercase;font-size:13px;font-weight:900}.invoice-identifiers,.invoice-meta dl{gap:2px;margin:10px 0 0;display:grid}.invoice-identifiers>div,.invoice-meta dl>div{grid-template-columns:130px minmax(0,1fr);display:grid}.invoice-identifiers dt,.invoice-meta dt{color:var(--ink-muted);font-size:12px;font-weight:700}.invoice-identifiers dd,.invoice-meta dd{overflow-wrap:anywhere;margin:0;font-size:13px}.invoice-meta{text-align:left;justify-self:end}.invoice-party h4{color:var(--ink-muted);letter-spacing:.06em;text-transform:uppercase;margin:0 0 6px;font-size:12px}.invoice-party p{margin:0 0 2px}.invoice-lines{border-collapse:collapse;width:100%}.invoice-lines th,.invoice-lines td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:12px 8px}.invoice-lines th{color:var(--ink-muted);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:800}.invoice-lines small{color:var(--ink-muted);margin-top:2px;display:block}.invoice-lines .numeric,.invoice-totals dd{text-align:right}.invoice-totals{justify-self:end;gap:6px;min-width:min(340px,100%);margin:0;display:grid}.invoice-totals>div{grid-template-columns:minmax(0,1fr) auto;gap:16px;display:grid}.invoice-totals dt{color:var(--ink-muted)}.invoice-totals dd{margin:0}.invoice-totals del{color:var(--ink-muted)}.invoice-grand-total{border-top:2px solid var(--brand-blue-dark);padding-top:8px;font-size:17px}.invoice-grand-total dt{color:var(--foreground);font-weight:700}.invoice-foot{border-top:1px solid var(--line);color:var(--ink-muted);padding-top:14px;font-size:12px}.invoice-foot p{margin:0 0 2px}@media (max-width:720px){.invoice-sheet{padding:20px}.invoice-masthead{grid-template-columns:minmax(0,1fr)}.invoice-meta{justify-self:start}.invoice-totals{justify-self:stretch}}@media print{.studio-sidebar,.invoice-controls,.skip-link,.notice-panel{display:none!important}html,body,.studio-shell,.studio-main{background:#fff!important;margin:0!important;padding:0!important;display:block!important}.invoice-page{gap:0!important;max-width:none!important;margin:0!important;padding:0!important}.invoice-sheet{box-shadow:none;border:0;border-radius:0;padding:0}.invoice-lines,.invoice-totals,.invoice-foot{break-inside:avoid}@page{margin:16mm;size:A4}}.orders-table .table-row{grid-template-columns:170px minmax(200px,1.2fr) minmax(130px,.7fr) minmax(170px,.8fr)}.orders-table.staff .table-row{grid-template-columns:128px minmax(140px,1fr) minmax(140px,1fr) minmax(150px,.9fr) 112px 168px;gap:12px;width:max(100%,1000px)}.filter-bar .filter-toggle{justify-content:flex-start;gap:8px}.filter-bar .filter-toggle input{flex:none;width:16px;height:16px}.filter-bar .filter-toggle span{color:var(--ink-muted);white-space:nowrap;font-size:13px}.orders-table .table-row>span{justify-items:start;gap:4px;min-width:0;display:grid}.orders-table .table-row small{color:var(--ink-muted);text-overflow:ellipsis;max-width:100%;font-size:11px;overflow:hidden}.order-status-cell,.order-invoice-cell{gap:6px}.orders-table .empty-state{text-align:center;padding:32px 16px}@media (max-width:720px){.orders-table .table-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}}.catalog-card--previous.course-card{background:#faf8f4;border-color:#d8cfc0}.catalog-card--previous .catalog-card-art{filter:saturate(.35)}.catalog-card--previous .catalog-sale-status{color:#835216;font-weight:700}.course-edition-note{color:#795c35;margin:0;font-size:12px;line-height:1.5}.previous-edition-notice{background:#fff8ec;border:1px solid #e6d5b8;border-left:4px solid #ba7b24;border-radius:12px;padding:18px 22px}.previous-edition-notice p{margin:8px 0 0}.batch-course-card{position:relative}.batch-bit-corner{pointer-events:none;width:88px;height:58px;position:absolute;top:0;right:0;overflow:hidden}.batch-course-card:has(.batch-bit-corner) .workspace-card-top{padding-right:72px}.page-toolbar.batch-course-card:has(.batch-bit-corner){padding-right:88px}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}
