.points-card{justify-content:space-between;align-items:center;gap:var(--space-4) var(--space-6);margin:0 0 var(--space-7);padding:var(--space-5) var(--space-6);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg);flex-wrap:wrap;display:flex}.points-card-level{gap:var(--space-2);flex:260px;min-width:0;display:grid}.points-card .lesson-kind{margin:0}.points-total{color:var(--muted);margin:0;font-size:14px}.level-meter{gap:var(--space-2);min-width:0;display:grid}.level-meter-head{justify-content:space-between;align-items:baseline;gap:var(--space-1) var(--space-3);flex-wrap:wrap;display:flex}.level-meter-title{align-items:center;gap:var(--space-2);min-width:0;display:inline-flex}.level-badge{border:2px solid var(--blue);border-radius:var(--radius-pill);background:var(--blue-soft);width:28px;height:28px;color:var(--blue-ink);font-family:var(--font-display);flex:none;place-items:center;font-size:14px;font-weight:800;line-height:1;display:inline-grid}.level-meter[data-level-up] .level-badge{animation:.56s cubic-bezier(.3,1.6,.5,1) both level-badge-in,1.1s ease-out .3s level-badge-ring}.level-meter[data-level-up] .level-meter-name{animation:.42s ease-out .12s both level-name-in}@keyframes level-badge-in{0%{opacity:0;transform:scale(.3)rotate(-30deg)}to{opacity:1;transform:scale(1)rotate(0)}}@keyframes level-badge-ring{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--blue) 45%, transparent)}to{box-shadow:0 0 0 14px color-mix(in srgb, var(--blue) 0%, transparent)}}@keyframes level-name-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.level-meter-name{font-family:var(--font-display);color:var(--ink);margin:0;font-size:19px;font-weight:800}.level-meter-points{color:var(--muted);font-size:14px;font-weight:700}.level-bar{border-radius:var(--radius-pill);background:var(--canvas);height:8px;box-shadow:inset 0 0 0 1px var(--line);overflow:hidden}.level-bar span{border-radius:inherit;background:var(--blue);height:100%;transition:width .9s cubic-bezier(.2,.8,.2,1);display:block}.streak{justify-items:start;gap:var(--space-2);display:grid}.streak-count{align-items:center;gap:var(--space-1);color:var(--muted);margin:0;font-size:14px;font-weight:700;display:inline-flex}.streak-count[data-active]{color:var(--warn)}.streak-count>svg{transform-origin:50% 90%}.streak-count[data-hot]>svg{animation:2.6s ease-in-out infinite flame-flicker}.streak-count[data-pulse]>svg{animation:.7s cubic-bezier(.3,1.6,.5,1) flame-pulse,2.6s ease-in-out .7s infinite flame-flicker}.streak-count[data-pulse]:not([data-hot])>svg{animation:.7s cubic-bezier(.3,1.6,.5,1) flame-pulse}@keyframes flame-flicker{0%,to{transform:scale(1)rotate(0)}25%{transform:scale(1.06,.96)rotate(-3deg)}50%{transform:scale(.97,1.05)rotate(2deg)}75%{transform:scale(1.03,.98)rotate(-1deg)}}@keyframes flame-pulse{0%{transform:scale(1)}45%{transform:scale(1.45)}to{transform:scale(1)}}.streak-week{gap:6px;display:inline-flex}.streak-dot{border:2px solid var(--line-strong);border-radius:var(--radius-pill);background:0 0;width:12px;height:12px}.streak-dot[data-active]{border-color:var(--warn);background:var(--warn)}.streak-dot[data-today]{outline:2px solid var(--line);outline-offset:2px}.team-progress{align-items:center;gap:var(--space-1);color:var(--ink);flex-wrap:wrap;margin:0;font-size:14px;font-weight:700;display:inline-flex}.team-progress>svg{color:var(--blue)}.course-standing{align-items:center;gap:var(--space-4) var(--space-6);max-width:720px;margin:var(--space-4) 0;flex-wrap:wrap;display:flex}.course-standing .level-meter{flex:240px;max-width:360px}.course-standing .level-meter-name{font-size:16px}.lesson-end{gap:var(--space-4);margin:var(--space-6) 0;padding:var(--space-5);border:1px solid var(--green);border-radius:var(--radius-md);background:var(--bg);display:grid}.lesson-end-top{align-items:center;gap:var(--space-3);display:flex}.lesson-end-robot{flex:none;width:64px;height:70px}.lesson-end-heading{justify-items:start;gap:var(--space-1);min-width:0;display:grid}.lesson-end-bubble{border-radius:var(--radius-md) var(--radius-md) var(--radius-md) 2px;background:var(--blue-soft);color:var(--blue-ink);margin:0;padding:4px 12px;font-size:14px;font-weight:700}.lesson-end h2{align-items:center;gap:var(--space-2);color:var(--green);margin:0;font-size:21px;display:inline-flex}.lesson-end-stats{gap:var(--space-3) var(--space-7);flex-wrap:wrap;margin:0;display:flex}.lesson-end-stats div{gap:2px;display:grid}.lesson-end-stats dt{color:var(--muted);font-size:13px;font-weight:700}.lesson-end-stats dd{font-family:var(--font-display);color:var(--ink);margin:0;font-size:24px;font-weight:800}.lesson-end-next{justify-items:start;gap:var(--space-1);padding-top:var(--space-4);border-top:1px solid var(--line);display:grid}.lesson-end-next .lesson-kind{margin:0}.lesson-end-next-title{margin:0 0 var(--space-2);font-weight:700}@media (max-width:520px){.points-card,.lesson-end{padding:var(--space-4)}.lesson-end-robot{width:52px;height:57px}}@media (prefers-reduced-motion:reduce){.level-bar span{transition:none}.level-meter[data-level-up] .level-badge,.level-meter[data-level-up] .level-meter-name,.streak-count>svg,.streak-count[data-hot]>svg,.streak-count[data-pulse]>svg,.streak-count[data-pulse]:not([data-hot])>svg{animation:none}}
.side-foot .demo-feedback-open{gap:var(--space-2);color:var(--muted)}.side-foot .demo-feedback-thanks{color:var(--green);grid-column:2;font-size:13px}.demo-feedback-float{z-index:14;right:var(--space-4);bottom:var(--space-4);border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--bg);width:44px;height:44px;color:var(--muted);box-shadow:var(--shadow-popover);position:fixed}.demo-feedback-float:hover:not(:disabled){background:var(--soft);color:var(--ink)}.demo-feedback-thanks-float:not(:empty){z-index:14;right:var(--space-4);bottom:calc(var(--space-4) + 52px);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--green-soft);color:var(--green);box-shadow:var(--shadow-popover);font-size:14px;position:fixed}.demo-feedback-form legend,.demo-feedback-form>label{margin:var(--space-5) 0 var(--space-2);font-size:14px;font-weight:600;display:block}.demo-feedback-segments{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--soft);flex-wrap:wrap;padding:3px;display:inline-flex}.demo-feedback-segments label{margin:0;font-weight:600;position:relative}.demo-feedback-segments input{opacity:0;cursor:pointer;width:100%;height:100%;min-height:0;margin:0;position:absolute;inset:0}.demo-feedback-segments span{padding:var(--space-2) var(--space-4);color:var(--muted);border-radius:6px;display:block}.demo-feedback-segments label:has(input:checked) span{background:var(--bg);color:var(--blue-ink);box-shadow:0 1px 3px #17203326}.demo-feedback-segments label:has(input:focus-visible) span{outline:3px solid var(--focus);outline-offset:1px}.demo-feedback-text{white-space:pre-wrap;overflow-wrap:anywhere}.demo-feedback-path,.demo-feedback-status{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:inline-flex}.demo-feedback-path code{overflow-wrap:anywhere;font-size:13px}@media (forced-colors:active){.demo-feedback-segments label:has(input:checked) span{outline:2px solid canvastext}}@media (min-width:701px){body:has(.demo-feedback-float) .lesson-view .lesson-assistant{bottom:calc(var(--space-4) + 44px + var(--space-4))}body:has(.lesson-assistant) .demo-feedback-thanks-float:not(:empty){right:calc(var(--space-4) + 44px + var(--space-3));bottom:var(--space-4);max-width:calc(100vw - 100px)}}
.mobile-lesson-bar,.answer-sheet-head{display:none}.lesson-view{overflow-anchor:none}.lesson-header .lesson-back,.lesson-header .lesson-back-words{color:inherit;font:inherit}@media (max-width:700px){.lesson-view{--mlb-h:64px;--mlb-space:calc(var(--mlb-h) + env(safe-area-inset-bottom,0px))}:root:has(.lesson-view){scroll-padding-top:64px;scroll-padding-bottom:calc(64px + env(safe-area-inset-bottom,0px) + var(--answer-sheet-h,0px))}.lesson-view .lesson-content{padding-bottom:calc(var(--mlb-space) + var(--answer-sheet-h,0px) + var(--space-6));overflow-x:clip}.lesson-view .lesson-content:has(.answer-sheet)>.lesson-kind{display:none}.lesson-view .lesson-content:has(.answer-sheet)>.lesson-title-row .bookmark-button{display:none}.lesson-view .lesson-content:has(.answer-sheet)>h1{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.lesson-view .lesson-content:has(.answer-sheet)>.lesson-title-row>h1{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.lesson-view .lesson-step-navigation,.lesson-view .lesson-assistant-button{display:none}body:has(.lesson-view) .demo-feedback-float{display:none}.mobile-lesson-bar{z-index:17;align-items:center;gap:var(--space-2);min-height:var(--mlb-space);padding:var(--space-2) max(var(--space-4), env(safe-area-inset-right,0px)) calc(var(--space-2) + env(safe-area-inset-bottom,0px)) max(var(--space-4), env(safe-area-inset-left,0px));border-top:1px solid var(--line);background:var(--bg);display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 16px #17203314}.mobile-lesson-bar button{min-height:44px}.mobile-lesson-error{right:var(--space-4);bottom:calc(100% + var(--space-2));left:var(--space-4);padding:var(--space-3);border:1px solid var(--danger);border-radius:var(--radius-sm);background:var(--bg);color:var(--danger);box-shadow:var(--shadow-popover);margin:0;font-size:14px;position:absolute}.lesson-view .mobile-lesson-prev{gap:var(--space-1);padding:0 var(--space-3);flex:none}.mobile-lesson-tools{gap:var(--space-1);margin-inline:auto;display:flex}.lesson-view .mobile-lesson-tool{border-radius:var(--radius-pill);width:44px;height:44px;color:var(--blue-ink);padding:0}.lesson-view .mobile-lesson-tool[aria-expanded=true]{background:var(--pale)}.lesson-view .mobile-lesson-next{min-width:0;padding-inline:var(--space-4);text-align:center;white-space:normal;flex:0 auto;line-height:1.15}.lesson-view:has(.answer-sheet[data-open=true][data-next]) .mobile-lesson-next{visibility:hidden}.lesson-view .lesson-assistant{z-index:18;right:var(--space-3);bottom:calc(var(--mlb-space) + var(--space-2));left:var(--space-3);align-items:stretch}.lesson-view .lesson-assistant-bubble{border-radius:18px;width:auto;max-height:min(60vh,480px)}body:has(.lesson-view) .demo-feedback-thanks-float:not(:empty){right:var(--space-4);bottom:calc(64px + env(safe-area-inset-bottom,0px) + var(--space-2));z-index:18}.lesson-view .lesson-header{z-index:12;gap:var(--space-2);padding-inline:var(--space-3);padding-top:max(var(--space-3), env(safe-area-inset-top,0px));position:sticky;top:0}.lesson-view .lesson-sidebar{scroll-margin-top:64px}.lesson-view .lesson-steps{gap:var(--space-1);margin-block:var(--space-3) 0;padding:0;overflow:visible}:is(.lesson-view .lesson-steps li,.lesson-view .lesson-steps li:has(button[aria-current=step])){flex:1 1 0;min-width:0}.lesson-view .lesson-steps button,.lesson-view .lesson-steps button[aria-current=step]{border-radius:var(--radius-sm);width:100%;height:32px;min-height:32px;box-shadow:none;background:0 0;border:0;padding:0;position:relative}.lesson-view .lesson-steps button:before{content:"";border-radius:var(--radius-pill);background:var(--line-strong);height:6px;margin-top:-3px;position:absolute;top:50%;left:0;right:0}.lesson-view .lesson-steps button[data-done]:before{background:var(--green)}.lesson-view .lesson-steps button[aria-current=step]:before{background:var(--blue);height:12px;margin-top:-6px}.lesson-view .lesson-steps .lesson-step-number,.lesson-view .lesson-steps .lesson-step-name,.lesson-view .lesson-steps button[aria-current=step] .lesson-step-name{display:none}.lesson-view .answer-sheet{z-index:16;right:0;bottom:var(--mlb-space);max-height:min(55dvh, calc(100dvh - var(--mlb-space) - 128px));padding:0 max(var(--space-4), env(safe-area-inset-right,0px)) var(--space-3) max(var(--space-4), env(safe-area-inset-left,0px));border-top:1px solid var(--line);border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--bg);flex-direction:column;display:flex;position:fixed;left:0;box-shadow:0 -8px 24px #1720331f}.lesson-view .answer-sheet[data-open=false]{padding-bottom:0}.lesson-view .answer-sheet-head{padding-top:var(--space-2);touch-action:none;flex-direction:column;flex:none;align-items:center;display:flex}.answer-sheet-handle{border-radius:var(--radius-pill);background:var(--line-strong);width:40px;height:4px}.lesson-view .answer-sheet-toggle{width:100%;min-height:44px;color:var(--ink);justify-content:flex-start;gap:0;padding:0;font-weight:700}.lesson-view .answer-sheet-toggle:hover:not(:disabled){background:0 0}.answer-sheet-count{color:var(--muted);padding-inline-start:var(--space-1);font-weight:600}.answer-sheet-toggle svg{margin-inline-start:auto}.answer-sheet-toggle[aria-expanded=false] svg{transform:rotate(180deg)}.answer-sheet-body{overscroll-behavior:contain;flex:auto;min-height:0;overflow-y:auto}.lesson-view .answer-sheet fieldset{margin-top:0}.lesson-view .answer-sheet .lesson-option{min-height:56px;margin:var(--space-2) 0;padding:var(--space-3) var(--space-4)}.lesson-view .answer-sheet .ui-callout{margin:var(--space-3) 0 0}.lesson-view .answer-sheet .activity-groups .ui-button,.lesson-view .answer-sheet .chat-option.ui-button{min-height:52px}.answer-sheet-next{padding-top:var(--space-3);background:var(--bg);display:flex;position:sticky;bottom:0}.answer-sheet-next .ui-button{flex:1}.lesson-view .paged-reading{scroll-margin-top:72px;position:relative}.paged-toggle{align-items:center;gap:var(--space-2);min-height:44px;margin:var(--space-2) 0 0;color:var(--muted);cursor:pointer;font-size:14px;font-weight:600;display:inline-flex}.paged-switch{border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--soft);flex:none;width:40px;height:24px;position:relative}.lesson-view .paged-switch input{opacity:0;cursor:pointer;width:100%;height:100%;min-height:0;margin:0;padding:0;position:absolute;inset:0}.paged-knob{background:var(--muted);pointer-events:none;border-radius:50%;width:18px;height:18px;position:absolute;top:2px;left:2px}.paged-switch:has(input:checked){border-color:var(--blue);background:var(--blue)}.paged-switch:has(input:checked) .paged-knob{background:var(--on-accent);left:18px}.paged-switch:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:2px}.lesson-view .paged-text{margin:var(--space-4) 0 0;position:relative}.lesson-view .paged-text .lesson-reading,.lesson-view .paged-measure .lesson-reading{margin:0}.lesson-view .paged-text .lesson-reading:not(.paged-off)~.lesson-reading:not(.paged-off),.lesson-view .paged-measure .lesson-reading+.lesson-reading{margin-top:var(--space-4)}.lesson-view .paged-text .paged-off{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.paged-measure{visibility:hidden;pointer-events:none;height:0;position:absolute;top:0;left:0;right:0;overflow:hidden}.paged-nav{align-items:center;gap:var(--space-3);margin:var(--space-4) 0 var(--space-5);display:flex}.lesson-view .paged-nav button{min-width:44px;min-height:44px;padding:0 var(--space-3);flex:none}.lesson-view .paged-nav button[aria-disabled=true]{opacity:.45;cursor:default}.paged-dots{justify-content:center;gap:var(--space-2);flex-wrap:wrap;flex:1;display:flex}.paged-dots span{background:var(--line-strong);border-radius:50%;width:8px;height:8px}.paged-dots span[data-current]{background:var(--blue)}.paged-count{color:var(--muted);white-space:nowrap;font-size:14px;font-weight:600}}@media (max-width:400px){.lesson-view .lesson-back-words{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}@media (max-width:380px){.lesson-view .mobile-lesson-prev{width:44px;padding:0}.mobile-lesson-words{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.lesson-view .mobile-lesson-tools{gap:0}}@media (max-width:700px) and (prefers-reduced-motion:no-preference){.lesson-view .lesson-header{transition:padding .16s,box-shadow .16s}.lesson-view .lesson-content[data-step-dir]>[id^=part-]:not(:has(.answer-sheet)){animation:.22s ease-out mobile-step-next;position:relative}.lesson-view .lesson-content[data-step-dir=prev]>[id^=part-]:not(:has(.answer-sheet)){animation-name:mobile-step-prev}.answer-sheet-toggle svg,.paged-knob{transition:transform .16s,left .16s}@keyframes mobile-step-next{0%{opacity:0;left:24px}}@keyframes mobile-step-prev{0%{opacity:0;left:-24px}}}@media (forced-colors:active){.lesson-view .lesson-steps button:before,.paged-dots span{background:graytext}.lesson-view .lesson-steps button[aria-current=step]:before,.lesson-view .lesson-steps button[data-done]:before,.paged-dots span[data-current]{background:highlight}.paged-switch:has(input:checked) .paged-knob{background:highlight}}
.bookmark-button{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);width:44px;height:44px;color:var(--muted);flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.bookmark-button[aria-pressed=true]{border-color:var(--blue);background:var(--blue-soft);color:var(--blue-ink)}.bookmark-button:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.lesson-title-row{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.lesson-title-row h1{overflow-wrap:anywhere;min-width:0}.lesson-keep{gap:var(--space-4);margin-top:var(--space-6);padding-top:var(--space-5);border-top:1px solid var(--line);display:grid}.lesson-keep .summary-link{justify-self:start}.lesson-keep-label{align-items:center;gap:var(--space-1);margin-bottom:var(--space-2);font-weight:700;display:inline-flex}.lesson-keep textarea{width:100%;min-height:120px;padding:var(--space-3);border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--bg);color:var(--ink);font:inherit;resize:vertical;display:block}.lesson-keep-status{align-items:center;gap:var(--space-3);min-height:24px;margin:var(--space-2) 0 0;color:var(--muted);flex-wrap:wrap;font-size:14px;display:flex}.lesson-keep-concepts,.saved-concepts{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.lesson-keep-concepts li,.saved-concepts li{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.lesson-keep-concepts li>div,.saved-concepts li>div{overflow-wrap:anywhere;gap:2px;min-width:0;display:grid}.lesson-keep-concepts span,.saved-concepts span{color:var(--muted);font-size:14px}.lesson-sidebar .summary-link{width:100%;margin-top:var(--space-4);justify-content:flex-start}.saved-list>ul{gap:var(--space-4);margin:0;padding:0;list-style:none;display:grid}.saved-item{gap:var(--space-3);display:grid}.saved-item h2,.saved-item h3,.saved-item .lesson-kind{margin:0}.saved-item h2{overflow-wrap:anywhere;font-size:19px}.saved-item h3{font-size:15px}.saved-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.saved-note{gap:var(--space-1);padding:var(--space-3);border-radius:var(--radius-sm);background:var(--soft);justify-items:start;display:grid}.saved-note p{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}.saved-note .text-button{align-items:center;gap:var(--space-1);display:inline-flex}
.profile{gap:var(--space-5);max-width:820px;display:grid}.profile>*,.profile-stack>*{min-width:0}.profile h1{margin:0}.profile-stack,.profile-set{gap:var(--space-4);display:grid}.profile-set h2{align-items:center;gap:var(--space-1);margin:0;font-size:19px;display:flex}.profile-label{align-items:center;gap:var(--space-1);margin-bottom:var(--space-2);font-weight:700;display:inline-flex}.profile-label label{margin:0}.profile-field{display:grid}.profile-emails{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.profile-locked{align-items:center;gap:var(--space-2);min-height:44px;padding:var(--space-2) var(--space-3);border:1px dashed var(--line-strong);border-radius:var(--radius-sm);background:var(--canvas);color:var(--muted);overflow-wrap:anywhere;display:flex}.profile-actions{justify-content:flex-end;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.profile-actions .profile-status{margin-right:auto}.profile-status:empty{display:none}.profile-status{color:var(--green);margin:0;font-weight:600}.profile-row{justify-content:space-between;align-items:center;gap:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--line);flex-wrap:wrap;display:flex}.profile-set h2+.profile-row{border-top:0;padding-top:0}.profile-row-end{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:inline-flex}.profile-dialog{gap:var(--space-4);margin-top:var(--space-4);display:grid}.profile-dialog .dialog-actions{margin-top:var(--space-2)}.profile-password{gap:var(--space-2);display:flex}.profile-password input{flex:1;min-width:0}.profile-password button{flex:none}.profile-check{align-items:center;gap:var(--space-2);font-weight:400;display:flex}.profile-spaces{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin:0;padding:0;list-style:none;display:grid}.profile-spaces li{gap:var(--space-2);padding:var(--space-4);display:grid}.profile-spaces p{margin:0}.profile-space-head{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.profile-facts{gap:var(--space-2);margin:0;display:grid}.profile-facts div{gap:var(--space-3);grid-template-columns:minmax(120px,180px) minmax(0,1fr);display:grid}.profile-facts dt{color:var(--muted)}.profile-facts dd{overflow-wrap:anywhere;margin:0}.profile-who th[scope=row]{font-weight:600}.profile-yes,.profile-no{align-items:center;gap:var(--space-1);font-weight:600;display:inline-flex}.profile-yes{color:var(--green)}.profile-no{color:var(--muted)}.profile-danger{border-color:var(--danger-soft)}.profile-danger .ui-callout{align-items:center;gap:var(--space-2);display:flex}.recovery{gap:var(--space-4);display:grid}.recovery h2{margin:0}.recovery>.text-button,.recovery>.ui-chip{justify-self:start;align-items:center;gap:var(--space-1);display:inline-flex}.recovery>.ui-button{justify-self:start}.recovery-links{align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}@media (max-width:700px){.profile-facts div{grid-template-columns:minmax(0,1fr);gap:0}.profile-who th[scope=row]{padding:12px;display:block}}.recovery>p,.recovery>.small{text-align:left;margin:0}
.company-screen{gap:20px;min-width:0;max-width:1040px;display:grid}.company-narrow{max-width:720px}.company-screen h1{overflow-wrap:anywhere;font-size:30px}.company-screen h1:focus{outline:none}.company-screen h2{font-size:20px}.company-hello{margin-bottom:0}.company-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 16px;min-width:0;display:flex}.company-head .ui-button svg{margin-right:4px}.company-kicker{letter-spacing:.06em;text-transform:uppercase;color:var(--faint);margin-bottom:4px;font-size:13px;font-weight:700;display:block}.company-crumbs{color:var(--muted);flex-wrap:wrap;gap:4px 8px;font-size:14px;display:flex}.company-crumbs>span{overflow-wrap:anywhere;align-items:center;gap:8px;min-width:0;display:inline-flex}.company-crumbs .text-button{text-align:left;padding:0}.company-stack{gap:16px;min-width:0;display:grid}.company-stack>span:first-child{justify-self:start}.company-card{gap:16px;min-width:0;display:grid}.company-card h2,.company-card h3{overflow-wrap:anywhere}.company-card>.ui-button{justify-self:start}.company-cols{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);align-items:start;gap:20px;display:grid}.company-aside{gap:16px;min-width:0;display:grid}.company-facts{flex-wrap:wrap;gap:8px 24px;font-size:15px;display:flex}.company-facts b{color:var(--ink);font-variant-numeric:tabular-nums}.company-list{margin:0;padding:0;list-style:none;display:grid}.company-list li{border-top:1px solid var(--line);overflow-wrap:anywhere;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px 12px;padding:12px 0;display:grid}.company-list li:first-child{border-top:0}.company-list-icon{background:var(--canvas);width:36px;height:36px;color:var(--muted);border-radius:10px;place-items:center;display:grid}.company-list li[data-tone=warn] .company-list-icon{background:var(--warn-soft);color:var(--warn)}.company-list li[data-tone=info] .company-list-icon{background:var(--blue-soft);color:var(--blue)}.company-list-end{justify-self:end}.company-todo{margin:0;padding:8px 20px;list-style:none;display:grid}.company-todo li{border-top:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 0;display:grid}.company-todo li:first-child{border-top:0}.company-step{background:var(--blue-soft);width:36px;height:36px;color:var(--blue-ink);border-radius:10px;place-items:center;font-weight:700;display:grid}.company-empty{border:1px dashed var(--line-strong);border-radius:var(--radius-md);text-align:center;justify-items:center;gap:12px;padding:40px 16px;display:grid}.company-denied{border-style:solid}.company-denied-icon{background:var(--warn-soft);width:52px;height:52px;color:var(--warn);border-radius:14px;place-items:center;display:grid}.company-denied h1{font-size:24px}.company-person{overflow-wrap:anywhere;gap:2px;min-width:0;display:grid}.company-person .ui-chip{justify-self:start}.company-sub{color:var(--muted);overflow-wrap:anywhere;font-size:13px;font-weight:400;display:block}.company-inline-list{overflow-wrap:anywhere;margin:0;padding:0;list-style:none}.company-row-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.company-filters{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:8px 20px;display:flex}.company-filters .course-filter{flex:320px;margin-bottom:0}.company-role-filter,.company-select{min-width:200px;max-width:340px}.company-role-filter label,.company-select label{margin-top:0}.company-course-list{gap:16px;display:grid}.company-course{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:16px;display:grid}.company-course>div{gap:8px;min-width:0;display:grid}.company-course h2{overflow-wrap:anywhere}.company-screen legend{color:var(--muted);margin-bottom:4px;padding:0;font-size:15px}.company-screen legend b{color:var(--ink)}.company-choice,.company-check{border:1px solid var(--line);background:var(--bg);border-radius:10px;align-items:flex-start;gap:12px;margin:0;padding:12px;font-weight:400;display:flex}.company-check{border:0;padding:0}.company-choice:has(input:checked:not(:disabled)){border-color:var(--blue);background:var(--blue-soft)}.company-choice[data-disabled]{background:var(--canvas)}.company-choice input[type=radio]{width:17px;height:17px;min-height:17px;accent-color:var(--blue);flex:none;margin-top:3px}.company-choice input[type=checkbox]{margin-top:3px}.company-choice>span{overflow-wrap:anywhere;gap:1px;min-width:0;display:grid}.company-pick{gap:8px;max-height:340px;padding:2px;display:grid;overflow:auto}.company-summary{align-content:start}.company-summary .ui-button{justify-self:stretch}.company-form{gap:16px;display:grid}.company-form label{margin-top:0}.company-dialog-actions{flex-wrap:wrap}.company-screen .console-field label{margin-top:0}.company-screen textarea{border:1px solid var(--line-strong);background:var(--bg);width:100%;min-height:96px;color:var(--ink);font:inherit;border-radius:7px;padding:12px}.company-screen [aria-invalid=true]{border-color:var(--danger)}.company-field-error{color:var(--danger);margin-top:8px;font-size:14px;font-weight:600}.company-screen .ui-callout{justify-items:start;gap:8px;display:grid}.company-dl{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:16px 20px;margin:0;display:grid}.company-dl dt{color:var(--muted);font-size:13px}.company-dl dd{overflow-wrap:anywhere;margin:2px 0 0;font-weight:700}.company-progress{gap:4px;min-width:90px;display:grid}.company-withdrawals{gap:12px;min-width:0;display:grid}@media (max-width:860px){.company-cols{grid-template-columns:minmax(0,1fr)}}@media (max-width:700px){.company-screen h1{font-size:25px}.company-list li,.company-todo li{grid-template-columns:auto minmax(0,1fr)}.company-list-end,.company-todo li>.ui-button{grid-column:2;justify-self:start}.company-course{grid-template-columns:minmax(0,1fr)}.company-course>.ui-button{justify-self:start}.company-row-actions{justify-content:flex-start}}.company-screen .ui-table caption{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.company-screen .ui-table .ui-chip,.company-withdrawals .ui-table .ui-chip{white-space:nowrap}.company-bulk-bar{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:8px 16px;display:flex}.company-bulk-bar .company-check{align-items:center;min-height:44px}.company-bulk-search{flex:200px;min-width:0}
.certificate-actions{align-items:center;gap:var(--space-2);margin:var(--space-3) 0;flex-wrap:wrap;display:flex}.certificate-share-note{color:var(--muted);font-size:14px;font-weight:600}.certificate-share-note:empty{display:none}@media (max-width:480px){.certificate-actions>.ui-button{flex:100%}}
.group-report{gap:var(--space-3);min-width:0;display:grid}.group-report-head{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.group-report-head h2,.group-report-head h3{margin:0}.group-report-facts{gap:var(--space-3) var(--space-4);grid-template-columns:repeat(auto-fit,minmax(min(100%,140px),1fr));margin:0;display:grid}.group-report-facts dt{color:var(--muted);font-size:13px}.group-report-facts dd{margin:2px 0 0;font-weight:700}
.bulk-invite{gap:var(--space-4);display:grid}.bulk-invite textarea{width:100%;min-height:140px;padding:var(--space-3);border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--bg);color:var(--ink);font:inherit;resize:vertical}.bulk-invite input[type=file]{max-width:100%}.bulk-invite .dialog-actions{margin-top:var(--space-2)}.bulk-invite-lead{align-items:center;gap:var(--space-2);margin:0;display:flex}.bulk-invite-summary{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(110px,1fr));margin:0;display:grid}.bulk-invite-summary>div{padding:var(--space-2) var(--space-3);border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--canvas);gap:2px;display:grid}.bulk-invite-summary dt{color:var(--muted);font-size:13px}.bulk-invite-summary dd{margin:0;font-size:20px;font-weight:800}.bulk-invite-group summary{cursor:pointer;font-weight:600}.bulk-invite-count{color:var(--muted);font-weight:400}.bulk-invite-group ul{gap:var(--space-1);max-height:200px;margin:var(--space-2) 0 0;padding-left:var(--space-5);overflow-wrap:anywhere;display:grid;overflow:auto}.bulk-invite-group .bulk-invite-links{padding-left:0;list-style:none}.bulk-invite-links li{gap:2px;display:grid}.bulk-invite-links input{width:100%;min-width:0}.bulk-invite-email{color:var(--muted);font-size:13px}.bulk-invite-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}
.ui-toast-region{z-index:40;bottom:var(--space-4);width:min(560px, calc(100vw - 2 * var(--space-4) - 104px));pointer-events:none;position:fixed;left:50%;transform:translate(-50%)}.ui-toast{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-2) var(--space-2) var(--space-4);border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--ink);color:var(--bg);box-shadow:var(--shadow-popover);pointer-events:auto;display:flex}.ui-toast-text{overflow-wrap:anywhere;flex:1;min-width:0;font-size:15px}.ui-toast button{border-radius:var(--radius-sm);min-width:44px;min-height:44px;color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;flex:none;justify-content:center;align-items:center;display:inline-flex}.ui-toast .ui-toast-undo{padding:0 var(--space-3);text-underline-offset:3px;font-weight:800;text-decoration:underline}.ui-toast button:hover:not(:disabled){background:color-mix(in srgb, var(--bg) 16%, transparent)}.ui-toast button:focus-visible{outline:3px solid var(--bg);outline-offset:-3px}.ui-toast button[aria-disabled=true]{opacity:.6;cursor:wait}@media (max-width:700px){.ui-toast-region{bottom:calc(76px + env(safe-area-inset-bottom));left:var(--space-4);width:auto;right:var(--space-4);transform:none}}@media (prefers-reduced-motion:no-preference){.ui-toast{animation:.18s ease-out both ui-toast-in}}@keyframes ui-toast-in{0%{opacity:0;transform:translateY(8px)}}
.tcal{gap:var(--space-4);min-width:0;display:grid}.tcal h2{margin:0}.tcal-tools{align-items:end;gap:var(--space-3) var(--space-4);flex-wrap:wrap;min-width:0;display:flex}.tcal-tools .console-field{flex:200px}.tcal-views,.tcal-nav{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.tcal-period{text-align:center;min-width:10ch}.tcal-period:first-letter{text-transform:uppercase}.tcal-who{align-items:center;gap:var(--space-2);flex-wrap:wrap;margin:0;display:flex}.tcal-month{border-collapse:collapse;table-layout:fixed;width:100%}.tcal-month th{padding:var(--space-2);color:var(--muted);text-align:left;font-size:.85rem}.tcal-month abbr{text-decoration:none}.tcal-month td{height:96px;padding:var(--space-2);border:1px solid var(--line);vertical-align:top;overflow-wrap:anywhere;font-size:.85rem}.tcal-date{margin-bottom:var(--space-1);font-weight:700;display:block}.tcal-outside{background:var(--canvas);color:var(--faint)}.tcal-off{background:var(--canvas)}.tcal-holiday{color:var(--warn);font-weight:700;display:block}.tcal-items{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.tcal-items li{padding:2px var(--space-1);border-left:3px solid var(--tutor);background:var(--tutor-soft);color:var(--ink);border-radius:2px}.tcal-time{font-variant-numeric:tabular-nums;font-weight:700}.tcal-free{margin-top:var(--space-1);color:var(--green);display:block}.tcal-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.tcal-list>li{gap:var(--space-1);padding:var(--space-3);border:1px solid var(--line);border-radius:var(--radius-sm);overflow-wrap:anywhere;display:grid}.tcal-day{margin:0;font-size:1rem}.tcal-day:first-letter{text-transform:uppercase}.tcal-list-narrow{display:none}@media (max-width:640px){.tcal-month{display:none}.tcal-list-narrow{display:grid}}.tcal-fields{gap:var(--space-3)}.tcal-days{gap:var(--space-2);flex-wrap:wrap;display:flex}.tcal-day-pick{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--bg);cursor:pointer;justify-content:center;align-items:center;min-width:44px;min-height:44px;margin:0;font-weight:700;display:inline-flex;position:relative}.tcal-day-pick input{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.tcal-day-pick:has(input:checked){border-color:var(--blue);background:var(--blue);color:var(--on-accent)}.tcal-day-pick:has(input:focus-visible){outline:3px solid var(--focus);outline-offset:2px}.tcal-slot{align-items:end;gap:var(--space-3);flex-wrap:wrap;display:flex}.tcal-slot .console-field{flex:120px}.tcal-slot label{margin:0 0 var(--space-2);display:block}.tcal-availability{min-width:0;padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-radius:var(--radius-sm);overflow-wrap:anywhere}.tcal-availability h3{margin:0 0 var(--space-2);font-size:1rem}.tcal-availability ul{padding-left:var(--space-5);margin:0}.tcal-holiday-list{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.tcal-holiday-list li{justify-content:space-between;align-items:center;gap:var(--space-2);overflow-wrap:anywhere;flex-wrap:wrap;display:flex}
.sa-dashboard{min-width:0}.sa-grid{gap:var(--space-4);grid-template-columns:minmax(0,1fr);display:grid}@media (min-width:1000px){.sa-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.sa-grid[aria-busy=true]{opacity:.6}.sa-card{min-width:0}.sa-card h2{align-items:center;gap:var(--space-2);min-height:28px;margin-bottom:var(--space-4);display:flex}.sa-stats{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(112px,1fr));margin:0;display:grid}.sa-stat{justify-content:space-between;gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.sa-stat dt{align-items:center;gap:var(--space-1);min-height:28px;color:var(--muted);font-size:14px;display:flex}.sa-stat dd{gap:var(--space-1);flex-direction:column;margin:0;display:flex}.sa-stat-value{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:28px;font-weight:700;line-height:1.1}.sa-stat-value .ui-chip{font-family:var(--font-body);font-size:14px}.sa-stat-note{color:var(--muted);font-size:13px}.sa-pending{gap:0;margin:0;padding:0;list-style:none;display:grid}.sa-pending li{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--line);display:flex}.sa-pending li:last-child{border-bottom:0}.sa-pending a{color:var(--blue-ink);font-weight:600}.sa-pending .ui-chip{font-variant-numeric:tabular-nums;flex:none}.sa-chart{gap:var(--space-1);margin:0 0 var(--space-3);display:grid}.sa-chart svg{width:100%;height:160px;display:block}.sa-chart-max,.sa-chart-axis{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.sa-chart-axis{justify-content:space-between;gap:var(--space-2);display:flex}.sa-chart-base{stroke:var(--line-strong);stroke-width:1px}.sa-chart-bar{fill:var(--blue)}.sa-chart-hit{fill:#0000}.sa-chart g:hover .sa-chart-hit{fill:var(--blue-soft)}@media (max-width:700px){.sa-stat-value{font-size:24px}}
.notice-bell{gap:var(--space-2);position:relative}.side-foot .notice-bell{color:var(--muted)}.app-top .notice-bell{margin-left:auto}.notice-bell.is-compact{min-width:44px;padding:var(--space-2) var(--space-3)}.notice-bell-icon{place-items:center;display:inline-grid;position:relative}.notice-badge{border:2px solid var(--bg);border-radius:var(--radius-pill);background:var(--danger);min-width:18px;height:18px;color:var(--on-accent);text-align:center;padding:0 5px;font-size:11px;font-weight:700;line-height:14px;position:absolute;top:-7px;right:-9px}@media (max-width:900px){.side-foot .notice-bell{display:none}}dialog:has(.notice-panel){width:min(420px,100% - 32px);max-height:min(640px,100dvh - 32px);padding:var(--space-5)}@media (min-width:901px){dialog:has(.notice-panel){inset:auto auto var(--space-4) calc(252px + var(--space-2));margin:0;position:fixed}dialog:has(.notice-panel)::backdrop{background:0 0}}@media (max-width:900px){dialog:has(.notice-panel){width:100%;max-width:none;max-height:85dvh;padding-bottom:calc(var(--space-5) + env(safe-area-inset-bottom));border-radius:var(--radius-lg) var(--radius-lg) 0 0;margin:0;inset:auto 0 0}}@media (max-width:900px) and (prefers-reduced-motion:no-preference){dialog[open]:has(.notice-panel){animation:.2s ease-out notice-sheet-in}}@keyframes notice-sheet-in{0%{opacity:0;transform:translateY(24px)}}.notice-panel{margin-top:var(--space-3)}.notice-empty{margin:var(--space-2) 0 0;color:var(--muted)}.notice-list{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.notice-item{align-items:start;gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-sm);grid-template-columns:auto minmax(0,1fr) auto;display:grid;position:relative}.notice-item:hover{background:var(--soft)}.notice-item.is-new{background:var(--blue-soft)}.notice-icon{background:var(--soft);width:34px;height:34px;color:var(--muted);border-radius:50%;place-items:center;display:grid}.notice-start,.notice-certificate{background:var(--green-soft);color:var(--green)}.notice-ending,.notice-inactivity{background:var(--warn-soft);color:var(--warn)}.notice-reply{background:var(--tutor-soft);color:var(--tutor)}.notice-review{background:var(--blue-soft);color:var(--blue-ink)}.notice-link{min-width:0;color:var(--ink);gap:2px;text-decoration:none;display:grid}.notice-link:after{content:"";border-radius:var(--radius-sm);position:absolute;inset:0}.notice-link:focus-visible{outline:none}.notice-link:focus-visible:after{outline:3px solid var(--focus);outline-offset:0}.notice-subject{overflow-wrap:anywhere;font-weight:600}.notice-item.is-new .notice-subject{font-weight:700}.notice-link time{color:var(--muted);font-size:13px}.notice-dot{width:10px;height:10px;margin-top:var(--space-2);background:var(--blue);border-radius:50%}.notice-actions{margin-top:var(--space-4);justify-content:flex-end;display:flex}
.review-card,.welcome-card{margin:0 0 var(--space-7);padding:var(--space-5) var(--space-6);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--bg)}.review-head{align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.review-icon{border-radius:var(--radius-pill);background:var(--pale);width:48px;height:48px;color:var(--blue);flex:none;place-items:center;display:grid}.review-heading{gap:var(--space-1);flex:1;min-width:0;display:grid}.review-heading .lesson-kind,.review-body .lesson-kind,.welcome-card .lesson-kind{align-items:center;gap:var(--space-1);margin:0;display:inline-flex}.review-card h2,.welcome-card h2{margin:0;font-size:21px}.review-body.lesson-part{margin:var(--space-5) 0 0}.review-body h3{margin:var(--space-2) 0 0;font-size:18px;line-height:1.35}.review-body fieldset{margin:var(--space-4) 0 0}.review-body fieldset>.ui-button{margin-top:var(--space-2)}.review-actions,.welcome-actions{gap:var(--space-3);margin-top:var(--space-4);flex-wrap:wrap;display:flex}.review-body:not(.lesson-part){justify-items:start;gap:var(--space-2);margin-top:var(--space-5);display:grid}.review-done{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border:1px solid var(--green);border-radius:var(--radius-pill);background:var(--green-soft);color:var(--green);margin:0;font-weight:800;display:inline-flex}.review-score{color:var(--muted);margin:0}.welcome-card{gap:var(--space-3);border-color:var(--blue);background:linear-gradient(135deg, var(--pale), var(--bg) 70%);display:grid}.welcome-top{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.welcome-dots{gap:var(--space-1);display:flex}.welcome-dots span{border-radius:var(--radius-pill);background:var(--line);width:28px;height:6px;transition:background-color .24s}.welcome-dots span[data-active]{background:var(--blue)}.welcome-form{max-width:420px;display:grid}.welcome-form .welcome-actions{margin-top:var(--space-2)}.welcome-lesson{gap:var(--space-1);margin:0;display:grid}.welcome-lesson span{color:var(--muted)}@media (max-width:520px){.review-card,.welcome-card{padding:var(--space-4)}.review-head>.ui-button{width:100%}}@media (prefers-reduced-motion:reduce){.review-streak{animation:none}.welcome-dots span{transition:none}}
