/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial}::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:root,:host{--color-red-50:lab(96.5005% 4.18511 1.52329);--color-red-200:lab(86.017% 19.8815 7.75869);--color-red-300:lab(76.5514% 36.4219 15.5335);--color-red-500:lab(55.4814% 75.0732 48.8528);--color-red-600:lab(48.4493% 77.4328 61.5452);--color-red-700:lab(40.4273% 67.2623 53.7441);--color-red-800:lab(33.7174% 55.8993 41.0293);--color-red-900:lab(28.5139% 44.5539 29.0463);--color-red-950:lab(13.003% 29.04 16.7519);--color-amber-50:lab(98.6252% -.635982 8.42309);--color-amber-200:lab(91.7203% -.505269 49.9084);--color-amber-300:lab(86.4156% 6.13147 78.3961);--color-amber-500:lab(72.7183% 31.8672 97.9407);--color-amber-950:lab(15.8111% 20.9107 23.3752);--color-yellow-400:lab(83.2664% 8.65132 106.895);--color-yellow-700:lab(47.8202% 25.2426 66.5015);--color-emerald-50:lab(97.8462% -6.94963 1.85487);--color-emerald-200:lab(90.2247% -31.039 9.47084);--color-emerald-500:lab(66.9756% -58.27 19.5419);--color-emerald-600:lab(55.0481% -49.9246 15.93);--color-emerald-700:lab(44.4871% -41.0396 11.0361);--color-emerald-800:lab(35.3675% -33.1188 8.04002);--color-emerald-900:lab(28.8637% -26.9249 5.45986);--color-emerald-950:lab(15.0582% -17.9507 2.38369);--color-slate-50:lab(98.1434% -.369549 -1.05968);--color-slate-100:lab(96.286% -.852466 -2.46847);--color-slate-200:lab(91.7353% -.998765 -4.76968);--color-slate-300:lab(84.7652% -1.94535 -7.93337);--color-slate-400:lab(65.5349% -2.25151 -14.5072);--color-slate-500:lab(48.0876% -2.03595 -16.5814);--color-slate-600:lab(35.5623% -1.74978 -15.4316);--color-slate-700:lab(26.9569% -1.47018 -15.6993);--color-slate-800:lab(16.132% -.318021 -14.6672);--color-slate-900:lab(7.78673% 1.82346 -15.0537);--color-slate-950:lab(1.76974% 1.32743 -9.28855);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xl:36rem;--container-2xl:42rem;--container-3xl:48rem;--container-6xl:72rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-black:900;--tracking-tight:-.025em;--tracking-wide:.025em;--leading-tight:1.25;--leading-relaxed:1.625;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--radius-2xl:1rem;--radius-3xl:1.5rem;--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--blur-sm:8px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1)}}@layer base{:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#161212;--ink:#f8eeee;--muted:#c5b7b7;--line:#3d3131;--red-soft:#401d23;--surface:#211a1a;--surface-muted:#191414;--shadow:0 1rem 3rem #0003}::selection{color:#172033;background:#b9ddff}*{box-sizing:border-box}html,body{min-height:100%}body{min-height:100vh;color:var(--ink);background:radial-gradient(circle at top, #f9e9e9 0, transparent 34rem), var(--paper);margin:0;font-family:Arial,Helvetica,sans-serif}.shell{width:min(100% - 2rem,30rem);margin:0 auto;padding:2rem 0 3rem}.brand{color:var(--ink);align-items:center;gap:.6rem;font-size:1.05rem;font-weight:750;text-decoration:none;display:inline-flex}.brand span{aspect-ratio:1;color:#fff;background:var(--red);border-radius:.55rem;place-items:center;width:2rem;display:grid}.form,.panel{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:1rem;gap:1rem;margin-top:2.5rem;padding:1.5rem;display:grid}h1,h2,h3,p{margin:0}h1{letter-spacing:-.035em;font-size:clamp(1.5rem,5vw,2rem)}p{color:var(--muted);line-height:1.5}label{color:var(--ink);gap:.45rem;font-size:.92rem;font-weight:650;display:grid}input{border:1px solid var(--line);width:100%;min-height:2.75rem;color:inherit;font:inherit;background:0 0;border-radius:.55rem;padding:.7rem .8rem}.password-field{gap:.45rem;display:grid}.password-control{display:block;position:relative}.password-control input{padding-right:4.75rem}.password-control button{border:1px solid var(--line);min-height:2.15rem;color:var(--ink);background:0 0;padding:0 .65rem;font-size:.82rem;position:absolute;top:.3rem;right:.3rem}.password-control button:hover:not(:disabled){background:var(--line)}@supports (color:color-mix(in lab, red, red)){.password-control button:hover:not(:disabled){background:color-mix(in srgb, var(--line) 50%, transparent)}}:is(input:focus-visible,button:focus-visible,a:focus-visible){outline:3px solid var(--red)}@supports (color:color-mix(in lab, red, red)){:is(input:focus-visible,button:focus-visible,a:focus-visible){outline:3px solid color-mix(in srgb, var(--red) 60%, transparent)}}:is(input:focus-visible,button:focus-visible,a:focus-visible){outline-offset:2px}button{color:#fff;background:var(--red);cursor:pointer;min-height:2.75rem;font:inherit;border:0;border-radius:.55rem;font-weight:700}button:hover:not(:disabled){background:var(--red-hover,var(--red-dark))}button:disabled{cursor:wait;opacity:.7}a{color:var(--red-dark);font-weight:650}.message{border-radius:.55rem;padding:.7rem .8rem;font-size:.92rem}.message.error{color:#791826;background:#fce8e9}.message.success{color:#17633a;background:#e8f7ee}.small{font-size:.82rem}.actions{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.actions form{margin:0}.secondary{border:1px solid var(--line);color:var(--ink);background:0 0;padding:.65rem .9rem}.student-bell{position:relative}.student-bell-count{color:#fff;background:var(--red);border-radius:99px;place-items:center;min-width:1.15rem;height:1.15rem;padding:0 .2rem;font-size:.62rem;font-weight:800;display:grid;position:absolute;top:-.35rem;right:-.4rem}.student-inbox-list{display:grid}.student-inbox-item{border-top:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:1rem;padding:1rem .15rem;display:flex}.student-inbox-item:first-child{border-top:0}.student-inbox-item>div{min-width:0}.student-inbox-item.is-read{opacity:.7}.student-inbox-heading{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.student-inbox-heading h3{color:var(--ink);font-size:.95rem}.student-inbox-date{margin-top:.2rem;font-size:.72rem}.student-inbox-message{color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;margin-top:.6rem;font-size:.88rem}.student-inbox-read{background:var(--red-soft);min-height:2.25rem;color:var(--red-dark);white-space:nowrap;padding:.4rem .7rem;font-size:.75rem}.student-inbox-read:hover:not(:disabled){color:#fff}@media (max-width:520px){.student-inbox-item{display:grid}.student-inbox-read{justify-self:start}}.shell:has(.portal-frame){width:100%;min-height:100vh;margin:0;padding:0}.portal-frame{background:var(--surface-muted);grid-template-columns:16.5rem minmax(0,1fr);min-height:100vh;display:grid}.portal-sidebar{border-right:1px solid var(--line);background:var(--surface);flex-direction:column;height:100vh;padding:1.4rem .85rem;display:flex;position:sticky;top:0}.portal-brand{color:var(--ink);letter-spacing:-.025em;align-items:center;gap:.5rem;padding:.4rem .65rem 1.7rem;text-decoration:none;display:flex}.portal-brand>span{aspect-ratio:1;color:#fff;background:var(--red);border-radius:.55rem;place-items:center;width:2rem;font-size:1.15rem;display:grid}.portal-brand strong{font-size:1.2rem}.portal-brand small{color:var(--muted);letter-spacing:.1em;align-self:flex-end;margin:0 0 .18rem -.25rem;font-size:.55rem;font-weight:800}.portal-navigation{gap:.18rem;display:grid}.nav-heading{color:var(--muted);letter-spacing:.09em;text-transform:uppercase;margin:0 0 .45rem;padding:0 .7rem;font-size:.66rem;font-weight:800}.portal-nav-link{width:100%;min-height:2.75rem;color:var(--muted);text-align:left;background:0 0;border:0;border-radius:.55rem;align-items:center;gap:.75rem;padding:.55rem .7rem;font-size:.88rem;font-weight:650;text-decoration:none;display:flex}.portal-nav-link:hover{color:var(--ink);background:var(--surface-muted)}.portal-nav-link.active{color:var(--red-dark);background:var(--red-soft)}.nav-icon{color:currentColor;place-items:center;width:1.25rem;font-size:1rem;font-weight:800;display:grid}.portal-sign-out{margin-top:auto}.portal-sign-out .portal-nav-link{cursor:pointer}.portal-workspace{min-width:0}.portal-header{border-bottom:1px solid var(--line);background:var(--surface);justify-content:space-between;align-items:center;gap:1rem;min-height:5.5rem;padding:.9rem clamp(1rem,3vw,2.7rem);display:flex}@supports (color:color-mix(in lab, red, red)){.portal-header{background:color-mix(in srgb, var(--surface) 92%, transparent)}}.portal-header h1{font-size:clamp(1.25rem,2.4vw,1.75rem)}.breadcrumb{color:var(--muted);margin-bottom:.22rem;font-size:.72rem;font-weight:650}.breadcrumb span{color:var(--red-dark);padding:0 .25rem}.header-actions{align-items:center;gap:.55rem;display:flex}.icon-button{border:1px solid var(--line);width:2.75rem;min-height:2.75rem;color:var(--muted);background:var(--surface);border-radius:.65rem;place-items:center;padding:0;font-size:1rem;text-decoration:none;display:grid}.icon-button:hover{color:var(--ink);background:var(--surface-muted)}.profile-chip{border:1px solid var(--line);min-width:2.75rem;min-height:2.75rem;color:var(--ink);background:var(--surface);border-radius:.7rem;align-items:center;gap:.55rem;padding:.25rem .55rem .25rem .25rem;font-size:.8rem;text-decoration:none;display:flex}.profile-chip span{aspect-ratio:1;color:#fff;background:var(--red);border-radius:.48rem;place-items:center;width:1.9rem;font-size:.67rem;font-weight:800;display:grid}.portal-content{width:min(100%,88rem);margin:0 auto;padding:clamp(1rem,3vw,2.5rem)}.eyebrow{color:var(--red-dark);letter-spacing:.09em;text-transform:uppercase;font-size:.68rem;font-weight:800}.dashboard-stack,.course-detail,.assignment-detail{gap:1.25rem;display:grid}.welcome-card{background:linear-gradient(120deg, var(--surface) 0%, var(--red-soft) 100%);border:1px solid #eabac0;border-radius:1rem;justify-content:space-between;align-items:center;gap:1rem;padding:clamp(1.25rem,3vw,2rem);display:flex}.welcome-card h2,.course-hero h2,.assignment-hero h2{letter-spacing:-.04em;margin:.35rem 0 .5rem;font-size:clamp(1.45rem,3vw,2.2rem)}.button-link{color:#fff;background:var(--red);white-space:nowrap;border-radius:.6rem;justify-content:center;align-items:center;min-height:2.75rem;padding:.65rem 1rem;font-size:.86rem;font-weight:750;text-decoration:none;display:inline-flex}.button-link:hover{color:#fff;background:var(--red-hover,var(--red-dark))}.stat-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.stat-grid article,.content-card,.course-card,.homework-card,.module-card,.assignment-hero,.course-hero,.notice-card,.planned-page,.context-strip{border:1px solid var(--line);background:var(--surface);border-radius:.9rem;box-shadow:0 .5rem 1.7rem #2d161608}.stat-grid article{gap:.25rem;padding:1rem 1.1rem;display:grid}.stat-grid span,.stat-grid small{color:var(--muted);font-size:.75rem}.stat-grid strong{color:var(--ink);letter-spacing:-.05em;font-size:1.7rem}.dashboard-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;display:grid}.content-card{padding:1.25rem}.section-heading{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:1rem;display:flex}.section-heading h2,.content-card h2{letter-spacing:-.025em;margin-top:.25rem;font-size:1.15rem}.section-heading a,.text-link,.back-link{align-items:center;min-height:2.75rem;font-size:.82rem;text-decoration:none;display:inline-flex}.course-list,.task-list{display:grid}.course-row,.task-row{border-top:1px solid var(--line);color:var(--ink);justify-content:space-between;align-items:center;gap:.75rem;padding:.8rem 0;text-decoration:none;display:flex}.course-row:first-child,.task-row:first-child{border-top:0}.course-row>span:nth-child(2),.task-row>span:first-child{gap:.2rem;min-width:0;display:grid}.course-row strong,.task-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;overflow:hidden}.course-row small,.task-row small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.course-mark,.course-card-mark{aspect-ratio:1;width:2.2rem;color:var(--red-dark);background:var(--red-soft);border-radius:.65rem;flex:none;place-items:center;font-weight:800;display:grid}.status-badge{letter-spacing:.025em;border-radius:99px;align-items:center;width:fit-content;min-height:1.35rem;padding:.15rem .45rem;font-size:.64rem;font-weight:800;display:inline-flex}.status-not_started{color:#835b00;background:#fff1cc}.status-submitted{color:#196242;background:#e3f7eb}.status-reviewed{color:#315a9d;background:#e7efff}.status-overdue{color:#8f2231;background:#fbe4e7}.context-strip{color:var(--muted);flex-wrap:wrap;gap:.5rem;padding:.9rem 1.1rem;font-size:.82rem;display:flex}.context-strip strong{color:var(--ink)}.page-intro{margin-bottom:1.2rem}.courses-page,.homework-page{display:grid}.course-grid,.homework-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:1rem;display:grid}.course-card,.homework-card{align-content:start;gap:.75rem;padding:1.2rem;display:grid}.course-card-mark{width:2.8rem;margin-bottom:.5rem;font-size:1.25rem}.course-card h2,.homework-card h2{letter-spacing:-.025em;font-size:1.15rem}.course-card p,.homework-card>p{font-size:.84rem}.homework-card-top,.assignment-tags{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.activity-type{color:var(--muted);letter-spacing:.055em;text-transform:capitalize;font-size:.7rem;font-weight:800}.homework-card dl,.assignment-hero dl{grid-template-columns:1fr;gap:.55rem;margin:.1rem 0;display:grid}.homework-card dl div,.assignment-hero dl div{gap:.12rem;display:grid}.homework-card dt,.assignment-hero dt{color:var(--muted);text-transform:uppercase;font-size:.67rem;font-weight:700}.homework-card dd,.assignment-hero dd{margin:0;font-size:.8rem}.back-link{width:fit-content;color:var(--muted);font-size:.82rem;text-decoration:none}.back-link:hover{color:var(--red-dark)}.course-hero,.assignment-hero{background:linear-gradient(120deg, var(--surface) 0%, var(--red-soft) 100%);padding:clamp(1.25rem,3vw,2rem)}.module-stack{gap:.85rem;display:grid}.module-card{gap:1rem;padding:1.15rem;display:grid}.module-card>div{align-items:center;gap:.65rem;display:flex}.module-card h3{font-size:1rem}.module-index{aspect-ratio:1;width:1.8rem;color:var(--red-dark);background:var(--red-soft);border-radius:.5rem;place-items:center;font-size:.78rem;font-weight:800;display:grid}.lesson-list{gap:.2rem;margin:0;padding:0;list-style:none;display:grid}.lesson-list li{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:.75rem;padding:.7rem .1rem;display:flex}.lesson-list li>span:first-child{gap:.15rem;display:grid}.lesson-list strong{font-size:.87rem}.lesson-list small{color:var(--muted);font-size:.72rem}.lesson-state{color:#196242;font-size:.7rem;font-weight:750}.muted,.future-note{color:var(--muted);font-size:.83rem}.future-note{padding:.2rem}.assignment-hero{justify-content:space-between;align-items:start;gap:1rem;display:flex}.assignment-hero dl{min-width:11rem}.submission-summary{background:var(--surface-muted);border-radius:.6rem;gap:.25rem;margin-top:1rem;padding:.9rem;font-size:.83rem;display:grid}.submission-summary span{color:var(--muted)}.empty-state{border:1px dashed var(--line);background:var(--surface-muted);border-radius:.85rem;justify-items:start;gap:.55rem;padding:1.6rem;display:grid}.empty-symbol{aspect-ratio:1;width:2.2rem;color:var(--red-dark);background:var(--red-soft);border-radius:.6rem;place-items:center;display:grid}.empty-state h2,.notice-card h2,.planned-page h2{font-size:1.1rem}.empty-state p,.notice-card p,.planned-page p{max-width:42rem;font-size:.87rem}.notice-card,.planned-page{justify-items:start;gap:.65rem;padding:1.4rem;display:grid}.planned-page{align-content:center;min-height:16rem}.loading-card{align-content:center;min-height:12rem}.mobile-navigation,.mobile-more-panel{display:none}@media (max-width:780px){.portal-frame{padding-bottom:4.75rem;display:block}.portal-sidebar{display:none}.portal-header{z-index:5;min-height:4.5rem;padding:.65rem 1rem;position:sticky;top:0}.breadcrumb{display:none}.portal-header h1{font-size:1.15rem}.profile-chip strong{display:none}.profile-chip{padding-right:.25rem}.portal-content{padding:1rem}.welcome-card{display:grid}.stat-grid{grid-template-columns:1fr;gap:.65rem}.stat-grid article{grid-template-columns:1fr auto;align-items:center}.stat-grid article small{grid-column:1}.dashboard-columns{grid-template-columns:1fr;gap:1rem}.mobile-navigation{z-index:12;min-height:4.6rem;padding:.4rem max(.4rem, env(safe-area-inset-right)) max(.4rem, env(safe-area-inset-bottom)) max(.4rem, env(safe-area-inset-left));border-top:1px solid var(--line);background:var(--surface);grid-template-columns:repeat(4,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}@supports (color:color-mix(in lab, red, red)){.mobile-navigation{background:color-mix(in srgb, var(--surface) 96%, transparent)}}.mobile-navigation{box-shadow:0 -.4rem 1.5rem #1f12120f}.mobile-navigation .portal-nav-link,.mobile-more{min-height:3.5rem;color:var(--muted);text-align:center;background:0 0;border:0;border-radius:.55rem;place-items:center;gap:.15rem;padding:.2rem;font-size:.6rem;font-weight:700;display:grid}.mobile-navigation .portal-nav-link.active,.mobile-more.active{color:var(--red-dark);background:var(--red-soft)}.mobile-navigation .nav-icon{width:auto;height:1.2rem;font-size:.94rem}.mobile-more-panel{z-index:11;border:1px solid var(--line);background:var(--surface);max-height:min(31rem,100vh - 7rem);box-shadow:var(--shadow);border-radius:.85rem;padding:.5rem;display:block;position:fixed;bottom:5.1rem;left:.75rem;right:.75rem;overflow:auto}.mobile-more-links{gap:.1rem;display:grid}.mobile-more-links form{margin:0}.course-grid,.homework-list{grid-template-columns:1fr}.assignment-hero{display:grid}.assignment-hero dl{grid-template-columns:repeat(2,minmax(0,1fr));min-width:0}.lesson-list li{align-items:flex-start}.lesson-state{white-space:nowrap}}@media (max-width:430px){.header-actions{gap:.35rem}.welcome-card,.course-hero,.assignment-hero{padding:1.15rem}.content-card{padding:1rem}}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#161212;--ink:#f8eeee;--muted:#c5b7b7;--line:#3d3131;--red-soft:#401d23;--surface:#211a1a;--surface-muted:#191414;--shadow:0 1rem 3rem #0003}body{background:radial-gradient(circle at top, #3d171c 0, transparent 34rem), var(--paper)}.message.error{color:#ffd4d8;background:#51202a}.message.success{color:#c8f4d8;background:#193d28}}.canonical-attempt-runtime{gap:1rem;min-width:0;display:grid}@media (min-width:781px){.portal-frame:has(.canonical-attempt-runtime [data-reading-preview]) .canonical-attempt-runtime [data-reading-preview]:not(:-webkit-full-screen){height:min(42rem,100dvh - 22rem);min-height:24rem;position:sticky;top:5.85rem}.portal-frame:has(.canonical-attempt-runtime [data-reading-preview]) .canonical-attempt-runtime [data-reading-preview]:not(:fullscreen){height:min(42rem,100dvh - 22rem);min-height:24rem;position:sticky;top:5.85rem}}.portal-frame:has(.canonical-attempt-runtime [data-listening-preview]) .portal-header{position:static}@media (max-width:780px){html[data-activity-keyboard=true] .mobile-navigation,html[data-activity-keyboard=true] .mobile-more-panel{display:none}}html[data-activity-keyboard=true] .canonical-attempt-runtime textarea,html[data-activity-keyboard=true] .canonical-attempt-runtime input:not([type=radio]):not([type=checkbox]),html[data-activity-keyboard=true] .canonical-attempt-runtime [contenteditable=true]{scroll-margin-top:5rem;scroll-margin-bottom:1rem}html[data-activity-keyboard=true] .canonical-attempt-runtime [data-reading-preview],html[data-activity-keyboard=true] .canonical-attempt-runtime [data-listening-preview]{min-height:0}@media (orientation:landscape) and (max-width:960px) and (max-height:500px){.portal-frame:has(.canonical-attempt-runtime){grid-template-columns:minmax(0,1fr)}.portal-frame:has(.canonical-attempt-runtime) .portal-sidebar{display:none}.portal-frame:has(.canonical-attempt-runtime) .portal-content{padding:.4rem}.portal-frame:has(.canonical-attempt-runtime) .assignment-detail{gap:.5rem}.portal-frame:has(.canonical-attempt-runtime) .canonical-attempt-runtime{gap:.4rem}}@layer components{.portal-frame{--portal-edge:#b9c2cf;--portal-edge-soft:#d5dbe4;--portal-tint:#fff5f5;background:#f8f9fb}:root[data-theme=dark] .portal-frame{--portal-edge:#586477;--portal-edge-soft:#3e4a5b;--portal-tint:#35232b;background:var(--paper)}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .portal-frame{--portal-edge:#586477;--portal-edge-soft:#3e4a5b;--portal-tint:#35232b;background:var(--paper)}}.portal-sidebar,.portal-header,.mobile-navigation{border-color:var(--portal-edge);box-shadow:none}.portal-sidebar{background:var(--surface)}.portal-brand .brand-emblem,.profile-chip span{background:var(--red);box-shadow:none}.portal-nav-link{border:1px solid #0000;transition:color .16s,background .16s,border-color .16s}.portal-nav-link:hover{transform:none}.portal-nav-link.active{border-color:var(--red)}@supports (color:color-mix(in lab, red, red)){.portal-nav-link.active{border-color:color-mix(in srgb, var(--red) 38%, var(--portal-edge))}}.portal-nav-link.active{background:var(--portal-tint)}.portal-sidebar .portal-nav-link.active:before{display:none}.portal-sign-out{border-color:var(--portal-edge-soft)}.portal-header{background:var(--surface);-webkit-backdrop-filter:none;backdrop-filter:none}.icon-button,.profile-chip,.mobile-more-panel{border-color:var(--portal-edge);box-shadow:none}.icon-button:hover,.profile-chip:hover{transform:none}.welcome-card,.course-hero,.assignment-hero,.vocabulary-hero,.stat-grid article,.content-card,.course-card,.homework-card,.module-card,.notice-card,.planned-page,.context-strip,.result-card,.vocabulary-item,.credential-card{border:1px solid var(--portal-edge);background:var(--surface);box-shadow:none;border-radius:.9rem}.welcome-card,.course-hero,.assignment-hero,.vocabulary-hero{background:var(--portal-tint)}@supports (color:color-mix(in lab, red, red)){.welcome-card,.course-hero,.assignment-hero,.vocabulary-hero{background:color-mix(in srgb, var(--portal-tint) 32%, var(--surface))}}.stat-grid article:before{display:none}.course-card:hover,.homework-card:hover,.result-card:hover,.vocabulary-item:hover{border-color:var(--red);box-shadow:none;transform:none}.course-row,.task-row,.lesson-list li{border-color:var(--portal-edge-soft)}.button-link{box-shadow:none}.button-link:hover{transform:none}@media (max-width:780px){.mobile-navigation{background:var(--surface);box-shadow:none}.mobile-navigation .portal-nav-link.active,.mobile-more.active{background:var(--portal-tint)}}}.credential-settings{gap:1rem;display:grid}.credential-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.credential-card{align-content:start;gap:1rem;display:grid}.credential-card form{gap:.75rem;display:grid}.credential-state{border-radius:99px;margin-top:.65rem;padding:.2rem .55rem;font-size:.7rem;font-weight:800;display:inline-flex}.credential-state.connected{color:#17633a;background:#e3f7eb}.credential-state.missing{color:#835b00;background:#fff1cc}.secondary.danger{color:#8f2231}.credential-card .message{margin-top:.75rem}@media (max-width:780px){.credential-grid{grid-template-columns:1fr}}.canonical-runtime-controls{border:1px solid var(--line);background:var(--surface);border-radius:.9rem;gap:.75rem;padding:1rem 1.15rem;display:grid;box-shadow:0 .5rem 1.7rem #2d161608}.canonical-runtime-controls:has(.actions){box-shadow:none;background:0 0;border:0;padding:.5rem 0}.canonical-runtime-controls .actions button{width:fit-content;padding:.65rem 1rem}.canonical-runtime-controls>p{font-size:.82rem}.attempt-workspace{border:1px solid var(--line);background:var(--surface);border-radius:.9rem;gap:1rem;padding:clamp(1.25rem,3vw,1.7rem);display:grid;box-shadow:0 .5rem 1.7rem #2d161608}.attempt-workspace h2{font-size:1.2rem}.attempt-heading{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.attempt-instructions,.result-feedback{white-space:pre-wrap}.attempt-response textarea{resize:vertical;border:1px solid var(--line);width:100%;min-height:12rem;color:var(--ink);background:var(--surface-muted);font:inherit;border-radius:.6rem;padding:.8rem;line-height:1.5}.attempt-response textarea:focus-visible{outline:3px solid var(--red)}@supports (color:color-mix(in lab, red, red)){.attempt-response textarea:focus-visible{outline:3px solid color-mix(in srgb, var(--red) 60%, transparent)}}.attempt-response textarea:focus-visible{outline-offset:2px}.save-status{color:var(--muted);font-size:.78rem}.save-error{color:#8f2231}.results-page{display:grid}.results-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:1rem;display:grid}.result-card{border:1px solid var(--line);background:var(--surface);border-radius:.9rem;grid-template-columns:minmax(0,1fr) auto;align-content:start;gap:.75rem;padding:1.2rem;display:grid;box-shadow:0 .5rem 1.7rem #2d161608}.result-card h2{letter-spacing:-.025em;font-size:1.15rem}.result-card p{font-size:.84rem}.result-card .result-feedback,.result-card .muted{grid-column:1/-1}.result-score{min-width:3.5rem;min-height:3.5rem;color:var(--red-dark);background:var(--red-soft);border-radius:.65rem;place-items:center;font-size:1.25rem;display:grid}.vocabulary-due-badge{color:#8f2231;background:var(--red-soft)}.vocabulary-task-row{border:1px solid var(--red);margin:.15rem 0;padding-inline:.65rem}@supports (color:color-mix(in lab, red, red)){.vocabulary-task-row{border:1px solid color-mix(in srgb, var(--red) 25%, var(--line))}}.vocabulary-task-row{background:var(--red-soft);border-radius:.7rem}@supports (color:color-mix(in lab, red, red)){.vocabulary-task-row{background:color-mix(in srgb, var(--red-soft) 55%, var(--surface))}}.vocabulary-homework-card{border-color:var(--red)}@supports (color:color-mix(in lab, red, red)){.vocabulary-homework-card{border-color:color-mix(in srgb, var(--red) 30%, var(--line))}}.vocabulary-homework-card{background:linear-gradient(145deg, var(--surface), var(--red-soft))}.vocabulary-page{gap:1.1rem;display:grid}.vocabulary-hero{background:linear-gradient(120deg,var(--surface),var(--red-soft));border:1px solid #eabac0;border-radius:1rem;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:1rem;padding:clamp(1.25rem,3vw,2rem);display:grid}.vocabulary-hero h2{margin:.3rem 0 .45rem;font-size:clamp(1.5rem,3vw,2.2rem)}.vocabulary-hero-stats{gap:.75rem;display:flex}.vocabulary-hero-stats span{border:1px solid var(--line);background:var(--surface);border-radius:.7rem;min-width:5rem;padding:.7rem;display:grid}@supports (color:color-mix(in lab, red, red)){.vocabulary-hero-stats span{background:color-mix(in srgb,var(--surface) 84%,transparent)}}.vocabulary-hero-stats span{color:var(--muted);text-align:center;font-size:.72rem}.vocabulary-hero-stats strong{color:var(--ink);font-size:1.45rem}.vocabulary-notification-state{align-items:center;gap:.5rem;font-size:.78rem;display:flex}.vocabulary-notification-state span{aspect-ratio:1;color:#17633a;background:#e3f7eb;border-radius:99px;place-items:center;width:1.4rem;font-weight:800;display:grid}.vocabulary-notification-button{justify-self:start}.vocabulary-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr));gap:.8rem;display:grid}.vocabulary-item{border:1px solid var(--line);background:var(--surface);border-radius:.85rem;align-content:start;gap:.8rem;padding:1.1rem;display:grid}.vocabulary-item-heading,.vocabulary-item-heading>div,.vocabulary-item footer{justify-content:space-between;align-items:center;gap:.55rem;display:flex}.vocabulary-item-heading h3{font-size:1.12rem}.vocabulary-item-heading small,.vocabulary-item footer{color:var(--muted);font-size:.7rem}.vocabulary-state{background:var(--surface-muted);color:var(--muted);text-transform:uppercase;border-radius:99px;padding:.16rem .45rem;font-size:.62rem;font-weight:800}.state-new{color:#835b00;background:#fff1cc}.state-learning{color:#315a9d;background:#e7efff}.state-review{color:#8f2231;background:var(--red-soft)}.state-mastered{color:#196242;background:#e3f7eb}.vocabulary-meanings{gap:.45rem;display:grid}.vocabulary-meanings p{color:var(--ink);gap:.1rem;font-size:.88rem;display:grid}.vocabulary-meanings span{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.62rem;font-weight:800}.vocabulary-item blockquote{border-left:3px solid var(--red);background:var(--surface-muted);color:var(--muted);margin:0;padding:.7rem .8rem;font-size:.82rem;line-height:1.5}.vocabulary-item footer{border-top:1px solid var(--line);align-items:flex-end;margin-top:auto;padding-top:.6rem}.vocabulary-collector{gap:.75rem;display:grid}.vocabulary-collector-bar{border:1px dashed var(--red);justify-content:space-between;align-items:center;gap:.75rem;padding:.65rem .75rem;display:flex}@supports (color:color-mix(in lab, red, red)){.vocabulary-collector-bar{border:1px dashed color-mix(in srgb,var(--red) 35%,var(--line))}}.vocabulary-collector-bar{background:var(--red-soft);color:var(--muted);border-radius:.65rem;font-size:.8rem}.vocabulary-collector-bar strong{color:var(--ink)}.vocabulary-add-panel{border:1px solid var(--line);background:var(--surface-muted);border-radius:.75rem;gap:.8rem;padding:1rem;display:grid}.vocabulary-add-panel textarea{border:1px solid var(--line);min-height:5.5rem;color:inherit;font:inherit;resize:vertical;background:0 0;border-radius:.55rem;padding:.7rem .8rem}.vocabulary-add-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;display:grid}.compact-button{min-height:2.25rem;padding:.4rem .65rem}.vocabulary-review-shell{gap:1rem;width:min(100%,45rem);margin:0 auto;display:grid}.review-progress{gap:.45rem;display:grid}.review-progress>div:first-child{color:var(--muted);justify-content:space-between;font-size:.78rem;display:flex}.review-progress-track{background:var(--line);border-radius:99px;height:.45rem;overflow:hidden}.review-progress-track span{border-radius:inherit;background:var(--red);height:100%;transition:width .25s;display:block}.review-card{border:1px solid var(--line);background:var(--surface);min-height:24rem;box-shadow:var(--shadow);text-align:center;border-radius:1.2rem;align-content:center;place-items:center;gap:1.2rem;padding:clamp(1.5rem,5vw,3rem);display:grid}.review-card h2{letter-spacing:-.035em;max-width:34rem;font-size:clamp(1.65rem,5vw,2.65rem);line-height:1.22}.review-hint{font-size:.85rem}.review-reveal{min-width:10rem}.review-answer{background:var(--red-soft);border-radius:.8rem;gap:.55rem;width:min(100%,32rem);padding:1rem;display:grid}.review-answer>span{color:var(--red-dark);letter-spacing:.06em;text-transform:uppercase;font-size:.68rem;font-weight:800}.review-answer>strong{font-size:1.25rem}.review-answer small{color:var(--muted)}.review-rating-panel{gap:.6rem;display:grid}.review-rating-panel>p{text-align:center;font-size:.78rem}.review-rating-panel>div{grid-template-columns:repeat(4,1fr);gap:.5rem;display:grid}.review-rating-panel button{align-content:center;place-items:center;gap:.08rem;min-height:3.7rem;padding:.45rem;display:grid}.review-rating-panel button span{opacity:.82;font-size:.65rem;font-weight:500}.review-rating-panel button:first-child{background:#a22939}.review-rating-panel button:nth-child(2){color:#6a4a00;background:#f5d979}.review-rating-panel button:nth-child(3){color:#174f38;background:#aee0c2}.review-rating-panel button:nth-child(4){color:#234b83;background:#b9d2f5}.vocabulary-review-result{text-align:center;gap:1rem;width:min(100%,42rem);margin:0 auto;display:grid}.vocabulary-review-result .actions{justify-content:center}.review-result-stats{grid-template-columns:repeat(2,1fr);gap:.7rem;display:grid}.review-result-stats span{background:var(--surface-muted);color:var(--muted);border-radius:.7rem;gap:.15rem;padding:.85rem;font-size:.76rem;display:grid}.review-result-stats strong{color:var(--ink);font-size:1.3rem}@media (max-width:780px){.vocabulary-hero{grid-template-columns:1fr}.vocabulary-hero-stats{width:100%}.vocabulary-hero-stats span{flex:1}.vocabulary-add-grid{grid-template-columns:1fr}.review-card{min-height:21rem}.review-rating-panel>div{grid-template-columns:repeat(2,1fr)}.vocabulary-item footer{display:grid}.vocabulary-collector-bar{flex-direction:column;align-items:stretch}}.vocabulary-draft-panel,.vocabulary-day,.vocabulary-overview>div{border:1px solid var(--line);background:var(--surface);border-radius:.85rem}.vocabulary-draft-panel{gap:.7rem;padding:1rem;display:grid}.vocabulary-draft-panel>div:first-child{flex-wrap:wrap;justify-content:space-between;gap:.5rem;display:flex}.vocabulary-draft-panel small{color:var(--muted)}.vocabulary-draft-panel ul{gap:.3rem;margin:0;padding:0;list-style:none;display:grid}.vocabulary-draft-panel li{background:var(--surface-muted);border-radius:.5rem;justify-content:space-between;gap:.75rem;padding:.4rem .55rem;display:flex}.vocabulary-draft-panel>button{justify-self:start}.vocabulary-overview{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.65rem;display:grid}.vocabulary-overview>div{gap:.15rem;padding:.9rem;display:grid}.vocabulary-overview strong{color:var(--ink);font-size:1.2rem}.vocabulary-overview span{color:var(--muted);font-size:.75rem}.vocabulary-due-reminder{border:1px solid var(--red);padding:.8rem 1rem}@supports (color:color-mix(in lab, red, red)){.vocabulary-due-reminder{border:1px solid color-mix(in srgb,var(--red) 35%,var(--line))}}.vocabulary-due-reminder{background:var(--red-soft);border-radius:.7rem}.vocabulary-days{gap:.8rem;display:grid}.vocabulary-day{padding:.8rem}.vocabulary-day summary{cursor:pointer;justify-content:space-between;align-items:center;gap:.7rem;display:flex}.vocabulary-day summary>span:first-child{display:grid}.vocabulary-day summary small{color:var(--muted)}.vocabulary-day summary>span:last-child{color:var(--muted);font-size:.75rem}.vocabulary-day-progress{background:var(--line);border-radius:99px;height:.35rem;margin:.7rem 0;overflow:hidden}.vocabulary-day-progress span{border-radius:inherit;background:#4b9a72;height:100%;display:block}.vocabulary-manual-add{gap:.7rem;display:grid}.vocabulary-history{gap:.45rem;margin:0;padding:.8rem 0 0;list-style:none;display:grid}.vocabulary-history li{background:var(--surface-muted);border-radius:.55rem;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.35rem .8rem;padding:.55rem .7rem;font-size:.8rem;display:flex}.vocabulary-history small{color:var(--muted)}.vocabulary-icon-label{align-items:center;gap:.35rem;display:inline-flex}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#f5f7fb;--ink:#19243a;--muted:#59667b;--line:#dfe5ee;--red:#c62842;--red-dark:#a91c36;--red-soft:#fff0f3;--surface:#fff;--surface-muted:#f5f7fb;--shadow:0 18px 48px #1d2f4c14}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#111827;--ink:#f4f7fc;--muted:#adb9cc;--line:#344155;--red:#e05168;--red-dark:#f37b8d;--red-soft:#472533;--surface:#1b2636;--surface-muted:#162131;--shadow:0 18px 48px #0000002e}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#111827;--ink:#f4f7fc;--muted:#adb9cc;--line:#344155;--red:#e05168;--red-dark:#f37b8d;--red-soft:#472533;--surface:#1b2636;--surface-muted:#162131;--shadow:0 18px 48px #0000002e}}body{background:var(--paper);font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}.portal-frame{background:var(--paper);grid-template-columns:16rem minmax(0,1fr)}.portal-sidebar{z-index:6;border-color:var(--line);padding:1.35rem .9rem;overflow-y:auto;box-shadow:8px 0 28px #1f305005}.portal-brand{gap:.8rem;padding:.35rem .65rem 1.9rem}.portal-brand .brand-emblem{color:#fff;background:linear-gradient(145deg,#e04259,#b91e38);border-radius:.82rem;flex:none;place-items:center;width:2.5rem;height:2.5rem;display:grid;box-shadow:0 7px 15px #c628422e}.portal-brand .brand-copy{aspect-ratio:auto;gap:.05rem;place-items:initial;width:auto;color:var(--ink);background:0 0;border-radius:0;display:grid}.portal-brand .brand-copy strong{letter-spacing:-.055em;font-size:1.35rem;line-height:1}.portal-brand .brand-copy strong span{color:var(--red-dark)}.portal-brand .brand-copy small{color:var(--muted);letter-spacing:.16em;align-self:auto;margin:0;font-size:.59rem}.portal-navigation{gap:.24rem}.portal-navigation+.portal-navigation{margin-top:1.75rem}.nav-heading{color:var(--muted);letter-spacing:.14em;margin-bottom:.55rem;padding-inline:.85rem}.portal-nav-link{min-height:2.85rem;color:var(--muted);border-radius:.75rem;gap:.78rem;padding:.63rem .85rem;font-size:.88rem;transition:color .18s,background .18s,transform .18s;position:relative}.portal-nav-link:hover{color:var(--ink);background:var(--surface-muted);transform:translate(2px)}.portal-nav-link.active{color:var(--red-dark);background:var(--red-soft);font-weight:750}.portal-sidebar .portal-nav-link.active:before{background:var(--red);content:"";border-radius:0 3px 3px 0;width:3px;height:1.35rem;position:absolute;left:0}.nav-icon{flex:none;width:1.25rem;height:1.25rem}.portal-sign-out{border-top:1px solid var(--line);padding-top:1rem}.portal-sign-out .portal-nav-link{color:var(--muted)}.portal-header{z-index:5;border-color:var(--line);background:var(--surface);min-height:5.35rem;position:sticky;top:0}@supports (color:color-mix(in lab, red, red)){.portal-header{background:color-mix(in srgb, var(--surface) 96%, transparent)}}.portal-header{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.portal-header h1{letter-spacing:-.04em;font-size:clamp(1.35rem,2.3vw,1.9rem)}.breadcrumb{color:var(--muted);letter-spacing:.01em}.header-actions{flex:none}.icon-button,.profile-chip{border-radius:.78rem;transition:border-color .18s,background .18s,transform .18s}.icon-button:hover,.profile-chip:hover{border-color:var(--red)}@supports (color:color-mix(in lab, red, red)){.icon-button:hover,.profile-chip:hover{border-color:color-mix(in srgb, var(--red) 35%, var(--line))}}.icon-button:hover,.profile-chip:hover{background:var(--red-soft);transform:translateY(-1px)}.icon-button{color:var(--ink)}.profile-chip span{background:linear-gradient(145deg,#e04259,#b91e38);border-radius:.57rem}.portal-content{width:min(100%,91rem);padding:clamp(1rem,2.5vw,2.35rem)}.welcome-card,.course-hero,.assignment-hero,.vocabulary-hero{border-color:var(--red)}@supports (color:color-mix(in lab, red, red)){.welcome-card,.course-hero,.assignment-hero,.vocabulary-hero{border-color:color-mix(in srgb, var(--red) 17%, var(--line))}}.welcome-card,.course-hero,.assignment-hero,.vocabulary-hero{background:linear-gradient(115deg, var(--surface) 36%, var(--red-soft));box-shadow:var(--shadow);border-radius:1.25rem}.stat-grid article,.content-card,.course-card,.homework-card,.module-card,.notice-card,.planned-page,.context-strip,.result-card,.vocabulary-item,.credential-card{border-radius:1.05rem;box-shadow:0 5px 24px #1d2f4c0a}.stat-grid article{padding:1.2rem 1.35rem;position:relative;overflow:hidden}.stat-grid article:before{background:var(--red);content:"";width:100%;height:3px;position:absolute;top:0;left:0}.stat-grid article:nth-child(2):before{background:#2664bd}.stat-grid article:nth-child(3):before{background:#269776}.stat-grid strong{font-size:2rem}.course-card,.homework-card,.result-card,.vocabulary-item{transition:transform .18s,box-shadow .18s,border-color .18s}.course-card:hover,.homework-card:hover,.result-card:hover,.vocabulary-item:hover{border-color:var(--red)}@supports (color:color-mix(in lab, red, red)){.course-card:hover,.homework-card:hover,.result-card:hover,.vocabulary-item:hover{border-color:color-mix(in srgb, var(--red) 28%, var(--line))}}.course-card:hover,.homework-card:hover,.result-card:hover,.vocabulary-item:hover{box-shadow:var(--shadow);transform:translateY(-2px)}.course-row:hover,.task-row:hover{color:var(--red-dark)}.course-mark,.course-card-mark{border-radius:.7rem}.button-link{transition:background .18s,transform .18s}.button-link:hover{transform:translateY(-1px)}.button-link{border-radius:.75rem;box-shadow:0 7px 15px #c6284221}.portal-fullscreen-fallback{background:var(--paper);width:100%;height:100dvh;overflow:auto}.portal-frame:-webkit-full-screen{background:var(--paper);width:100%;height:100dvh;overflow:auto}.portal-frame:fullscreen{background:var(--paper);width:100%;height:100dvh;overflow:auto}.portal-fullscreen-fallback{z-index:2147483646;position:fixed;inset:0}.portal-frame:has(.canonical-attempt-runtime):not(:-webkit-full-screen):not(.portal-fullscreen-fallback) .shell-fullscreen-control{display:none}.portal-frame:has(.canonical-attempt-runtime):not(:fullscreen):not(.portal-fullscreen-fallback) .shell-fullscreen-control{display:none}@media (max-width:780px){.portal-frame{padding-bottom:calc(4.75rem + env(safe-area-inset-bottom));display:block}.portal-sidebar{display:none}.portal-header{padding:max(.65rem, env(safe-area-inset-top)) max(.75rem, env(safe-area-inset-right)) .65rem max(.75rem, env(safe-area-inset-left))}.portal-header h1{font-size:clamp(1rem,4vw,1.2rem)}.header-actions{gap:.35rem}.icon-button,.profile-chip{width:2.5rem;min-width:2.5rem;min-height:2.5rem}.profile-chip{padding:.25rem}.portal-content{padding:1rem}.mobile-navigation{min-height:4.65rem;padding-bottom:max(.4rem, env(safe-area-inset-bottom))}.mobile-navigation .portal-nav-link,.mobile-more{border-radius:.72rem}.mobile-navigation .nav-icon{height:1.2rem}.mobile-more-panel{bottom:calc(5.1rem + env(safe-area-inset-bottom));border-radius:1rem}}@media (max-width:380px){.portal-header{gap:.4rem}.portal-header h1{font-size:1rem}.header-actions{gap:.2rem}.icon-button,.profile-chip{width:2.35rem;min-width:2.35rem;min-height:2.35rem}}@media (prefers-reduced-motion:reduce){.portal-nav-link,.icon-button,.profile-chip,.course-card,.homework-card,.result-card,.vocabulary-item,.button-link{transition:none}}}@layer components;@layer utilities{.\@container{container-type:inline-size}.pointer-events-none{pointer-events:none}.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:0}.top-\[-0\.55rem\]{top:-.55rem}.top-full{top:100%}.-right-1{right:calc(var(--spacing) * -1)}.right-2{right:calc(var(--spacing) * 2)}.right-3{right:calc(var(--spacing) * 3)}.-bottom-1{bottom:calc(var(--spacing) * -1)}.bottom-2{bottom:calc(var(--spacing) * 2)}.-left-1\.5{left:calc(var(--spacing) * -1.5)}.left-0{left:0}.left-2{left:calc(var(--spacing) * 2)}.isolate{isolation:isolate}.z-10{z-index:10}.z-20{z-index:20}.z-40{z-index:40}.z-\[60\]{z-index:60}.row-span-2{grid-row:span 2/span 2}.\!container{width:100%!important}@media (min-width:40rem){.\!container{max-width:40rem!important}}@media (min-width:48rem){.\!container{max-width:48rem!important}}@media (min-width:64rem){.\!container{max-width:64rem!important}}@media (min-width:80rem){.\!container{max-width:80rem!important}}@media (min-width:96rem){.\!container{max-width:96rem!important}}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.m-auto{margin:auto}.mx-1{margin-inline:var(--spacing)}.mx-auto{margin-inline:auto}.my-8{margin-block:calc(var(--spacing) * 8)}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mr-1{margin-right:var(--spacing)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mr-auto{margin-right:auto}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-auto{margin-left:auto}.block{display:block}.contents{display:contents}.flex{display:flex}.flow-root{display:flow-root}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.inline-grid{display:inline-grid}.inline-table{display:inline-table}.list-item{display:list-item}.table{display:table}.table-caption{display:table-caption}.table-cell{display:table-cell}.table-column{display:table-column}.table-column-group{display:table-column-group}.table-footer-group{display:table-footer-group}.table-header-group{display:table-header-group}.table-row{display:table-row}.table-row-group{display:table-row-group}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.size-11{width:calc(var(--spacing) * 11);height:calc(var(--spacing) * 11)}.size-12{width:calc(var(--spacing) * 12);height:calc(var(--spacing) * 12)}.size-16{width:calc(var(--spacing) * 16);height:calc(var(--spacing) * 16)}.size-full{width:100%;height:100%}.h-1{height:var(--spacing)}.h-7{height:calc(var(--spacing) * 7)}.h-10{height:calc(var(--spacing) * 10)}.h-16{height:calc(var(--spacing) * 16)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.max-h-44{max-height:calc(var(--spacing) * 44)}.max-h-80{max-height:calc(var(--spacing) * 80)}.min-h-0{min-height:0}.min-h-8{min-height:calc(var(--spacing) * 8)}.min-h-9{min-height:calc(var(--spacing) * 9)}.min-h-10{min-height:calc(var(--spacing) * 10)}.min-h-11{min-height:calc(var(--spacing) * 11)}.min-h-12{min-height:calc(var(--spacing) * 12)}.min-h-\[40rem\]{min-height:40rem}.w-12{width:calc(var(--spacing) * 12)}.w-20{width:calc(var(--spacing) * 20)}.w-24{width:calc(var(--spacing) * 24)}.w-32{width:calc(var(--spacing) * 32)}.w-\[5\.5rem\]{width:5.5rem}.w-\[min\(58\%\,32rem\)\]{width:min(58%,32rem)}.w-\[min\(88\%\,38rem\)\]{width:min(88%,38rem)}.w-fit{width:fit-content}.w-full{width:100%}.w-px{width:1px}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-32{max-width:calc(var(--spacing) * 32)}.max-w-44{max-width:calc(var(--spacing) * 44)}.max-w-\[1440px\]{max-width:1440px}.max-w-\[calc\(100\%-1rem\)\]{max-width:calc(100% - 1rem)}.max-w-full{max-width:100%}.max-w-xl{max-width:var(--container-xl)}.min-w-0{min-width:0}.min-w-11{min-width:calc(var(--spacing) * 11)}.min-w-24{min-width:calc(var(--spacing) * 24)}.min-w-52{min-width:calc(var(--spacing) * 52)}.min-w-\[34rem\]{min-width:34rem}.min-w-\[360px\]{min-width:360px}.flex-1{flex:1}.flex-shrink,.shrink{flex-shrink:1}.shrink-0{flex-shrink:0}.flex-grow,.grow{flex-grow:1}.table-fixed{table-layout:fixed}.border-collapse{border-collapse:collapse}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-full{--tw-translate-y:-100%;translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.transform-gpu{transform:translateZ(0) var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.resize{resize:both}.appearance-none{-webkit-appearance:none;appearance:none}.\[grid-template-columns\:repeat\(auto-fit\,minmax\(min\(100\%\,18rem\)\,1fr\)\)\]{grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-\[4\.25rem_minmax\(0\,1fr\)\]{grid-template-columns:4.25rem minmax(0,1fr)}.grid-cols-\[5rem_minmax\(0\,1fr\)\]{grid-template-columns:5rem minmax(0,1fr)}.grid-cols-\[minmax\(5rem\,1fr\)_minmax\(14rem\,auto\)_minmax\(5rem\,1fr\)\]{grid-template-columns:minmax(5rem,1fr) minmax(14rem,auto) minmax(5rem,1fr)}.grid-rows-7{grid-template-rows:repeat(7,minmax(0,1fr))}.grid-rows-\[minmax\(0\,1fr\)_6rem\]{grid-template-rows:minmax(0,1fr) 6rem}.grid-rows-\[minmax\(0\,1fr\)_8rem\]{grid-template-rows:minmax(0,1fr) 8rem}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-start{justify-content:flex-start}.gap-0{gap:0}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}:where(.space-y-0\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * .5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * .5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-10{column-gap:calc(var(--spacing) * 10)}.gap-y-6{row-gap:calc(var(--spacing) * 6)}.self-end{align-self:flex-end}.self-start{align-self:flex-start}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overscroll-contain{overscroll-behavior:contain}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-\[1\.4rem\]{border-radius:1.4rem}.rounded-full{border-radius:2147483647px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-none{border-radius:0}.rounded-xl{border-radius:var(--radius-xl)}.rounded-l-3xl{border-top-left-radius:var(--radius-3xl);border-bottom-left-radius:var(--radius-3xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-dotted{--tw-border-style:dotted;border-style:dotted}.\!border-slate-600{border-color:var(--color-slate-600)!important}.border-amber-200{border-color:var(--color-amber-200)}.border-amber-300{border-color:var(--color-amber-300)}.border-emerald-200{border-color:var(--color-emerald-200)}.border-emerald-600{border-color:var(--color-emerald-600)}.border-red-200{border-color:var(--color-red-200)}.border-red-500{border-color:var(--color-red-500)}.border-slate-200{border-color:var(--color-slate-200)}.border-slate-300{border-color:var(--color-slate-300)}.border-slate-400{border-color:var(--color-slate-400)}.border-slate-500{border-color:var(--color-slate-500)}.border-slate-600{border-color:var(--color-slate-600)}.border-slate-700{border-color:var(--color-slate-700)}.border-slate-900{border-color:var(--color-slate-900)}.bg-amber-50{background-color:var(--color-amber-50)}.bg-amber-200{background-color:var(--color-amber-200)}.bg-amber-300{background-color:var(--color-amber-300)}.bg-black{background-color:var(--color-black)}.bg-emerald-50{background-color:var(--color-emerald-50)}.bg-emerald-50\/50{background-color:#ecfdf580}@supports (color:color-mix(in lab, red, red)){.bg-emerald-50\/50{background-color:color-mix(in oklab, var(--color-emerald-50) 50%, transparent)}}.bg-emerald-200{background-color:var(--color-emerald-200)}.bg-emerald-600{background-color:var(--color-emerald-600)}.bg-red-50{background-color:var(--color-red-50)}.bg-red-50\/40{background-color:#fef2f266}@supports (color:color-mix(in lab, red, red)){.bg-red-50\/40{background-color:color-mix(in oklab, var(--color-red-50) 40%, transparent)}}.bg-red-200{background-color:var(--color-red-200)}.bg-red-600{background-color:var(--color-red-600)}.bg-red-600\/90{background-color:#e40014e6}@supports (color:color-mix(in lab, red, red)){.bg-red-600\/90{background-color:color-mix(in oklab, var(--color-red-600) 90%, transparent)}}.bg-slate-50{background-color:var(--color-slate-50)}.bg-slate-100{background-color:var(--color-slate-100)}.bg-slate-600{background-color:var(--color-slate-600)}.bg-slate-900{background-color:var(--color-slate-900)}.bg-slate-900\/85{background-color:#0f172bd9}@supports (color:color-mix(in lab, red, red)){.bg-slate-900\/85{background-color:color-mix(in oklab, var(--color-slate-900) 85%, transparent)}}.bg-slate-950{background-color:var(--color-slate-950)}.bg-slate-950\/35{background-color:#02061859}@supports (color:color-mix(in lab, red, red)){.bg-slate-950\/35{background-color:color-mix(in oklab, var(--color-slate-950) 35%, transparent)}}.bg-white{background-color:var(--color-white)}.bg-white\/90{background-color:#ffffffe6}@supports (color:color-mix(in lab, red, red)){.bg-white\/90{background-color:color-mix(in oklab, var(--color-white) 90%, transparent)}}.bg-yellow-400{background-color:var(--color-yellow-400)}.mask-repeat{-webkit-mask-repeat:repeat;mask-repeat:repeat}.object-contain{object-fit:contain}.p-1{padding:var(--spacing)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.px-0\.5{padding-inline:calc(var(--spacing) * .5)}.px-1{padding-inline:var(--spacing)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-5{padding-block:calc(var(--spacing) * 5)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-5{padding-top:calc(var(--spacing) * 5)}.pt-6{padding-top:calc(var(--spacing) * 6)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-24{padding-bottom:calc(var(--spacing) * 24)}.text-center{text-align:center}.text-justify{text-align:justify}.text-left{text-align:left}.text-right{text-align:right}.align-middle{vertical-align:middle}.align-top{vertical-align:top}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[clamp\(1\.125rem\,1rem\+0\.6vw\,1\.5rem\)\]{font-size:clamp(1.125rem,1rem + .6vw,1.5rem)}.leading-7{--tw-leading:calc(var(--spacing) * 7);line-height:calc(var(--spacing) * 7)}.leading-8{--tw-leading:calc(var(--spacing) * 8);line-height:calc(var(--spacing) * 8)}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-tight{--tw-leading:var(--leading-tight);line-height:var(--leading-tight)}.font-black{--tw-font-weight:var(--font-weight-black);font-weight:var(--font-weight-black)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[-0\.015em\]{--tw-tracking:-.015em;letter-spacing:-.015em}.tracking-\[\.12em\]{--tw-tracking:.12em;letter-spacing:.12em}.tracking-\[\.18em\]{--tw-tracking:.18em;letter-spacing:.18em}.tracking-\[0\.2em\]{--tw-tracking:.2em;letter-spacing:.2em}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.text-wrap{text-wrap:wrap}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-normal{white-space:normal}.whitespace-pre-wrap{white-space:pre-wrap}.text-amber-950{color:var(--color-amber-950)}.text-emerald-600{color:var(--color-emerald-600)}.text-emerald-700{color:var(--color-emerald-700)}.text-emerald-800{color:var(--color-emerald-800)}.text-emerald-900{color:var(--color-emerald-900)}.text-emerald-950{color:var(--color-emerald-950)}.text-red-500{color:var(--color-red-500)}.text-red-600{color:var(--color-red-600)}.text-red-700{color:var(--color-red-700)}.text-red-800{color:var(--color-red-800)}.text-red-900{color:var(--color-red-900)}.text-red-950{color:var(--color-red-950)}.text-slate-300{color:var(--color-slate-300)}.text-slate-400{color:var(--color-slate-400)}.text-slate-500{color:var(--color-slate-500)}.text-slate-600{color:var(--color-slate-600)}.text-slate-700{color:var(--color-slate-700)}.text-slate-800{color:var(--color-slate-800)}.text-slate-900{color:var(--color-slate-900)}.text-slate-950{color:var(--color-slate-950)}.text-white{color:var(--color-white)}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.diagonal-fractions{--tw-numeric-fraction:diagonal-fractions;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.lining-nums{--tw-numeric-figure:lining-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.oldstyle-nums{--tw-numeric-figure:oldstyle-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.proportional-nums{--tw-numeric-spacing:proportional-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.slashed-zero{--tw-slashed-zero:slashed-zero;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.stacked-fractions{--tw-numeric-fraction:stacked-fractions;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.line-through{text-decoration-line:line-through}.overline{text-decoration-line:overline}.underline{text-decoration-line:underline}.decoration-yellow-700{-webkit-text-decoration-color:var(--color-yellow-700);-webkit-text-decoration-color:var(--color-yellow-700);-webkit-text-decoration-color:var(--color-yellow-700);text-decoration-color:var(--color-yellow-700)}.decoration-2{text-decoration-thickness:2px}.underline-offset-\[3px\]{text-underline-offset:3px}.accent-red-600{accent-color:var(--color-red-600)}.opacity-45{opacity:.45}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px var(--tw-shadow-color,#00000040);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-\[0_0_0_2px_rgba\(220\,38\,38\,0\.08\)\]{--tw-shadow:0 0 0 2px var(--tw-shadow-color,#dc262614);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring,.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-emerald-950\/20{--tw-shadow-color:#002c2233}@supports (color:color-mix(in lab, red, red)){.shadow-emerald-950\/20{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-emerald-950) 20%, transparent) var(--tw-shadow-alpha), transparent)}}.shadow-red-950\/20{--tw-shadow-color:#46080933}@supports (color:color-mix(in lab, red, red)){.shadow-red-950\/20{--tw-shadow-color:color-mix(in oklab, color-mix(in oklab, var(--color-red-950) 20%, transparent) var(--tw-shadow-alpha), transparent)}}.ring-amber-500{--tw-ring-color:var(--color-amber-500)}.ring-emerald-500{--tw-ring-color:var(--color-emerald-500)}.ring-red-500{--tw-ring-color:var(--color-red-500)}.ring-slate-200{--tw-ring-color:var(--color-slate-200)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.outline-2{outline-style:var(--tw-outline-style);outline-width:2px}.outline-emerald-500{outline-color:var(--color-emerald-500)}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.invert{--tw-invert:invert(100%);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-300{--tw-duration:.3s;transition-duration:.3s}.ease-in{--tw-ease:var(--ease-in);transition-timing-function:var(--ease-in)}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}.outline-none{--tw-outline-style:none;outline-style:none}.select-all{-webkit-user-select:all;user-select:all}.select-none{-webkit-user-select:none;user-select:none}.ring-inset{--tw-ring-inset:inset}.checked\:border-slate-950:checked{border-color:var(--color-slate-950)}.checked\:bg-slate-950:checked{background-color:var(--color-slate-950)}@media (hover:hover){.hover\:border-red-200:hover{border-color:var(--color-red-200)}.hover\:border-red-300:hover{border-color:var(--color-red-300)}.hover\:bg-emerald-700:hover{background-color:var(--color-emerald-700)}.hover\:bg-red-50:hover{background-color:var(--color-red-50)}.hover\:bg-red-700:hover{background-color:var(--color-red-700)}.hover\:bg-slate-50:hover{background-color:var(--color-slate-50)}.hover\:bg-slate-100:hover{background-color:var(--color-slate-100)}.hover\:bg-slate-200:hover{background-color:var(--color-slate-200)}.hover\:bg-slate-800:hover{background-color:var(--color-slate-800)}}.focus\:border-red-600:focus{border-color:var(--color-red-600)}.focus-visible\:bg-red-50:focus-visible{background-color:var(--color-red-50)}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-red-600:focus-visible{--tw-ring-color:var(--color-red-600)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\:outline-2:focus-visible{outline-style:var(--tw-outline-style);outline-width:2px}.focus-visible\:outline-offset-1:focus-visible{outline-offset:1px}.focus-visible\:outline-offset-2:focus-visible{outline-offset:2px}.focus-visible\:outline-red-600:focus-visible{outline-color:var(--color-red-600)}.focus-visible\:outline-white:focus-visible{outline-color:var(--color-white)}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-60:disabled{opacity:.6}@media (min-width:40rem){.sm\:w-28{width:calc(var(--spacing) * 28)}.sm\:w-48{width:calc(var(--spacing) * 48)}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:flex-nowrap{flex-wrap:nowrap}.sm\:items-start{align-items:flex-start}.sm\:p-4{padding:calc(var(--spacing) * 4)}.sm\:pb-24{padding-bottom:calc(var(--spacing) * 24)}}@media (min-width:48rem){.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:64rem){.lg\:grid-cols-\[minmax\(12rem\,\.7fr\)_minmax\(0\,1\.3fr\)\]{grid-template-columns:minmax(12rem,.7fr) minmax(0,1.3fr)}}}.analytics-page{gap:1.25rem;min-width:0;display:grid}.analytics-intro,.analytics-footnote{color:var(--muted);font-size:.84rem}.analytics-heading{justify-content:space-between;align-items:end;gap:1rem;display:flex}.analytics-heading h2{letter-spacing:-.03em;font-size:1.25rem}.analytics-heading>span{color:var(--muted);font-size:.78rem}.analytics-stats{grid-template-columns:repeat(5,minmax(0,1fr));gap:.75rem;display:grid}.analytics-stats-two{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-stats article{border:1px solid var(--portal-edge-soft,var(--line));background:var(--surface);border-radius:1rem;align-content:start;gap:.3rem;min-width:0;padding:1rem;display:grid}.analytics-stats svg{width:1.15rem;height:1.15rem;color:var(--red-dark)}.analytics-stats span,.analytics-stats small{color:var(--muted);font-size:.72rem}.analytics-stats strong{letter-spacing:-.05em;font-size:clamp(1.35rem,2.4vw,2rem);line-height:1.2}.lesson-results{gap:.7rem;display:grid}.lesson-result-card,.progress-chart-card,.group-summary{border:1px solid var(--portal-edge-soft,var(--line));background:var(--surface);border-radius:1rem;min-width:0}.lesson-result-card{overflow:hidden}.lesson-result-card summary{cursor:pointer;align-items:center;gap:1rem;padding:1rem 1.2rem;list-style:none;display:flex}.lesson-result-card summary::-webkit-details-marker{display:none}.lesson-result-title{align-items:center;gap:.7rem;min-width:0;margin-right:auto;display:flex}.lesson-result-title>svg{color:var(--red-dark);flex:none}.lesson-result-title small,.lesson-result-score small{color:var(--muted);font-size:.72rem;display:block}.lesson-result-title h3{text-overflow:ellipsis;white-space:nowrap;font-size:1rem;overflow:hidden}.lesson-result-score{text-align:right}.lesson-result-score strong{font-size:1rem}.lesson-chevron{color:var(--muted);flex:none;transition:transform .2s}.lesson-result-card[open] .lesson-chevron{transform:rotate(180deg)}.lesson-result-body{border-top:1px solid var(--portal-edge-soft,var(--line));gap:1rem;padding:1.1rem 1.2rem;display:grid}.lesson-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;display:grid}.lesson-metrics span,.group-summary span{border:1px solid var(--portal-edge-soft,var(--line));color:var(--muted);border-radius:.7rem;gap:.2rem;padding:.75rem;font-size:.73rem;display:grid}.lesson-metrics strong,.group-summary strong{color:var(--ink);font-size:1.1rem}.lesson-comparison{color:var(--muted);align-items:center;gap:.5rem;font-size:.78rem;display:flex}.lesson-comparison svg{color:#2664bd}.lesson-comparison strong{color:var(--ink);margin-left:auto}.lesson-activities{gap:.55rem;display:grid}.lesson-activities article{border:1px solid var(--portal-edge-soft,var(--line));border-radius:.7rem;grid-template-columns:minmax(0,1fr) auto;gap:.3rem .7rem;padding:.8rem;display:grid}.lesson-activities article>div{gap:.15rem;display:grid}.lesson-activities strong{font-size:.83rem}.lesson-activities small{color:var(--muted);font-size:.7rem}.lesson-activities p{border-top:1px solid var(--line);white-space:pre-wrap;grid-column:1/-1;padding-top:.4rem;font-size:.78rem}.activity-result-numbers{text-align:right}.group-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;padding:.7rem;display:grid}.progress-charts{gap:1rem;display:grid}.progress-chart-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.progress-chart-card{gap:.85rem;padding:1.15rem;display:grid}.progress-chart-card.primary{border-color:var(--red)}@supports (color:color-mix(in lab, red, red)){.progress-chart-card.primary{border-color:color-mix(in srgb,var(--red) 25%,var(--portal-edge-soft,var(--line)))}}.progress-chart-header{justify-content:space-between;align-items:start;gap:1rem;display:flex}.progress-chart-header h2{font-size:1.07rem}.progress-chart-header p{font-size:.75rem}.chart-expand{border:1px solid var(--portal-edge-soft,var(--line));width:2.1rem;min-height:2.1rem;color:var(--ink);background:var(--surface);border-radius:.55rem;flex:none;place-items:center;padding:0;display:grid}.chart-ranges{flex-wrap:wrap;gap:.35rem;display:flex}.chart-ranges button,.chart-legend button{border:1px solid var(--portal-edge-soft,var(--line));min-height:2rem;color:var(--muted);background:var(--surface);border-radius:.55rem;padding:.35rem .65rem;font-size:.72rem}.chart-ranges button.active{border-color:var(--red);color:var(--red-dark);background:var(--red-soft)}.chart-plot{width:100%;min-width:0}.chart-plot svg{touch-action:manipulation;width:100%;height:auto;min-height:12rem;display:block;overflow:visible}.chart-gridline{stroke:var(--portal-edge-soft,var(--line));stroke-width:1px}.chart-axis{fill:var(--muted);font-size:10px}.chart-cursor{stroke:var(--muted);stroke-width:1px;stroke-dasharray:4 4}.chart-readout{flex-wrap:wrap;gap:.4rem .9rem;min-height:1.4rem;font-size:.72rem;display:flex}.chart-readout strong{color:var(--ink)}.chart-legend{flex-wrap:wrap;gap:.35rem;display:flex}.chart-legend button{align-items:center;gap:.35rem;display:inline-flex}.chart-legend i{border-radius:50%;width:.55rem;height:.55rem}.chart-legend .muted-series{opacity:.45}.chart-empty{text-align:center;padding:2.5rem .5rem;font-size:.82rem}.group-chart-section{gap:1rem;display:grid}.progress-chart-card.expanded{z-index:30;align-content:start;position:fixed;inset:1rem;overflow:auto;box-shadow:0 1rem 4rem #0005}.progress-chart-card.expanded .chart-plot svg{max-height:60vh}.progress-chart-card.expanded .chart-expand{position:sticky;top:0}@media (max-width:1000px){.analytics-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.analytics-stats-two{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.analytics-stats,.analytics-stats-two,.progress-chart-grid,.group-summary{grid-template-columns:1fr}.analytics-stats article{grid-template-columns:auto 1fr;align-items:center;gap:.15rem .65rem}.analytics-stats svg{grid-row:1/4}.analytics-stats small{grid-column:2}.lesson-result-card summary{gap:.6rem;padding:.9rem}.lesson-result-title h3{white-space:normal}.lesson-result-body{padding:.9rem}.lesson-metrics{grid-template-columns:1fr 1fr}.lesson-comparison{flex-wrap:wrap}.lesson-comparison strong{width:100%;margin-left:1.5rem}.analytics-heading{flex-wrap:wrap;align-items:start}.chart-plot svg{min-height:10rem}.progress-chart-card.expanded{inset:.35rem .35rem calc(4.9rem + env(safe-area-inset-bottom))}.lesson-activities article{grid-template-columns:1fr}.activity-result-numbers{text-align:left}}@media (prefers-reduced-motion:reduce){.lesson-chevron{transition:none}}.vocab-original{width:min(100%,68rem);color:var(--ink);gap:1.35rem;margin:0 auto;padding-bottom:3rem;display:grid}.vocab-page-heading{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:1rem;padding:.45rem 0 .3rem;display:flex}.vocab-page-heading h1{letter-spacing:-.045em;margin:.25rem 0;font-size:clamp(1.9rem,4vw,2.65rem)}.vocab-page-heading p:last-child,.vocab-panel>p,.vocab-review-section>p{color:var(--muted)}.vocab-primary,.vocab-secondary{cursor:pointer;border-radius:.85rem;justify-content:center;align-items:center;gap:.55rem;min-height:3rem;padding:.75rem 1.1rem;font-weight:800;text-decoration:none;display:inline-flex}.vocab-primary{border:1px solid var(--red);background:var(--red);color:#fff}.vocab-primary:hover{background:var(--red-hover)}.vocab-secondary{border:1px solid var(--line);background:var(--surface);color:var(--ink)}.vocab-primary:disabled,.vocab-secondary:disabled{opacity:.5;cursor:not-allowed}.vocab-back,.vocab-text-link{width:max-content;color:var(--red-dark);align-items:center;gap:.45rem;font-weight:750;text-decoration:none;display:inline-flex}.vocab-due-strip{background:var(--red-soft);border:1px solid #eabac0;border-radius:1rem;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.2rem;display:flex}.vocab-due-strip>div{gap:.18rem;display:grid}.vocab-due-strip span{color:var(--muted);font-size:.85rem}.portal-nav-link.review-locked{opacity:.5;cursor:not-allowed}.portal-nav-link.review-locked:hover{background:0 0;transform:none}.vocab-collection-list{gap:.8rem;display:grid}.vocab-day-card{background:var(--surface);min-height:7rem;color:var(--ink);border:1px solid #d5dce3;border-radius:1.05rem;align-items:center;gap:1rem;padding:1rem 1.2rem;text-decoration:none;transition:border-color .2s,box-shadow .2s;display:flex}.vocab-day-card:hover{border-color:var(--red);box-shadow:0 7px 24px #202d4012}.vocab-day-icon{background:var(--red-soft);width:3.5rem;height:3.5rem;color:var(--red-dark);border-radius:.9rem;flex:none;place-items:center;font-size:1.45rem;font-weight:900;display:grid}.vocab-day-copy{gap:.12rem;display:grid}.vocab-day-copy small,.vocab-day-copy>span{color:var(--muted);font-size:.82rem}.vocab-day-copy i{margin:0 .25rem;font-style:normal}.vocab-day-arrow{color:var(--red-dark);margin-left:auto}.vocab-add-layout{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:1rem;display:grid}.vocab-panel{background:var(--surface);border:1px solid #d5dce3;border-radius:1rem;gap:1rem;padding:1.25rem;display:grid}.vocab-panel h2{margin:0;font-size:1.25rem}.vocab-panel p{margin:0;font-size:.85rem}.vocab-paste-sample{color:#465363;background:#f1f6fa;border:1px solid #cfdfea;border-radius:.8rem;padding:1rem;font-size:.8rem;line-height:1.65}.vocab-field{gap:.4rem;font-size:.85rem;font-weight:750;display:grid}.vocab-field input,.vocab-field textarea{outline-color:var(--red);background:var(--surface);width:100%;min-height:2.9rem;color:var(--ink);font:inherit;border:1px solid #b9c2cc;border-radius:.75rem;padding:.7rem .8rem;font-weight:400}.vocab-field textarea{resize:vertical}.vocab-fields{gap:.8rem;display:grid}.vocab-preview{color:var(--red-dark)!important}.vocab-message{background:var(--red-soft);border-radius:.75rem;grid-column:1/-1;padding:.75rem 1rem}.vocab-detail{gap:1rem;display:grid}.vocab-mode{background:var(--surface-muted);border:1px solid #d5dce3;border-radius:.9rem;grid-template-columns:1fr 1fr;width:min(100%,32rem);padding:.25rem;display:grid}.vocab-mode button{min-height:2.6rem;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:.7rem;font-weight:800}.vocab-mode button[aria-pressed=true]{background:var(--surface);color:var(--red-dark);box-shadow:0 1px 6px #0f172a1a}.vocab-mode button:disabled{opacity:.7;cursor:not-allowed}.vocab-words{gap:.7rem;margin:0;padding:0;list-style:none;display:grid}.vocab-word-card{background:var(--surface);border:1px solid #d5dce3;border-radius:.95rem;align-items:start;gap:.7rem;padding:1rem;display:flex}.vocab-word-number{color:var(--muted);padding-top:.12rem;font-weight:800}.vocab-word-card>div:nth-child(2){flex:1;min-width:0}.vocab-word-card strong,.vocab-review-list strong,.vocab-target{color:#2460b4;font-weight:850}.vocab-word-card p{color:#49535e;margin:.35rem 0;line-height:1.5}.vocab-word-card small{color:var(--muted)}.vocab-word-menu{position:relative}.vocab-word-menu>button{cursor:pointer;background:0 0;border:0;border-radius:.5rem;place-items:center;width:2.25rem;height:2.25rem;display:grid}.vocab-word-menu>div{z-index:5;border:1px solid var(--line);background:var(--surface);min-width:9rem;box-shadow:var(--shadow);border-radius:.65rem;padding:.35rem;display:grid;position:absolute;top:2.2rem;right:0}.vocab-word-menu>div button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:.4rem;padding:.55rem .7rem}.vocab-word-menu>div button:hover{background:var(--surface-muted)}.vocab-detail-actions{flex-wrap:wrap;gap:.65rem;display:flex}.vocab-detail-actions>*{flex:1}.vocab-modal-backdrop{z-index:50;background:#10192594;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.vocab-modal{background:var(--surface);border-radius:1rem;gap:1rem;width:min(100%,31rem);max-height:90vh;padding:1.3rem;display:grid;overflow:auto}.vocab-review{gap:1.5rem;display:grid}.vocab-review-section{gap:1rem;display:grid}.vocab-review-section h2{border-bottom:2px solid #dce1e5;padding-bottom:.55rem;font-size:1.4rem}.vocab-review-list{gap:1.15rem;margin:0;padding:0;list-style:none;display:grid}.vocab-review-list li{border-radius:.55rem;padding:.5rem .6rem;scroll-margin-top:7rem;line-height:1.65}.vocab-review-list li>span:first-child{margin-right:.4rem}.vocab-return{color:var(--red-dark);cursor:pointer;background:0 0;border:0;margin-top:.35rem;padding:0;font-weight:800;display:block}.vocab-practice-list{gap:.55rem;display:grid}.vocab-practice-card{background:var(--surface);border:1px solid #d5dce3;border-radius:.85rem;gap:.4rem;padding:.8rem 1rem;scroll-margin-top:7rem;display:grid}.vocab-practice-card.is-complete{background:#f2fbf5;border-color:#a9d6b7}.vocab-practice-check{cursor:pointer;align-items:start;gap:.75rem;line-height:1.65;display:flex}.vocab-practice-check input{width:1.25rem;height:1.25rem;accent-color:var(--red);flex:none;margin-top:.22rem}.vocab-target{font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.vocab-target:hover{text-decoration:underline}.vocab-practice-rating{color:var(--muted);align-items:center;gap:.8rem;padding-left:2rem;font-size:.75rem;display:flex}.vocab-practice-rating select{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:.45rem;margin-left:.35rem;padding:.3rem .5rem}.vocab-practice-rating small{color:var(--red-dark)}.vocab-completed-label{color:#247544;padding-left:2rem}.vocab-review-progress{border-top:1px solid var(--line);gap:.6rem;padding:1rem;display:grid}.vocab-review-progress>div:first-child{justify-content:space-between;display:flex}.vocab-review-progress p{color:var(--muted);font-size:.85rem}.vocab-certificate{text-align:center;background:#f1f9f4;border:1px solid #b7d4c3;border-radius:1.2rem;gap:1rem;width:min(100%,40rem);margin:0 auto;padding:clamp(1.2rem,4vw,2rem);display:grid}.vocab-certificate h1{margin:0;font-size:2.6rem}.vocab-certificate h2{color:#207647}.vocab-certificate>strong{color:var(--red-dark)}.vocab-certificate dl,.vocab-history-card dl{gap:.5rem;margin:0;display:grid}.vocab-certificate dl>div,.vocab-history-card dl>div{text-align:left;border-bottom:1px solid #d7e4db;justify-content:space-between;gap:1rem;padding:.45rem 0;display:flex}.vocab-certificate dt,.vocab-history-card dt{color:var(--muted)}.vocab-certificate dd,.vocab-history-card dd{text-align:right;margin:0;font-weight:800}.vocab-history-list{gap:.8rem;display:grid}.vocab-history-card{background:var(--surface);border:1px solid #d5dce3;border-radius:1rem;gap:1rem;padding:1rem;display:grid}.vocab-history-card>div:first-child{align-items:center;gap:.75rem;display:flex}.vocab-history-card h2{margin:0;font-size:1.05rem}.vocab-history-card p{color:var(--muted);margin:.2rem 0 0;font-size:.8rem}.vocab-history-card dl{grid-template-columns:repeat(2,minmax(0,1fr))}.vocab-success-mark{color:#247544;background:#d9f4e0;border-radius:50%;flex:none;place-items:center;width:2.4rem;height:2.4rem;font-weight:900;display:grid}@media (max-width:760px){.vocab-add-layout{grid-template-columns:1fr}.vocab-page-heading .vocab-primary,.vocab-due-strip .vocab-primary{width:100%}.vocab-history-card dl{grid-template-columns:1fr}}.portal-frame:has(.vocab-original) .portal-content{width:100%;padding:0}.vocab-original{background:var(--surface-muted);grid-template-rows:auto 1fr;align-content:start;gap:0;width:100%;max-width:none;min-height:calc(100vh - 5.5rem);padding:0}.vocab-topbar{border-bottom:1px solid var(--line);background:var(--surface);align-items:center;gap:1rem;min-height:4.8rem;padding:.65rem clamp(1.25rem,4vw,2.4rem);display:flex}.vocab-topbar-back,.vocab-topbar-profile{border:1px solid var(--line);background:var(--surface);width:3rem;height:3rem;min-height:0;color:var(--ink);border-radius:.9rem;flex:none;place-items:center;text-decoration:none;display:grid}.vocab-topbar-back:hover,.vocab-topbar-profile:hover{background:#f7f9fb;border-color:#aab7c3}.vocab-topbar-title{letter-spacing:-.025em;font-size:1.3rem}.vocab-topbar-brand{color:#18212d;align-items:baseline;gap:.55rem;text-decoration:none;display:inline-flex}.vocab-topbar-brand strong{letter-spacing:-.055em;font-size:1.65rem}.vocab-topbar-brand strong span{color:#c93645}.vocab-topbar-brand small{color:#68727e;font-size:.8rem;font-weight:500}.vocab-topbar-profile{color:#fff;background:#18212d;border:0;border-radius:50%;margin-left:auto}.vocab-content{align-content:start;gap:1.25rem;width:min(100%,51rem);margin:0 auto;padding:2rem clamp(1.25rem,4vw,2.4rem) 4rem;display:grid}.vocab-page-heading{padding:.15rem 0 .3rem}.vocab-page-heading h1{letter-spacing:-.045em;font-size:clamp(2rem,5vw,2.55rem)}.vocab-page-heading p:last-child{margin-top:.25rem;font-size:1rem}.vocab-day-intro{gap:.25rem;padding:.25rem 0 .4rem;display:grid}.vocab-day-intro h1{color:#2664bd;font-size:2.05rem;line-height:1.2}.vocab-day-intro time{color:#68727e;font-size:.96rem}.vocab-day-intro p{color:#68727e;margin-top:.6rem;font-size:.86rem}.vocab-day-intro p span{color:#b7c0ca;padding:0 .35rem}.vocab-section-divider{background:#d9dfe5;height:1px;margin:.3rem 0 .4rem}.vocab-section-title{letter-spacing:-.025em;font-size:1.45rem}.vocab-detail{gap:.9rem}.vocab-mode{border:1px solid var(--line);background:var(--surface);border-radius:.75rem;gap:0;width:100%;max-width:none;padding:0;overflow:hidden}.vocab-mode button{min-height:3rem;color:var(--muted);background:var(--surface);border:0;border-radius:0}.vocab-mode button[aria-pressed=true],.vocab-mode button[aria-pressed=true]:hover:not(:disabled){color:#fff;box-shadow:none;background:#2664bd}.vocab-mode button:first-child{border-right:1px solid var(--line)}.vocab-mode button[aria-pressed=false]:hover:not(:disabled){color:var(--ink);background:var(--surface-muted)}.vocab-day-card{border-color:#d9dfe5;border-radius:1rem;min-height:6.5rem;padding:1rem 1.15rem;transition:border-color .2s,background .2s}.vocab-day-card:hover{box-shadow:none;background:snow;border-color:#c93645}.vocab-day-copy strong{font-size:1.22rem}.vocab-day-copy small{font-size:.9rem}.vocab-day-arrow{color:#8c98a4}.vocab-create-action{width:100%;min-height:3.3rem}.vocab-word-card{border-color:#d9dfe5;border-radius:1rem;align-items:center;min-height:6.4rem;padding:1rem 1.2rem}.vocab-word-card strong{font-size:1.08rem}.vocab-word-card p{margin-top:.35rem;font-size:.95rem;line-height:1.6}.vocab-word-actions{flex:none;justify-items:end;gap:.25rem;display:grid}.vocab-word-more{width:2.5rem;height:2.5rem;color:var(--ink);background:0 0;border:0;place-items:center;display:grid}.vocab-word-action-menu{border:1px solid var(--line);background:var(--surface);border-radius:.65rem;padding:.25rem}.vocab-word-action-menu button{min-height:2.5rem;color:var(--ink);background:0 0;border:0;align-items:center;gap:.45rem;padding:.4rem .7rem;font-weight:700;display:inline-flex}.vocab-word-action-menu button:hover{background:var(--surface-muted)}.vocab-word-menu>button{color:#18212d}.vocab-word-menu>div{box-shadow:none}.vocab-word-menu>div button{width:100%;min-height:2.75rem;color:var(--ink);background:var(--surface);font-size:.95rem;font-weight:700;display:block}.vocab-word-menu>div button:hover:not(:disabled){color:var(--ink);background:var(--surface-muted)}.vocab-detail-actions{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:1rem;display:grid}.vocab-detail-actions .vocab-primary,.vocab-detail-actions .vocab-secondary{min-height:3.2rem}.vocab-review{gap:1.55rem}.vocab-review-day{color:#2664bd;font-size:1.25rem;font-weight:800}.vocab-review-section{gap:.85rem}.vocab-review-section h2{border-bottom:2px solid #d9dfe5;padding:0 0 .55rem;font-size:1.5rem}.vocab-review-list{gap:.6rem}.vocab-review-list li{border-radius:0;padding:.65rem .25rem;font-size:1.03rem;line-height:1.85}.vocab-practice-list{gap:.15rem}.vocab-practice-card{border-color:#dfe4e8;border-radius:.8rem;padding:.9rem 1rem}.vocab-practice-card.is-complete{background:#f3fbf5}.vocab-task-word{color:#2664bd}.vocab-practice-card.is-complete .vocab-practice-check>span,.vocab-practice-card.is-complete .vocab-target{color:var(--muted);text-decoration:line-through}.vocab-practice-check input{accent-color:#2664bd}.vocab-practice-check{font-size:1rem;line-height:1.65}.vocab-review-progress{border-top:2px solid #d9dfe5;gap:.6rem;padding:1.2rem 0 0}.vocab-review-progress strong:last-child{color:#2664bd}.vocab-review-progress .review-progress-track{background:#e4e9ee;height:.55rem}.vocab-review-progress .review-progress-track span{background:#c93645}.vocab-submit-review{width:100%;min-height:3.25rem}.vocab-certificate{background:#edf4fb;border-color:#cbd9e7;border-radius:1.25rem;gap:.7rem;width:100%;max-width:40rem;padding:clamp(1.5rem,5vw,2.4rem);scroll-margin-top:6rem}.vocab-certificate h2{color:#18212d;font-size:2.5rem}.vocab-certificate h3{color:#2664bd;font-size:1.45rem}.vocab-certificate .vocab-certificate-ordinal{color:#c93645;font-size:1.25rem}.vocab-certificate-mode,.vocab-certificate-progress{color:#2664bd;font-weight:800}.vocab-certificate dl{gap:.15rem;margin:.7rem 0}.vocab-certificate dl>div{border:0;padding:.15rem 0}.vocab-certificate-message{color:#18212d;margin:.7rem 0;font-size:1.13rem}.vocab-certificate-date{color:#68727e}.vocab-certificate-stat{color:#18212d;font-weight:600}.vocab-certificate .vocab-detail-actions{margin-top:.8rem}.vocab-original .vocab-primary,.vocab-original .vocab-secondary,.vocab-original button,.vocab-original .vocab-day-card{text-shadow:none;box-shadow:none!important;transform:none!important}.vocab-reminder-request{border:1px solid var(--line);background:var(--surface);border-radius:.8rem;gap:.6rem;padding:1rem 1.2rem;display:grid}.vocab-reminder-request p{color:var(--muted);font-size:.9rem}[data-theme=dark] .vocab-original{background:var(--surface-muted)}[data-theme=dark] .vocab-topbar,[data-theme=dark] .vocab-day-card,[data-theme=dark] .vocab-word-card,[data-theme=dark] .vocab-practice-card,[data-theme=dark] .vocab-history-card{background:var(--surface);border-color:var(--line);color:var(--ink)}[data-theme=dark] .vocab-word-card p,[data-theme=dark] .vocab-topbar-title{color:var(--ink)}[data-theme=dark] .vocab-mode button{color:var(--ink);background:var(--surface)}[data-theme=dark] .vocab-mode button[aria-pressed=true]{color:#fff;background:#2664bd}.course-week{padding:0;overflow:hidden}.course-week>summary,.course-lesson>summary{cursor:pointer;align-items:center;gap:.75rem;min-height:3.6rem;padding:1rem 1.2rem;list-style:none;display:flex}.course-week>summary::-webkit-details-marker{display:none}.course-lesson>summary::-webkit-details-marker{display:none}.course-week>summary strong{flex:1}.course-week[open]>summary,.course-lesson[open]>summary{border-bottom:1px solid var(--line)}.course-week>summary:hover,.course-lesson>summary:hover{background:var(--surface-muted)}:is(.course-week>summary:focus-visible,.course-lesson>summary:focus-visible){outline-offset:-2px;outline:2px solid #2664bd}.course-expand,.course-lesson>summary>span:last-child{transition:transform .15s}.course-week[open] .course-expand,.course-lesson[open]>summary>span:last-child{transform:rotate(180deg)}.course-week>.course-lessons{grid-template-columns:minmax(0,1fr);align-items:stretch;gap:0;min-width:0;padding:0 .75rem .75rem;display:grid}.course-lesson{border-bottom:1px solid var(--line)}.course-lesson:last-child{border-bottom:0}.course-lesson>summary>span:first-child{flex:1;gap:.2rem;display:grid}.course-lesson>summary small,.course-lesson-count{color:var(--muted);font-size:.8rem}.course-activity-list{gap:.6rem;padding:.8rem 1rem 1rem;list-style:none;display:grid}.course-activity-list li{border:1px solid var(--line);background:var(--surface);border-radius:.7rem;gap:.45rem;padding:.9rem;display:grid}.course-activity-list li>div:first-child{align-items:center;gap:.5rem;display:flex}.course-activity-bottom{color:var(--muted);justify-content:space-between;align-items:center;gap:.7rem;font-size:.85rem;display:flex}.course-activity-bottom .homework-open-button{text-decoration:none}.course-empty-activities{padding:.8rem 1rem 1rem}@media (max-width:760px){.vocab-topbar{min-height:4.35rem;padding:.5rem 1.1rem}.vocab-topbar-back,.vocab-topbar-profile{width:2.85rem;height:2.85rem}.vocab-content{padding:1.7rem 1.25rem calc(6rem + env(safe-area-inset-bottom))}.vocab-detail-actions{grid-template-columns:1fr}.vocab-review-list li{font-size:1rem}}.apex-brand-art{aspect-ratio:4.1;filter:url(/apex-wordmark-filters.svg#black-lettering);background:url(/apex-wordmark.png) 50%/100% no-repeat;width:100%;display:block}.portal-sidebar .portal-brand{align-items:center;min-height:3.4rem;padding:.15rem .65rem 1.15rem}.portal-brand .apex-brand-panel{background:0 0;border-radius:0;flex:0 0 9.25rem;align-items:center;width:9.25rem;height:2.25rem;padding:0;display:flex}.portal-mobile-brand{display:none}.auth-apex-brand{align-items:center;width:11rem;display:flex}:root[data-theme=dark] .apex-brand-art{filter:none}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .apex-brand-art{filter:none}}@media (max-width:780px){.portal-mobile-brand{width:6.5rem;margin-bottom:.25rem;display:flex}}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#f4f5f7;--ink:#0f1115;--muted:#545964;--line:#dfe2e8;--line-strong:#c4cad4;--red:#e11d36;--red-hover:#c3142b;--red-dark:#b8122a;--red-soft:#fde6ea;--red-line:#f3b4bd;--surface:#fff;--surface-muted:#f1f2f5;--shadow:0 12px 30px -12px #0f111524, 0 2px 6px #0f11150d;--student-selected:var(--red);--student-selected-text:#fff;--good:#146440;--warn:#7a4f00;--info:#2d5aa0}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#0b1220;--ink:#e7edf8;--muted:#9baac2;--line:#293853;--line-strong:#40516e;--red:#e11d36;--red-hover:#c3142b;--red-dark:#ff6475;--red-soft:#3a1b2c;--red-line:#7a2a3c;--surface:#121c2d;--surface-muted:#172338;--shadow:0 12px 28px #00000052;--student-selected:var(--red);--student-selected-text:#fff;--good:#4cc38d;--warn:#f2b35b;--info:#80b2ff}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#0b1220;--ink:#e7edf8;--muted:#9baac2;--line:#293853;--line-strong:#40516e;--red:#e11d36;--red-hover:#c3142b;--red-dark:#ff6475;--red-soft:#3a1b2c;--red-line:#7a2a3c;--surface:#121c2d;--surface-muted:#172338;--shadow:0 12px 28px #00000052;--student-selected:var(--red);--student-selected-text:#fff;--good:#4cc38d;--warn:#f2b35b;--info:#80b2ff}}body{background:var(--paper)}::selection{background:color-mix(in srgb, var(--red) 28%, transparent);color:inherit}.portal-frame :is(input,button,a):not(.canonical-attempt-runtime *):not(.attempt-workspace *):focus-visible{outline-color:var(--red)}.portal-frame{background:var(--paper)}.portal-sidebar{border-color:var(--line);box-shadow:none;background:#fff}.portal-header{background:var(--surface);border-color:var(--line);box-shadow:none}.portal-sidebar .portal-brand,.portal-sidebar .brand-copy,.portal-sidebar .portal-nav-link{color:var(--ink)}.portal-sidebar .brand-copy small,.portal-sidebar .nav-heading{color:var(--muted)}.portal-sidebar .portal-nav-link:hover{color:var(--ink);background:var(--surface-muted)}.portal-sidebar .portal-nav-link.active{color:#fff;background:var(--red)}.portal-sidebar .portal-sign-out{border-color:var(--line)}.portal-sidebar .portal-sign-out .portal-nav-link{color:var(--ink)}.portal-brand .brand-emblem{background:var(--red);box-shadow:none}.portal-brand .brand-copy strong span{color:var(--red)}.portal-header .profile-chip span{background:var(--red);border-radius:999px}.portal-nav-link{box-shadow:none;border:0;border-radius:.45rem}.portal-nav-link:hover{background:var(--surface-muted);transform:none}.portal-nav-link.active{color:var(--student-selected-text);background:var(--student-selected);border:0}.portal-sidebar .portal-nav-link.active:before{display:none}.portal-sign-out{border-color:var(--line)}.student-guide{gap:1rem;max-width:52rem;display:grid}.student-guide>.content-card>p:last-child,.student-guide-contact p{color:var(--muted);margin-top:.5rem}.student-guide-questions{padding-top:.3rem;padding-bottom:.3rem}.student-guide-questions details+details{border-top:1px solid var(--line)}.student-guide-questions summary{cursor:pointer;padding:1rem .2rem;font-weight:700}.student-guide-questions details>div{color:var(--muted);padding:0 .2rem 1rem;line-height:1.65}.student-guide-questions a{text-underline-offset:.16rem;text-decoration:underline}.student-guide-contact{justify-content:space-between;align-items:center;gap:1rem;display:flex}.student-guide-contact .button-link{gap:.45rem}.student-sign-out-dialog{border:1px solid var(--line);width:min(28rem,100% - 2rem);color:var(--ink);background:var(--surface);box-shadow:var(--shadow);border-radius:1rem;padding:1.5rem}.student-sign-out-dialog::backdrop{background:#0c1829a6}.student-sign-out-dialog h2{margin:0 0 .6rem;font-size:1.2rem}.student-sign-out-dialog p{color:var(--muted);margin-bottom:1.2rem}.student-sign-out-dialog .actions{justify-content:flex-end}.student-sign-out-dialog form{margin:0}.student-profile-stack{gap:1.25rem;display:grid}.profile-contacts{max-width:52rem}.profile-contacts>p:not(.eyebrow){color:var(--muted);margin:.5rem 0 1.2rem}.profile-contacts form{gap:1.15rem;display:grid}.profile-contacts form>label,.profile-contacts fieldset label{gap:.4rem;font-weight:650;display:grid}.profile-contacts fieldset{border:1px solid var(--line);border-radius:.8rem;grid-template-columns:repeat(2,minmax(0,1fr));gap:.9rem;min-width:0;padding:1rem;display:grid}.profile-contacts legend{padding:0 .35rem;font-weight:750}.profile-contacts input:not([type=checkbox]){border:1px solid var(--line);width:100%;min-height:2.8rem;color:var(--ink);background:var(--surface);border-radius:.55rem;padding:.55rem .7rem}.profile-contacts .profile-contact-attestation{align-items:flex-start;gap:.55rem;font-weight:500;display:flex}.profile-contact-attestation input{margin-top:.2rem}.profile-contacts form>button{justify-self:start}@media (max-width:600px){.profile-contacts fieldset{grid-template-columns:1fr}}@media (max-width:480px){.student-guide-contact{flex-direction:column;align-items:flex-start}}.icon-button,.profile-chip{border-color:var(--line);box-shadow:none;border-radius:.5rem}.icon-button:hover,.profile-chip:hover{border-color:var(--line-strong);background:var(--surface-muted);transform:none}.breadcrumb span{color:var(--muted)}.portal-frame :is(.welcome-card,.course-hero,.assignment-hero,.vocabulary-hero,.stat-grid article,.content-card,.course-card,.homework-card,.module-card,.notice-card,.planned-page,.context-strip,.result-card,.vocabulary-item,.credential-card,.review-card,.canonical-runtime-controls,.attempt-workspace){border:1px solid var(--line);background:var(--surface);box-shadow:none;border-radius:.55rem}.portal-frame :is(.welcome-card,.course-hero,.assignment-hero,.vocabulary-hero){background:var(--surface)}.stat-grid article:before{display:none}.stat-grid article strong{color:var(--ink)}.course-grid,.homework-list,.results-list,.vocabulary-list{grid-template-columns:minmax(0,1fr);gap:0}.portal-frame :is(.course-card,.homework-card,.result-card,.vocabulary-item){border:0;border-bottom:1px solid var(--line);box-shadow:none;border-radius:0;transition:background-color .15s}.portal-frame :is(.course-card,.homework-card,.result-card,.vocabulary-item):hover{border-color:var(--line);background:var(--surface-muted);box-shadow:none;transform:none}.course-grid,.homework-list,.results-list,.vocabulary-list{background:var(--surface);border:1px solid var(--line);border-radius:.45rem;overflow:hidden}.course-grid>:last-child,.homework-list>:last-child,.results-list>:last-child,.vocabulary-list>:last-child{border-bottom:0}.course-card{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;column-gap:1rem;padding:.95rem 1.15rem}.course-card .course-card-mark{grid-row:1/span 3;margin:0}.course-card .text-link{grid-area:1/3/span 3}.course-card .eyebrow,.course-card h2,.course-card p{grid-column:2}.course-card h2{font-size:1rem}.course-card p{font-size:.78rem}.course-card-mark,.course-mark,.module-index,.empty-symbol,.result-score{color:var(--student-selected-text);background:var(--student-selected)}.course-row,.task-row{border:0;border-top:1px solid var(--line);box-shadow:none;border-radius:0;margin:0;padding:.85rem .35rem}.course-row:hover,.task-row:hover{color:var(--red-dark);background:var(--surface-muted)}.course-row:first-child,.task-row:first-child{border-top:0}.homework-sections{gap:1.7rem}.homework-sections>section{min-width:0}.homework-sections .section-heading{margin-bottom:.65rem}.portal-frame a.homework-card-link.homework-card{border:0;border-bottom:1px solid var(--line);background:var(--surface);min-height:0;color:var(--ink);border-radius:0;grid-template-columns:minmax(0,1fr) auto;align-content:center;gap:.28rem 1rem;padding:.95rem 1.15rem;text-decoration:none;display:grid}.portal-frame .homework-list>a.homework-card-link:last-child{border-bottom:0}.homework-card-top{grid-column:1/-1;justify-content:flex-start;gap:.6rem}.homework-card-title{grid-column:1;font-size:1rem;line-height:1.35}.homework-card-context{color:var(--muted);grid-column:1;font-size:.78rem}.homework-card-bottom{color:var(--red-dark);white-space:nowrap;grid-area:2/2/span 2;align-items:center;gap:.7rem;font-size:.78rem;font-weight:700;display:flex}.homework-open-button{color:#fff;background:var(--red);min-height:2rem;box-shadow:none;border-radius:999px;align-items:center;gap:.35rem;padding:.3rem .75rem;display:inline-flex}.homework-time-left{font-variant-numeric:tabular-nums}.homework-time-left.is-overdue{color:var(--muted)}.vocabulary-homework-card{background:var(--surface)}.vocabulary-due-badge,.state-review,.status-overdue{color:var(--student-selected-text);background:var(--student-selected)}.assignment-time{border:1px solid var(--line);background:var(--surface-muted);border-radius:.5rem;gap:.3rem;min-width:8.5rem;padding:.75rem 1rem;font-size:.82rem;display:grid}.assignment-time>span:first-child{color:var(--muted);text-transform:uppercase;font-size:.7rem;font-weight:750}.assignment-time .homework-time-left{color:var(--ink);font-size:1rem;font-weight:800}.vocabulary-item blockquote{border-left-color:var(--red)}.vocabulary-task-row{border-color:var(--line);background:var(--surface-muted)}.review-rating-panel button:first-child{color:#fff;background:var(--red)}.portal-frame .status-reviewed,.portal-frame .state-learning{color:var(--red-dark);background:var(--red-soft)}.portal-frame .review-rating-panel button:nth-child(4){color:#fff;background:var(--red)}.credential-grid{border:1px solid var(--line);background:var(--surface);border-radius:.45rem;grid-template-columns:minmax(0,1fr);gap:0;overflow:hidden}.portal-frame .credential-grid .credential-card{border:0;border-bottom:1px solid var(--line);border-radius:0;grid-template-columns:minmax(0,1fr) minmax(14rem,1fr);gap:.8rem 1.5rem;padding:1.2rem;display:grid}.portal-frame .credential-grid .credential-card:last-child{border-bottom:0}.credential-card>p{grid-column:1}.credential-card>form,.credential-card>.actions{grid-column:2}.credential-card>form{grid-row:1/span 2}.portal-frame :is(button:not(.portal-nav-link):not(.mobile-more):not([role=separator]):not([class*=backdrop]),a.button-link,a.text-link,a.back-link,a.icon-button,a.profile-chip):not(.canonical-attempt-runtime *):not(.attempt-workspace *):not(.ax-page *){border-radius:999px}.portal-frame :is(button:not([role=separator]):not([class*=backdrop]),a.button-link,a.text-link,a.back-link,a.icon-button,a.profile-chip):not(.canonical-attempt-runtime *):not(.attempt-workspace *):not(.ax-page *){box-shadow:none;transition:background-color .15s;transform:none}.portal-frame :is(button,a):not(.canonical-attempt-runtime *):not(.attempt-workspace *):disabled,.portal-frame :is(button,a):not(.canonical-attempt-runtime *):not(.attempt-workspace *)[aria-disabled=true]{box-shadow:none}.portal-frame :is(a.text-link,a.back-link):not(.ax-page *){border:1px solid var(--line);background:var(--surface);width:fit-content;min-height:2.5rem;padding:.45rem .9rem}.portal-frame :is(.icon-button,.profile-chip){border-radius:999px}.portal-frame :is(button,a):not(.canonical-attempt-runtime *):not(.attempt-workspace *):focus-visible{outline:3px solid var(--red);outline-offset:2px}.portal-frame .student-nav-icon{position:relative}.portal-frame .student-nav-count{border:2px solid var(--surface);color:#fff;background:var(--red);border-radius:999px;place-items:center;min-width:1.15rem;height:1.15rem;padding:0 .2rem;font-size:.58rem;font-weight:800;line-height:1;display:grid;position:absolute;top:-.55rem;right:-.75rem}.portal-frame input[type=range]:not(.canonical-attempt-runtime *):not(.attempt-workspace *){accent-color:var(--red);border-radius:999px}.portal-frame:-webkit-full-screen{background:var(--paper);min-height:100dvh}.portal-frame:fullscreen{background:var(--paper);min-height:100dvh}html:-webkit-full-screen .portal-frame{background:var(--paper);min-height:100dvh}html:fullscreen .portal-frame{background:var(--paper);min-height:100dvh}@media (min-width:700px) and (max-width:780px){.portal-frame{grid-template-columns:14rem minmax(0,1fr);padding-bottom:0;display:grid}.portal-sidebar{display:flex}.mobile-navigation,.mobile-more-panel{display:none}.portal-content{padding:1.25rem}}@media (max-width:699px){.portal-frame{padding-bottom:calc(5.5rem + env(safe-area-inset-bottom));display:block}.portal-sidebar{display:none}.portal-content{padding:.8rem}.portal-header{min-height:4.25rem}.portal-frame :is(button:not([role=separator]):not([class*=backdrop]),a.button-link,a.text-link,a.back-link):not(.canonical-attempt-runtime *):not(.attempt-workspace *):not(.ax-page *){border-radius:999px}.portal-frame :is(.welcome-card,.stat-grid article,.content-card,.course-hero,.assignment-hero,.vocabulary-hero,.module-card,.notice-card,.planned-page,.context-strip,.review-card,.credential-card){border-color:#0000;border-radius:.7rem}.course-grid,.homework-list,.results-list,.vocabulary-list{border:0;border-radius:.65rem}.portal-frame :is(.course-card,.homework-card,.result-card,.vocabulary-item){border-bottom-color:var(--line)}.course-card{grid-template-columns:auto minmax(0,1fr)}.course-card .text-link{grid-area:auto/2}.course-card .course-card-mark{width:2.45rem}.homework-card-bottom{grid-area:auto/1/auto/-1;justify-content:space-between;margin-top:.2rem}.credential-grid{border:0;border-radius:.65rem}.portal-frame .credential-grid .credential-card{grid-template-columns:minmax(0,1fr)}.credential-card>p,.credential-card>form,.credential-card>.actions{grid-area:auto/1}.mobile-navigation{min-height:4.65rem;padding:.35rem max(.4rem, env(safe-area-inset-right)) max(.4rem, env(safe-area-inset-bottom)) max(.4rem, env(safe-area-inset-left));border:0;border-top:1px solid var(--line);background:var(--surface);box-shadow:none;grid-template-columns:repeat(4,minmax(0,1fr));gap:.15rem;display:grid}.mobile-navigation .portal-nav-link,.mobile-navigation .mobile-more{min-height:3.55rem;color:var(--muted);text-align:center;background:0 0;border:0;border-radius:999px;place-items:center;gap:.12rem;padding:.25rem .1rem;font-size:.58rem;line-height:1.1;display:grid}.mobile-navigation .portal-nav-link.active,.mobile-navigation .mobile-more.active{color:var(--student-selected-text);background:var(--student-selected)}.mobile-navigation .nav-icon{width:auto;height:1.3rem}.mobile-more-panel{bottom:calc(5.1rem + env(safe-area-inset-bottom));border-color:var(--line);background:var(--surface)}.mobile-more-panel .portal-nav-link{border-radius:.45rem}}@media (prefers-reduced-motion:reduce){.portal-frame :is(button,a){transition:none}}.portal-frame .status-not_started,.portal-frame .state-new,.portal-frame .credential-state.missing{color:var(--warn);background:color-mix(in srgb, var(--warn) 14%, var(--surface))}.portal-frame .status-submitted,.portal-frame .state-mastered,.portal-frame .credential-state.connected{color:var(--good);background:color-mix(in srgb, var(--good) 14%, var(--surface))}.message.error{color:var(--red-dark);background:var(--red-soft);border:1px solid var(--red-line)}.message.success{color:var(--good);background:color-mix(in srgb, var(--good) 12%, var(--surface));border:1px solid color-mix(in srgb, var(--good) 35%, transparent)}.portal-frame .secondary{border-color:var(--line-strong);color:var(--ink)}.portal-frame .secondary:hover:not(:disabled){background:var(--surface-muted)}.portal-frame .secondary.danger{color:var(--red-dark)}.vocab-modal-backdrop{background:#050912a8}.student-sign-out-dialog::backdrop{background:#050912a8}.portal-frame .vocab-original{color:var(--ink);background:var(--surface-muted)}.portal-frame .vocab-original :is(button,a){box-shadow:none;text-shadow:none;transform:none}.portal-frame .vocab-original .vocab-topbar{border-color:var(--line);background:var(--surface);color:var(--ink)}.portal-frame .vocab-original :is(.vocab-topbar-back,.vocab-topbar-title,.vocab-topbar-brand){color:var(--ink)}.portal-frame .vocab-original .vocab-topbar-back{border-color:var(--line);background:var(--surface);border-radius:.9rem}.portal-frame .vocab-original .vocab-topbar-back:hover{border-color:var(--line-strong);background:var(--surface-muted)}.portal-frame .vocab-original .vocab-topbar-brand small{color:var(--muted)}.portal-frame .vocab-original .vocab-topbar-brand strong span{color:var(--red)}.portal-frame .vocab-original .vocab-topbar-profile{color:#fff;background:var(--red);border-radius:50%}.portal-frame .vocab-original .vocab-primary{border:1px solid var(--red);color:#fff;background:var(--red);border-radius:.85rem;box-shadow:0 8px 18px -10px color-mix(in srgb, var(--red) 85%, transparent)!important}.portal-frame .vocab-original .vocab-primary:hover:not(:disabled){border-color:var(--red-hover);background:var(--red-hover)}.portal-frame .vocab-original .vocab-secondary{border:1px solid var(--line-strong);color:var(--ink);background:var(--surface);border-radius:.85rem}.portal-frame .vocab-original .vocab-secondary:hover:not(:disabled){background:var(--surface-muted)}.portal-frame .vocab-original :is(.vocab-text-link,.vocab-back,.vocab-preview,.vocab-return){color:var(--red-dark)}.portal-frame .vocab-original .vocab-return{border:1px solid var(--red-line);background:var(--red-soft);border-radius:.7rem;align-items:center;min-height:2.5rem;margin-top:.5rem;padding:.45rem .8rem;display:inline-flex}.portal-frame .vocab-original .vocab-due-strip{border-color:var(--red-line);background:var(--red-soft)}.portal-frame .vocab-original .vocab-due-strip strong{color:var(--ink)}.portal-frame .vocab-original .vocab-due-strip span{color:var(--muted)}.portal-frame .vocab-original :is(.vocab-day-card,.vocab-panel,.vocab-word-card,.vocab-practice-card,.vocab-history-card,.vocab-reminder-request){border-color:var(--line);color:var(--ink);background:var(--surface);box-shadow:var(--ax-elev-1)}.portal-frame .vocab-original .vocab-day-card:hover{border-color:var(--red);background:var(--surface)}.portal-frame .vocab-original .vocab-day-card:hover .vocab-day-arrow{color:var(--red-dark)}.portal-frame .vocab-original .vocab-day-arrow{color:var(--muted)}.portal-frame .vocab-original .vocab-day-icon{color:#fff;background:var(--red)}.portal-frame .vocab-original :is(.vocab-day-copy small,.vocab-day-copy>span,.vocab-word-card small,.vocab-history-card p,.vocab-day-intro time,.vocab-day-intro p,.vocab-certificate-date),.portal-frame .vocab-original .vocab-day-intro p span{color:var(--muted)}.portal-frame .vocab-original :is(.vocab-day-intro h1,.vocab-review-day,.vocab-word-card strong,.vocab-review-list strong,.vocab-target,.vocab-task-word){color:var(--red-dark)}.portal-frame .vocab-original .vocab-target{background:0 0;border-radius:0}.portal-frame .vocab-original .vocab-word-card p{color:color-mix(in srgb, var(--ink) 82%, var(--surface))}.portal-frame .vocab-original .vocab-section-divider{background:var(--line)}.portal-frame .vocab-original :is(.vocab-review-section h2,.vocab-review-progress){border-color:var(--line)}.portal-frame .vocab-original .vocab-mode{border-color:var(--line);background:var(--surface)}.portal-frame .vocab-original .vocab-mode button{color:var(--muted);background:var(--surface);border-radius:0!important}.portal-frame .vocab-original .vocab-mode button:first-child{border-right-color:var(--line)}.portal-frame .vocab-original .vocab-mode button[aria-pressed=false]:hover:not(:disabled){color:var(--ink);background:var(--surface-muted)}.portal-frame .vocab-original .vocab-mode button[aria-pressed=true],.portal-frame .vocab-original .vocab-mode button[aria-pressed=true]:hover:not(:disabled){color:#fff;background:var(--red)}.portal-frame .vocab-original .vocab-mode button:disabled{opacity:1}.portal-frame .vocab-original :is(.vocab-word-more,.vocab-word-menu>button){color:var(--ink);border-radius:.5rem}.portal-frame .vocab-original :is(.vocab-word-action-menu,.vocab-word-menu>div){border-color:var(--line);color:var(--ink);background:var(--surface);box-shadow:var(--ax-elev-2)}.portal-frame .vocab-original :is(.vocab-word-action-menu,.vocab-word-menu>div) button{color:var(--ink);background:var(--surface);border-radius:.5rem}.portal-frame .vocab-original :is(.vocab-word-action-menu,.vocab-word-menu>div) button:hover:not(:disabled){background:var(--surface-muted)}.portal-frame .vocab-original .vocab-review-progress .review-progress-track{background:var(--line)}.portal-frame .vocab-original .vocab-review-progress .review-progress-track span{background:var(--red)}.portal-frame .vocab-original .vocab-review-progress strong:last-child{color:var(--red-dark)}.portal-frame .vocab-original .vocab-practice-check input{accent-color:var(--red)}.portal-frame .vocab-original .vocab-practice-card.is-complete{border-color:color-mix(in srgb, var(--good) 40%, var(--line));background:color-mix(in srgb, var(--good) 8%, var(--surface))}.portal-frame .vocab-original .vocab-practice-card.is-complete :is(.vocab-practice-check>span,.vocab-target){color:var(--muted);text-decoration:line-through}.portal-frame .vocab-original .vocab-practice-rating select{border-color:var(--line-strong);color:var(--ink);background:var(--surface)}.portal-frame .vocab-original .vocab-practice-rating small{color:var(--red-dark)}.portal-frame .vocab-original .vocab-completed-label{color:var(--good)}.portal-frame .vocab-original .vocab-paste-sample{border-color:var(--line);color:var(--muted);background:var(--surface-muted)}.portal-frame .vocab-original .vocab-field :is(input,textarea){border-color:var(--line-strong);color:var(--ink);background:var(--surface)}.portal-frame .vocab-original .vocab-message{color:var(--ink);background:var(--red-soft)}.portal-frame .vocab-original .vocab-modal{border:1px solid var(--line);color:var(--ink);background:var(--surface);box-shadow:var(--shadow)}.portal-frame .vocab-original .vocab-certificate{border-color:color-mix(in srgb, var(--good) 38%, var(--line));background:color-mix(in srgb, var(--good) 7%, var(--surface))}.portal-frame .vocab-original .vocab-certificate :is(h2,.vocab-certificate-message,.vocab-certificate-stat){color:var(--ink)}.portal-frame .vocab-original .vocab-certificate :is(h3,.vocab-certificate-mode,.vocab-certificate-progress,.vocab-certificate-ordinal){color:var(--red-dark)}.portal-frame .vocab-original :is(.vocab-certificate,.vocab-history-card) dl>div{border-color:var(--line)}.portal-frame .vocab-original :is(.vocab-success-mark,.vocabulary-notification-state span){color:var(--good);background:color-mix(in srgb, var(--good) 15%, var(--surface))}@media (max-width:699px){.portal-frame:has(.vocab-original) .portal-content{padding:0}}:root{--ax-radius:16px;--ax-radius-sm:11px;--ax-ink-2:#2b2b30;--ax-gray-1:#fafafa;--ax-gray-2:#ececef;--ax-good:#17744c;--ax-mid:#b7791f;--ax-low:var(--red);--ax-chart-2:#111114;--ax-chart-3:#8e8e98;--ax-elev-1:0 1px 2px #0e0e100f, 0 1px 1px #0e0e100a;--ax-elev-2:0 10px 28px -12px #0e0e102e, 0 2px 6px #0e0e100d;--ax-ease:cubic-bezier(.2, .7, .2, 1);--ax-sidebar:#0b0b0d;--ax-sidebar-ink:#ececef;--ax-sidebar-muted:#8e8e98;--ax-sidebar-hover:#19191d}:root[data-theme=dark]{--ax-chart-2:#e7edf8;--ax-chart-3:#8394ad;--ax-gray-1:#172338;--ax-gray-2:#22324d;--ax-ink-2:#cdd6e4;--ax-good:#4cc38d;--ax-mid:#f2b35b;--ax-elev-1:0 1px 2px #00000059, 0 0 0 1px #ffffff05;--ax-elev-2:0 16px 36px -14px #000000a6;--ax-sidebar:#080e1a;--ax-sidebar-ink:#e7edf8;--ax-sidebar-muted:#8394ad;--ax-sidebar-hover:#16223a}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--ax-chart-2:#e7edf8;--ax-chart-3:#8394ad;--ax-gray-1:#172338;--ax-gray-2:#22324d;--ax-ink-2:#cdd6e4;--ax-good:#4cc38d;--ax-mid:#f2b35b;--ax-elev-1:0 1px 2px #00000059, 0 0 0 1px #ffffff05;--ax-elev-2:0 16px 36px -14px #000000a6;--ax-sidebar:#080e1a;--ax-sidebar-ink:#e7edf8;--ax-sidebar-muted:#8394ad;--ax-sidebar-hover:#16223a}}body{-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}html{-webkit-text-size-adjust:100%}.portal-frame .portal-sidebar{background:var(--ax-sidebar);border-color:var(--ax-sidebar)}.portal-frame .portal-sidebar .portal-nav-link,.portal-frame .portal-sidebar .portal-brand{color:var(--ax-sidebar-ink)}.portal-frame .portal-sidebar .nav-heading{color:var(--ax-sidebar-muted)}.portal-frame .portal-sidebar .portal-nav-link{transition:background-color .18s var(--ax-ease), color .18s;border:0;border-radius:10px}.portal-frame .portal-sidebar .portal-nav-link:hover{color:#fff;background:var(--ax-sidebar-hover)}.portal-frame .portal-sidebar .portal-nav-link.active{color:#fff;background:var(--red);box-shadow:0 8px 18px -10px color-mix(in srgb, var(--red) 90%, transparent)}.portal-frame .portal-sidebar .portal-sign-out{border-color:color-mix(in srgb, var(--ax-sidebar-ink) 12%, transparent)}.portal-frame .portal-sidebar .portal-sign-out .portal-nav-link{color:var(--ax-sidebar-muted)}.portal-frame .portal-sidebar .apex-brand-art{filter:none}.portal-frame .portal-header{border-color:var(--line);background:color-mix(in srgb, var(--surface) 88%, transparent);-webkit-backdrop-filter:saturate(1.4)blur(14px);backdrop-filter:saturate(1.4)blur(14px)}.portal-frame .portal-header h1{letter-spacing:-.035em;font-weight:800}.portal-frame .profile-chip{gap:.5rem;padding:.2rem .7rem .2rem .2rem}.portal-frame .profile-chip .ax-avatar{border-radius:999px;flex:none}.portal-frame .profile-chip>span:first-child:not(.ax-avatar){border-radius:999px}.portal-frame .student-bell-count{background:var(--red);box-shadow:0 0 0 2px var(--surface)}@media (max-width:780px){.portal-frame .mobile-navigation{border-color:var(--line);background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:saturate(1.4)blur(14px);backdrop-filter:saturate(1.4)blur(14px)}.portal-frame .mobile-navigation .portal-nav-link.active,.portal-frame .mobile-navigation .mobile-more.active{color:#fff;background:var(--red)}.portal-frame .profile-chip{padding:.2rem}}.ax-page{gap:clamp(1rem,2.4vw,1.5rem);min-width:0;display:grid;container-type:inline-size}.ax-page :where(h2,h3){color:var(--ink)}.ax-stack{gap:.6rem;display:grid}.ax-card{border:1px solid var(--line);border-radius:var(--ax-radius);background:var(--surface);min-width:0;box-shadow:var(--ax-elev-1);padding:clamp(1rem,2.6cqi,1.4rem)}.ax-list-card{padding:.35rem clamp(.6rem,2cqi,1rem)}.ax-card-title{margin-bottom:.75rem;font-size:1rem}.ax-eyebrow{color:var(--red-dark);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:800}.ax-eyebrow-muted{color:var(--muted);font-size:.72rem;font-weight:700}.ax-section{gap:.7rem;min-width:0;display:grid}.ax-section-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem .75rem;min-width:0;display:flex}.ax-section-head h2{letter-spacing:-.02em;min-width:0;font-size:clamp(1.02rem,2.4cqi,1.18rem);font-weight:800}.ax-section-head>span{color:var(--muted);font-size:.8rem;font-weight:700}.ax-section-head>a{min-height:2.5rem;color:var(--ink);align-items:center;gap:.25rem;font-size:.82rem;font-weight:750;text-decoration:none;display:inline-flex}.ax-section-head>a:hover{color:var(--red-dark)}.ax-footnote{color:var(--muted);font-size:.78rem;line-height:1.55}.ax-back{width:fit-content;min-height:2.5rem;color:var(--muted);align-items:center;gap:.35rem;font-size:.85rem;font-weight:700;text-decoration:none;display:inline-flex}.ax-back:hover{color:var(--ink)}.ax-empty-line{padding:.4rem .2rem}.ax-callout{border-radius:var(--ax-radius-sm);padding:.8rem 1rem;font-size:.88rem;line-height:1.5}.ax-callout-warning{border:1px solid color-mix(in srgb, var(--ax-mid) 45%, transparent);color:var(--ink);background:color-mix(in srgb, var(--ax-mid) 10%, var(--surface))}.ax-empty{color:var(--muted);text-align:center;justify-items:center;gap:.55rem;padding:2rem 1rem;display:grid}.ax-error{color:var(--red-dark);font-size:.82rem;font-weight:650}.ax-status{min-height:1.2rem;color:var(--muted);font-size:.82rem}.ax-ok{color:var(--ax-good);font-weight:700}.ax-hero{border:1px solid var(--line);border-radius:calc(var(--ax-radius) + 4px);background:radial-gradient(120% 140% at 100% 0%, color-mix(in srgb, var(--red) 9%, transparent) 0, transparent 55%), var(--surface);box-shadow:var(--ax-elev-1);gap:1.1rem;padding:clamp(1.15rem,3.4cqi,2rem);display:grid;position:relative;overflow:hidden}.ax-hero h2{letter-spacing:-.04em;margin:.3rem 0 .35rem;font-size:clamp(1.35rem,4.2cqi,2rem);font-weight:850;line-height:1.12}.ax-hero p{max-width:44rem;font-size:.92rem}@container (width>=760px){.ax-welcome{grid-template-columns:minmax(0,1fr) auto;align-items:center}.ax-course-hero{grid-template-columns:minmax(0,1fr) auto;align-items:end}}.ax-quick-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem;display:grid}.ax-quick-stat{border:1px solid var(--line);border-radius:var(--ax-radius-sm);min-width:6.4rem;color:var(--ink);background:var(--surface);transition:border-color .18s, transform .18s var(--ax-ease);justify-items:start;gap:.1rem;padding:.75rem .85rem;text-decoration:none;display:grid}.ax-quick-stat svg{color:var(--muted)}.ax-quick-stat strong{letter-spacing:-.04em;font-size:1.45rem;font-weight:850;line-height:1.1}.ax-quick-stat span{color:var(--muted);font-size:.72rem;font-weight:700}.ax-quick-stat:hover{border-color:var(--ink);transform:translateY(-1px)}.ax-quick-stat.is-danger{border-color:color-mix(in srgb, var(--red) 45%, var(--line))}.ax-quick-stat.is-danger :is(svg,strong){color:var(--red-dark)}.ax-quick-stat.is-accent{color:#fff;border-color:var(--red);background:var(--red)}.ax-quick-stat.is-accent :is(svg,span){color:#fff}.ax-hero-stats{gap:1.4rem;margin:0;display:flex}.ax-hero-stats div{gap:.1rem;display:grid}.ax-hero-stats dt{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.7rem;font-weight:800}.ax-hero-stats dd{letter-spacing:-.03em;margin:0;font-size:1.35rem;font-weight:850}.ax-hero-stats dd.is-danger{color:var(--red-dark)}.ax-hero-progress,.ax-bar,.ax-week-bar{background:var(--ax-gray-2);border-radius:99px;height:6px;display:block;overflow:hidden}.ax-hero-progress{grid-column:1/-1}.ax-hero-progress span,.ax-bar span,.ax-week-bar span{border-radius:inherit;background:var(--red);height:100%;transition:width .5s var(--ax-ease);display:block}.ax-chip{width:fit-content;min-height:1.45rem;color:var(--ink);background:var(--ax-gray-2);white-space:nowrap;border-radius:99px;align-items:center;gap:.25rem;padding:.1rem .55rem;font-size:.7rem;font-weight:800;display:inline-flex}.ax-chip-accent{color:#fff;background:var(--red)}.ax-chip-danger{color:var(--red-dark);background:var(--red-soft)}.ax-count{color:#fff;background:var(--red);border-radius:99px;place-items:center;min-width:1.25rem;height:1.25rem;margin-left:.35rem;padding:0 .3rem;font-size:.68rem;display:inline-grid}.ax-page .status-badge{border-radius:99px}.ax-activity-list{gap:.45rem;min-width:0;display:grid}.ax-activity-row{border:1px solid var(--line);border-radius:var(--ax-radius-sm);min-height:4rem;color:var(--ink);background:var(--surface);transition:border-color .18s, box-shadow .18s, transform .18s var(--ax-ease);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.8rem;padding:.7rem .85rem;text-decoration:none;display:grid}a.ax-activity-row:hover{border-color:color-mix(in srgb, var(--ink) 35%, var(--line));box-shadow:var(--ax-elev-2);transform:translateY(-1px)}a.ax-activity-row:active{transform:translateY(0)}.ax-activity-row.is-next{border-color:color-mix(in srgb, var(--red) 55%, var(--line));box-shadow:0 0 0 3px color-mix(in srgb, var(--red) 10%, transparent)}.ax-activity-row.is-done .ax-row-main strong{color:var(--muted)}.ax-activity-row.is-locked{opacity:.6}.ax-row-main{gap:.18rem;min-width:0;display:grid}.ax-row-main strong{text-overflow:ellipsis;-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;font-size:.93rem;font-weight:750;line-height:1.3;display:-webkit-box;overflow:hidden}.ax-row-meta{min-width:0;color:var(--muted);flex-wrap:wrap;align-items:center;gap:.1rem .35rem;font-size:.76rem;font-weight:600;display:flex}.ax-row-context{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.ax-row-side{color:var(--muted);text-align:right;justify-items:end;gap:.25rem;font-size:.76rem;font-weight:650;display:grid}.ax-row-side .homework-time-left{color:var(--ink);font-weight:750}.ax-row-side .homework-time-left.is-overdue{color:var(--red-dark)}.ax-row-done{color:var(--ax-good)}.ax-row-locked{align-items:center;gap:.3rem;display:inline-flex}.ax-row-chevron{color:var(--muted);display:none}@container (width>=520px){.ax-activity-row{grid-template-columns:auto minmax(0,1fr) auto auto}.ax-row-chevron{display:block}}@container (width<=380px){.ax-activity-row{grid-template-columns:auto minmax(0,1fr)}.ax-row-side{text-align:left;grid-column:2;grid-auto-flow:column;justify-content:start;place-items:center start;gap:.5rem}}.ax-activity-icon{width:2.4rem;height:2.4rem;color:var(--ink);background:var(--ax-gray-2);border-radius:12px;flex:none;place-items:center;display:grid}.ax-type-listening{color:#fff;background:var(--red)}.ax-type-reading{color:var(--surface);background:var(--ink)}.ax-type-speaking{color:var(--red-dark);background:var(--red-soft)}.ax-type-writing{color:var(--ink);background:var(--ax-gray-2)}.ax-type-vocabulary{color:var(--red-dark);background:color-mix(in srgb, var(--red) 12%, var(--surface))}.ax-course-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,19rem),1fr));gap:.75rem;display:grid}.ax-course-card{border:1px solid var(--line);border-radius:var(--ax-radius);color:var(--ink);background:var(--surface);box-shadow:var(--ax-elev-1);transition:border-color .18s, box-shadow .2s, transform .2s var(--ax-ease);grid-template-columns:auto minmax(0,1fr);gap:.5rem .9rem;padding:1.05rem 2.6rem 1.05rem 1.05rem;text-decoration:none;display:grid;position:relative}.ax-course-card:hover{border-color:color-mix(in srgb, var(--ink) 35%, var(--line));box-shadow:var(--ax-elev-2);transform:translateY(-2px)}.ax-course-mark{width:2.75rem;height:2.75rem;color:var(--surface);background:var(--ink);border-radius:13px;place-items:center;display:grid}.ax-page .ax-tabs a,.ax-page .ax-filter a{color:var(--ink)}.ax-page .ax-tabs a[aria-current=page],.ax-page .ax-filter a[aria-current=page]{color:#fff}.ax-course-card:hover .ax-course-mark{background:var(--red)}.ax-course-copy{gap:.1rem;min-width:0;display:grid}.ax-course-copy small{color:var(--muted);font-size:.72rem;font-weight:750}.ax-course-copy strong{letter-spacing:-.02em;overflow-wrap:anywhere;font-size:1.02rem;font-weight:800}.ax-course-copy span{color:var(--muted);font-size:.8rem}.ax-course-progress{grid-column:1/-1;gap:.35rem;display:grid}.ax-course-progress small{color:var(--muted);font-size:.74rem;font-weight:650}.ax-course-arrow{color:var(--muted);transition:transform .2s var(--ax-ease), color .2s;position:absolute;top:1.15rem;right:1rem}.ax-course-card:hover .ax-course-arrow{color:var(--red-dark);transform:translate(3px)}.ax-weeks{gap:.65rem;display:grid}.ax-week{border:1px solid var(--line);border-radius:var(--ax-radius);background:var(--surface);box-shadow:var(--ax-elev-1);overflow:hidden}.ax-week>summary,.ax-lesson>summary,.ax-lesson-result>summary,.ax-faq summary{cursor:pointer;-webkit-tap-highlight-color:transparent;list-style:none}.ax-week>summary::-webkit-details-marker{display:none}.ax-lesson>summary::-webkit-details-marker{display:none}.ax-lesson-result>summary::-webkit-details-marker{display:none}.ax-faq summary::-webkit-details-marker{display:none}.ax-week-summary{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.3rem .85rem;min-height:4.25rem;padding:.85rem 1rem;display:grid}.ax-week-index{width:2.2rem;height:2.2rem;color:var(--surface);background:var(--ink);border-radius:10px;place-items:center;font-size:.85rem;font-weight:850;display:grid}.ax-week[open] .ax-week-index{background:var(--red);color:#fff}.ax-week-title{gap:.1rem;min-width:0;display:grid}.ax-week-title strong{overflow-wrap:anywhere;font-size:.98rem;font-weight:800}.ax-week-title small{color:var(--muted);font-size:.75rem;font-weight:650}.ax-week-bar{grid-area:2/2/auto/3;height:4px}.ax-chevron{color:var(--muted);transition:transform .25s var(--ax-ease)}details[open]>summary>.ax-chevron{transform:rotate(180deg)}.ax-week-body{animation:ax-reveal .28s var(--ax-ease);gap:.5rem;padding:0 .75rem .8rem;display:grid}.ax-lesson{border:1px solid var(--line);border-radius:var(--ax-radius-sm);background:var(--ax-gray-1)}.ax-lesson[open]{background:var(--surface)}.ax-lesson-summary{align-items:center;gap:.75rem;min-height:3.5rem;padding:.6rem .8rem;display:flex}.ax-lesson-title{flex-wrap:wrap;flex:1;align-items:baseline;gap:.15rem .5rem;min-width:0;display:flex}.ax-lesson-title strong{overflow-wrap:anywhere;font-size:.92rem;font-weight:750}.ax-lesson-title small{color:var(--muted);font-size:.74rem;font-weight:600}.ax-lesson-number{color:var(--muted);background:var(--ax-gray-2);border-radius:6px;padding:.05rem .4rem;font-size:.68rem;font-weight:850}.ax-lesson-body{animation:ax-reveal .25s var(--ax-ease);padding:0 .6rem .7rem}.ax-ring{--ax-ring:0deg;background:conic-gradient(var(--red) var(--ax-ring), var(--ax-gray-2) 0);width:2.3rem;height:2.3rem;color:var(--ink);border-radius:999px;flex:none;place-items:center;font-size:.6rem;font-weight:850;display:grid;position:relative}.ax-ring:before{border-radius:inherit;background:var(--surface);content:"";position:absolute;inset:4px}.ax-ring>*{position:relative}.ax-ring svg{color:var(--ax-good)}@keyframes ax-reveal{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.ax-tabs,.ax-filter{scrollbar-width:none;gap:.35rem;display:flex;overflow-x:auto}.ax-tabs a,.ax-filter a{border:1px solid var(--line);min-height:2.5rem;color:var(--ink);background:var(--surface);border-radius:99px;flex:none;align-items:center;padding:.4rem 1rem;font-size:.85rem;font-weight:750;text-decoration:none;display:inline-flex}.ax-tabs a[aria-current=page],.ax-filter a[aria-current=page]{border-color:var(--red);color:#fff;background:var(--red);box-shadow:0 6px 14px -8px color-mix(in srgb, var(--red) 80%, transparent)}.ax-tabs a:not([aria-current=page]):hover,.ax-filter a:not([aria-current=page]):hover{border-color:var(--line-strong);background:var(--surface-muted)}.ax-filter a{min-height:2.25rem;padding:.3rem .8rem;font-size:.78rem}.ax-pager{color:var(--muted);grid-template-columns:1fr auto 1fr;align-items:center;gap:.75rem;font-size:.82rem;display:grid}.ax-pager a:hover{border-color:var(--line-strong);background:var(--surface-muted)}.ax-pager a{border:1px solid var(--line);width:fit-content;min-height:2.5rem;color:var(--ink);background:var(--surface);border-radius:99px;padding:.5rem .9rem;font-weight:750;text-decoration:none}.ax-pager a:last-child{justify-self:end}.ax-page .ax-segmented{background:var(--ax-gray-2);border-radius:12px;flex-wrap:wrap;gap:2px;width:fit-content;max-width:100%;padding:3px;display:inline-flex}.ax-page .ax-segmented button{min-height:2.35rem;color:var(--muted);box-shadow:none;background:0 0;border:0;border-radius:9px;padding:.35rem .85rem;font-size:.82rem;font-weight:750;transition:background-color .18s,color .18s}.ax-page .ax-segmented button:hover{color:var(--ink)}.ax-page .ax-segmented button:is([aria-selected=true],[aria-pressed=true],[aria-checked=true]){color:var(--ink);background:var(--surface);box-shadow:var(--ax-elev-1)}.ax-page .ax-segmented-small button{min-height:2.1rem;padding:.25rem .65rem;font-size:.76rem}.ax-page .ax-button{border:1px solid var(--red);color:#fff;background:var(--red);min-height:2.75rem;transition:background-color .18s, transform .15s var(--ax-ease), box-shadow .18s;border-radius:12px;justify-content:center;align-items:center;gap:.45rem;padding:.55rem 1.1rem;font-size:.88rem;font-weight:800;text-decoration:none;display:inline-flex}.ax-page .ax-button:hover:not(:disabled){border-color:var(--red-hover);background:var(--red-hover);box-shadow:0 8px 18px -8px color-mix(in srgb, var(--red) 70%, transparent)}.ax-page .ax-button:active:not(:disabled){transform:scale(.98)}.ax-page .ax-button:disabled{cursor:not-allowed;opacity:.45}.ax-page .ax-button-ghost{border-color:var(--line-strong);color:var(--ink);background:var(--surface)}.ax-page .ax-button-ghost:hover:not(:disabled){border-color:var(--line-strong);background:var(--surface-muted);box-shadow:none}.ax-page .ax-button-small{min-height:2.35rem;padding:.3rem .75rem;font-size:.78rem}.ax-page .ax-more{justify-self:center;margin-top:.6rem}.ax-page :is(button,a):focus-visible{outline:3px solid color-mix(in srgb, var(--red) 70%, transparent);outline-offset:2px}.ax-tiles{grid-template-columns:repeat(auto-fit,minmax(min(100%,10.5rem),1fr));gap:.6rem;display:grid}.ax-tile{border:1px solid var(--line);border-radius:var(--ax-radius-sm);background:var(--surface);min-width:0;box-shadow:var(--ax-elev-1);align-content:start;gap:.15rem;padding:.95rem 1rem;display:grid}.ax-tile>svg{color:var(--red-dark);margin-bottom:.2rem}.ax-tile>span{color:var(--muted);font-size:.74rem;font-weight:750}.ax-tile strong{letter-spacing:-.04em;overflow-wrap:anywhere;font-size:clamp(1.3rem,4cqi,1.75rem);font-weight:850;line-height:1.15}.ax-tile small{color:var(--muted);font-size:.74rem;line-height:1.4}.ax-score{font-variant-numeric:tabular-nums;flex:none;justify-items:end;gap:0;min-width:4.4rem;display:grid}.ax-score strong{letter-spacing:-.03em;font-size:1.1rem;font-weight:850}.ax-score small{color:var(--muted);font-size:.72rem;font-weight:650}.ax-score.is-good strong{color:var(--ax-good)}.ax-score.is-mid strong{color:var(--ax-mid)}.ax-score.is-low strong{color:var(--ax-low)}.ax-score.is-pending{color:var(--muted);font-size:.78rem;font-weight:750}.ax-result-row{border-top:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.75rem;padding:.7rem .2rem;display:grid}.ax-result-row:first-child{border-top:0}.ax-feedback{border-left:3px solid var(--red);color:var(--ink);background:var(--ax-gray-1);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:0 8px 8px 0;margin-top:.35rem;padding:.55rem .7rem;font-size:.84rem}.ax-lesson-result{border:1px solid var(--line);border-radius:var(--ax-radius-sm);background:var(--surface);box-shadow:var(--ax-elev-1);overflow:hidden}.ax-lesson-result>summary{align-items:center;gap:.8rem;min-height:4rem;padding:.8rem 1rem;display:flex}.ax-lesson-result>summary .ax-row-main{flex:1}.ax-lesson-result-body{animation:ax-reveal .25s var(--ax-ease);padding:0 1rem .7rem}.ax-compare{color:var(--muted);background:var(--ax-gray-1);border-radius:9px;flex-wrap:wrap;align-items:center;gap:.4rem;margin:.1rem 0 .4rem;padding:.5rem .7rem;font-size:.78rem;display:flex}.ax-compare strong{color:var(--ink);margin-left:auto}.ax-chart-card{gap:.8rem;display:grid}.ax-chart-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.ax-chart-head h2{font-size:1.1rem;font-weight:800}.ax-chart-head p{font-size:.8rem}.ax-toggle{width:fit-content;color:var(--ink);cursor:pointer;align-items:center;gap:.5rem;font-size:.82rem;font-weight:650;display:inline-flex}.ax-toggle input{width:1.1rem;min-height:1.1rem;accent-color:var(--red)}.ax-chart{gap:.5rem;min-width:0;display:grid}.ax-chart-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;display:flex}.ax-chart-zoom{gap:.3rem;display:inline-flex}.ax-page .ax-chart-zoom button{border:1px solid var(--line);width:2.35rem;min-height:2.35rem;color:var(--ink);background:var(--surface);box-shadow:none;border-radius:10px;place-items:center;padding:0;display:grid}.ax-page .ax-chart-zoom button:hover{border-color:var(--ink)}.ax-chart-plot{cursor:grab;touch-action:pan-y;-webkit-user-select:none;user-select:none;border-radius:12px;outline:none;min-width:0;position:relative;overflow:hidden}.ax-chart-plot:active{cursor:grabbing}.ax-chart-plot:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, var(--red) 40%, transparent)}.ax-chart-plot svg{display:block;overflow:visible}.ax-grid{stroke:var(--line);stroke-width:1px}.ax-axis{fill:var(--muted);font-size:11px;font-weight:600}.ax-cursor{stroke:var(--ink);stroke-dasharray:3 3;opacity:.55}.ax-tooltip{border:1px solid var(--line);min-width:10rem;color:var(--ink);background:color-mix(in srgb, var(--surface) 94%, transparent);box-shadow:var(--ax-elev-2);pointer-events:none;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:10px;gap:.15rem;padding:.55rem .7rem;font-size:.76rem;display:grid;position:absolute;top:.4rem;transform:translate(-50%)}.ax-tooltip strong{font-size:.76rem}.ax-tooltip span,.ax-chart-legend span{align-items:center;gap:.4rem;display:flex}.ax-tooltip i,.ax-chart-legend i{border-radius:3px;flex:none;width:.7rem;height:.7rem;display:inline-block}.ax-chart-legend{color:var(--muted);flex-wrap:wrap;gap:.4rem 1rem;font-size:.78rem;font-weight:650;display:flex}.ax-chart-legend strong{color:var(--ink)}.ax-chart-legend i.is-dashed{color:var(--ax-chart-2);background:repeating-linear-gradient(90deg,currentColor 0 4px,#0000 4px 7px)!important}.ax-chart-empty{color:var(--muted);text-align:center;padding:2.5rem 1rem}.ax-leaderboard{gap:.6rem;display:grid}.ax-board-list{gap:.3rem;margin:0;padding:0;list-style:none;display:grid}.ax-board-list li{border-radius:12px;grid-template-columns:2rem auto minmax(0,1fr) auto;align-items:center;gap:.65rem;min-height:3.4rem;padding:.4rem .6rem;display:grid}.ax-board-list li:nth-child(odd){background:var(--ax-gray-1)}.ax-board-list li.is-self{background:var(--red-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--red) 35%, transparent)}.ax-board-list li.is-detached{margin-top:.6rem}.ax-board-rank{width:2rem;height:2rem;color:var(--muted);border-radius:99px;place-items:center;font-size:.82rem;font-weight:850;display:grid}.ax-board-rank.rank-1{color:#fff;background:var(--red)}.ax-board-rank.rank-2,.ax-board-rank.rank-3{color:var(--surface);background:var(--ink)}.ax-board-name{gap:.3rem;min-width:0;display:grid}.ax-board-name strong{text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;overflow:hidden}.ax-board-bar{background:var(--ax-gray-2);border-radius:99px;height:4px;display:block;overflow:hidden}.ax-board-bar span{border-radius:inherit;background:var(--ink);height:100%;transition:width .6s var(--ax-ease);display:block}.ax-board-list li.is-self .ax-board-bar span{background:var(--red)}.ax-board-points{font-variant-numeric:tabular-nums;justify-items:end;display:grid}.ax-board-points strong{font-size:1rem;font-weight:850}.ax-board-points small{color:var(--muted);white-space:nowrap;align-items:center;gap:.2rem;font-size:.7rem;font-weight:650;display:inline-flex}.ax-avatar{border-radius:999px;flex:none;display:block}.ax-identity{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.4rem 1rem;display:grid}.ax-identity h2{letter-spacing:-.03em;overflow-wrap:anywhere;font-size:clamp(1.15rem,3.4cqi,1.45rem);font-weight:850}.ax-identity-note{color:var(--muted);grid-column:1/-1;align-items:center;gap:.4rem;font-size:.78rem;display:flex}.ax-avatar-editor{gap:1.25rem;display:grid}@container (width>=720px){.ax-avatar-editor{grid-template-columns:15rem minmax(0,1fr);align-items:start}.ax-avatar-preview{position:sticky;top:6.5rem}}.ax-avatar-preview{border-radius:var(--ax-radius-sm);background:var(--ax-gray-1);justify-items:center;gap:.8rem;padding:1rem;display:grid}.ax-avatar-preview .ax-avatar{box-shadow:var(--ax-elev-2);animation:ax-pop .35s var(--ax-ease)}.ax-avatar-actions{flex-wrap:wrap;justify-content:center;gap:.4rem;display:flex}.ax-avatar-controls{gap:.85rem;min-width:0;display:grid}.ax-avatar-controls h2{font-size:1.1rem;font-weight:800}.ax-part-grid{grid-template-columns:repeat(auto-fill,minmax(4.6rem,1fr));gap:.45rem;display:grid}.ax-page .ax-part-option{border:1px solid var(--line);min-height:5.6rem;color:var(--ink);background:var(--surface);box-shadow:none;transition:border-color .15s, transform .15s var(--ax-ease);border-radius:12px;justify-items:center;gap:.3rem;padding:.45rem .25rem;font-size:.7rem;font-weight:700;display:grid}.ax-page .ax-part-option:hover{border-color:var(--ink);transform:translateY(-1px)}.ax-page .ax-part-option[aria-checked=true]{border-color:var(--red);box-shadow:0 0 0 2px color-mix(in srgb, var(--red) 25%, transparent)}.ax-swatches{gap:.35rem;display:grid}.ax-swatches>span{color:var(--muted);font-size:.76rem;font-weight:750}.ax-swatches>div{flex-wrap:wrap;gap:.4rem;display:flex}.ax-page .ax-swatches button{border:2px solid var(--surface);width:2.25rem;min-height:2.25rem;box-shadow:0 0 0 1px var(--line);transition:transform .15s var(--ax-ease), box-shadow .15s;border-radius:999px;padding:0}.ax-page .ax-swatches button:hover{transform:scale(1.08)}.ax-page .ax-swatches button[aria-checked=true]{box-shadow:0 0 0 2px var(--ink)}@keyframes ax-pop{0%{transform:scale(.94)}to{transform:none}}.ax-inbox{gap:.5rem;display:grid}.ax-inbox-list{margin:0;padding:0;list-style:none;display:grid}.ax-inbox-list li{border-top:1px solid var(--line);grid-template-columns:.6rem minmax(0,1fr) auto;align-items:start;gap:.7rem;padding:.9rem .1rem;display:grid}.ax-inbox-list li:first-child{border-top:0}.ax-inbox-dot{background:0 0;border-radius:99px;width:.55rem;height:.55rem;margin-top:.45rem}.ax-inbox-list li.is-unread .ax-inbox-dot{background:var(--red)}.ax-inbox-list li.is-read .ax-inbox-copy{opacity:.72}.ax-inbox-copy{gap:.3rem;min-width:0;display:grid}.ax-inbox-heading{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.2rem .8rem;display:flex}.ax-inbox-heading h3{overflow-wrap:anywhere;font-size:.94rem;font-weight:800}.ax-inbox-heading time{color:var(--muted);font-size:.72rem;font-weight:650}.ax-inbox-copy>p{color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;font-size:.87rem}@container (width<=420px){.ax-inbox-list li{grid-template-columns:.6rem minmax(0,1fr)}.ax-inbox-list li>button{grid-column:2;justify-self:start}}.ax-help-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.ax-help-head h2,.ax-help-contact h2{letter-spacing:-.02em;font-size:1.2rem;font-weight:850}.ax-faq{padding-block:.3rem;display:grid}.ax-faq details{border-top:1px solid var(--line)}.ax-faq details:first-child{border-top:0}.ax-faq summary{min-height:3.4rem;color:var(--ink);justify-content:space-between;align-items:center;gap:1rem;padding:.7rem .2rem;font-size:.95rem;font-weight:750;display:flex}.ax-faq details>div{color:var(--ax-ink-2);animation:ax-reveal .25s var(--ax-ease);padding:0 .2rem 1rem;font-size:.9rem;line-height:1.65}.ax-faq a{color:var(--red-dark);font-weight:750}.ax-help-contact{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.portal-frame .assignment-detail{gap:.75rem}.portal-frame .assignment-hero{border-radius:var(--ax-radius);background:var(--surface);box-shadow:var(--ax-elev-1);align-items:center;padding:.9rem 1.1rem}.portal-frame .assignment-hero h2{letter-spacing:-.025em;margin:.25rem 0 .1rem;font-size:clamp(1.05rem,2.6vw,1.4rem);font-weight:850}.portal-frame .assignment-hero p{font-size:.8rem}:is(.portal-frame .attempt-workspace,.portal-frame .canonical-runtime-controls:not(:has(.actions))){border-color:var(--line);border-radius:var(--ax-radius);box-shadow:var(--ax-elev-1)}@media (prefers-reduced-motion:reduce){.ax-page *,.ax-page :before,.portal-frame .portal-nav-link{transition:none!important;animation:none!important}}
