.brand-lockup{display:inline-flex;align-items:center;gap:.45em;color:var(--vc-ink);font-family:var(--vc-display);font-size:1.3rem;font-weight:800;letter-spacing:-.01em;line-height:1}.brand-lockup .brand-lockup__mark{display:block;width:1.9em;height:1.9em;flex:none;object-fit:contain}.brand-lockup__name{white-space:nowrap}.page-loader__logo .brand-lockup{font-size:1.75rem}html :is(.brand,.login-page__brand,.auth-page__brand,.about-header__brand,.student-navbar__brand,.class-scene__brand):has(>.brand-lockup){width:auto;max-width:none}html :is(.brand,.login-page__brand,.auth-page__brand,.about-header__brand,.student-navbar__brand,.class-scene__brand) .brand-lockup .brand-lockup__mark{width:1.9em;height:1.9em}@media(max-width:600px){html :is(.brand,.login-page__brand,.auth-page__brand,.student-navbar__brand) .brand-lockup__name{display:none}}.brand:has(>.brand-lockup):after{transform:scaleX(0) rotate(-1deg)}@media(hover:hover)and (pointer:fine){.brand:has(>.brand-lockup):hover:after{transform:scaleX(1) rotate(-1deg)}}.navigation-brand-logo{font-size:1.15rem}.student-navbar__brand:has(.navigation-brand-logo){flex-basis:auto}.app-header .brand:has(.navigation-brand-logo){min-height:44px}@media(max-width:600px){.navigation-brand-logo .brand-lockup__name{display:none}}.signout-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;display:grid;place-items:center;padding:24px;background:#1912336b;animation:route-arrive .18s ease-out both}.signout-dialog{width:min(100%,430px);padding:26px;border:2px solid var(--vc-ink);border-radius:20px;background:var(--vc-surface);box-shadow:7px 7px 0 var(--vc-ink);animation:pop-arrive .24s cubic-bezier(.2,.8,.2,1) both}.signout-dialog__heading{display:flex;align-items:flex-start;gap:13px}.signout-dialog__icon{display:grid;flex:0 0 42px;width:42px;height:42px;place-items:center;border:1px solid rgba(184,60,29,.22);border-radius:12px;background:var(--vc-coral-soft);color:var(--vc-coral-dark)}.signout-dialog__heading .eyebrow{margin:1px 0 5px;color:var(--vc-coral-dark)}.signout-dialog h2{margin:0;font-family:var(--vc-display);font-size:1.28rem;line-height:1.15}.signout-dialog__description{margin:18px 0 0;color:var(--vc-ink-3);font-size:.78rem;line-height:1.55}.signout-dialog__actions{display:flex;justify-content:flex-end;gap:10px;margin-top:23px;padding-top:17px;border-top:1px solid var(--vc-line)}.signout-dialog__actions form{margin:0}.signout-dialog__actions .button{display:inline-flex;align-items:center;gap:7px}.signout-dialog__confirm{border-color:var(--vc-ink);background:var(--vc-coral);box-shadow:3px 3px 0 var(--vc-ink);color:#fff}.signout-dialog__confirm:hover:not(:disabled){border-color:var(--vc-ink);background:var(--vc-coral-dark);box-shadow:4px 4px 0 var(--vc-ink);color:#fff}.signout-dialog__confirm:active:not(:disabled){box-shadow:1px 1px 0 var(--vc-ink);transform:translate(2px,2px)}@media(max-width:720px){.signout-dialog-backdrop{padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}.signout-dialog{padding:22px}.signout-dialog__actions{flex-direction:column-reverse}.signout-dialog__actions form,.signout-dialog__actions .button{width:100%}.signout-dialog__actions .button{justify-content:center}}@media(prefers-reduced-motion:reduce){.signout-dialog-backdrop,.signout-dialog{animation:none}}.app-frame--student{--student-navbar-height: calc(77px + env(safe-area-inset-top)) }.app-frame--student .route-frame:has(.legacy-react-route){animation:none;transform:none}.app-frame--student .legacy-react-route{top:var(--student-navbar-height);height:calc(100dvh - var(--student-navbar-height))}.app-frame--student .app-main:has(.about-page){width:100%;padding:0}.student-navbar{position:sticky;top:0;z-index:40;padding-top:env(safe-area-inset-top);background:var(--vc-surface);border-bottom:1px solid var(--vc-line-2);color:var(--vc-ink)}.student-navbar__inner{position:relative;display:flex;align-items:center;gap:24px;width:min(1400px,calc(100% - 48px));min-height:76px;margin-inline:auto}.student-navbar__brand{display:flex;align-items:center;flex:0 0 154px;min-height:44px}.student-navbar__brand img{width:100%;height:auto}.student-navbar__navigation{display:flex;gap:4px}.student-navbar__link{display:flex;align-items:center;min-height:44px;padding:0 16px;border-radius:8px;color:var(--vc-ink-2);font-size:14px;font-weight:750;text-decoration:none}.student-navbar__link:hover{background:var(--vc-cream);color:var(--vc-ink)}.student-navbar__link.is-active{background:var(--vc-yellow);color:var(--vc-ink)}.student-navbar__overview{display:flex;gap:20px;margin-left:auto}.student-navbar__overview a{display:flex;min-height:44px;flex-direction:column;justify-content:center;gap:2px;text-decoration:none;color:var(--vc-ink-3)}.student-navbar__overview strong{color:var(--vc-ink);font-size:16px;font-weight:800;font-variant-numeric:tabular-nums}.student-navbar__overview span{font-size:12px;white-space:nowrap}.student-navbar__overview a:hover span{text-decoration:underline}.student-navbar__account{position:relative}.student-navbar__account-trigger,.student-navbar__toggle{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:4px 8px;border:1px solid transparent;border-radius:8px;background:transparent;color:inherit;cursor:pointer}.student-navbar__account-trigger:hover,.student-navbar__account-trigger[aria-expanded=true],.student-navbar__toggle:hover{background:var(--vc-cream)}.student-navbar__avatar{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;overflow:hidden;border-radius:50%;background:var(--vc-purple-soft);color:var(--vc-purple-dark);font-size:12px;font-weight:800}.student-navbar__avatar img{width:100%;height:100%;object-fit:cover}.student-navbar__name{max-width:144px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:700}.student-navbar__toggle{display:none;width:44px;padding:0}.student-navbar__menu{position:absolute;top:calc(100% + 12px);right:0;width:min(280px,calc(100vw - 32px));padding:8px;border:1px solid var(--vc-line-2);border-radius:12px;background:var(--vc-surface);box-shadow:0 8px 24px #0b0b0d1f}.student-navbar__identity{display:grid;gap:4px;padding:12px 8px;margin-bottom:4px;border-bottom:1px solid var(--vc-line);overflow-wrap:anywhere}.student-navbar__identity strong{font-size:14px}.student-navbar__identity span{font-size:12px;color:var(--vc-ink-3)}.student-navbar__menu a,.student-navbar__menu button{display:flex;align-items:center;gap:12px;width:100%;min-height:44px;padding:8px;border:0;border-radius:6px;background:transparent;color:var(--vc-ink);font:inherit;font-size:14px;text-decoration:none;cursor:pointer}.student-navbar__menu a:hover,.student-navbar__menu button:hover{background:var(--vc-cream)}.student-navbar :is(a,button):focus-visible{outline:2px solid var(--vc-purple-dark);outline-offset:3px}@media(max-width:1100px){.student-navbar__name{display:none}.student-navbar__inner{gap:16px}}@media(max-width:900px){.app-frame--student{--student-navbar-height: calc(69px + env(safe-area-inset-top)) }.student-navbar__inner{width:calc(100% - 32px);min-height:68px;gap:8px}.student-navbar__brand{flex-basis:140px}.student-navbar__toggle{display:flex;margin-left:auto}.student-navbar__overview{display:none}.student-navbar__navigation{position:absolute;top:100%;right:-16px;left:-16px;display:none;padding:12px 16px;border-bottom:1px solid var(--vc-line-2);background:var(--vc-surface);box-shadow:0 8px 16px #0b0b0d14}.student-navbar__navigation.is-open{display:grid}.student-navbar__link{min-height:48px}.student-navbar__menu{top:calc(100% + 8px)}}@media print{.app-frame--student :is(.student-navbar,.skip-link,.scroll-progress){display:none}.app-frame--student .app-main:has(.printable-page,.printable-state){width:100%;margin:0;padding:0}}body:has(.student-account-main){overflow-x:clip}body:has(.student-account-main),.app-frame--student-account{background:var(--vc-surface)}.app-frame--student-account .app-main{width:min(1400px,calc(100% - 64px));padding:48px 0 80px;background:var(--vc-surface);color:var(--vc-ink)}.student-account-main :is(h1,h2,h3){margin:0;font-family:var(--vc-display);letter-spacing:-.025em;overflow-wrap:anywhere}.student-account-main h1{font-size:clamp(28px,3vw,40px);line-height:1.15}.student-account-main h2{font-size:24px;line-height:1.3}.student-account-main h3{font-size:20px;line-height:1.35}.student-account-main p{font-size:14px;line-height:1.65;color:var(--vc-ink-3)}.student-account-heading{display:flex;align-items:center;gap:24px;padding-bottom:32px}.student-account-heading__copy{flex:1;min-width:0}.student-account-heading__copy p{margin:8px 0 0;overflow-wrap:anywhere}.student-account-main .student-account-action{display:inline-flex;align-items:center;justify-content:center;min-height:44px;gap:8px;color:var(--vc-purple-dark);font-size:14px;font-weight:750;text-decoration:none}.student-account-action:hover{text-decoration:underline;text-underline-offset:4px}.student-account-main :is(a,button,input):focus-visible{outline:2px solid var(--vc-purple-dark);outline-offset:3px}.student-account-main .button{min-height:44px;padding:10px 16px;border:1px solid var(--vc-purple-dark);border-radius:8px;background:var(--vc-purple-dark);color:#fff;box-shadow:none;font-size:14px;transform:none}.student-account-main .button:hover:not(:disabled){background:var(--vc-purple);box-shadow:none;transform:none}.student-account-main .button--quiet{background:var(--vc-surface);color:var(--vc-purple-dark);border-color:var(--vc-line-2)}.student-account-main .button--quiet:hover:not(:disabled){background:var(--vc-purple-soft);color:var(--vc-purple-dark)}.student-account-main .button:disabled{cursor:wait;opacity:.6}.student-account-main .student-account-empty{margin-top:24px}.student-account-main .state-surface{border:0;border-radius:0;background:transparent;box-shadow:none;padding-inline:0}.student-account-empty a{color:var(--vc-purple-dark)}.app-frame--student-account .student-profile-main{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:40px 64px}.student-profile-heading,.student-profile-metrics,.student-profile-classes{grid-column:1 / -1}.student-profile-heading{padding-bottom:0}.student-profile-avatar{display:grid;place-items:center;flex:0 0 80px;width:80px;height:80px;overflow:hidden;border-radius:50%;background:var(--vc-purple-soft);color:var(--vc-purple-dark);font-size:24px;font-weight:750}.student-profile-avatar img{width:100%;height:100%;object-fit:cover}.student-account-heading__copy .student-profile-membership{font-size:12px}.student-profile-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:0;padding:28px 0;border-block:1px solid var(--vc-line)}.student-profile-metrics>div{display:flex;flex-direction:column;gap:8px}.student-profile-metrics dt{color:var(--vc-ink-3);font-size:14px}.student-profile-metrics dd{order:-1;margin:0;font-size:clamp(24px,3vw,36px);line-height:1.2;font-weight:750;font-variant-numeric:tabular-nums}.student-profile-section{min-width:0}.student-profile-section>p{margin:8px 0 0}.student-profile-section>.student-account-action{margin-top:16px}.student-profile-points,.student-profile-languages,.student-profile-class-list{list-style:none;padding:0;margin:24px 0 0}.student-profile-points{display:grid;gap:24px}.student-profile-points li a{display:flex;align-items:baseline;justify-content:space-between;min-height:44px;gap:16px;color:var(--vc-ink);font-size:14px;text-decoration:none}.student-profile-points li a:hover>span{text-decoration:underline}.student-profile-points li a>span{overflow-wrap:anywhere}.student-profile-points strong{flex:0 0 auto;font-variant-numeric:tabular-nums}.student-profile-points small{color:var(--vc-ink-3);font-size:12px;font-weight:400}.student-profile-points__track{display:block;height:6px;overflow:hidden;border-radius:3px;background:var(--vc-purple-soft)}.student-profile-points__track>span{display:block;height:100%;background:var(--vc-purple)}.student-profile-languages li{display:flex;align-items:center;gap:16px;min-height:64px;border-bottom:1px solid var(--vc-line);font-size:14px}.student-profile-languages li>span:last-child{margin-left:auto;color:var(--vc-ink-3)}.student-profile-classes{padding-top:32px;border-top:1px solid var(--vc-line)}.student-profile-classes>header{display:flex;align-items:center;justify-content:space-between;gap:16px}.student-profile-class-list li{border-bottom:1px solid var(--vc-line)}.student-profile-class-list a{display:grid;grid-template-columns:auto minmax(0,1fr) auto 18px;align-items:center;gap:20px;min-height:88px;padding:16px 0;color:var(--vc-ink);text-decoration:none}.student-profile-class-list a:hover strong{color:var(--vc-purple-dark);text-decoration:underline}.student-profile-class-list__name{display:grid;gap:6px;overflow-wrap:anywhere}.student-profile-class-list__name strong{font-size:16px}.student-profile-class-list__name>span{font-size:14px;color:var(--vc-ink-3)}.student-profile-class-list__points{font-size:16px;font-weight:750;font-variant-numeric:tabular-nums}.student-profile-class-list__points small{color:var(--vc-ink-3);font-size:12px;font-weight:400}.student-settings-navigation{display:flex;flex-wrap:wrap;gap:8px;padding-bottom:20px;border-bottom:1px solid var(--vc-line)}.student-settings-navigation a{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 16px;border-radius:8px;color:var(--vc-ink-2);font-size:14px;font-weight:700;text-decoration:none}.student-settings-navigation a:hover{background:var(--vc-cream)}.student-settings-navigation a.is-active{background:var(--vc-yellow);color:var(--vc-ink)}.student-account-main .student-settings-section{max-width:1040px;margin:0;padding:32px 0 0;border:0;border-radius:0;background:var(--vc-surface);box-shadow:none}.student-account-main .account-panel__heading{align-items:flex-start}.student-account-main .account-panel__heading>svg{display:none}.student-account-main .account-panel__intro{display:block!important;margin-top:8px;font-size:14px;line-height:1.65}.student-account-main .settings-profile-preview{margin:24px 0;padding:0 0 24px;border:0;border-bottom:1px solid var(--vc-line);border-radius:0;background:transparent}.student-account-main .account-avatar{border:0;border-radius:50%;background:var(--vc-purple-soft);color:var(--vc-purple-dark)}.student-account-main .settings-profile-preview strong,.student-account-main .avatar-settings-row strong{font-family:var(--vc-font);font-size:16px}.student-account-main .settings-profile-preview span,.student-account-main .settings-fields label>span{font-size:14px}.student-account-main .panel-link{min-height:44px;margin:0;font-size:14px}.student-account-main .settings-fields{gap:24px;max-width:820px}.student-account-main .settings-fields input,.student-account-main .parent-filters input{min-height:48px;border:1px solid var(--vc-line-2);border-radius:8px;background:var(--vc-surface);box-shadow:none;font-size:16px}.student-account-main .settings-fields input[readonly]{background:#f8fafc;color:var(--vc-ink-3)}.student-account-main .settings-fields small{font-size:12px;line-height:1.6}.student-account-main .settings-section__footer{gap:24px;padding:24px 0 0;margin-top:24px;border-top:1px solid var(--vc-line)}.student-account-main .settings-section__footer>span{font-size:14px;line-height:1.6}.student-account-main .settings-toggle{grid-template-columns:32px minmax(0,1fr) 44px;gap:16px;min-height:88px;padding:24px 0}.student-account-main .settings-toggle strong{font-size:16px}.student-account-main .settings-toggle small{max-width:72ch;font-size:14px;line-height:1.6}.student-account-main .settings-toggle .settings-switch{grid-column:3}.student-account-main .settings-toggle:has(input:focus-visible){outline:2px solid var(--vc-purple-dark);outline-offset:4px}.student-account-main .avatar-settings-row{padding:24px 0;border:0;border-radius:0;background:transparent}.student-account-main .avatar-settings-row p{font-size:14px}.student-account-main .account-facts{margin:24px 0 0}.student-account-main .account-facts>div{padding:16px 0}.student-account-main .account-facts dt,.student-account-main .account-facts dd{font-size:14px}.student-account-main .settings-credentials{gap:32px;margin-top:32px;padding:32px 0;border:0;border-block:1px solid var(--vc-line);border-radius:0;background:transparent;box-shadow:none}.student-account-main .settings-credentials:before{content:none}.student-account-main .settings-credentials__icon{display:none}.student-account-main .settings-credentials__heading p{font-size:14px}.student-account-main .settings-password-requirements-panel{padding:12px 0;border:0;border-radius:0;background:transparent}.student-account-main .settings-password-requirements li,.student-account-main .settings-password-requirements__heading{font-size:12px}.student-account-main .settings-password-toggle{width:44px;height:44px;right:2px}.student-account-main .settings-password-field>label{font-size:14px}.student-account-main .settings-danger-zone{margin-top:0;padding:32px 0;border:0;border-radius:0;background:transparent}.student-account-main .settings-danger-zone p{color:var(--vc-ink-3);font-size:14px}.student-account-main .settings-danger-zone .button--danger{background:var(--vc-coral-dark);border-color:var(--vc-coral-dark);box-shadow:none}.student-account-main .account-status{max-width:1040px;margin:24px 0 0;font-size:14px}.student-account-main .account-status button{min-width:44px;min-height:44px}@media(max-width:800px){.app-frame--student-account .student-profile-main{grid-template-columns:1fr;gap:32px}.student-profile-section{grid-column:1}.student-profile-heading{flex-wrap:wrap}.student-profile-heading>.student-account-action{margin-left:104px}}@media(max-width:600px){.app-frame--student-account .app-main{width:calc(100% - 32px);padding-top:32px}.student-account-heading{flex-wrap:wrap;gap:16px}.student-account-heading__copy{flex-basis:calc(100% - 80px)}.student-profile-avatar{flex-basis:64px;width:64px;height:64px;font-size:20px}.student-profile-heading>.student-account-action{margin-left:80px}.student-profile-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.student-profile-class-list a{grid-template-columns:auto minmax(0,1fr) 18px;gap:16px}.student-profile-class-list__points{grid-column:2;grid-row:2;font-size:14px}.student-profile-class-list a>svg{grid-column:3;grid-row:1 / 3}.student-settings-navigation{gap:4px}.student-settings-navigation a{padding-inline:10px}.student-account-main .settings-toggle{grid-template-columns:24px minmax(0,1fr) 44px;gap:12px}.student-account-main .settings-toggle>span:nth-child(2){grid-column:2}.student-account-main .settings-toggle .settings-switch{grid-row:1}.student-account-main .settings-fields{grid-template-columns:1fr}.student-account-main .settings-profile-preview .panel-link,.student-account-main .avatar-settings-row .button{margin-left:0}.student-account-main .settings-section__footer{flex-direction:column;align-items:stretch}.student-account-main .settings-section__footer .button{width:100%}}.game-fullscreen-shell{position:relative;min-width:0}html.is-game-fullscreen{overflow:hidden!important;scrollbar-gutter:auto!important}.game-fullscreen-control{position:absolute;top:16px;right:18px;z-index:100;display:grid;justify-items:end;gap:7px;pointer-events:none}.game-fullscreen-control__button{display:grid;width:44px;height:44px;place-items:center;padding:0;border:2px solid #111;border-radius:999px;background:#fff8ec;box-shadow:4px 4px #111;color:#111;cursor:pointer;pointer-events:auto}.game-fullscreen-control__button:hover{background:#ffdb62;transform:translateY(-1px)}.game-fullscreen-control__button:focus-visible{outline:3px solid #0168cf;outline-offset:3px}.game-fullscreen-control__error{max-width:190px;padding:7px 9px;border:1px solid #111;border-radius:8px;background:#fff0e9;color:#8e2c24;font-size:.68rem;font-weight:800;text-align:right}.game-fullscreen-shell--cloze .game-fullscreen-control,.game-fullscreen-shell--scramble .game-fullscreen-control{top:76px}.game-fullscreen-shell--tour .game-fullscreen-control{top:92px;right:24px}.game-fullscreen-shell--boss-quest .game-fullscreen-control{top:100px;right:24px}.game-fullscreen-shell:fullscreen>.boss-quest,.game-fullscreen-shell:-webkit-full-screen>.boss-quest{height:100dvh;min-height:100dvh;margin:0;border-radius:0}.game-fullscreen-shell:fullscreen,.game-fullscreen-shell:-webkit-full-screen{width:100vw;height:100dvh;min-height:100dvh;overflow:auto;scrollbar-width:none;background:#fff8ec}.game-fullscreen-shell:fullscreen::-webkit-scrollbar,.game-fullscreen-shell:-webkit-full-screen::-webkit-scrollbar{width:0;height:0}.game-fullscreen-shell:fullscreen>.tour-game,.game-fullscreen-shell:-webkit-full-screen>.tour-game{width:100%;height:100dvh;min-height:100dvh;margin:0;border-radius:0}.game-fullscreen-shell:fullscreen>.cloze,.game-fullscreen-shell:fullscreen>.connect-page,.game-fullscreen-shell:fullscreen>.scramble-game,.game-fullscreen-shell:fullscreen>.game-preview-page,.game-fullscreen-shell:fullscreen>.admin-test-page,.game-fullscreen-shell:fullscreen>.legacy-react-route,.game-fullscreen-shell:-webkit-full-screen>.cloze,.game-fullscreen-shell:-webkit-full-screen>.connect-page,.game-fullscreen-shell:-webkit-full-screen>.scramble-game,.game-fullscreen-shell:-webkit-full-screen>.game-preview-page,.game-fullscreen-shell:-webkit-full-screen>.admin-test-page,.game-fullscreen-shell:-webkit-full-screen>.legacy-react-route{width:100%;min-height:100dvh}@media(max-width:760px){.game-fullscreen-shell--boss-quest .game-fullscreen-control{top:84px;right:12px}.game-fullscreen-control{top:12px;right:12px}.game-fullscreen-shell--cloze .game-fullscreen-control,.game-fullscreen-shell--scramble .game-fullscreen-control{top:72px}.game-fullscreen-shell--tour .game-fullscreen-control{top:84px;right:16px}}@media(prefers-reduced-motion:reduce){.game-fullscreen-control__button:hover{transform:none}}.class-code{position:relative;z-index:1;display:inline-flex;align-items:center;gap:9px;width:fit-content;max-width:100%;min-height:36px;margin-top:18px;padding:0 7px 0 11px;border:1px solid rgba(86,71,227,.2);border-radius:11px;background:var(--vc-purple-soft);color:var(--vc-ink-2)}.class-code__label{color:var(--vc-purple-dark);font-family:var(--vc-mono);font-size:.58rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.class-code code{overflow:hidden;color:var(--vc-ink);font-family:var(--vc-mono);font-size:.7rem;font-weight:850;letter-spacing:.1em;text-overflow:ellipsis;white-space:nowrap}.class-code button{display:grid;width:27px;height:27px;flex:0 0 auto;place-items:center;border:1px solid rgba(86,71,227,.22);border-radius:8px;background:#fff;color:var(--vc-purple-dark);transition:transform .16s ease,background-color .16s ease}.class-code button:hover{background:var(--vc-yellow);transform:translateY(-1px)}.class-code button:active{transform:translateY(1px)}.class-code--compact{margin-top:0;min-height:32px}.class-code--compact .class-code__label{font-size:.53rem}.class-code--compact code{font-size:.64rem}@media(max-width:480px){.class-code{gap:6px;max-width:100%}.class-code__label{display:none}}.school-page{width:min(1120px,100%);margin:0 auto;display:grid;gap:28px}.school-page__header h1{margin:0;font-family:var(--vc-display);font-size:clamp(1.8rem,4vw,2.5rem);line-height:1}.school-page__header p,.school-page__form>p{margin:8px 0 0;color:var(--vc-ink-3);font-size:.9rem}.school-page__columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:20px;align-items:start}.school-page__section,.school-page__form{min-width:0;display:grid;gap:12px;padding:22px;border:1px solid var(--vc-line-2);border-radius:var(--vc-radius-sm);background:var(--vc-surface)}.school-page__section h2,.school-page__form h2{margin:0;font-family:var(--vc-display);font-size:1.25rem}.school-page__list{display:grid;gap:10px;margin:0;padding:0;list-style:none}.school-page__item{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border:1px solid var(--vc-line);border-radius:14px}.school-page__item>div:first-child{display:grid;gap:3px;min-width:0}.school-page__item span,.school-page__item q{color:var(--vc-ink-3);font-size:.82rem}.school-page__item.is-approved .school-page__status{color:var(--vc-green)}.school-page__item.is-declined .school-page__status,.school-page__item.is-withdrawn .school-page__status{color:var(--vc-ink-3)}.school-page__status{font-size:.8rem;font-weight:800}.school-page__actions{display:flex;gap:8px}.school-page__form label{margin-top:4px;font-size:.82rem;font-weight:800}.school-page__form label span{color:var(--vc-ink-3);font-weight:600}.school-page__form select,.school-page__form textarea{width:100%;min-width:0;min-height:44px;padding:10px 12px;border:1px solid var(--vc-line-2);border-radius:12px;background:var(--vc-surface);color:var(--vc-ink);font:inherit}.school-page__primary,.school-page__secondary{min-height:44px;padding:0 18px;border-radius:var(--vc-radius-pill);font:inherit;font-size:.85rem;font-weight:800;cursor:pointer;transition:transform .16s cubic-bezier(.2,.8,.2,1),background-color .16s ease-out}.school-page__primary{border:1px solid var(--vc-purple-dark);background:var(--vc-purple);color:var(--vc-surface)}.school-page__primary:hover:not(:disabled){background:var(--vc-purple-dark)}.school-page__secondary{border:1px solid var(--vc-line-2);background:var(--vc-surface);color:var(--vc-ink-2)}.school-page__secondary:hover:not(:disabled){border-color:var(--vc-purple);color:var(--vc-purple-dark)}.school-page__primary:active:not(:disabled),.school-page__secondary:active:not(:disabled){transform:translateY(1px)}.school-page__primary:disabled,.school-page__secondary:disabled{cursor:not-allowed;opacity:.55}.school-page__primary:focus-visible,.school-page__secondary:focus-visible,.school-page__form select:focus-visible,.school-page__form textarea:focus-visible{outline:3px solid var(--vc-purple);outline-offset:2px}.school-page__empty{margin:0;color:var(--vc-ink-3);font-size:.88rem}.school-page__error{margin:0;color:var(--vc-coral-dark);font-size:.85rem;font-weight:700}.school-page__notice{margin:0;color:var(--vc-green);font-size:.85rem;font-weight:700}@media(prefers-reduced-motion:reduce){.school-page__primary,.school-page__secondary{transition:none}}.content-draft{display:grid;gap:10px;margin:0 0 16px;padding:14px;border:1px solid var(--vc-purple-soft-2);border-radius:12px;background:var(--vc-purple-soft)}.content-draft h3{margin:0;font-size:.95rem}.content-draft>p{margin:0;color:var(--vc-ink-2);font-size:.82rem;line-height:1.45}.content-draft__form{display:grid;gap:6px}.content-draft__form label{font-size:.82rem;font-weight:800}.content-draft__form input,.content-draft__form select{min-height:44px;padding:8px 10px;border:1px solid var(--vc-line-2);border-radius:10px;background:var(--vc-surface);color:var(--vc-ink);font:inherit;font-size:.875rem}.content-draft__row{display:flex;flex-wrap:wrap;align-items:end;gap:10px}.content-draft__row label{display:grid;gap:4px}.content-draft__primary,.content-draft__secondary{min-height:44px;padding:0 16px;border-radius:var(--vc-radius-pill);font:inherit;font-size:.82rem;font-weight:800;cursor:pointer;transition:transform .16s cubic-bezier(.2,.8,.2,1),background-color .16s ease-out}.content-draft__primary{border:1px solid var(--vc-purple-dark);background:var(--vc-purple);color:var(--vc-surface)}.content-draft__primary:hover:not(:disabled){background:var(--vc-purple-dark)}.content-draft__secondary{border:1px solid var(--vc-line-2);background:var(--vc-surface);color:var(--vc-ink-2)}.content-draft__secondary:hover:not(:disabled){border-color:var(--vc-purple);color:var(--vc-purple-dark)}.content-draft__primary:active:not(:disabled),.content-draft__secondary:active:not(:disabled){transform:translateY(1px)}.content-draft__primary:disabled,.content-draft__secondary:disabled{cursor:not-allowed;opacity:.55}.content-draft__primary:focus-visible,.content-draft__secondary:focus-visible,.content-draft__form input:focus-visible,.content-draft__form select:focus-visible{outline:3px solid var(--vc-purple);outline-offset:2px}.content-draft__status{margin:0;min-height:1em;color:var(--vc-ink-2);font-size:.8rem}.content-draft__error{margin:0;color:var(--vc-coral-dark);font-size:.82rem;font-weight:700}.content-draft__list{display:grid;gap:8px;margin:0;padding:0;list-style:none}.content-draft__list li{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--vc-line);border-radius:10px;background:var(--vc-surface)}.content-draft__list dl{display:grid;gap:2px;margin:0;min-width:0}.content-draft__list dl div{display:flex;gap:6px;font-size:.84rem}.content-draft__list dt{color:var(--vc-ink-3);font-weight:700}.content-draft__list dd{margin:0;overflow-wrap:anywhere}.content-draft__actions{display:flex;gap:6px}@media(prefers-reduced-motion:reduce){.content-draft__primary,.content-draft__secondary{transition:none}}.boss-quest-authoring{border-top:1px solid var(--vc-game-line, #d8d2bc);padding-top:12px}.boss-quest-authoring label{display:block;margin-bottom:6px;font-size:.875rem;font-weight:700}.boss-quest-authoring textarea{width:100%;min-width:0;box-sizing:border-box;font:inherit;font-size:.875rem}.boss-quest-authoring p{margin:8px 0;font-size:.8125rem;line-height:1.5}.boss-quest-authoring__actions{display:flex;flex-wrap:wrap;gap:8px}.boss-quest-authoring button{min-height:44px}.boss-quest-authoring [role=alert]{color:#813c25}.boss-quest-authoring :focus-visible{outline:3px solid #a96d08;outline-offset:3px}.printable-page{--printable-ink: #17202a;--printable-muted: #69757c;--printable-coral: #e86c3d;--printable-teal: #157a67;min-height:100vh;padding:24px;background:#eee9df;color:var(--printable-ink)}.printable-toolbar{width:min(1120px,100%);margin:0 auto 18px;display:flex;align-items:center;gap:12px}.printable-back,.printable-controls,.printable-print-button{display:inline-flex;align-items:center;gap:7px}.printable-back{color:#26384a;font-weight:700;text-decoration:none;margin-right:auto;transition:color .16s ease,transform .16s ease}.printable-back:hover{color:var(--printable-coral);transform:translate(-2px)}.printable-controls{padding:8px 10px;border:1px solid #d6cec0;border-radius:12px;background:#fffdf9;font-size:12px;font-weight:700}.printable-controls input{width:54px;border:1px solid #c9c0b4;border-radius:6px;padding:5px;font:inherit}.printable-count-control{display:inline-flex;align-items:center;overflow:hidden;border:1px solid #c9c0b4;border-radius:8px;background:#fff}.printable-count-control input{width:42px;border:0;border-radius:0;padding:5px 2px;text-align:center}.printable-count-control button{width:28px;height:29px;padding:0;border-radius:0;background:transparent;color:#26384a;box-shadow:none;font-size:17px;line-height:1}.printable-count-control button:hover:not(:disabled){background:#f5ede3;color:var(--printable-coral);box-shadow:none;transform:none}.printable-count-control button:focus-visible{outline:2px solid #f1b34d;outline-offset:-2px}.printable-controls button,.printable-print-button{border:0;border-radius:9px;background:#162d3e;color:#fff;padding:8px 12px;font-weight:800;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease}.printable-controls button:hover:not(:disabled),.printable-print-button:hover:not(:disabled){background:#21465b;box-shadow:0 3px #0f202b;transform:translateY(-1px)}.printable-controls button:active:not(:disabled),.printable-print-button:active:not(:disabled){box-shadow:none;transform:translateY(1px)}.printable-controls button:focus-visible,.printable-print-button:focus-visible,.printable-back:focus-visible{outline:3px solid #f1b34d;outline-offset:3px}.printable-controls--workflow{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.printable-controls--workflow button:disabled,.printable-print-button:disabled{opacity:.5;cursor:not-allowed}.printable-status{padding:5px 8px;border-radius:8px;background:#e8f2ee;color:var(--printable-teal);font:800 11px/1 JetBrains Mono,monospace}.printable-print-button{background:var(--printable-coral)}.printable-workflow-error{width:min(1120px,100%);margin:0 auto 12px;color:#a33c32;font-size:13px;font-weight:700}.printable-sheet{width:min(1120px,100%);margin:0 auto;padding:52px 64px;border:1px solid #e4dacd;border-radius:20px 16px 24px 18px;background:#fffdf9;box-shadow:0 18px 42px #2d251a1f}.printable-header{position:relative;padding-bottom:28px;border-bottom:1px solid #17202a}.printable-brand{color:var(--printable-coral);font-size:23px;font-weight:900;letter-spacing:0}.printable-brand span{color:var(--printable-ink)}.printable-header h1{margin:0;max-width:760px;font:800 56px/1 Bricolage Grotesque,sans-serif;letter-spacing:0}.printable-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;color:#53606a;font-size:13px;font-weight:700}.printable-meta span{padding:6px 10px;border:1px solid #ded6ca;border-radius:9px;background:#fffaf3}.printable-identity{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(2,minmax(120px,.6fr));gap:26px;margin-top:28px;padding-top:22px;border-top:1px solid #e4dacd}.printable-identity div{display:grid;gap:7px}.printable-identity small{color:#65717a;font:800 10px/1 JetBrains Mono,monospace;text-transform:uppercase;letter-spacing:.04em}.printable-identity strong{min-height:24px;font-size:14px}.printable-sections{display:grid;gap:0;padding-top:14px}.printable-section{--section-accent: var(--printable-coral);padding:30px 0 34px;border-bottom:1px solid #d9d0c3;break-inside:avoid}.printable-section--cloze{--section-accent: var(--printable-teal)}.printable-section--reading{--section-accent: #53606a}.printable-section__heading{display:flex;justify-content:space-between;align-items:start;gap:24px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #ece4da}.printable-section__heading>div{display:flex;align-items:baseline;gap:10px;min-width:0}.printable-section__index{flex:0 0 auto;color:var(--section-accent);font:800 12px/1 JetBrains Mono,monospace}.printable-section h2{margin:0;font:800 30px/1.05 Bricolage Grotesque,sans-serif;letter-spacing:0}.printable-section__heading p{max-width:390px;margin:0;padding:9px 12px;border:1px solid #ebdfd2;border-radius:9px;background:#fff8f1;color:var(--printable-muted);font-size:12px;line-height:1.45;text-align:right}.printable-connect{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.35fr);gap:32px}.printable-list{display:grid;gap:9px}.printable-row{display:grid;grid-template-columns:25px minmax(0,1fr) 48px;align-items:center;gap:7px;min-height:28px;font-size:13px}.printable-list--options .printable-row{grid-template-columns:25px minmax(0,1fr)}.printable-row b,.printable-reorder-row>b,.printable-cloze-row>b,.printable-reading__question>b{display:grid;width:25px;height:25px;place-items:center;border-radius:8px;background:#fff0e7;color:var(--printable-coral);font:800 11px/1 JetBrains Mono,monospace}.printable-row i,.printable-cloze-row i,.printable-reading__question i{display:block;height:18px;border-bottom:1px solid #7e8788}.printable-reorder{display:grid;gap:18px}.printable-reorder-row{display:grid;gap:8px}.printable-reorder-row>b{display:grid}.printable-token-line{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-height:34px;padding:5px 0 3px}.printable-token-line .printable-token{display:inline-flex;align-items:center;min-height:30px;padding:5px 10px;border:1px solid #e2d1c2;border-radius:9px;background:#fff7ed;box-shadow:0 1px #e8d8c9;font-size:12px;line-height:1.25}.printable-token-separator{display:none}.printable-answer-line{height:29px;border-bottom:1px solid #7e8788}.printable-cloze{display:grid;gap:13px}.printable-cloze-row{display:grid;grid-template-columns:25px minmax(0,1fr) minmax(120px,230px);align-items:end;gap:8px;min-height:30px;font-size:13px}.printable-cloze-story{display:grid;gap:20px}.printable-cloze-story__copy{padding:20px 22px 19px;border:1px solid #d5e5dc;border-left:5px solid var(--printable-teal);border-radius:14px 10px;background:#f1f8f4}.printable-cloze-story__copy h3{margin:0;font:800 24px/1.08 Bricolage Grotesque,sans-serif;letter-spacing:0}.printable-cloze-story__copy>p:first-of-type{margin:8px 0 18px;color:#69757c;font-size:11px;font-weight:700}.printable-cloze-story__paragraph{margin:0 0 13px;font:500 15px/1.75 Manrope,sans-serif}.printable-cloze-story__paragraph:last-child{margin-bottom:0}.printable-cloze-story__segment{display:inline}.printable-cloze-story__blank{display:inline-block;min-width:104px;height:21px;margin:0 5px;border-bottom:2px solid #53606a;vertical-align:baseline}.printable-cloze-keyset{display:grid;gap:8px;padding:16px 18px;border:1px solid #e2d7ca;border-radius:12px;background:#fffaf3}.printable-cloze-keyset>strong{color:var(--printable-teal);font:800 12px/1 JetBrains Mono,monospace;letter-spacing:.04em;text-transform:uppercase}.printable-cloze-keyset>span{color:#69757c;font-size:11px}.printable-cloze-keyset>div{display:flex;flex-wrap:wrap;gap:7px}.printable-keyset-word{display:inline-flex;min-height:29px;align-items:center;padding:4px 10px;border:1px solid #d9d1c6;border-radius:999px;background:#fffdf9;color:var(--printable-ink);font-size:12px;font-weight:700}.printable-reading__text{margin:0 0 22px;padding:18px 20px;border:1px solid #d5e5dc;border-left:5px solid var(--printable-teal);border-radius:14px 10px;background:#f1f8f4;font:500 15px/1.7 Manrope,sans-serif}.printable-reading__questions{display:grid;gap:17px}.printable-reading__question{display:grid;grid-template-columns:25px 1fr;gap:8px;font-size:13px}.printable-reading__question>div{display:grid;gap:12px}.printable-state{min-height:100vh;display:grid;place-content:center;justify-items:center;gap:12px;color:#17202a;background:#f4f0e8}.printable-state.is-error{color:#a33c32}.printable-state a{color:inherit;font-weight:800}.printable-state h1{margin:0;font:800 42px/1 Bricolage Grotesque,sans-serif;letter-spacing:0;text-align:center}.printable-state p{max-width:460px;margin:0;color:#69757c;text-align:center}.printable-loader{width:30px;height:30px;border:3px solid #d6cec0;border-top-color:#e86c3d;border-radius:50%;animation:printable-spin .7s linear infinite}@keyframes printable-spin{to{transform:rotate(360deg)}}[contenteditable=true]{border-radius:4px;outline:1px dashed transparent;transition:outline-color .15s ease,background-color .15s ease}[contenteditable=true]:hover{outline-color:#d6cec0}[contenteditable=true]:focus{outline:2px solid #157a67;outline-offset:3px;background:#f5fbf7}@media(max-width:760px){.printable-page{padding:12px}.printable-toolbar{flex-wrap:wrap}.printable-controls{order:3;width:100%}.printable-controls--workflow{align-items:stretch}.printable-controls--workflow button{flex:1 1 auto}.printable-sheet{padding:32px 22px;border-radius:15px 12px 17px 13px}.printable-header h1{font-size:38px}.printable-state h1{font-size:30px}.printable-identity,.printable-connect{grid-template-columns:1fr;gap:16px}.printable-section__heading{display:block}.printable-section__heading p{margin-top:12px;text-align:left}.printable-cloze-row{grid-template-columns:25px minmax(0,1fr)}.printable-cloze-row i{grid-column:2}.printable-cloze-story__copy{padding:16px}.printable-cloze-story__blank{min-width:78px}}@media print{@page{size:A4;margin:13mm}.no-print{display:none!important}.printable-page{padding:0;background:#fff}.printable-sheet{width:100%;padding:0;border:0;border-radius:0;box-shadow:none}.printable-header h1{font-size:38px}.printable-sections{gap:0}.printable-section{padding:22px 0}.printable-section:nth-child(2),.printable-section:nth-child(3),.printable-section:nth-child(4){break-before:page}.printable-token-line .printable-token{background:transparent}.printable-cloze-keyset{break-inside:avoid}}.student-goal-detail{width:min(1160px,calc(100% - 32px));margin:0 auto;padding:34px 0 72px}.student-goal-detail__back{display:inline-flex;align-items:center;gap:8px;margin-bottom:24px;color:var(--vc-ink-2);font-size:.88rem;font-weight:800;text-decoration:none;transition:color .16s ease,transform .16s ease}.student-goal-detail__back:hover{color:var(--vc-purple);transform:translate(-3px)}.student-goal-detail__hero{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(360px,.96fr);min-height:390px;overflow:hidden;border:1px solid var(--vc-line-2);border-radius:28px;background:#fffdf8;box-shadow:8px 8px 0 var(--vc-yellow)}.student-goal-detail__hero-copy{display:flex;flex-direction:column;align-items:flex-start;padding:clamp(28px,5vw,58px)}.student-goal-detail__class-line{display:flex;align-items:center;gap:9px;margin-bottom:38px;color:var(--vc-ink-2);font-size:.78rem;font-weight:800;letter-spacing:.02em}.student-goal-detail__class-line .flag{flex:0 0 auto;border:1px solid var(--vc-line-2);border-radius:5px;box-shadow:2px 2px 0 var(--vc-ink)}.student-goal-detail__eyebrow{margin:0 0 9px;color:var(--vc-coral-dark);font-family:var(--vc-mono);font-size:.67rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.student-goal-detail__hero h1{max-width:590px;margin:0;font-family:var(--vc-display);font-size:clamp(2.35rem,5vw,4.8rem);font-weight:800;letter-spacing:-.065em;line-height:.94}.student-goal-detail__intro{max-width:480px;margin:21px 0 0;color:var(--vc-ink-2);font-size:1.03rem;line-height:1.65}.student-goal-detail__hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px;margin-top:auto;padding-top:34px}.student-goal-detail__play{display:inline-flex;align-items:center;gap:10px;min-height:48px;padding:0 18px;border:1px solid var(--vc-ink);border-radius:999px;background:var(--vc-purple);box-shadow:4px 4px 0 var(--vc-ink);color:#fff;font-size:.88rem;font-weight:850;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease}.student-goal-detail__play:hover{background:var(--vc-purple-dark);box-shadow:2px 2px 0 var(--vc-ink);transform:translate(2px,2px)}.student-goal-detail__print{display:inline-flex;align-items:center;gap:8px;min-height:48px;padding:0 15px;border:1px solid var(--vc-ink);border-radius:999px;background:var(--vc-yellow);color:var(--vc-ink);font-size:.82rem;font-weight:850;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease}.student-goal-detail__print:hover{background:#ffd45b;box-shadow:3px 3px 0 var(--vc-ink);transform:translate(-1px,-1px)}.student-goal-detail__hero-status{display:inline-flex;align-items:center;gap:7px;color:var(--vc-ink-2);font-size:.8rem;font-weight:800}.student-goal-detail__hero-status i,.student-goal-detail__status i{width:8px;height:8px;border-radius:50%;background:var(--vc-ink-3)}.student-goal-detail__hero-status--active i,.student-goal-detail__status i{background:var(--vc-yellow)}.student-goal-detail__hero-status--done i,.student-goal-detail__progress--done .student-goal-detail__status i{background:var(--vc-green)}.student-goal-detail__hero-art{position:relative;min-height:390px;background-color:var(--vc-blue);background-position:center;background-size:cover}.student-goal-detail__hero-art:after{position:absolute;top:0;right:0;bottom:0;left:0;background:#0b0b0d4d;content:""}.student-goal-detail__art-label{position:absolute;z-index:1;right:28px;bottom:25px;left:28px;color:#fff}.student-goal-detail__art-label span{display:block;margin-bottom:6px;font-family:var(--vc-mono);font-size:.65rem;font-weight:800;letter-spacing:.14em}.student-goal-detail__art-label strong{display:block;font-family:var(--vc-display);font-size:clamp(1.75rem,3vw,2.8rem);letter-spacing:-.05em}.student-goal-detail__layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr);gap:18px;margin-top:48px}.student-goal-detail__main,.student-goal-detail__side{display:grid;align-content:start;gap:18px;min-width:0}.student-goal-detail__panel{padding:27px;border-top:2px solid var(--vc-ink);background:#ffffff80}.student-goal-detail__panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:25px}.student-goal-detail__panel-heading h2{margin:0;font-family:var(--vc-display);font-size:clamp(1.35rem,2vw,1.85rem);letter-spacing:-.045em;line-height:1}.student-goal-detail__panel-heading>svg{flex:0 0 auto;color:var(--vc-purple)}.student-goal-detail__facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;border-top:1px solid var(--vc-line);border-left:1px solid var(--vc-line)}.student-goal-detail__fact{min-width:0;padding:16px 17px;border-right:1px solid var(--vc-line);border-bottom:1px solid var(--vc-line)}.student-goal-detail__fact dt{margin-bottom:7px;color:var(--vc-ink-3);font-family:var(--vc-mono);font-size:.63rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.student-goal-detail__fact dd{margin:0;overflow:hidden;color:var(--vc-ink);font-size:.92rem;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.student-goal-detail__sets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none}.student-goal-detail__sets li{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;padding:0 13px;border:1px solid var(--vc-line-2);border-radius:10px;background:var(--vc-cream);color:var(--vc-ink);font-size:.86rem;font-weight:800}.student-goal-detail__sets li svg{flex:0 0 auto;color:var(--vc-purple)}.student-goal-detail__no-material{margin:0;color:var(--vc-ink-3);font-size:.9rem;line-height:1.6}.student-goal-detail__progress{background:var(--vc-ink);color:#fff}.student-goal-detail__progress .student-goal-detail__eyebrow{color:var(--vc-yellow)}.student-goal-detail__progress .student-goal-detail__panel-heading>h2,.student-goal-detail__progress h2{color:#fff}.student-goal-detail__status{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid rgba(255,255,255,.28);border-radius:999px;color:#fff;font-size:.69rem;font-weight:800;white-space:nowrap}.student-goal-detail__progress-line{height:7px;overflow:hidden;border-radius:999px;background:#ffffff2e}.student-goal-detail__progress-line span{display:block;height:100%;border-radius:inherit;background:var(--vc-yellow);transition:width .35s ease}.student-goal-detail__stats{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:21px}.student-goal-detail__stat{display:flex;align-items:center;gap:9px;min-width:0}.student-goal-detail__stat-icon{display:grid;flex:0 0 29px;width:29px;height:29px;place-items:center;border-radius:8px;background:#ffffff1f;color:var(--vc-yellow)}.student-goal-detail__stat strong,.student-goal-detail__stat span{display:block}.student-goal-detail__stat strong{font-size:1.05rem;line-height:1}.student-goal-detail__stat div>span{margin-top:4px;color:#ffffff9e;font-size:.65rem;font-weight:700}.student-goal-detail__last-played{margin:22px 0 0;color:#ffffff9e;font-size:.72rem}.student-goal-detail__empty-progress{display:flex;align-items:flex-start;gap:10px;color:#ffffffc2}.student-goal-detail__empty-progress p{margin:0;font-size:.86rem;line-height:1.55}.student-goal-detail__schedule-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;border-top:1px solid var(--vc-line);border-left:1px solid var(--vc-line)}.student-goal-detail__schedule-list .student-goal-detail__fact:last-child{grid-column:1 / -1}.student-goal-detail__read-only{display:flex;align-items:center;gap:8px;margin-top:21px;color:var(--vc-ink-3);font-size:.72rem;font-weight:800}.student-goal-detail__footnote{display:flex;align-items:center;gap:8px;margin:30px 0 0;color:var(--vc-ink-3);font-size:.76rem;font-weight:700}@media(max-width:820px){.student-goal-detail__hero{grid-template-columns:1fr}.student-goal-detail__hero-art{min-height:250px}.student-goal-detail__hero-copy{min-height:390px}.student-goal-detail__layout{grid-template-columns:1fr;margin-top:34px}}@media(max-width:560px){.student-goal-detail{width:min(100% - 22px,1160px);padding-top:22px}.student-goal-detail__hero{border-radius:20px;box-shadow:5px 5px 0 var(--vc-yellow)}.student-goal-detail__hero-copy{min-height:420px;padding:26px 22px}.student-goal-detail__class-line{margin-bottom:31px;font-size:.69rem}.student-goal-detail__hero h1{font-size:clamp(2.4rem,14vw,4rem)}.student-goal-detail__hero-art{min-height:210px}.student-goal-detail__panel{padding:22px 17px}.student-goal-detail__facts{grid-template-columns:repeat(2,minmax(0,1fr))}.student-goal-detail__sets{grid-template-columns:1fr}.student-goal-detail__stats,.student-goal-detail__stat{gap:5px}.student-goal-detail__stat-icon{display:none}.student-goal-detail__stat strong{font-size:.95rem}.student-goal-detail__hero-actions{align-items:flex-start;flex-direction:column}}@media(prefers-reduced-motion:reduce){.student-goal-detail__back,.student-goal-detail__play,.student-goal-detail__print,.student-goal-detail__progress-line span{transition:none}}/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer theme;@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%;-moz-tab-size:4;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;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;line-height:1.5}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;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]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance: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,utilities;@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:500 800;font-stretch:100%;font-display:swap;src:url(/fonts/bricolage-grotesque-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Manrope;font-style:normal;font-weight:400 700;font-display:swap;src:url(/fonts/manrope-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/jetbrains-mono-500-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:light;color:#0b0b0d;font-synthesis:none;text-rendering:optimizelegibility;--vc-font:"Manrope", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--vc-display:"Bricolage Grotesque", "Manrope", system-ui, sans-serif;--vc-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--vc-cream:#fff8ec;--vc-surface:#fff;--vc-ink:#0b0b0d;--vc-ink-2:#2f3858;--vc-ink-3:#474e6f;--vc-purple:#0168cf;--vc-purple-dark:#01549c;--vc-purple-soft:#eaf4ff;--vc-purple-soft-2:#d9ecff;--vc-coral:#e55b31;--vc-coral-dark:#b83c1d;--vc-coral-soft:#fff0e8;--vc-green:#008b78;--vc-green-soft:#ddf7f1;--vc-yellow:#fdc522;--vc-pink:#e679a7;--vc-blue:#0168cf;--vc-orange:#f28c28;--vc-line:#0b0b0d1a;--vc-line-2:#0b0b0d2e;--vc-radius:32px;--vc-radius-sm:18px;--vc-radius-pill:999px;--vc-shadow-hard:4px 4px 0 #0b0b0d;--vc-shadow-soft:5px 5px 0 #0b0b0d29;--vc-shadow-lift:8px 8px 0 #0b0b0d33;background:#fff8ec;font-family:Manrope,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}html{scroll-behavior:smooth;scrollbar-gutter:stable;overflow-y:scroll}body{background:var(--vc-cream);min-width:320px;color:var(--vc-ink);-webkit-font-smoothing:antialiased;overflow-x:hidden}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit}::selection{background:var(--vc-yellow);color:var(--vc-ink)}:focus-visible{outline:3px solid var(--vc-pink);outline-offset:3px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@keyframes route-arrive{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes panel-arrive{0%{opacity:0;clip-path:inset(0 0 9% round 26px);transform:translateY(18px)}to{opacity:1;clip-path:inset(0 round 26px);transform:none}}@keyframes card-arrive{0%{opacity:0;transform:translateY(16px)scale(.985)}to{opacity:1;transform:none}}@keyframes pop-arrive{0%{opacity:0;transform:translateY(8px)scale(.95)}68%{opacity:1;transform:translateY(-1px)scale(1.01)}to{opacity:1;transform:none}}@keyframes ink-ripple{0%{opacity:.22;transform:translate(-50%,-50%)scale(0)}to{opacity:0;transform:translate(-50%,-50%)scale(2.7)}}@keyframes save-celebrate{0%{transform:scale(1)}42%{transform:scale(1.08)}to{transform:scale(1)}}@keyframes count-pop{0%{opacity:.35;transform:scale(.92)}72%{opacity:1;transform:scale(1.035)}to{transform:scale(1)}}.route-frame{animation:.32s ease-out both route-arrive}.scroll-progress{z-index:90;background:var(--vc-purple);height:3px;transform:scaleX(var(--scroll-progress,0));transform-origin:0;pointer-events:none;position:fixed;inset:0 0 auto}.app-header{z-index:40;border-bottom:1px solid var(--vc-line);background:var(--vc-cream);transition:box-shadow .22s,background-color .22s;position:sticky;top:0}.app-header__inner{align-items:center;gap:16px;width:min(1400px,100% - 32px);min-height:76px;margin:0 auto;display:flex}.brand{transform-origin:0;flex:none;width:168px;margin-right:14px;transition:transform .16s cubic-bezier(.2,.82,.2,1);display:flex;position:relative}.brand:after{border:1.5px solid var(--vc-ink);background:var(--vc-yellow);content:"";transform-origin:0;border-radius:999px;height:4px;transition:transform .22s cubic-bezier(.2,.82,.2,1);position:absolute;bottom:-5px;left:4%;right:4%;transform:scaleX(.22)rotate(-1deg)}.brand img{width:100%;height:auto;transition:transform .18s cubic-bezier(.2,.82,.2,1);display:block}@media(hover:hover)and (pointer:fine){.brand:hover{transform:translateY(-2px)rotate(-.4deg)}.brand:hover:after{transform:scaleX(1)rotate(-1deg)}.brand:hover img{transform:scale(1.025)}}.primary-nav{align-items:center;gap:3px;min-width:0;display:flex}.primary-nav__link{border-radius:var(--vc-radius-pill);min-height:38px;color:var(--vc-ink-2);white-space:nowrap;align-items:center;gap:7px;padding:0 13px;font-size:.89rem;font-weight:750;text-decoration:none;transition:transform .18s cubic-bezier(.2,.9,.3,1.25),background-color .16s,color .16s;display:inline-flex;position:relative;overflow:hidden}.primary-nav__icon{object-fit:contain;flex:0 0 24px;width:24px;height:24px;transition:transform .18s cubic-bezier(.2,.9,.3,1.25);display:block}.primary-nav__link:hover .primary-nav__icon,.primary-nav__link.is-active .primary-nav__icon{transform:rotate(-4deg)scale(1.08)}.primary-nav__link:hover{background:var(--vc-purple-soft);color:var(--vc-purple);transform:translateY(-2px)}.primary-nav__link.is-active{background:var(--vc-purple);color:#fff;box-shadow:0 4px 0 var(--vc-purple-dark)}.primary-nav__link.is-active:hover{background:var(--vc-purple);color:#fff;transform:translateY(-1px)}.header-utility{align-items:center;gap:12px;margin-left:auto;display:flex}.environment-menu{flex:none;position:relative}.environment-menu__trigger{border:1px solid var(--vc-line-2);min-height:44px;color:var(--vc-ink-2);font:inherit;cursor:pointer;background:#fff;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:.78rem;font-weight:750;display:inline-flex}.environment-menu__trigger:hover,.environment-menu__trigger.is-open{color:#8a5b00;border-color:#c80}.environment-menu__trigger:focus-visible,.environment-menu__item:focus-visible{outline-offset:2px;outline:2px solid #c80}.environment-menu__popover{z-index:60;border:1px solid var(--vc-line-2);background:#fff;border-radius:8px;gap:2px;width:190px;padding:6px;display:grid;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 12px 28px -18px #19123373}.environment-menu__item{min-height:44px;color:var(--vc-ink-2);border-radius:6px;gap:2px;padding:8px 10px;text-decoration:none;display:grid}.environment-menu__item:hover,.environment-menu__item.is-active{color:#8a5b00;background:#fff4dc}.environment-menu__item span{font-size:.8rem;font-weight:750}.environment-menu__item small{color:var(--vc-ink-3);font-size:.68rem;font-weight:500}.app-frame--admin .scroll-progress{background:#c80}.app-frame--admin .app-header{background:#fffdf9;border-bottom-color:#d8d1c5;box-shadow:0 8px 24px -24px #25231f8c}.app-frame--admin .environment-menu__trigger{color:#7c5200;background:#fff4dc;border-color:#c80}.header-utility>.nav-stats:not(.nav-stats--loading),.header-utility>.account-control__profile,.header-utility>.button{animation:.22s ease-out both header-utility-arrive}.nav-stats{border-top:1px solid var(--vc-line);border-bottom:1px solid var(--vc-line);align-items:center;min-height:43px;padding:0 3px;display:inline-flex}.nav-stat{min-height:34px;color:var(--vc-ink-3);border-radius:8px;align-items:center;gap:5px;padding:0 10px;text-decoration:none;transition:transform .18s,background-color .18s,color .18s;display:inline-flex;position:relative;overflow:hidden}.nav-stat+.nav-stat{border-left:1px solid var(--vc-line-2)}.nav-stat:hover{background:var(--vc-purple-soft);color:var(--vc-purple-dark);transform:translateY(-1px)}.nav-stat strong{color:var(--vc-purple);font-family:var(--vc-display);font-size:1rem;line-height:1}.nav-stat small{font-size:.74rem;font-weight:750}.nav-stat>span{color:var(--vc-purple);opacity:.68;font-size:.9rem}.nav-stats--loading{justify-content:center;min-width:112px;padding-inline:10px}.account-control__profile{border:1px solid var(--vc-line-2);border-radius:var(--vc-radius-pill);min-width:54px;min-height:51px;box-shadow:var(--vc-shadow-hard);color:var(--vc-ink-3);font:inherit;cursor:pointer;background:#fff;align-items:center;gap:5px;padding:4px 6px 4px 4px;text-decoration:none;transition:transform .18s,border-color .18s,color .18s;display:inline-flex}.account-control__profile:hover{color:var(--vc-purple);border-color:#5647e35c;transform:translateY(-1px)}.account-control__profile.is-open{border-color:var(--vc-ink);background:var(--vc-purple-soft);color:var(--vc-purple-dark)}.account-menu{z-index:30;position:relative}.account-menu__popover{border:2px solid var(--vc-ink);background:var(--vc-surface);width:232px;box-shadow:5px 5px 0 var(--vc-ink);border-radius:16px;gap:3px;padding:8px;animation:.15s ease-out both account-menu-arrive;display:grid;position:absolute;top:calc(100% + 10px);right:0}.account-menu__identity{border-bottom:1px solid var(--vc-line);gap:3px;margin-bottom:3px;padding:10px 10px 11px;display:grid}.account-menu__identity strong{color:var(--vc-ink);font-family:var(--vc-display);text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;overflow:hidden}.account-menu__identity span{color:var(--vc-ink-3);text-overflow:ellipsis;white-space:nowrap;font-size:.66rem;overflow:hidden}.account-menu__popover a,.account-menu__popover form button,.account-menu__popover .account-menu__signout{width:100%;min-height:38px;color:var(--vc-ink-2);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:9px;align-items:center;gap:9px;padding:0 10px;font-size:.74rem;font-weight:800;text-decoration:none;display:flex}.account-menu__popover a:hover,.account-menu__popover form button:hover,.account-menu__popover .account-menu__signout:hover{background:var(--vc-purple-soft);color:var(--vc-purple-dark)}.account-menu__icon{object-fit:contain;flex:0 0 22px;width:22px;height:22px;display:block}.account-menu__popover form{border-top:1px solid var(--vc-line);margin:3px 0 0;padding-top:3px}.account-menu__popover .account-menu__signout{border-top:1px solid var(--vc-line);color:var(--vc-coral-dark);border-radius:0 0 9px 9px;margin-top:3px;padding-top:3px}.account-menu__popover form button{color:var(--vc-coral-dark)}@keyframes account-menu-arrive{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.account-control__profile img,.account-control__fallback{background:var(--vc-purple-soft);object-fit:cover;border:0;border-radius:50%;flex:0 0 40px;place-items:center;width:40px;height:40px;display:grid;overflow:hidden}.account-control__fallback{color:var(--vc-purple);font-family:var(--vc-display);font-size:.78rem;font-weight:800}.account-control__name{display:none}.account-control__loading{border:1px solid var(--vc-line-2);border-radius:var(--vc-radius-pill);background:#fff;place-items:center;min-width:54px;min-height:51px;padding:4px 6px 4px 4px;display:grid}@keyframes header-utility-arrive{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}.app-main{width:min(1400px,100% - 32px);margin:0 auto;padding:46px 0 76px}.app-main:has(.workspace-page){background:#f7f6f9;width:100%;max-width:none;padding:24px clamp(12px,2.4vw,36px) 56px}.page{min-width:0}.page-heading,.workspace-hero,.panel-heading,.dialog-heading,.dialog-actions,.panel-footer,.goal-row,.module-row,.back-link{align-items:center;display:flex}.page-heading{justify-content:space-between;gap:24px;margin-bottom:30px}.page-heading--narrow{max-width:720px}.eyebrow{color:var(--vc-purple-dark);font-family:var(--vc-mono);letter-spacing:.1em;text-transform:uppercase;margin:0 0 8px;font-size:.65rem;font-weight:700;line-height:1.25}.eyebrow,[class$=__eyebrow],[class$=__kicker],.admin-overline,.admin-kicker,.connect-overline,.connect-kicker,.admin-test-overline,.admin-test-lane,.page-heading__intro,.review-page__heading .page-heading__intro,.admin-hero__meta,.admin-health-strip__status,.account-hero__identity>div>p:not(.eyebrow),.account-hero--settings>div>p:not(.eyebrow),.vocab-set-hero__copy>p:not(.eyebrow),.verb-vocab-hero .vocab-set-hero__copy>p:not(.eyebrow),.workspace-hero>div>p:not(.eyebrow),.student-workspace-hero>div>p:not(.eyebrow),.avatar-studio-heading>div>p:not(.eyebrow),.login-page__intro>p,.admin-hero__copy>p,.admin-test-topbar>div>p,.class-calendar__hero>div>p,.about-masthead__lead,.about-section__heading>p,.about-language__copy>p,.about-game__meta,.about-support__role-topline,.account-panel__heading>div>p,.panel-heading>div>p,.student-goal-detail__panel-heading p,.set-collection__head p,.vocab-examples-intro p,.admin-panel-heading p{display:none!important}h1,h2,h3,h4,p{overflow-wrap:anywhere}h1,h2,h3,h4{font-family:var(--vc-display)}h1{color:var(--vc-ink);letter-spacing:0;margin:0;font-size:clamp(2.35rem,4vw,3.8rem);font-weight:800;line-height:.99}h2{color:var(--vc-ink);margin:0;font-size:1.35rem;line-height:1.16}.page-heading__intro,.workspace-hero p:not(.eyebrow){max-width:650px;color:var(--vc-ink-3);margin:12px 0 0;font-size:.99rem;line-height:1.6}.button,.icon-button,.class-card__open,.back-link,.module-row{isolation:isolate;position:relative;overflow:hidden}.button{border:1px solid var(--vc-purple);background:var(--vc-purple);min-height:42px;box-shadow:0 3px 0 var(--vc-purple-dark);color:#fff;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:.88rem;font-weight:800;text-decoration:none;transition:transform .16s cubic-bezier(.2,.9,.3,1.25),background-color .16s,box-shadow .16s;display:inline-flex}.button:hover:not(:disabled){background:var(--vc-purple-dark);transform:translateY(-2px);box-shadow:0 5px #21176d}.button:active:not(:disabled){box-shadow:0 1px 0 var(--vc-purple-dark);transform:translateY(2px)scale(.98)}.button:disabled{opacity:.55;box-shadow:none}.button--quiet:hover:not(:disabled){background:var(--vc-purple-soft);box-shadow:none;color:var(--vc-purple);border-color:#5647e359}.button--danger{background:var(--vc-coral-soft);box-shadow:none;color:var(--vc-coral-dark);border-color:#f2c1b7}.button--danger:hover:not(:disabled){box-shadow:none;color:#aa2f18;background:#ffe0d7;border-color:#e99b8c}.icon-button{width:40px;height:40px;color:var(--vc-ink-3);background:0 0;border:1px solid #0000;border-radius:10px;place-items:center;padding:0;transition:transform .17s,background-color .17s,color .17s;display:inline-grid}.icon-button:hover{background:var(--vc-purple-soft);color:var(--vc-purple);transform:translateY(-1px)}.icon-button:active{transform:scale(.94)}.icon-button--hero{border-color:var(--vc-line);background:#fff;border-radius:50%;width:44px;height:44px}.ink-ripple{z-index:0;pointer-events:none;background:currentColor;border-radius:50%;width:14px;height:14px;animation:.52s cubic-bezier(.2,.7,.3,1) both ink-ripple;position:absolute}.class-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;display:grid}.class-card{border:1px solid var(--vc-line-2);min-height:244px;box-shadow:var(--vc-shadow-soft);animation:card-arrive .4s calc(var(--motion-index,0) * 42ms) ease-out both;background:#fff;border-radius:20px;grid-template-rows:auto 1fr auto;grid-template-columns:minmax(0,1fr) auto;gap:0 12px;padding:24px;transition:border-color .2s,box-shadow .2s,transform .2s cubic-bezier(.2,.9,.3,1.2);display:grid}.class-card:hover{box-shadow:var(--vc-shadow-lift);border-color:#5647e36b;transform:translateY(-4px)}.class-card__topline{display:contents}.language-pill{border-radius:var(--vc-radius-pill);background:var(--vc-purple-soft);color:var(--vc-purple-dark);font-family:var(--vc-mono);letter-spacing:.04em;text-transform:uppercase;border:1px solid #5647e333;grid-column:1;justify-self:start;padding:5px 8px;font-size:.66rem;font-weight:700}.class-card__date{color:var(--vc-ink-3);font-family:var(--vc-mono);text-align:right;grid-column:2;font-size:.62rem}.class-card h2{grid-column:1/-1;align-self:center;margin:23px 0 18px;font-size:clamp(1.25rem,2vw,1.65rem);line-height:1.08}.class-card__people{min-width:0;color:var(--vc-ink-3);grid-column:1;align-self:end;align-items:center;gap:12px;font-size:.78rem;display:flex}.class-card__people>span{white-space:nowrap;align-items:center;gap:5px;display:inline-flex}.class-card__empty{color:var(--vc-ink-3);font-size:.77rem}.class-card__open{min-height:35px;color:var(--vc-purple);border-radius:9px;grid-column:2;align-self:end;align-items:center;gap:7px;margin:0 -9px -9px 0;padding:0 10px;font-size:.79rem;font-weight:800;text-decoration:none;transition:color .18s,background-color .18s,transform .18s;display:inline-flex}.class-card__open svg{transition:transform .18s}.class-card:hover .class-card__open{background:var(--vc-purple-soft);color:var(--vc-purple-dark)}.class-card:hover .class-card__open svg{transform:translate(3px)}.class-card__open:active{transform:scale(.96)}.avatar-stack{align-items:center;min-width:0;padding-left:3px;display:flex}.avatar-stack img,.avatar-stack__more{background:var(--vc-purple-soft-2);object-fit:cover;border:2px solid #fff;border-radius:50%;place-items:center;width:32px;height:32px;margin-left:-7px;transition:transform .18s;display:grid}.avatar-stack img:first-child{margin-left:0}.avatar-stack img:hover{z-index:3;transform:translateY(-5px)scale(1.12)}.avatar-stack__more{color:var(--vc-purple-dark);font-family:var(--vc-mono);font-size:.61rem}.empty-state,.state-surface{border:1px dashed var(--vc-line-2);border-radius:var(--vc-radius-sm);min-height:150px;color:var(--vc-ink-3);text-align:center;background:#fff;justify-content:center;align-items:center;gap:13px;padding:28px;display:flex}.empty-state h2,.state-surface strong{color:var(--vc-ink);font-size:1rem}.empty-state p,.state-surface p{margin:5px 0 0;line-height:1.5}.empty-state--inline{text-align:left;justify-content:flex-start;min-height:112px}.state-surface{margin-top:32px}.state-surface--error{color:var(--vc-coral-dark)}.state-surface--error a{color:var(--vc-purple)}.dialog-backdrop{z-index:80;background:#1912335c;place-items:center;padding:24px;transition:opacity .18s;animation:.18s ease-out both route-arrive;display:grid;position:fixed;top:0;right:0;bottom:0;left:0}.dialog-backdrop.is-closing{opacity:0}.create-dialog{border:1px solid var(--vc-line-2);background:#fff;border-radius:20px;width:min(100%,475px);padding:26px;transition:opacity .18s,transform .18s cubic-bezier(.4,0,1,1);animation:.28s cubic-bezier(.2,.8,.2,1) both pop-arrive;box-shadow:0 28px 60px -22px #19123385}.create-dialog.is-closing{opacity:0;transform:translateY(12px)scale(.975)}.join-class-dialog{width:min(100%,580px);max-height:min(720px,100dvh - 48px);overflow-y:auto}.join-class-dialog .dialog-heading{align-items:flex-start}.join-class-dialog .dialog-heading>div{min-width:0}.join-class-dialog .dialog-heading p:not(.eyebrow){color:var(--vc-ink-3);margin:7px 0 0;font-size:.78rem;line-height:1.45}.join-class-dialog__form{margin-top:22px}.join-class-dialog__form label small{color:var(--vc-ink-3);font-size:.7rem;font-weight:500;line-height:1.4}.join-class-dialog__input-wrap{border:2px solid var(--vc-ink);color:var(--vc-purple-dark);background:#fff;border-radius:11px;align-items:center;gap:10px;margin-top:-5px;padding:0 13px;transition:box-shadow .16s,transform .16s;display:flex}.join-class-dialog__input-wrap:focus-within{box-shadow:4px 4px 0 var(--vc-purple);transform:translate(-1px,-1px)}.join-class-dialog__input-wrap input{width:100%;min-height:52px;color:var(--vc-ink);font-family:var(--vc-mono);letter-spacing:.09em;background:0 0;border:0;outline:0;padding:0;font-size:.82rem;font-weight:800}.join-class-dialog__input-wrap input::placeholder{color:var(--vc-ink-3);opacity:.75}.join-class-dialog__status{color:var(--vc-purple-dark);margin:-5px 0 0;font-size:.75rem}.join-class-dialog__actions{flex-wrap:wrap;margin-top:3px}.join-class-dialog__preview{gap:16px;margin-top:22px;display:grid}.join-class-dialog__class{background:var(--vc-purple-soft);border-radius:14px;grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:13px;min-width:0;padding:16px;display:grid}.join-class-dialog__teacher-avatar{background:var(--vc-yellow);width:52px;height:52px;box-shadow:0 0 0 2px var(--vc-purple);color:var(--vc-purple-dark);font-family:var(--vc-display);border:3px solid #fff;border-radius:50%;place-items:center;font-size:.9rem;font-weight:850;display:grid;overflow:hidden}.join-class-dialog__teacher-avatar img{object-fit:cover;width:100%;height:100%;display:block}.join-class-dialog__class>div{min-width:0}.join-class-dialog__label{color:var(--vc-purple-dark);font-family:var(--vc-mono);letter-spacing:.1em;text-transform:uppercase;font-size:.58rem;font-weight:850}.join-class-dialog__class h3{overflow-wrap:anywhere;margin:4px 0 0;font-size:1.18rem;line-height:1.08}.join-class-dialog__class p{color:var(--vc-ink-2);align-items:center;gap:5px;margin:7px 0 0;font-size:.75rem;font-weight:750;display:flex}.join-class-dialog__facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.join-class-dialog__facts>div{border:1px solid var(--vc-line-2);border-radius:10px;gap:5px;min-width:0;padding:10px 12px;display:grid}.join-class-dialog__facts span{color:var(--vc-ink-3);font-family:var(--vc-mono);letter-spacing:.08em;text-transform:uppercase;font-size:.56rem;font-weight:800}.join-class-dialog__facts strong{overflow-wrap:anywhere;color:var(--vc-ink);font-size:.8rem}.join-class-dialog__preview>.class-code{margin-top:0}.join-class-dialog__confirmation{background:#fcfbff;border:1px solid #5647e338;border-radius:14px;padding:15px}.join-class-dialog__confirmation.is-complete{background:var(--vc-green-soft);border-color:#24925b47}.join-class-dialog__confirmation-row{align-items:center;gap:11px;display:flex}.join-class-dialog__confirmation-row>div{flex:1;min-width:0}.join-class-dialog__confirmation-row strong{color:var(--vc-ink);font-size:.82rem}.join-class-dialog__confirmation-row p{color:var(--vc-ink-3);margin:4px 0 0;font-size:.73rem;line-height:1.45}.join-class-dialog__confirmation-row p strong{font-size:inherit}.join-class-dialog__confirmation-icon{background:var(--vc-purple-soft);width:38px;height:38px;color:var(--vc-purple-dark);border-radius:12px;flex:none;place-items:center;display:grid}.join-class-dialog__confirmation.is-complete .join-class-dialog__confirmation-icon{color:var(--vc-green-dark);background:#fff}.join-class-dialog__confirmation .form-error{margin:13px 0 0}@media(max-width:520px){.join-class-dialog{padding:20px}.join-class-dialog__class{grid-template-columns:46px minmax(0,1fr) auto;gap:10px;padding:13px}.join-class-dialog__teacher-avatar{width:46px;height:46px}.join-class-dialog__facts{grid-template-columns:1fr 1fr}.join-class-dialog__facts>div:last-child{grid-column:1/-1}.join-class-dialog__actions{flex-direction:column-reverse;align-items:stretch}.join-class-dialog__actions .button{width:100%}.join-class-dialog__confirmation-row{align-items:flex-start}}.dialog-heading{justify-content:space-between;gap:16px}.dialog-heading h2{font-size:1.48rem}.form-stack{gap:17px;margin-top:25px;display:grid}.form-stack label{color:var(--vc-ink-2);gap:7px;font-size:.82rem;font-weight:750;display:grid}.form-stack input,.form-stack select,.notes-panel textarea{border:1px solid var(--vc-line-2);width:100%;color:var(--vc-ink);background:#fff;border-radius:10px}.form-stack input,.form-stack select{min-height:45px;padding:0 12px}.form-stack input:focus,.form-stack select:focus,.notes-panel textarea:focus{outline:2px solid var(--vc-purple-soft-2);outline-offset:1px;border-color:#5647e38c}.dialog-actions{justify-content:flex-end;gap:10px}.form-error{color:var(--vc-coral-dark);margin:0;font-size:.84rem;line-height:1.4}.workspace-page{width:min(100%,1312px);margin:0 auto;padding:0 0 30px}.workspace-shell{border:1px solid var(--vc-line-2);background:#fff;border-radius:24px;min-height:min(780px,100vh - 130px);animation:.42s ease-out both panel-arrive;overflow:hidden;box-shadow:0 24px 60px -52px #191233b8}.back-link{width:fit-content;color:var(--vc-ink-2);border:0;gap:6px;margin:0 0 12px;padding:5px 0;font-size:.83rem;font-weight:750;text-decoration:none;transition:color .17s,transform .2s cubic-bezier(.2,.9,.3,1.2)}.back-link svg{transition:transform .2s cubic-bezier(.2,.9,.3,1.2)}.back-link:hover{color:var(--vc-purple);transform:translate(-1px)}.back-link:hover svg{transform:translate(-4px)}.workspace-hero{border-bottom:1px solid var(--vc-line-2);justify-content:space-between;align-items:center;gap:20px;padding:19px clamp(20px,6vw,80px) 26px}.workspace-hero__identity{grid-template-columns:60px minmax(0,1fr);align-items:center;gap:16px;min-width:0;display:grid}.workspace-hero__aside{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;min-width:0;display:flex}.workspace-hero__kicker{color:var(--vc-purple-dark);font-family:var(--vc-mono);letter-spacing:.1em;text-transform:uppercase;margin-bottom:6px;font-size:.61rem;font-weight:800;line-height:1.25;display:block}.workspace-hero__subtitle{color:var(--vc-ink-3);margin-top:7px;font-size:.82rem;line-height:1.35;display:block}.language-token{background:var(--vc-purple);color:#fff;width:60px;height:60px;font-family:var(--vc-display);letter-spacing:.04em;text-transform:uppercase;border-radius:14px;place-items:center;font-size:1.22rem;font-weight:800;display:grid}.workspace-hero h1{max-width:20ch;font-size:clamp(2rem,3.4vw,2.65rem)}.workspace-hero p:not(.eyebrow){margin-top:8px;font-size:.86rem}.workspace-summary{border:1px solid var(--vc-line-2);background:#fff;border-radius:14px;grid-auto-columns:minmax(88px,1fr);grid-auto-flow:column;min-width:0;display:grid;overflow:hidden}.workspace-summary>span{grid-template-columns:auto 1fr;align-items:center;gap:2px 7px;min-height:62px;padding:9px 12px;display:grid}.workspace-summary>span+span{border-left:1px solid var(--vc-line-2)}.workspace-summary__metric svg{color:var(--vc-purple);grid-row:span 2}.workspace-summary__metric strong{font-family:var(--vc-display);font-size:.98rem;line-height:1}.workspace-summary__metric small{color:var(--vc-ink-3);font-family:var(--vc-mono);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;font-size:.51rem;font-weight:700}.workspace-tabs{border-bottom:1px solid var(--vc-line-2);scrollbar-width:none;align-items:stretch;gap:29px;margin:0 clamp(20px,6vw,80px);display:flex;overflow-x:auto}.workspace-tabs::-webkit-scrollbar{display:none}.workspace-tabs__button{min-height:56px;color:var(--vc-ink-3);white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;flex:none;align-items:center;gap:7px;padding:0 1px;font-size:.84rem;font-weight:800;transition:border-color .16s,color .16s,transform .16s;display:inline-flex;position:relative}.workspace-tabs__button:hover{color:var(--vc-ink);transform:translateY(-1px)}.workspace-tabs__button.is-active{border-bottom-color:var(--vc-purple);color:var(--vc-purple-dark)}.workspace-tabs__button svg{opacity:.72;flex:none}.workspace-tabs__button.is-active svg{opacity:1}.workspace-panel{min-height:360px;margin:0 clamp(20px,6vw,80px);padding:31px 0 15px}.notes-panel textarea{resize:vertical;min-height:170px;padding:16px;line-height:1.62;display:block}.notes-panel textarea:disabled{color:var(--vc-ink-2);background:#fbfafc}.panel-footer{justify-content:space-between;gap:18px;margin-top:13px}.save-state{color:var(--vc-ink-3);font-size:.78rem;font-weight:700}.save-state.is-saved{color:var(--vc-green);align-items:center;gap:5px;animation:.36s ease-out both save-celebrate;display:inline-flex}.panel-heading{justify-content:space-between;gap:16px;margin-bottom:23px}.panel-heading h2{font-size:1.4rem}.panel-heading .eyebrow{margin-bottom:5px}.student-grid{border-top:1px solid var(--vc-line-2);border-bottom:1px solid var(--vc-line-2);flex-wrap:wrap;align-items:flex-start;gap:12px 10px;min-height:128px;padding:14px 0 12px;display:flex}.student-row{width:72px;animation:card-arrive .34s calc(var(--motion-index,0) * 42ms) ease-out both;display:block}.student-card{width:72px;min-height:96px;color:var(--vc-ink-2);text-align:center;align-content:start;justify-items:center;gap:7px;text-decoration:none;display:grid}.student-card__avatar{background:var(--vc-purple-soft);width:64px;height:64px;box-shadow:0 0 0 1px var(--vc-line);border:2px solid #fff;border-radius:50%;place-items:center;transition:transform .2s cubic-bezier(.2,.9,.3,1.25),box-shadow .2s;display:grid;overflow:hidden}.student-card__avatar img{background:var(--vc-purple-soft);object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.student-card__name{width:100%;min-height:2.35em;color:var(--vc-ink-2);text-align:center;text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.67rem;font-weight:800;line-height:1.18;display:-webkit-box;overflow:hidden}.student-card:hover .student-card__avatar,.student-card:focus-visible .student-card__avatar{transform:translateY(-6px)scale(1.08)rotate(-2deg);box-shadow:0 0 0 2px #5647e359}.student-card:hover .student-card__name,.student-card:focus-visible .student-card__name{color:var(--vc-purple-dark)}.week-picker{border:1px solid var(--vc-line-2);background:#fbfafc;border-radius:12px;grid-template-columns:minmax(0,1fr) minmax(9rem,1.25fr) minmax(0,1fr);margin-bottom:17px;display:grid;overflow:hidden}.week-picker__button,.week-picker__current{min-height:65px;color:var(--vc-ink-2);text-align:left;background:0 0;border:0;align-content:center;gap:3px;padding:8px 12px;display:grid}.week-picker__button{transition:background-color .16s,color .16s}.week-picker__button:hover{background:var(--vc-purple-soft);color:var(--vc-purple-dark)}.week-picker__button--next{text-align:right}.week-picker__button small,.week-picker__current small{color:var(--vc-ink-3);font-family:var(--vc-mono);letter-spacing:.06em;text-transform:uppercase;font-size:.57rem;font-weight:700}.week-picker__button strong,.week-picker__current strong{font-family:var(--vc-display);font-size:.83rem;line-height:1.2}.week-picker__current{border-right:1px solid var(--vc-line);border-left:1px solid var(--vc-line);text-align:center;justify-items:center}.week-picker__current button{color:var(--vc-purple);text-underline-offset:3px;background:0 0;border:0;padding:0;font-size:.66rem;font-weight:800;text-decoration:underline}.week-strip{border-top:1px solid var(--vc-line-2);border-bottom:1px solid var(--vc-line-2);grid-template-columns:repeat(7,minmax(72px,1fr));min-width:0;margin:0 0 28px;display:grid;position:relative;overflow:hidden}.week-strip__day{border:0;border-right:1px solid var(--vc-line-2);min-width:0;min-height:78px;color:var(--vc-ink-3);text-align:center;background:#fff;border-bottom:3px solid #0000;align-content:center;place-items:center;gap:3px;padding:8px 4px;transition:color .16s,background-color .16s;display:grid;position:relative;overflow:hidden}.week-strip__day:last-of-type{border-right:0}.week-strip__day:hover{color:var(--vc-ink);background:#fbfafc}.week-strip__day.is-active{border-bottom-color:var(--vc-purple);color:var(--vc-ink)}.week-strip__day span,.week-strip__day small{font-family:var(--vc-mono);letter-spacing:.05em;text-transform:uppercase;font-size:.58rem;font-weight:700;line-height:1.1}.week-strip__day strong{color:inherit;font-family:var(--vc-display);font-size:1.15rem;line-height:1}.week-strip__day small{color:var(--vc-ink-3);letter-spacing:0;text-transform:none;font-size:.54rem;font-weight:600}.goal-lanes{grid-template-columns:repeat(2,minmax(0,1fr));gap:23px;display:grid}.goal-lane{min-width:0}.goal-lane+.goal-lane{border-left:1px solid var(--vc-line-2);padding-left:23px}.goal-lane__heading{border-bottom:1px solid var(--vc-line-2);justify-content:space-between;align-items:center;gap:12px;padding-bottom:12px;display:flex}.goal-lane__heading h3{margin:0;font-size:1.18rem}.goal-add{color:var(--vc-purple);background:0 0;border:0;align-items:center;gap:5px;padding:0;font-size:.76rem;font-weight:800;display:inline-flex}.goal-add:hover{color:var(--vc-purple-dark);text-underline-offset:3px;text-decoration:underline}.goal-card-grid{gap:9px;margin-top:12px;display:grid}.goal-card{border-bottom:1px solid var(--vc-line);animation:card-arrive .34s calc(var(--motion-index,0) * 34ms) ease-out both;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 0;display:flex}.goal-card__copy{gap:4px;min-width:0;display:grid}.goal-card__kind{color:var(--vc-purple-dark);font-family:var(--vc-mono);letter-spacing:.06em;text-transform:uppercase;font-size:.61rem;font-weight:700}.goal-card__copy strong{color:var(--vc-ink);text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;overflow:hidden}.goal-card__copy small{color:var(--vc-ink-3);font-size:.72rem}.goal-card__edit,.goal-card__print{color:var(--vc-ink-2);flex:none;align-items:center;gap:5px;padding:5px 0;font-size:.72rem;font-weight:800;text-decoration:none;display:inline-flex}.goal-card__edit:hover{color:var(--vc-purple)}.goal-card__print{color:var(--vc-coral-dark)}.goal-card__print:hover{color:var(--vc-coral)}.goal-lane__empty{min-height:86px;color:var(--vc-ink-3);text-align:center;place-items:center;padding:16px 0;font-size:.78rem;display:grid}.goal-list{border-top:1px solid var(--vc-line);margin-top:20px;display:grid}.goal-row{border-bottom:1px solid var(--vc-line);justify-content:space-between;gap:16px;min-height:82px;padding:14px 0}.goal-row__copy{gap:3px;min-width:0;display:grid}.goal-row__kind{color:var(--vc-purple);font-family:var(--vc-mono);text-transform:uppercase;font-size:.64rem;font-weight:700}.goal-row__copy strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.goal-row__copy small{color:var(--vc-ink-3)}.metric-grid{border-top:1px solid var(--vc-line-2);border-left:1px solid var(--vc-line-2);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.metric{border-right:1px solid var(--vc-line-2);border-bottom:1px solid var(--vc-line-2);min-height:136px;animation:card-arrive .34s calc(var(--motion-index,0) * 42ms) ease-out both;flex-direction:column;justify-content:space-between;padding:18px;display:flex}.metric span{color:var(--vc-ink-3);font-family:var(--vc-mono);letter-spacing:.04em;text-transform:uppercase;font-size:.65rem;font-weight:700}.metric strong{color:var(--vc-purple);font-family:var(--vc-display);animation:count-pop .35s calc(var(--motion-index,0) * 42ms) ease-out both;font-size:clamp(1.65rem,3vw,2.45rem);line-height:1;display:inline-block}.progress-board{border-top:1px solid var(--vc-line-2)}.progress-board__heading{justify-content:space-between;align-items:center;gap:16px;min-height:58px;display:flex}.progress-board__heading h3{margin:0;font-size:1.04rem}.panel-link{color:var(--vc-purple);align-items:center;gap:6px;padding:5px 0;font-size:.78rem;font-weight:800;text-decoration:none;transition:color .16s,transform .16s cubic-bezier(.2,.9,.3,1.2);display:inline-flex;position:relative;overflow:hidden}.panel-link:hover{color:var(--vc-purple-dark);transform:translate(2px)}.panel-link svg{transition:transform .16s cubic-bezier(.2,.9,.3,1.2)}.panel-link:hover svg{transform:translate(3px)}.progress-note{color:var(--vc-ink-3);margin:16px 0 0;font-size:.83rem}.reveal-on-scroll{opacity:0;transition:opacity .42s ease-out,transform .52s cubic-bezier(.2,.8,.2,1);transform:translateY(18px)}.reveal-on-scroll.is-revealed{opacity:1;transform:none}.settings-menu{z-index:5;flex:none;position:relative}.workspace-hero .icon-button--hero{box-shadow:none;background:0 0;border-color:#0000}.workspace-hero .icon-button--hero:hover{color:var(--vc-purple);background:#f7f6f9;transform:rotate(8deg)scale(1.04)}.settings-popover{border:1px solid var(--vc-line-2);background:#fff;border-radius:14px;gap:9px;width:min(300px,100vw - 48px);padding:15px;animation:.2s ease-out both pop-arrive;display:grid;position:absolute;top:52px;right:0;box-shadow:0 18px 38px -18px #19123373}.settings-popover.is-closing{opacity:0;transition:opacity .14s ease-in,transform .14s ease-in;animation:none;transform:translateY(-5px)scale(.98)}.settings-popover strong{font-size:.9rem}.settings-popover p{color:var(--vc-ink-3);margin:0;font-size:.78rem;line-height:1.5}.settings-popover .button{width:fit-content;margin-top:4px}.settings-popover__confirm{color:var(--vc-coral-dark);margin:0;font-size:.74rem;font-weight:700}.module-list{border-top:1px solid var(--vc-line-2);max-width:820px;display:grid}.module-row{border-bottom:1px solid var(--vc-line-2);gap:17px;min-height:106px;padding:18px 0;text-decoration:none;transition:color .18s,transform .18s}.module-row:hover{color:var(--vc-purple);transform:translate(4px)}.module-row__icon{background:var(--vc-purple-soft);width:46px;height:46px;color:var(--vc-purple);border:1px solid #5647e338;border-radius:12px;flex:none;place-items:center;display:grid}.module-row__copy{gap:5px;min-width:0;display:grid}.module-row__copy strong{font-family:var(--vc-display);font-size:1rem}.module-row__copy small{color:var(--vc-ink-3);line-height:1.4}.module-row__action{color:var(--vc-purple);white-space:nowrap;align-items:center;gap:6px;margin-left:auto;font-size:.84rem;font-weight:800;display:inline-flex}.not-found{padding-top:48px}@media(max-width:980px){.app-header__inner{flex-wrap:wrap;gap:9px 16px;min-height:auto;padding:12px 0}.primary-nav{order:3;width:100%;padding-bottom:3px;overflow-x:auto}.header-utility{margin-left:auto}.nav-stats{display:none}.class-grid{grid-template-columns:1fr}}@media(max-width:720px){.app-header__inner,.app-main{width:min(100% - 32px,1400px)}.app-main{padding-top:30px}.brand{width:143px;margin-right:0}.primary-nav__link{gap:6px;min-height:35px;padding:0 10px;font-size:.81rem}.primary-nav__icon{flex-basis:22px;width:22px;height:22px}.page-heading{flex-direction:column;align-items:flex-start}.page-heading .button{width:100%}.workspace-shell{border-radius:18px}.workspace-hero{flex-direction:column;align-items:flex-start}.workspace-hero__aside{justify-content:space-between;width:100%}.workspace-hero__identity{grid-template-columns:48px minmax(0,1fr);gap:12px}.language-token{border-radius:12px;width:48px;height:48px;font-size:1rem}.workspace-tabs{gap:21px}.workspace-tabs__button{min-height:52px}.panel-heading{flex-direction:column;align-items:flex-start}.panel-heading .button{width:100%}.panel-footer{flex-direction:column;align-items:flex-start}.panel-footer .button{width:100%}.goal-lanes{grid-template-columns:1fr;gap:26px}.goal-lane+.goal-lane{border-top:1px solid var(--vc-line-2);border-left:0;padding-top:25px;padding-left:0}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.app-header__inner,.app-main{width:min(100% - 24px,1400px)}.header-utility{gap:6px}.account-control__profile,.account-control__loading{min-height:44px;padding:3px 5px 3px 3px}.account-control__profile img,.account-control__fallback{flex-basis:34px;width:34px;height:34px}.app-main:has(.workspace-page){padding:10px 0 38px}.workspace-shell{border-left:0;border-right:0;border-radius:0}.back-link,.workspace-hero,.workspace-tabs,.workspace-panel{margin-left:18px;margin-right:18px}.workspace-hero{padding-left:0;padding-right:0}.workspace-summary{width:100%}.workspace-hero__actions{justify-content:flex-end;width:100%}.workspace-tabs{gap:18px}.workspace-tabs__button{font-size:.78rem}.week-picker{grid-template-columns:1fr 1.1fr 1fr}.week-picker__button,.week-picker__current{min-height:60px;padding:7px}.week-picker__button strong,.week-picker__current strong{font-size:.72rem}.week-strip{grid-template-columns:repeat(7,minmax(55px,1fr));overflow-x:auto}.week-strip__day{min-width:55px;min-height:72px}.metric{min-height:112px;padding:14px}.module-row__action{display:none}}.login-page{min-height:100svh;color:var(--vc-ink);background:#f7f5ef}.login-page__header{border-bottom:1.5px solid #1912332e;justify-content:space-between;align-items:center;width:min(1120px,100% - 40px);min-height:82px;margin:0 auto;display:flex}.login-page__brand{width:176px;color:var(--vc-ink);text-decoration:none;display:inline-flex}.login-page__brand img{width:100%;height:auto;display:block}.brand-logo-fallback{color:var(--vc-ink);font-family:var(--vc-display);letter-spacing:-.12em;font-size:1.45rem;font-weight:800;line-height:1;display:inline-flex}.brand-logo-fallback__letter{display:inline-block}.brand-logo-fallback__letter--yellow{color:var(--vc-yellow)}.brand-logo-fallback__letter--coral{color:var(--vc-coral)}.brand-logo-fallback__letter--green{color:var(--vc-green)}.brand-logo-fallback__letter--blue{color:var(--vc-blue)}.brand-logo-fallback__letter--pink{color:var(--vc-pink)}.brand-logo-fallback__letter--purple{color:var(--vc-purple)}.brand-logo-fallback__letter--orange{color:var(--vc-orange)}.login-page__header-actions{align-items:center;gap:9px;display:inline-flex}.login-page__header-link{border:1.5px solid var(--vc-ink);background:var(--vc-yellow);min-height:40px;color:var(--vc-ink);border-radius:999px;align-items:center;gap:5px;padding:0 12px;font-size:.78rem;font-weight:800;text-decoration:none;transition:transform .18s,background .18s;display:inline-flex}.login-page__header-link:hover{background:#ffd83d;transform:translateY(-1px)}.login-page__header-link:active{transform:translateY(1px)scale(.98)}.login-page__back-row{width:min(1120px,100% - 40px);margin:11px auto 0}.login-page__back{min-height:36px;color:var(--vc-ink);align-items:center;gap:7px;padding:0;font-weight:700;text-decoration:none;display:inline-flex}.login-page__back:hover{color:var(--vc-purple)}.auth-page__content{grid-template-columns:minmax(0,1fr) minmax(400px,460px);align-items:start;gap:clamp(48px,8vw,128px);width:min(1180px,100% - 40px);margin:clamp(48px,9vh,96px) auto 72px;display:grid}.auth-page__aside{padding:23px 0 0}.auth-page__aside-top i{background:var(--vc-yellow);width:9px;height:9px;box-shadow:2px 2px 0 var(--vc-ink);border-radius:50%;display:block}.auth-page__aside h2{max-width:620px;font-family:var(--vc-display);letter-spacing:-.055em;margin:0;font-size:clamp(3rem,6vw,5.7rem);font-weight:800;line-height:.9}.auth-page__aside-lead{color:#5e596b;max-width:430px;margin:27px 0 0;font-size:1rem;line-height:1.65}.auth-page__aside-list{border-top:1.5px solid #1912332e;max-width:430px;margin-top:55px;display:grid}.auth-page__aside-list>div{color:#312c40;border-bottom:1px solid #19123321;grid-template-columns:38px 1fr;align-items:center;gap:12px;min-height:54px;font-size:.86rem;display:grid}.auth-page__aside-list>div>span{color:var(--vc-purple-dark);font-family:var(--vc-mono);font-size:.68rem;font-weight:700}.auth-page__aside-list strong{font-weight:800}.login-page__surface{width:min(440px,100% - 40px);margin:clamp(30px,5vh,56px) auto 56px}.login-page__intro{margin-bottom:25px}.login-page__eyebrow{color:#275d44;letter-spacing:.07em;text-transform:uppercase;align-items:center;gap:7px;margin-bottom:13px;font-size:.74rem;font-weight:800;display:inline-flex}.login-page__intro h1{font-family:var(--vc-display);letter-spacing:0;margin:0;font-size:2.35rem;line-height:1.04}.login-page__intro p{color:#5e596b;margin:11px 0 0;line-height:1.55}.login-page__error{color:#711a1a;background:#fae8e4;border-left:4px solid #b52727;margin-bottom:18px;padding:12px 14px;font-size:.88rem;line-height:1.45}.login-page__success{color:#165c3d;background:#e4f5ec;border-left:4px solid #1a7650;align-items:center;gap:8px;margin-bottom:18px;padding:12px 14px;font-size:.88rem;line-height:1.45;display:flex}.login-form{gap:16px;display:grid}.login-form label,.login-form__field{gap:7px;display:grid}.login-form label>span{font-size:.82rem;font-weight:800}.login-form__field>label{font-size:.82rem;font-weight:800;display:block}.login-form input{width:100%;height:50px;color:var(--vc-ink);font:inherit;background:#fff;border:1.5px solid #a8a3ae;border-radius:10px;outline:none;padding:0 14px}.login-form input:hover{border-color:#716a7d}.login-form input:focus-visible{border-color:var(--vc-purple);box-shadow:0 0 0 3px #5647e32e}.login-form__submit,.login-provider{min-height:50px;font:inherit;border-radius:10px;justify-content:center;align-items:center;font-weight:800;text-decoration:none;display:inline-flex}.login-form__submit{border:1.5px solid var(--vc-ink);background:var(--vc-yellow);color:var(--vc-ink);cursor:pointer;gap:9px;margin-top:2px}.login-form__submit:hover{background:#ffd83d}.login-form__submit:focus-visible,.login-form__password-toggle:focus-visible,.login-provider:focus-visible,.login-page__back:focus-visible{outline-offset:2px;outline:3px solid #5647e359}.login-page__separator{color:#77717f;align-items:center;gap:12px;margin:22px 0;font-size:.78rem;display:flex}.login-page__separator:before,.login-page__separator:after{content:"";background:#d7d2da;flex:1;height:1px}.login-providers{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:11px;display:grid}.auth-page--register .login-providers{grid-template-columns:1fr}.login-provider{width:100%;min-height:50px;color:var(--vc-ink);cursor:pointer;white-space:nowrap;background:#fff;border:1.5px solid #7b7583;border-radius:10px;gap:9px;padding:0 12px;transition:border-color .18s,background .18s;display:inline-flex}.login-provider:not(:disabled):hover{border-color:var(--vc-ink);background:#fcfbf8;transform:translateY(-1px);box-shadow:3px 3px #0b0b0d1f}.login-provider:not(:disabled):active{box-shadow:none;transform:translateY(1px)scale(.985)}.login-provider--apple{border-color:var(--vc-ink);background:var(--vc-ink);color:#fff}.login-provider--apple:not(:disabled):hover{color:#fff;background:#30283f}.login-provider:disabled{color:#89838e;cursor:not-allowed;background:#f4f2f5;border-color:#c8c3cc}.login-provider--apple:disabled{color:#716b77;background:#dedbe1;border-color:#aaa4af}.login-provider__mark{flex:0 0 20px;width:20px;height:20px;display:inline-flex}.login-provider__mark svg{width:100%;height:100%;display:block}.login-provider__copy{align-items:baseline;min-width:0;display:inline-flex}.login-provider__prefix{margin-right:.25em}.login-provider__badge{color:#77717f;font-family:var(--vc-mono);letter-spacing:.04em;text-transform:uppercase;grid-area:2/2;justify-self:start;margin-top:2px;font-size:.5rem;font-weight:700;line-height:1}.login-provider--apple .login-provider__badge{color:#6f6975}.login-providers__status{color:#77717f;text-align:center;margin:10px 0 0;font-size:.76rem;line-height:1.45}.login-coming-soon{color:#77717f;background:#f4f2f5;border:1.5px solid #c8c3cc;border-radius:10px;gap:5px;padding:15px 16px;display:grid}.login-coming-soon__label{color:#716b77;letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;font-weight:800}.login-coming-soon p{margin:0;font-size:.86rem;line-height:1.45}.login-page__note{color:#77717f;margin:23px 0 0;font-size:.76rem;line-height:1.55}.login-page__switch{color:#77717f;flex-wrap:wrap;justify-content:center;align-items:center;gap:5px 8px;margin-top:24px;font-size:.78rem;display:flex}.login-page__switch a{color:var(--vc-purple-dark);align-items:center;gap:5px;font-weight:800;text-decoration:none;display:inline-flex}.login-page__switch a:hover{color:var(--vc-ink);text-underline-offset:3px;text-decoration:underline}@media(max-width:860px){.auth-page__content{grid-template-columns:1fr;gap:32px;width:min(560px,100% - 32px);margin-top:38px}.auth-page__aside{order:2;padding:4px 0 0}.auth-page__content .login-page__surface{order:1}.auth-page__aside-kicker{margin-top:30px}.auth-page__aside h2{max-width:540px;font-size:clamp(2.8rem,10vw,4.5rem)}.auth-page__aside-list{margin-top:30px}}@media(max-width:520px){.login-page__header{width:calc(100% - 28px);min-height:70px}.login-page__brand{width:146px}.login-page__back-row{width:calc(100% - 28px);margin-top:9px}.login-page__surface{width:calc(100% - 32px);margin-top:28px}.auth-page__content{width:calc(100% - 28px);margin-top:22px}.login-page__intro h1{font-size:2rem}.login-provider__prefix{display:none}}@media(prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.inline-loader i,.page-loader *,.page-scene{transition:none!important;animation:none!important}}.student-workspace-page .workspace-shell,.student-workspace-hero{background:#fffaf2}.student-workspace-hero .student-section-kicker{margin-bottom:6px;display:block}.student-section-kicker{color:var(--vc-coral-dark);font-family:var(--vc-mono);letter-spacing:.1em;text-transform:uppercase;font-size:.61rem;font-weight:800;line-height:1.25}.student-workspace-summary{border:1px solid var(--vc-line-2);background:#fff;border-radius:14px;grid-template-columns:minmax(135px,1.5fr) repeat(3,minmax(90px,1fr));min-width:min(100%,405px);display:grid;overflow:hidden}.student-workspace-summary>span{grid-template-columns:auto 1fr;align-items:center;gap:2px 8px;min-height:72px;padding:12px 15px;display:grid}.student-workspace-summary svg{color:var(--vc-purple);grid-row:span 2}.student-workspace-summary strong{font-family:var(--vc-display);font-size:1.05rem;line-height:1}.student-workspace-summary small{color:var(--vc-ink-3);font-family:var(--vc-mono);letter-spacing:.06em;text-transform:uppercase;font-size:.53rem;font-weight:700}.student-workspace-summary__teacher{grid-template-rows:auto auto;grid-template-columns:36px minmax(0,1fr)!important;column-gap:10px!important}.student-workspace-summary__teacher img{border:1px solid var(--vc-line-2);background:var(--vc-purple-soft);object-fit:cover;border-radius:50%;grid-row:span 2;width:36px;height:36px}.student-workspace-summary__teacher strong{text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.student-week-panel,.student-calendar-panel,.student-progress-panel,.student-notes-panel{background:#fffaf2}.student-week-intro{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:23px;display:flex}.student-week-intro h2{margin-top:5px;font-size:clamp(1.55rem,2.5vw,2.1rem)}.student-week-intro p{color:var(--vc-ink-3);margin:8px 0 0;font-size:.84rem}.student-today-meter{border:1px solid var(--vc-line-2);border-radius:var(--vc-radius-pill);background:var(--vc-yellow);min-height:38px;color:var(--vc-ink);white-space:nowrap;align-items:center;gap:7px;padding:0 12px;display:inline-flex}.student-today-meter strong{font-family:var(--vc-display);font-size:1rem}.student-today-meter span{color:var(--vc-ink-2);font-family:var(--vc-mono);letter-spacing:.05em;text-transform:uppercase;font-size:.57rem;font-weight:700}.student-week-navigation{border:1px solid var(--vc-line-2);background:#fff;border-radius:15px;margin-bottom:26px;padding:14px}.student-week-navigation__heading{border-bottom:1px solid var(--vc-line);justify-content:space-between;align-items:center;gap:14px;padding:2px 3px 13px;display:flex}.student-week-navigation__arrows{gap:6px;display:flex}.student-week-navigation__arrows button{border:1px solid var(--vc-line-2);width:32px;height:32px;color:var(--vc-ink-2);background:#fff;border-radius:50%;place-items:center;display:grid}.student-week-strip{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;margin:12px 0 0;padding:0;list-style:none;display:grid}.student-week-day{border:1px solid var(--vc-line-2);width:100%;min-width:0;min-height:74px;color:var(--vc-ink-2);text-align:center;background:#fff;border-radius:10px;align-content:center;place-items:center;gap:3px;padding:8px 5px;transition:border-color .16s,background-color .16s,color .16s,transform .16s;display:grid}.student-week-day:hover{border-color:var(--vc-purple);background:var(--vc-purple-soft);transform:translateY(-2px)}.student-week-day.is-selected{border-color:var(--vc-ink);background:var(--vc-ink);color:#fff}.student-week-day strong{font-family:var(--vc-display);font-size:1.15rem;line-height:1}.student-week-day span{max-width:100%;color:var(--vc-ink-3);font-family:var(--vc-mono);letter-spacing:.08em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:.5rem;font-weight:700;overflow:hidden}.student-week-day small{color:var(--vc-ink-3);font-size:.6rem}.student-week-day.is-selected span,.student-week-day.is-selected small{color:#ffffffb3}.student-goal-lane+.student-goal-lane{border-left-color:var(--vc-line-2)}.student-goal-lane__kicker{color:var(--vc-coral-dark);font-family:var(--vc-mono);letter-spacing:.08em;text-transform:uppercase;margin-bottom:3px;font-size:.55rem;font-weight:800;display:block}.student-goal-lane__count{background:var(--vc-purple-soft);width:28px;height:28px;color:var(--vc-purple-dark);font-family:var(--vc-display);border-radius:50%;place-items:center;font-size:.85rem;display:grid}.student-goal-row{align-items:center;gap:16px;padding:14px 0}.student-goal-row__meta{color:var(--vc-ink-3);font-family:var(--vc-mono);flex-wrap:wrap;gap:5px 12px;font-size:.58rem;font-weight:700;display:flex}.student-goal-sets{flex-wrap:wrap;gap:4px;margin-top:2px;display:flex}.student-goal-sets span{border:1px solid var(--vc-line-2);max-width:100%;color:var(--vc-ink-3);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;padding:3px 7px;font-size:.61rem;overflow:hidden}.student-goal-row__play{border:1px solid var(--vc-line-2);border-radius:var(--vc-radius-pill);min-height:34px;color:var(--vc-ink-2);background:#fff;flex:none;align-items:center;gap:7px;padding:0 10px;font-size:.68rem;font-weight:800;text-decoration:none;transition:border-color .16s,background-color .16s,color .16s,transform .16s;display:inline-flex}.student-goal-row__game{white-space:nowrap;align-items:center;gap:5px;display:inline-flex}.student-goal-row__play:hover .student-goal-row__game{color:inherit}.student-calendar-panel{padding-top:0}.student-calendar-panel .class-calendar__surface{box-shadow:none;background:0 0;border:0;border-radius:0}.student-progress-panel .panel-heading p{color:var(--vc-ink-3);margin:8px 0 0;font-size:.84rem}.student-metric-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.student-progress-list{border-top:1px solid var(--vc-line-2);margin-top:30px}.student-progress-list h3{margin:0;padding:18px 0 9px;font-size:1rem}.student-progress-row{border-top:1px solid var(--vc-line);color:var(--vc-ink);justify-content:space-between;align-items:center;gap:18px;padding:12px 0;text-decoration:none;display:flex}.student-progress-row:hover{color:var(--vc-purple)}.student-progress-row span{gap:4px;min-width:0;display:grid}.student-progress-row strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.student-progress-row small{color:var(--vc-ink-3);font-family:var(--vc-mono);font-size:.6rem}.student-progress-empty{text-align:left;justify-content:flex-start;margin-top:24px}.student-notes-panel blockquote{border-left:4px solid var(--vc-purple);color:var(--vc-ink-2);white-space:pre-wrap;background:#fff;margin:0;padding:20px 22px;font-size:1rem;line-height:1.65}@media(max-width:820px){.student-workspace-summary{min-width:0}.student-workspace-summary__teacher{display:none!important}.student-workspace-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.student-workspace-summary>span+span{border-left:0}.student-workspace-summary>span:nth-child(3),.student-workspace-summary>span:nth-child(4){border-left:1px solid var(--vc-line-2)}.student-metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:650px){.student-week-intro{flex-direction:column;align-items:flex-start}.student-today-meter{justify-content:center;align-self:stretch}.student-week-navigation{padding:10px 8px}.student-week-strip{grid-template-columns:repeat(7,minmax(70px,1fr));overflow-x:auto}.student-week-strip li{min-width:70px}.student-goal-row{flex-direction:column;align-items:flex-start}.student-goal-row__play{align-self:flex-start}.student-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.module-list--choices{border-top:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;max-width:none;display:grid}.module-list--choices .module-row--choice{border:1px solid var(--vc-line-2);background:var(--vc-surface);min-width:0;min-height:500px;color:var(--vc-ink);border-radius:18px;grid-template-rows:270px minmax(0,1fr);align-items:stretch;gap:0;padding:0;transition:border-color .16s,background-color .16s,transform .22s cubic-bezier(.175,.885,.32,1.275),box-shadow .22s;animation:.48s cubic-bezier(.175,.885,.32,1.15) both module-card-enter;display:grid;overflow:hidden;box-shadow:6px 6px #19123314}.module-list--choices .module-row--choice:nth-child(2){animation-delay:90ms}.module-list--choices .module-row--choice:hover,.module-list--choices .module-row--choice:focus-visible{border-color:var(--vc-purple);color:var(--vc-ink);background:#fff;transform:translateY(-6px)rotate(-.35deg);box-shadow:9px 9px #1912331a}.module-list--choices .module-row--choice:hover .module-card__art svg,.module-list--choices .module-row--choice:focus-visible .module-card__art svg{transform:scale(1.045)rotate(.35deg)}.module-list--choices .module-row--choice:hover .module-art__book,.module-list--choices .module-row--choice:hover .module-art__word-card{animation-duration:2.2s}.module-list--choices .module-row--choice:hover .module-art__pencil{animation-duration:1.35s}.module-list--choices .module-row--choice:hover .module-art__spark{animation-duration:1.1s}.module-list--choices .module-row--choice:focus-visible{outline-offset:3px;outline:3px solid #5647e333}.module-list--choices .module-row--choice:nth-child(2) .module-row__icon{background:var(--vc-green-soft);color:#087656;border-color:#c8eadf}.module-card__art{border-bottom:1px solid var(--vc-line-2);place-items:stretch stretch;display:grid;position:relative;overflow:hidden}.module-card__art--verb{background:#e9e4ff}.module-card__art--vocab{background:#e5f8ef}.module-card__art svg{width:100%;height:100%;transition:transform .48s cubic-bezier(.175,.885,.32,1.275);display:block}.module-art__ground{fill:#ffffff80}.module-art__book,.module-art__word-card,.module-art__bubble{transform-box:fill-box;transform-origin:50%}.module-art__book{animation:3.8s ease-in-out infinite module-card-bob}.module-art__word-card{animation:4.2s ease-in-out .2s infinite module-card-bob}.module-art__word-card--back{animation-delay:-.8s}.module-art__bubble{animation:3.2s ease-in-out infinite module-card-bubble}.module-art__pencil{transform-box:fill-box;transform-origin:30% 90%;animation:2.8s ease-in-out infinite module-pencil-wiggle}.module-art__spark{transform-box:fill-box;transform-origin:50%;animation:2.2s ease-in-out infinite module-spark-pop}.module-art__spark--two{animation-delay:-.7s}.module-art__dot{animation:2.4s ease-in-out infinite module-dot-hop}.module-art__dot--two{animation-delay:-.9s}@keyframes module-card-bob{0%,to{transform:translateY(2px)rotate(-1deg)}50%{transform:translateY(-5px)rotate(1deg)}}@keyframes module-card-enter{0%{opacity:0;transform:translateY(20px)rotate(1deg)scale(.98)}to{opacity:1;transform:translateY(0)rotate(0)scale(1)}}@keyframes module-card-bubble{0%,to{transform:translateY(2px)rotate(-1deg)scale(.98)}50%{transform:translateY(-4px)rotate(1deg)scale(1)}}@keyframes module-pencil-wiggle{0%,to{transform:rotate(-2deg)}50%{transform:rotate(3deg)translateY(-2px)}}@keyframes module-spark-pop{0%,to{opacity:.72;transform:scale(.86)rotate(-8deg)}50%{opacity:1;transform:scale(1.08)rotate(8deg)}}@keyframes module-dot-hop{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.module-card__body{grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:16px;min-width:0;padding:22px 26px 24px;display:grid}.module-list--choices .module-row__icon{background:var(--vc-purple-soft-2);width:56px;height:56px;color:var(--vc-purple);border-radius:16px}.module-list--choices .module-row__copy{gap:6px}.module-list--choices .module-row__copy strong{font-family:var(--vc-display);font-size:1.45rem;line-height:1.05}.module-list--choices .module-row__copy small{max-width:30ch;font-size:.82rem;line-height:1.45}.module-list--choices .module-row__action{align-self:end}.module-list--choices .module-row__action svg{transition:transform .2s cubic-bezier(.175,.885,.32,1.275)}.module-list--choices .module-row--choice:hover .module-row__action svg,.module-list--choices .module-row--choice:focus-visible .module-row__action svg{transform:translate(5px)}@media(max-width:820px){.module-list--choices{grid-template-columns:1fr}}@media(max-width:560px){.module-list--choices .module-row--choice{grid-template-rows:220px minmax(0,1fr);min-height:430px}.module-card__body{grid-template-columns:48px minmax(0,1fr);gap:14px;padding:18px 20px 20px}.module-list--choices .module-row__icon{border-radius:13px;width:48px;height:48px}.module-list--choices .module-row__copy strong{font-size:1.25rem}.module-list--choices .module-row__action{grid-column:2;align-self:start;margin-left:0;display:inline-flex}}@media(prefers-reduced-motion:reduce){.module-list--choices .module-row--choice,.module-list--choices .module-row--choice:hover{transition:none;transform:none;box-shadow:6px 6px #19123314}.module-list--choices .module-card__art svg{transition:none;transform:none!important}.module-list--choices .module-row--choice,.module-list--choices .module-art__book,.module-list--choices .module-art__word-card,.module-list--choices .module-art__bubble,.module-list--choices .module-art__pencil,.module-list--choices .module-art__spark,.module-list--choices .module-art__dot{animation:none}}.module-page--library{isolation:isolate;border:2px solid var(--vc-ink);border-radius:var(--vc-radius);background:var(--vc-blue);min-height:calc(100dvh - 168px);box-shadow:8px 8px 0 var(--vc-ink);padding:clamp(28px,5vw,68px);position:relative;overflow:hidden}.module-page--library:before,.module-page--library:after{z-index:-1;aspect-ratio:1.7;border:2px solid var(--vc-ink);content:"";pointer-events:none;border-radius:48% 52% 38% 62%/61% 38% 62% 39%;width:clamp(150px,24vw,330px);position:absolute}.module-page--library:before{background:var(--vc-pink);animation:9s ease-in-out infinite library-blob-float;top:-76px;right:-48px;transform:rotate(-12deg)}.module-page--library:after{background:var(--vc-coral);animation:11s ease-in-out -3s infinite reverse library-blob-float;bottom:-72px;left:-54px;transform:rotate(16deg)}.module-page--library .page-heading{z-index:2;grid-template-columns:minmax(0,1fr) auto;align-items:end;max-width:none;margin-bottom:clamp(28px,4vw,48px);display:grid;position:relative}.module-page--library .eyebrow,.module-page--library .page-heading__intro{color:#fff}.module-page--library .eyebrow{letter-spacing:.14em}.module-page--library h1{color:#fff;max-width:9ch;font-size:clamp(3rem,7vw,6.4rem);line-height:.87}.module-page--library .page-heading__intro{max-width:43ch;font-weight:700}.module-page__doodles{width:clamp(130px,16vw,220px);height:112px;display:block;position:relative}.module-page__doodles i{font-style:normal;display:block;position:absolute}.module-page__doodles .is-ring{aspect-ratio:1;border:18px solid var(--vc-yellow);width:68px;box-shadow:0 0 0 2px var(--vc-ink),inset 0 0 0 2px var(--vc-ink);border-radius:50%;animation:8s linear infinite library-ring-turn;bottom:4px;right:16px}.module-page__doodles .is-cube{aspect-ratio:1;border:2px solid var(--vc-ink);background:var(--vc-yellow);width:34px;animation:3.2s ease-in-out infinite library-cube-hop;top:12px;left:20px;transform:rotate(30deg)}.module-page__doodles .is-scribble{color:#fff;font-size:5rem;line-height:1;top:0;right:64px;transform:rotate(-12deg)}.module-page--library .module-list--choices{z-index:1;gap:clamp(18px,3vw,34px);position:relative}.module-page--library .module-row--choice{border:2px solid var(--vc-ink);min-height:0;box-shadow:8px 8px 0 var(--vc-yellow);background:#fff;border-radius:26px;grid-template-rows:minmax(240px,29vw) auto;transition:transform .26s cubic-bezier(.175,.885,.32,1.18),box-shadow .26s;animation:.52s cubic-bezier(.175,.885,.32,1.18) both library-poster-arrive}.module-page--library .module-row--choice:nth-child(2){animation-delay:70ms}.module-page--library .module-row--choice:hover,.module-page--library .module-row--choice:focus-visible{border-color:var(--vc-ink);box-shadow:12px 12px 0 var(--vc-yellow);transform:translateY(-8px)rotate(-.6deg)}.module-page--library .module-row--pink:hover,.module-page--library .module-row--pink:focus-visible{box-shadow:12px 12px 0 var(--vc-pink)}.module-page--library .module-card__art{border-bottom:2px solid var(--vc-ink);background:var(--vc-blue);min-height:0;overflow:hidden}.module-page--library .module-card__art img{object-fit:cover;width:100%;height:100%;transition:transform .52s cubic-bezier(.175,.885,.32,1.18);display:block;transform:scale(1.015)}.module-page--library .module-card__art>picture{width:100%;height:100%;display:block}.module-page--library .module-row--choice:hover .module-card__art img,.module-page--library .module-row--choice:focus-visible .module-card__art img{transform:scale(1.055)translateY(-3px)}.module-card__art-mark{border-top:4px solid #fff;border-bottom:4px solid #fff;border-radius:50%;width:54px;height:22px;animation:2.8s ease-in-out infinite library-mark-pulse;position:absolute;bottom:16px;right:18px;transform:rotate(-12deg)}.module-page--library .module-card__body{background:#fff;grid-template-columns:66px minmax(0,1fr) auto;gap:18px;padding:clamp(20px,3vw,30px)}.module-page--library .module-row__icon{border:2px solid var(--vc-ink);background:var(--vc-blue);width:66px;height:66px;color:var(--vc-ink);box-shadow:4px 4px 0 var(--vc-ink);border-radius:18px;overflow:hidden}.module-page--library .module-list--choices .module-row--choice .module-row__icon{border-color:var(--vc-ink);background:var(--vc-blue);color:var(--vc-ink)}.module-page--library .module-row__icon img{object-fit:cover;width:100%;height:100%;display:block}.module-page--library .module-row__copy strong{color:var(--vc-ink);font-size:clamp(1.35rem,2.4vw,1.9rem)}.module-page--library .module-row__copy small{color:var(--vc-ink-3);font-size:.86rem;font-weight:650}.module-page--library .module-row__action{border:2px solid var(--vc-ink);border-radius:var(--vc-radius-pill);background:var(--vc-yellow);min-height:40px;box-shadow:3px 3px 0 var(--vc-ink);color:var(--vc-ink);align-self:center;padding:0 13px}.module-page--library .module-row--pink .module-row__action{background:var(--vc-pink)}@keyframes library-poster-arrive{0%{opacity:0;transform:translateY(28px)rotate(1deg)scale(.975)}to{opacity:1;transform:none}}@keyframes library-blob-float{50%{transform:translate(8px,10px)rotate(-7deg)}}@keyframes library-ring-turn{to{transform:rotate(360deg)}}@keyframes library-cube-hop{50%{transform:translateY(-10px)rotate(40deg)}}@keyframes library-mark-pulse{50%{transform:rotate(-5deg)scaleX(.82)}}@media(max-width:820px){.module-page--library{padding:30px 22px 38px}.module-page--library .page-heading{grid-template-columns:1fr}.module-page__doodles{transform-origin:100% 0;position:absolute;top:0;right:0;transform:scale(.72)}.module-page--library .module-row--choice{grid-template-rows:minmax(230px,53vw) auto}}@media(max-width:560px){.module-page--library{box-shadow:5px 5px 0 var(--vc-ink);border-radius:22px;margin-inline:-4px;padding:28px 14px 30px}.module-page--library h1{font-size:clamp(2.9rem,16vw,4.6rem)}.module-page__doodles{display:none}.module-page--library .module-card__body{grid-template-columns:54px minmax(0,1fr);gap:13px;padding:17px}.module-page--library .module-row__icon{border-radius:14px;width:54px;height:54px}.module-page--library .module-row__action{grid-column:2;justify-self:start}}@media(prefers-reduced-motion:reduce){.module-page--library:before,.module-page--library:after,.module-page__doodles i,.module-card__art-mark,.module-page--library .module-row--choice{animation:none}.module-page--library .module-row--choice:hover,.module-page--library .module-row--choice:focus-visible{transform:none}}.classes-page{border:1px solid var(--vc-line-2);border-radius:var(--vc-radius);box-shadow:var(--vc-shadow-soft);background:#fff;animation:.36s ease-out both panel-arrive;overflow:hidden}.classes-page__masthead{border-bottom:1px solid var(--vc-line-2);margin:0;padding:25px 30px 23px}.classes-page__masthead .eyebrow{display:none}.classes-page__masthead h1{font-size:clamp(1.75rem,2.8vw,2.25rem)}.class-directory{padding:28px 30px 32px}.class-directory__heading{border-bottom:1px solid var(--vc-line-2);justify-content:space-between;align-items:flex-end;gap:22px;margin-bottom:23px;padding-bottom:23px;display:flex}.class-directory__heading h1,.class-directory__heading h2{margin:0;font-size:clamp(1.6rem,2.6vw,2rem);line-height:1.1}.class-directory__heading .eyebrow{color:var(--vc-coral-dark)}.class-directory__heading .page-heading__intro{margin-top:8px;font-size:.91rem}.class-directory__actions{flex:none;align-items:center;gap:10px;display:flex}.class-directory__total{border-radius:var(--vc-radius-pill);background:var(--vc-purple-soft);min-height:38px;color:var(--vc-purple-dark);font-family:var(--vc-mono);white-space:nowrap;border:1px solid #5647e33d;align-items:center;padding:0 14px;font-size:.69rem;font-weight:700;display:inline-flex}.class-directory .button{min-height:40px}.discover-class-entry{background:var(--vc-purple-soft);min-height:40px;color:var(--vc-purple-dark);border:1px solid #5647e33d;border-radius:10px;align-items:center;gap:8px;padding:0 13px;font-size:.78rem;font-weight:800;text-decoration:none;transition:transform .16s,background-color .16s,box-shadow .16s;display:inline-flex}.discover-class-entry:hover,.discover-class-entry:focus-visible{background:var(--vc-yellow);color:var(--vc-ink);transform:translateY(-2px)}.discover-class-entry:active{transform:translateY(1px)}.discover-class-entry:focus-visible{outline:3px solid var(--vc-purple-dark);outline-offset:3px}.class-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;width:100%;display:grid;position:relative}.class-card{--card-ease:cubic-bezier(.2, .82, .2, 1);isolation:isolate;border-radius:var(--vc-radius);cursor:pointer;min-width:0;min-height:248px;transition:transform .36s var(--card-ease),border-color .16s ease-out,box-shadow .36s var(--card-ease),opacity .16s ease;background:linear-gradient(#f5f2ff80,#fff0 76px),#fff;border:1px solid #1912331c;flex-direction:column;padding:24px 24px 20px;animation:none;display:flex;position:relative;overflow:hidden;transform:translate(0);box-shadow:inset 0 1px #ffffffe6,5px 6px #19123312,0 18px 36px -31px #19123380}.class-card:before,.class-card:after{z-index:0;pointer-events:none;content:"";position:absolute}.class-card:before{border-radius:inherit;opacity:0;transform-origin:100% 100%;transition:opacity .18s ease-out,transform .48s var(--card-ease);background:radial-gradient(circle at 100% 100%,#5647e324,#0000 43%),radial-gradient(circle at 86% 8%,#5647e311,#0000 34%);top:-1px;right:-1px;bottom:-1px;left:-1px;transform:scale(.9)}.class-card:after{background:var(--vc-purple);opacity:.82;transform-origin:100%;height:3px;transition:transform .43s var(--card-ease);border-radius:0 0 999px 999px;top:0;left:24px;right:24px;transform:scaleX(0)}.class-card:is(:hover,:focus-within){border-color:#5647e366;transform:translateY(-8px)scale(1.008);box-shadow:inset 0 1px #fffffff5,8px 10px #2f24971a,0 30px 48px -30px #19123375}.class-card:is(:hover,:focus-within):before{opacity:1;transform:scale(1)}.class-card:is(:hover,:focus-within):after{transform:scaleX(1)}.class-card:active{transform:translateY(-1px)scale(.994);box-shadow:inset 0 1px #ffffffe6,3px 4px #2f24971a,0 14px 28px -26px #19123373}.class-card.is-opening{pointer-events:none;opacity:.78;transform:translateY(-2px)scale(.992)}.class-card__header{z-index:1;transition:transform .36s var(--card-ease);justify-content:space-between;align-items:flex-start;gap:16px;display:flex;position:relative}.class-card:is(:hover,:focus-within) .class-card__header{transform:translate(2px,-1px)}.class-card__header h2{width:auto;min-width:0;margin:0}.class-card__title{color:var(--vc-ink);font-family:var(--vc-display);letter-spacing:-.01em;text-overflow:ellipsis;transition:color .16s ease-out,transform .36s var(--card-ease);white-space:nowrap;font-size:clamp(1.3rem,2.1vw,1.55rem);font-weight:800;line-height:1.12;text-decoration:none;display:block;overflow:hidden;transform:translate(0)}.class-card__title:hover,.class-card:is(:hover,:focus-within) .class-card__title{color:var(--vc-purple-dark)}.class-card:is(:hover,:focus-within) .class-card__title{transform:translate(2px)}.class-card__header .flag{margin-top:3px}.class-card__teacher{z-index:1;min-width:0;transition:transform .4s var(--card-ease);grid-template-columns:minmax(0,1fr);align-items:center;gap:12px;margin-top:16px;display:grid;position:relative}.class-card:is(:hover,:focus-within) .class-card__teacher{transform:translate(4px)}.class-card__teacher-face{background:var(--vc-purple-soft);width:40px;height:40px;transition:transform .4s var(--card-ease),box-shadow .22s ease-out;border-radius:50%;place-items:center;display:grid;overflow:hidden;transform:translate(0);box-shadow:0 0 0 3px #fff,0 0 0 4px #5647e347}.class-card__teacher-face img{object-fit:cover;width:100%;height:100%;display:block}.class-card:is(:hover,:focus-within) .class-card__teacher-face{transform:translateY(-2px)rotate(-2deg)scale(1.035);box-shadow:0 0 0 3px #fff,0 0 0 5px #5647e33d}.class-card__teacher-copy{flex-direction:column;align-items:flex-start;gap:2px;min-width:0;display:flex}.class-card__teacher-copy strong{color:var(--vc-ink);text-overflow:ellipsis;white-space:nowrap;font-size:.92rem;font-weight:750;overflow:hidden}.class-card__teacher-copy small{color:var(--vc-ink-2);font-family:var(--vc-mono);letter-spacing:.14em;text-transform:uppercase;flex:none;font-size:.56rem;font-weight:700}.class-card__body{z-index:1;border-top:1px solid var(--vc-line);transition:border-color .18s ease-out,transform .42s var(--card-ease);align-items:center;gap:12px;margin-top:auto;padding-top:20px;padding-right:112px;display:flex;position:relative}.class-card:is(:hover,:focus-within) .class-card__body{border-color:#5647e329;transform:translate(-2px)}.class-card__faces{align-items:center;padding-left:3px;display:flex}.class-card__face{background:var(--vc-purple-soft);width:40px;height:40px;transition:transform .36s var(--card-ease),box-shadow .18s ease-out;border-radius:50%;place-items:center;margin-left:-12px;display:grid;overflow:hidden;transform:translate(0);box-shadow:0 0 0 3px #fff,0 4px 10px -7px #191233b3}.class-card__face:first-child{margin-left:0}.class-card__face img{object-fit:cover;width:100%;height:100%;display:block}.class-card:is(:hover,:focus-within) .class-card__face{transform:translateY(-2px)rotate(-2deg)}.class-card:is(:hover,:focus-within) .class-card__face:nth-child(2){transition-delay:28ms;transform:translate(3px,-5px)rotate(3deg)}.class-card:is(:hover,:focus-within) .class-card__face:nth-child(3){transition-delay:56ms;transform:translate(6px,-3px)rotate(-2deg)}.class-card:is(:hover,:focus-within) .class-card__face:nth-child(n+4){transition-delay:76ms;transform:translate(8px,-2px)rotate(2deg)}.class-card .class-card__face:hover{z-index:4;transform:translate(4px,-9px)rotate(0)scale(1.12);box-shadow:0 0 0 3px #fff,0 10px 18px -9px #191233b8}.class-card__face--more{background:var(--vc-ink);color:#fff;font-family:var(--vc-mono);font-size:.62rem;font-weight:700}.class-card__empty{color:var(--vc-ink-3);margin:0;font-size:.84rem}.class-card__count{color:var(--vc-ink-2);font-family:var(--vc-mono);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;margin:0;font-size:.61rem;font-weight:700}.class-card__open-corner{z-index:2;background:var(--vc-purple-soft);width:48px;height:48px;color:var(--vc-purple-dark);transition:width .38s var(--card-ease),border-color .16s ease-out,background-color .18s ease-out,box-shadow .32s var(--card-ease),color .18s ease-out,transform .18s ease-out;border:1px solid #5647e330;border-radius:16px;place-items:center;text-decoration:none;display:grid;position:absolute;bottom:20px;right:20px;overflow:hidden;transform:translate(0);box-shadow:0 4px #2f249721}.class-card__open-corner:before{pointer-events:none;content:"";transition:transform .52s 70ms var(--card-ease);background:linear-gradient(110deg,#0000 24%,#ffffff47,#0000 72%);position:absolute;top:0;right:0;bottom:0;left:0;transform:translate(-130%)}.class-card__open-corner-in{z-index:1;color:inherit;white-space:nowrap;transition:transform .3s var(--card-ease);justify-content:center;align-items:center;gap:7px;font-size:.9rem;font-weight:800;display:inline-flex;position:relative}.class-card__open-corner svg{transition:transform .3s var(--card-ease);flex:none}.class-card__open-label{opacity:0;max-width:0;transition:max-width .34s var(--card-ease),opacity .14s ease-out,transform .3s var(--card-ease);overflow:hidden;transform:translate(7px)}.class-card:is(:hover,:focus-within) .class-card__open-corner,.class-card__open-corner:focus-visible{border-color:var(--vc-purple-dark);background:var(--vc-purple-dark);color:#fff;width:112px;transform:translateY(-3px);box-shadow:0 7px #21176d,0 14px 24px -16px #2f2497b8}.class-card:is(:hover,:focus-within) .class-card__open-corner:before,.class-card__open-corner:focus-visible:before{transform:translate(130%)}.class-card:is(:hover,:focus-within) .class-card__open-label,.class-card__open-corner:focus-visible .class-card__open-label{opacity:1;max-width:48px;transform:translate(0)}.class-card:is(:hover,:focus-within) .class-card__open-corner svg,.class-card__open-corner:focus-visible svg{transform:translate(2px)}.class-card__open-corner:active{box-shadow:0 2px 0 var(--vc-purple-dark);transform:translateY(2px)scale(.98)}.class-card__open-corner:focus-visible{outline:3px solid var(--vc-purple-dark);outline-offset:3px}.class-directory__empty{border-radius:var(--vc-radius);min-height:144px}.school-directory{border-top:1px solid var(--vc-line-2);margin:0 30px 34px;padding:28px 0 0}.school-directory__heading{justify-content:space-between;align-items:end;gap:20px;margin-bottom:24px;display:flex}.school-directory__heading h2{margin:0;font-size:clamp(1.45rem,2.4vw,1.9rem)}.school-directory__heading p{color:var(--vc-ink-3);margin:7px 0 0;font-size:.84rem}.teacher-groups{gap:30px;display:grid}.teacher-group__heading{align-items:center;gap:12px;margin-bottom:13px;display:flex}.teacher-group__heading h3{margin:0;font-size:1.05rem}.teacher-group__heading span{color:var(--vc-ink-3);font-family:var(--vc-mono);letter-spacing:.08em;text-transform:uppercase;font-size:.61rem;font-weight:800}.school-class-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.school-class-card{--card-ease:cubic-bezier(.2, .82, .2, 1);border:1px solid var(--vc-line-2);min-width:0;min-height:190px;transition:transform .22s var(--card-ease),border-color .16s ease,box-shadow .22s ease;background:#fff;border-radius:17px;flex-direction:column;padding:17px;display:flex;box-shadow:0 8px 22px -20px #191233b3}.school-class-card:hover{border-color:#5647e361;transform:translateY(-4px);box-shadow:5px 7px #2f249717}.school-class-card__top{grid-template-columns:39px minmax(0,1fr);align-items:center;gap:11px;min-width:0;display:grid}.school-class-card__flag{background:var(--vc-purple-soft);border-radius:12px;place-items:center;width:39px;height:39px;display:grid}.school-class-card__top h3{font-family:var(--vc-display);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:1rem;overflow:hidden}.school-class-card__top p{color:var(--vc-ink-3);margin:5px 0 0;font-size:.68rem}.school-class-card .class-code{align-self:flex-start;margin-top:15px}.school-class-card__foot{justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:15px;display:flex}.school-class-card__teacher{color:var(--vc-ink-2);text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;font-weight:750;overflow:hidden}.school-class-card__open,.school-class-card__join{background:var(--vc-purple-soft);min-height:31px;color:var(--vc-purple-dark);border:1px solid #5647e333;border-radius:9px;align-items:center;gap:5px;padding:0 9px;font-size:.68rem;font-weight:850;text-decoration:none;transition:transform .16s,background-color .16s;display:inline-flex}.school-class-card__open:hover,.school-class-card__join:hover{background:var(--vc-yellow);transform:translateY(-1px)}.school-class-card__join:disabled{cursor:progress;opacity:.65}@media(max-width:1050px){.school-class-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.school-directory{margin:0 20px 28px}.school-directory__heading{flex-direction:column;align-items:flex-start;gap:10px}.school-class-grid{grid-template-columns:1fr}}.class-scene{z-index:2147483000;pointer-events:auto;background:var(--vc-blue);clip-path:circle(0 at var(--scene-x,50vw) var(--scene-y,50vh));will-change:clip-path;place-items:center;display:grid;position:fixed;top:-2px;right:-2px;bottom:-2px;left:-2px;overflow:hidden}.class-scene--cover{animation:.3s cubic-bezier(.2,.82,.2,1) both class-ink-in}.class-scene--reveal{animation:.3s cubic-bezier(.62,0,.2,1) both class-ink-out}@keyframes class-ink-in{0%{clip-path:circle(0 at var(--scene-x,50vw) var(--scene-y,50vh))}38%{clip-path:circle(34vmax at var(--scene-x,50vw) var(--scene-y,50vh))}to{clip-path:circle(160vmax at var(--scene-x,50vw) var(--scene-y,50vh))}}@keyframes class-ink-out{0%{clip-path:inset(0)}35%{clip-path:inset(0 0 22% round 0 0 46% 46%/0 0 26% 26%)}to{clip-path:inset(0 0 104% round 0 0 8% 8%/0 0 4% 4%)}}.class-scene__shape{border:3px solid var(--vc-ink);opacity:0;pointer-events:none;animation:.36s cubic-bezier(.2,.82,.2,1) both class-shape-arrive;display:block;position:absolute}.class-scene__shape--one{aspect-ratio:1.8;background:var(--vc-pink);border-radius:43% 57% 36% 64%/58% 42%;width:34vw;top:-8%;left:-5%;transform:rotate(-12deg)}.class-scene__shape--two{aspect-ratio:1.45;background:var(--vc-coral);border-radius:58% 42% 62% 38%/44% 58% 42% 56%;width:30vw;animation-delay:70ms;top:6%;right:-8%}.class-scene__shape--three{aspect-ratio:2;background:var(--vc-yellow);border-radius:44% 56% 38% 62%/62% 41% 59% 38%;width:38vw;animation-delay:.12s;bottom:-9%;right:4%}.class-scene__shape--four{aspect-ratio:1.4;background:var(--vc-green);border-radius:64% 36% 48% 52%/39% 61% 43% 57%;width:29vw;animation-delay:.16s;bottom:5%;left:-7%}@keyframes class-shape-arrive{0%{opacity:0;transform:translateY(28px)rotate(-9deg)scale(.86)}to{opacity:1;transform:translate(0)rotate(0)scale(1)}}.class-scene__drop{left:var(--scene-x,50vw);top:var(--scene-y,50vh);border:3px solid var(--vc-ink);background:var(--vc-yellow);width:1.05rem;height:1.05rem;box-shadow:5px 5px 0 var(--vc-ink);opacity:0;border-radius:50%;animation:.42s cubic-bezier(.3,.9,.25,1) both class-drop-hop;position:absolute;transform:translate(-50%,-50%)scale(.4)}@keyframes class-drop-hop{0%{opacity:0;transform:translate(-50%,-50%)scale(.35)}16%{opacity:1;transform:translate(-50%,-50%)scale(1)}58%{opacity:1;top:calc(50% - 4.2rem);left:50%;transform:translate(-50%,-50%)scale(.86)}to{opacity:0;top:calc(50% - 2.6rem);left:50%;transform:translate(-50%,-50%)scale(2.4)}}.class-scene__cargo{z-index:4;color:var(--vc-ink);text-align:center;justify-items:center;gap:.7rem;padding:0 6vw;animation:.36s cubic-bezier(.2,.8,.2,1) 70ms both class-cargo-in;display:grid;position:relative}.class-scene__cargo small{border:2px solid var(--vc-ink);background:var(--vc-yellow);box-shadow:3px 3px 0 var(--vc-ink);font-family:var(--vc-mono);letter-spacing:.1em;text-transform:uppercase;border-radius:999px;padding:.48rem .72rem;font-size:.62rem;font-weight:900}.class-scene__cargo strong{max-width:18ch;font-family:var(--vc-display);letter-spacing:-.01em;font-size:clamp(1.9rem,5.4vw,3.4rem);font-weight:900;line-height:1.04;display:block}.class-scene__brand{aspect-ratio:9/2;border:3px solid var(--vc-ink);background:var(--vc-cream);width:clamp(11.25rem,26vw,18.75rem);box-shadow:9px 9px 0 var(--vc-ink);border-radius:22px 16px 24px 18px;place-items:center;padding:.75rem 1rem;display:grid;position:relative}.class-scene__brand:before{z-index:0;border:3px solid var(--vc-ink);background:var(--vc-pink);content:"";border-radius:50%;width:64px;height:42px;animation:.78s cubic-bezier(.2,.8,.2,1) .11s both class-brand-badge;position:absolute;top:-14px;right:-18px;transform:rotate(13deg)}.class-scene__brand:after{z-index:0;border:3px solid var(--vc-ink);background:var(--vc-coral);opacity:0;content:"";border-radius:48% 52% 42% 58%;width:54px;height:32px;animation:.62s cubic-bezier(.2,.8,.2,1) .18s both class-brand-badge;position:absolute;bottom:-14px;left:-16px;transform:rotate(-11deg)scale(.7)}.class-scene__brand img{z-index:1;transform-origin:50% 70%;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:auto;animation:.4s cubic-bezier(.2,.82,.2,1) 45ms both class-brand-arrive;display:block;position:relative}@keyframes class-brand-arrive{0%{opacity:0;transform:translateY(14px)scale(.82,.92)}58%{opacity:1;transform:translateY(-3px)scale(1.035,.985)}78%{transform:translateY(1px)scale(.995,1.01)}to{opacity:1;transform:none}}@keyframes class-brand-badge{0%{opacity:0;transform:rotate(-18deg)scale(.7)}68%{opacity:1;transform:rotate(5deg)scale(1.08)}to{opacity:1;transform:rotate(0)scale(1)}}.class-scene__progress{gap:7px;margin-top:.2rem;display:inline-flex}.class-scene__progress i{border:2px solid var(--vc-ink);background:var(--vc-cream);border-radius:50%;width:12px;height:12px;animation:.72s ease-in-out infinite class-progress-pop}.class-scene__progress i:nth-child(2){background:var(--vc-pink);animation-delay:.12s}.class-scene__progress i:nth-child(3){background:var(--vc-yellow);animation-delay:.24s}@keyframes class-progress-pop{0%,to{transform:translateY(0)scale(.9)}45%{transform:translateY(-6px)scale(1.08)}}@keyframes class-cargo-in{0%{opacity:0;transform:translateY(1.5rem)scale(.94)}to{opacity:1;transform:none}}.class-scene--reveal .class-scene__cargo{animation:.22s cubic-bezier(.6,0,.9,.3) both class-cargo-out}.class-scene--reveal .class-scene__drop{display:none}@keyframes class-cargo-out{0%{opacity:1;transform:none}to{opacity:0;transform:translateY(-1.1rem)scale(.97)}}.workspace-page{animation:.46s cubic-bezier(.2,.8,.2,1) both class-arrive}.workspace-page .workspace-hero{animation:.52s cubic-bezier(.2,.8,.2,1) 40ms both class-arrive-hero}.workspace-page .workspace-tabs,.workspace-page [role=tabpanel]{animation:.52s cubic-bezier(.2,.8,.2,1) .12s both class-arrive-hero}@keyframes class-arrive{0%{opacity:.6;transform:scale(.985)}to{opacity:1;transform:none}}@keyframes class-arrive-hero{0%{opacity:0;transform:translateY(1.4rem)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.class-scene,.class-scene__shape,.class-scene__drop,.class-scene__cargo,.class-scene__brand:before,.class-scene__brand:after,.class-scene__brand img,.class-scene__progress i{animation-duration:1ms!important}.class-scene__drop{display:none}.workspace-page,.workspace-page .workspace-hero,.workspace-page .workspace-tabs,.workspace-page [role=tabpanel]{animation:none}}@media(max-width:1120px){.class-grid{grid-template-columns:1fr}}@media(max-width:760px){.classes-page__masthead{padding:20px}.class-directory{padding:22px 20px 26px}.class-directory__heading{flex-direction:column;align-items:flex-start;padding-bottom:20px}.class-directory__actions{width:100%}.class-directory__actions .button,.class-directory__actions .discover-class-entry{flex:1;justify-content:center}}@media(max-width:480px){.class-directory__total{display:none}.class-card{min-height:236px;padding:20px}.class-card:after{left:20px;right:20px}.class-card__header h2{font-size:1.25rem}.class-card__body{gap:8px;padding-top:16px;padding-right:56px}.class-card__face{width:34px;height:34px;margin-left:-15px}.class-card__count{letter-spacing:.07em;font-size:.56rem}.class-card__open-corner{border-radius:16px;width:44px;height:44px;bottom:16px;right:16px}}@media(forced-colors:active){.class-card{box-shadow:none;background:canvas;border-color:canvastext}.class-card:before,.class-card:after,.class-card__open-corner:before{display:none}.class-card__teacher-face,.class-card__face{box-shadow:none;outline:1px solid canvastext}.class-card__open-corner{box-shadow:none;color:linktext;background:canvas;border-color:linktext}.class-card:is(:hover,:focus-within) .class-card__open-corner,.class-card__open-corner:focus-visible{color:highlighttext;background:highlight}}.week-nav{border:1px solid var(--vc-line-2);border-radius:var(--vc-radius-sm);background:#fff;margin:20px 0 25px;padding:12px 13px 13px}.week-nav__row{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:5px;display:grid}.week-nav__row+.week-nav__row{border-top:1px solid var(--vc-line);margin-top:8px;padding-top:8px}.week-nav__arrow{border:1px solid var(--vc-line-2);width:31px;height:31px;color:var(--vc-ink-2);background:#fff;border-radius:50%;place-items:center;padding:0;transition:border-color .16s,background-color .16s,color .16s,transform .16s;display:grid}.week-nav__arrow:hover:not(:disabled){border-color:var(--vc-purple);background:var(--vc-purple-soft);color:var(--vc-purple-dark);transform:scale(1.06)}.week-nav__arrow:disabled{opacity:.32}.week-nav__months{overscroll-behavior-x:contain;scroll-behavior:smooth;scroll-snap-type:x proximity;scrollbar-width:none;gap:6px;min-width:0;padding:2px;display:flex;overflow-x:auto}.week-nav__months::-webkit-scrollbar{display:none}.week-nav__month{border-radius:var(--vc-radius-pill);color:var(--vc-ink-2);scroll-snap-align:center;background:0 0;border:1px solid #0000;flex-direction:column;flex:none;align-items:center;gap:1px;padding:6px 12px;transition:border-color .16s,background-color .16s,color .16s;display:flex}.week-nav__month strong{font-family:var(--vc-display);font-size:.82rem;line-height:1.15}.week-nav__month small{color:var(--vc-ink-3);font-family:var(--vc-mono);letter-spacing:.08em;font-size:.52rem}.week-nav__month:hover{background:var(--vc-purple-soft);color:var(--vc-ink)}.week-nav__month.is-current{background:var(--vc-ink);color:#fff}.week-nav__month.is-current small{color:#ffffffad}.week-nav__days{scrollbar-width:none;grid-auto-columns:minmax(72px,1fr);grid-auto-flow:column;gap:6px;min-width:0;margin:0;padding:2px;list-style:none;display:grid;overflow-x:auto}.week-nav__days::-webkit-scrollbar{display:none}.week-nav__day{border:1px solid var(--vc-line);border-radius:var(--vc-radius-sm);width:100%;min-width:0;min-height:76px;color:var(--vc-ink);text-align:center;background:#fff;flex-direction:column;justify-content:center;align-items:center;gap:1px;padding:8px 6px 9px;transition:border-color .16s,background-color .16s,color .16s,transform .16s;display:flex;position:relative}.week-nav__day:hover:not(.is-selected){border-color:var(--vc-purple);background:var(--vc-purple-soft);transform:translateY(-2px)}.week-nav__day.is-selected{border-color:var(--vc-ink);background:var(--vc-ink);color:#fff}.week-nav__day.is-selected:hover{transform:none}.week-nav__day.is-today:not(.is-selected){border-color:var(--vc-ink);box-shadow:0 0 0 1px var(--vc-ink)}.week-nav__day-number{color:inherit;font-family:var(--vc-display);font-variant-numeric:tabular-nums;font-size:1.18rem;font-weight:800;line-height:1}.week-nav__day-name{color:var(--vc-ink-3);font-family:var(--vc-mono);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;font-size:.52rem;font-weight:700}.week-nav__day-count{color:var(--vc-ink-3);white-space:nowrap;margin-top:2px;font-size:.61rem}.week-nav__day.has-goals .week-nav__day-count{color:var(--vc-purple-dark)}.week-nav__day.is-selected .week-nav__day-name,.week-nav__day.is-selected .week-nav__day-count{color:#ffffffb8}.week-nav__day.is-fetching{border-color:var(--vc-purple);background:var(--vc-purple-soft);color:var(--vc-ink)}.week-nav__day.is-fetching .week-nav__day-number,.week-nav__day.is-fetching .week-nav__day-name{opacity:.42}.week-nav__day.is-fetching .week-nav__day-count{place-items:center;min-height:17px;display:grid}.week-results{isolation:isolate;position:relative}.week-results__board{z-index:1;position:relative}.week-results__scene{z-index:4;border-radius:var(--vc-radius);pointer-events:none;contain:paint;position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.week-results__veil{opacity:0;background:#fff7eff0;place-items:center;display:grid;position:absolute;top:0;right:0;bottom:0;left:0}.week-results.is-scene-covering .week-results__veil{animation:.2s ease-out both week-veil-in}.week-results.is-scene-revealing .week-results__veil{animation:.2s ease-in both week-veil-out}.week-results.is-scene-revealing .week-results__board{animation:.24s cubic-bezier(.2,0,0,1) both week-board-arrive}@keyframes week-veil-in{0%{opacity:0}to{opacity:1}}@keyframes week-veil-out{0%{opacity:1}to{opacity:0}}@keyframes week-board-arrive{0%{transform:translate(-9px)scale(.99)}to{transform:translate(0)scale(1)}}@media(max-width:650px){.week-nav{padding:10px 8px}.week-nav__month{padding-inline:10px}.week-nav__days{grid-auto-columns:minmax(70px,auto)}}@media(prefers-reduced-motion:reduce){.class-card,.class-card *,.class-scene,.class-scene *,.week-nav__day,.week-nav__day:before,.week-nav__day:after,.week-results *,.week-results :before,.week-results :after{transition:none!important;animation:none!important}.week-nav__months{scroll-behavior:auto}}.new-goal{width:min(100%,980px)}.new-goal__steps{gap:6px;margin:18px 0 0;padding:0;list-style:none;display:flex}.new-goal__steps li{border:1px solid var(--vc-line-2);color:var(--vc-ink-3);border-radius:999px;align-items:center;gap:6px;padding:6px 11px;font-size:.76rem;font-weight:750;transition:border-color .18s,background-color .18s,color .18s,transform .18s cubic-bezier(.2,.8,.2,1);display:inline-flex}.new-goal__steps li span{display:inline-flex}.new-goal__steps li.is-on{border-color:var(--vc-purple);background:var(--vc-purple);color:#fff;transform:translateY(-1px)}.new-goal__steps li.is-on span{animation:.26s cubic-bezier(.2,.8,.2,1) both new-goal-step-mark}.new-goal__steps li.is-done{background:var(--vc-green-soft);color:#0b7b58;border-color:#14a97c66}.new-goal__body{max-height:min(58vh,600px);margin-top:18px;overflow-y:auto}.new-goal__body>*{animation:.24s cubic-bezier(.2,.8,.2,1) both new-goal-step-forward-in}.new-goal.is-backward .new-goal__body>*{animation-name:new-goal-step-backward-in}@keyframes new-goal-step-forward-in{0%{opacity:0;transform:translate(14px)}to{opacity:1;transform:none}}@keyframes new-goal-step-backward-in{0%{opacity:0;transform:translate(-14px)}to{opacity:1;transform:none}}@keyframes new-goal-step-mark{0%{transform:scale(.72)rotate(-10deg)}70%{transform:scale(1.12)rotate(3deg)}to{transform:none}}.new-goal__days{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.new-goal__day{border:1px solid var(--vc-line-2);text-align:left;cursor:pointer;background:#fff;border-radius:13px;gap:2px;padding:11px 8px;transition:border-color .15s,background .15s,transform .15s;display:grid}.new-goal__day:hover{border-color:var(--vc-purple);transform:translateY(-2px)}.new-goal__day strong{color:var(--vc-ink);font-size:1.15rem;line-height:1}.new-goal__day small{color:var(--vc-ink-2);font-size:.74rem}.new-goal__day em{color:var(--vc-ink-3);font-family:var(--vc-mono);font-size:.6rem;font-style:normal}.new-goal__day.is-today{border-color:#ff624280}.new-goal__day.is-on{border-color:var(--vc-purple);background:var(--vc-purple-soft)}.new-goal__date{color:var(--vc-ink-2);grid-column:1/-1;gap:6px;margin-top:4px;font-size:.78rem;font-weight:750;display:grid}.new-goal__date input{width:100%;min-height:42px;color:var(--vc-ink);font-family:var(--vc-mono);cursor:pointer;background:#fff;border:0;border-radius:11px;outline:0;padding:0 12px;font-size:.76rem;font-weight:700;transition:border-color .18s,background-color .18s,box-shadow .18s,transform .14s cubic-bezier(.2,.8,.2,1)}.new-goal__date input:hover{background:#fffdf8;box-shadow:3px 3px #0168cf1f}.new-goal__date input:focus{background:#fff;box-shadow:0 0 0 3px #0168cf1f,3px 3px #0b0b0d1a}.new-goal__date input:focus-visible{outline:0;box-shadow:0 0 0 3px #fdc522cc,3px 3px #0b0b0d24}.new-goal__date input:active{transform:translateY(1px);box-shadow:0 0 0 2px #0168cf29}.new-goal__date input::-webkit-calendar-picker-indicator{background-color:var(--vc-yellow);cursor:pointer;opacity:.82;border-radius:6px;margin-right:1px;padding:4px;transition:background-color .18s,opacity .18s,transform .14s}.new-goal__date input:hover::-webkit-calendar-picker-indicator{background-color:var(--vc-pink);opacity:1}.new-goal__date input:active::-webkit-calendar-picker-indicator{background-color:var(--vc-blue);transform:scale(.94)}.new-goal__content{gap:12px;display:grid}.new-goal__content-choice{justify-content:space-between;align-items:center;gap:12px;display:flex}.new-goal__choice-label{color:var(--vc-ink-2);font-size:.78rem;font-weight:800}.new-goal__switch{border:1px solid var(--vc-line-2);background:#fff;border-radius:999px;gap:4px;width:fit-content;padding:4px;display:inline-flex}.new-goal__switch button{min-height:34px;color:var(--vc-ink-2);cursor:pointer;background:0 0;border:0;border-radius:999px;padding:0 16px;font-family:inherit;font-size:.8rem;font-weight:750}.new-goal__switch button.is-on{background:var(--vc-purple);color:#fff}.new-goal__custom{background:var(--vc-purple-soft);border:1px dashed #5647e35c;border-radius:16px;gap:10px;padding:14px;display:grid}.new-goal__custom--vocab{background:var(--vc-coral-soft);border-color:#ff624266}.new-goal__custom h3{color:var(--vc-ink);margin:0;font-size:.98rem}.new-goal__custom p{color:var(--vc-ink-3);margin:3px 0 0;font-size:.76rem;line-height:1.4}.new-goal__custom label{color:var(--vc-ink-2);gap:6px;font-size:.78rem;font-weight:750;display:grid}.new-goal__custom input,.new-goal__custom textarea{border:1px solid var(--vc-line-2);width:100%;font:inherit;background:#fff;border-radius:11px;padding:10px 11px;font-size:.87rem}.new-goal__custom textarea{resize:vertical;min-height:132px;line-height:1.45}.new-goal__search{border:1px solid var(--vc-line-2);min-height:42px;color:var(--vc-ink-3);background:#fff;border-radius:11px;align-items:center;gap:9px;padding:0 12px;transition:border-color .16s,box-shadow .16s;display:flex}.new-goal__search:focus-within{border-color:var(--vc-purple);box-shadow:0 0 0 4px var(--vc-purple-soft)}.new-goal__search input{background:0 0;border:0;outline:0;width:100%;font-family:inherit;font-size:.87rem}.new-goal__sets{gap:6px;margin:0;padding:0;list-style:none;display:grid}.new-goal__set{border:1px solid var(--vc-line-2);text-align:left;cursor:pointer;background:#fff;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:10px 12px;transition:border-color .15s,background .15s;display:flex}.new-goal__set:hover{border-color:var(--vc-purple)}.new-goal__set.is-on{border-color:var(--vc-purple);background:var(--vc-purple-soft)}.new-goal__set-copy{gap:1px;min-width:0;display:grid}.new-goal__set-copy strong{color:var(--vc-ink);font-size:.9rem;font-weight:750}.new-goal__set-copy small{color:var(--vc-ink-3);font-family:var(--vc-mono);font-size:.63rem}.new-goal__tick{border:1.5px solid var(--vc-line-2);color:#fff;border-radius:50%;flex:none;place-items:center;width:20px;height:20px;display:grid}.new-goal__set.is-on .new-goal__tick{border-color:var(--vc-purple);background:var(--vc-purple)}.new-goal__words{background:var(--vc-purple-soft);border:1px dashed #5647e34d;border-radius:14px;padding:12px;animation:.22s cubic-bezier(.2,.8,.2,1) both pop-arrive}.new-goal__words-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.new-goal__words-head strong{color:var(--vc-ink);font-size:.84rem}.new-goal__toggle{color:var(--vc-ink-2);cursor:pointer;align-items:center;gap:7px;font-size:.76rem;font-weight:700;display:inline-flex}.new-goal__word-list{flex-wrap:wrap;gap:5px;max-height:150px;margin-top:10px;display:flex;overflow-y:auto}.new-goal__word{border:1px solid var(--vc-line-2);color:var(--vc-ink-2);cursor:pointer;background:#fff;border-radius:999px;padding:5px 10px;font-family:inherit;font-size:.78rem;font-weight:650}.new-goal__word.is-on{border-color:var(--vc-purple);background:var(--vc-purple);color:#fff}.new-goal__note{color:var(--vc-ink-3);margin:8px 0 0;font-size:.78rem}.new-goal__games{gap:12px;display:grid}.new-goal__filters{flex-wrap:wrap;gap:5px;display:flex}.new-goal__filters button{border:1px solid var(--vc-line-2);min-height:32px;color:var(--vc-ink-2);cursor:pointer;background:#fff;border-radius:999px;padding:0 12px;font-family:inherit;font-size:.75rem;font-weight:750}.new-goal__filters button.is-on{border-color:var(--vc-purple);background:var(--vc-purple);color:#fff}.new-goal__game-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.new-goal__game{border:1px solid var(--vc-line-2);text-align:left;cursor:pointer;background:#fff;border-radius:13px;gap:9px;padding:0 0 12px;transition:border-color .15s,background .15s,transform .15s;display:grid;overflow:hidden}.new-goal__game:hover{border-color:var(--vc-purple);transform:translateY(-2px)}.new-goal__game.is-on{border-color:var(--vc-purple);background:var(--vc-purple-soft);box-shadow:inset 0 0 0 1px var(--vc-purple)}.new-goal__game-media{aspect-ratio:16/7;background:var(--vc-blue);display:block;position:relative;overflow:hidden}.new-goal__game-media:after{content:"";pointer-events:none;background:linear-gradient(#0b0b0d05,#0b0b0d80);position:absolute;top:0;right:0;bottom:0;left:0}.new-goal__game-media img{object-fit:cover;width:100%;height:100%;transition:transform .22s cubic-bezier(.2,.8,.2,1);display:block}.new-goal__game:hover .new-goal__game-media img{transform:scale(1.045)}.new-goal__game-media>span{z-index:1;color:#fff;font-family:var(--vc-mono);letter-spacing:.06em;text-transform:uppercase;background:#0b0b0da3;border:1px solid #ffffffb8;border-radius:999px;padding:3px 7px;font-size:.55rem;font-weight:800;position:absolute;bottom:8px;right:9px}.new-goal__game-copy{gap:3px;padding:0 12px;display:grid}.new-goal__game strong{color:var(--vc-ink);font-size:.92rem;font-weight:800}.new-goal__game small{color:var(--vc-ink-3);font-size:.75rem;line-height:1.4}.new-goal__game-modes{flex-wrap:wrap;gap:4px;margin-top:3px;display:flex}.new-goal__game-modes em,.new-goal__game-modes b{font-family:var(--vc-mono);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:1px 6px;font-size:.56rem;font-style:normal;font-weight:700}.new-goal__game-modes em{border:1px solid var(--vc-line-2);color:var(--vc-ink-3)}.new-goal__game-modes b{background:var(--vc-coral-soft);color:var(--vc-coral-dark)}.new-goal__finals{grid-template-columns:minmax(0,1fr) 110px;gap:10px;display:grid}.new-goal__finals label{color:var(--vc-ink-2);gap:6px;font-size:.78rem;font-weight:750;display:grid}.new-goal__finals input{border:1px solid var(--vc-line-2);background:#fff;border-radius:11px;min-height:42px;padding:0 11px;font-family:inherit;font-size:.87rem}.new-goal__actions{justify-content:space-between;margin-top:18px}.new-goal__switches label{animation:.18s ease-out both pop-arrive}@media(prefers-reduced-motion:reduce){.new-goal,.new-goal *,.settings-popover{transition:none!important;animation:none!important}.new-goal__steps li.is-on{transform:none}}@media(max-width:620px){.new-goal__days{grid-template-columns:repeat(2,minmax(0,1fr))}.new-goal__game-grid,.new-goal__finals{grid-template-columns:minmax(0,1fr)}.new-goal__game-setup{flex-direction:column;align-items:stretch}.new-goal__game-setup .button{width:100%}}.workspace-hero__actions{flex:none;align-items:center;gap:10px;display:flex}.workspace-hero__actions .button{min-height:42px}@media(max-width:620px){.workspace-hero__actions .button{padding:0 12px}}.new-goal__lanes{gap:14px;display:grid}.new-goal__lane{border:1px solid var(--vc-line-2);background:#fff;border-radius:16px;gap:9px;padding:13px;display:grid}.new-goal__lane--vocab{border-color:#ff624247}.new-goal__lane-head{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.new-goal__lane-head h3{margin:0;font-size:1rem;font-weight:800}.new-goal__lane-count{color:var(--vc-ink-3);font-family:var(--vc-mono);letter-spacing:.06em;text-transform:uppercase;font-size:.62rem;font-weight:700}.new-goal__lane .new-goal__sets{max-height:176px;overflow-y:auto}.new-goal__lane--vocab .new-goal__set.is-on{border-color:var(--vc-coral);background:var(--vc-coral-soft)}.new-goal__lane--vocab .new-goal__set.is-on .new-goal__tick{border-color:var(--vc-coral);background:var(--vc-coral)}.new-goal__options{gap:14px;display:grid}.new-goal__game-setup{border-top:1px solid var(--vc-line-2);border-bottom:1px solid var(--vc-line-2);justify-content:space-between;align-items:center;gap:18px;padding:14px 0;display:flex}.new-goal__game-setup>div{gap:5px;min-width:0;display:grid}.new-goal__game-setup strong{color:var(--vc-ink);font-size:.78rem}.new-goal__game-setup span{color:var(--vc-ink-3);text-transform:capitalize;font-size:.67rem}.new-goal__game-setup .button{flex:none}.new-goal__summary{background:var(--vc-purple-soft);border-radius:13px;gap:2px;padding:11px 13px;display:grid}.new-goal__summary strong{color:var(--vc-purple-dark);font-size:.92rem}.new-goal__summary span{color:var(--vc-ink-2);font-size:.78rem}.new-goal__fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.new-goal__fields label{color:var(--vc-ink-2);gap:6px;font-size:.78rem;font-weight:750;display:grid}.new-goal__fields label:first-child{grid-column:1/-1}.new-goal__advanced{border-top:1px solid var(--vc-line-2)}.new-goal__advanced summary{color:var(--vc-purple-dark);cursor:pointer;padding:12px 0 3px;font-size:.8rem;font-weight:800}.new-goal__advanced-body{gap:12px;padding-top:10px;display:grid}.new-goal__fields input,.new-goal__fields select{border:1px solid var(--vc-line-2);background:#fff;border-radius:11px;min-height:42px;padding:0 11px;font-family:inherit;font-size:.87rem}.new-goal__switches{background:var(--vc-coral-soft);border:1px dashed #ff624259;border-radius:14px;flex-wrap:wrap;gap:8px 16px;margin:0;padding:12px 13px;display:flex}.new-goal__switches legend{color:var(--vc-coral-dark);font-family:var(--vc-mono);letter-spacing:.1em;text-transform:uppercase;padding:0 6px;font-size:.6rem;font-weight:700}.new-goal__switches label{color:var(--vc-ink-2);cursor:pointer;align-items:center;gap:7px;font-size:.8rem;font-weight:700;display:inline-flex}@media(max-width:620px){.new-goal__fields{grid-template-columns:minmax(0,1fr)}}.create-dialog.new-goal{border:3px solid var(--vc-ink);background:var(--vc-cream);width:min(100%,980px);max-height:calc(100dvh - 40px);color:var(--vc-ink);box-shadow:8px 8px 0 var(--vc-ink);border-radius:24px 18px 26px 20px;padding:30px;overflow:hidden}.dialog-backdrop:has(.create-dialog.new-goal){background:#0b0b0d94}.create-dialog.new-goal .dialog-heading{border-bottom:2px solid var(--vc-ink);padding-bottom:14px}.create-dialog.new-goal .dialog-heading h2{color:var(--vc-ink);font-family:var(--vc-display);letter-spacing:0}.create-dialog.new-goal .dialog-heading .eyebrow{color:var(--vc-purple)}.create-dialog.new-goal .new-goal__steps li{border:2px solid var(--vc-ink);color:var(--vc-ink-2);background:#fff}.create-dialog.new-goal .new-goal__steps li.is-on{border-color:var(--vc-ink);background:var(--vc-blue);color:#fff}.create-dialog.new-goal .new-goal__steps li.is-done{border-color:var(--vc-ink);background:var(--vc-green);color:#fff}.create-dialog.new-goal .new-goal__day,.create-dialog.new-goal .new-goal__set,.create-dialog.new-goal .new-goal__game,.create-dialog.new-goal .new-goal__search,.create-dialog.new-goal .new-goal__fields input,.create-dialog.new-goal .new-goal__fields select{border:2px solid var(--vc-ink);color:var(--vc-ink);background:#fff}.create-dialog.new-goal .new-goal__date input{color:var(--vc-ink);background:#fff;border:0}.create-dialog.new-goal .new-goal__date input:hover{background:#fffdf8}.create-dialog.new-goal .new-goal__day:hover,.create-dialog.new-goal .new-goal__set:hover,.create-dialog.new-goal .new-goal__game:hover{border-color:var(--vc-ink);background:var(--vc-pink);transform:translateY(-2px)}.create-dialog.new-goal .new-goal__day.is-on,.create-dialog.new-goal .new-goal__set.is-on,.create-dialog.new-goal .new-goal__game.is-on{border-color:var(--vc-ink);background:var(--vc-yellow);box-shadow:3px 3px 0 var(--vc-ink)}.create-dialog.new-goal .new-goal__day.is-today{box-shadow:inset 0 -3px 0 var(--vc-coral)}.create-dialog.new-goal .new-goal__switch button.is-on,.create-dialog.new-goal .new-goal__filters button.is-on,.create-dialog.new-goal .new-goal__word.is-on{border-color:var(--vc-ink);background:var(--vc-blue);color:#fff}.create-dialog.new-goal .new-goal__lane{border:2px solid var(--vc-ink);background:#fff;border-radius:16px 12px 18px 14px}.create-dialog.new-goal .new-goal__lane--vocab{border-color:var(--vc-coral)}.create-dialog.new-goal .new-goal__words{border:2px dashed var(--vc-ink);background:var(--vc-purple-soft)}.create-dialog.new-goal .new-goal__summary{border:2px solid var(--vc-ink);background:var(--vc-blue);color:#fff}.create-dialog.new-goal .new-goal__summary strong,.create-dialog.new-goal .new-goal__summary span{color:#fff}.create-dialog.new-goal .new-goal__switches{border:2px dashed var(--vc-ink);background:var(--vc-coral-soft)}.create-dialog.new-goal .new-goal__actions{border-top:2px solid var(--vc-ink);padding-top:14px}.create-dialog.new-goal .new-goal__actions .button{border:2px solid var(--vc-ink);background:var(--vc-yellow);color:var(--vc-ink);box-shadow:3px 3px 0 var(--vc-ink)}.create-dialog.new-goal .new-goal__actions .button:hover:not(:disabled){background:var(--vc-pink);color:var(--vc-ink);box-shadow:4px 4px 0 var(--vc-ink)}.create-dialog.new-goal .new-goal__actions .button--quiet{background:#fff}.create-dialog.new-goal .new-goal__actions .button--quiet:hover:not(:disabled){background:var(--vc-purple-soft)}.goal-edit-backdrop{z-index:90;background:#0b0b0dad}.goal-edit-dialog{border:3px solid var(--vc-ink);background:var(--vc-cream);width:min(100%,1080px);max-height:calc(100dvh - 32px);color:var(--vc-ink);box-shadow:10px 10px 0 var(--vc-ink);border-radius:26px 18px 28px 20px;grid-template-rows:auto auto minmax(0,1fr) auto;padding:0;display:grid;overflow:hidden}.goal-edit__header{border-bottom:2px solid var(--vc-ink);justify-content:space-between;align-items:flex-start;gap:20px;padding:26px 30px 20px;display:flex}.goal-edit__header h2{color:var(--vc-ink);font-family:var(--vc-display);margin:4px 0 0;font-size:clamp(1.7rem,3vw,2.45rem);line-height:1}.goal-edit__header p:last-child{max-width:58ch;color:var(--vc-ink-2);margin:9px 0 0;font-size:.82rem;line-height:1.45}.goal-edit__header .eyebrow{color:var(--vc-purple)}.goal-edit__hero{background:var(--vc-yellow);border-bottom:1px solid #0b0b0d2e;grid-template-columns:minmax(220px,330px) minmax(0,1fr);align-items:center;gap:22px;padding:18px 30px;display:grid}.goal-edit__hero-media{aspect-ratio:16/7;border:2px solid var(--vc-ink);background:var(--vc-blue);box-shadow:4px 4px 0 var(--vc-ink);border-radius:14px 10px 16px 11px;position:relative;overflow:hidden}.goal-edit__hero-media img{object-fit:cover;width:100%;height:100%;display:block}.goal-edit__hero-label{color:#fff;font-family:var(--vc-mono);letter-spacing:.06em;text-transform:uppercase;background:#0b0b0db8;border-radius:999px;align-items:center;gap:5px;padding:4px 8px;font-size:.58rem;font-weight:800;display:inline-flex;position:absolute;bottom:8px;right:9px}.goal-edit__hero-copy{gap:6px;min-width:0;display:grid}.goal-edit__hero-copy strong{font-family:var(--vc-display);font-size:clamp(1.25rem,2.4vw,1.9rem);line-height:1.05}.goal-edit__hero-copy>span:last-child{max-width:50ch;color:var(--vc-ink-2);font-size:.8rem;line-height:1.45}.goal-edit__eyebrow,.goal-edit__section-kicker{color:var(--vc-coral-dark);font-family:var(--vc-mono);letter-spacing:.1em;text-transform:uppercase;font-size:.59rem;font-weight:850}.goal-edit__body{overscroll-behavior:contain;min-height:0;padding:24px 30px;overflow-y:auto}.goal-edit__layout{grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);align-items:start;gap:24px;display:grid}.goal-edit__main,.goal-edit__rail{gap:18px;min-width:0;display:grid}.goal-edit__section{border:2px solid var(--vc-ink);background:#fff;border-radius:16px 12px 18px 14px;min-width:0;padding:18px;box-shadow:4px 4px #0b0b0d24}.goal-edit__section--game{background:#fff8ec}.goal-edit__section-heading{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:16px;display:flex}.goal-edit__section-heading h3{margin:4px 0 0;font-size:1.08rem;line-height:1.1}.goal-edit__section-heading>svg{color:var(--vc-blue)}.goal-edit__fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.goal-edit__field{min-width:0;color:var(--vc-ink-2);gap:6px;font-size:.73rem;font-weight:800;display:grid}.goal-edit__field--wide{grid-column:1/-1}.goal-edit__field input{width:100%;min-height:43px;color:var(--vc-ink);font:inherit;background:#fff;border:2px solid #0b0b0d7a;border-radius:10px;outline:0;padding:0 11px;font-size:.84rem}.goal-edit__field input:focus{border-color:var(--vc-blue);box-shadow:0 0 0 3px #0168cf2e}.goal-edit__set-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.goal-edit__set-search{margin:0 0 12px;display:block}.goal-edit__set-search input{width:100%;min-height:42px;color:var(--vc-ink);font:inherit;background:#fff;border:2px solid #0b0b0d42;border-radius:10px;padding:0 12px}.goal-edit__set-search input:focus-visible{border-color:var(--vc-blue);outline-offset:1px;outline:2px solid #0168cf33}.goal-edit__set{min-width:0;color:var(--vc-ink);text-align:left;cursor:pointer;background:#fff;border:2px solid #0b0b0d42;border-radius:11px;justify-content:space-between;align-items:center;gap:10px;padding:11px 12px;transition:transform .16s cubic-bezier(.2,.8,.2,1),border-color .16s,background-color .16s;display:flex}.goal-edit__set:hover{border-color:var(--vc-blue);transform:translateY(-2px)}.goal-edit__set.is-selected{border-color:var(--vc-ink);background:var(--vc-green);color:#fff;box-shadow:3px 3px 0 var(--vc-ink)}.goal-edit__set>span:first-child{gap:3px;min-width:0;display:grid}.goal-edit__set strong{text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.goal-edit__set small{color:var(--vc-ink-3);font-family:var(--vc-mono);font-size:.6rem}.goal-edit__set.is-selected small{color:#fffc}.goal-edit__set-check{border:2px solid;border-radius:50%;flex:none;place-items:center;width:21px;height:21px;display:grid}.goal-edit__empty{color:var(--vc-ink-2);margin:0;font-size:.8rem;line-height:1.5}.goal-edit__game-grid{gap:9px;display:grid}.goal-edit__game{min-width:0;color:var(--vc-ink);text-align:left;cursor:pointer;background:#fff;border:2px solid #0b0b0d42;border-radius:12px;grid-template-columns:94px minmax(0,1fr) auto;align-items:center;gap:10px;padding:7px;transition:transform .16s cubic-bezier(.2,.8,.2,1),border-color .16s,background-color .16s;display:grid}.goal-edit__game:hover:not(:disabled){border-color:var(--vc-blue);transform:translateY(-2px)}.goal-edit__game.is-selected{border-color:var(--vc-ink);background:var(--vc-yellow);box-shadow:3px 3px 0 var(--vc-ink)}.goal-edit__game:disabled{cursor:not-allowed;opacity:.56}.goal-edit__game-banner{aspect-ratio:16/8;background:var(--vc-blue);border-radius:7px;display:block;overflow:hidden}.goal-edit__game-banner img{object-fit:cover;width:100%;height:100%;transition:transform .18s;display:block}.goal-edit__game:hover:not(:disabled) .goal-edit__game-banner img{transform:scale(1.06)}.goal-edit__game-copy{gap:3px;min-width:0;display:grid}.goal-edit__game-copy strong{font-size:.78rem;line-height:1.2}.goal-edit__game-copy small{color:var(--vc-ink-3);text-overflow:ellipsis;font-size:.64rem;line-height:1.35;overflow:hidden}.goal-edit__game-meta{color:var(--vc-coral-dark);font-family:var(--vc-mono);letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;font-size:.56rem;font-weight:850}.goal-edit__game-settings{border-top:2px solid #0b0b0d2e;gap:6px;margin-top:14px;padding-top:13px;display:grid}.goal-edit__game-settings>span{align-items:center;gap:7px;font-size:.75rem;display:flex}.goal-edit__game-settings>span svg{color:var(--vc-coral-dark)}.goal-edit__game-settings small{color:var(--vc-ink-2);text-transform:capitalize;font-size:.68rem}.goal-edit__game-settings .button{justify-self:start;min-height:36px;margin-top:2px;padding-inline:11px}.goal-edit__loading{min-height:280px;color:var(--vc-ink-2);place-items:center;gap:10px;font-size:.8rem;display:grid}.goal-edit__error{margin:0 0 16px}.goal-edit__footer{border-top:2px solid var(--vc-ink);background:var(--vc-yellow);justify-content:space-between;align-items:center;gap:18px;padding:16px 30px 20px;display:flex}.goal-edit__footer>span{color:var(--vc-ink-2);font-family:var(--vc-mono);letter-spacing:.04em;text-transform:uppercase;font-size:.62rem;font-weight:800}.goal-edit__footer>div{gap:9px;display:flex}.goal-edit__footer .button{border:2px solid var(--vc-ink);background:var(--vc-blue);color:#fff;box-shadow:3px 3px 0 var(--vc-ink)}.goal-edit__footer .button--quiet{color:var(--vc-ink);box-shadow:none;background:#fff}.goal-edit__footer .button:hover:not(:disabled){transform:translateY(-2px)}.goal-card__title{width:fit-content;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}@media(max-width:820px){.goal-edit-dialog{max-height:calc(100dvh - 24px)}.goal-edit__header,.goal-edit__body,.goal-edit__footer{padding-inline:20px}.goal-edit__hero{grid-template-columns:minmax(160px,240px) minmax(0,1fr);padding-inline:20px}.goal-edit__layout{grid-template-columns:minmax(0,1fr)}.goal-edit__game-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.goal-edit-dialog{width:min(100%,100vw - 18px);box-shadow:5px 5px 0 var(--vc-ink);border-radius:18px}.goal-edit__header{padding-top:20px}.goal-edit__hero{grid-template-columns:minmax(0,1fr);gap:13px}.goal-edit__fields,.goal-edit__set-grid,.goal-edit__game-grid{grid-template-columns:minmax(0,1fr)}.goal-edit__game{grid-template-columns:88px minmax(0,1fr)}.goal-edit__game-meta{grid-column:2}.goal-edit__footer{flex-direction:column;align-items:stretch}.goal-edit__footer>div{grid-template-columns:1fr 1fr;display:grid}}@media(prefers-reduced-motion:reduce){.goal-edit-dialog,.goal-edit-dialog *,.new-goal__game-media img{transition:none!important;animation:none!important}}.goal-card__title{color:var(--vc-ink);text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;font-weight:750;text-decoration:none;overflow:hidden}.goal-card__title:hover{color:var(--vc-purple)}.goal-card__sets{flex-wrap:wrap;gap:4px;display:flex}.goal-card__sets a{border:1px solid var(--vc-line-2);color:var(--vc-ink-2);border-radius:999px;padding:2px 8px;font-size:.7rem;font-weight:650;text-decoration:none;transition:border-color .15s,color .15s}.goal-card__sets a:hover{border-color:var(--vc-purple);color:var(--vc-purple)}.goal-card__sets a.is-missing{background:var(--vc-coral-soft);color:var(--vc-coral-dark);border-color:#ff624266;align-items:center;gap:6px;font-weight:750;display:inline-flex}.goal-card__sets a.is-missing span{background:var(--vc-coral);color:#fff;border-radius:50%;place-items:center;width:14px;height:14px;font-size:.6rem;display:grid}.goal-card.is-incomplete{border-bottom-color:#ff624259}.goal-card__edit.is-primary{color:var(--vc-coral-dark)}.brand-loader{border:3px solid var(--vc-ink);background:var(--vc-cream);width:min(320px,100vw - 48px);min-height:164px;box-shadow:9px 9px 0 var(--vc-ink);border-radius:30px 21px 34px 24px;place-items:center;padding:30px 26px 25px;line-height:0;animation:.28s cubic-bezier(.2,.82,.2,1) both brand-loader-in;display:grid;position:relative;overflow:hidden}.page-loader__logo{z-index:3;place-items:center;width:84%;animation:1.25s cubic-bezier(.4,0,.2,1) infinite page-loader-logo;display:grid;position:relative}.page-loader__logo img{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:auto;display:block}.page-loader__shapes{pointer-events:none;position:absolute;top:0;right:0;bottom:0;left:0}.page-loader__shapes i{border:2px solid var(--vc-ink);animation:1.4s ease-in-out infinite page-loader-shape;display:block;position:absolute}.page-loader__shapes i:first-child{background:var(--vc-pink);border-radius:48% 52% 39% 61%;width:72px;height:48px;top:-12px;left:17px;transform:rotate(-13deg)}.page-loader__shapes i:nth-child(2){background:var(--vc-yellow);border-radius:50%;width:58px;height:58px;animation-delay:-.35s;top:16px;right:-12px}.page-loader__shapes i:nth-child(3){background:var(--vc-green);border-radius:58% 42% 49% 51%;width:82px;height:43px;animation-delay:-.7s;bottom:-16px;left:48px}.page-loader__shapes i:nth-child(4){background:var(--vc-coral);border-radius:42% 58% 48% 52%;width:46px;height:52px;animation-delay:-1.05s;bottom:-12px;right:42px}.page-loader__track{z-index:4;gap:7px;margin-top:20px;display:flex;position:relative}.page-loader__track i{border:2px solid var(--vc-ink);background:var(--vc-purple);border-radius:999px;width:26px;height:7px;animation:.88s ease-in-out infinite page-loader-track;display:block}.page-loader__track i:nth-child(2){background:var(--vc-coral);animation-delay:.11s}.page-loader__track i:nth-child(3){background:var(--vc-yellow);animation-delay:.22s}.page-loader__track i:nth-child(4){background:var(--vc-green);animation-delay:.33s}.page-loader__label{z-index:4;color:var(--vc-ink);font-family:var(--vc-mono);letter-spacing:.09em;text-transform:uppercase;margin-top:16px;font-size:.62rem;font-weight:900;line-height:1.2;position:relative}.inline-loader{vertical-align:middle;flex:none;justify-content:center;align-items:center;gap:4px;width:42px;min-width:42px;height:20px;line-height:0;display:inline-flex}.inline-loader--xs{gap:3px;width:32px;min-width:32px;height:16px}.inline-loader--md{gap:6px;width:64px;min-width:64px;height:32px}.inline-loader i{border:1.5px solid var(--vc-ink);background:var(--vc-coral);border-radius:4px 2px 4px 3px;width:9px;height:9px;animation:.66s cubic-bezier(.2,.82,.2,1) infinite alternate inline-loader-hop;display:block}.inline-loader i:nth-child(2){background:var(--vc-yellow);border-radius:50%;animation-delay:.11s}.inline-loader i:nth-child(3){background:var(--vc-green);border-radius:2px 5px 3px;animation-delay:.22s}.inline-loader--xs i{border-width:1px;width:7px;height:7px}.inline-loader--md i{border-width:2px;width:14px;height:14px}.local-loading-surface{min-height:150px;color:var(--vc-ink-3);font-family:var(--vc-mono);letter-spacing:.08em;text-align:center;text-transform:uppercase;align-content:center;place-items:center;gap:8px;padding:24px;font-size:.62rem;font-weight:850;display:grid}@keyframes brand-loader-in{0%{opacity:0;transform:translateY(10px)rotate(1deg)scale(.96)}to{opacity:1;transform:none}}@keyframes page-loader-logo{0%,to{transform:translate(0)rotate(-.35deg)}50%{transform:translateY(-5px)rotate(.35deg)}}@keyframes page-loader-shape{0%,to{translate:0;rotate:-3deg}50%{translate:0 -7px;rotate:4deg}}@keyframes page-loader-track{0%,to{opacity:.45;transform:translateY(0)scaleX(.82)}45%{opacity:1;transform:translateY(-3px)scaleX(1)}}@keyframes inline-loader-hop{0%{transform:translateY(3px)rotate(-5deg)scale(.9)}to{transform:translateY(-3px)rotate(5deg)scale(1.05)}}.state-surface--loading{background:0 0;border:0;min-height:260px}.page-scene{z-index:2147482500;padding:max(24px,env(safe-area-inset-top)) max(24px,env(safe-area-inset-right)) max(24px,env(safe-area-inset-bottom)) max(24px,env(safe-area-inset-left));background:var(--vc-blue);pointer-events:auto;place-items:center;display:grid;position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden}.page-scene:before,.page-scene:after{aspect-ratio:1.7;border:3px solid var(--vc-ink);content:"";pointer-events:none;width:44vw;min-width:210px;position:absolute}.page-scene:before{background:var(--vc-pink);border-radius:43% 57% 38% 62%;top:-10%;left:-7%;transform:rotate(-9deg)}.page-scene:after{background:var(--vc-yellow);border-radius:57% 43% 64% 36%;bottom:-12%;right:-9%;transform:rotate(11deg)}.page-scene .page-loader{z-index:2}.page-scene--show{animation:.28s cubic-bezier(.2,.82,.2,1) both page-scene-in}.page-scene--hide{animation:.2s cubic-bezier(.4,0,1,1) both page-scene-out}@keyframes page-scene-in{0%{opacity:0;clip-path:inset(0 0 100% round 0 0 42% 42%)}to{opacity:1;clip-path:inset(0)}}@keyframes page-scene-out{0%{opacity:1;clip-path:inset(0)}to{opacity:0;clip-path:inset(100% 0 0 round 42% 42% 0 0)}}@media(max-width:520px){.brand-loader{width:min(280px,100vw - 36px);min-height:144px;box-shadow:6px 6px 0 var(--vc-ink);border-width:2px;border-radius:23px 17px 26px 19px;padding:25px 20px 21px}.page-loader__logo{width:88%}.page-loader__shapes i:first-child{width:58px;height:39px;left:9px}.page-loader__shapes i:nth-child(2){width:48px;height:48px;right:-10px}.page-loader__shapes i:nth-child(3){width:67px;height:35px;left:30px}.page-loader__shapes i:nth-child(4){width:38px;height:43px;right:24px}.page-loader__track{gap:5px;margin-top:16px}.page-loader__track i{width:21px;height:6px}.page-loader__label{text-overflow:ellipsis;white-space:nowrap;max-width:15rem;margin-top:13px;font-size:.56rem;overflow:hidden}.page-scene{padding:max(18px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left))}.page-scene:before,.page-scene:after{border-width:2px;min-width:170px}.class-scene__cargo{gap:.58rem;padding-inline:1.4rem}.class-scene__brand{width:min(68vw,15rem);box-shadow:6px 6px 0 var(--vc-ink);border-width:2px;border-radius:17px 12px 19px 14px;padding:.62rem .8rem}.class-scene__brand:before{border-width:2px;width:48px;height:31px;top:-10px;right:-12px}.class-scene__brand:after{border-width:2px;width:42px;height:24px;bottom:-10px;left:-11px}.class-scene__cargo strong{max-width:15ch;font-size:clamp(1.75rem,9vw,2.5rem)}.class-scene__shape{border-width:2px}.class-scene__shape--one{width:55vw}.class-scene__shape--two{width:48vw}.class-scene__shape--three{width:62vw}.class-scene__shape--four{width:49vw}}button,.week-nav__day,.week-nav__month,.new-goal__day,.new-goal__set,.new-goal__word,.new-goal__game,.class-card__face,.goal-card__sets a,.workspace-tabs__button,.language-token,.brand-loader{-webkit-user-select:none;user-select:none}button:focus:not(:focus-visible){outline:none}@media(prefers-reduced-motion:reduce){.brand-loader,.page-loader *,.inline-loader *,.page-scene{transition:none!important;animation:none!important}}.button.is-busy{cursor:progress}.button.is-busy:after{border:1px solid var(--vc-ink);background:var(--vc-coral);width:7px;height:7px;box-shadow:11px 0 0 var(--vc-yellow),22px 0 0 var(--vc-green);content:"";border-radius:3px 2px;margin:0 25px 0 2px;animation:.66s cubic-bezier(.2,.82,.2,1) infinite alternate inline-loader-hop}@media(prefers-reduced-motion:reduce){.button.is-busy:after{animation:none}}.new-goal__loading{grid-column:1/-1;place-items:center;min-height:128px;display:grid}.finder{gap:10px;margin:0 0 26px;display:grid}.finder__field{border:1px solid var(--vc-line-2);background:#fff;border-radius:16px;align-items:center;gap:11px;min-height:54px;padding:0 8px 0 16px;transition:border-color .18s,box-shadow .18s;display:flex}.finder__field:focus-within{border-color:var(--vc-purple);box-shadow:0 0 0 4px var(--vc-purple-soft)}.finder__icon{color:var(--vc-ink-3);flex:none;transition:color .18s}.finder__field:focus-within .finder__icon{color:var(--vc-purple)}.finder__suggestions{border:1px solid var(--vc-line-2);background:#fff;border-radius:13px;gap:2px;padding:6px;display:grid;box-shadow:0 8px 20px #19123314}.finder__suggestion{width:100%;min-width:0;min-height:48px;color:var(--vc-ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:9px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:11px;padding:8px 10px;transition:background-color .16s,color .16s;display:grid}.finder__suggestion:hover,.finder__suggestion:focus-visible{background:var(--vc-purple-soft);color:var(--vc-purple-dark);outline:0}.finder__suggestion-kind{min-width:54px;color:var(--vc-ink-3);font-family:var(--vc-mono);letter-spacing:.08em;text-transform:uppercase;font-size:.58rem;font-weight:800;line-height:1}.finder__suggestion-copy{flex-direction:column;gap:3px;min-width:0;display:flex}.finder__suggestion-copy strong{color:inherit;text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;font-weight:800;line-height:1.2;overflow:hidden}.finder__suggestion-copy small{color:var(--vc-ink-3);text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;line-height:1.2;overflow:hidden}.finder__field input{min-width:0;height:52px;color:var(--vc-ink);background:0 0;border:0;outline:0;flex:1;font-family:inherit;font-size:1rem}.finder__field input::placeholder{color:#968dac}.finder__key{border:1px solid var(--vc-line-2);color:var(--vc-ink-3);font-family:var(--vc-mono);border-radius:7px;flex:none;padding:3px 8px;font-size:.7rem;line-height:1.2}.finder__field:focus-within .finder__key{opacity:0}.finder__clear{width:30px;height:30px;color:var(--vc-ink-3);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;place-items:center;padding:0;transition:background-color .16s,color .16s,transform .16s;display:grid}.finder__clear:hover{background:var(--vc-coral-soft);color:var(--vc-coral-dark);transform:rotate(90deg)}.finder__count{border-left:1px solid var(--vc-line);height:30px;color:var(--vc-ink-3);font-family:var(--vc-mono);white-space:nowrap;flex:none;align-items:baseline;gap:5px;padding:0 12px 0 13px;font-size:.72rem;line-height:30px;display:flex}.finder__count strong{color:var(--vc-ink);font-size:.95rem;font-weight:800;transition:color .18s}.finder__count em{font-style:normal}.finder.has-query .finder__count strong{color:var(--vc-purple-dark)}.finder.has-no-results .finder__count strong{color:var(--vc-coral-dark)}.finder__langs{flex-wrap:wrap;gap:6px;display:flex}.finder__langs button{border:1px solid var(--vc-line-2);min-height:34px;color:var(--vc-ink-2);cursor:pointer;background:#fff;border-radius:999px;align-items:center;gap:7px;padding:0 13px 0 9px;font-family:inherit;font-size:.81rem;font-weight:700;transition:border-color .16s,background-color .16s,color .16s,transform .16s cubic-bezier(.2,.9,.3,1.3);display:inline-flex}.finder__langs button:first-child{padding-left:14px}.finder__langs button:hover{border-color:var(--vc-purple);transform:translateY(-1px)}.finder__langs button i{background:var(--vc-purple-soft);width:22px;height:22px;color:var(--vc-purple-dark);font-family:var(--vc-mono);letter-spacing:.04em;border-radius:7px;place-items:center;font-size:.58rem;font-style:normal;font-weight:700;transition:background-color .16s,color .16s;display:grid}.finder__langs button.is-on{border-color:var(--vc-purple);background:var(--vc-purple);color:#fff}.finder__langs button.is-on i{color:#fff;background:#ffffff38}@media(max-width:620px){.finder__field{min-height:48px;padding-left:13px}.finder__field input{height:46px;font-size:.94rem}.finder__key{display:none}.finder__count{padding:0 8px 0 10px}}.flag{border-radius:7px;flex:none;display:block;position:relative;overflow:hidden;transform:translateZ(0);box-shadow:0 0 0 2px #fff,0 0 0 3px #1912331a,0 4px 10px -4px #19123380}.flag:after{pointer-events:none;content:"";background:linear-gradient(160deg,#ffffff52 0,#ffffff52 34%,#fff0 62%);position:absolute;top:0;right:0;bottom:0;left:0}.flag svg{display:block}.class-card .flag{transition:transform .28s cubic-bezier(.2,.8,.2,1),box-shadow .28s cubic-bezier(.2,.8,.2,1)}.class-card:is(:hover,:focus-within) .flag{transform:translate(-3px,-2px)rotate(-4deg)scale(1.06);box-shadow:0 0 0 2px #fff,0 0 0 3px #5647e347,0 10px 18px -8px #1912338c}.language-token{background:0 0;border-radius:0;place-items:center;width:auto;height:auto;padding:0;display:grid}.language-token .flag{border-radius:10px}.finder__langs .flag{border-radius:4px;box-shadow:0 0 0 1.5px #ffffffe6,0 0 0 2.5px #1912331f}.finder__langs button.is-on .flag{box-shadow:0 0 0 1.5px #fffffff2,0 0 0 2.5px #ffffff59}@media(prefers-reduced-motion:reduce){.class-card .flag{transition:none}.class-card:is(:hover,:focus-within) .flag{transform:none}}body.is-legacy-react-route{overflow:hidden}.legacy-react-route{z-index:0;background:#fff7ef;position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden}.legacy-react-route__frame{opacity:0;background:#fff7ef;border:0;width:100%;height:100%;transition:opacity .18s cubic-bezier(.2,.8,.2,1),transform .22s cubic-bezier(.2,.8,.2,1);display:block;transform:translateY(4px)scale(.998)}.legacy-react-route.is-loaded .legacy-react-route__frame{opacity:1;transform:none}.legacy-react-route__loading{z-index:1;opacity:1;visibility:visible;pointer-events:auto;background:#fff7ef;align-content:center;place-items:center;gap:16px;transition:opacity .12s,visibility linear;display:grid;position:absolute;top:0;right:0;bottom:0;left:0}.legacy-react-route.is-loaded .legacy-react-route__loading{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .12s,visibility 0s linear .12s}@media(prefers-reduced-motion:reduce){.legacy-react-route__frame,.legacy-react-route__loading{transition:none}.legacy-react-route__frame{transform:none}}html{scrollbar-gutter:stable;max-width:100%;scroll-padding-top:84px;overflow:clip scroll}body{min-width:0;max-width:100%}body:not(.is-legacy-react-route){padding-right:env(safe-area-inset-right);padding-left:env(safe-area-inset-left)}:where(img,picture,video,canvas,svg){max-width:100%}.app-frame{min-height:100dvh}.app-header{padding-top:env(safe-area-inset-top)}.app-main{padding-bottom:max(76px,calc(48px + env(safe-area-inset-bottom)))}.legacy-react-route,.legacy-react-route__frame,.legacy-react-route__loading{width:100%;height:100%}@media(max-width:720px){button,.button,[role=button]{min-width:44px;min-height:44px!important}.brand,.primary-nav__link,.nav-stat,.button,.icon-button,.class-card__title,.class-card__open,.back-link,.goal-add,.goal-card__edit,.goal-card__print,.panel-link,.finder__langs button{min-height:44px}.brand{align-items:center}.primary-nav{overscroll-behavior-inline:contain;scrollbar-width:none;margin-left:-12px;margin-right:-12px;padding-left:12px;padding-right:12px}.primary-nav::-webkit-scrollbar{display:none}.primary-nav__link{padding-left:12px;padding-right:12px}.button{min-height:44px!important}.icon-button{width:44px;height:44px}.class-card__title{white-space:normal;align-items:center;display:flex}.goal-add,.goal-card__edit,.panel-link{align-items:center;padding-top:0;padding-bottom:0}.finder__langs button{padding-left:10px;padding-right:14px}.dialog-backdrop{padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));align-items:center}.create-dialog{max-height:calc(100dvh - max(24px,env(safe-area-inset-top) + env(safe-area-inset-bottom)));overscroll-behavior:contain;overflow-y:auto}}@media(max-width:380px){.app-header__inner,.app-main{width:min(100% - 20px,1400px)}.brand{width:132px}.page-heading h1{font-size:clamp(2rem,13vw,2.5rem)}}.goal-card-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,238px),1fr));align-items:stretch}.goal-card{border:1px solid var(--vc-line-2);background:#fff;border-radius:13px;min-width:0;min-height:142px;padding:14px;animation-duration:.35s}.goal-card__copy{align-content:start}.goal-card__title{white-space:normal}.goal-card__sets{min-width:0}.goal-card__sets a{overflow-wrap:anywhere;max-width:100%}.goal-lanes{align-items:start}.week-nav__day.is-switching{border-color:var(--vc-ink);background:var(--vc-yellow)}.week-results__scene{background:0 0;place-items:center;display:grid}.week-results__sweep{background:var(--vc-yellow);transform-origin:0;width:100%;height:100%;transform:scaleX(0)}.week-results.is-scene-switching .week-results__sweep{animation:.36s cubic-bezier(.2,0,0,1) both week-sweep}.week-results.is-scene-switching .week-results__board{animation:.36s cubic-bezier(.2,0,0,1) both week-board-settle}@keyframes week-sweep{0%{opacity:0;transform:scaleX(0)}28%{opacity:1;transform:scaleX(1)}to{opacity:0;transform:scaleX(1)}}@keyframes week-board-settle{0%{opacity:.4;transform:translateY(6px)}to{opacity:1;transform:none}}@media(max-width:720px){.goal-card-grid{grid-template-columns:minmax(0,1fr)}.goal-card{min-height:0}}@media(prefers-reduced-motion:reduce){.week-results.is-scene-switching .week-results__sweep,.week-results.is-scene-switching .week-results__board{animation:none}}.class-card--student{height:232px;min-height:0;padding:19px 21px 17px}.class-card--student .class-card__header{gap:12px}.class-card--student .class-card__title{font-size:1.3rem}.class-card--student .class-card__teacher{gap:10px;margin-top:15px}.class-card--student .class-card__teacher-face{width:34px;height:34px}.class-card--student .class-card__teacher-copy strong{font-size:.84rem}.class-card__goal-summary{z-index:1;border-top:1px solid var(--vc-line);grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:10px;margin-top:12px;padding-top:10px;display:grid;position:relative}.goal-blob{border:2px solid var(--vc-ink);width:56px;height:51px;color:var(--vc-ink);background:#ffdb62;border-radius:54% 46% 42% 58%/58% 45% 55% 42%;align-content:center;place-items:center;animation:5.8s ease-in-out infinite goal-blob-breathe;display:grid;transform:rotate(-4deg);box-shadow:3px 4px #1912331f}.goal-blob span{font-family:var(--vc-display);font-size:1.42rem;font-weight:800;line-height:.9}.goal-blob small{font-family:var(--vc-mono);letter-spacing:.08em;text-transform:uppercase;margin-top:4px;font-size:.43rem;font-weight:800;line-height:1}@keyframes goal-blob-breathe{0%,to{border-radius:54% 46% 42% 58%/58% 45% 55% 42%;transform:rotate(-4deg)translateY(0)}35%{border-radius:42% 58% 55% 45%/47% 53% 44% 56%;transform:rotate(2deg)translateY(-2px)}70%{border-radius:59% 41% 48% 52%/53% 43% 57% 47%;transform:rotate(-1deg)translateY(1px)}}.class-card__goal-copy{gap:3px;min-width:0;display:grid}.class-card__goal-label{color:var(--vc-coral-dark);font-family:var(--vc-mono);letter-spacing:.1em;text-transform:uppercase;font-size:.55rem;font-weight:800}.class-card__goal-copy strong{color:var(--vc-ink);font-family:var(--vc-display);text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;overflow:hidden}.class-card__goal-points{color:var(--vc-coral-dark);grid-template-columns:auto auto;align-items:center;gap:6px;display:grid}.class-card__goal-points>svg{background:var(--vc-coral-soft);border:1px solid #ff624240;border-radius:8px;width:25px;height:25px;padding:5px}.class-card__goal-points>span{justify-items:end;gap:2px;display:grid}.class-card__goal-points small{font-family:var(--vc-mono);letter-spacing:.1em;text-transform:uppercase;font-size:.49rem;font-weight:800;line-height:1}.class-card__goal-points strong{color:var(--vc-ink);font-family:var(--vc-display);font-size:1.08rem;line-height:1}.student-goals-page{max-width:1320px;margin:0 auto}.student-goals-page__heading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:32px;display:flex}.student-goals-page__heading h1{font-size:clamp(2.35rem,5vw,4rem)}.student-goals-total{background:var(--vc-purple-soft);color:var(--vc-purple-dark);border:1px solid #5647e333;border-radius:18px 24px 19px 22px;grid-template-columns:auto auto;align-items:center;column-gap:9px;padding:15px 18px;display:grid;box-shadow:4px 5px #2f249714}.student-goals-total svg{color:var(--vc-coral);grid-row:span 2}.student-goals-total strong{font-family:var(--vc-display);font-size:1.6rem;line-height:.9}.student-goals-total span{color:var(--vc-ink-3);font-family:var(--vc-mono);letter-spacing:.07em;text-transform:uppercase;font-size:.58rem;font-weight:800}.student-goals-layout{grid-template-columns:218px minmax(0,1fr);align-items:start;gap:18px;display:grid}.student-goals-sidebar{border:1px solid var(--vc-line-2);min-width:0;box-shadow:var(--vc-shadow-soft);background:#fff;border-radius:20px;padding:14px;position:sticky;top:94px}.student-goals-sidebar__heading{color:var(--vc-ink-3);font-family:var(--vc-mono);letter-spacing:.1em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:10px;padding:3px 5px 12px;font-size:.58rem;font-weight:800;display:flex}.student-goals-sidebar__heading strong{color:var(--vc-ink);font-size:.72rem}.student-goals-sidebar__nav{gap:9px;display:grid}.student-goals-sidebar__item{width:100%;min-height:58px;color:var(--vc-ink-2);text-align:left;background:0 0;border:1px solid #0000;border-radius:13px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;padding:8px;transition:background-color .18s,border-color .18s,color .18s,transform .18s cubic-bezier(.2,.9,.3,1.2);display:grid}.student-goals-sidebar__item:hover{filter:brightness(1.06);transform:translate(3px)}.student-goals-sidebar__item.is-selected{box-shadow:4px 5px 0 var(--class-ink);border-color:#ffffffe0}@supports (color:color-mix(in lab,red,red)){.student-goals-sidebar__item.is-selected{box-shadow:4px 5px color-mix(in srgb,var(--class-ink) 35%,transparent)}}.student-goals-sidebar__item.is-selected{transform:translate(3px)}.student-goals-sidebar__item .flag{border-radius:6px;box-shadow:0 0 0 2px #ffffffc7,0 4px 8px -4px #19123373;width:33px!important;height:22px!important}.student-goals-sidebar__copy{gap:3px;min-width:0;display:grid}.student-goals-sidebar__copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;font-weight:800;overflow:hidden}.student-goals-sidebar__copy small{color:var(--class-nav-text);overflow:hidden}@supports (color:color-mix(in lab,red,red)){.student-goals-sidebar__copy small{color:color-mix(in srgb,var(--class-nav-text) 82%,transparent)}}.student-goals-sidebar__copy small{font-family:var(--vc-mono);letter-spacing:.04em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:.52rem;font-weight:700}.student-goals-sidebar__item>svg{opacity:.42;transition:transform .18s,opacity .18s}.student-goals-sidebar__item:hover>svg,.student-goals-sidebar__item.is-selected>svg{opacity:1;transform:translate(2px)}.student-goals-stage{--class-accent:var(--vc-purple);--class-soft:var(--vc-purple-soft);--class-ink:var(--vc-purple-dark);--class-line:#5647e33d;--class-stage:var(--vc-purple);border:1px solid var(--class-line);background:var(--class-stage);min-width:0;min-height:560px;box-shadow:5px 6px 0 var(--class-ink),0 22px 38px -30px #19123394;border-radius:26px;padding:22px}@supports (color:color-mix(in lab,red,red)){.student-goals-stage{box-shadow:5px 6px color-mix(in srgb,var(--class-ink) 12%,transparent),0 22px 38px -30px #19123394}}.student-goals-stage{animation:.36s ease-out both card-arrive}.student-goals-stage--red,.student-goals-sidebar__item--red{--class-accent:#ef4444;--class-soft:#fff0f0;--class-ink:#a51d2a;--class-line:#ef44444d;--class-stage:#ef4444;--class-nav:#ef4444;--class-nav-text:#fff}.student-goals-stage--orange,.student-goals-sidebar__item--orange{--class-accent:#f97316;--class-soft:#fff2e7;--class-ink:#ad4210;--class-line:#f973164d;--class-stage:#f97316;--class-nav:#f97316;--class-nav-text:#fff}.student-goals-stage--yellow,.student-goals-sidebar__item--yellow{--class-accent:#eab308;--class-soft:#fff8d8;--class-ink:#806000;--class-line:#eab30857;--class-stage:#f2c230;--class-nav:#f2c230;--class-nav-text:#5b4300}.student-goals-stage--green,.student-goals-sidebar__item--green{--class-accent:#16a36f;--class-soft:#e6faf2;--class-ink:#087554;--class-line:#16a36f4d;--class-stage:#16a36f;--class-nav:#16a36f;--class-nav-text:#fff}.student-goals-stage--blue,.student-goals-sidebar__item--blue{--class-accent:#2583e8;--class-soft:#eaf3ff;--class-ink:#1855a5;--class-line:#2583e84d;--class-stage:#2583e8;--class-nav:#2583e8;--class-nav-text:#fff}.student-goals-stage--purple,.student-goals-sidebar__item--purple{--class-accent:#684ee8;--class-soft:#efecff;--class-ink:#302496;--class-line:#684ee84d;--class-stage:#684ee8;--class-nav:#684ee8;--class-nav-text:#fff}.student-goals-sidebar__item--red,.student-goals-sidebar__item--orange,.student-goals-sidebar__item--yellow,.student-goals-sidebar__item--green,.student-goals-sidebar__item--blue,.student-goals-sidebar__item--purple{background:var(--class-nav);color:var(--class-nav-text)}.student-goals-stage__header{border-bottom:1px solid var(--class-line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;padding:2px 4px 20px;display:grid}.student-goals-stage__language{color:#fffc;font-family:var(--vc-mono);letter-spacing:.12em;font-size:.58rem;font-weight:800}.student-goals-stage h2{color:#fff;margin:5px 0 0;font-size:1.55rem}.student-goals-stage__count{color:#fff;font-family:var(--vc-mono);letter-spacing:.08em;text-transform:uppercase;background:#19123326;border:1px solid #ffffff47;border-radius:999px;padding:.42rem .58rem;font-size:.59rem;font-weight:800}.student-goals-stage__header{border-bottom-color:#ffffff57}.student-goals-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding-top:20px;display:grid}.student-goal-card{min-width:0;color:var(--vc-ink);background:#fff;border:1px solid #1912331f;border-radius:20px;grid-template-rows:auto 1fr;text-decoration:none;transition:border-color .18s,box-shadow .22s,transform .22s cubic-bezier(.2,.9,.3,1.2);display:grid;overflow:hidden;transform:translateZ(0);box-shadow:4px 5px #1912331a,0 20px 34px -28px #191233b3}.student-goal-card:hover,.student-goal-card:focus-visible{border-color:var(--class-accent);box-shadow:6px 8px 0 var(--class-ink),0 28px 40px -27px #191233b8}@supports (color:color-mix(in lab,red,red)){.student-goal-card:hover,.student-goal-card:focus-visible{box-shadow:6px 8px color-mix(in srgb,var(--class-ink) 18%,transparent),0 28px 40px -27px #191233b8}}.student-goal-card:hover,.student-goal-card:focus-visible{transform:translateY(-4px)}.student-goal-card__visual{aspect-ratio:16/8.4;display:block;position:relative;overflow:hidden}.student-goal-card__visual>picture,.review-goal-card__visual>picture{width:100%;height:100%;display:block}.student-goal-card__visual img{object-fit:cover;width:100%;height:100%;transition:transform .45s cubic-bezier(.2,.8,.2,1);display:block}.student-goal-card:hover .student-goal-card__visual img,.student-goal-card:focus-visible .student-goal-card__visual img{transform:scale(1.06)}.student-goal-card__shade{background:linear-gradient(#19123308 26%,#191233c7);position:absolute;top:0;right:0;bottom:0;left:0}.student-goal-card__game-name{color:#fff;font-family:var(--vc-display);font-size:1.18rem;font-weight:800;line-height:1;position:absolute;bottom:.95rem;left:1rem;right:1rem}.student-goal-card__kicker{color:#fff;font-family:var(--vc-mono);letter-spacing:.1em;background:#1912333b;border:1px solid #ffffff4d;border-radius:999px;padding:.32rem .45rem;font-size:.49rem;font-weight:800;position:absolute;top:.85rem;right:1rem}.student-goal-card__body{flex-direction:column;align-items:flex-start;min-width:0;padding:15px 17px 16px;display:flex}.student-goal-card__eyebrow{color:var(--vc-coral-dark);font-family:var(--vc-mono);letter-spacing:.1em;text-transform:uppercase;font-size:.53rem;font-weight:800}.student-goal-card__title{width:100%;font-family:var(--vc-display);text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-size:1.03rem;line-height:1.1;display:block;overflow:hidden}.student-goal-card__instruction{color:var(--vc-ink-3);margin-top:7px;font-size:.71rem;line-height:1.42;display:block}.student-goal-card__action{background:var(--vc-ink);color:#fff;border-radius:999px;justify-content:space-between;align-items:center;gap:10px;width:100%;min-height:39px;margin-top:15px;padding:0 5px 0 12px;font-size:.71rem;font-weight:800;transition:background-color .18s,transform .18s cubic-bezier(.2,.9,.3,1.2),box-shadow .18s;display:inline-flex}.student-goal-card:hover .student-goal-card__action,.student-goal-card:focus-visible .student-goal-card__action{background:var(--class-ink);box-shadow:0 4px 0 var(--class-ink)}@supports (color:color-mix(in lab,red,red)){.student-goal-card:hover .student-goal-card__action,.student-goal-card:focus-visible .student-goal-card__action{box-shadow:0 4px color-mix(in srgb,var(--class-ink) 76%,#191233)}}.student-goal-card:hover .student-goal-card__action,.student-goal-card:focus-visible .student-goal-card__action{transform:translateY(-2px)}.student-goal-card__action-icon{background:#ffffff2b;border-radius:50%;place-items:center;width:29px;height:29px;transition:transform .2s cubic-bezier(.175,.885,.32,1.275);display:grid}.student-goal-card:hover .student-goal-card__action-icon,.student-goal-card:focus-visible .student-goal-card__action-icon{transform:translate(3px)rotate(-7deg)}.student-goals-stage__empty{color:#ffffffdb;align-items:center;gap:14px;min-height:240px;padding:20px 5px;display:flex}.student-goals-stage__empty h3{color:#fff;margin:0;font-size:1rem}.student-goals-stage__empty p{color:#ffffffd1;margin:5px 0 0;font-size:.78rem}.student-goals-empty{text-align:left;min-height:210px}.student-goals-empty .button{margin-top:16px}.student-goal-page{max-width:1040px;margin:0 auto}.student-goal-page>.back-link{align-items:center;gap:7px;margin-bottom:24px;display:inline-flex}.student-goal-page__header{border-bottom:1px solid #19123324;justify-content:space-between;align-items:end;gap:24px;padding-bottom:22px;display:flex}.student-goal-page__header h1{max-width:760px;font-family:var(--vc-display);margin:5px 0 7px;font-size:clamp(2.2rem,5vw,4.6rem);line-height:.94}.student-goal-page__header p:last-child{color:var(--vc-ink-3);margin:0}.student-goal-page__header>svg{color:var(--vc-coral);flex:none}.student-goal-page__content{grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);gap:28px;margin-top:28px;display:grid}.student-goal-page__cover{background:var(--vc-ink);border-radius:20px;min-height:280px;position:relative;overflow:hidden}.student-goal-page__cover img{object-fit:cover;width:100%;height:100%;min-height:280px;display:block}.student-goal-page__cover span{color:#fff;font-family:var(--vc-display);font-size:1.25rem;font-weight:800;position:absolute;bottom:16px;left:18px;right:18px}.student-goal-page__details{align-self:center;padding:5px 0}.student-goal-page__details>p{color:var(--vc-ink-3);margin:0;font-size:1rem;line-height:1.55}.student-goal-page__details dl{border-top:1px solid #19123324;gap:0;margin:24px 0;display:grid}.student-goal-page__details dl div{border-bottom:1px solid #1912331a;justify-content:space-between;gap:16px;padding:11px 0;display:flex}.student-goal-page__details dt{color:var(--vc-ink-3);font-family:var(--vc-mono);letter-spacing:.08em;text-transform:uppercase;font-size:.58rem;font-weight:800}.student-goal-page__details dd{color:var(--vc-ink);margin:0;font-weight:800}.student-goal-page__details .button{align-items:center;gap:8px;display:inline-flex}@media(max-width:720px){.student-goal-page__header{align-items:start}.student-goal-page__content{grid-template-columns:1fr;gap:20px}.student-goal-page__cover,.student-goal-page__cover img{min-height:220px}}@media(max-width:980px){.student-goals-layout{grid-template-columns:190px minmax(0,1fr)}.student-goals-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.student-goals-page__heading{flex-direction:column;align-items:flex-start}.student-goals-total{align-self:stretch}.student-goals-layout{grid-template-columns:1fr}.student-goals-sidebar{position:static}.student-goals-sidebar__nav{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.student-goals-stage{min-height:0}}@media(max-width:480px){.class-card--student{height:220px;padding:17px 18px 15px}.class-card__goal-summary{grid-template-columns:51px minmax(0,1fr) auto;gap:9px}.goal-blob{width:51px;height:47px}.goal-blob span{font-size:1.28rem}.student-goals-stage{border-radius:20px;padding:15px}.student-goals-stage__header{grid-template-columns:1fr;gap:9px;padding-bottom:15px}.student-goals-stage__count{justify-self:start}.student-goals-card-grid{gap:12px;padding-top:15px}.student-goal-card__body{padding:13px 14px 14px}}@media(prefers-reduced-motion:reduce){.goal-blob{animation:none}}.review-page{max-width:1320px;margin:0 auto}.review-page__heading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px;display:flex}.review-page__heading h1{font-size:clamp(2.35rem,5vw,4rem)}.review-page__summary{background:var(--vc-purple-soft);color:var(--vc-purple-dark);border:1px solid #5647e333;border-radius:18px 24px 19px 22px;grid-template-columns:auto auto;align-items:center;column-gap:9px;padding:15px 18px;display:grid;box-shadow:4px 5px #2f249714}.review-page__summary svg{color:var(--vc-coral);grid-row:span 2}.review-page__summary strong{font-family:var(--vc-display);font-size:1.6rem;line-height:.9}.review-page__summary span{color:var(--vc-ink-3);font-family:var(--vc-mono);letter-spacing:.07em;text-transform:uppercase;font-size:.58rem;font-weight:800}.review-section-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-bottom:18px;display:grid}.review-section-nav__card{border:1px solid var(--review-section-line);background:var(--review-section-bg);min-height:108px;color:var(--review-section-ink);text-align:left;box-shadow:6px 7px 0 var(--review-section-shadow);border-radius:22px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:18px 20px;transition:transform .2s cubic-bezier(.2,.9,.3,1.2),box-shadow .2s,filter .2s;display:grid;position:relative;overflow:hidden}.review-section-nav__card:after{content:"";pointer-events:none;background:#ffffff21;border-radius:50%;width:110px;height:110px;position:absolute;bottom:-36px;right:9%}.review-section-nav__card:hover,.review-section-nav__card:focus-visible{filter:brightness(1.04);box-shadow:8px 10px 0 var(--review-section-shadow);transform:translateY(-3px)}.review-section-nav__card[aria-pressed=true]{outline:3px solid var(--review-section-ink)}@supports (color:color-mix(in lab,red,red)){.review-section-nav__card[aria-pressed=true]{outline:3px solid color-mix(in srgb,var(--review-section-ink) 27%,transparent)}}.review-section-nav__card[aria-pressed=true]{outline-offset:2px}.review-section-nav__card--yellow{--review-section-bg:#f7cf3a;--review-section-ink:#5a4100;--review-section-line:#e2ad18;--review-section-shadow:#7e58002e}.review-section-nav__card--purple{--review-section-bg:#7053e9;--review-section-ink:#fff;--review-section-line:#4d38b9;--review-section-shadow:#2f24973b}.review-section-nav__icon{z-index:1;border:1px solid var(--review-section-ink);place-items:center;width:51px;height:51px;display:grid;position:relative}@supports (color:color-mix(in lab,red,red)){.review-section-nav__icon{border:1px solid color-mix(in srgb,var(--review-section-ink) 24%,transparent)}}.review-section-nav__icon{background:var(--review-section-ink);border-radius:16px}@supports (color:color-mix(in lab,red,red)){.review-section-nav__icon{background:color-mix(in srgb,var(--review-section-ink) 12%,transparent)}}.review-section-nav__copy{z-index:1;gap:3px;min-width:0;display:grid;position:relative}.review-section-nav__copy small{font-family:var(--vc-mono);letter-spacing:.1em;opacity:.72;text-transform:uppercase;font-size:.55rem;font-weight:850}.review-section-nav__copy strong{font-family:var(--vc-display);font-size:1.48rem;line-height:1}.review-section-nav__copy>span{opacity:.76;text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;font-weight:700;overflow:hidden}.review-section-nav__arrow{z-index:1;transition:transform .2s cubic-bezier(.2,.9,.3,1.2);position:relative}.review-section-nav__card:hover .review-section-nav__arrow,.review-section-nav__card:focus-visible .review-section-nav__arrow{transform:translate(4px)}.review-layout{grid-template-columns:218px minmax(0,1fr);align-items:start;gap:18px;display:grid}.review-sidebar{border:1px solid var(--vc-line-2);min-width:0;box-shadow:var(--vc-shadow-soft);background:#fff;border-radius:20px;padding:14px;position:sticky;top:94px}.review-sidebar__heading{color:var(--vc-ink-3);font-family:var(--vc-mono);letter-spacing:.1em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:10px;padding:3px 5px 12px;font-size:.58rem;font-weight:800;display:flex}.review-sidebar__heading strong{color:var(--vc-ink);font-size:.72rem}.review-sidebar__nav{gap:9px;display:grid}.review-sidebar__item{background:var(--review-nav);width:100%;min-height:60px;color:var(--review-nav-text);text-align:left;border:1px solid #0000;border-radius:13px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;padding:8px;transition:filter .18s,transform .18s cubic-bezier(.2,.9,.3,1.2),box-shadow .18s;display:grid}.review-sidebar__item:hover{filter:brightness(1.06);transform:translate(3px)}.review-sidebar__item.is-selected{box-shadow:4px 5px 0 var(--review-ink);border-color:#ffffffeb}@supports (color:color-mix(in lab,red,red)){.review-sidebar__item.is-selected{box-shadow:4px 5px color-mix(in srgb,var(--review-ink) 35%,transparent)}}.review-sidebar__item.is-selected{transform:translate(3px)}.review-sidebar__item .flag{border-radius:6px;box-shadow:0 0 0 2px #fffc,0 4px 8px -4px #19123373;width:33px!important;height:22px!important}.review-sidebar__item>span:not(.flag){gap:3px;min-width:0;display:grid}.review-sidebar__item strong{text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;font-weight:800;overflow:hidden}.review-sidebar__item small{color:var(--review-nav-text);overflow:hidden}@supports (color:color-mix(in lab,red,red)){.review-sidebar__item small{color:color-mix(in srgb,var(--review-nav-text) 82%,transparent)}}.review-sidebar__item small{font-family:var(--vc-mono);letter-spacing:.04em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:.52rem;font-weight:700}.review-sidebar__item>svg{opacity:.68;transition:transform .18s}.review-sidebar__item:hover>svg,.review-sidebar__item.is-selected>svg{opacity:1;transform:translate(2px)}.review-sidebar__item--red{--review-nav:#ef4444;--review-ink:#a51d2a;--review-nav-text:#fff}.review-sidebar__item--orange{--review-nav:#f97316;--review-ink:#ad4210;--review-nav-text:#fff}.review-sidebar__item--yellow{--review-nav:#f2c230;--review-ink:#806000;--review-nav-text:#5b4300}.review-sidebar__item--green{--review-nav:#16a36f;--review-ink:#087554;--review-nav-text:#fff}.review-sidebar__item--blue{--review-nav:#2583e8;--review-ink:#1855a5;--review-nav-text:#fff}.review-sidebar__item--purple{--review-nav:#684ee8;--review-ink:#302496;--review-nav-text:#fff}.review-board{border:1px solid var(--vc-line-2);min-width:0;box-shadow:var(--vc-shadow-soft);background:#fff;border-radius:26px;overflow:hidden}.review-board__heading{border-bottom:1px solid var(--vc-line-2);background:#fffaf5;justify-content:space-between;align-items:flex-end;gap:18px;padding:22px 23px 19px;display:flex}.review-board__kicker{color:var(--vc-purple-dark);font-family:var(--vc-mono);letter-spacing:.11em;text-transform:uppercase;font-size:.57rem;font-weight:800}.review-board h2{margin:5px 0 0;font-size:1.55rem}.review-board__range{color:var(--vc-ink-3);font-family:var(--vc-mono);white-space:nowrap;align-items:center;gap:6px;font-size:.58rem;font-weight:700;display:inline-flex}.review-controls{grid-template-columns:minmax(200px,1fr) auto;align-items:center;gap:10px;padding:16px 23px 10px;display:grid}.review-search{border:1px solid var(--vc-line-2);min-height:40px;color:var(--vc-ink-3);background:#fff;border-radius:11px;align-items:center;gap:9px;padding:0 12px;transition:border-color .16s,box-shadow .16s;display:flex}.review-search:focus-within{border-color:var(--vc-purple);box-shadow:0 0 0 3px var(--vc-purple-soft)}.review-search input{width:100%;min-width:0;color:var(--vc-ink);background:0 0;border:0;outline:0;font-size:.78rem}.review-periods{border:1px solid var(--vc-line-2);background:#faf9fc;border-radius:11px;align-items:center;gap:3px;padding:3px;display:inline-flex}.review-periods button{min-height:32px;color:var(--vc-ink-2);white-space:nowrap;background:0 0;border:0;border-radius:8px;padding:0 9px;font-size:.65rem;font-weight:800;transition:background-color .16s,color .16s,transform .16s}.review-periods button:hover{color:var(--vc-purple);transform:translateY(-1px)}.review-periods button.is-selected{background:var(--vc-purple);color:#fff;box-shadow:0 3px 0 var(--vc-purple-dark)}.review-custom-range{color:var(--vc-ink-3);font-family:var(--vc-mono);grid-column:1/-1;justify-content:flex-end;align-items:center;gap:8px;font-size:.61rem;display:flex}.review-custom-range label{border:1px solid var(--vc-line-2);background:#fff;border-radius:8px;align-items:center;gap:6px;min-height:34px;padding:0 7px;display:inline-flex}.review-custom-range input{color:var(--vc-ink);font:700 .65rem var(--vc-mono);background:0 0;border:0;outline:0}.review-topics{align-items:center;gap:6px;padding:7px 23px 15px;display:flex;overflow-x:auto}.review-topics__label{color:var(--vc-ink-3);font-family:var(--vc-mono);letter-spacing:.09em;text-transform:uppercase;white-space:nowrap;margin-right:4px;font-size:.55rem;font-weight:800}.review-topics button{border:1px solid var(--vc-line-2);min-height:29px;color:var(--vc-ink-2);white-space:nowrap;background:#fff;border-radius:999px;padding:0 10px;font-size:.66rem;font-weight:750;transition:background-color .16s,border-color .16s,color .16s,transform .16s}.review-topics button:hover{border-color:var(--vc-purple);color:var(--vc-purple);transform:translateY(-1px)}.review-topics button.is-selected{border-color:var(--vc-purple);background:var(--vc-purple-soft);color:var(--vc-purple-dark)}.review-goal-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:0 23px 23px;display:grid}.review-goal-card{min-width:0;color:var(--vc-ink);background:#fff;border:1px solid #1912331f;border-radius:18px;grid-template-rows:auto 1fr;text-decoration:none;transition:border-color .18s,box-shadow .22s,transform .22s cubic-bezier(.2,.9,.3,1.2);display:grid;overflow:hidden;transform:translateZ(0);box-shadow:4px 5px #1912331a,0 20px 34px -28px #191233ad}.review-goal-card:hover,.review-goal-card:focus-visible{border-color:var(--vc-purple);transform:translateY(-4px);box-shadow:6px 8px #2f249729,0 28px 40px -27px #191233b8}.review-goal-card__visual{aspect-ratio:16/8.4;display:block;position:relative;overflow:hidden}.review-goal-card__visual img{object-fit:cover;width:100%;height:100%;transition:transform .45s cubic-bezier(.2,.8,.2,1);display:block}.review-goal-card:hover .review-goal-card__visual img,.review-goal-card:focus-visible .review-goal-card__visual img{transform:scale(1.06)}.review-goal-card__shade{background:linear-gradient(#19123308 25%,#191233c9);position:absolute;top:0;right:0;bottom:0;left:0}.review-goal-card__game{color:#fff;font-family:var(--vc-display);font-size:1.08rem;font-weight:800;line-height:1;position:absolute;bottom:.85rem;left:.9rem;right:.9rem}.review-goal-card__kicker{color:#fff;font-family:var(--vc-mono);letter-spacing:.1em;background:#1912333d;border:1px solid #ffffff4d;border-radius:999px;padding:.28rem .4rem;font-size:.45rem;font-weight:800;position:absolute;top:.75rem;right:.85rem}.review-goal-card__body{flex-direction:column;align-items:flex-start;min-width:0;padding:13px 14px 14px;display:flex}.review-goal-card__eyebrow{color:var(--vc-coral-dark);font-family:var(--vc-mono);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:4px;font-size:.49rem;font-weight:800;display:inline-flex}.review-goal-card__title{width:100%;font-family:var(--vc-display);text-overflow:ellipsis;white-space:nowrap;margin-top:5px;font-size:.95rem;line-height:1.1;display:block;overflow:hidden}.review-goal-card__topics{flex-wrap:wrap;gap:4px;margin-top:7px;display:flex}.review-goal-card__topics span{background:var(--vc-purple-soft);color:var(--vc-purple-dark);border-radius:999px;padding:3px 6px;font-size:.55rem;font-weight:750}.review-goal-card__description{color:var(--vc-ink-3);margin-top:7px;font-size:.66rem;line-height:1.4;display:block}.review-goal-card__stats{width:100%;color:var(--vc-ink-3);font-family:var(--vc-mono);justify-content:space-between;align-items:center;gap:8px;margin-top:10px;font-size:.55rem;font-weight:750;display:flex}.review-goal-card__stats span{align-items:center;gap:4px;display:inline-flex}.review-goal-card__stats svg{color:var(--vc-green)}.review-goal-card__action{background:var(--vc-ink);color:#fff;border-radius:999px;justify-content:space-between;align-items:center;gap:8px;width:100%;min-height:35px;margin-top:11px;padding:0 4px 0 11px;font-size:.67rem;font-weight:800;transition:background-color .18s,transform .18s cubic-bezier(.2,.9,.3,1.2),box-shadow .18s;display:inline-flex}.review-goal-card:hover .review-goal-card__action,.review-goal-card:focus-visible .review-goal-card__action{background:var(--vc-purple);box-shadow:0 4px 0 var(--vc-purple-dark);transform:translateY(-2px)}.review-goal-card__action-icon{background:#ffffff2b;border-radius:50%;place-items:center;width:27px;height:27px;transition:transform .2s cubic-bezier(.175,.885,.32,1.275);display:grid}.review-goal-card:hover .review-goal-card__action-icon,.review-goal-card:focus-visible .review-goal-card__action-icon{transform:translate(3px)rotate(-7deg)}.review-goal-grid--loading{min-height:300px}.review-goal-grid--loading .local-loading-surface{grid-column:1/-1;min-height:300px}.review-progress-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:5px 23px 23px;display:grid}.review-progress-card{border:1px solid var(--review-progress-line);background:var(--review-progress-bg);min-height:280px;color:var(--review-progress-ink);box-shadow:6px 7px 0 var(--review-progress-shadow);border-radius:23px;padding:24px}.review-progress-card--yellow{--review-progress-bg:#f7cf3a;--review-progress-ink:#5a4100;--review-progress-line:#e2ad18;--review-progress-shadow:#7e58002e}.review-progress-card--purple{--review-progress-bg:#7053e9;--review-progress-ink:#fff;--review-progress-line:#4d38b9;--review-progress-shadow:#2f24973b}.review-progress-card__topline{justify-content:space-between;align-items:center;gap:16px;display:flex}.review-progress-card__label{font-family:var(--vc-mono);letter-spacing:.1em;text-transform:uppercase;font-size:.62rem;font-weight:850}.review-progress-card__icon{border:1px solid var(--review-progress-ink);place-items:center;width:43px;height:43px;display:grid}@supports (color:color-mix(in lab,red,red)){.review-progress-card__icon{border:1px solid color-mix(in srgb,var(--review-progress-ink) 25%,transparent)}}.review-progress-card__icon{background:var(--review-progress-ink);border-radius:14px}@supports (color:color-mix(in lab,red,red)){.review-progress-card__icon{background:color-mix(in srgb,var(--review-progress-ink) 12%,transparent)}}.review-progress-card__metric{align-items:baseline;gap:10px;margin-top:42px;display:flex}.review-progress-card__metric strong{font-family:var(--vc-display);letter-spacing:-.03em;font-size:clamp(3rem,5vw,4.7rem);line-height:.86}.review-progress-card__metric span{opacity:.76;max-width:120px;font-size:.75rem;font-weight:800;line-height:1.15}.review-progress-card__bar{background:var(--review-progress-ink);border-radius:999px;height:12px;margin-top:34px;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.review-progress-card__bar{background:color-mix(in srgb,var(--review-progress-ink) 18%,transparent)}}.review-progress-card__bar span{border-radius:inherit;background:var(--review-progress-ink);min-width:9px;height:100%;transition:width .45s cubic-bezier(.2,.9,.3,1.1);display:block}.review-progress-card__footer{font-family:var(--vc-mono);justify-content:space-between;align-items:center;gap:12px;margin-top:15px;font-size:.58rem;font-weight:750;display:flex}.review-progress-card__footer strong{font-size:.61rem}.review-progress-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:0 23px 23px;display:grid}.review-progress-stat{border:1px solid var(--vc-line-2);background:#fffaf5;border-radius:15px;min-width:0;min-height:104px;padding:15px}.review-progress-stat>span{color:var(--vc-ink-3);font-family:var(--vc-mono);letter-spacing:.06em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:.53rem;font-weight:850;display:block;overflow:hidden}.review-progress-stat strong{color:var(--vc-ink);font-family:var(--vc-display);margin-top:16px;font-size:1.75rem;line-height:.9;display:block}.review-progress-stat small{color:var(--vc-ink-3);margin-top:7px;font-size:.59rem;font-weight:750;display:block}.review-progress-stat--points{background:var(--vc-purple-soft);border-color:#5647e33d}.review-progress-stat--points strong{color:var(--vc-purple-dark)}.review-progress-grid--loading{min-height:280px}.review-progress-grid--loading .local-loading-surface{grid-column:1/-1;min-height:280px}.review-inline-error{background:var(--vc-coral-soft);color:var(--vc-coral-dark);border:1px solid #ff624247;border-radius:12px;margin:0 23px 23px;padding:14px;font-size:.76rem;font-weight:750}.review-empty{border:1px dashed var(--vc-line-2);min-height:220px;color:var(--vc-purple);border-radius:16px;align-items:center;gap:14px;margin:0 23px 23px;padding:20px;display:flex}.review-empty h3{color:var(--vc-ink);margin:0;font-size:.98rem}.review-empty p{color:var(--vc-ink-3);margin:5px 0 0;font-size:.75rem}.review-empty--page{background:#fff;margin:0}@media(max-width:1120px){.review-goal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.review-progress-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.review-results{min-height:760px}}@media(max-width:820px){.review-layout{grid-template-columns:1fr}.review-sidebar{position:static}.review-sidebar__nav{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}}@media(max-width:720px){.review-page__heading{flex-direction:column;align-items:flex-start}.review-page__summary{align-self:stretch}.review-section-nav{grid-template-columns:1fr}.review-section-nav__card{min-height:94px}.review-board__heading{flex-direction:column;align-items:flex-start;gap:8px}.review-controls{grid-template-columns:1fr;padding-left:16px;padding-right:16px}.review-periods{justify-content:flex-start;width:100%;overflow-x:auto}.review-periods button{flex:none;padding:0 9px}.review-custom-range{flex-wrap:wrap;justify-content:flex-start}.review-topics{padding-left:16px;padding-right:16px}.review-goal-grid,.review-progress-grid{grid-template-columns:1fr;padding-left:16px;padding-right:16px}.review-progress-stats{grid-template-columns:repeat(2,minmax(0,1fr));padding-left:16px;padding-right:16px}.review-results{min-height:1120px}.review-inline-error,.review-empty{margin-left:16px;margin-right:16px}}.student-goal-card,.review-goal-card{border:2px solid var(--vc-ink);box-shadow:6px 6px 0 var(--vc-ink);background:#fff8ec;border-radius:22px 17px 24px 18px;animation:.42s cubic-bezier(.175,.885,.32,1.18) both pop-game-card-arrive}.student-goal-card:hover,.student-goal-card:focus-visible,.review-goal-card:hover,.review-goal-card:focus-visible{border-color:var(--vc-ink);box-shadow:9px 9px 0 var(--vc-yellow);transform:translateY(-5px)rotate(-.35deg)}.student-goal-card__visual,.review-goal-card__visual{aspect-ratio:2;border-bottom:2px solid var(--vc-ink);background:var(--vc-blue)}.student-goal-card__visual img,.review-goal-card__visual img{object-position:center}.student-goal-card__shade,.review-goal-card__shade{display:none}.student-goal-card__kicker,.review-goal-card__kicker{border:2px solid var(--vc-ink);background:var(--vc-yellow);box-shadow:2px 2px 0 var(--vc-ink);color:var(--vc-ink);border-radius:999px;padding:.3rem .48rem;inset:.72rem .72rem auto auto}.student-goal-card__game-name,.review-goal-card__game{border:2px solid var(--vc-ink);width:auto;max-width:calc(100% - 1.44rem);box-shadow:3px 3px 0 var(--vc-pink);color:var(--vc-ink);background:#fff8ec;border-radius:11px 14px 10px 13px;padding:.42rem .62rem;font-size:1rem;bottom:.72rem;left:.72rem;right:auto}.student-goal-card__body,.review-goal-card__body{background:#fff8ec}.student-goal-card__eyebrow,.review-goal-card__eyebrow{color:var(--vc-coral-dark)}.student-goal-card__action,.review-goal-card__action{border:2px solid var(--vc-ink);background:var(--vc-yellow);box-shadow:3px 3px 0 var(--vc-ink);color:var(--vc-ink)}.student-goal-card:hover .student-goal-card__action,.student-goal-card:focus-visible .student-goal-card__action,.review-goal-card:hover .review-goal-card__action,.review-goal-card:focus-visible .review-goal-card__action{background:var(--vc-pink);box-shadow:4px 4px 0 var(--vc-ink)}.student-goal-card__action-icon,.review-goal-card__action-icon{border:1px solid var(--vc-ink);background:#fff8ec}.review-goal-card__topics span{border:1px solid var(--vc-ink);background:var(--vc-pink);color:var(--vc-ink)}.student-goal-page__cover{border:3px solid var(--vc-ink);background:var(--vc-blue);box-shadow:9px 9px 0 var(--vc-pink);border-radius:26px 20px 28px 21px;overflow:hidden}.student-goal-page__cover img{aspect-ratio:2;object-fit:cover}.student-goal-page__cover span{border:2px solid var(--vc-ink);width:auto;box-shadow:4px 4px 0 var(--vc-yellow);color:var(--vc-ink);background:#fff8ec;border-radius:12px 15px 11px 14px;padding:8px 12px;bottom:16px;left:16px;right:auto}@keyframes pop-game-card-arrive{0%{opacity:0;transform:translateY(18px)rotate(.6deg)scale(.985)}to{opacity:1;transform:none}}@media(max-width:720px){.student-goal-card,.review-goal-card{box-shadow:5px 5px 0 var(--vc-ink);border-radius:18px 14px 20px 15px}.student-goal-page__cover{box-shadow:6px 6px 0 var(--vc-pink)}}@media(prefers-reduced-motion:reduce){.student-goal-card,.review-goal-card{animation:none}.student-goal-card:hover,.student-goal-card:focus-visible,.review-goal-card:hover,.review-goal-card:focus-visible{transform:none}}.class-calendar-page{width:min(100%,1240px);margin:0 auto;padding-bottom:24px}.class-calendar__back{margin-bottom:22px}.class-calendar__hero{justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:26px;display:flex}.class-calendar__identity{align-items:center;gap:16px;min-width:0;display:flex}.class-calendar__flag{border:2px solid var(--vc-ink);background:var(--vc-yellow);width:62px;height:62px;box-shadow:4px 4px 0 var(--vc-ink);border-radius:16px 12px 17px 13px;flex:none;place-items:center;display:grid}.class-calendar__flag .flag{box-shadow:0 0 0 2px #fff,0 0 0 3px var(--vc-ink)}.class-calendar__identity h1{font-size:clamp(2rem,4vw,3.4rem)}.class-calendar__identity p:not(.eyebrow){color:var(--vc-ink-3);margin:8px 0 0;font-size:.9rem}.class-calendar__summary{border:2px solid var(--vc-ink);background:var(--vc-surface);box-shadow:4px 4px 0 var(--vc-ink);flex:none;align-items:stretch;display:flex}.class-calendar__summary span{grid-template-columns:auto auto;align-content:center;column-gap:7px;min-width:126px;padding:11px 14px;display:grid}.class-calendar__summary span+span{border-left:2px solid var(--vc-ink)}.class-calendar__summary svg{color:var(--vc-coral);grid-row:span 2;align-self:center}.class-calendar__summary strong{font-family:var(--vc-display);font-size:1.2rem;line-height:1}.class-calendar__summary small{color:var(--vc-ink-3);font-family:var(--vc-mono);letter-spacing:.06em;text-transform:uppercase;font-size:.56rem;font-weight:700}.class-calendar__surface{border:2px solid var(--vc-ink);background:var(--vc-surface);box-shadow:7px 7px 0 var(--vc-ink);border-radius:20px 16px 23px 18px;animation:.42s ease-out both panel-arrive;overflow:hidden}.class-calendar__surface-head{border-bottom:2px solid var(--vc-ink);justify-content:space-between;align-items:flex-end;gap:24px;padding:25px 28px 22px;display:flex}.class-calendar__surface-head h2{font-size:clamp(1.4rem,2.4vw,1.9rem)}.class-calendar__surface-head p:not(.eyebrow){max-width:46ch;color:var(--vc-ink-3);margin:8px 0 0;font-size:.84rem;line-height:1.5}.class-calendar__view-switch{border:2px solid var(--vc-ink);background:var(--vc-cream);flex:none;gap:4px;padding:4px;display:flex}.class-calendar__view-switch button{min-height:36px;color:var(--vc-ink-2);background:0 0;border:0;padding:0 12px;font-size:.7rem;font-weight:800}.class-calendar__view-switch button:hover{background:var(--vc-pink);color:var(--vc-ink)}.class-calendar__view-switch button.is-active{background:var(--vc-ink);color:#fff}.class-calendar__toolbar{justify-content:center;padding:20px 28px 8px;display:flex}.class-calendar__period-nav{align-items:center;gap:15px;display:flex}.class-calendar__arrow{border:2px solid var(--vc-ink);background:var(--vc-yellow);width:38px;height:38px;color:var(--vc-ink);border-radius:50%;place-items:center;transition:transform .16s,background-color .16s;display:grid}.class-calendar__arrow:hover{background:var(--vc-pink);transform:translateY(-2px)}.class-calendar__period{text-align:center;justify-items:center;gap:3px;min-width:220px;display:grid}.class-calendar__period h3{margin:0;font-size:1.35rem}.class-calendar__period button{color:var(--vc-purple-dark);font-family:var(--vc-mono);letter-spacing:.08em;text-transform:uppercase;text-underline-offset:3px;background:0 0;border:0;padding:2px 5px;font-size:.62rem;font-weight:800;text-decoration:underline}.class-calendar__months{scroll-behavior:smooth;scrollbar-width:none;gap:5px;margin:11px 28px 0;padding:4px 0 13px;display:flex;overflow-x:auto}.class-calendar__months::-webkit-scrollbar{display:none}.class-calendar__months button{min-width:64px;color:var(--vc-ink-2);background:0 0;border:2px solid #0000;border-radius:10px 8px 11px 9px;flex-direction:column;flex:none;align-items:center;gap:1px;padding:7px 10px;display:flex}.class-calendar__months button:hover{border-color:var(--vc-ink);background:var(--vc-pink)}.class-calendar__months button.is-current{border-color:var(--vc-ink);background:var(--vc-blue);color:#fff;box-shadow:3px 3px 0 var(--vc-ink)}.class-calendar__months strong{font-family:var(--vc-display);font-size:.84rem;line-height:1.1}.class-calendar__months small{color:var(--vc-ink-3);font-family:var(--vc-mono);font-size:.54rem;font-weight:700}.class-calendar__months button.is-current small{color:#fffc}.class-calendar__legend{color:var(--vc-ink-3);font-family:var(--vc-mono);letter-spacing:.04em;text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:17px;padding:10px 28px 15px;font-size:.58rem;font-weight:700;display:flex}.class-calendar__legend span{align-items:center;gap:6px;display:inline-flex}.class-calendar__legend i,.class-calendar__goal i{border:2px solid var(--vc-ink);background:var(--vc-blue);border-radius:50%;flex:none;width:8px;height:8px;display:inline-block}.class-calendar__legend i.is-vocab,.class-calendar__goal--vocab i{background:var(--vc-coral)}.class-calendar__scroll-wrap{border-top:2px solid var(--vc-ink);outline:none;overflow-x:auto}.class-calendar__scroll-wrap:focus-visible{outline:3px solid var(--vc-pink);outline-offset:-3px}.class-calendar__month-grid{min-width:720px}.class-calendar__weekdays{border-bottom:2px solid var(--vc-ink);background:var(--vc-cream);grid-template-columns:repeat(7,minmax(0,1fr));display:grid}.class-calendar__weekdays span{color:var(--vc-ink-3);font-family:var(--vc-mono);letter-spacing:.08em;text-transform:uppercase;padding:9px 12px;font-size:.58rem;font-weight:800}.class-calendar__month{grid-template-columns:repeat(7,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.class-calendar__month-day{border-right:1px solid var(--vc-line-2);border-bottom:1px solid var(--vc-line-2);background:var(--vc-surface);min-height:128px;padding:10px}.class-calendar__month-day:nth-child(7n){border-right:0}.class-calendar__month-day.is-outside{color:var(--vc-ink-3);background:#fffaf3}.class-calendar__month-day.is-selected{background:var(--vc-purple-soft)}.class-calendar__month-day.is-today{box-shadow:inset 0 4px 0 var(--vc-yellow)}.class-calendar__month-day header{justify-content:space-between;align-items:flex-start;gap:6px;min-height:27px;display:flex}.class-calendar__date-link{color:var(--vc-ink);align-items:baseline;gap:6px;text-decoration:none;display:inline-flex}.class-calendar__date-link:hover .class-calendar__day-number{color:var(--vc-purple-dark);text-underline-offset:3px;text-decoration:underline}.class-calendar__day-number{font-family:var(--vc-display);font-size:1.1rem;font-weight:800;line-height:1}.class-calendar__mobile-dow{color:var(--vc-ink-3);font-family:var(--vc-mono);text-transform:uppercase;font-size:.55rem;font-weight:700;display:none}.class-calendar__today{background:var(--vc-yellow);color:var(--vc-ink);font-family:var(--vc-mono);letter-spacing:.04em;text-transform:uppercase;padding:3px 5px;font-size:.5rem;font-weight:800}.class-calendar__goals{gap:5px;margin-top:8px;display:grid}.class-calendar__goal{border:1px solid var(--vc-ink);background:var(--vc-purple-soft);min-width:0;color:var(--vc-ink);border-radius:7px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:5px;padding:6px 7px;font-size:.67rem;font-weight:750;text-decoration:none;transition:transform .16s,background-color .16s;display:grid}.class-calendar__goal:hover{background:var(--vc-yellow);transform:translate(2px)}.class-calendar__goal span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.class-calendar__goal small{color:var(--vc-ink-3);font-family:var(--vc-mono);white-space:nowrap;font-size:.5rem}.class-calendar__goal--vocab{background:var(--vc-coral-soft)}.class-calendar__goal.is-compact{grid-template-columns:auto minmax(0,1fr);padding:5px 6px}.class-calendar__rest{color:var(--vc-ink-3);font-size:.68rem}.class-calendar__week{grid-template-columns:repeat(7,minmax(155px,1fr));min-width:1100px;margin:0;padding:0;list-style:none;display:grid}.class-calendar__week-day{border-right:1px solid var(--vc-line-2);background:var(--vc-surface);min-height:300px;padding:13px}.class-calendar__week-day:last-child{border-right:0}.class-calendar__week-day.is-today{background:var(--vc-purple-soft);box-shadow:inset 0 4px 0 var(--vc-yellow)}.class-calendar__week-day header{border-bottom:2px solid var(--vc-ink);justify-content:space-between;align-items:flex-start;gap:8px;padding-bottom:12px;display:flex}.class-calendar__week-day header a{color:var(--vc-ink);gap:2px;text-decoration:none;display:grid}.class-calendar__week-day header a:hover strong{color:var(--vc-purple-dark)}.class-calendar__week-day header span{font-family:var(--vc-mono);letter-spacing:.06em;text-transform:uppercase;font-size:.57rem;font-weight:800}.class-calendar__week-day header strong{font-family:var(--vc-display);font-size:1.5rem;line-height:1}.class-calendar__week-day header small{color:var(--vc-ink-3);font-family:var(--vc-mono);text-transform:uppercase;font-size:.56rem;font-weight:700}.class-calendar__week-day header>span{color:var(--vc-ink-3);text-align:right;font-size:.56rem}.class-calendar__week-day ul{gap:8px;margin:13px 0 0;padding:0;list-style:none;display:grid}.class-calendar__week-day .class-calendar__goal{grid-template-columns:auto minmax(0,1fr);align-content:center;min-height:68px;padding:9px}.class-calendar__week-day .class-calendar__goal small{display:none}.class-calendar__week-day .class-calendar__goal span{white-space:normal}.class-calendar__week-rest{color:var(--vc-ink-3);font-size:.75rem}.class-calendar__day-view{background:var(--vc-cream);padding:28px}.class-calendar__day-hero{border-bottom:2px solid var(--vc-ink);align-items:center;gap:15px;padding-bottom:20px;display:flex}.class-calendar__day-date{border:2px solid var(--vc-ink);background:var(--vc-yellow);width:70px;height:70px;box-shadow:4px 4px 0 var(--vc-ink);border-radius:15px 11px 16px 12px;align-content:center;place-items:center;display:grid}.class-calendar__day-date strong{font-family:var(--vc-display);font-size:1.8rem;line-height:.9}.class-calendar__day-date small{font-family:var(--vc-mono);text-transform:uppercase;font-size:.6rem;font-weight:800}.class-calendar__day-hero p{color:var(--vc-ink-3);font-family:var(--vc-mono);letter-spacing:.08em;text-transform:uppercase;margin:0 0 4px;font-size:.63rem;font-weight:800}.class-calendar__day-hero h3{margin:0;font-size:1.45rem}.class-calendar__day-goals{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:18px 0 0;padding:0;list-style:none;display:grid}.class-calendar__day-goals .class-calendar__goal{min-height:58px;padding:12px;font-size:.88rem}.class-calendar__day-goals .class-calendar__goal small{font-size:.55rem}.class-calendar__day-empty{border:2px dashed var(--vc-ink);background:var(--vc-surface);min-height:112px;color:var(--vc-green);align-items:center;gap:12px;margin-top:18px;padding:20px;display:flex}.class-calendar__day-empty strong{color:var(--vc-ink);font-family:var(--vc-display);font-size:1.05rem}.class-calendar__day-empty p{color:var(--vc-ink-3);margin:4px 0 0;font-size:.8rem}@media(max-width:760px){.class-calendar-page{padding-bottom:10px}.class-calendar__hero{flex-direction:column;align-items:flex-start;gap:17px}.class-calendar__summary{width:100%}.class-calendar__summary span{flex:1;min-width:0}.class-calendar__surface-head{flex-direction:column;align-items:flex-start;padding:21px 18px 18px}.class-calendar__view-switch{width:100%}.class-calendar__view-switch button{flex:1}.class-calendar__toolbar{padding:17px 18px 7px}.class-calendar__months{margin-inline:18px}.class-calendar__legend{padding-inline:18px}.class-calendar__day-goals{grid-template-columns:minmax(0,1fr)}}@media(max-width:520px){.class-calendar__identity{align-items:flex-start}.class-calendar__flag{border-radius:13px 10px 14px 11px;width:52px;height:52px}.class-calendar__flag .flag{width:30px!important;height:auto!important}.class-calendar__summary span{padding:10px 11px}.class-calendar__summary small{font-size:.5rem}.class-calendar__period{min-width:0}.class-calendar__period h3{font-size:1.06rem}.class-calendar__day-view{padding:20px 16px}}@media(prefers-reduced-motion:reduce){.class-calendar__surface,.class-calendar__goal,.class-calendar__arrow{transition:none;animation:none}.class-calendar__months{scroll-behavior:auto}}.app-main:has(.avatar-studio-page){background:var(--vc-cream);width:100%;max-width:none;padding:clamp(24px,4vw,54px) clamp(12px,3vw,42px) 90px}.avatar-studio-page{width:min(100%,1420px);margin:0 auto}.avatar-studio-heading{justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:clamp(26px,4vw,48px);display:flex}.avatar-studio-heading>div{min-width:0}.avatar-studio-heading h1{max-width:10ch;font-size:clamp(3rem,7vw,6.8rem);line-height:.82}.avatar-studio-heading>div>p:last-child{max-width:650px;color:var(--vc-ink-3);margin:19px 0 0;font-size:clamp(.92rem,1.4vw,1.05rem);line-height:1.62}.avatar-studio-heading__edition{border:2px solid var(--vc-ink);background:var(--vc-yellow);min-height:42px;box-shadow:4px 4px 0 var(--vc-ink);font-family:var(--vc-mono);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;flex:none;align-items:center;gap:8px;padding:0 14px;font-size:.68rem;font-weight:800;display:inline-flex;transform:rotate(1.5deg)}.avatar-studio-shell{grid-template-columns:minmax(330px,.86fr) minmax(540px,1.55fr);align-items:start;gap:clamp(28px,5vw,74px);display:grid}.avatar-preview-panel{border:2px solid var(--vc-ink);background:var(--vc-blue);min-width:0;box-shadow:10px 10px 0 var(--vc-pink);color:var(--vc-cream);border-radius:30px 22px 34px 24px;padding:clamp(18px,2.5vw,30px);position:sticky;top:104px}.avatar-preview-panel__topline{font-family:var(--vc-mono);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:12px;margin-bottom:17px;font-size:.66rem;font-weight:800;display:flex}.avatar-preview-panel__topline span:last-child{border:1.5px solid var(--vc-ink);min-height:28px;box-shadow:2px 2px 0 var(--vc-ink);color:var(--vc-ink);border-radius:999px;align-items:center;padding:0 9px;display:inline-flex}.avatar-preview-panel__topline .is-unsaved{background:var(--vc-yellow)}.avatar-preview-panel__topline .is-saved{background:#fff8ec}.avatar-preview-stage{isolation:isolate;aspect-ratio:1;border:2px solid var(--vc-ink);background:var(--vc-pink);box-shadow:6px 6px 0 var(--vc-ink);border-radius:44% 56% 50% 50%/55% 46% 54% 45%;position:relative;overflow:hidden}.avatar-preview-stage>img{z-index:2;border:2px solid var(--vc-ink);background:var(--vc-blue);object-fit:cover;border-radius:50%;width:88%;height:88%;animation:.36s cubic-bezier(.175,.885,.32,1.2) both avatar-swap-in;display:block;position:absolute;top:6%;right:6%;bottom:6%;left:6%}.avatar-preview-stage__sun{z-index:1;aspect-ratio:1;border:2px solid var(--vc-ink);background:var(--vc-yellow);border-radius:50%;width:24%;animation:8s ease-in-out infinite avatar-orbit;position:absolute;top:2%;right:7%}.avatar-preview-stage__bean{z-index:1;border:2px solid var(--vc-ink);background:var(--vc-green);border-radius:64% 36% 55% 45%;width:34%;height:23%;position:absolute;bottom:-5%;left:-4%;transform:rotate(22deg)}.avatar-preview-stage__scribble{z-index:3;pointer-events:none;width:34%;position:absolute;bottom:3%;right:-1%;overflow:visible}.avatar-preview-stage__scribble path{fill:none;stroke:#fff;stroke-width:5px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:240;animation:4.8s ease-in-out infinite avatar-scribble}.avatar-preview-stage__burst{z-index:4;pointer-events:none;position:absolute;top:50%;right:50%;bottom:50%;left:50%}.avatar-preview-stage__burst i{border:2px solid var(--vc-ink);background:var(--vc-yellow);opacity:0;border-radius:50%;width:14px;height:14px;position:absolute}.avatar-preview-stage.is-celebrating .avatar-preview-stage__burst i{animation:.68s cubic-bezier(.2,.75,.3,1) both avatar-confetti}.avatar-preview-stage.is-celebrating .avatar-preview-stage__burst i:first-child{--burst-x:-132px;--burst-y:-145px;background:var(--vc-yellow)}.avatar-preview-stage.is-celebrating .avatar-preview-stage__burst i:nth-child(2){--burst-x:122px;--burst-y:-118px;background:var(--vc-coral);animation-delay:40ms}.avatar-preview-stage.is-celebrating .avatar-preview-stage__burst i:nth-child(3){--burst-x:145px;--burst-y:78px;background:var(--vc-green);animation-delay:80ms}.avatar-preview-stage.is-celebrating .avatar-preview-stage__burst i:nth-child(4){--burst-x:-138px;--burst-y:96px;background:var(--vc-pink);animation-delay:.11s}.avatar-preview-stage.is-celebrating .avatar-preview-stage__burst i:nth-child(5){--burst-x:18px;--burst-y:-168px;background:#fff;animation-delay:60ms}.avatar-preview-panel__identity{justify-content:space-between;align-items:center;gap:18px;margin-top:24px;display:flex}.avatar-preview-panel__identity>div{display:grid}.avatar-preview-panel__identity span:first-child{font-family:var(--vc-mono);letter-spacing:.12em;text-transform:uppercase;font-size:.58rem;font-weight:800}.avatar-preview-panel__identity strong{color:#fff;font-family:var(--vc-display);margin-top:3px;font-size:clamp(2.1rem,4vw,3.4rem);line-height:.9}.avatar-preview-panel__identity small{color:#fff8ec;margin-top:7px;font-size:.78rem;font-weight:700}.avatar-preview-panel__swatch{border:2px solid var(--vc-ink);width:52px;height:52px;box-shadow:3px 3px 0 var(--vc-ink);border-radius:43% 57% 59% 41%;flex:0 0 52px;transform:rotate(-8deg)}.avatar-preview-panel__swatch.is-yellow{background:var(--vc-yellow)}.avatar-preview-panel__swatch.is-coral{background:var(--vc-coral)}.avatar-preview-panel__swatch.is-pink{background:var(--vc-pink)}.avatar-preview-panel__swatch.is-green{background:var(--vc-green)}.avatar-preview-panel__actions{grid-template-columns:.86fr 1.14fr;gap:9px;margin-top:24px;display:grid}.avatar-preview-panel__actions .button{border-width:2px;border-color:var(--vc-ink);min-height:49px}.avatar-preview-panel__actions .button--quiet{box-shadow:3px 3px 0 var(--vc-ink);color:var(--vc-ink);background:#fff8ec}.avatar-save-button{background:var(--vc-yellow);box-shadow:4px 4px 0 var(--vc-ink);color:var(--vc-ink)}.avatar-save-button:hover:not(:disabled){background:var(--vc-pink);box-shadow:6px 6px 0 var(--vc-ink);color:var(--vc-ink)}.avatar-save-button:disabled{color:#0b0b0dad;opacity:1;background:#fff8ecb8;border-color:#0b0b0d7a}.avatar-preview-panel__status{color:#fff8ec;text-align:center;min-height:1.25rem;margin:16px 0 0;font-size:.72rem;font-weight:700}.avatar-collection{min-width:0;padding-top:4px}.avatar-collection__heading{justify-content:space-between;align-items:flex-end;gap:28px;margin-bottom:22px;display:flex}.avatar-collection__heading h2{font-size:clamp(1.9rem,3.4vw,3.2rem);line-height:.94}.avatar-collection__heading>p{max-width:310px;color:var(--vc-ink-3);margin:0;font-size:.82rem;line-height:1.55}.avatar-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(13px,1.8vw,21px);display:grid}.avatar-choice{min-width:0;color:var(--vc-ink);text-align:left;background:0 0;border:0;padding:0;animation:.43s cubic-bezier(.175,.885,.32,1.16) both avatar-choice-in;display:grid;position:relative;overflow:visible}.avatar-choice--yellow{--avatar-accent:var(--vc-yellow)}.avatar-choice--coral{--avatar-accent:var(--vc-coral)}.avatar-choice--pink{--avatar-accent:var(--vc-pink)}.avatar-choice--green{--avatar-accent:var(--vc-green)}.avatar-choice:nth-child(2){animation-delay:32ms}.avatar-choice:nth-child(3){animation-delay:64ms}.avatar-choice:nth-child(4){animation-delay:96ms}.avatar-choice:nth-child(5){animation-delay:.128s}.avatar-choice:nth-child(6){animation-delay:.16s}.avatar-choice:nth-child(7){animation-delay:.192s}.avatar-choice:nth-child(8){animation-delay:.224s}.avatar-choice:nth-child(9){animation-delay:.256s}.avatar-choice:nth-child(10){animation-delay:.288s}.avatar-choice:nth-child(11){animation-delay:.32s}.avatar-choice:nth-child(12){animation-delay:.352s}.avatar-choice__visual{aspect-ratio:1;border:2px solid var(--vc-ink);background:var(--vc-blue);box-shadow:5px 5px 0 var(--vc-ink);border-radius:24px 18px 26px 20px;transition:transform .21s cubic-bezier(.175,.885,.32,1.22),box-shadow .21s,border-radius .21s;display:block;position:relative;overflow:hidden}.avatar-choice__visual img{object-fit:cover;width:100%;height:100%;transition:transform .31s cubic-bezier(.2,.8,.2,1);display:block}.avatar-choice__check{border:2px solid var(--vc-ink);background:var(--avatar-accent);width:34px;height:34px;box-shadow:2px 2px 0 var(--vc-ink);opacity:0;border-radius:50%;place-items:center;transition:opacity .15s,transform .22s cubic-bezier(.175,.885,.32,1.3);display:grid;position:absolute;top:9px;right:9px;transform:scale(.55)rotate(-18deg)}.avatar-choice__copy{padding:13px 6px 0;display:grid}.avatar-choice__copy strong{font-family:var(--vc-display);font-size:1.05rem;line-height:1}.avatar-choice__copy small{color:var(--vc-ink-3);margin-top:5px;font-size:.68rem;font-weight:700}.avatar-choice:hover .avatar-choice__visual{box-shadow:8px 8px 0 var(--avatar-accent);border-radius:18px 25px 19px 27px;transform:translateY(-5px)rotate(-.7deg)}.avatar-choice:hover .avatar-choice__visual img{transform:scale(1.035)}.avatar-choice:active .avatar-choice__visual{box-shadow:2px 2px 0 var(--vc-ink);transform:translate(3px,3px)scale(.985)}.avatar-choice.is-selected .avatar-choice__visual{box-shadow:8px 8px 0 var(--avatar-accent);border-width:3px;transform:translateY(-4px)rotate(.65deg)}.avatar-choice.is-selected .avatar-choice__check{opacity:1;transform:none}.avatar-choice.is-selected .avatar-choice__copy strong{color:var(--vc-purple-dark)}.avatar-mobile-dock{display:none}@keyframes avatar-choice-in{0%{opacity:0;transform:translateY(18px)rotate(1.4deg)scale(.97)}to{opacity:1;transform:none}}@keyframes avatar-swap-in{0%{opacity:.3;transform:scale(.92)rotate(-2deg)}68%{opacity:1;transform:scale(1.025)rotate(.5deg)}to{opacity:1;transform:none}}@keyframes avatar-scribble{0%,12%{stroke-dashoffset:240px}32%,78%{stroke-dashoffset:0}to{stroke-dashoffset:-240px}}@keyframes avatar-orbit{0%,to{transform:translate(0)rotate(0)}50%{transform:translate(-8px,10px)rotate(9deg)}}@keyframes avatar-confetti{0%{opacity:0;transform:translate(-50%,-50%)scale(.45)rotate(0)}28%{opacity:1}to{opacity:0;transform:translate(calc(-50% + var(--burst-x)),calc(-50% + var(--burst-y))) scale(1.15) rotate(220deg)}}@media(max-width:1100px){.avatar-studio-shell{grid-template-columns:minmax(300px,.8fr) minmax(440px,1.35fr);gap:34px}.avatar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.avatar-preview-panel__actions{grid-template-columns:1fr}}@media(max-width:820px){.app-main:has(.avatar-studio-page){padding-bottom:120px}.avatar-studio-heading{flex-direction:column;align-items:flex-start;gap:21px}.avatar-studio-heading h1{font-size:clamp(3.5rem,16vw,6.2rem)}.avatar-studio-heading__edition{align-self:flex-start}.avatar-studio-shell{grid-template-columns:1fr;gap:46px}.avatar-preview-panel{width:min(100%,620px);margin:0 auto;position:static}.avatar-preview-panel__actions{grid-template-columns:1fr 1.2fr}.avatar-collection__heading{align-items:flex-start}.avatar-mobile-dock{z-index:75;right:12px;bottom:max(12px,env(safe-area-inset-bottom));border:2px solid var(--vc-ink);min-height:72px;box-shadow:6px 6px 0 var(--vc-ink);background:#fff8ec;border-radius:20px 16px 22px 17px;justify-content:space-between;align-items:center;gap:12px;padding:9px 9px 9px 11px;animation:.3s cubic-bezier(.175,.885,.32,1.2) both avatar-dock-in;display:flex;position:fixed;left:12px}.avatar-mobile-dock__identity{align-items:center;gap:9px;min-width:0;display:flex}.avatar-mobile-dock__identity>img{border:2px solid var(--vc-ink);object-fit:cover;border-radius:50%;flex:0 0 48px;width:48px;height:48px}.avatar-mobile-dock__identity>span{min-width:0;display:grid}.avatar-mobile-dock__identity small{color:var(--vc-ink-3);font-family:var(--vc-mono);letter-spacing:.08em;text-transform:uppercase;font-size:.51rem;font-weight:800}.avatar-mobile-dock__identity strong{font-family:var(--vc-display);text-overflow:ellipsis;white-space:nowrap;font-size:1rem;overflow:hidden}.avatar-mobile-dock .button{border:2px solid var(--vc-ink);flex:none;min-height:48px}}@media(max-width:560px){.app-main:has(.avatar-studio-page){padding-left:12px;padding-right:12px}.avatar-studio-heading .back-link{margin-bottom:18px}.avatar-studio-heading h1{font-size:clamp(3.25rem,18vw,5rem)}.avatar-preview-panel{box-shadow:7px 7px 0 var(--vc-pink);border-radius:24px 18px 27px 20px;padding:16px}.avatar-preview-panel__actions{grid-template-columns:1fr}.avatar-preview-panel__actions .button{min-height:50px}.avatar-collection__heading{flex-direction:column;gap:10px}.avatar-collection__heading>p{max-width:100%}.avatar-grid{gap:12px}.avatar-choice__visual{box-shadow:4px 4px 0 var(--vc-ink);border-radius:18px 14px 20px 15px}.avatar-choice__copy{padding:10px 4px 0}.avatar-choice__copy strong{font-size:.98rem}.avatar-choice__copy small{font-size:.61rem}}@media(max-width:380px){.avatar-grid{grid-template-columns:1fr}.avatar-choice{grid-template-columns:116px minmax(0,1fr);align-items:center;gap:12px}.avatar-choice__copy{padding:0}.avatar-mobile-dock__identity>span{display:none}.avatar-mobile-dock .button{flex:1}}@keyframes avatar-dock-in{0%{opacity:0;transform:translateY(22px)scale(.96)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.avatar-choice,.avatar-preview-stage>img,.avatar-preview-stage__sun,.avatar-preview-stage__scribble path,.avatar-preview-stage.is-celebrating .avatar-preview-stage__burst i,.avatar-mobile-dock{animation:none!important}.avatar-choice__visual,.avatar-choice__visual img,.avatar-choice__check{transition:none}.avatar-choice:hover .avatar-choice__visual,.avatar-choice.is-selected .avatar-choice__visual{transform:none}}.app-header__inner{min-height:68px}.app-main{padding-top:30px;padding-bottom:max(44px,calc(24px + env(safe-area-inset-bottom)))}.page-heading{margin-bottom:22px}.page-heading__intro,.workspace-hero p:not(.eyebrow){margin-top:8px;font-size:.9rem;line-height:1.48}.button,.icon-button,.account-control__profile{border-width:2px;border-color:var(--vc-ink)}.button{background:var(--vc-yellow);box-shadow:3px 3px 0 var(--vc-ink);color:var(--vc-ink);border-radius:12px 9px 13px 10px}.button:hover:not(:disabled){background:var(--vc-pink);box-shadow:5px 5px 0 var(--vc-ink);color:var(--vc-ink)}.button:active:not(:disabled){box-shadow:1px 1px 0 var(--vc-ink)}.button--quiet{border-color:var(--vc-ink);box-shadow:2px 2px 0 var(--vc-ink);color:var(--vc-ink);background:#fff}.button--quiet:hover:not(:disabled){border-color:var(--vc-ink);background:var(--vc-purple-soft);box-shadow:3px 3px 0 var(--vc-ink);color:var(--vc-ink)}.module-page--library{border:2px solid var(--vc-ink);box-shadow:7px 7px 0 var(--vc-ink);border-radius:26px 20px 29px 22px;padding:clamp(24px,3vw,38px)}.module-page--library .page-heading{margin-bottom:22px}.module-page--library h1{max-width:12ch;font-size:clamp(2.55rem,5vw,4.6rem);line-height:.9}.module-page--library .page-heading__intro{max-width:50ch}.module-page__doodles{height:82px}.module-page--library .module-list--choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.module-page--library .module-row--choice{box-shadow:5px 5px 0 var(--vc-yellow);border-radius:20px 15px 22px 17px;grid-template-rows:auto auto}.module-page--library .module-row--pink{box-shadow:5px 5px 0 var(--vc-pink)}.module-page--library .module-card__art{aspect-ratio:2}.module-page--library .module-card__body{grid-template-columns:52px minmax(0,1fr) auto;gap:13px;padding:15px}.module-page--library .module-row__icon{width:52px;height:52px;box-shadow:3px 3px 0 var(--vc-ink);border-radius:14px}.module-page--library .module-row__copy strong{font-size:1.2rem}.module-page--library .module-row__copy small{font-size:.74rem;line-height:1.4}.module-page--library .module-row__action{min-height:38px;box-shadow:2px 2px 0 var(--vc-ink);padding:0 12px}.student-goals-page__heading,.review-page__heading{margin-bottom:18px;padding-bottom:16px}.student-goals-page__heading h1,.review-page__heading h1{font-size:clamp(2.3rem,4vw,3.5rem)}.student-goals-layout{grid-template-columns:205px minmax(0,1fr);gap:14px}.student-goals-stage{padding:18px}.student-goals-stage__header{padding-bottom:13px}.student-goals-card-grid,.review-goal-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,245px),1fr));gap:12px}.student-goals-card-grid{padding-top:14px}.review-goal-grid{padding:0 16px 16px}.student-goal-card__body,.review-goal-card__body{padding:11px 12px 12px}.student-goal-card__instruction,.review-goal-card__description{-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:2.6em;display:-webkit-box;overflow:hidden}.student-goal-card__action,.review-goal-card__action{min-height:36px;margin-top:9px}.student-goals-stage__empty{min-height:130px}.student-goal-page>.back-link{margin-bottom:14px}.student-goal-page__header{padding-bottom:15px}.student-goal-page__header h1{font-size:clamp(2rem,4.2vw,3.75rem)}.student-goal-page__content{gap:20px;margin-top:20px}.student-goal-page__cover,.student-goal-page__cover img{min-height:0}.student-goal-page__cover img{aspect-ratio:2}.student-goal-page__details dl{margin:17px 0}.review-section-nav{gap:10px;margin-bottom:13px}.review-section-nav__card{border:2px solid var(--vc-ink);min-height:82px;box-shadow:4px 4px 0 var(--vc-ink);border-radius:18px 14px 20px 15px;padding:12px 14px}.review-section-nav__icon{border:2px solid var(--vc-ink);border-radius:13px;width:42px;height:42px}.review-section-nav__copy strong{font-size:1.12rem}.review-layout{grid-template-columns:205px minmax(0,1fr);gap:14px}.review-sidebar,.review-board{border:2px solid var(--vc-ink);box-shadow:4px 4px 0 var(--vc-ink)}.review-board__heading{padding:14px 16px 12px}.review-controls{padding:12px 16px 8px}.review-topics{padding:5px 16px 12px}.review-results,.review-goal-grid--loading{min-height:0}.review-progress-grid{gap:12px;padding:4px 16px 16px}.review-progress-card{border:2px solid var(--vc-ink);min-height:205px;box-shadow:5px 5px 0 var(--vc-ink);border-radius:19px 15px 21px 16px;padding:18px}.review-progress-card__metric{margin-top:26px}.review-progress-card__metric strong{font-size:clamp(2.55rem,4.5vw,3.8rem)}.review-progress-card__bar{margin-top:24px}.review-progress-stats{padding:0 16px 16px}.review-empty{min-height:130px;margin:0 16px 16px}.workspace-shell{min-height:0}.workspace-panel{min-height:0;padding-top:24px}.workspace-hero{padding-top:14px;padding-bottom:18px}.week-strip{margin-bottom:20px}.avatar-studio-heading{margin-bottom:28px}.avatar-studio-heading .back-link{margin-bottom:16px}.avatar-studio-heading h1{font-size:clamp(2.8rem,5.5vw,4.8rem)}.avatar-studio-shell{grid-template-columns:minmax(285px,.7fr) minmax(620px,1.65fr);gap:clamp(24px,3.5vw,48px)}.avatar-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}@media(max-width:1100px){.avatar-studio-shell{grid-template-columns:minmax(280px,.72fr) minmax(0,1.5fr)}.avatar-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:820px){.student-goals-layout,.review-layout{grid-template-columns:1fr}.student-goals-sidebar,.review-sidebar{position:static}.student-goals-sidebar__nav,.review-sidebar__nav{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.avatar-studio-shell{grid-template-columns:1fr}.avatar-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:720px){.app-header__inner{min-height:0;padding-block:8px}.app-main{width:min(100% - 20px,1400px);padding-top:20px;padding-bottom:max(32px,calc(18px + env(safe-area-inset-bottom)))}.brand{width:132px}.nav-stats{display:none}.page-heading{margin-bottom:17px}.module-page--library{margin-inline:0;padding:20px 14px 18px}.module-page--library .page-heading{grid-template-columns:1fr;margin-bottom:16px}.module-page--library h1{font-size:clamp(2.4rem,13vw,3.6rem)}.module-page__doodles{display:none}.module-page--library .module-list--choices{grid-template-columns:1fr;gap:14px}.module-page--library .module-row--choice{grid-template-rows:auto auto}.module-page--library .module-card__art{aspect-ratio:2;min-height:0}.student-goals-page__heading,.review-page__heading{flex-direction:row;align-items:flex-start;gap:12px}.student-goals-total,.review-page__summary{align-self:flex-start;min-width:0;padding-inline:10px}.student-goals-total span,.review-page__summary span{display:none}.student-goals-stage{padding:14px}.student-goals-card-grid,.review-goal-grid{grid-template-columns:1fr}.review-section-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.review-section-nav__card{grid-template-columns:auto minmax(0,1fr);min-height:74px;padding:10px}.review-section-nav__copy>span,.review-section-nav__arrow{display:none}.review-controls,.review-goal-grid,.review-progress-grid,.review-progress-stats{padding-left:12px;padding-right:12px}.review-results{min-height:0}.student-goal-page__content{grid-template-columns:1fr}.avatar-studio-heading{margin-bottom:20px}.avatar-studio-heading h1{font-size:clamp(2.8rem,15vw,4.2rem)}.avatar-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:430px){.account-control__profile{min-width:48px}.account-control__profile svg{display:none}.module-page--library .module-card__body{grid-template-columns:46px minmax(0,1fr);padding:12px}.module-page--library .module-row__icon{width:46px;height:46px}.module-page--library .module-row__action{grid-column:2;justify-self:start}.review-section-nav__icon{width:36px;height:36px}.review-section-nav__copy strong{font-size:.92rem}.review-progress-stats{grid-template-columns:1fr 1fr}}@media(hover:none){.class-card:is(:hover,:focus-within),.student-goal-card:hover,.review-goal-card:hover,.module-page--library .module-row--choice:hover{transform:none}}.account-control__profile{gap:7px;min-width:64px;min-height:58px;padding:3px 7px 3px 3px;overflow:visible}.account-control__avatar{border:2px solid var(--vc-ink);background:var(--vc-yellow);width:48px;height:48px;box-shadow:2px 2px 0 var(--vc-ink);border-radius:50%;flex:0 0 48px;place-items:center;display:grid;overflow:hidden}.account-control__profile .account-control__avatar img,.account-control__profile .account-control__avatar .account-control__fallback{object-fit:cover;background:0 0;border:0;border-radius:0;place-items:center;width:100%;max-width:none;height:100%;display:grid}.account-control__profile .account-control__avatar img{transform-origin:50% 38%;transform:scale(1.34)}.account-control__profile:hover .account-control__avatar{box-shadow:3px 3px 0 var(--vc-ink);transform:rotate(-2deg)}.app-main:has(.avatar-gallery){background:var(--vc-cream);width:100%;max-width:none;padding:clamp(20px,3vw,36px) clamp(12px,3vw,40px) 86px}.avatar-gallery{width:min(100%,1440px)}.avatar-gallery__heading{margin-bottom:clamp(22px,3vw,34px)}.avatar-gallery__heading .back-link{margin-bottom:14px}.avatar-gallery__heading h1{max-width:11ch;font-size:clamp(2.8rem,5.2vw,4.9rem);line-height:.88}.avatar-gallery__heading>div>p:last-child{max-width:700px;margin-top:13px;font-size:.92rem;line-height:1.5}.avatar-gallery__layout{grid-template-columns:minmax(310px,390px) minmax(0,1fr);gap:clamp(26px,3.5vw,50px)}.avatar-gallery__preview{padding:15px;top:88px}.avatar-gallery__stage{border-radius:24px 18px 27px 20px}.avatar-gallery__stage>img{width:92%;height:92%;top:4%;right:4%;bottom:4%;left:4%}.avatar-gallery__preview .avatar-preview-panel__identity{margin-top:17px}.avatar-gallery__preview .avatar-preview-panel__actions{margin-top:16px}.avatar-gallery__preview .avatar-preview-panel__status{margin-top:11px}.avatar-gallery__collection{min-width:0}.avatar-gallery__collection-heading{margin-bottom:15px}.avatar-gallery__collection-heading h2{font-size:clamp(1.9rem,3.4vw,3rem)}.avatar-gallery__filters{scrollbar-width:none;gap:7px;margin:0 0 17px;padding:3px 3px 6px;display:flex;overflow-x:auto}.avatar-gallery__filters::-webkit-scrollbar{display:none}.avatar-gallery__filters button{border:2px solid var(--vc-ink);min-height:44px;box-shadow:2px 2px 0 var(--vc-ink);color:var(--vc-ink);white-space:nowrap;background:#fff;border-radius:12px 9px 13px 10px;flex:none;align-items:center;gap:7px;padding:0 11px;font-size:.7rem;font-weight:800;transition:transform .16s,background-color .16s,box-shadow .16s;display:inline-flex}.avatar-gallery__filters button span{border:1.5px solid var(--vc-ink);background:var(--vc-cream);min-width:22px;height:22px;font-family:var(--vc-mono);border-radius:50%;place-items:center;font-size:.5rem;display:grid}.avatar-gallery__filters button:hover{background:var(--vc-purple-soft);transform:translateY(-1px)}.avatar-gallery__filters button.is-active{background:var(--vc-yellow);box-shadow:4px 4px 0 var(--vc-ink);transform:translateY(-2px)}.avatar-gallery__viewport{overscroll-behavior:contain;scrollbar-color:var(--vc-pink) transparent;scrollbar-width:thin;max-height:min(68vh,720px);padding:3px 13px 13px 3px;overflow-y:auto}.avatar-gallery__grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.avatar-gallery__grid .avatar-choice{grid-template-columns:minmax(0,1fr);align-items:stretch;gap:0}.avatar-gallery__grid .avatar-choice__visual{box-shadow:4px 4px 0 var(--vc-ink);border-radius:19px 14px 21px 16px}.avatar-gallery__grid .avatar-choice__copy{padding:10px 4px 0}.avatar-gallery__grid .avatar-choice__copy strong{font-size:1rem}.avatar-gallery__grid .avatar-choice__copy small{margin-top:3px;font-size:.61rem}.avatar-gallery__mobile-dock{display:none}@media(max-width:1180px){.avatar-gallery__layout{grid-template-columns:minmax(290px,340px) minmax(0,1fr);gap:28px}.avatar-gallery__grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:900px){.avatar-gallery__layout{grid-template-columns:minmax(270px,310px) minmax(0,1fr);gap:24px}.avatar-gallery__grid{grid-template-columns:repeat(3,minmax(0,1fr))}.avatar-gallery__collection-heading{flex-direction:column;align-items:flex-start;gap:7px}.avatar-gallery__collection-heading>p{max-width:100%}}@media(max-width:760px){.app-main:has(.avatar-gallery){padding:18px 12px 116px}.avatar-gallery__heading{align-items:flex-start;gap:16px;margin-bottom:20px}.avatar-gallery__heading h1{font-size:clamp(2.7rem,14vw,4rem)}.avatar-gallery__heading .avatar-studio-heading__edition{min-height:36px}.avatar-gallery__layout{grid-template-columns:1fr;gap:34px}.avatar-gallery__preview{width:min(100%,500px);margin:0 auto;position:static}.avatar-gallery__viewport{max-height:none;padding-right:7px;overflow:visible}.avatar-gallery__grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.avatar-gallery__mobile-dock{right:10px;bottom:max(10px,env(safe-area-inset-bottom));display:flex;left:10px}.avatar-gallery__mobile-dock .avatar-mobile-dock__identity>img{flex-basis:52px;width:52px;height:52px}}@media(max-width:430px){.avatar-gallery__heading .avatar-studio-heading__edition{display:none}.avatar-gallery__filters{margin-left:-3px;margin-right:-12px;padding-right:15px}.avatar-gallery__grid{gap:9px}.avatar-gallery__grid .avatar-choice__visual{box-shadow:3px 3px 0 var(--vc-ink);border-radius:14px 10px 16px 11px}.avatar-gallery__grid .avatar-choice__copy{text-align:center;padding-top:8px}.avatar-gallery__grid .avatar-choice__copy strong{font-size:.88rem}.avatar-gallery__grid .avatar-choice__copy small,.avatar-gallery__mobile-dock .avatar-mobile-dock__identity>span{display:none}.avatar-gallery__mobile-dock .button{flex:1}}@media(hover:none){.avatar-gallery__filters button:hover,.avatar-gallery__grid .avatar-choice:hover .avatar-choice__visual{transform:none}}.vocab-set-page{width:min(100%,1320px);margin:0 auto;padding-bottom:36px}.vocab-set-page__back{margin-bottom:15px}.vocab-set-hero{border:2px solid var(--vc-ink);background:var(--vc-blue);min-height:286px;box-shadow:8px 8px 0 var(--vc-ink);color:#fff;border-radius:29px 21px 31px 23px;grid-template-columns:minmax(220px,300px) minmax(0,1fr) auto;align-items:center;gap:28px;padding:30px 34px;animation:.46s cubic-bezier(.175,.885,.32,1.18) both vocab-set-rise;display:grid;position:relative;overflow:hidden}.vocab-set-hero:after{border:2px solid var(--vc-ink);background:var(--vc-yellow);content:"";border-radius:48% 52% 43% 57%;width:118px;height:24px;position:absolute;bottom:-11px;right:18%;transform:rotate(-3deg)}.vocab-set-hero__art{aspect-ratio:1.25;border:2px solid var(--vc-ink);background:var(--vc-pink);width:100%;max-width:260px;box-shadow:7px 7px 0 var(--vc-yellow);border-radius:25px 19px 28px 21px;justify-self:center;place-items:center;display:grid;position:relative;transform:rotate(-2deg)}.vocab-set-hero__art img{object-fit:contain;width:68%;height:68%;display:block;transform:rotate(2deg)}.vocab-set-hero__ring{border:12px solid var(--vc-yellow);width:55px;height:55px;box-shadow:0 0 0 2px var(--vc-ink),inset 0 0 0 2px var(--vc-ink);border-radius:50%;animation:8s linear infinite vocab-ring-turn;position:absolute;top:-13px;right:-12px}.vocab-set-hero__tile{border:2px solid var(--vc-ink);background:var(--vc-coral);color:#fff;width:56px;height:52px;font-family:var(--vc-display);border-radius:11px 8px 13px 9px;place-items:center;font-size:1.1rem;font-style:normal;font-weight:900;display:grid;position:absolute;bottom:-12px;left:-10px;transform:rotate(6deg)}.vocab-set-hero__copy{z-index:1;min-width:0;position:relative}.vocab-set-hero__copy .eyebrow{color:var(--vc-yellow)}.vocab-set-hero h1{overflow-wrap:anywhere;color:#fff;max-width:18ch;font-family:var(--vc-display);letter-spacing:0;margin:0;font-size:3.45rem;font-weight:850;line-height:.94}.vocab-set-meta{flex-wrap:wrap;gap:8px;margin-top:20px;display:flex}.vocab-set-meta>span{border:2px solid var(--vc-ink);background:var(--vc-cream);min-height:38px;box-shadow:2px 2px 0 var(--vc-ink);color:var(--vc-ink);border-radius:10px 8px 11px 9px;align-items:center;gap:8px;padding:6px 10px;font-size:.69rem;font-weight:850;display:inline-flex}.vocab-set-meta .flag{border:1px solid var(--vc-ink);border-radius:3px;overflow:hidden}.vocab-set-owner{color:#ffffffe0;flex-wrap:wrap;gap:6px 15px;margin:16px 0 0;font-size:.76rem;line-height:1.4;display:flex}.vocab-set-owner a{color:#fff;text-underline-offset:3px;font-weight:750;text-decoration-thickness:1px}.vocab-set-hero__manage{z-index:1;align-self:start;position:relative}.vocab-set-manage{border:2px solid var(--vc-ink);background:var(--vc-yellow);min-height:46px;box-shadow:4px 4px 0 var(--vc-ink);color:var(--vc-ink);border-radius:12px 9px 13px 10px;justify-content:center;align-items:center;gap:8px;padding:0 15px;font-size:.75rem;font-weight:900;text-decoration:none;transition:transform .16s,background-color .16s,box-shadow .16s;display:inline-flex}.vocab-set-manage:hover:not(:disabled){background:var(--vc-pink);box-shadow:6px 6px 0 var(--vc-ink);transform:translate(-2px,-2px)rotate(-.5deg)}.vocab-set-manage:disabled{box-shadow:none;opacity:.68}.vocab-set-inline-error{border:2px solid var(--vc-ink);background:var(--vc-coral-soft);color:var(--vc-coral-dark);border-radius:10px 8px 11px 9px;margin:14px 0 0;padding:10px 13px;font-size:.76rem;font-weight:800}.vocab-set-actions{grid-template-columns:minmax(0,1fr);gap:13px;max-width:420px;margin:22px 0 30px;display:grid}.vocab-set-action{border:2px solid var(--vc-ink);background:var(--vc-yellow);min-width:0;min-height:78px;box-shadow:4px 4px 0 var(--vc-ink);color:var(--vc-ink);border-radius:16px 12px 18px 13px;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:11px;padding:12px 16px;text-decoration:none;transition:transform .17s,box-shadow .17s,background-color .17s;display:grid;position:relative}.vocab-set-action>svg{box-sizing:content-box;border:2px solid var(--vc-ink);background:var(--vc-cream);border-radius:50%;padding:8px}.vocab-set-action span{gap:2px;min-width:0;display:grid}.vocab-set-action small{font-family:var(--vc-mono);letter-spacing:.06em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:.55rem;font-weight:800;overflow:hidden}.vocab-set-action strong{font-size:.89rem}.vocab-set-action.is-print{background:var(--vc-green-soft)}.vocab-set-action:hover{box-shadow:7px 7px 0 var(--vc-ink);transform:translate(-3px,-3px)rotate(-.35deg)}.vocab-set-action.is-print:hover{background:#bcecdf}.vocab-set-content{border-top:2px solid var(--vc-ink);padding-top:24px}.vocab-set-content__head{justify-content:space-between;align-items:end;gap:22px;margin-bottom:18px;display:flex}.vocab-set-content__head h2{font-family:var(--vc-display);letter-spacing:0;margin:0;font-size:2rem;line-height:1}.vocab-set-tabs{border:2px solid var(--vc-ink);box-shadow:3px 3px 0 var(--vc-ink);background:#fff;border-radius:14px 11px 15px 12px;gap:5px;padding:4px;display:flex}.vocab-set-tabs button{min-height:42px;color:var(--vc-ink-2);background:0 0;border:2px solid #0000;border-radius:9px 7px 10px 8px;align-items:center;gap:7px;padding:0 13px;font-size:.72rem;font-weight:850;transition:background-color .15s,color .15s,transform .15s;display:inline-flex}.vocab-set-tabs button span{border:1.5px solid var(--vc-ink);background:var(--vc-cream);min-width:23px;height:23px;color:var(--vc-ink);font-family:var(--vc-mono);border-radius:50%;place-items:center;font-size:.55rem;display:grid}.vocab-set-tabs button:hover{background:var(--vc-purple-soft);color:var(--vc-ink)}.vocab-set-tabs button.is-active{border-color:var(--vc-ink);background:var(--vc-ink);color:#fff;transform:rotate(-.4deg)}.vocab-set-filter{border:2px solid var(--vc-ink);box-shadow:4px 4px 0 var(--vc-yellow);background:#fff;border-radius:14px 11px 15px 12px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:9px;margin-bottom:17px;padding:7px 8px 7px 13px;display:grid}.vocab-set-filter input{width:100%;min-height:42px;color:var(--vc-ink);background:0 0;border:0;outline:0;padding:0;font-size:.78rem}.vocab-set-filter button{border:2px solid var(--vc-ink);background:var(--vc-pink);width:38px;height:38px;color:var(--vc-ink);border-radius:50%;place-items:center;padding:0;display:grid}.vocab-set-filter>span{color:var(--vc-ink-3);font-family:var(--vc-mono);white-space:nowrap;padding:0 8px;font-size:.58rem;font-weight:800}.vocab-word-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.vocab-word{border:2px solid var(--vc-ink);min-width:0;min-height:118px;box-shadow:4px 4px 0 var(--vc-ink);animation:vocab-word-arrive .36s calc(var(--vocab-order) * 32ms) cubic-bezier(.175,.885,.32,1.18) both;background:#fff;border-radius:16px 12px 18px 13px;grid-template-columns:34px minmax(0,1fr) auto;align-items:start;gap:10px;padding:14px;transition:transform .16s,box-shadow .16s,background-color .16s;display:grid;position:relative}.vocab-word:nth-child(4n+2){background:var(--vc-purple-soft)}.vocab-word:nth-child(4n+3){background:var(--vc-coral-soft)}.vocab-word:nth-child(4n){background:var(--vc-green-soft)}.vocab-word:hover{box-shadow:6px 6px 0 var(--vc-pink);transform:translate(-2px,-2px)}.vocab-word__number{border:1.5px solid var(--vc-ink);background:var(--vc-yellow);width:32px;height:32px;font-family:var(--vc-mono);border-radius:50%;place-items:center;font-size:.58rem;font-weight:900;display:grid}.vocab-word__copy{gap:5px;min-width:0;display:grid}.vocab-word__copy strong{overflow-wrap:anywhere;font-family:var(--vc-display);font-size:1.13rem;line-height:1.08}.vocab-word__copy small{overflow-wrap:anywhere;color:var(--vc-ink-3);font-size:.74rem;font-weight:650}.vocab-word__category{border:1.5px solid var(--vc-ink);background:var(--vc-cream);font-family:var(--vc-mono);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;align-self:start;padding:4px 6px;font-size:.5rem;font-weight:850}.vocab-word>p{border-top:1.5px solid var(--vc-ink);grid-column:2/-1;margin:4px 0 0;padding-top:8px;font-size:.68rem;line-height:1.4}.vocab-set-empty{border:2px dashed var(--vc-ink);text-align:left;background:#fff;border-radius:16px 12px 18px 13px;justify-content:center;align-items:center;gap:13px;min-height:120px;padding:22px;display:flex}.vocab-set-empty strong{font-size:.88rem}.vocab-set-empty p{color:var(--vc-ink-3);margin:4px 0 0;font-size:.75rem}.vocab-examples-panel{gap:16px;display:grid}.vocab-examples-intro{border:2px solid var(--vc-ink);background:var(--vc-pink);box-shadow:5px 5px 0 var(--vc-ink);border-radius:17px 12px 19px 14px;justify-content:space-between;align-items:center;gap:22px;padding:18px 20px;display:flex}.vocab-examples-intro h3{font-family:var(--vc-display);margin:0;font-size:1.35rem}.vocab-examples-intro p:not(.eyebrow){margin:5px 0 0;font-size:.76rem;line-height:1.45}.vocab-examples-intro .eyebrow{color:var(--vc-ink)}.vocab-examples-intro button{border:2px solid var(--vc-ink);background:var(--vc-yellow);min-height:44px;box-shadow:4px 4px 0 var(--vc-ink);color:var(--vc-ink);border-radius:11px 8px 12px 9px;flex:none;align-items:center;gap:8px;padding:0 14px;font-size:.7rem;font-weight:900;display:inline-flex}.vocab-examples-intro button:hover:not(:disabled){background:#fff;transform:translateY(-2px)}.vocab-examples-intro button:disabled{box-shadow:none;opacity:.58}.vocab-example-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.vocab-example-list li{border:2px solid var(--vc-ink);background:#fff;border-radius:13px 10px 14px 11px;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:70px;padding:10px 14px;display:grid}.vocab-example-list li>span{border:1.5px solid var(--vc-ink);background:var(--vc-purple-soft);width:32px;height:32px;font-family:var(--vc-mono);border-radius:50%;place-items:center;font-size:.56rem;font-weight:900;display:grid}.vocab-example-list li>div{gap:4px;min-width:0;display:grid}.vocab-example-list strong{overflow-wrap:anywhere;font-size:.87rem}.vocab-example-list small{color:var(--vc-ink-3);font-size:.72rem}.vocab-example-list em{border:1.5px solid var(--vc-ink);background:var(--vc-green-soft);border-radius:999px;align-items:center;gap:5px;padding:5px 8px;font-size:.56rem;font-style:normal;font-weight:850;display:inline-flex}.vocab-examples-placeholder{border:2px dashed var(--vc-ink);color:var(--vc-ink-3);font-family:var(--vc-mono);letter-spacing:.06em;text-transform:uppercase;background:#fff;border-radius:14px 11px 15px 12px;grid-template-columns:1.5fr 1fr auto;gap:12px;padding:16px;font-size:.57rem;font-weight:800;display:grid}@keyframes vocab-set-rise{0%{opacity:0;transform:translateY(16px)rotate(.25deg)}to{opacity:1;transform:none}}@keyframes vocab-word-arrive{0%{opacity:0;transform:translateY(10px)rotate(.4deg)}to{opacity:1;transform:none}}@keyframes vocab-ring-turn{to{transform:rotate(360deg)}}@media(max-width:980px){.vocab-set-hero{grid-template-columns:190px minmax(0,1fr);padding:26px}.vocab-set-hero__manage{position:absolute;top:20px;right:20px}.vocab-set-hero h1{max-width:15ch;padding-right:110px;font-size:2.8rem}.vocab-word-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.vocab-set-page{padding-bottom:22px}.vocab-set-hero{min-height:0;box-shadow:6px 6px 0 var(--vc-ink);border-radius:22px 16px 24px 18px;grid-template-columns:112px minmax(0,1fr);gap:17px;padding:21px}.vocab-set-hero__art{width:112px;box-shadow:5px 5px 0 var(--vc-yellow);border-radius:18px 13px 20px 15px}.vocab-set-hero__ring{border-width:7px;width:34px;height:34px;top:-8px;right:-7px}.vocab-set-hero__tile{width:40px;height:38px;font-size:.78rem;bottom:-8px;left:-6px}.vocab-set-hero h1{max-width:none;padding-right:0;font-size:2.15rem}.vocab-set-meta{margin-top:14px}.vocab-set-meta>span{min-height:34px;font-size:.61rem}.vocab-set-owner{grid-column:1/-1}.vocab-set-hero__manage{grid-column:1/-1;justify-self:stretch;position:static}.vocab-set-manage{width:100%}.vocab-set-actions{grid-template-columns:1fr;gap:9px;max-width:none;margin:18px 0 25px}.vocab-set-action{min-height:66px}.vocab-set-content__head{flex-direction:column;align-items:flex-start}.vocab-set-content__head h2{font-size:1.7rem}.vocab-set-tabs{width:100%}.vocab-set-tabs button{flex:1 1 0;justify-content:center;min-height:44px}.vocab-word-grid{grid-template-columns:1fr}.vocab-word{min-height:100px}.vocab-examples-intro{flex-direction:column;align-items:stretch}.vocab-examples-intro button{justify-content:center}}@media(max-width:430px){.vocab-set-hero{grid-template-columns:82px minmax(0,1fr);gap:13px;padding:17px}.vocab-set-hero__art{width:82px}.vocab-set-hero__ring{display:none}.vocab-set-hero__tile{width:34px;height:32px}.vocab-set-hero h1{font-size:1.75rem}.vocab-set-meta{grid-column:1/-1}.vocab-set-meta>span{min-height:32px;padding-inline:8px}.vocab-set-owner{font-size:.68rem}.vocab-set-filter{grid-template-columns:auto minmax(0,1fr) auto}.vocab-set-filter>span{grid-column:1/-1;padding:0 0 3px 27px}.vocab-word{grid-template-columns:32px minmax(0,1fr)}.vocab-word__category{grid-column:2;justify-self:start}.vocab-example-list li{grid-template-columns:32px minmax(0,1fr)}.vocab-example-list em{grid-column:2;justify-self:start}.vocab-examples-placeholder{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.vocab-set-hero,.vocab-word,.vocab-set-hero__ring{animation:none}.vocab-set-page :is(a,button,li){transition:none}.vocab-set-action:hover,.vocab-set-manage:hover:not(:disabled),.vocab-word:hover{transform:none}}.verb-library-page,.verb-set-page{width:min(100%,1320px);margin:0 auto;padding-bottom:38px}.verb-library-heading{border:2px solid var(--vc-ink);background:var(--vc-blue);min-height:230px;box-shadow:7px 7px 0 var(--vc-ink);color:#fff;border-radius:28px 20px 30px 22px;grid-template-columns:minmax(0,1fr) 240px;align-items:center;gap:28px;margin-bottom:22px;padding:26px 30px;animation:.46s cubic-bezier(.175,.885,.32,1.18) both verb-panel-in;display:grid;position:relative;overflow:hidden}.verb-library-heading:before{border:2px solid var(--vc-ink);background:var(--vc-pink);content:"";border-radius:50%;width:130px;height:48px;position:absolute;bottom:-22px;left:36%;transform:rotate(-7deg)}.verb-library-heading>div:first-child{z-index:1;min-width:0;position:relative}.verb-library-heading .back-link{border-color:var(--vc-ink);background:var(--vc-cream);color:var(--vc-ink);margin-bottom:16px}.verb-library-heading .eyebrow{color:var(--vc-yellow)}.verb-library-heading h1{color:#fff;font-family:var(--vc-display);margin:0;font-size:3.5rem;font-weight:850;line-height:.92}.verb-library-heading>div:first-child>p:last-child{color:#ffffffe0;max-width:610px;margin:13px 0 0;font-size:.84rem;line-height:1.5}.verb-library-heading__art{aspect-ratio:1.28;border:2px solid var(--vc-ink);background:var(--vc-yellow);width:220px;box-shadow:6px 6px 0 var(--vc-ink);border-radius:24px 17px 27px 19px;justify-self:end;place-items:center;display:grid;position:relative;transform:rotate(2deg)}.verb-library-heading__art img{object-fit:contain;width:72%;height:72%;transform:rotate(-2deg)}.verb-library-heading__art i,.verb-library-heading__art span{border:2px solid var(--vc-ink);color:var(--vc-ink);place-items:center;font-style:normal;font-weight:950;display:grid;position:absolute}.verb-library-heading__art i{background:var(--vc-pink);border-radius:50%;width:45px;height:45px;top:-13px;right:17px}.verb-library-heading__art span{background:var(--vc-green-soft);border-radius:11px 8px 12px 9px;width:48px;height:39px;font-size:1.25rem;bottom:17px;right:-10px}.verb-create{border:2px solid var(--vc-ink);background:var(--vc-yellow);box-shadow:5px 5px 0 var(--vc-ink);border-radius:22px 16px 24px 18px;grid-template-columns:minmax(240px,.8fr) minmax(230px,1fr) minmax(330px,1.2fr) auto;align-items:end;gap:18px;padding:18px;animation:.46s cubic-bezier(.175,.885,.32,1.18) 70ms both verb-panel-in;display:grid}.verb-create__intro{grid-template-columns:42px minmax(0,1fr);align-items:start;gap:12px;display:grid}.verb-create__intro>span{border:2px solid var(--vc-ink);background:var(--vc-pink);width:42px;height:42px;box-shadow:2px 2px 0 var(--vc-ink);border-radius:50%;place-items:center;display:grid}.verb-create__intro h2{font-family:var(--vc-display);margin:1px 0 0;font-size:1.42rem;line-height:1}.verb-create__intro p:last-child{margin:6px 0 0;font-size:.7rem;line-height:1.4}.verb-create__intro .eyebrow{color:var(--vc-ink);margin:0 0 4px}.verb-create__name,.verb-create__languages{border:0;gap:7px;margin:0;padding:0;display:grid}.verb-create__name>span,.verb-create__languages legend{font-family:var(--vc-mono);letter-spacing:.06em;text-transform:uppercase;font-size:.55rem;font-weight:900}.verb-create__name input{border:2px solid var(--vc-ink);width:100%;min-height:48px;box-shadow:3px 3px 0 var(--vc-ink);color:var(--vc-ink);background:#fff;border-radius:12px 9px 13px 10px;outline:0;padding:0 13px;font-size:.78rem}.verb-create__name input:focus{background:var(--vc-purple-soft)}.verb-create__languages>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.verb-create__languages label{border:2px solid var(--vc-ink);cursor:pointer;background:#fff;border-radius:11px 8px 12px 9px;align-items:center;gap:7px;min-height:48px;padding:0 9px;font-size:.66rem;font-weight:850;display:flex}.verb-create__languages label.is-selected{background:var(--vc-green-soft);box-shadow:3px 3px 0 var(--vc-ink);transform:translateY(-1px)}.verb-create__languages input{opacity:0;pointer-events:none;position:absolute}.verb-create__languages label>svg:last-child{margin-left:auto}.verb-create__languages .flag{border:1px solid var(--vc-ink);border-radius:2px;flex:none;overflow:hidden}.verb-create__submit{border:2px solid var(--vc-ink);background:var(--vc-ink);min-height:49px;box-shadow:4px 4px 0 var(--vc-pink);color:#fff;white-space:nowrap;border-radius:12px 9px 13px 10px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:.72rem;font-weight:900;transition:transform .16s,box-shadow .16s;display:inline-flex}.verb-create__submit:hover:not(:disabled){box-shadow:6px 6px 0 var(--vc-pink);transform:translate(-2px,-2px)}.verb-create__submit:disabled{box-shadow:none;opacity:.55}.verb-library-error{color:var(--vc-coral-dark);grid-column:2/-1;margin:-3px 0 0;font-size:.7rem;font-weight:850}.verb-collection{border-top:2px solid var(--vc-ink);margin-top:30px;padding-top:24px}.verb-collection__head{justify-content:space-between;align-items:end;gap:20px;margin-bottom:15px;display:flex}.verb-collection__head h2{font-family:var(--vc-display);margin:0;font-size:2rem;line-height:1}.verb-collection__head>span{border:2px solid var(--vc-ink);background:var(--vc-pink);font-family:var(--vc-mono);border-radius:999px;padding:6px 9px;font-size:.58rem;font-weight:900}.verb-library-search{border:2px solid var(--vc-ink);box-shadow:4px 4px 0 var(--vc-yellow);background:#fff;border-radius:14px 10px 15px 11px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;margin-bottom:17px;padding:6px 7px 6px 13px;display:grid}.verb-library-search input{background:0 0;border:0;outline:0;min-height:42px;font-size:.78rem}.verb-library-search button{border:2px solid var(--vc-ink);background:var(--vc-pink);border-radius:50%;place-items:center;width:38px;height:38px;padding:0;display:grid}.verb-set-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.verb-set-card{border:2px solid var(--vc-ink);min-width:0;min-height:205px;box-shadow:5px 5px 0 var(--vc-ink);color:var(--vc-ink);animation:verb-card-in .38s calc(var(--verb-card-order) * 42ms) cubic-bezier(.175,.885,.32,1.18) both;background:#fff;border-radius:18px 13px 20px 15px;grid-template-columns:auto minmax(0,1fr);gap:13px;padding:16px;text-decoration:none;transition:transform .17s,box-shadow .17s,background-color .17s;display:grid;position:relative}.verb-set-card:nth-child(4n+2){background:var(--vc-purple-soft)}.verb-set-card:nth-child(4n+3){background:var(--vc-coral-soft)}.verb-set-card:nth-child(4n){background:var(--vc-green-soft)}.verb-set-card:hover{box-shadow:8px 8px 0 var(--vc-pink);transform:translate(-3px,-3px)rotate(-.25deg)}.verb-set-card__language{border:1.5px solid var(--vc-ink);background:var(--vc-cream);border-radius:999px;justify-self:end;align-items:center;gap:7px;min-height:36px;padding:5px 8px;font-size:.6rem;font-weight:850;display:inline-flex}.verb-set-card__language .flag{border:1px solid var(--vc-ink);border-radius:2px;overflow:hidden}.verb-set-card__copy{grid-column:1/-1;min-width:0}.verb-set-card__copy h3{overflow-wrap:anywhere;font-family:var(--vc-display);margin:0;font-size:1.25rem;line-height:1.05}.verb-set-card__copy p{color:var(--vc-ink-3);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:8px 0 0;font-size:.68rem;line-height:1.4;display:-webkit-box;overflow:hidden}.verb-set-card__foot{border-top:1.5px solid var(--vc-ink);grid-column:1/-1;grid-template-columns:auto minmax(0,1fr) 36px;align-self:end;align-items:end;gap:8px;padding-top:12px;display:grid}.verb-set-card__foot>span{align-items:center;gap:6px;font-size:.65rem;font-weight:850;display:flex}.verb-set-card__foot time{color:var(--vc-ink-3);text-align:right;text-overflow:ellipsis;white-space:nowrap;font-size:.57rem;overflow:hidden}.verb-set-card__foot i{border:1.5px solid var(--vc-ink);background:var(--vc-blue);color:#fff;border-radius:50%;place-items:center;width:34px;height:34px;font-style:normal;display:grid}.verb-library-empty,.verb-editor-empty{border:2px dashed var(--vc-ink);background:#fff;border-radius:17px 12px 19px 14px;justify-content:center;align-items:center;gap:13px;min-height:124px;padding:22px;display:flex}.verb-library-empty strong,.verb-editor-empty strong{font-size:.86rem}.verb-library-empty p,.verb-editor-empty p{color:var(--vc-ink-3);margin:4px 0 0;font-size:.72rem}.verb-library-pager{justify-content:space-between;align-items:center;gap:14px;margin-top:20px;display:flex}.verb-library-pager button{border:2px solid var(--vc-ink);min-height:44px;box-shadow:3px 3px 0 var(--vc-ink);background:#fff;border-radius:11px 8px 12px 9px;align-items:center;gap:6px;padding:0 12px;font-size:.68rem;font-weight:850;display:inline-flex}.verb-library-pager button:disabled{box-shadow:none;opacity:.45}.verb-library-pager>span{font-family:var(--vc-mono);font-size:.58rem}.verb-set-page__back{margin-bottom:15px}.verb-set-hero{border:2px solid var(--vc-ink);background:var(--vc-blue);min-height:276px;box-shadow:8px 8px 0 var(--vc-ink);color:#fff;border-radius:29px 21px 31px 23px;grid-template-columns:245px minmax(0,1fr) auto;align-items:center;gap:28px;padding:28px 32px;animation:.46s cubic-bezier(.175,.885,.32,1.18) both verb-panel-in;display:grid;position:relative;overflow:hidden}.verb-set-hero:after{border:2px solid var(--vc-ink);background:var(--vc-pink);content:"";border-radius:50%;width:136px;height:40px;position:absolute;bottom:-17px;right:25%;transform:rotate(-5deg)}.verb-set-hero__art{aspect-ratio:1.15;border:2px solid var(--vc-ink);background:var(--vc-yellow);width:225px;box-shadow:7px 7px 0 var(--vc-ink);border-radius:25px 18px 28px 20px;place-items:center;display:grid;position:relative;transform:rotate(-2deg)}.verb-set-hero__art img{object-fit:contain;width:72%;height:72%;transform:rotate(2deg)}.verb-set-hero__art i,.verb-set-hero__art span{border:2px solid var(--vc-ink);color:var(--vc-ink);place-items:center;font-style:normal;font-weight:950;display:grid;position:absolute}.verb-set-hero__art i{background:var(--vc-pink);border-radius:50%;width:46px;height:46px;top:-13px;right:15px}.verb-set-hero__art span{background:var(--vc-green-soft);border-radius:11px 8px 12px 9px;width:49px;height:42px;font-size:1.3rem;bottom:-10px;left:14px}.verb-set-hero__copy{z-index:1;min-width:0;position:relative}.verb-set-hero__copy .eyebrow{color:var(--vc-yellow)}.verb-set-hero h1{overflow-wrap:anywhere;color:#fff;max-width:17ch;font-family:var(--vc-display);margin:0;font-size:3.15rem;font-weight:850;line-height:.94}.verb-set-meta{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.verb-set-meta>span{border:2px solid var(--vc-ink);background:var(--vc-cream);min-height:36px;box-shadow:2px 2px 0 var(--vc-ink);color:var(--vc-ink);border-radius:10px 8px 11px 9px;align-items:center;gap:7px;padding:5px 9px;font-size:.65rem;font-weight:850;display:inline-flex}.verb-set-meta .flag{border:1px solid var(--vc-ink);border-radius:2px;overflow:hidden}.verb-set-owner{color:#ffffffd9;flex-wrap:wrap;gap:5px 12px;margin:14px 0 0;font-size:.69rem;display:flex}.verb-set-owner a{color:#fff;text-underline-offset:3px;font-weight:800}.verb-set-owner time{opacity:.8}.verb-set-stats{z-index:1;border:2px solid var(--vc-ink);background:var(--vc-cream);width:150px;box-shadow:5px 5px 0 var(--vc-yellow);color:var(--vc-ink);border-radius:17px 12px 19px 14px;margin:0;display:grid;position:relative}.verb-set-stats>div{border-bottom:1.5px solid var(--vc-ink);grid-template-columns:44px minmax(0,1fr);align-items:center;min-height:54px;padding:6px 10px;display:grid}.verb-set-stats>div:last-child{border-bottom:0}.verb-set-stats dt{font-family:var(--vc-display);font-size:1.45rem;font-weight:900}.verb-set-stats dd{font-family:var(--vc-mono);letter-spacing:.05em;text-transform:uppercase;margin:0;font-size:.52rem;font-weight:900}.verb-set-clone{z-index:2;border:2px solid var(--vc-ink);background:var(--vc-pink);min-height:42px;box-shadow:3px 3px 0 var(--vc-ink);border-radius:11px 8px 12px 9px;align-items:center;gap:7px;padding:0 11px;font-size:.66rem;font-weight:900;display:inline-flex;position:absolute;bottom:21px;right:31px}.verb-set-message{border:2px solid var(--vc-ink);border-radius:11px 8px 12px 9px;align-items:center;gap:7px;margin:14px 0 0;padding:10px 13px;font-size:.72rem;font-weight:850;display:flex}.verb-set-message.is-error{background:var(--vc-coral-soft);color:var(--vc-coral-dark)}.verb-set-message.is-success{background:var(--vc-green-soft);color:#006d5d}.verb-editor{grid-template-columns:minmax(0,1.35fr) minmax(340px,.8fr);align-items:start;gap:18px;margin-top:27px;display:grid;position:relative}.verb-editor-panel{border:2px solid var(--vc-ink);min-width:0;box-shadow:5px 5px 0 var(--vc-ink);border-radius:22px 16px 24px 18px;padding:20px;animation:.43s cubic-bezier(.175,.885,.32,1.18) 80ms both verb-panel-in}.verb-editor-verbs{background:var(--vc-purple-soft)}.verb-editor-settings{background:var(--vc-coral-soft);animation-delay:.13s;position:sticky;top:88px}.verb-editor-panel>header{justify-content:space-between;align-items:end;gap:15px;margin-bottom:15px;display:flex}.verb-editor-panel>header h2{font-family:var(--vc-display);margin:0;font-size:1.65rem;line-height:1}.verb-editor-verbs>header>span{border:1.5px solid var(--vc-ink);background:var(--vc-yellow);font-family:var(--vc-mono);border-radius:999px;padding:5px 8px;font-size:.54rem;font-weight:900}.verb-editor-settings>header>svg{box-sizing:content-box;border:2px solid var(--vc-ink);background:var(--vc-pink);border-radius:50%;padding:8px}.verb-editor-search{border:2px solid var(--vc-ink);box-shadow:3px 3px 0 var(--vc-yellow);background:#fff;border-radius:13px 9px 14px 10px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;padding:6px 7px 6px 12px;display:grid}.verb-editor-search input{background:0 0;border:0;outline:0;min-height:40px;font-size:.75rem}.verb-editor-search button{border:1.5px solid var(--vc-ink);background:var(--vc-pink);border-radius:50%;place-items:center;width:36px;height:36px;padding:0;display:grid}.verb-editor-search kbd{border:1.5px solid var(--vc-ink);background:var(--vc-cream);font-family:var(--vc-mono);border-radius:6px;padding:4px 7px;font-size:.55rem}.verb-editor-toolbar{flex-wrap:wrap;align-items:center;gap:7px;margin:13px 0 16px;display:flex}.verb-editor-toolbar>button{border:1.5px solid var(--vc-ink);background:#fff;border-radius:999px;min-height:38px;padding:0 10px;font-size:.61rem;font-weight:850}.verb-editor-toolbar>button:hover:not(:disabled){background:var(--vc-yellow)}.verb-editor-toolbar>button:disabled{opacity:.45}.verb-editor-only{cursor:pointer;align-items:center;gap:7px;margin-left:auto;font-size:.62rem;font-weight:850;display:flex}.verb-editor-only input{opacity:0;position:absolute}.verb-editor-only>span{border:1.5px solid var(--vc-ink);background:#fff;border-radius:999px;width:38px;height:22px;position:relative}.verb-editor-only>span:after{border:1.5px solid var(--vc-ink);background:var(--vc-cream);content:"";border-radius:50%;width:13px;height:13px;transition:transform .16s,background-color .16s;position:absolute;top:3px;left:3px}.verb-editor-only input:checked+span{background:var(--vc-green-soft)}.verb-editor-only input:checked+span:after{background:var(--vc-green);transform:translate(16px)}.verb-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.verb-choice-grid>label{border:1.5px solid var(--vc-ink);min-height:48px;animation:verb-card-in .3s calc(var(--verb-choice-order) * 22ms) ease-out both;cursor:pointer;background:#fff;border-radius:11px 8px 12px 9px;grid-template-columns:25px minmax(0,1fr) auto;align-items:center;gap:8px;padding:7px 9px;display:grid}.verb-choice-grid>label.is-selected{background:var(--vc-yellow);box-shadow:2px 2px 0 var(--vc-ink)}.verb-choice-grid input{opacity:0;position:absolute}.verb-choice-grid label>span{border:1.5px solid var(--vc-ink);background:var(--vc-cream);border-radius:7px 5px 8px 6px;place-items:center;width:24px;height:24px;display:grid}.verb-choice-grid label.is-selected>span{background:var(--vc-green-soft)}.verb-choice-grid strong{text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.verb-choice-grid a{border:1.5px solid var(--vc-ink);background:var(--vc-blue);color:#fff;border-radius:50%;place-items:center;width:30px;height:30px;display:grid}.verb-settings-name{gap:7px;display:grid}.verb-settings-name>span,.verb-settings-group legend{font-family:var(--vc-mono);letter-spacing:.05em;text-transform:uppercase;font-size:.55rem;font-weight:900}.verb-settings-name input{border:2px solid var(--vc-ink);width:100%;min-height:47px;color:var(--vc-ink);background:#fff;border-radius:12px 9px 13px 10px;outline:0;padding:0 12px}.verb-settings-name input:focus{box-shadow:3px 3px 0 var(--vc-yellow)}.verb-settings-share{cursor:pointer;grid-template-columns:39px minmax(0,1fr);align-items:center;gap:2px 10px;margin:15px 0;display:grid}.verb-settings-share input{opacity:0;position:absolute}.verb-settings-share>span{border:1.5px solid var(--vc-ink);background:#fff;border-radius:999px;grid-row:1/3;width:39px;height:23px;position:relative}.verb-settings-share>span:after{border:1.5px solid var(--vc-ink);background:var(--vc-cream);content:"";border-radius:50%;width:14px;height:14px;transition:transform .16s,background-color .16s;position:absolute;top:3px;left:3px}.verb-settings-share input:checked+span{background:var(--vc-green-soft)}.verb-settings-share input:checked+span:after{background:var(--vc-green);transform:translate(16px)}.verb-settings-share strong{font-size:.75rem}.verb-settings-share small{color:var(--vc-ink-3);font-size:.61rem}.verb-settings-group{border:0;border-top:1.5px solid var(--vc-ink);align-content:start;align-self:start;gap:9px;margin:0;padding:14px 0 0;display:grid}.verb-settings-group+.verb-settings-group{margin-top:14px}.verb-settings-group legend{width:100%;padding:0 0 9px}.verb-settings-group legend span{float:right;border:1.5px solid var(--vc-ink);background:var(--vc-yellow);text-align:center;border-radius:999px;min-width:21px;padding:3px 5px}.verb-settings-group>div{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.verb-settings-group label{height:38px;color:var(--vc-ink);white-space:nowrap;cursor:pointer;background:#fff;border:1.5px solid #827b8b;border-radius:9px;justify-content:center;align-items:center;gap:6px;padding:0 11px;font-size:.64rem;font-weight:800;line-height:1.15;transition:border-color .14s,background-color .14s,box-shadow .14s;display:inline-flex}.verb-gender-choice{align-items:center;gap:5px;display:inline-flex}.verb-gender-choice svg{color:var(--vc-purple);flex:none}.verb-settings-group label:hover:not(:has(input:disabled)){border-color:var(--vc-ink);background:var(--vc-purple-soft)}.verb-settings-group label.is-selected{border-color:var(--vc-ink);background:var(--vc-yellow);box-shadow:inset 0 -2px #1912331f}.verb-settings-group label:has(input:focus-visible){outline-offset:2px;outline:3px solid #5647e34d}.verb-settings-group label:has(input:disabled){color:#77717f;cursor:default;opacity:.72}.verb-settings-group input{opacity:0;position:absolute}.verb-savebar{right:max(18px,50vw - 660px);bottom:max(16px,env(safe-area-inset-bottom));z-index:30;border:2px solid var(--vc-ink);background:var(--vc-cream);box-shadow:6px 6px 0 var(--vc-ink);border-radius:14px 10px 15px 11px;align-items:center;gap:24px;padding:9px 10px 9px 14px;animation:.26s cubic-bezier(.175,.885,.32,1.2) both verb-save-in;display:flex;position:fixed}.verb-savebar p{align-items:center;gap:7px;margin:0;font-size:.67rem;font-weight:850;display:flex}.verb-savebar p span{border:1px solid var(--vc-ink);background:var(--vc-coral);border-radius:50%;width:9px;height:9px;animation:1.2s ease-in-out infinite verb-save-pulse}.verb-savebar>div{gap:7px;display:flex}.verb-savebar button{border:2px solid var(--vc-ink);background:#fff;border-radius:10px 7px 11px 8px;align-items:center;gap:7px;min-height:42px;padding:0 11px;font-size:.66rem;font-weight:900;display:inline-flex}.verb-savebar button[type=submit]{background:var(--vc-yellow);box-shadow:3px 3px 0 var(--vc-ink)}.verb-examples{border:2px solid var(--vc-ink);box-shadow:5px 5px 0 var(--vc-ink);background:#fff;border-radius:20px 14px 22px 16px;margin-top:22px;overflow:clip}.verb-examples>summary{background:var(--vc-yellow);cursor:pointer;justify-content:space-between;align-items:center;gap:18px;min-height:70px;padding:12px 17px;list-style:none;display:flex}.verb-examples>summary::-webkit-details-marker{display:none}.verb-examples>summary>span{grid-template-columns:36px minmax(0,1fr);align-items:center;gap:1px 10px;display:grid}.verb-examples>summary>span>svg{box-sizing:content-box;border:1.5px solid var(--vc-ink);background:var(--vc-pink);border-radius:50%;grid-row:1/3;padding:7px}.verb-examples>summary strong{font-family:var(--vc-display);font-size:1.06rem}.verb-examples>summary small{font-size:.62rem}.verb-examples>summary>svg{transition:transform .18s}.verb-examples[open]>summary>svg{transform:rotate(180deg)}.verb-examples__body{border-top:2px solid var(--vc-ink);padding:18px}.verb-examples__body>header{justify-content:space-between;align-items:end;gap:18px;margin-bottom:15px;display:flex}.verb-examples__body h2{font-family:var(--vc-display);margin:0;font-size:1.45rem}.verb-examples__body>header>div:last-child{gap:8px;display:flex}.verb-examples__body button,.verb-examples__body header a{border:2px solid var(--vc-ink);background:var(--vc-pink);min-height:43px;color:var(--vc-ink);border-radius:10px 7px 11px 8px;align-items:center;gap:7px;padding:0 11px;font-size:.66rem;font-weight:900;text-decoration:none;display:inline-flex}.verb-examples__body header a{background:var(--vc-green-soft)}.verb-examples__body button:disabled{opacity:.5}.verb-examples__body ol{gap:8px;margin:0;padding:0;list-style:none;display:grid}.verb-examples__body li{border:1.5px solid var(--vc-ink);background:var(--vc-purple-soft);border-radius:12px 9px 13px 10px;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:66px;padding:9px 12px;display:grid}.verb-examples__body li:nth-child(2n){background:var(--vc-coral-soft)}.verb-examples__body li>span{border:1.5px solid var(--vc-ink);background:var(--vc-yellow);width:31px;height:31px;font-family:var(--vc-mono);border-radius:50%;place-items:center;font-size:.54rem;font-weight:900;display:grid}.verb-examples__body li>div{gap:3px;min-width:0;display:grid}.verb-examples__body li strong{overflow-wrap:anywhere;font-size:.78rem}.verb-examples__body li small{color:var(--vc-ink-3);font-size:.66rem}.verb-examples__body li em{border:1.5px solid var(--vc-ink);text-transform:capitalize;background:#fff;border-radius:999px;padding:5px 8px;font-size:.55rem;font-style:normal;font-weight:850}.verb-examples__empty{border:2px dashed var(--vc-ink);background:var(--vc-cream);border-radius:14px 10px 15px 11px;justify-content:center;align-items:center;gap:10px;min-height:94px;display:flex}.verb-examples__empty p{color:var(--vc-ink-3);margin:0;font-size:.72rem}@keyframes verb-panel-in{0%{opacity:0;transform:translateY(14px)rotate(.2deg)}to{opacity:1;transform:none}}@keyframes verb-card-in{0%{opacity:0;transform:translateY(10px)scale(.985)}to{opacity:1;transform:none}}@keyframes verb-save-in{0%{opacity:0;transform:translateY(18px)scale(.96)}to{opacity:1;transform:none}}@keyframes verb-save-pulse{50%{transform:scale(1.35)}}@media(max-width:1080px){.verb-create{grid-template-columns:minmax(230px,.8fr) minmax(0,1fr)}.verb-create__languages{grid-column:1}.verb-create__submit{grid-column:2}.verb-set-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.verb-set-hero{grid-template-columns:190px minmax(0,1fr) 135px;gap:20px;padding:25px}.verb-set-hero__art{width:180px}.verb-set-hero h1{font-size:2.6rem}.verb-editor{grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr)}.verb-choice-grid{grid-template-columns:1fr}}@media(max-width:780px){.verb-library-heading{grid-template-columns:minmax(0,1fr) 135px;min-height:190px;padding:22px}.verb-library-heading h1{font-size:2.7rem}.verb-library-heading__art{width:130px}.verb-create{grid-template-columns:1fr}.verb-create__languages,.verb-create__submit{grid-column:auto}.verb-create__submit{width:100%}.verb-editor{grid-template-columns:1fr}.verb-editor-settings{position:static}.verb-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.verb-set-hero{grid-template-columns:125px minmax(0,1fr);min-height:0;padding:21px}.verb-set-hero__art{width:120px}.verb-set-hero h1{font-size:2.15rem}.verb-set-stats{grid-column:1/-1;grid-template-columns:repeat(3,1fr);width:100%}.verb-set-stats>div{border-right:1.5px solid var(--vc-ink);border-bottom:0;grid-template-columns:1fr;justify-items:center}.verb-set-stats>div:last-child{border-right:0}.verb-set-clone{grid-column:1/-1;justify-content:center;width:100%;position:static}.verb-examples__body>header{flex-direction:column;align-items:stretch}.verb-examples__body>header>div:last-child{flex-wrap:wrap}.verb-savebar{right:12px;bottom:max(10px,env(safe-area-inset-bottom));justify-content:space-between;left:12px}}@media(max-width:560px){.verb-library-page,.verb-set-page{padding-bottom:24px}.verb-library-heading{grid-template-columns:1fr;gap:16px;padding:18px}.verb-library-heading h1{font-size:2.35rem}.verb-library-heading__art{display:none}.verb-create{padding:15px}.verb-create__languages>div,.verb-set-grid{grid-template-columns:1fr}.verb-set-card{min-height:185px}.verb-set-hero{grid-template-columns:82px minmax(0,1fr);gap:13px;padding:17px}.verb-set-hero__art{width:80px}.verb-set-hero__art i{width:31px;height:31px;font-size:.72rem;top:-8px;right:-5px}.verb-set-hero__art span{width:34px;height:30px;font-size:.88rem;bottom:-7px;left:4px}.verb-set-hero h1{font-size:1.72rem}.verb-set-meta,.verb-set-owner{grid-column:1/-1}.verb-editor-panel{padding:15px}.verb-choice-grid{grid-template-columns:1fr}.verb-editor-toolbar{align-items:stretch}.verb-editor-toolbar>button{flex:auto}.verb-editor-only{justify-content:flex-end;width:100%;margin-top:2px}.verb-examples__body{padding:14px}.verb-examples__body>header>div:last-child>*{flex:auto;justify-content:center}.verb-examples__body li{grid-template-columns:31px minmax(0,1fr)}.verb-examples__body li em{grid-column:2;justify-self:start}.verb-savebar{gap:10px;padding-left:10px}.verb-savebar p{font-size:0}.verb-savebar p span{width:10px;height:10px}.verb-savebar>div{flex:1}.verb-savebar button{flex:1;justify-content:center}}@media(hover:none){.verb-set-card:hover,.verb-create__submit:hover:not(:disabled){transform:none}}@media(prefers-reduced-motion:reduce){.verb-library-heading,.verb-create,.verb-set-card,.verb-set-hero,.verb-editor-panel,.verb-choice-grid>label,.verb-savebar,.verb-savebar p span{animation:none}.verb-library-page *,.verb-set-page *{transition:none!important}}.verb-vocab-hero__art{background:var(--vc-yellow)}.verb-vocab-hero__art img{width:70%;height:70%}.verb-vocab-owner time{color:#ffffffc2}.verb-vocab-content{margin-top:0}.verb-editor--vocab{margin-top:0;display:block}.verb-editor--vocab .verb-editor-panel{width:100%;min-height:260px}.verb-editor--vocab .verb-editor-settings{position:static}.verb-editor--vocab .verb-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.verb-settings-layout{grid-template-columns:minmax(260px,.72fr) minmax(0,1.45fr);align-items:start;gap:24px;display:grid}.verb-settings-primary{border-right:1.5px solid var(--vc-ink);padding-right:24px}.verb-settings-options{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:17px 22px;display:grid}.verb-settings-options .verb-settings-group{margin:0}.verb-settings-options .verb-settings-group+.verb-settings-group{margin-top:0}.verb-examples__body--tab{border:2px solid var(--vc-ink);background:var(--vc-purple-soft);min-height:260px;box-shadow:5px 5px 0 var(--vc-ink);border-radius:22px 16px 24px 18px;padding:20px;animation:.43s cubic-bezier(.175,.885,.32,1.18) 80ms both verb-panel-in}.verb-set-tabs button{white-space:nowrap}@media(max-width:980px){.verb-editor--vocab .verb-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.verb-settings-layout{grid-template-columns:1fr}.verb-settings-primary{border-right:0;border-bottom:1.5px solid var(--vc-ink);padding:0 0 18px}}@media(max-width:720px){.verb-set-tabs button{padding-inline:9px;font-size:.65rem}.verb-settings-options{grid-template-columns:1fr}}@media(max-width:520px){.verb-set-tabs{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.verb-set-tabs button{min-width:0;padding-inline:6px}.verb-set-tabs button svg{display:none}.verb-editor--vocab .verb-choice-grid{grid-template-columns:1fr}.verb-settings-group>div{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.verb-settings-group label{white-space:normal;text-align:center;width:100%;height:44px;padding-inline:8px}}.app-main:has(.student-workspace-page){background:var(--vc-cream);width:100%;max-width:none;padding:18px clamp(20px,5vw,72px) 64px}.student-workspace-page{width:min(100%,1180px);margin:0 auto}.student-workspace-page .back-link{color:var(--vc-ink-3);margin:0 0 15px;font-size:.73rem;font-weight:800}.student-workspace-page .workspace-shell{min-height:0;box-shadow:none;background:0 0;border:0;border-radius:0;animation:none;overflow:visible}.student-workspace-hero{border-bottom:1px solid var(--vc-line-2);background:0 0;grid-template-columns:minmax(280px,1fr) minmax(360px,.95fr);align-items:center;gap:30px;padding:6px 0 24px;display:grid}.student-workspace-hero .language-token{border:2px solid var(--vc-ink);background:var(--vc-yellow);width:48px;height:48px;color:var(--vc-ink);box-shadow:3px 3px 0 var(--vc-ink);border-radius:13px}.student-workspace-hero h1{max-width:24ch;font-size:clamp(1.55rem,2.8vw,2.25rem);line-height:1}.student-workspace-hero p:not(.eyebrow){color:var(--vc-ink-3);margin-top:6px;font-size:.78rem}.student-workspace-summary{background:0 0;border:0;border-radius:0;grid-template-columns:repeat(4,minmax(72px,1fr));min-width:0;display:grid}.student-workspace-summary>span{min-height:48px;padding:5px 12px}.student-workspace-summary__teacher{display:none!important}.student-workspace-summary svg{color:var(--vc-coral)}.student-workspace-tabs{border-bottom:1px solid var(--vc-line-2);gap:25px;margin:0}.student-workspace-tabs .workspace-tabs__button{min-height:48px;color:var(--vc-ink-3);font-size:.76rem}.student-workspace-tabs .workspace-tabs__button.is-active{border-bottom:3px solid var(--vc-coral);color:var(--vc-ink)}.student-workspace-page .workspace-panel{background:0 0;min-height:0;margin:0;padding:34px 0 0}.student-week-intro{align-items:flex-end;margin-bottom:20px}.student-section-kicker{color:var(--vc-coral-dark);letter-spacing:.13em;font-size:.56rem}.student-week-intro h2{margin-top:5px;font-size:clamp(1.75rem,3vw,2.45rem);line-height:1}.student-week-intro p{color:var(--vc-ink-3);margin-top:8px;font-size:.8rem}.student-today-meter{border:2px solid var(--vc-ink);border-radius:var(--vc-radius-pill);background:var(--vc-yellow);min-height:35px;box-shadow:3px 3px 0 var(--vc-ink);padding:0 13px}.student-week-navigation{border:1px solid var(--vc-line-2);box-shadow:none;background:#ffffff8f;border-radius:15px;margin-bottom:32px;padding:14px 15px 15px}.student-week-navigation__heading{padding:0 1px 12px}.student-week-navigation__heading h2{margin-top:4px;font-size:1rem}.student-week-navigation__arrows button{border-color:var(--vc-ink);width:30px;height:30px;color:var(--vc-ink)}.student-week-navigation__arrows button:hover{border-color:var(--vc-ink);background:var(--vc-yellow);color:var(--vc-ink)}.student-week-strip{gap:7px;margin-top:13px}.student-week-day{border:1px solid var(--vc-line-2);background:#fff;border-radius:11px;min-height:78px}.student-week-day:hover{border-color:var(--vc-ink);background:var(--vc-pink);color:var(--vc-ink);transform:translateY(-1px)}.student-week-day.is-selected{border-color:var(--vc-ink);background:var(--vc-ink);box-shadow:3px 3px 0 var(--vc-coral)}.student-week-day.is-today:not(.is-selected){box-shadow:inset 0 -4px 0 var(--vc-yellow)}.student-goal-lanes{gap:26px}.student-goal-lane+.student-goal-lane{border-left:1px solid var(--vc-line-2);padding-left:26px}.student-goal-lane .goal-lane__heading{padding-bottom:13px}.student-goal-lane__kicker{color:var(--vc-coral-dark)}.student-goal-lane--vocab .student-goal-lane__kicker{color:var(--vc-blue)}.student-goal-lane .goal-lane__heading h3{font-size:1.28rem;line-height:1}.student-goal-lane__count{border:1px solid var(--vc-ink);background:var(--vc-yellow);width:27px;height:27px;color:var(--vc-ink)}.student-goal-lane--vocab .student-goal-lane__count{background:var(--vc-blue);color:#fff}.student-goal-lane .goal-card-grid{gap:10px;margin-top:13px}.student-goal-row{border:1px solid var(--vc-line-2);border-left:4px solid var(--vc-coral);background:#fff;border-radius:13px;align-items:center;min-height:102px;padding:16px 15px 16px 18px;position:relative;box-shadow:3px 3px #0b0b0d14}.student-goal-lane--vocab .student-goal-row{border-left-color:var(--vc-blue)}.student-goal-row:hover{border-color:var(--vc-ink);border-left-color:var(--vc-coral);box-shadow:4px 5px 0 var(--vc-ink);transform:translateY(-2px)}.student-goal-lane--vocab .student-goal-row:hover{border-left-color:var(--vc-blue)}.student-goal-row .goal-card__copy{gap:5px}.student-goal-row .goal-card__kind{color:var(--vc-ink-3);font-size:.55rem}.student-goal-row .goal-card__copy strong{font-size:.95rem}.student-goal-row__meta{font-size:.56rem}.student-goal-sets{max-width:100%}.student-goal-sets span{background:var(--vc-cream)}.student-goal-row__play{border:1.5px solid var(--vc-ink);border-radius:var(--vc-radius-pill);background:var(--vc-yellow);min-height:34px;box-shadow:2px 2px 0 var(--vc-ink);color:var(--vc-ink);padding:0 10px;font-size:.65rem}.student-goal-row__play:hover{border-color:var(--vc-ink);background:var(--vc-coral);color:#fff;transform:translateY(-1px)}.student-goal-row__game.is-playable{color:inherit}@media(max-width:1080px){.student-workspace-hero{grid-template-columns:minmax(260px,1fr) minmax(300px,.9fr);gap:18px}.student-workspace-summary{grid-template-columns:repeat(3,minmax(70px,1fr))}}@media(max-width:820px){.app-main:has(.student-workspace-page){padding-inline:20px}.student-workspace-hero{grid-template-columns:minmax(0,1fr) auto;gap:18px}.student-workspace-summary{border-top:1px solid var(--vc-line-2);grid-column:1/-1;width:100%;padding-top:10px}.student-workspace-summary>span{justify-content:center}.student-goal-lane+.student-goal-lane{border-top:1px solid var(--vc-line-2);border-left:0;padding-top:25px;padding-left:0}}@media(max-width:620px){.app-main:has(.student-workspace-page){padding:10px 14px 42px}.student-workspace-hero{grid-template-columns:1fr;padding-top:0}.student-workspace-hero .workspace-hero__identity{grid-template-columns:42px minmax(0,1fr)}.student-workspace-hero .language-token{width:42px;height:42px;box-shadow:2px 2px 0 var(--vc-ink)}.student-workspace-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.student-workspace-summary>span{padding-inline:5px}.student-workspace-summary>span:nth-child(2){border-left:0}.student-workspace-summary svg{display:none}.student-week-intro{flex-direction:column;align-items:flex-start}.student-today-meter{align-self:flex-start}.student-week-navigation{margin-inline:-2px;padding-inline:9px}.student-week-strip{grid-template-columns:repeat(7,minmax(68px,1fr));overflow-x:auto}.student-week-strip li{min-width:68px}.student-goal-row{flex-direction:column;align-items:flex-start}.student-goal-row__play{align-self:flex-start}}.student-goal-row__game-name{color:var(--vc-coral-dark);font-family:var(--vc-mono);letter-spacing:.04em;text-transform:uppercase;font-size:.57rem;font-weight:800}.student-goal-row__actions{justify-content:flex-end;align-items:center;gap:7px;display:flex}.student-goal-row__info,.student-goal-row__play{white-space:nowrap}.student-goal-row__info{border:1px solid var(--vc-line-2);border-radius:var(--vc-radius-pill);min-height:34px;color:var(--vc-ink-2);background:#fff;align-items:center;gap:5px;padding:0 8px;font-size:.64rem;font-weight:800;display:inline-flex}.student-goal-row__info:hover{border-color:var(--vc-ink);background:var(--vc-pink);color:var(--vc-ink)}.student-goal-info-backdrop{z-index:90;background:#0b0b0d61;place-items:center;padding:22px;display:grid;position:fixed;top:0;right:0;bottom:0;left:0}.student-goal-info{border:2px solid var(--vc-ink);background:var(--vc-cream);width:min(100%,520px);max-height:min(720px,100dvh - 44px);box-shadow:7px 7px 0 var(--vc-ink);border-radius:18px 14px 20px 15px;padding:24px;overflow:auto}.student-goal-info__header{border-bottom:1px solid var(--vc-line-2);justify-content:space-between;align-items:flex-start;gap:18px;padding-bottom:17px;display:flex}.student-goal-info__header h2{margin-top:5px;font-size:1.65rem;line-height:1.02}.student-goal-info__close{border:1px solid var(--vc-ink);width:32px;height:32px;color:var(--vc-ink);background:#fff;border-radius:50%;flex:none;place-items:center;display:grid}.student-goal-info__close:hover{background:var(--vc-yellow)}.student-goal-info__game{grid-template-columns:132px minmax(0,1fr);align-items:center;gap:14px;margin-top:18px;display:grid}.student-goal-info__game>picture{width:132px;height:68px;display:block}.student-goal-info__game img{border:1.5px solid var(--vc-ink);object-fit:cover;width:132px;height:68px;box-shadow:3px 3px 0 var(--vc-pink);border-radius:10px;display:block;overflow:hidden}.student-goal-info__game div{gap:3px;display:grid}.student-goal-info__game span,.student-goal-info__game small,.student-goal-info__section h3{font-family:var(--vc-mono);text-transform:uppercase}.student-goal-info__game span{color:var(--vc-coral-dark);letter-spacing:.1em;font-size:.56rem;font-weight:800}.student-goal-info__game strong{font-family:var(--vc-display);font-size:1.15rem}.student-goal-info__game small{color:var(--vc-ink-3);letter-spacing:.02em;font-size:.58rem;font-weight:700}.student-goal-info__description{color:var(--vc-ink-2);margin:18px 0 0;font-size:.82rem;line-height:1.55}.student-goal-info__section{border-top:1px solid var(--vc-line-2);margin-top:22px;padding-top:16px}.student-goal-info__section h3{color:var(--vc-ink-3);letter-spacing:.1em;margin:0 0 10px;font-size:.58rem;font-weight:800}.student-goal-info__section>p{color:var(--vc-ink-3);margin:0;font-size:.78rem}.student-goal-info__topics{flex-wrap:wrap;gap:6px;display:flex}.student-goal-info__topics span{border:1px solid var(--vc-ink);color:var(--vc-ink);background:#fff;border-radius:8px;padding:6px 8px;font-size:.68rem;font-weight:750}.student-goal-info__stats{border-top:1px solid var(--vc-line-2);border-left:1px solid var(--vc-line-2);grid-template-columns:repeat(5,minmax(0,1fr));margin:0;display:grid}.student-goal-info__stats div{border-right:1px solid var(--vc-line-2);border-bottom:1px solid var(--vc-line-2);gap:9px;min-width:0;padding:10px 8px;display:grid}.student-goal-info__stats dt{color:var(--vc-ink-3);font-family:var(--vc-mono);letter-spacing:.05em;text-transform:uppercase;font-size:.5rem;font-weight:800}.student-goal-info__stats dd{color:var(--vc-ink);font-family:var(--vc-display);margin:0;font-size:1rem;font-weight:800}@media(max-width:620px){.student-goal-row{grid-template-columns:minmax(0,1fr);gap:11px}.student-goal-row__actions{grid-column:1;justify-content:flex-start}.student-goal-info{padding:20px 17px}.student-goal-info__stats{grid-template-columns:repeat(2,minmax(0,1fr))}.student-goal-info__stats div:last-child{grid-column:1/-1}}.student-goal-row{background-color:#fff;background-image:linear-gradient(90deg,#fff,#fff 52%,#ffffffdb 70%,#fff8ec6b),var(--student-goal-image);background-position:50%,100%;background-repeat:no-repeat;background-size:100% 100%,42% 100%;grid-template-columns:minmax(0,1fr) auto;min-height:112px;animation:.36s cubic-bezier(.2,.8,.2,1) both student-goal-enter;display:grid;overflow:hidden;box-shadow:0 6px 18px #19123314}.student-goal-row .goal-card__copy,.student-goal-row__actions{z-index:1;position:relative}.student-goal-row:nth-child(2){animation-delay:55ms}.student-goal-row:nth-child(3){animation-delay:.11s}.student-goal-row:nth-child(4){animation-delay:.165s}.student-goal-row .goal-card__copy{min-width:0}.student-goal-row .goal-card__copy strong,.student-goal-row .student-goal-row__game-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.student-goal-row__actions{min-width:max-content}.student-goal-row:hover{background-position:50%,94%;box-shadow:0 10px 24px #1912331f}.student-goal-row__info,.student-goal-row__play{box-shadow:none;transition:transform .18s cubic-bezier(.2,.8,.2,1),background-color .16s,color .16s,border-color .16s}.student-goal-row__info:active,.student-goal-row__play:active{transform:translateY(1px)scale(.98)}.student-goal-row__play svg{transition:transform .18s cubic-bezier(.2,.8,.2,1)}.student-goal-row__play:hover svg{transform:translate(3px)}@keyframes student-goal-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.student-goal-info-backdrop{animation:.22s ease-out both student-info-backdrop-in}.student-goal-info{animation:.32s cubic-bezier(.2,.8,.2,1) both student-info-in}@keyframes student-info-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes student-info-in{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.student-workspace-hero{border-bottom:1.5px solid var(--vc-ink);grid-template-columns:minmax(0,1fr) auto;gap:28px;min-height:72px;padding:0 0 17px;display:grid}.student-workspace-hero:after{background:var(--vc-coral);content:"";width:58px;height:4px;position:absolute;bottom:-4px;right:0}.student-workspace-hero{position:relative}.student-workspace-hero .workspace-hero__identity{grid-template-columns:57px minmax(0,1fr);gap:11px}.student-workspace-hero .language-token{width:57px;height:42px;box-shadow:2px 2px 0 var(--vc-ink);border-radius:11px}.student-workspace-hero .student-section-kicker{margin-bottom:3px;font-size:.51rem}.student-workspace-hero h1{font-size:clamp(1.25rem,2vw,1.7rem);line-height:1.05}.student-workspace-hero p:not(.eyebrow){margin-top:4px;font-size:.7rem}.student-workspace-summary{background:0 0;border:0;align-items:center;gap:0;min-width:0;display:flex}.student-workspace-summary>span{grid-template-columns:auto 1fr;min-width:78px;min-height:38px;padding:3px 13px;display:grid}.student-workspace-summary>span+span{border-left:1px solid var(--vc-line-2)}.student-workspace-summary svg{display:none}.student-workspace-summary strong{font-size:.94rem}.student-workspace-summary small{font-size:.46rem}.student-workspace-tabs{margin-top:0}.student-workspace-page .workspace-panel{padding-top:38px}.student-week-intro h2{font-size:clamp(1.8rem,3.2vw,2.55rem)}@media(max-width:820px){.student-workspace-hero{grid-template-columns:1fr;gap:12px}.student-workspace-summary{border-top:1px solid var(--vc-line-2);justify-content:flex-start;width:100%;padding-top:9px}.student-workspace-summary>span{justify-content:start;min-width:84px;padding-inline:10px}.student-workspace-summary>span:first-of-type{padding-left:0}}@media(max-width:620px){.student-workspace-hero{min-height:0;padding-bottom:14px}.student-workspace-summary{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.student-workspace-summary>span{min-width:0;padding-inline:5px}.student-workspace-summary>span+span{border-left:1px solid var(--vc-line-2)}.student-workspace-summary>span:first-of-type{padding-left:0}.student-goal-row{background-image:linear-gradient(180deg,#fff,#fff 58%,#ffffffd6),var(--student-goal-image);background-position:50%,bottom;background-size:100% 100%,100% 42%;grid-template-columns:minmax(0,1fr);gap:11px}.student-goal-row:hover{background-position:50%,50% 96%}.student-goal-row__actions{grid-column:1;justify-content:flex-start}}@media(prefers-reduced-motion:reduce){.student-goal-row,.student-goal-info-backdrop,.student-goal-info{animation:none}.student-goal-row,.student-goal-row:hover{background-position:50%,100%}}.student-goal-tile{background-color:#fff;border:1px solid #0b0b0d29;border-radius:16px;min-width:0;min-height:148px;transition:box-shadow .22s,transform .22s cubic-bezier(.2,.8,.2,1);display:block;position:relative;overflow:hidden;box-shadow:0 5px 16px #19123312}.student-goal-tile__image-wrap{z-index:0;pointer-events:none;display:block;position:absolute;top:0;right:0;bottom:0;left:0}.student-goal-tile__image{object-fit:cover;object-position:center;width:43%;height:100%;display:block;position:absolute;inset:0 0 0 auto}.student-goal-tile--verb{border-left:3px solid var(--vc-coral)}.student-goal-tile--vocab{border-left:3px solid var(--vc-blue)}.student-goal-tile__body{animation:.38s cubic-bezier(.2,.8,.2,1) both student-tile-enter}.student-goal-tile:nth-child(2) .student-goal-tile__body{animation-delay:60ms}.student-goal-tile:nth-child(3) .student-goal-tile__body{animation-delay:.12s}.student-goal-tile:nth-child(4) .student-goal-tile__body{animation-delay:.18s}.student-goal-tile:hover{transform:translateY(-2px);box-shadow:0 11px 26px #1912331f}.student-goal-tile__body{z-index:1;background:#fff;border-right:1px solid #0b0b0d14;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:22px;width:72%;min-height:148px;padding:18px 20px;display:grid;position:relative}.student-goal-tile__copy{gap:5px;min-width:0;display:grid}.student-goal-tile__kind,.student-goal-tile__game-name{font-family:var(--vc-mono);text-transform:uppercase;font-weight:800}.student-goal-tile__kind{color:var(--vc-ink-3);letter-spacing:.09em;font-size:.53rem}.student-goal-tile__copy>strong{color:var(--vc-ink);font-family:var(--vc-display);text-overflow:ellipsis;white-space:nowrap;font-size:1.03rem;line-height:1.08;overflow:hidden}.student-goal-tile__game-name{color:var(--vc-coral-dark);letter-spacing:.05em;text-overflow:ellipsis;white-space:nowrap;font-size:.57rem;overflow:hidden}.student-goal-tile--vocab .student-goal-tile__game-name{color:var(--vc-blue)}.student-goal-tile__meta{color:var(--vc-ink-3);font-family:var(--vc-mono);flex-wrap:wrap;gap:5px 11px;font-size:.55rem;font-weight:700;display:flex}.student-goal-tile__sets{flex-wrap:wrap;gap:4px;max-width:100%;display:flex;overflow:hidden}.student-goal-tile__sets span{border:1px solid var(--vc-line-2);background:var(--vc-cream);max-width:45%;color:var(--vc-ink-3);text-overflow:ellipsis;white-space:nowrap;border-radius:6px;padding:3px 6px;font-size:.58rem;overflow:hidden}.student-goal-tile__actions{gap:7px;min-width:84px;display:grid}.student-goal-tile__info,.student-goal-tile__play{white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:6px;min-height:32px;padding:0 10px;font-size:.63rem;font-weight:800;transition:background-color .16s,border-color .16s,color .16s,transform .18s cubic-bezier(.2,.8,.2,1);display:inline-flex}.student-goal-tile__info{border:1px solid var(--vc-line-2);color:var(--vc-ink-2);background:#fff}.student-goal-tile__info:hover{border-color:var(--vc-ink);background:var(--vc-cream);color:var(--vc-ink);transform:translateY(-1px)}.student-goal-tile__play{border:1px solid var(--vc-ink);background:var(--vc-yellow);color:var(--vc-ink);text-decoration:none}.student-goal-tile__play:hover{background:var(--vc-coral);color:#fff;transform:translateY(-1px)}.student-goal-tile__play svg{transition:transform .18s cubic-bezier(.2,.8,.2,1)}.student-goal-tile__play:hover svg{transform:translate(3px)}.student-goal-tile__game{align-items:center;gap:5px;display:inline-flex}@keyframes student-tile-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:900px){.student-goal-tile__body{gap:15px;width:82%}}@media(max-width:620px){.student-goal-tile{min-height:228px}.student-goal-tile__image{object-position:center bottom;width:100%;height:40%;inset:auto 0 0}.student-goal-tile__body{background:linear-gradient(#fff,#fff 61%,#ffffffdb);border-right:0;grid-template-columns:1fr;gap:13px;width:100%;min-height:228px;padding:17px}.student-goal-tile__actions{justify-content:flex-start;display:flex}.student-goal-tile__sets span{max-width:48%}}@media(prefers-reduced-motion:reduce){.student-goal-tile__body,.student-goal-tile:hover,.student-goal-tile__info,.student-goal-tile__play{transition:none;animation:none;transform:none}}.student-goal-lane .goal-card-grid{grid-template-columns:minmax(0,1fr)}.student-goal-tile__copy>strong{text-overflow:clip;white-space:normal;overflow:visible}.student-goal-tile__sets span{max-width:100%}.student-month-rail{grid-template-columns:30px minmax(0,1fr) 30px;align-items:center;gap:8px;margin:0 0 12px;display:grid}.student-month-rail>button{border:1px solid var(--vc-line-2);width:30px;height:30px;color:var(--vc-ink-2);background:#fff;border-radius:50%;place-items:center;display:grid}.student-month-rail>button:hover{border-color:var(--vc-ink);background:var(--vc-yellow);color:var(--vc-ink)}.student-month-rail__items{scrollbar-width:none;gap:4px;min-width:0;display:flex;overflow-x:auto}.student-month-rail__items::-webkit-scrollbar{display:none}.student-month-rail__items button{min-width:58px;min-height:39px;color:var(--vc-ink-3);background:0 0;border:1px solid #0000;border-radius:8px;flex:none;place-items:center;gap:1px;padding:4px 7px;display:grid}.student-month-rail__items button:hover{background:var(--vc-pink);color:var(--vc-ink)}.student-month-rail__items button.is-current{border-color:var(--vc-ink);background:var(--vc-yellow);color:var(--vc-ink)}.student-month-rail__items strong{font-family:var(--vc-display);font-size:.75rem;line-height:1}.student-month-rail__items small{font-family:var(--vc-mono);font-size:.5rem;font-weight:700}.student-week-navigation__arrows button:disabled,.student-month-rail button:disabled{cursor:progress;opacity:.45}.student-week-loading{border:1px solid var(--vc-line-2);min-height:32px;color:var(--vc-ink-3);font-family:var(--vc-mono);letter-spacing:.04em;text-transform:uppercase;background:#fff;border-radius:9px;align-items:center;gap:8px;margin:-13px 0 13px;padding:6px 10px;font-size:.58rem;font-weight:800;display:flex}.student-week-loading .inline-loader{width:32px;min-width:32px}.student-week-day{transition:border-color .16s,background-color .18s,color .18s,transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s}.student-week-day.is-selected{animation:.26s cubic-bezier(.2,.8,.2,1) both student-day-select}@keyframes student-day-select{0%{opacity:.7;transform:translateY(4px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@media(max-width:620px){.student-month-rail{grid-template-columns:28px minmax(0,1fr) 28px;gap:5px}.student-month-rail__items button{min-width:53px}}@media(prefers-reduced-motion:reduce){.student-week-day.is-selected{animation:none}}.set-create{border:2px solid var(--vc-ink);background:var(--vc-yellow);box-shadow:5px 5px 0 var(--vc-ink);border-radius:22px 16px 24px 18px;grid-template-columns:minmax(0,1.15fr) minmax(220px,.85fr) minmax(250px,1fr) auto;align-items:end;gap:18px;margin-bottom:30px;padding:20px;display:grid}.set-create__intro{grid-column:1/-1;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:13px;padding-bottom:2px;display:grid}.set-create__icon{border:2px solid var(--vc-ink);background:var(--vc-pink);width:44px;height:44px;box-shadow:2px 2px 0 var(--vc-ink);border-radius:50%;place-items:center;display:grid}.set-create__intro h2{font-family:var(--vc-display);margin:0;font-size:1.55rem;line-height:1}.set-create__intro p{color:var(--vc-ink-3);margin:5px 0 0;font-size:.72rem;line-height:1.4}.set-create__categories{grid-column:1/-1}.set-create__categories legend,.set-create__languages legend,.set-create__name>span{min-height:20px;font-family:var(--vc-mono);letter-spacing:.06em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;font-size:.57rem;font-weight:900;display:flex}.set-create__categories legend span,.set-create__languages legend span{color:var(--vc-ink-3);font-family:var(--vc-font);letter-spacing:0;text-transform:none;font-size:.61rem;font-weight:700}.set-category-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.set-category{border:1.5px solid var(--vc-ink);cursor:pointer;background:#fff;border-radius:12px 9px 13px 10px;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:9px;min-width:0;min-height:64px;padding:9px 10px;transition:background-color .15s,box-shadow .15s,transform .15s;display:grid}.set-category.is-selected{background:var(--vc-green-soft);box-shadow:3px 3px 0 var(--vc-ink);transform:translateY(-1px)}.set-category:has(input:focus-visible),.set-create__languages label:has(input:focus-visible){outline-offset:2px;outline:3px solid #e679a78c}.set-category__icon{border:1.5px solid var(--vc-ink);background:var(--vc-purple-soft);border-radius:9px 6px 10px 7px;place-items:center;width:30px;height:30px;display:grid}.set-category.is-selected .set-category__icon{background:var(--vc-pink)}.set-category__copy strong{text-overflow:ellipsis;white-space:nowrap;font-size:.69rem;overflow:hidden}.set-create__name{align-self:start;gap:7px;display:grid}.set-create__name input:focus{background:var(--vc-purple-soft)}.set-create__languages{align-self:start}.set-create__languages label{border:2px solid var(--vc-ink);cursor:pointer;background:#fff;border-radius:11px 8px 12px 9px;align-items:center;gap:7px;min-height:47px;padding:0 9px;font-size:.64rem;font-weight:850;display:flex}.set-create__languages label.is-selected{background:var(--vc-green-soft);box-shadow:3px 3px 0 var(--vc-ink);transform:translateY(-1px)}.set-create__submit{border:2px solid var(--vc-ink);background:var(--vc-blue);min-height:49px;box-shadow:4px 4px 0 var(--vc-pink);color:#fff;white-space:nowrap;border-radius:12px 9px 13px 10px;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-size:.68rem;font-weight:900;transition:transform .16s,box-shadow .16s;display:inline-flex}.set-create__submit:hover:not(:disabled){box-shadow:6px 6px 0 var(--vc-pink);transform:translate(-2px,-2px)}.set-create__submit:disabled{box-shadow:none;opacity:.5}.set-create__error{color:var(--vc-coral-dark);grid-column:1/-1;margin:-4px 0 0;font-size:.7rem;font-weight:850}.vocab-library-page,.vocab-set-page{width:min(100%,1320px);margin:0 auto;padding-bottom:38px}.vocab-library-heading{border:2px solid var(--vc-ink);background:var(--vc-pink);min-height:230px;box-shadow:7px 7px 0 var(--vc-ink);border-radius:22px 30px 20px 28px;grid-template-columns:minmax(0,1fr) 240px;align-items:center;gap:28px;margin-bottom:22px;padding:26px 30px;display:grid;position:relative;overflow:hidden}.vocab-library-heading>div:first-child{z-index:1;min-width:0;position:relative}.vocab-library-heading .back-link{border-color:var(--vc-ink);background:var(--vc-cream);color:var(--vc-ink);margin-bottom:16px}.vocab-library-heading .eyebrow{color:var(--vc-ink)}.vocab-library-heading h1{color:var(--vc-ink);font-family:var(--vc-display);margin:0;font-size:3.35rem;font-weight:850;line-height:.92}.vocab-library-heading>div:first-child>p:last-child{color:#0b0b0dc7;max-width:610px;margin:13px 0 0;font-size:.84rem;line-height:1.5}.vocab-library-heading__art{aspect-ratio:1.28;border:2px solid var(--vc-ink);background:var(--vc-yellow);width:220px;box-shadow:6px 6px 0 var(--vc-ink);border-radius:17px 24px 19px 27px;justify-self:end;place-items:center;display:grid;position:relative;transform:rotate(-2deg)}.vocab-library-heading__art img{object-fit:contain;width:72%;height:72%;transform:rotate(2deg)}.vocab-library-heading__art i,.vocab-library-heading__art span{border:2px solid var(--vc-ink);color:var(--vc-ink);place-items:center;font-style:normal;font-weight:950;display:grid;position:absolute}.vocab-library-heading__art i{background:var(--vc-green-soft);border-radius:10px 8px 12px 9px;width:48px;height:42px;top:-13px;right:17px}.vocab-library-heading__art span{background:var(--vc-blue);color:#fff;border-radius:50%;width:48px;height:39px;bottom:17px;right:-10px}.vocab-collection{border-top:2px solid var(--vc-ink);margin-top:30px;padding-top:24px}.vocab-collection__head{justify-content:space-between;align-items:end;gap:20px;margin-bottom:15px;display:flex}.vocab-collection__head h2{font-family:var(--vc-display);margin:0;font-size:2rem;line-height:1}.vocab-collection__head>span{border:2px solid var(--vc-ink);background:var(--vc-green-soft);font-family:var(--vc-mono);border-radius:999px;padding:6px 9px;font-size:.58rem;font-weight:900}.vocab-library-search{border:2px solid var(--vc-ink);box-shadow:4px 4px 0 var(--vc-yellow);background:#fff;border-radius:14px 10px 15px 11px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;margin-bottom:17px;padding:6px 7px 6px 13px;display:grid}.vocab-library-search input{background:0 0;border:0;outline:0;min-height:42px;font-size:.78rem}.vocab-library-search button{border:2px solid var(--vc-ink);background:var(--vc-pink);border-radius:50%;place-items:center;width:38px;height:38px;padding:0;display:grid}.vocab-set-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.vocab-set-card{border:2px solid var(--vc-ink);min-width:0;min-height:205px;box-shadow:4px 4px 0 var(--vc-pink);animation:vocab-card-in .3s calc(var(--vocab-card-order) * 32ms) ease-out both;background:#fff;border-radius:16px 12px 18px 14px;gap:13px;padding:17px;text-decoration:none;transition:transform .17s,box-shadow .17s,background-color .17s;display:grid;position:relative}.vocab-set-card:hover{background:var(--vc-purple-soft);box-shadow:7px 7px 0 var(--vc-ink);transform:translate(-2px,-2px)}.vocab-set-card__language{font-family:var(--vc-mono);letter-spacing:.03em;text-transform:uppercase;align-items:center;gap:7px;font-size:.57rem;font-weight:900;display:flex}.vocab-set-card__copy{min-width:0}.vocab-set-card__copy h3{overflow-wrap:anywhere;font-family:var(--vc-display);margin:0;font-size:1.3rem;line-height:1.05}.vocab-set-card__copy p{color:var(--vc-ink-3);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:8px 0 0;font-size:.68rem;line-height:1.4;display:-webkit-box;overflow:hidden}.vocab-set-card__foot{border-top:1.5px solid var(--vc-ink);grid-template-columns:auto minmax(0,1fr) 36px;align-self:end;align-items:end;gap:8px;padding-top:12px;display:grid}.vocab-set-card__foot>span{align-items:center;gap:6px;font-size:.65rem;font-weight:850;display:flex}.vocab-set-card__foot time{color:var(--vc-ink-3);text-align:right;text-overflow:ellipsis;white-space:nowrap;font-size:.57rem;overflow:hidden}.vocab-set-card__foot i{border:1.5px solid var(--vc-ink);background:var(--vc-blue);color:#fff;border-radius:50%;place-items:center;width:34px;height:34px;font-style:normal;display:grid}.vocab-library-empty{border:2px dashed var(--vc-ink);background:#fff;border-radius:17px 12px 19px 14px;justify-content:center;align-items:center;gap:13px;min-height:124px;padding:22px;display:flex}.vocab-library-empty strong{font-size:.86rem}.vocab-library-empty p{color:var(--vc-ink-3);margin:4px 0 0;font-size:.72rem}@keyframes vocab-card-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media(max-width:1080px){.set-create{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.set-create__name,.set-create__languages{align-self:start}.set-create__submit{align-self:stretch}.vocab-set-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:780px){.set-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.set-create__submit{width:100%}.vocab-library-heading{grid-template-columns:minmax(0,1fr) 135px;min-height:190px;padding:22px}.vocab-library-heading h1{font-size:2.7rem}.vocab-library-heading__art{width:130px}}@media(max-width:560px){.set-create{grid-template-columns:1fr;padding:15px}.set-category-grid,.set-create__languages>div{grid-template-columns:1fr}.vocab-library-heading{grid-template-columns:1fr;gap:16px;padding:18px}.vocab-library-heading h1{font-size:2.35rem}.vocab-library-heading__art{display:none}.vocab-set-grid{grid-template-columns:1fr}.vocab-set-card{min-height:185px}}@media(prefers-reduced-motion:reduce){.set-category,.set-create__languages label,.vocab-set-card{transition:none;animation:none}.set-category.is-selected,.set-create__languages label.is-selected,.vocab-set-card:hover{transform:none}}.verb-library-page,.vocab-library-page{width:min(100%,1160px);margin:0 auto;padding:24px 0 72px}.set-library-header{--set-accent:var(--vc-blue);--set-accent-soft:var(--vc-purple-soft);border-bottom:1px solid var(--vc-line-2);grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:32px;margin-bottom:28px;padding:0 0 25px;animation:.36s ease-out both set-library-in;display:grid}.set-library-header--vocab{--set-accent:var(--vc-coral);--set-accent-soft:var(--vc-coral-soft)}.set-library-header>div:first-child{min-width:0}.set-library-header .back-link{color:var(--vc-ink-3);box-shadow:none;background:0 0;border:0;margin-bottom:25px;padding:0;font-size:.68rem;display:inline-flex}.set-library-header .back-link:hover{color:var(--vc-ink);background:0 0;transform:none}.set-library-header h1{color:var(--vc-ink);font-family:var(--vc-display);letter-spacing:0;margin:0;font-size:3.6rem;font-weight:800;line-height:.94}.set-library-header p{max-width:38rem;color:var(--vc-ink-3);margin:13px 0 0;font-size:.82rem;line-height:1.5}.set-library-header__stat{border-left:3px solid var(--set-accent);min-width:110px;color:var(--vc-ink-3);grid-template-columns:auto auto;align-items:center;gap:0 9px;padding:7px 0 7px 18px;display:grid}.set-library-header__stat svg{color:var(--set-accent);grid-row:1/span 2}.set-library-header__stat strong{color:var(--vc-ink);font-family:var(--vc-display);font-size:2rem;line-height:.9}.set-library-header__stat span{font-size:.65rem}.set-create{--set-accent:var(--vc-blue);--set-accent-soft:var(--vc-purple-soft);border:1px solid var(--vc-line-2);background:var(--vc-surface);border-radius:18px;grid-template-columns:250px minmax(0,1fr);align-items:stretch;margin-bottom:54px;animation:.42s ease-out 50ms both set-library-in;display:grid;overflow:hidden;box-shadow:0 12px 28px #0b0b0d12}.set-create--vocab{--set-accent:var(--vc-coral);--set-accent-soft:var(--vc-coral-soft)}.set-create__rail{border-right:1px solid var(--vc-line);background:var(--set-accent-soft);flex-direction:column;gap:16px;min-width:0;padding:28px 24px 24px;display:flex}.set-create__rail-icon{border:1px solid var(--set-accent);width:42px;height:42px;color:var(--set-accent);background:#fff;border-radius:10px;place-items:center;display:grid}.set-create__rail h2{color:var(--vc-ink);font-family:var(--vc-display);margin:0;font-size:1.6rem;line-height:1.02}.set-create__rail p{color:var(--vc-ink-3);margin:8px 0 0;font-size:.72rem;line-height:1.5}.set-create__focus{border-top:1px solid var(--vc-line-2);margin-top:auto;padding-top:22px}.set-create__focus span{color:var(--vc-ink-3);margin-bottom:7px;font-size:.62rem;font-weight:800;display:block}.set-create__focus strong{color:var(--vc-ink);font-size:.84rem;line-height:1.2;display:block}.set-create__focus small{color:var(--vc-ink-3);margin-top:6px;font-size:.63rem;line-height:1.4;display:block}.set-create__main{min-width:0;padding:27px 29px 25px}.set-create__categories,.set-create__languages{border:0;min-width:0;margin:0;padding:0}.set-create__categories legend,.set-create__languages legend{width:100%;min-height:22px;color:var(--vc-ink);justify-content:space-between;align-items:center;gap:12px;margin:0 0 10px;padding:0;font-size:.79rem;font-weight:850;display:flex}.set-create__categories legend small{color:var(--vc-ink-3);font-size:.62rem;font-weight:600}.set-category-grid{border-top:1px solid var(--vc-line);grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;display:grid}.set-category{border:0;border-bottom:1px solid var(--vc-line);cursor:pointer;background:0 0;border-radius:0;grid-template-columns:30px minmax(0,1fr) 18px;align-items:center;gap:10px;min-width:0;min-height:66px;padding:10px 7px;transition:background-color .15s,border-color .15s;display:grid;position:relative}.set-category:hover{background:#0b0b0d06}.set-category.is-selected{border-left:3px solid var(--set-accent);background:var(--set-accent-soft);padding-left:4px}.set-category input,.set-create__languages input{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.set-category:has(input:focus-visible),.set-create__languages label:has(input:focus-visible){outline:3px solid var(--set-accent)}@supports (color:color-mix(in lab,red,red)){.set-category:has(input:focus-visible),.set-create__languages label:has(input:focus-visible){outline:3px solid color-mix(in srgb,var(--set-accent) 35%,transparent)}}.set-category:has(input:focus-visible),.set-create__languages label:has(input:focus-visible){outline-offset:2px}.set-category__icon{border:1px solid var(--vc-line-2);width:30px;height:30px;color:var(--vc-ink-3);background:#fff;border-radius:8px;place-items:center;display:grid}.set-category.is-selected .set-category__icon{border-color:var(--set-accent);color:var(--set-accent)}.set-category__copy{gap:3px;min-width:0;display:grid}.set-category__copy strong{color:var(--vc-ink);text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;overflow:hidden}.set-category__copy small{color:var(--vc-ink-3);text-overflow:ellipsis;white-space:nowrap;font-size:.61rem;line-height:1.3;overflow:hidden}.set-category__check{color:var(--set-accent);opacity:0;place-items:center;display:grid}.set-category.is-selected .set-category__check{opacity:1}.set-create__details{border-top:1px solid var(--vc-line-2);grid-template-columns:minmax(0,1.2fr) minmax(240px,.8fr);gap:22px;margin-top:25px;padding-top:23px;display:grid}.set-create__name{align-content:start;gap:7px;display:grid}.set-create__name>span,.set-create__languages legend{font-size:.7rem}.set-create__name input{border:1px solid var(--vc-line-2);width:100%;min-height:45px;color:var(--vc-ink);box-shadow:none;background:#fff;border-radius:9px;outline:0;padding:0 12px;font-size:.76rem}.set-create__name input:focus{border-color:var(--set-accent);box-shadow:0 0 0 3px var(--set-accent-soft)}.set-create__name small,.set-create__languages>small{color:var(--vc-ink-3);font-size:.61rem;line-height:1.35}.set-create__languages>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.set-create__languages label{border:1px solid var(--vc-line-2);min-height:45px;color:var(--vc-ink-3);cursor:pointer;background:#fff;border-radius:9px;align-items:center;gap:7px;padding:0 9px;font-size:.63rem;font-weight:800;transition:background-color .15s,border-color .15s,color .15s;display:flex}.set-create__languages label.is-selected{border-color:var(--set-accent);background:var(--set-accent-soft);color:var(--vc-ink)}.set-create__languages label .flag{border:1px solid var(--vc-line-2);border-radius:2px;flex:none;overflow:hidden}.set-create__languages>small{margin-top:7px;display:block}.set-create__actions{border-top:1px solid var(--vc-line);justify-content:space-between;align-items:center;gap:18px;margin-top:24px;padding-top:19px;display:flex}.set-create__actions>small{max-width:33ch;color:var(--vc-ink-3);font-size:.62rem;line-height:1.4}.set-create__submit{border:1px solid var(--set-accent);background:var(--set-accent);color:#fff;white-space:nowrap;border-radius:9px;flex:none;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 16px;font-size:.68rem;font-weight:850;transition:transform .15s,background-color .15s;display:inline-flex}.set-create__submit:hover:not(:disabled){background:var(--set-accent)}@supports (color:color-mix(in lab,red,red)){.set-create__submit:hover:not(:disabled){background:color-mix(in srgb,var(--set-accent) 88%,var(--vc-ink))}}.set-create__submit:hover:not(:disabled){transform:translateY(-1px)}.set-create__submit:active:not(:disabled){transform:translateY(1px)}.set-create__submit:disabled{opacity:.45}.set-create__error{color:var(--vc-coral-dark);margin:16px 0 0;font-size:.68rem;font-weight:800}.set-collection{margin-top:0}.set-collection__head{justify-content:space-between;align-items:end;gap:20px;margin-bottom:19px;display:flex}.set-collection__head h2{color:var(--vc-ink);font-family:var(--vc-display);margin:0;font-size:1.85rem;line-height:1}.set-collection__head p{color:var(--vc-ink-3);margin:7px 0 0;font-size:.7rem;line-height:1.4}.set-collection__head>span{color:var(--vc-ink-3);font-family:var(--vc-mono);flex:none;font-size:.6rem}.set-search{border-bottom:1px solid var(--vc-line-2);width:min(100%,440px);color:var(--vc-ink-3);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;margin:0 0 14px auto;padding:0 0 9px;display:grid}.set-search input{min-height:35px;color:var(--vc-ink);background:0 0;border:0;outline:0;font-size:.72rem}.set-search input::placeholder{color:var(--vc-ink-3);opacity:.85}.set-search button{border:1px solid var(--vc-line-2);width:27px;height:27px;color:var(--vc-ink-3);background:0 0;border-radius:50%;place-items:center;padding:0;display:grid}.set-search button:hover{border-color:var(--vc-ink);color:var(--vc-ink)}.set-list{border-top:1px solid var(--vc-line-2)}.set-list-row{--set-accent:var(--vc-blue);--set-accent-soft:var(--vc-purple-soft);border-bottom:1px solid var(--vc-line);min-width:0;color:var(--vc-ink);animation:set-row-in .28s calc(var(--set-row-order) * 24ms) ease-out both;grid-template-columns:40px minmax(0,1fr) auto 28px;align-items:center;gap:17px;padding:15px 5px 15px 0;text-decoration:none;transition:background-color .15s,padding-left .15s;display:grid}.set-list-row--vocab{--set-accent:var(--vc-coral);--set-accent-soft:var(--vc-coral-soft)}.set-list-row:hover{background:#0b0b0d06;padding-left:9px}.set-list-row:focus-visible{outline:3px solid var(--set-accent);outline-offset:2px}.set-list-row__mark{border:1px solid var(--set-accent);place-items:center;width:38px;height:38px;display:grid}@supports (color:color-mix(in lab,red,red)){.set-list-row__mark{border:1px solid color-mix(in srgb,var(--set-accent) 32%,var(--vc-line-2))}}.set-list-row__mark{background:var(--set-accent-soft);color:var(--set-accent);border-radius:9px}.set-list-row__main{gap:5px;min-width:0;display:grid}.set-list-row__main strong{text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.set-list-row__main small{color:var(--vc-ink-3);-webkit-line-clamp:1;-webkit-box-orient:vertical;font-size:.65rem;line-height:1.4;display:-webkit-box;overflow:hidden}.set-list-row__meta{color:var(--vc-ink-3);white-space:nowrap;justify-content:flex-end;align-items:center;gap:18px;font-size:.62rem;display:flex}.set-list-row__language{color:var(--vc-ink);align-items:center;gap:6px;font-weight:750;display:inline-flex}.set-list-row__language .flag{border:1px solid var(--vc-line-2);border-radius:2px;overflow:hidden}.set-list-row__count{color:var(--vc-ink-3)}.set-list-row__meta time{text-align:right;min-width:78px}.set-list-row__arrow{border:1px solid var(--vc-line-2);width:28px;height:28px;color:var(--set-accent);border-radius:50%;place-items:center;transition:transform .15s,background-color .15s;display:grid}.set-list-row:hover .set-list-row__arrow{background:var(--set-accent-soft);transform:translate(2px)}.set-library-empty{border:1px dashed var(--vc-line-2);min-height:120px;color:var(--vc-ink-3);justify-content:center;align-items:center;gap:12px;padding:24px;display:flex}.set-library-empty strong{color:var(--vc-ink);font-size:.78rem;display:block}.set-library-empty p{margin:5px 0 0;font-size:.68rem}@keyframes set-library-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes set-row-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}@media(max-width:900px){.verb-library-page,.vocab-library-page{padding:18px 0 54px}.set-create{grid-template-columns:1fr}.set-create__rail{border-right:0;border-bottom:1px solid var(--vc-line);grid-template-columns:42px minmax(0,1fr);gap:0 13px;display:grid}.set-create__rail-icon{grid-row:span 2}.set-create__focus{grid-column:1/-1;margin-top:22px}}@media(max-width:700px){.set-library-header{grid-template-columns:1fr;gap:21px}.set-library-header h1{font-size:2.85rem}.set-library-header__stat{justify-self:start}.set-create__main{padding:22px 19px 20px}.set-category-grid{grid-template-columns:1fr}.set-create__details{grid-template-columns:1fr;gap:20px}.set-create__actions{flex-direction:column;align-items:stretch}.set-create__actions>small{max-width:none}.set-create__submit{width:100%}.set-list-row{grid-template-columns:38px minmax(0,1fr) 28px;gap:11px;padding:14px 0}.set-list-row:hover{padding-left:0}.set-list-row__mark{width:36px;height:36px}.set-list-row__meta{flex-wrap:wrap;grid-column:2/-1;justify-content:flex-start;gap:5px 13px;font-size:.6rem}.set-list-row__meta time{text-align:left;min-width:0}.set-list-row__arrow{grid-area:1/3}}@media(max-width:430px){.verb-library-page,.vocab-library-page{padding-inline:2px}.set-library-header h1{font-size:2.5rem}.set-library-header .back-link{margin-bottom:20px}.set-create__rail{padding:22px 18px 20px}.set-create__languages>div{grid-template-columns:1fr}.set-collection__head{flex-direction:column;align-items:flex-start;gap:8px}.set-search{width:100%}}@media(prefers-reduced-motion:reduce){.set-library-header,.set-create,.set-list-row{animation:none}.set-category,.set-create__languages label,.set-list-row,.set-list-row__arrow{transition:none}}.auth-page{--auth-muted:#4b5563;--auth-border:#0b0b0d33;background:var(--vc-cream);min-height:100dvh}.auth-page .auth-page__header{border-bottom:1px solid var(--auth-border);justify-content:space-between;align-items:center;width:min(1040px,100% - 40px);min-height:72px;margin:0 auto;display:flex}.auth-page .auth-page__brand{width:158px;color:var(--vc-ink);text-decoration:none;display:inline-flex}.auth-page .auth-page__brand img{filter:none;width:100%;height:auto;display:block}.auth-page__header-switch{color:var(--auth-muted);align-items:center;gap:8px;font-size:.72rem;display:inline-flex}.auth-page__header-link{color:var(--vc-ink);text-decoration:underline;-webkit-text-decoration-color:var(--vc-orange);text-decoration-color:var(--vc-orange);text-underline-offset:4px;font-weight:800;text-decoration-thickness:2px}.auth-page__header-link:hover{color:#8a5500}.auth-page .auth-page__back-row{width:min(960px,100% - 40px);margin:18px auto 0}.auth-page .auth-page__back{min-height:32px;color:var(--auth-muted);align-items:center;gap:7px;font-size:.72rem;font-weight:750;text-decoration:none;display:inline-flex}.auth-page__aside-top{color:var(--auth-muted);font-family:var(--vc-mono);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:9px;font-size:.62rem;font-weight:700;display:flex}.auth-page__aside-dot{background:var(--vc-orange);border-radius:50%;width:8px;height:8px;display:block}.auth-page__aside-kicker{color:#8a5500;letter-spacing:.08em;text-transform:uppercase;margin:30px 0 10px;font-size:.68rem;font-weight:850}.auth-page .auth-page__aside h2{max-width:420px;color:var(--vc-ink);font-family:var(--vc-display);letter-spacing:-.045em;margin:0;font-size:clamp(2.6rem,5vw,4.25rem);font-weight:800;line-height:.94}.auth-page__aside-lead{max-width:38ch;color:var(--auth-muted);margin:16px 0 0;font-size:.9rem;line-height:1.55}.auth-page .auth-page__panel{border:1px solid var(--auth-border);background:var(--vc-surface);border-radius:14px;width:100%;padding:28px;box-shadow:4px 4px #0b0b0d1a}.auth-page__panel-topline{align-items:center;min-height:18px;display:flex}.auth-page__eyebrow{color:#8a5500;letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:7px;font-size:.68rem;font-weight:850;display:inline-flex}.auth-page__intro{margin:11px 0 24px}.auth-page .auth-page__intro h1{color:var(--vc-ink);font-family:var(--vc-display);letter-spacing:-.025em;margin:0;font-size:clamp(2rem,4vw,2.35rem);line-height:1}.auth-page .auth-page__intro p{max-width:38ch;color:var(--auth-muted);margin:9px 0 0;font-size:.82rem;line-height:1.5}.auth-page__error{border:1px solid #edc0b3;border-left:3px solid var(--vc-coral);color:#762b1c;background:#fff5f1;border-radius:6px;margin:0 0 18px;padding:11px 12px;font-size:.76rem;line-height:1.45}.auth-fast-login{border:1px solid var(--auth-border);background:#fffaf0;border-radius:10px;gap:12px;margin:0 0 22px;padding:14px;display:grid}.auth-fast-login__intro h2{color:var(--vc-ink);font-family:var(--vc-display);letter-spacing:-.01em;margin:0;font-size:1rem}.auth-fast-login__intro p{color:var(--auth-muted);margin:4px 0 0;font-size:.7rem;line-height:1.4}.auth-fast-login__actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.auth-fast-login__form{min-width:0}.auth-fast-login__button{border:1px solid var(--auth-border);background:var(--vc-surface);width:100%;min-height:58px;color:var(--vc-ink);cursor:pointer;font:inherit;text-align:left;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;padding:9px 10px;transition:border-color .15s,background-color .15s,transform .15s;display:grid}.auth-fast-login__button:hover{border-color:var(--vc-ink);background:#fff;transform:translateY(-1px)}.auth-fast-login__button:active{transform:translateY(0)}.auth-fast-login__button>svg:first-child{color:var(--vc-orange)}.auth-fast-login__form:last-child .auth-fast-login__button>svg:first-child{color:var(--vc-blue)}.auth-fast-login__identity{gap:2px;min-width:0;display:grid}.auth-fast-login__identity strong{text-overflow:ellipsis;white-space:nowrap;font-size:.74rem;font-weight:850;overflow:hidden}.auth-fast-login__identity small{color:var(--auth-muted);font-family:var(--vc-mono);text-overflow:ellipsis;white-space:nowrap;font-size:.57rem;overflow:hidden}.auth-form__name-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.auth-form__field{gap:6px;display:grid}.auth-form__field>label{color:var(--vc-ink);font-size:.74rem;font-weight:800}.auth-form__field input,.auth-form__field select{width:100%;min-height:48px;color:var(--vc-ink);font:inherit;background:#fff;border:1px solid #9ca3af;border-radius:8px;outline:0;padding:0 12px;font-size:.82rem;transition:border-color .15s,box-shadow .15s}.auth-form__field input:hover,.auth-form__field select:hover{border-color:#6b7280}.auth-form__field input:focus-visible,.auth-form__field select:focus-visible{border-color:#8a5500;box-shadow:0 0 0 3px #cc880038}.auth-form__field small{color:var(--auth-muted);font-size:.66rem;line-height:1.4;display:block}.auth-page .auth-form__submit{border:1px solid var(--vc-ink);background:var(--vc-yellow);width:100%;min-height:48px;color:var(--vc-ink);cursor:pointer;font:inherit;border-radius:8px;justify-content:center;align-items:center;gap:8px;margin-top:2px;font-size:.78rem;font-weight:850;transition:background-color .15s;display:inline-flex}.auth-page .auth-form__submit:hover:not(:disabled){background:#e8b800}.auth-page .auth-form__submit:disabled{cursor:progress;opacity:.68}.auth-page__note{color:var(--auth-muted);margin:13px 0 0;font-size:.66rem;line-height:1.4}.auth-page__separator{color:var(--auth-muted);align-items:center;gap:10px;margin:22px 0 14px;font-size:.65rem;display:flex}.auth-page__separator:before,.auth-page__separator:after{content:"";background:var(--vc-line);flex:1;height:1px}.auth-page .login-providers{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.auth-page .login-provider{width:100%;min-height:46px;color:var(--vc-ink);cursor:pointer;font:inherit;background:#fff;border:1px solid #9ca3af;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:0 10px;font-size:.7rem;font-weight:800;text-decoration:none;transition:border-color .15s,background-color .15s;display:inline-flex}.auth-page .login-provider:not(:disabled):hover{border-color:var(--vc-ink);box-shadow:none;background:#faf9f5;transform:none}.auth-page .login-provider:not(:disabled):active{transform:none}.auth-page .login-provider:disabled{cursor:not-allowed;opacity:.58}.auth-page .login-provider__mark{width:18px;height:18px}.auth-page .login-provider__prefix{margin-right:.2em}.auth-page .login-providers__status{color:var(--auth-muted);text-align:center;margin:9px 0 0;font-size:.66rem;line-height:1.4}.auth-page a:focus-visible,.auth-page button:focus-visible{outline-offset:2px;outline:3px solid #cc88006b}@media(max-width:820px){.auth-page .auth-page__content{grid-template-columns:1fr;gap:28px;width:min(500px,100% - 32px);margin-top:28px}.auth-page .auth-page__panel{order:1}.auth-page .auth-page__aside{border-top:1px solid var(--auth-border);order:2;max-width:none;padding:20px 0 0}.auth-page__aside-kicker{margin-top:18px}.auth-page .auth-page__aside h2{max-width:500px;font-size:clamp(2.25rem,9vw,3.5rem)}}@media(max-width:560px){.auth-page .auth-page__header,.auth-page .auth-page__back-row{width:calc(100% - 32px)}.auth-page .auth-page__header{min-height:64px}.auth-page .auth-page__brand{width:144px}.auth-page__header-switch>span{display:none}.auth-page .auth-page__back-row{margin-top:14px}.auth-page .auth-page__content{width:calc(100% - 32px);margin-top:22px}.auth-page .auth-page__panel{border-radius:10px;padding:20px 16px;box-shadow:3px 3px #0b0b0d14}.auth-form__name-grid,.auth-page .login-providers,.auth-fast-login__actions{grid-template-columns:1fr}.auth-page .auth-page__intro h1{font-size:2rem}}.auth-page .auth-page__header,.auth-page .auth-page__back-row{animation:.52s cubic-bezier(.2,.8,.2,1) both auth-header-in}.auth-page .auth-page__back-row{animation-delay:60ms}.auth-page .auth-page__panel{animation:.62s cubic-bezier(.2,.8,.2,1) .1s both auth-panel-in}.auth-showcase{--showcase-accent:var(--vc-yellow);--showcase-secondary:var(--vc-blue);border:1px solid var(--vc-ink);background:var(--vc-ink);min-height:500px;box-shadow:7px 7px 0 var(--vc-coral);color:#fff;isolation:isolate;border-radius:16px;padding:20px;animation:.68s cubic-bezier(.2,.8,.2,1) .15s both auth-showcase-in;position:relative;overflow:hidden}.auth-showcase--register{--showcase-accent:var(--vc-coral);--showcase-secondary:var(--vc-purple);box-shadow:7px 7px 0 var(--vc-yellow)}.auth-showcase:before{z-index:-1;background:var(--showcase-accent);content:"";border:1px solid #ffffff4d;width:58px;height:58px;animation:.9s cubic-bezier(.2,.8,.2,1) .42s both auth-diamond-in;position:absolute;top:-27px;right:30px;transform:rotate(45deg)}.auth-showcase:after{z-index:-1;content:"";border:1px solid #ffffff1f;border-radius:50%;width:238px;height:238px;animation:7s ease-in-out infinite auth-ring-breathe;position:absolute;bottom:76px;right:-92px}.auth-showcase__header,.auth-showcase__copy,.auth-showcase__footer{z-index:1;position:relative}.auth-showcase__header{justify-content:space-between;align-items:center;gap:14px;display:flex}.auth-showcase__brand{color:#fff;font-family:var(--vc-display);letter-spacing:-.06em;font-size:.9rem;font-weight:900}.auth-showcase__status{color:#ffffff9e;font-family:var(--vc-mono);letter-spacing:.08em;white-space:nowrap;align-items:center;gap:7px;font-size:.56rem;font-weight:700;display:inline-flex}.auth-showcase__status-dot{background:#4ade80;border-radius:50%;width:7px;height:7px;animation:2s ease-out infinite auth-status-pulse;display:block;box-shadow:0 0 #4ade8080}.auth-showcase__stage{background:#1c1b20;border:1px solid #ffffff2e;height:252px;margin:24px 0 22px;position:relative;overflow:hidden}.auth-showcase__stage:before{content:"";border:1px dashed #ffffff26;border-radius:50%;animation:5s ease-in-out infinite auth-ring-breathe;position:absolute;top:18px;right:18px;bottom:18px;left:18px}.auth-showcase__stage:after{content:"";border:1px solid #ffffff6b;width:8px;height:8px;animation:3s steps(2,end) infinite auth-corner-blink;position:absolute;top:14px;left:14px}.auth-showcase__ring,.auth-showcase__axis,.auth-showcase__orbit,.auth-showcase__core,.auth-showcase__spark{position:absolute}.auth-showcase__ring{border:1px solid #ffffff3b;border-radius:50%;top:50%;left:50%;transform:translate(-50%,-50%)}.auth-showcase__ring--outer{width:210px;height:210px;animation:18s linear infinite auth-ring-rotate}.auth-showcase__ring--inner{border-style:dashed;border-color:#ffffff57;width:136px;height:136px;animation:12s linear infinite auth-ring-rotate-reverse}.auth-showcase__axis{content:"";background:#ffffff1f;top:50%;left:50%}.auth-showcase__axis--horizontal{width:100%;height:1px;transform:translateY(-50%)}.auth-showcase__axis--vertical{width:1px;height:100%;transform:translate(-50%)}.auth-showcase__orbit{border:1px solid #ffffff26;border-radius:50%;top:50%;left:50%;transform:translate(-50%,-50%)}.auth-showcase__orbit--slow{width:226px;height:226px;animation:18s linear infinite auth-orbit}.auth-showcase__orbit--fast{width:158px;height:158px;animation:10s linear infinite auth-orbit-reverse}.auth-showcase__orbit--reverse{border-color:#ffffff38;width:232px;height:112px;animation:14s linear infinite auth-orbit-ellipse;transform:translate(-50%,-50%)rotate(-22deg)}.auth-showcase__chip{border:1px solid var(--vc-ink);width:max-content;color:var(--vc-ink);font-family:var(--vc-mono);letter-spacing:.02em;white-space:nowrap;border-radius:999px;padding:5px 8px;font-size:.6rem;font-weight:800;line-height:1;display:block;top:-10px;left:50%;transform:translate(-50%)}.auth-showcase__chip--yellow{background:var(--vc-yellow)}.auth-showcase__chip--coral{background:var(--vc-coral);color:#fff}.auth-showcase__chip--blue{background:var(--vc-blue);color:#fff}.auth-showcase__core{background:var(--showcase-accent);width:76px;height:76px;color:var(--vc-ink);box-shadow:4px 4px 0 var(--showcase-secondary);border:1px solid #fff;place-content:center;justify-items:center;animation:4s ease-in-out infinite auth-core-float;display:grid;top:50%;left:50%;transform:translate(-50%,-50%)rotate(-4deg)}.auth-showcase__core span{font-family:var(--vc-display);letter-spacing:-.12em;font-size:2.45rem;font-weight:900;line-height:.78;transform:translate(-2px)}.auth-showcase__core small{font-family:var(--vc-mono);letter-spacing:.12em;text-transform:uppercase;margin-top:7px;font-size:.48rem;font-weight:800;line-height:1}.auth-showcase__spark{border:1px solid var(--vc-ink);background:var(--showcase-accent);border-radius:50%;width:7px;height:7px}.auth-showcase__spark--one{animation:4.5s ease-in-out infinite auth-spark-float-one;top:23%;left:27%}.auth-showcase__spark--two{background:var(--vc-coral);animation:5.5s ease-in-out infinite auth-spark-float-two;bottom:24%;right:23%}.auth-showcase__spark--three{background:var(--vc-blue);width:5px;height:5px;animation:3.8s ease-in-out infinite auth-spark-float-three;top:28%;right:30%}.auth-showcase__kicker{color:var(--showcase-accent);font-family:var(--vc-mono);letter-spacing:.12em;margin-bottom:9px;font-size:.58rem;font-weight:800;display:block}.auth-page .auth-showcase__copy h2{color:#fff;max-width:13ch;font-family:var(--vc-display);letter-spacing:-.055em;margin:0;font-size:clamp(2.35rem,4vw,3.35rem);font-weight:800;line-height:.92}.auth-showcase__copy p{color:#ffffffad;max-width:34ch;margin:14px 0 0;font-size:.78rem;line-height:1.5}.auth-showcase__footer{color:#ffffff6b;font-family:var(--vc-mono);letter-spacing:.08em;grid-template-columns:auto auto auto minmax(24px,1fr);align-items:center;gap:10px;margin-top:26px;font-size:.54rem;font-weight:800;display:grid}.auth-showcase__footer-active{color:#fff}.auth-showcase__footer-active:before{background:var(--showcase-accent);content:"";border-radius:50%;width:5px;height:5px;margin:0 5px 1px 0;display:inline-block}.auth-showcase__footer-line{background:#ffffff47;height:1px}.auth-page .auth-form__field,.auth-page .auth-page__note,.auth-page .auth-page__separator,.auth-page .login-providers,.auth-page .login-providers__status{animation:.46s cubic-bezier(.2,.8,.2,1) both auth-field-in}.auth-page .auth-form__field:first-of-type{animation-delay:.18s}.auth-page .auth-form__field:nth-of-type(2){animation-delay:.23s}.auth-page .auth-form__field:nth-of-type(3){animation-delay:.28s}.auth-page .auth-form__field:nth-of-type(4){animation-delay:.33s}.auth-page .auth-form__submit{animation:.46s cubic-bezier(.2,.8,.2,1) .37s both auth-field-in}.auth-page .auth-page__separator{animation-delay:.44s}.auth-page .login-providers{animation-delay:.49s}.auth-page .login-providers__status{animation-delay:.54s}.auth-page .auth-page__brand img{transition:transform .18s}.auth-page .auth-page__header-link{transition:color .15s,text-decoration-color .15s}.auth-page .auth-page__header-link:hover{-webkit-text-decoration-color:var(--vc-coral);text-decoration-color:var(--vc-coral)}.auth-page .auth-form__field input{transition:border-color .15s,box-shadow .15s,transform .15s}.auth-page .auth-form__field input:focus-visible{transform:translateY(-1px)}.auth-page .auth-form__submit{transition:background-color .15s,box-shadow .15s,transform .15s;overflow:hidden}.auth-page .auth-form__submit:hover:not(:disabled){box-shadow:3px 3px 0 var(--vc-ink);transform:translate(-1px,-1px)}.auth-page .auth-form__submit svg:last-child{transition:transform .18s}.auth-page .auth-form__submit:hover:not(:disabled) svg:last-child{transform:translate(3px)}.auth-page .login-provider:not(:disabled){transition:border-color .15s,background-color .15s,box-shadow .15s,transform .15s}.auth-page .login-provider:not(:disabled):hover{box-shadow:2px 2px 0 var(--vc-ink);transform:translate(-1px,-1px)}@keyframes auth-header-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}@keyframes auth-panel-in{0%{opacity:0;transform:translateY(16px)scale(.985)}to{opacity:1;transform:none}}@keyframes auth-showcase-in{0%{opacity:0;transform:translateY(18px)rotate(1.5deg)}to{opacity:1;transform:none}}@keyframes auth-field-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes auth-diamond-in{0%{opacity:0;transform:translate(22px,-15px)rotate(45deg)}to{opacity:1;transform:rotate(45deg)}}@keyframes auth-ring-breathe{0%,to{opacity:.55;transform:scale(1)}50%{opacity:.9;transform:scale(1.035)}}@keyframes auth-ring-rotate{0%{transform:translate(-50%,-50%)rotate(0)}to{transform:translate(-50%,-50%)rotate(360deg)}}@keyframes auth-ring-rotate-reverse{0%{transform:translate(-50%,-50%)rotate(360deg)}to{transform:translate(-50%,-50%)rotate(0)}}@keyframes auth-orbit{0%{transform:translate(-50%,-50%)rotate(0)}to{transform:translate(-50%,-50%)rotate(360deg)}}@keyframes auth-orbit-reverse{0%{transform:translate(-50%,-50%)rotate(360deg)}to{transform:translate(-50%,-50%)rotate(0)}}@keyframes auth-orbit-ellipse{0%{transform:translate(-50%,-50%)rotate(-22deg)}to{transform:translate(-50%,-50%)rotate(338deg)}}@keyframes auth-core-float{0%,to{transform:translate(-50%,-50%)rotate(-4deg)}50%{transform:translate(-50%,calc(-50% - 5px))rotate(2deg)}}@keyframes auth-status-pulse{0%{box-shadow:0 0 #4ade8080}70%{box-shadow:0 0 0 6px #4ade8000}to{box-shadow:0 0 #4ade8000}}@keyframes auth-corner-blink{0%,44%,to{opacity:.35}45%,70%{opacity:1}}@keyframes auth-spark-float-one{0%,to{transform:translate(0)}50%{transform:translate(7px,-9px)}}@keyframes auth-spark-float-two{0%,to{transform:translate(0)}50%{transform:translate(-8px,6px)}}@keyframes auth-spark-float-three{0%,to{transform:scale(1)}50%{transform:scale(1.7)}}@media(max-width:820px){.auth-page .auth-page__aside{border-top:0;max-width:none;padding:0}.auth-showcase{min-height:0}}@media(max-width:560px){.auth-showcase{box-shadow:4px 4px 0 var(--vc-coral);border-radius:12px;padding:16px}.auth-showcase--register{box-shadow:4px 4px 0 var(--vc-yellow)}.auth-showcase__stage{height:220px;margin-block:20px 19px}.auth-showcase__ring--outer,.auth-showcase__orbit--slow{width:190px;height:190px}.auth-showcase__orbit--reverse{width:200px}.auth-page .auth-showcase__copy h2{font-size:clamp(2.15rem,12vw,3rem)}.auth-showcase__footer{margin-top:21px}}@media(prefers-reduced-motion:reduce){.auth-page *,.auth-page :before,.auth-page :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.auth-page{--auth-blue:#255dcb;--auth-blue-dark:#0a3f9f;--auth-yellow:#ffd12e;--auth-orange:#ff643d;--auth-pink:#f456b8;--auth-green:#17a483;--auth-paper:#fff9ef;--auth-white:#fffdf8;--auth-ink:#0b1020;--auth-muted:#403f43;background:var(--auth-paper);min-height:100svh;color:var(--auth-ink);overflow:clip}.auth-page .auth-page__header{border-bottom:2px solid var(--auth-ink);background:var(--auth-paper);width:100%;min-height:82px;padding:10px max(24px,50vw - 690px);box-shadow:0 5px #0b102024}.auth-page .auth-page__back-row{width:min(1380px,100%);margin:25px auto 0;padding-inline:max(24px,50vw - 690px)}.auth-page .auth-page__back{min-height:42px;color:var(--auth-ink);gap:8px;font-size:.74rem;font-weight:850}.auth-page .auth-page__back:hover{color:var(--auth-blue-dark)}.auth-page .auth-page__back svg{transition:transform .16s cubic-bezier(.2,.8,.2,1)}.auth-page .auth-page__back:hover svg{transform:translate(-4px)}.auth-page .auth-page__content{grid-template-columns:minmax(0,1.04fr) minmax(390px,.7fr);align-items:center;gap:clamp(42px,7vw,104px);width:min(1200px,100% - 48px);margin:43px auto 92px;display:grid}.auth-page .auth-page__aside{max-width:none;padding:0}.auth-visual{min-width:0}.auth-visual__copy{max-width:660px}.auth-visual__eyebrow{color:var(--auth-blue-dark);font-family:var(--vc-mono,monospace);letter-spacing:.16em;margin-bottom:22px;font-size:.64rem;font-weight:900;display:block}.auth-page .auth-visual__copy h2{max-width:650px;color:var(--auth-ink);font-family:var(--vc-display,sans-serif);letter-spacing:0;margin:0;font-size:clamp(4.7rem,7.9vw,7.8rem);font-weight:900;line-height:.76}.auth-visual__copy h2 span{width:max-content;max-width:100%;animation:.52s cubic-bezier(.2,.8,.2,1) both auth-word-in;display:block}.auth-visual__copy h2 span:nth-child(2){animation-delay:60ms}.auth-visual__copy h2 span:nth-child(3){animation-delay:.12s}.auth-visual__word--pink{color:var(--auth-pink)}.auth-visual__copy p{color:#25283a;max-width:46ch;margin:28px 0 0;font-size:.98rem;font-weight:650;line-height:1.55;animation:.52s cubic-bezier(.2,.8,.2,1) .18s both auth-copy-in}.auth-visual__artframe{border:3px solid var(--auth-ink);background:var(--auth-blue);height:clamp(360px,30vw,430px);box-shadow:9px 9px 0 var(--auth-ink);isolation:isolate;border-radius:0 28px;margin-top:32px;animation:.6s cubic-bezier(.2,.8,.2,1) .24s both auth-art-in;position:relative;overflow:hidden}.auth-visual__artframe:before{z-index:2;border:3px solid var(--auth-ink);background:var(--auth-yellow);content:"";width:170px;height:18px;animation:4.8s ease-in-out infinite auth-marker-float;position:absolute;top:-10px;right:20%;transform:rotate(-12deg)}.auth-visual__artframe:after{border:3px solid var(--auth-ink);background:var(--auth-pink);content:"";width:160px;height:16px;position:absolute;bottom:36px;right:-32px;transform:rotate(13deg)}.auth-visual__artwork{width:100%;height:100%;display:block}.auth-visual__artwork img{object-fit:cover;object-position:50% 38%;width:100%;height:100%;animation:8s ease-in-out infinite auth-art-drift}.auth-visual--register .auth-visual__artwork img{object-position:48% 41%}.auth-visual__art-label{z-index:3;border:3px solid var(--auth-ink);background:var(--auth-white);color:var(--auth-ink);font-family:var(--vc-mono,monospace);letter-spacing:.1em;box-shadow:3px 3px 0 var(--auth-ink);border-radius:9px 6px 10px 7px;padding:8px 10px;font-size:.58rem;font-weight:900;animation:.52s cubic-bezier(.2,.8,.2,1) .45s both auth-label-in;position:absolute;bottom:17px;right:18px;transform:rotate(-3deg)}.auth-visual__tags{flex-wrap:wrap;gap:8px;margin-top:22px;display:flex}.auth-visual__tags span{border:2px solid var(--auth-ink);background:var(--auth-white);box-shadow:3px 3px 0 var(--auth-ink);color:var(--auth-ink);font-family:var(--vc-mono,monospace);letter-spacing:.08em;border-radius:9px 6px 10px 7px;padding:7px 9px;font-size:.58rem;font-weight:900;animation:.42s cubic-bezier(.2,.8,.2,1) both auth-tag-in}.auth-visual__tags span:nth-child(2){background:var(--auth-yellow);animation-delay:70ms}.auth-visual__tags span:nth-child(3){background:var(--auth-green);animation-delay:.14s}.auth-page .auth-page__panel{border:3px solid var(--auth-ink);background:var(--auth-white);width:100%;box-shadow:9px 9px 0 var(--auth-pink);color:var(--auth-ink);border-radius:0 24px;padding:31px;position:relative}.auth-page .auth-page__panel:before{border:3px solid var(--auth-ink);background:var(--auth-green);content:"";width:48px;height:13px;position:absolute;top:-11px;right:38px;transform:rotate(8deg)}.auth-page__panel-topline{min-height:18px}.auth-page .auth-page__eyebrow{color:var(--auth-blue-dark);font-family:var(--vc-mono,monospace);letter-spacing:.13em;font-size:.62rem;font-weight:900}.auth-page .auth-page__intro h1{color:var(--auth-ink);font-size:clamp(2.4rem,4.4vw,3.6rem);font-weight:900;line-height:.86}.auth-page .auth-page__intro p{max-width:36ch;color:var(--auth-muted);margin-top:14px;font-size:.82rem;font-weight:650;line-height:1.5}.auth-page .auth-page__error{border:2px solid var(--auth-ink);border-left:7px solid var(--auth-orange);color:var(--auth-ink);background:#ffe3d8;border-radius:10px 7px 11px 8px;font-weight:750}.auth-page .auth-form__field input{border:2px solid var(--auth-ink);min-height:52px;color:var(--auth-ink);background:#fff;border-radius:10px 7px 11px 8px;padding-inline:13px;transition:border-color .15s ease-out,box-shadow .15s ease-out,transform .15s ease-out}.auth-page .auth-page__note{color:var(--auth-muted);font-weight:650}.auth-page .auth-page__separator{color:var(--auth-muted);font-family:var(--vc-mono,monospace);letter-spacing:.04em;text-transform:uppercase;font-size:.58rem;font-weight:800}@keyframes auth-word-in{0%{opacity:0;transform:translateY(105%)rotate(2deg)}to{opacity:1;transform:none}}@keyframes auth-copy-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes auth-art-in{0%{opacity:0;transform:translate(32px)rotate(1deg)}to{opacity:1;transform:none}}@keyframes auth-art-drift{0%,to{transform:scale(1.015)translate(0)rotate(0)}50%{transform:scale(1.045)translate(-8px,5px)rotate(-.5deg)}}@keyframes auth-marker-float{0%,to{transform:translate(0)rotate(-12deg)}50%{transform:translate(-4px,4px)rotate(-6deg)}}@keyframes auth-label-in{0%{opacity:0;transform:translate(12px,8px)rotate(-3deg)}to{opacity:1;transform:rotate(-3deg)}}@keyframes auth-tag-in{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}@media(max-width:1040px){.auth-page .auth-page__content{gap:48px}.auth-page .auth-visual__copy h2{font-size:clamp(4.1rem,7.8vw,6.4rem)}.auth-visual__artframe{height:390px}}@media(max-width:820px){.auth-page .auth-page__content{grid-template-columns:1fr;align-items:start;width:min(620px,100% - 32px);margin-top:31px}.auth-page .auth-page__panel{order:1}.auth-page .auth-page__aside{order:2}.auth-page .auth-visual__copy h2{font-size:clamp(4.4rem,13vw,6.5rem)}.auth-visual__artframe{height:390px}}@media(max-width:560px){.auth-page .auth-page__header{min-height:70px;padding-inline:16px}.auth-page .auth-page__brand{width:140px}.auth-page__header-switch{gap:0}.auth-page__header-switch>span{display:none}.auth-page .auth-page__header-link{min-height:42px;padding-inline:12px}.auth-page .auth-page__back-row{margin-top:18px;padding-inline:16px}.auth-page .auth-page__content{gap:35px;width:calc(100% - 32px);margin-top:24px}.auth-page .auth-page__panel{box-shadow:6px 6px 0 var(--auth-pink);border-radius:0 19px;padding:24px 18px 22px}.auth-page .auth-page__intro h1{font-size:clamp(2.2rem,10.5vw,3.1rem)}.auth-page .auth-form__name-grid{gap:10px}.auth-page .auth-visual__eyebrow{margin-bottom:18px;font-size:.56rem}.auth-page .auth-visual__copy h2{font-size:clamp(3.55rem,16.5vw,5.2rem)}.auth-visual__copy p{margin-top:23px;font-size:.88rem}.auth-visual__artframe{height:330px;box-shadow:6px 6px 0 var(--auth-ink);border-radius:0 22px;margin-top:26px}.auth-visual__artwork img,.auth-visual--register .auth-visual__artwork img{object-position:center center}.auth-visual__art-label{bottom:13px;right:13px}.auth-visual__tags{margin-top:17px}}@media(prefers-reduced-motion:reduce){.auth-visual__copy h2 span,.auth-visual__copy p,.auth-visual__artframe,.auth-visual__artframe:before,.auth-visual__artwork img,.auth-visual__art-label,.auth-visual__tags span{animation:none}}.auth-page{--auth-blue:#255dcb;--auth-yellow:#ffd12e;--auth-pink:#f456b8;--auth-paper:#fff9ef;--auth-white:#fffdf8;--auth-ink:#0b1020;--auth-muted:#403f43;isolation:isolate;background:var(--auth-blue);min-height:100svh;color:var(--auth-ink);flex-direction:column;display:flex;position:relative;overflow:hidden}.auth-page:before{z-index:-1;content:"";transform-origin:50%;background:url(/images/recraft-pop/auth-background-objects-v1.png) 50%/cover no-repeat;animation:18s ease-in-out infinite auth-background-drift;position:absolute;top:-2%;right:-2%;bottom:-2%;left:-2%}.auth-page>*{z-index:1;position:relative}.auth-page .auth-page__header{border-bottom:2px solid var(--auth-ink);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fff9eff0;width:100%;min-height:78px;padding:12px max(20px,50vw - 690px);box-shadow:0 5px #0b102024}.auth-page .auth-page__brand{width:164px}.auth-page .auth-page__brand img{filter:none;transition:transform .18s cubic-bezier(.2,.8,.2,1)}.auth-page .auth-page__brand:hover img{transform:translateY(-2px)rotate(-1deg)}.auth-page__header-switch{color:var(--auth-muted);align-items:center;gap:12px;font-size:.78rem;font-weight:750;display:inline-flex}.auth-page .auth-page__header-link{border:2px solid var(--auth-ink);background:var(--auth-yellow);min-height:44px;box-shadow:3px 3px 0 var(--auth-ink);color:var(--auth-ink);border-radius:12px;align-items:center;padding:0 15px;font-size:.72rem;font-weight:900;text-decoration:none;transition:transform .14s ease-out,box-shadow .14s ease-out,background-color .14s ease-out;display:inline-flex}.auth-page .auth-page__header-link:hover{background:var(--auth-pink);color:var(--auth-ink);box-shadow:5px 5px 0 var(--auth-ink);transform:translateY(-2px)}.auth-page .auth-page__header-link:active{box-shadow:1px 1px 0 var(--auth-ink);transform:translate(2px,2px)}.auth-page .auth-page__content{flex:1;grid-template-columns:minmax(0,1fr);place-items:center;width:100%;min-height:calc(100svh - 78px);margin:0;padding:clamp(32px,7vh,72px) 20px clamp(48px,9vh,88px);display:grid}.auth-page .auth-page__panel{border:3px solid var(--auth-ink);width:min(100%,520px);box-shadow:9px 9px 0 var(--auth-pink);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#fffdf8f7;border-radius:24px;padding:clamp(28px,4vw,38px);animation:.56s cubic-bezier(.2,.8,.2,1) both auth-card-in}.auth-page--register .auth-page__panel{width:min(100%,570px)}.auth-page .auth-page__panel:before,.auth-page__panel-topline{display:none}.auth-page .auth-page__intro{margin:0 0 28px}.auth-page .auth-page__intro h1{max-width:12ch;color:var(--auth-ink);letter-spacing:-.045em;margin:0;font-size:clamp(2.8rem,5vw,4.2rem);font-weight:900;line-height:.88}.auth-page .auth-page__intro p{max-width:38ch;color:var(--auth-muted);margin:16px 0 0;font-size:.86rem;font-weight:650;line-height:1.55}.auth-page .auth-page__error{border:2px solid var(--auth-ink);color:var(--auth-ink);background:#ffe3d8;border-left:7px solid #ff643d;border-radius:12px;margin:0 0 20px;font-weight:750}.auth-page .auth-form{gap:16px;display:grid}.auth-page .auth-form__name-grid{gap:12px}.auth-page .auth-form__field{gap:7px}.auth-page .auth-form__field>label{color:var(--auth-ink);font-size:.74rem;font-weight:900}.auth-page .auth-form__field input{border:2px solid var(--auth-ink);min-height:54px;color:var(--auth-ink);background:#fff;border-radius:12px;padding-inline:14px;font-size:.85rem;transition:border-color .15s ease-out,box-shadow .15s ease-out,transform .15s ease-out}.auth-page .auth-form__field input:hover{border-color:var(--auth-blue)}.auth-page .auth-form__field input:focus-visible{border-color:var(--auth-blue);box-shadow:4px 4px 0 var(--auth-yellow);transform:translate(-1px,-1px)}.auth-page .auth-form__field small{color:var(--auth-muted);font-size:.64rem;font-weight:650}.auth-page .auth-form__submit{border:3px solid var(--auth-ink);background:var(--auth-yellow);min-height:54px;box-shadow:4px 4px 0 var(--auth-ink);color:var(--auth-ink);border-radius:12px;margin-top:4px;font-size:.8rem;font-weight:900;transition:transform .15s ease-out,box-shadow .15s ease-out,background-color .15s ease-out}.auth-page .auth-form__submit:hover:not(:disabled){background:var(--auth-pink);box-shadow:7px 7px 0 var(--auth-ink);transform:translate(-2px,-2px)}.auth-page .auth-form__submit:active:not(:disabled){box-shadow:1px 1px 0 var(--auth-ink);transform:translate(3px,3px)}.auth-page .auth-page__note{color:var(--auth-muted);margin:14px 0 0;font-weight:650}.auth-page .auth-page__separator{color:var(--auth-muted);font-family:var(--vc-mono,monospace);letter-spacing:.04em;text-transform:uppercase;margin:24px 0 15px;font-size:.58rem;font-weight:800}.auth-page .auth-page__separator:before,.auth-page .auth-page__separator:after{background:#0b102047}.auth-page .login-providers{gap:10px}.auth-page .login-provider{border:2px solid var(--auth-ink);background:var(--auth-white);min-height:48px;color:var(--auth-ink);border-radius:10px;font-weight:900;transition:transform .15s ease-out,box-shadow .15s ease-out,background-color .15s ease-out}.auth-page .login-provider:not(:disabled):hover{border-color:var(--auth-ink);background:var(--auth-blue);box-shadow:3px 3px 0 var(--auth-ink);color:var(--auth-white);transform:translate(-1px,-2px)}.auth-page .login-provider:not(:disabled):active{box-shadow:1px 1px 0 var(--auth-ink);transform:translate(1px,1px)}.auth-page .login-provider--apple{border-color:var(--auth-ink);background:var(--auth-ink);color:var(--auth-white)}.auth-page .login-provider--apple:not(:disabled):hover{background:var(--auth-pink);color:var(--auth-ink)}.auth-page .login-provider--apple:disabled{color:#5c6273;background:#e6e8ef;border-color:#81869a}.auth-page .login-providers__status{color:var(--auth-muted);font-weight:650}.auth-page a:focus-visible,.auth-page button:focus-visible{outline:4px solid var(--auth-yellow);outline-offset:4px}@keyframes auth-background-drift{0%,to{transform:scale(1.01)translate(0)}50%{transform:scale(1.035)translate(-.5%,.35%)}}@keyframes auth-card-in{0%{opacity:0;transform:translateY(18px)scale(.985)}to{opacity:1;transform:none}}@media(max-width:560px){.auth-page .auth-page__header{min-height:70px;padding-inline:16px}.auth-page .auth-page__brand{width:140px}.auth-page__header-switch{gap:0}.auth-page__header-switch>span{display:none}.auth-page .auth-page__header-link{min-height:42px;padding-inline:13px}.auth-page .auth-page__content{min-height:calc(100svh - 70px);padding:28px 16px 48px}.auth-page .auth-page__panel,.auth-page--register .auth-page__panel{width:100%;box-shadow:6px 6px 0 var(--auth-pink);border-radius:20px;padding:25px 19px 23px}.auth-page .auth-page__intro{margin-bottom:25px}.auth-page .auth-page__intro h1{font-size:clamp(2.65rem,12vw,3.5rem)}.auth-page .auth-form__name-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.auth-page:before,.auth-page .auth-page__panel{animation:none}}.auth-page--register .auth-page__panel{width:min(100%,520px);padding:24px 28px 22px}.auth-page--register .auth-page__intro{margin-bottom:19px}.auth-page--register .auth-page__intro h1{font-size:clamp(2.6rem,4.5vw,3.5rem)}.auth-page--register .auth-page__intro p{margin-top:11px;font-size:.8rem;line-height:1.45}.auth-page--register .auth-form{gap:10px}.auth-page--register .auth-form__field{gap:4px}.auth-page--register .auth-form__field input{min-height:44px}.auth-page--register .auth-form__field small{font-size:.59rem;line-height:1.3}.auth-page--register .auth-form__submit{min-height:48px;margin-top:1px}.auth-page--register .auth-page__note{margin-top:9px;font-size:.62rem;line-height:1.35}.auth-page--register .auth-page__separator{margin:16px 0 10px}.auth-page--register .login-provider{min-height:43px}@media(max-width:560px){.auth-page--register .auth-page__content{min-height:calc(100svh - 70px);padding:20px 16px 26px}.auth-page--register .auth-page__panel{padding:20px 16px 18px}.auth-page--register .auth-page__intro{margin-bottom:18px}.auth-page--register .auth-page__intro h1{font-size:clamp(2.35rem,11vw,3rem)}.auth-page--register .auth-page__intro p{margin-top:9px;font-size:.78rem;line-height:1.4}.auth-page--register .auth-form{gap:9px}.auth-page--register .auth-form__name-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.auth-page--register .auth-form__field>label{font-size:.68rem}.auth-page--register .auth-form__field input{min-height:44px;padding-inline:10px}.auth-page--register .auth-form__field small{font-size:.57rem;line-height:1.25}.auth-page--register .auth-form__submit{min-height:48px}.auth-page--register .auth-page__note{margin-top:9px;font-size:.6rem}.auth-page--register .auth-page__separator{margin:16px 0 10px}.auth-page--register .login-provider{min-height:42px}.auth-page--register .login-providers__status{font-size:.6rem}}html:has(.auth-page){scrollbar-gutter:auto;overflow-y:auto}body:has(.auth-page){overflow-x:clip}@media(max-width:360px){.auth-page .auth-page__header{min-height:66px;padding-block:10px;padding-inline:13px}.auth-page .auth-page__brand{width:124px}.auth-page .auth-page__header-link{min-height:42px;padding-inline:11px}.auth-page .auth-page__content{min-height:calc(100svh - 66px);padding:18px 13px 24px}.auth-page .auth-page__panel,.auth-page--register .auth-page__panel{padding-inline:14px}.auth-page .auth-page__intro h1{font-size:clamp(2.4rem,11.5vw,3.15rem)}.auth-page--register .auth-page__intro h1{font-size:clamp(2.25rem,10.8vw,2.85rem)}.auth-page--register .auth-form__field input{min-height:42px}}.auth-page .auth-form__password-control{position:relative}.auth-page .auth-form__password-input{padding-right:52px}.auth-page .auth-form__password-toggle{width:40px;height:40px;color:var(--auth-muted);cursor:pointer;background:0 0;border:0;border-radius:8px;justify-content:center;align-items:center;padding:0;transition:background-color .15s ease-out,color .15s ease-out,transform .15s ease-out;display:inline-flex;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.auth-page .auth-form__password-toggle:hover{color:var(--auth-ink);background:#0168cf1a}.auth-page .auth-form__password-toggle:active{transform:translateY(-50%)scale(.94)}.auth-page .auth-form__password-toggle:focus-visible{outline:4px solid var(--auth-yellow);outline-offset:2px}:root{--vc-game-ink:#0b0b0d;--vc-game-paper:#fff9ef;--vc-game-blue:#0168cf;--vc-game-blue-dark:#01539f;--vc-game-yellow:#fdc522;--vc-game-pink:#f4a6c8;--vc-game-green:#008b78;--vc-game-coral:#e55b31;--vc-game-line:#0b0b0d2e;--vc-game-display:"Bricolage Grotesque", Manrope, sans-serif;--vc-game-body:Manrope, sans-serif}.goal-game-dialog__overlay{z-index:1200;background:#08122094;animation:.15s ease-out both vc-game-overlay-in;position:fixed;top:0;right:0;bottom:0;left:0}.goal-game-dialog{z-index:1201;border:2px solid var(--vc-game-ink);width:min(100vw - 32px,860px);max-height:min(900px,100dvh - 32px);color:var(--vc-game-ink);font-family:var(--vc-game-body);scrollbar-color:var(--vc-game-blue) var(--vc-game-paper);scrollbar-width:thin;background:#fff;border-radius:18px;outline:0;animation:.21s cubic-bezier(.2,.8,.2,1) both vc-game-dialog-in;display:grid;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%);box-shadow:0 18px 54px #040f1b47}.goal-game-dialog::selection{background:var(--vc-game-yellow);color:var(--vc-game-ink)}.goal-game-dialog ::selection{background:var(--vc-game-yellow);color:var(--vc-game-ink)}.goal-game-dialog::-webkit-scrollbar{width:10px}.goal-game-dialog::-webkit-scrollbar-track{background:var(--vc-game-paper)}.goal-game-dialog::-webkit-scrollbar-thumb{border:2px solid var(--vc-game-paper);background:var(--vc-game-blue);border-radius:8px}.goal-game-dialog__header{border-bottom:2px solid var(--vc-game-ink);background:var(--vc-game-yellow);grid-template-columns:126px minmax(0,1fr) 40px;align-items:center;gap:18px;min-height:126px;padding:16px 18px;display:grid;position:relative}.goal-game-dialog__header>picture,.goal-game-dialog__header>img{object-fit:cover;border:2px solid var(--vc-game-ink);background:#fff;border-radius:11px;width:126px;height:88px;display:block;overflow:hidden}.goal-game-dialog__header>picture img{object-fit:cover;width:100%;height:100%;display:block}.goal-game-dialog__header h2{font-family:var(--vc-game-display);letter-spacing:-.025em;margin:0;font-size:clamp(1.75rem,4vw,2.55rem);font-weight:800;line-height:.98}.goal-game-dialog__header p{color:#0b0b0db8;max-width:52ch;margin:8px 0 0;font-size:.78rem;line-height:1.45}.goal-game-dialog__close{border:1px solid var(--vc-game-ink);width:40px;height:40px;color:var(--vc-game-ink);cursor:pointer;background:#fff;border-radius:9px;align-self:start;place-items:center;padding:0;display:grid}.goal-game-dialog__close:hover{background:var(--vc-game-paper)}.goal-game-dialog__body{background:#fff;gap:24px;padding:24px;display:grid}.goal-game-dialog__section{border:0;min-width:0;margin:0;padding:0}.goal-game-dialog__section legend{width:100%;font-family:var(--vc-game-display);align-items:center;gap:8px;margin:0 0 10px;padding:0;font-size:1rem;font-weight:800;display:flex}.goal-game-dialog__section legend svg{color:var(--vc-game-blue)}.goal-game-dialog__choices{border:1px solid var(--vc-game-line);border-radius:12px;display:grid;overflow:hidden}.goal-game-dialog__choices--modes{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}.goal-game-dialog__choices--difficulty{grid-template-columns:repeat(2,minmax(0,1fr))}.goal-game-dialog__choices--support{grid-template-columns:1fr}.goal-game-dialog__choices--content{grid-template-columns:repeat(3,minmax(0,1fr))}.goal-game-dialog__choices label{border-right:1px solid var(--vc-game-line);border-bottom:1px solid var(--vc-game-line);cursor:pointer;background:#fff;align-items:center;gap:10px;min-width:0;min-height:48px;padding:12px 14px;transition:background-color .14s,color .14s;display:grid;position:relative}.goal-game-dialog__choices label:last-child{border-right:0}.goal-game-dialog__choices label:hover{background:var(--vc-game-paper)}.goal-game-dialog__choices label.is-selected{box-shadow:inset 0 0 0 2px var(--vc-game-blue);background:#eaf4ff}.goal-game-dialog__choices label:has(input:focus-visible){outline:3px solid var(--vc-game-pink);outline-offset:-3px}.goal-game-dialog__choices input{opacity:0;width:1px;height:1px;position:absolute}.goal-game-dialog__choices label>svg:last-child{color:var(--vc-game-blue);opacity:0;justify-self:end}.goal-game-dialog__choices label.is-selected>svg:last-child{opacity:1}.goal-game-dialog__choices--modes label{grid-template-columns:minmax(0,1fr) auto;font-size:.72rem;font-weight:800}.goal-game-dialog__choices--difficulty label,.goal-game-dialog__choices--content label{grid-template-columns:minmax(0,1fr) auto;min-height:78px}.goal-game-dialog__choices--support label{border-right:0;grid-template-columns:24px minmax(0,1fr) 18px;min-height:68px}.goal-game-dialog__choices--support label>svg:first-of-type{color:var(--vc-game-coral)}.goal-game-dialog__choices strong{font-size:.75rem;line-height:1.25;display:block}.goal-game-dialog__choices small{color:#0b0b0da6;margin-top:4px;font-size:.64rem;line-height:1.4;display:block}.goal-game-dialog__textarea-label,.goal-game-dialog__threshold{justify-content:space-between;align-items:baseline;gap:14px;margin-top:14px;font-size:.72rem;font-weight:800;display:flex}.goal-game-dialog__textarea-label{flex-direction:column;align-items:flex-start;gap:5px}.goal-game-dialog__textarea-label small{color:#0b0b0da6;font-size:.65rem;font-weight:600;line-height:1.45}.goal-game-dialog__textarea-label code{background:var(--vc-game-paper);font:700 .63rem var(--vc-game-body);border-radius:4px;padding:1px 4px}.goal-game-dialog textarea{resize:vertical;width:100%;min-height:132px;color:var(--vc-game-ink);font:600 .75rem/1.55 var(--vc-game-body);background:#fff;border:1px solid #0b0b0d57;border-radius:9px;outline:0;margin-top:8px;padding:12px 13px;display:block}.goal-game-dialog textarea:focus{border-color:var(--vc-game-blue);box-shadow:0 0 0 3px #0168cf2e}.goal-game-dialog textarea:disabled{color:#0b0b0d85;cursor:not-allowed;background:#f6f3ed}.goal-game-dialog__textarea-meta{color:#0b0b0d99;justify-content:space-between;gap:12px;margin-top:6px;font-size:.62rem;display:flex}.goal-game-dialog__validation{color:var(--vc-game-coral);margin:7px 0 0;font-size:.66rem;font-weight:750;line-height:1.4}.goal-game-dialog__assessment-toggle{border:1px solid var(--vc-game-line);cursor:pointer;background:#fff;border-radius:12px;grid-template-columns:24px minmax(0,1fr) 18px;align-items:center;gap:10px;min-height:68px;padding:12px 14px;display:grid}.goal-game-dialog__assessment-toggle:hover{background:var(--vc-game-paper)}.goal-game-dialog__assessment-toggle.is-selected{box-shadow:inset 0 0 0 2px var(--vc-game-blue);background:#eaf4ff}.goal-game-dialog__assessment-toggle input{width:18px;height:18px;accent-color:var(--vc-game-blue);margin:0}.goal-game-dialog__assessment-toggle input:focus-visible{outline:3px solid var(--vc-game-pink);outline-offset:2px}.goal-game-dialog__assessment-toggle>svg:last-child{color:var(--vc-game-blue);opacity:0}.goal-game-dialog__assessment-toggle.is-selected>svg:last-child{opacity:1}.goal-game-dialog__assessment-toggle strong{font-size:.75rem;line-height:1.25;display:block}.goal-game-dialog__assessment-toggle small{color:#0b0b0da6;margin-top:4px;font-size:.64rem;font-weight:600;line-height:1.4;display:block}.goal-game-dialog__threshold{align-items:center;margin-top:12px}.goal-game-dialog__details{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding-top:2px;display:grid}.goal-game-dialog__details>label{gap:8px;display:grid}.goal-game-dialog__details>label>span:first-child{align-items:center;gap:7px;font-size:.7rem;font-weight:800;display:flex}.goal-game-dialog__details>label>span:first-child svg{color:var(--vc-game-green)}.goal-game-dialog__details input,.goal-game-dialog__details select{width:100%;min-height:45px;color:var(--vc-game-ink);font:700 .72rem var(--vc-game-body);background:#fff;border:1px solid #0b0b0d57;border-radius:9px;outline:0;padding:0 12px}.goal-game-dialog__details input:focus,.goal-game-dialog__details select:focus,.goal-game-dialog__threshold input:focus{border-color:var(--vc-game-blue);box-shadow:0 0 0 3px #0168cf2e}.goal-game-dialog__number{border:1px solid #0b0b0d57;border-radius:9px;grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid;overflow:hidden}.goal-game-dialog__number input{border:0;border-radius:0;box-shadow:none!important}.goal-game-dialog__number input:disabled{color:#0b0b0d7a;background:#f6f3ed}.goal-game-dialog__number small{color:#0b0b0d99;padding:0 12px;font-size:.62rem}.goal-game-dialog__footer{border-top:1px solid var(--vc-game-line);background:var(--vc-game-paper);justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;display:flex}.goal-game-dialog__footer p{color:#0b0b0da6;max-width:42ch;margin:0;font-size:.64rem;line-height:1.4}.goal-game-dialog__footer>div{gap:8px;display:flex}.goal-game-dialog__primary,.goal-game-dialog__secondary,.goal-discard-dialog__danger{border:1px solid var(--vc-game-ink);min-height:44px;font:800 .68rem var(--vc-game-body);cursor:pointer;border-radius:9px;padding:0 16px}.goal-game-dialog__primary{background:var(--vc-game-blue);color:#fff}.goal-game-dialog__primary:hover:not(:disabled){background:var(--vc-game-blue-dark)}.goal-game-dialog__primary:disabled{opacity:.46;cursor:not-allowed}.goal-game-dialog__secondary{color:var(--vc-game-ink);background:#fff}.goal-game-dialog__secondary:hover{background:#f4efe6}.goal-game-dialog button:focus-visible{outline:3px solid var(--vc-game-pink);outline-offset:2px}.goal-discard-dialog__overlay{z-index:1300}.goal-discard-dialog{z-index:1301;border:2px solid var(--vc-game-ink);width:min(100vw - 32px,470px);color:var(--vc-game-ink);font-family:var(--vc-game-body);background:#fff;border-radius:16px;outline:0;padding:26px;animation:.18s cubic-bezier(.2,.8,.2,1) both vc-game-dialog-in;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 18px 54px #040f1b4d}.goal-discard-dialog h2{font-family:var(--vc-game-display);letter-spacing:-.025em;margin:0;font-size:2rem;line-height:1}.goal-discard-dialog p{color:#0b0b0dad;margin:12px 0 0;font-size:.78rem;line-height:1.55}.goal-discard-dialog__actions{justify-content:flex-end;gap:8px;margin-top:24px;display:flex}.goal-discard-dialog__danger{color:#fff;background:#c63f23;border-color:#a92f18}.goal-discard-dialog__danger:hover{background:#a92f18}@keyframes vc-game-overlay-in{0%{opacity:0}}@keyframes vc-game-dialog-in{0%{opacity:0;transform:translate(-50%,calc(12px - 50%))scale(.985)}}@media(max-width:620px){.goal-game-dialog{border-radius:14px;width:min(100vw - 18px,860px);max-height:calc(100dvh - 18px)}.goal-game-dialog__header{grid-template-columns:82px minmax(0,1fr) 38px;gap:12px;min-height:104px;padding:12px}.goal-game-dialog__header>picture,.goal-game-dialog__header>img{width:82px;height:66px}.goal-game-dialog__header h2{font-size:1.55rem}.goal-game-dialog__header p{font-size:.68rem}.goal-game-dialog__body{gap:20px;padding:18px 14px}.goal-game-dialog__choices--difficulty,.goal-game-dialog__choices--content,.goal-game-dialog__details{grid-template-columns:1fr}.goal-game-dialog__choices--content label{border-right:0}.goal-game-dialog__footer{flex-direction:column;align-items:stretch}.goal-game-dialog__footer>div{grid-template-columns:1fr 1fr;display:grid}.goal-discard-dialog__actions{grid-template-columns:1fr;display:grid}}@media(prefers-reduced-motion:reduce){.goal-game-dialog__overlay,.goal-game-dialog,.goal-discard-dialog{animation:none}.goal-game-dialog__choices label{transition:none}}.classes-page .class-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,540px),1fr));gap:18px;width:100%;display:grid;position:relative}.classes-page .class-card,.classes-page .school-class-card{--class-accent:var(--vc-purple);--class-soft:var(--vc-purple-soft)}.classes-page .class-card[data-class-language=es],.classes-page .school-class-card[data-class-language=es]{--class-accent:var(--vc-coral);--class-soft:var(--vc-coral-soft)}.classes-page .class-card[data-class-language=fr],.classes-page .school-class-card[data-class-language=fr]{--class-accent:var(--vc-blue);--class-soft:var(--vc-purple-soft)}.classes-page .class-card[data-class-language=it],.classes-page .school-class-card[data-class-language=it]{--class-accent:var(--vc-green);--class-soft:var(--vc-green-soft)}.classes-page .class-card{isolation:isolate;border:2px solid var(--vc-ink);min-width:0;min-height:184px;box-shadow:5px 5px 0 var(--vc-ink);cursor:pointer;background:#fff;border-radius:22px 17px 24px 18px;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr) auto;align-items:stretch;gap:18px;padding:18px;transition:transform .22s cubic-bezier(.2,.9,.3,1.2),border-color .18s,box-shadow .22s,opacity .16s;display:grid;position:relative;overflow:hidden;transform:translate(0)}.classes-page .class-card:before,.classes-page .class-card:after,.classes-page .school-class-card:before,.classes-page .school-class-card:after{z-index:0;pointer-events:none;content:"";position:absolute}.classes-page .class-card:before,.classes-page .school-class-card:before{background:repeating-linear-gradient(135deg,#ffffff7a 0 2px,transparent 2px 13px),radial-gradient(circle at 22% 25%,#ffffffd1 0 5px,transparent 6px),var(--class-soft);width:40%;inset:0 auto 0 0}.classes-page .class-card:after,.classes-page .school-class-card:after{border-radius:inherit;background:var(--class-accent);width:5px;inset:0 auto 0 0}.classes-page .class-card>*,.classes-page .school-class-card>*{z-index:1;min-width:0;position:relative}.classes-page .class-card:is(:hover,:focus-within),.classes-page .school-class-card:is(:hover,:focus-within){border-color:var(--class-accent);box-shadow:7px 7px 0 var(--class-accent);transform:translateY(-3px)}.classes-page .class-card:active{box-shadow:3px 3px 0 var(--class-accent);transform:translate(0)}.classes-page .class-card.is-opening{pointer-events:none;opacity:.78;transform:translateY(-1px)}.classes-page .class-card__identity{align-content:center;gap:16px;min-width:0;display:grid}.classes-page .class-card__header{z-index:1;justify-content:space-between;align-items:flex-start;gap:14px;min-width:0;transition:none;display:flex;position:relative;transform:none}.classes-page .class-card__header h2{width:auto;min-width:0;margin:0}.classes-page .class-card__header .flag{flex:none;margin-top:2px}.classes-page .class-card__title{max-width:100%;color:var(--vc-ink);font-family:var(--vc-display);text-overflow:ellipsis;-webkit-line-clamp:2;overflow-wrap:anywhere;white-space:normal;-webkit-box-orient:vertical;font-size:clamp(1.2rem,2vw,1.55rem);font-weight:800;line-height:1.08;text-decoration:none;display:-webkit-box;overflow:hidden}.classes-page .class-card__title:hover,.classes-page .class-card:is(:hover,:focus-within) .class-card__title{color:var(--class-accent);transform:none}.classes-page .class-card:is(:hover,:focus-within) .class-card__header{transform:none}.classes-page .class-card__teacher{z-index:1;align-items:center;gap:10px;min-width:0;margin:0;transition:none;display:flex;position:relative;transform:none}.classes-page .class-card__teacher-face{background:var(--class-soft);width:40px;height:40px;box-shadow:0 0 0 3px #fff,0 0 0 4px var(--class-accent);color:var(--class-accent);border-radius:50%;flex:0 0 40px;place-items:center;display:grid;overflow:hidden}.classes-page .class-card__teacher-face img{object-fit:cover;width:100%;height:100%;display:block}.classes-page .class-card__teacher-initials{font-family:var(--vc-display);letter-spacing:.03em;font-size:.8rem;font-weight:850}.classes-page .class-card:is(:hover,:focus-within) .class-card__teacher{transform:none}.classes-page .class-card:is(:hover,:focus-within) .class-card__teacher-face{box-shadow:0 0 0 3px #fff,0 0 0 4px var(--class-accent);transform:none}.classes-page .class-card__teacher-copy{flex-direction:column;align-items:flex-start;gap:2px;min-width:0;display:flex}.classes-page .class-card__teacher-copy strong{max-width:100%;color:var(--vc-ink);text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;font-weight:750;overflow:hidden}.classes-page .class-card__teacher-copy small{color:var(--vc-ink-2);font-family:var(--vc-mono);letter-spacing:.14em;text-transform:uppercase;font-size:.55rem;font-weight:700}.classes-page .class-card__details{align-content:center;gap:14px;min-width:0;display:grid}.classes-page .class-card .class-code{width:fit-content;min-width:0;max-width:100%;margin:0}.classes-page .class-card .class-code code{min-width:0}.classes-page .class-card__body{border-top:1px solid var(--vc-line);flex-wrap:wrap;align-items:center;gap:10px 12px;min-width:0;margin:0;padding:12px 0 0;transition:border-color .18s;display:flex;transform:none}.classes-page .class-card:is(:hover,:focus-within) .class-card__body{border-color:var(--class-accent);transform:none}.classes-page .class-card__roster{flex:1 1 0;gap:8px;min-width:0;display:grid}.classes-page .class-card__faces{flex:none;align-items:center;max-width:100%;padding-left:3px;display:flex}.classes-page .class-card__face{background:var(--class-soft);border-radius:50%;flex:0 0 36px;place-items:center;width:36px;height:36px;margin-left:-9px;transition:transform .18s;display:grid;overflow:hidden;transform:translate(0);box-shadow:0 0 0 3px #fff,0 3px 8px -6px #191233b3}.classes-page .class-card__face:first-child{margin-left:0}.classes-page .class-card__face img{object-fit:cover;width:100%;height:100%;display:block}.classes-page .class-card__face-initials{color:var(--class-accent);font-family:var(--vc-display);letter-spacing:.02em;font-size:.7rem;font-weight:850}.classes-page .class-card:is(:hover,:focus-within) .class-card__face{transform:translateY(-2px)}.classes-page .class-card__face--more{background:var(--vc-ink);color:#fff;font-family:var(--vc-mono);font-size:.62rem;font-weight:700}.classes-page .class-card__student-names{flex-wrap:wrap;gap:3px 8px;min-width:0;display:flex}.classes-page .class-card__student-names a,.classes-page .class-card__student-names span{max-width:100%;color:var(--vc-ink-2);text-overflow:ellipsis;white-space:nowrap;font-size:.65rem;font-weight:750;text-decoration:none;overflow:hidden}.classes-page .class-card__student-names a:hover,.classes-page .class-card__student-names a:focus-visible{color:var(--class-accent);text-underline-offset:3px;text-decoration:underline}.classes-page .class-card__student-names a:focus-visible{outline:2px solid var(--class-accent);outline-offset:2px;border-radius:2px}.classes-page .class-card__empty{color:var(--vc-ink-3);margin:0;font-size:.78rem}.classes-page .class-card__count{color:var(--vc-ink-2);font-family:var(--vc-mono);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;margin:0;font-size:.61rem;font-weight:700}.classes-page .class-card--student{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);height:auto;min-height:184px}.classes-page .class-card__goal-summary{border-top:1px solid var(--vc-line);grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;margin:0;padding-top:12px;display:grid}.classes-page .class-card__goal-copy{min-width:0}.classes-page .class-card__goal-copy strong{overflow-wrap:anywhere;text-overflow:clip;white-space:normal}.classes-page .class-card__goal-points{min-width:0}.classes-page .class-card__open-corner{border:2px solid var(--vc-ink);background:var(--class-accent);width:auto;min-width:88px;height:44px;min-height:44px;color:var(--vc-ink);box-shadow:3px 3px 0 var(--vc-ink);border-radius:12px;justify-content:center;place-self:center end;align-items:center;gap:7px;padding:0 13px;text-decoration:none;transition:transform .18s,background-color .18s,box-shadow .18s;display:inline-flex;position:relative;bottom:auto;right:auto;overflow:hidden;transform:none}.classes-page .class-card__open-corner:before{display:none}.classes-page .class-card__open-corner-in{justify-content:center;align-items:center;gap:7px;display:inline-flex;transform:none}.classes-page .class-card__open-label{opacity:1;max-width:none;overflow:visible;transform:none}.classes-page .class-card__open-corner svg{flex:none;transform:none}.classes-page .class-card:is(:hover,:focus-within) .class-card__open-corner,.classes-page .class-card__open-corner:focus-visible{border-color:var(--vc-ink);background:var(--vc-yellow);width:auto;box-shadow:4px 4px 0 var(--vc-ink);color:var(--vc-ink);transform:translateY(-2px)}.classes-page .class-card:is(:hover,:focus-within) .class-card__open-label,.classes-page .class-card__open-corner:focus-visible .class-card__open-label{opacity:1;max-width:none;transform:none}.classes-page .class-card:is(:hover,:focus-within) .class-card__open-corner svg,.classes-page .class-card__open-corner:focus-visible svg{transform:none}.classes-page .class-card__open-corner:active{box-shadow:1px 1px 0 var(--vc-ink);transform:translateY(2px)}.classes-page .class-card__open-corner:focus-visible{outline:3px solid var(--class-accent);outline-offset:3px}.classes-page .school-class-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:14px;display:grid}.classes-page .school-class-card{isolation:isolate;border:2px solid var(--vc-ink);min-width:0;min-height:0;box-shadow:4px 4px 0 var(--vc-ink);background:#fff;border-radius:18px 14px 20px 15px;grid-template-columns:minmax(0,1fr) auto;gap:14px;padding:16px;transition:transform .2s,border-color .18s,box-shadow .2s;display:grid;position:relative;overflow:hidden}.classes-page .school-class-card__top{grid-template-columns:39px minmax(0,1fr);align-items:center;gap:11px;min-width:0;display:grid}.classes-page .school-class-card__flag{border:1px solid var(--class-accent);background:var(--class-soft);border-radius:12px;place-items:center;width:39px;height:39px;display:grid}.classes-page .school-class-card__top h3{max-width:100%;color:var(--vc-ink);font-family:var(--vc-display);text-overflow:ellipsis;-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;margin:0;font-size:1rem;line-height:1.1;display:-webkit-box;overflow:hidden}.classes-page .school-class-card__top p{color:var(--vc-ink-3);margin:5px 0 0;font-size:.68rem}.classes-page .school-class-card .class-code{grid-column:1/-1;align-self:start;width:fit-content;max-width:100%;margin:0}.classes-page .school-class-card__foot{border-top:1px solid var(--vc-line);grid-column:1/-1;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;margin:0;padding-top:12px;display:grid}.classes-page .school-class-card__teacher{min-width:0;color:var(--vc-ink-2);text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;font-weight:750;overflow:hidden}.classes-page .school-class-card__open,.classes-page .school-class-card__join{border:2px solid var(--vc-ink);background:var(--class-soft);min-height:40px;color:var(--vc-ink);border-radius:10px;justify-content:center;align-items:center;gap:5px;padding:0 11px;font-size:.68rem;font-weight:850;text-decoration:none;transition:transform .16s,background-color .16s;display:inline-flex}.classes-page .school-class-card__open:hover,.classes-page .school-class-card__join:hover{background:var(--vc-yellow);transform:translateY(-1px)}.classes-page .school-class-card__join:disabled{cursor:progress;opacity:.65}@media(max-width:600px){.classes-page .class-card{grid-template-columns:minmax(0,1fr);gap:14px}.classes-page .class-card:before,.classes-page .school-class-card:before{width:auto;height:70px;inset:0 0 auto}.classes-page .class-card__open-corner{place-self:start}.classes-page .class-card__goal-summary{grid-template-columns:52px minmax(0,1fr) auto;gap:9px}.classes-page .goal-blob{width:52px;height:48px}}@media(max-width:720px){.classes-page .class-grid{grid-template-columns:minmax(0,1fr);gap:16px}.classes-page .class-card{padding:17px}.classes-page .class-card__title{white-space:normal;min-height:0;display:-webkit-box}.classes-page .school-class-grid{grid-template-columns:minmax(0,1fr)}}@media(max-width:430px){.classes-page .class-card__goal-summary{grid-template-columns:48px minmax(0,1fr)}.classes-page .class-card__goal-points{grid-column:2;justify-self:start}.classes-page .goal-blob{width:48px;height:46px}}@media(prefers-reduced-motion:reduce){.classes-page .class-card,.classes-page .school-class-card,.classes-page .class-card__open-corner,.classes-page .school-class-card__open,.classes-page .school-class-card__join,.classes-page .class-card__face,.classes-page .goal-blob{transition:none!important;animation:none!important}}@media(forced-colors:active){.classes-page .class-card,.classes-page .school-class-card,.classes-page .class-card__open-corner,.classes-page .school-class-card__open,.classes-page .school-class-card__join{box-shadow:none;color:canvastext;background:canvas;border-color:canvastext}.classes-page .class-card:before,.classes-page .class-card:after,.classes-page .school-class-card:before,.classes-page .school-class-card:after{display:none}}.teacher-plan-panel{--plan-ease:cubic-bezier(.16, 1, .3, 1)}.teacher-plan-panel__intro{color:var(--vc-ink-2);margin:8px 0 0;font-size:.875rem;line-height:1.5}.teacher-plan-panel .goal-lanes{gap:32px}.teacher-plan-panel .goal-lane+.goal-lane,.teacher-plan-panel .goal-lane__heading{border:0;padding:0}.teacher-plan-panel .goal-lane__heading h3{font-size:1.25rem}.teacher-plan-panel .goal-add{min-height:44px;padding:8px 12px;font-size:.8125rem}.teacher-plan-panel .week-nav__row+.week-nav__row{border:0;margin-top:12px;padding-top:0}.teacher-plan-panel .goal-lane__empty{background:var(--vc-cream);min-height:160px;color:var(--vc-ink-2);border-radius:16px;margin-top:16px;padding:24px;font-size:.875rem;line-height:1.5}.teacher-plan-panel .goal-card-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));align-items:stretch;gap:16px;margin-top:16px;display:grid}.teacher-plan-panel .goal-card{border:1px solid var(--vc-line-2);background:var(--vc-surface);min-width:0;color:var(--vc-ink);animation:teacher-goal-arrive .28s calc(var(--motion-index,0) * 40ms) var(--plan-ease) backwards;transition:box-shadow .18s ease,border-color .18s ease,transform .18s var(--plan-ease);border-radius:16px;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:24px;padding:24px;display:flex;box-shadow:0 4px 16px #0b0b0d0a}.teacher-plan-panel .goal-card:focus-within{border-color:var(--vc-purple)}.teacher-plan-panel .goal-card.is-incomplete{background:#fff8f1;border-color:#e7b29e}.teacher-plan-panel .goal-card__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.teacher-plan-panel .goal-card__kind{color:var(--vc-ink-2);font-family:var(--vc-font);letter-spacing:0;text-transform:none;align-items:center;gap:8px;font-size:.8125rem;font-weight:700;display:inline-flex}.teacher-plan-panel .goal-card__kind-dot{display:none}.teacher-plan-panel .goal-card__target{background:var(--vc-purple-soft);color:var(--vc-purple-dark);border-radius:6px;padding:4px 7px;font-size:.75rem;line-height:1.2}.teacher-plan-panel .goal-card__state{color:var(--vc-ink-2);align-items:center;gap:7px;font-size:.75rem;font-weight:650;display:inline-flex}.teacher-plan-panel .goal-card__state-dot{background:var(--vc-green);border-radius:50%;width:6px;height:6px}.teacher-plan-panel .goal-card__state.is-warning{color:var(--vc-coral-dark)}.teacher-plan-panel .goal-card__state.is-warning .goal-card__state-dot{background:var(--vc-coral-dark)}.teacher-plan-panel .goal-card__content{gap:16px;min-width:0;display:grid}.teacher-plan-panel .goal-card__heading{margin:0}.teacher-plan-panel .goal-card__title{width:100%;min-height:44px;color:var(--vc-ink);font-family:var(--vc-display);letter-spacing:-.025em;white-space:normal;overflow-wrap:anywhere;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;font-size:1.375rem;font-weight:800;line-height:1.25;transition:color .16s;display:block;overflow:visible}.teacher-plan-panel .goal-card__title:hover{color:var(--vc-purple-dark)}.teacher-plan-panel .goal-card__sets{flex-wrap:wrap;gap:8px;min-width:0;display:flex}.teacher-plan-panel .goal-card__sets a,.teacher-plan-panel .goal-card__sets .is-missing{background:var(--vc-purple-soft);max-width:100%;min-height:44px;color:var(--vc-purple-dark);overflow-wrap:anywhere;text-align:left;cursor:pointer;border:0;border-radius:8px;align-items:center;gap:8px;padding:8px 12px;font-size:.8125rem;font-weight:600;line-height:1.4;text-decoration:none;transition:background-color .16s;display:inline-flex}.teacher-plan-panel .goal-card__sets a:hover{background:var(--vc-purple-soft-2)}.teacher-plan-panel .goal-card__sets .is-missing{background:var(--vc-coral-soft);color:var(--vc-coral-dark)}.teacher-plan-panel .goal-card__sets .is-missing:hover{background:#ffe4d8}.teacher-plan-panel .goal-card__sets .is-missing>span{font-weight:800}.teacher-plan-panel .goal-card__footer{border:0;gap:20px;margin-top:auto;padding:0;display:grid}.teacher-plan-panel .goal-card__summary{flex-wrap:wrap;gap:24px;display:flex}.teacher-plan-panel .goal-card__metric{gap:4px;display:grid}.teacher-plan-panel .goal-card__metric strong{font-family:var(--vc-display);font-size:1.25rem;line-height:1.2}.teacher-plan-panel .goal-card__metric>span{color:var(--vc-ink-2);font-size:.75rem;line-height:1.4}.teacher-plan-panel .goal-card__actions{flex-wrap:wrap;gap:8px;display:flex}.teacher-plan-panel .goal-card__edit,.teacher-plan-panel .goal-card__print{border:0;border-radius:8px;justify-content:center;align-items:center;gap:7px;min-height:44px;padding:10px 14px;font-size:.8125rem;font-weight:700;line-height:1.2;text-decoration:none;transition:background-color .16s,color .16s;display:inline-flex}.teacher-plan-panel .goal-card__edit{background:var(--vc-purple-soft);color:var(--vc-purple-dark)}.teacher-plan-panel .goal-card__edit:hover{background:var(--vc-purple-soft-2)}.teacher-plan-panel .goal-card__edit.is-primary{background:var(--vc-purple);color:#fff}.teacher-plan-panel .goal-card__edit.is-primary:hover{background:var(--vc-purple-dark)}.teacher-plan-panel .goal-card__print{background:var(--vc-cream);color:var(--vc-ink-2)}.teacher-plan-panel .goal-card__print:hover{background:var(--vc-line);color:var(--vc-ink)}.teacher-plan-panel :is(button,a):focus-visible{outline:2px solid var(--vc-purple);outline-offset:4px}@keyframes teacher-goal-arrive{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(hover:hover)and (prefers-reduced-motion:no-preference){.teacher-plan-panel .goal-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0b0b0d14}}@media(max-width:900px){.teacher-plan-panel .goal-lanes{grid-template-columns:minmax(0,1fr);gap:32px}}@media(max-width:480px){.teacher-plan-panel .goal-card{padding:20px}}@media(prefers-reduced-motion:reduce){.teacher-plan-panel .goal-card,.teacher-plan-panel .goal-card *{transition:none;animation:none}.teacher-plan-panel .goal-card:hover,.teacher-plan-panel .goal-card:focus-within{transform:none}}.skip-link{z-index:120;border:2px solid var(--vc-ink);background:var(--vc-yellow);box-shadow:3px 3px 0 var(--vc-ink);color:var(--vc-ink);border-radius:10px;padding:9px 13px;font-size:.76rem;font-weight:850;text-decoration:none;transition:transform .16s;position:fixed;top:10px;left:16px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.app-header{z-index:40;border-bottom:2px solid var(--vc-ink);background:var(--vc-cream);box-shadow:none;position:sticky;top:0}.app-header.is-stuck{background:#fffaf5;box-shadow:0 4px #0b0b0d1f}.app-header__inner{align-items:center;gap:18px;width:min(1400px,100% - 32px);min-height:74px;margin:0 auto;display:flex;position:relative}.brand{width:154px;margin-right:8px}.brand__logo{width:100%;height:auto;display:block}.top-nav{align-items:center;gap:4px;min-width:0;display:flex}.top-nav__link{min-height:42px;color:var(--vc-ink-2);white-space:nowrap;border:2px solid #0000;border-radius:12px 9px 13px 10px;align-items:center;gap:8px;padding:0 13px;font-size:.82rem;font-weight:850;text-decoration:none;transition:transform .18s cubic-bezier(.2,.9,.3,1.2),background-color .16s,border-color .16s,color .16s,box-shadow .16s;display:inline-flex;position:relative;overflow:hidden}.top-nav__icon{object-fit:contain;flex:0 0 24px;width:24px;height:24px;transition:transform .18s cubic-bezier(.2,.9,.3,1.2);display:block}.top-nav__link:hover,.top-nav__link:focus-visible{border-color:var(--vc-ink);background:var(--vc-purple-soft);color:var(--vc-purple-dark);box-shadow:2px 2px 0 var(--vc-ink);transform:translateY(-2px)}.top-nav__link:hover .top-nav__icon,.top-nav__link:focus-visible .top-nav__icon,.top-nav__link.is-active .top-nav__icon{transform:rotate(-4deg)scale(1.06)}.top-nav__link.is-active{border-color:var(--vc-ink);background:var(--vc-yellow);box-shadow:2px 2px 0 var(--vc-ink);color:var(--vc-ink)}.top-nav__link:active{box-shadow:1px 1px 0 var(--vc-ink);transform:translateY(0)}.top-nav__toggle{border:2px solid var(--vc-ink);background:var(--vc-yellow);width:44px;height:44px;box-shadow:3px 3px 0 var(--vc-ink);color:var(--vc-ink);border-radius:11px 8px 12px 9px;flex:0 0 44px;place-items:center;padding:0;display:none;position:relative;overflow:hidden}.top-nav__toggle:hover,.top-nav__toggle:focus-visible{background:var(--vc-pink);transform:translateY(-1px)}.top-nav__toggle:active{box-shadow:1px 1px 0 var(--vc-ink);transform:translateY(1px)}.header-utility{margin-left:auto}.account-control__avatar{flex:0 0 40px;place-items:center;width:40px;height:40px;display:grid}@media(max-width:760px){.app-header__inner{gap:8px;width:min(100% - 20px,1400px);min-height:64px}.brand{width:132px;margin-right:0}.top-nav__toggle{margin-left:auto;display:grid}.top-nav{border:2px solid var(--vc-ink);background:var(--vc-surface);box-shadow:4px 5px 0 var(--vc-ink);border-radius:0 0 16px 16px;grid-template-columns:1fr;gap:4px;padding:10px;display:none;position:absolute;top:calc(100% + 2px);left:0;right:0}.top-nav.is-open{animation:.18s ease-out both top-nav-arrive;display:grid}.top-nav__link{min-height:48px;padding-inline:14px}.top-nav__icon{flex-basis:26px;width:26px;height:26px}.header-utility{gap:6px;margin-left:0}.environment-menu__trigger{min-width:44px;padding-inline:10px}.environment-menu__popover{right:0}.header-utility .nav-stats,.header-utility .nav-stats--loading{display:none}.account-control__profile{min-width:44px;min-height:44px;padding:2px}.account-control__profile>svg{display:none}.account-control__avatar,.account-control__profile img,.account-control__fallback{flex-basis:36px;width:36px;height:36px}}@media(max-width:420px){.app-header__inner{width:calc(100% - 16px)}.brand{width:116px}.account-menu__popover{width:min(232px,100vw - 24px);right:-2px}}@keyframes top-nav-arrive{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.skip-link,.top-nav.is-open,.top-nav__link,.top-nav__icon,.top-nav__toggle{transition:none;animation:none}}.app-frame--student-classes,.app-frame--student-classes .student-class-main,.student-workspace-page,.student-workspace-page .workspace-shell,.student-workspace-page .workspace-panel{background:#fff}.student-classes-page{gap:40px;display:grid}.student-classes-page .school-directory,.student-classes-page .teacher-group__heading,.student-workspace-page .workspace-hero,.student-workspace-page .workspace-tabs,.student-workspace-page .student-goal-lane,.student-workspace-page .goal-lane__heading{border:0}.student-class-main hr{display:none}.student-classes-page .class-card,.student-classes-page .school-class-card{background:#fff;border:1px solid #dfe3e8;box-shadow:0 3px 14px #1118270d}.student-classes-page .class-card:before,.student-classes-page .class-card:after,.student-classes-page .school-class-card:before,.student-classes-page .school-class-card:after,.student-workspace-page .workspace-hero__kicker{display:none}.student-workspace-page .workspace-shell{box-shadow:none;border:0}.student-workspace-page .student-goal-lanes{gap:24px}.student-workspace-page .student-goal-lane{padding:0}.student-workspace-page .student-goal-tile{background:#fff;border:1px solid #dfe3e8;border-radius:16px;grid-template-columns:1fr;display:grid;overflow:hidden;box-shadow:0 3px 14px #1118270d}.student-workspace-page .student-goal-tile__image-wrap{width:100%;height:140px;position:static}.student-workspace-page .student-goal-tile__image{object-fit:cover;opacity:1;width:100%;height:140px;position:static;transform:none}.student-workspace-page .student-goal-tile__body{background:#fff;border:0;grid-template-columns:minmax(0,1fr);gap:20px;width:100%;min-height:0;padding:20px;display:grid}.student-workspace-page .student-goal-tile__copy>strong{font-size:1.15rem;line-height:1.35}.student-workspace-page .student-goal-tile__meta{gap:12px;font-size:.8rem}.student-workspace-page .student-goal-tile__actions{justify-content:space-between;display:flex}.student-workspace-page .student-goal-tile__info,.student-workspace-page .student-goal-tile__play{min-height:44px}.student-workspace-page .student-week-navigation{box-shadow:none;background:#fff;border:1px solid #dfe3e8;border-radius:16px;padding:20px}.student-workspace-page .class-calendar__surface{box-shadow:none;background:#fff;border:0;padding:0}.student-workspace-page .class-calendar__surface-head{background:#fff;border:0;padding:0 0 24px}.student-workspace-page .class-calendar__surface-head .eyebrow{display:none}.student-workspace-page .class-calendar__toolbar{background:#fff;border:1px solid #dfe3e8;border-radius:12px;padding:16px}.student-workspace-page .class-calendar__months{background:#fff;border:0;margin-block:20px}.student-workspace-page .class-calendar__month-grid{border:1px solid #dfe3e8;border-radius:12px;overflow:hidden}.student-workspace-page .class-calendar__weekdays{background:#fff;padding-block:12px}.student-workspace-page .class-calendar__month>li{background:#fff;min-height:120px}.student-workspace-page .student-progress-list{margin-top:32px}.student-progress-list header p{color:var(--vc-ink-3);margin:8px 0 20px}.student-recent-goals{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.student-recent-goal{background:#fff;border:1px solid #dfe3e8;border-radius:16px;flex-direction:column;gap:16px;padding:20px;display:flex}.student-recent-goal__date{color:var(--vc-ink-3);font-size:.78rem}.student-recent-goal h4{overflow-wrap:anywhere;margin:0;font-size:1.1rem;line-height:1.35}.student-recent-goal dl{grid-template-columns:repeat(3,1fr);gap:8px;margin:auto 0 0;display:grid}.student-recent-goal dt{color:var(--vc-ink-3);font-size:.72rem}.student-recent-goal dd{margin:6px 0 0;font-size:1.1rem;font-weight:700}.student-recent-goal a{min-height:44px;color:var(--vc-ink);justify-content:space-between;align-items:center;font-size:.85rem;font-weight:700;display:flex}.join-class-dialog{background:#fff;border:1px solid #dfe3e8;border-radius:20px;padding:28px;box-shadow:0 24px 80px #1118272e}.join-class-dialog .dialog-heading h2{font-size:1.75rem;line-height:1.2}.join-class-dialog .dialog-heading p:not(.eyebrow){font-size:.9rem}.join-class-dialog__input-wrap{color:var(--vc-ink);border:1px solid #aeb7c3;border-radius:10px}.join-class-dialog__input-wrap:focus-within{outline:2px solid var(--vc-ink);outline-offset:3px;box-shadow:none;transform:none}.join-class-dialog__class,.join-class-dialog__confirmation{background:#fff;border:1px solid #dfe3e8}.join-class-dialog__actions{gap:12px;margin-top:16px}.student-class-main :is(a,button):focus-visible{outline:2px solid var(--vc-ink);outline-offset:4px}@media(max-width:900px){.student-recent-goals{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.student-recent-goals{grid-template-columns:minmax(0,1fr)}.student-workspace-page .class-calendar__surface-head{flex-wrap:wrap;gap:16px}.student-workspace-page .class-calendar__month>li{min-height:88px}.join-class-dialog{padding:20px}}.student-workspace-page .class-calendar__month-day.is-selected{outline:2px solid var(--vc-ink);outline-offset:-2px}.student-workspace-page .class-calendar__month-day.is-outside{color:var(--vc-ink-3)}.student-workspace-page .class-calendar__scroll-wrap,.student-workspace-page .class-calendar__weekdays,.student-workspace-page .class-calendar__week-day header,.student-workspace-page .class-calendar__day-hero{border-top:0;border-bottom:0}.student-workspace-page .class-calendar__day-view,.student-workspace-page .class-calendar__week-day{background:#fff}.student-workspace-page .class-calendar__week-day.is-selected{outline:2px solid var(--vc-ink);outline-offset:-2px}.student-workspace-page .class-calendar__date-link{min-width:32px;min-height:32px}.student-workspace-page .class-calendar__legend{text-transform:none;letter-spacing:0;padding-inline:0;font-size:.75rem}.student-workspace-page .class-calendar__goal{font-size:.8rem;line-height:1.4}.student-workspace-page .class-calendar__goal span{white-space:normal;overflow-wrap:anywhere}.student-workspace-page .class-calendar__scroll-wrap:focus-visible{outline:2px solid var(--vc-ink);outline-offset:-2px}.app-main.student-classes-page{box-shadow:none;border:0;border-radius:0;padding-block:40px 64px}.student-classes-page .class-directory__heading,.student-classes-page .class-card__goal-summary,.student-classes-page .school-class-card__foot,.student-workspace-page .student-week-navigation__heading,.student-workspace-page .student-progress-list{border:0}.join-class-dialog__input-wrap input:focus{box-shadow:none;border:0;outline:0}@media(max-width:620px){.app-main.student-classes-page{padding-block:24px 40px}}.class-calendar__mobile-count,.class-calendar__mobile-hint{display:none}.student-workspace-page .student-workspace-summary{border-top:0}@media(max-width:620px){.student-workspace-page .class-calendar__month-grid{width:100%;min-width:0}.student-workspace-page .class-calendar__weekdays{padding-block:8px}.student-workspace-page .class-calendar__weekdays span{text-align:center;padding:6px 0;font-size:.65rem}.student-workspace-page .class-calendar__month>li{min-height:80px;padding:8px 2px}.student-workspace-page .class-calendar__month-day header{justify-content:center}.student-workspace-page .class-calendar__month-day .class-calendar__goals,.student-workspace-page .class-calendar__month-day .class-calendar__today{display:none}.student-workspace-page .class-calendar__mobile-count{text-align:center;color:var(--vc-ink-3);white-space:nowrap;margin-top:4px;font-size:.63rem;display:block}.student-workspace-page .class-calendar__mobile-hint{color:var(--vc-ink-3);margin:4px 0 16px;font-size:.85rem;display:block}}.app-frame--class-pages{background:#fff}.app-main.class-page-main{width:min(1180px,100% - 48px);box-shadow:none;background:#fff;border:0;border-radius:0;margin:0 auto;padding:32px 0 64px}.app-main.class-page-main.classes-page{gap:40px;display:grid}.class-page-main hr{display:none}.class-page-main .school-directory,.class-page-main .class-directory__heading,.class-page-main .teacher-group__heading{border:0}.class-page-main .school-directory{margin-inline:0}.class-page-main .class-card,.class-page-main .school-class-card{background:#fff;border:1px solid #dfe3e8;box-shadow:0 3px 14px #1118270d}.class-page-main .class-card:before,.class-page-main .class-card:after,.class-page-main .school-class-card:before,.class-page-main .school-class-card:after{display:none}.class-page-main.workspace-page{animation:none}.class-page-main.workspace-page .workspace-hero{background:#fff;border:0;flex-wrap:wrap;padding:8px 0 32px;animation:none}.class-page-main.workspace-page .workspace-tabs{border:0;gap:24px;margin:0;animation:none}.class-page-main.workspace-page [role=tabpanel]{animation:none}.class-page-main.workspace-page .workspace-panel{background:#fff;margin:0;padding:32px 0 0}.class-page-main.workspace-page .workspace-hero__aside{min-width:0}.class-page-main.workspace-page .workspace-hero__actions,.teacher-workspace-page .workspace-summary{flex-wrap:wrap}.teacher-workspace-page .week-nav{box-shadow:none;background:#fff;border:1px solid #dfe3e8;border-radius:16px;padding:20px}.teacher-workspace-page .goal-card{border-color:#dfe3e8;gap:20px;padding:0;overflow:hidden;box-shadow:0 3px 14px #1118270d}.teacher-workspace-page .goal-card__image-wrap{width:100%;height:140px;display:block}.teacher-workspace-page .goal-card__image{object-fit:cover;width:100%;height:140px;display:block}.teacher-workspace-page .goal-card__header,.teacher-workspace-page .goal-card__content,.teacher-workspace-page .goal-card__footer{margin-inline:20px}.teacher-workspace-page .goal-card__footer{margin-bottom:20px}.teacher-workspace-page .goal-card__content{gap:12px}.teacher-workspace-page .goal-card__title{font-size:1.15rem;line-height:1.35}.teacher-workspace-page .goal-card__game-name{color:var(--vc-ink-3);font-size:.8125rem}.class-page-main :is(a,button):focus-visible{outline:2px solid var(--vc-ink);outline-offset:4px}@media(max-width:620px){.app-main.class-page-main{width:calc(100% - 32px);padding:24px 0 40px}.class-page-main.workspace-page .workspace-hero{align-items:flex-start;gap:24px}.class-page-main.workspace-page .workspace-hero__aside{width:100%}.class-page-main.workspace-page .workspace-tabs{gap:20px}.teacher-workspace-page .week-nav{padding:12px}}.class-page-main .workspace-summary__metric{border:0}.teacher-workspace-page .workspace-summary{box-shadow:none;background:0 0;border:0;gap:20px;padding:0;display:flex}.teacher-workspace-page .workspace-hero__actions .button{border:1px solid var(--vc-ink);box-shadow:none;border-radius:999px}.teacher-workspace-page .icon-button--hero{min-width:44px;min-height:44px;box-shadow:none;background:#fff;border:1px solid #dfe3e8;border-radius:999px}.app-frame--class-pages .app-header{box-shadow:none;background:#fff;border-bottom:1px solid #dfe3e8}.app-frame--class-pages .top-nav__link{box-shadow:none;border:0;border-radius:10px}.app-frame--class-pages .top-nav__link:before,.app-frame--class-pages .top-nav__link:after{display:none}.class-page-main .class-card__goal-summary,.class-page-main .school-class-card__foot,.teacher-classes-page .class-card__roster{border:0}.app-frame--class-pages .account-control__fallback{color:var(--vc-ink)}@media(max-width:760px){.class-page-main .workspace-hero__identity{align-items:start}.class-page-main .workspace-hero__identity .language-token{margin-top:4px}}@media(max-width:620px){.teacher-workspace-page .workspace-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%;display:grid}.teacher-workspace-page .workspace-summary>span{padding-inline:0}.teacher-workspace-page .workspace-summary__metric small{white-space:normal}.class-page-main.workspace-page .workspace-hero__actions{flex-wrap:nowrap;justify-content:flex-start;width:100%}.class-page-main.workspace-page .workspace-hero__actions .button{flex:auto;justify-content:center}.student-month-rail{grid-template-columns:auto minmax(0,1fr) auto}.student-workspace-page .student-week-navigation{padding:14px}}@media(min-width:601px)and (max-width:960px){.classes-page .class-card{grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:0}.classes-page .class-card__open-corner{grid-column:1/-1;place-self:end}}.dialog-heading__hint{color:var(--vc-ink-3);margin:4px 0 0;font-size:.85rem}
