:root{--bg:#f7f4ef;--bg-elevated:#ffffff;--ink:#1f1c18;--muted:#6b6358;--accent:#c9a227;--accent-soft:#f7edd0;--warn:#b8921a;--border:#e2d9cc;--radius:12px;--radius-chip:8px;--font-display:"Source Sans 3","Segoe UI",sans-serif;--font-body:"Source Sans 3","Segoe UI",sans-serif;--shadow-soft:0 1px 2px color-mix(in srgb,var(--ink) 6%,transparent)}*{box-sizing:border-box}body,html{margin:0;min-height:100%;background:radial-gradient(1100px 520px at 8% -12%,#f5efe4 0,transparent 55%),radial-gradient(900px 480px at 100% 0,#efe8dc 0,transparent 50%),var(--bg);color:var(--ink);font-family:var(--font-body)}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.shell{width:min(920px,calc(100% - 2rem));margin:0 auto;padding:.85rem 0 4rem}.shell.shell--wide{width:min(1280px,calc(100% - 2rem))}.brand{font-family:var(--font-display);font-size:clamp(2rem,5vw,3.2rem);font-weight:650;letter-spacing:-.03em;margin:0 0 .35rem}.lede{color:var(--muted);max-width:38rem;line-height:1.5;margin:0 0 2rem}.about-stage-figure{margin:0 0 1.75rem;border-radius:calc(var(--radius) + 2px);overflow:hidden;border:1px solid color-mix(in srgb,var(--border) 85%,var(--accent));box-shadow:var(--shadow-soft);background:color-mix(in srgb,var(--accent-soft) 40%,var(--bg-elevated))}.about-stage-image{display:block;width:100%;height:auto;max-height:min(22rem,48vh);object-fit:cover;object-position:center}.panel{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-soft);padding:1.25rem 1.35rem;margin-bottom:1rem}.panel h2{font-family:var(--font-display);font-size:1.25rem;margin:0 0 .75rem}.row{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;border-radius:var(--radius-chip);padding:.65rem 1.15rem;background:var(--accent);color:#ffffff;font-weight:650;cursor:pointer}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:focus-visible{outline:3px solid var(--warn);outline-offset:3px}.btn.secondary{background:transparent;color:var(--ink);border:1px solid var(--border)}.sentence{font-family:var(--font-display);font-size:clamp(1.1rem,2.5vw,1.45rem);line-height:1.45;margin:.5rem 0 .75rem;overflow-wrap:anywhere;white-space:pre-wrap}.muted{color:var(--muted)}.flashcard-panel{min-height:16rem;max-width:100%}.flashcard{max-width:min(46rem,100%);min-width:0;position:relative;width:100%}.demo-help-btn{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:color-mix(in srgb,var(--panel) 88%,var(--ink));border:1px solid var(--border);border-radius:999px;color:var(--muted);cursor:pointer;display:inline-flex;flex-shrink:0;font:inherit;font-size:.95rem;font-weight:700;height:2rem;justify-content:center;line-height:1;margin-left:auto;min-width:2rem;padding:0;z-index:2}.demo-help-btn:focus-visible{outline:3px solid var(--warn);outline-offset:3px}.demo-guest-cta-body{display:grid;grid-gap:.75rem;gap:.75rem;margin:0}.demo-guest-cta-body p{margin:0}.flashcard-text-speech{align-items:flex-start;flex-wrap:nowrap;width:100%;max-width:100%}.flashcard-text-block{flex:1 1 auto;min-width:0;max-width:100%}.language-label{color:var(--muted);font-size:.85rem;font-weight:650;letter-spacing:.06em;margin:0;text-transform:uppercase}.translation{border-top:1px solid var(--border);margin:1.25rem 0;padding-top:1.25rem}.translation--hidden{visibility:hidden;opacity:0;pointer-events:none}.translation-text{font-size:clamp(1.1rem,2.5vw,1.45rem);line-height:1.45;margin:.4rem 0 0;overflow-wrap:anywhere;white-space:pre-wrap}.assessment-actions{margin-top:1.25rem;width:100%;max-width:min(26rem,100%)}.assessment-actions__pair{display:grid;grid-template-columns:1fr 1fr;grid-gap:.75rem;gap:.75rem;align-items:stretch;width:100%}.assessment-actions__pair .btn{width:100%;min-height:2.75rem;box-sizing:border-box}.assessment-actions--single{display:grid;grid-template-columns:1fr 1fr;grid-gap:.75rem;gap:.75rem;width:100%}.assessment-actions--single>.btn{width:100%;min-height:2.75rem;box-sizing:border-box}.collection-lesson-overlay .demo-guest-cta-actions.assessment-actions--single{display:grid;grid-template-columns:1fr 1fr;grid-gap:.75rem;gap:.75rem;width:100%;align-items:stretch}.collection-lesson-overlay .demo-guest-cta-actions.assessment-actions--single>.btn{width:100%;min-height:2.75rem;box-sizing:border-box}.status{display:grid;grid-gap:1rem;gap:1rem;justify-items:start}.practice-see-lesson-row{margin:.35rem 0 .65rem;text-align:left}.collection-lesson-overlay .collection-lesson-html{height:auto;overflow:visible;margin:0 0 1rem;text-align:left;width:100%;max-width:100%}.collection-description-html img,.collection-lesson-html img{border:none;box-shadow:none;height:auto;max-width:100%;outline:none}.collection-description-html:after,.collection-lesson-html:after{clear:both;content:"";display:table}.collection-description-html figure.pm-img,.collection-lesson-html figure.pm-img{box-sizing:border-box;margin:.5em 0;max-width:100%}.collection-description-html figure.pm-img img,.collection-lesson-html figure.pm-img img{display:block;height:auto;max-width:100%;width:100%}.collection-description-html figure.pm-img figcaption,.collection-lesson-html figure.pm-img figcaption{color:var(--muted,#555);font-size:.875em;line-height:1.35;margin-top:.35em}.collection-description-html figure.pm-img-size-sm,.collection-lesson-html figure.pm-img-size-sm{width:25%}.collection-description-html figure.pm-img-size-md,.collection-lesson-html figure.pm-img-size-md{width:40%}.collection-description-html figure.pm-img-size-lg,.collection-lesson-html figure.pm-img-size-lg{width:60%}.collection-description-html figure.pm-img-size-full,.collection-lesson-html figure.pm-img-size-full{width:100%}.collection-description-html figure.pm-img-place-above,.collection-description-html figure.pm-img-place-below,.collection-lesson-html figure.pm-img-place-above,.collection-lesson-html figure.pm-img-place-below{clear:both;display:block;float:none}.collection-description-html figure.pm-img-place-float-left,.collection-lesson-html figure.pm-img-place-float-left{clear:none;display:block;float:left;margin:.25em 1em .5em 0}.collection-description-html figure.pm-img-place-float-right,.collection-lesson-html figure.pm-img-place-float-right{clear:none;display:block;float:right;margin:.25em 0 .5em 1em}.demo-guest-cta-overlay{display:grid;grid-gap:1rem;gap:1rem;justify-items:stretch;width:100%;max-width:none;padding:0 0 2.75rem;border:none;border-radius:0;background:transparent;position:relative}.panel.collection-practice.collection-practice--cta,.panel.course-practice.demo-practice--cta,.panel.demo-practice.demo-practice--cta{padding:.65rem .75rem}.demo-guest-cta-image{display:block;width:100%;max-height:14rem;aspect-ratio:16/10;object-fit:cover;border-radius:10px}.demo-guest-cta-actions{display:flex;flex-direction:column;align-items:center;gap:.35rem;width:100%}.demo-guest-cta-register{align-items:center;background:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 55%,var(--ink));border-radius:var(--radius-chip);box-shadow:0 6px 18px color-mix(in srgb,var(--ink) 16%,transparent);color:#ffffff;display:inline-flex;font-weight:700;justify-content:center;padding:.65rem 1.15rem;text-decoration:none}.demo-guest-cta-register,.demo-guest-cta-signup-link,.demo-guest-cta-skip{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;min-height:2.75rem}.demo-guest-cta-signup-link,.demo-guest-cta-skip{background:transparent;border:none;bottom:0;color:var(--muted);font:inherit;font-size:.95rem;font-weight:500;margin:0;padding:.2rem 0;position:absolute;right:0;text-decoration:underline;text-underline-offset:.2em}.demo-guest-cta-signup-link:focus-visible,.demo-guest-cta-skip:focus-visible{outline:3px solid var(--warn);outline-offset:3px}.analysis-link,.back-link{color:var(--accent);display:inline-flex;font-weight:650;margin-bottom:1.5rem;text-decoration:underline;text-underline-offset:.2em}.analysis-link:focus-visible,.back-link:focus-visible{outline:3px solid var(--warn);outline-offset:3px}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:20;overflow:visible;isolation:isolate;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--bg-elevated) 88%,transparent)}.site-header:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.site-header-inner{position:relative;width:min(920px,calc(100% - 2rem));margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem;padding:.85rem 0}.site-header-brand{font-family:var(--font-display);font-size:1.1rem;font-weight:700;letter-spacing:-.03em;margin-right:auto}.site-header-brand:focus-visible,.site-header-burger:focus-visible,.site-header-link:focus-visible{outline:3px solid var(--warn);outline-offset:3px}.site-header-burger{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:1px solid var(--border);border-radius:8px;color:var(--ink);cursor:pointer;display:none;align-items:center;justify-content:center;height:2.4rem;width:2.4rem;padding:0}.site-header-burger-icon{display:block;width:1.1rem;height:.12rem;background:currentColor;box-shadow:0 -.35rem 0 currentColor,0 .35rem 0 currentColor}.site-header-menu{gap:.75rem 1.25rem}.site-header-menu,.site-header-nav{display:flex;flex-wrap:wrap;align-items:center}.site-header-nav{gap:.35rem 1rem}.site-header-link{color:var(--muted);font-size:.95rem;font-weight:600}.site-header-link:hover{color:var(--ink)}.site-header-auth{display:flex;align-items:center;gap:.65rem;min-height:2.5rem}.site-header-user-email{color:var(--muted);font-size:.9rem;font-weight:600;max-width:14rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.site-header-auth-placeholder{display:inline-block;width:5.5rem;height:2.4rem}@media (max-width:700px){.site-header-inner{flex-wrap:nowrap}.site-header-burger{display:inline-flex;flex-shrink:0}.site-header-menu{display:none;position:absolute;top:calc(100% - .2rem);right:0;z-index:30;width:min(15.75rem,calc(100vw - 2.5rem));flex-basis:auto;flex-direction:column;align-items:stretch;gap:.55rem;padding:.7rem .8rem .85rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-elevated);box-shadow:0 10px 28px color-mix(in srgb,var(--ink) 16%,transparent),var(--shadow-soft)}.site-header-menu.is-open{display:flex}.site-header-nav{flex-direction:column;align-items:stretch;gap:.15rem}.site-header-link{padding:.45rem .15rem}.site-header-auth{flex-direction:column;align-items:stretch;gap:.55rem}.site-header-user-email{max-width:100%}}.login-form{display:grid;grid-gap:.75rem;gap:.75rem;max-width:28rem}.login-form h2{font-family:var(--font-display);font-size:1.35rem;margin:0}.field-label{color:var(--muted);font-size:.9rem;font-weight:650}.field-input{background:var(--bg-elevated);border:1px solid var(--border);border-radius:10px;color:var(--ink);padding:.65rem .8rem;width:100%}.field-input:focus-visible{outline:3px solid var(--warn);outline-offset:2px}.login-error{border-left:3px solid #c44;color:var(--muted);line-height:1.5;margin:0;padding-left:.8rem}.hub-actions{display:grid;grid-gap:1rem;gap:1rem;grid-template-columns:repeat(2,minmax(0,1fr));margin-top:.5rem}.hub-btn{align-items:center;border-radius:var(--radius);display:flex;font-family:var(--font-display);font-size:clamp(1.15rem,2.5vw,1.45rem);font-weight:650;justify-content:center;min-height:5.5rem;padding:1.25rem 1.5rem;text-align:center;transition:transform .12s ease,border-color .12s ease,background-color .12s ease}.hub-btn:focus-visible{outline:3px solid var(--warn);outline-offset:3px}.hub-btn-repeat{background:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 70%,var(--ink));color:#ffffff}.hub-btn-new-cards{background:var(--bg-elevated);border:1px solid color-mix(in srgb,var(--warn) 45%,var(--border));color:var(--ink)}.hub-btn-demo{background:var(--accent-soft);border:1px solid var(--border);color:var(--ink)}.hub-btn-demo:hover,.hub-btn-new-cards:hover,.hub-btn-repeat:hover{transform:translateY(-1px)}.hub-picker{display:grid;grid-gap:2rem;gap:2rem;margin-top:.5rem;width:100%}.hub-tree{display:grid;grid-gap:.75rem;gap:.75rem;list-style:none;margin:.5rem 0 0;padding:0}.hub-tree-row{align-items:stretch;display:flex;gap:.45rem}.hub-tree-row .hub-tree-favorite{align-self:center;color:var(--accent)}.hub-tree-row .hub-tree-link-practice~.hub-tree-favorite{color:var(--warn)}.hub-tree-toggle,.hub-tree-toggle-spacer{align-items:center;background:transparent;border:0;color:var(--muted);cursor:pointer;display:inline-flex;flex:0 0 1.5rem;font:inherit;justify-content:center;padding:0}.hub-tree-toggle:focus-visible{outline:3px solid var(--warn);outline-offset:2px}.hub-tree-toggle-spacer{cursor:default;visibility:hidden}.hub-tree-link{border-radius:var(--radius);display:grid;flex:1 1 auto;grid-gap:.25rem;gap:.25rem;min-width:0;padding:1rem 1.15rem;text-decoration:none;transition:transform .12s ease,border-color .12s ease,background-color .12s ease}.hub-tree-link:hover{transform:translateY(-1px)}.hub-tree-link:focus-visible{outline:3px solid var(--warn);outline-offset:3px}.hub-tree-link-practice{background:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 70%,var(--ink));color:#ffffff}.hub-tree-link-practice .hub-tree-meta{color:color-mix(in srgb,#ffffff 78%,var(--accent))}.hub-tree-link-demo{background:var(--accent-soft);border:1px solid var(--border);color:var(--ink)}.hub-tree-link-demo:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}.hub-tree-name{font-family:var(--font-display);font-size:clamp(1.05rem,2.2vw,1.3rem);font-weight:650}.hub-tree-meta{color:var(--muted);font-size:.95rem}.hub-section-title{font-family:var(--font-display);font-size:clamp(1.25rem,2.5vw,1.5rem);font-weight:700;margin:0 0 .35rem}.hub-section-lede{color:var(--muted);line-height:1.5;margin:0 0 1rem}.hub-utilities{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem}.hub-utility-link{color:var(--accent);font-weight:650;text-decoration:underline;text-underline-offset:.2em}.hub-utility-link:focus-visible{outline:3px solid var(--warn);outline-offset:3px}.analysis-panel>p:not(.eyebrow):not(.cost-warning):not(.loading-status){line-height:1.5;margin:.5rem 0 1rem}.eyebrow{color:var(--accent);font-size:.85rem;font-weight:700;letter-spacing:.06em;margin:0 0 .35rem;text-transform:uppercase}.cost-warning,.inline-status,.loading-status{border-left:3px solid var(--warn);color:var(--muted);line-height:1.5;margin:1rem 0;padding-left:.8rem}.loading-status{border-left-color:var(--accent)}.analysis-actions{margin-top:1.25rem}.analysis-report{display:grid;grid-gap:1rem;gap:1rem}.analysis-report-heading{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.analysis-report-heading h2,.analysis-section h3{font-family:var(--font-display)}.analysis-report-heading h2{font-size:clamp(1.6rem,4vw,2.2rem);margin:0}.report-status{border:1px solid;border-radius:999px;font-size:.8rem;font-weight:700;letter-spacing:.04em;margin:0;padding:.35rem .7rem;text-transform:uppercase}.report-status.completed{color:var(--accent)}.report-status.partial{color:var(--warn)}.analysis-section{background:color-mix(in srgb,var(--bg) 72%,var(--bg-elevated));border:1px solid var(--border);border-radius:var(--radius);padding:1.1rem}.analysis-section h3{font-size:1.1rem;margin:0 0 1rem}.metric-grid{display:grid;grid-gap:.75rem;gap:.75rem;grid-template-columns:repeat(4,minmax(0,1fr));margin:0}.metric-grid>div{background:var(--bg-elevated);border:1px solid var(--border);border-radius:10px;min-width:0;padding:.8rem}.analysis-context dt,.metric-grid dt{color:var(--muted);font-size:.8rem}.metric-grid dd{font-family:var(--font-display);font-size:1.5rem;margin:.2rem 0 0}.cefr-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.aggregate-list{display:grid;grid-gap:.5rem;gap:.5rem;list-style:none;margin:0;padding:0}.aggregate-list li{align-items:start;border-bottom:1px solid var(--border);display:grid;grid-gap:1rem;gap:1rem;grid-template-columns:minmax(0,1fr) auto;padding:.6rem 0}.aggregate-list li:first-child{padding-top:0}.aggregate-list span,.analysis-context dd{overflow-wrap:anywhere}.aggregate-list strong{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.analysis-note{line-height:1.5;margin:1rem 0 0}.average-length{font-family:var(--font-display);font-size:clamp(2rem,6vw,3rem);margin:0}.average-length span{color:var(--muted);font-family:var(--font-body);font-size:1rem}.analysis-context dl{display:grid;grid-gap:.8rem;gap:.8rem;grid-template-columns:repeat(2,minmax(0,1fr));margin:0}.analysis-context dl>div{min-width:0}.analysis-context dd{margin:.2rem 0 0}.analysis-inline>p:not(.eyebrow):not(.loading-status){line-height:1.5;margin:.5rem 0 1rem}.analysis-modal-root{inset:0;position:fixed;z-index:40}.analysis-modal-backdrop{background:color-mix(in srgb,var(--ink) 28%,transparent);border:0;cursor:pointer;inset:0;margin:0;padding:0;position:absolute}.analysis-modal-dialog{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 12px 40px color-mix(in srgb,var(--ink) 12%,transparent);display:grid;grid-template-rows:auto minmax(0,1fr);inset:1.5rem;margin:auto;max-height:min(92vh,960px);max-width:min(100% - 2rem,920px);overflow:hidden;position:absolute}.analysis-modal-header{align-items:center;border-bottom:1px solid var(--border);display:flex;gap:1rem;justify-content:space-between;padding:1rem 1.25rem}.analysis-modal-header h2{font-family:var(--font-display);font-size:1.35rem;margin:0}.analysis-modal-close{background:transparent;border:1px solid var(--border);border-radius:var(--radius-chip);color:var(--ink);cursor:pointer;font:inherit;font-weight:650;padding:.45rem .9rem}.analysis-modal-close:focus-visible{outline:3px solid var(--warn);outline-offset:3px}.analysis-modal-body{overflow:auto;padding:1rem 1.25rem 1.25rem}.analysis-modal-body .analysis-panel-root>:first-child{margin-top:0}.new-cards-flow{display:grid;grid-gap:.5rem;gap:.5rem}.new-cards-state{min-height:12rem}.new-cards-warning-copy{border-left:3px solid var(--warn);line-height:1.5;margin:.75rem 0 0;padding-left:.8rem}.new-cards-partial-warning{border-color:color-mix(in srgb,var(--warn) 55%,transparent)}.new-cards-error{border-color:color-mix(in srgb,#c44 45%,transparent)}.new-cards-practice{min-height:16rem}.new-cards-progress{margin-bottom:.75rem}.new-cards-practice-header{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem 1.25rem;justify-content:space-between;margin-bottom:.75rem}.voice-only-switch{align-items:center;cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:650;gap:.55rem;-webkit-user-select:none;-moz-user-select:none;user-select:none}.voice-only-switch input{accent-color:var(--accent);height:1.1rem;width:1.1rem}.voice-only-switch:focus-within{outline:3px solid var(--warn);outline-offset:3px}.speech-controls{display:flex;flex-wrap:wrap;flex-direction:row;align-items:center;justify-content:flex-start;flex:0 0 auto;gap:.55rem .75rem;margin-top:.15rem;-webkit-margin-start:0;margin-inline-start:0}.speech-replay-btn{min-width:6.5rem}.speech-playing-indicator{color:var(--muted);font-size:.95rem;margin:0}.speech-show-text-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;height:2.25rem;min-height:2.25rem;padding:0 .7rem;border:1px solid color-mix(in srgb,var(--border) 70%,var(--accent));border-radius:var(--radius-chip);background:var(--bg-elevated);color:var(--ink);font-weight:650;font-size:.9rem;cursor:pointer}.speech-show-text-btn:focus-visible{outline:3px solid var(--warn);outline-offset:3px}.speech-error{margin:0}.speech-error-below-text{display:block;margin-top:.55rem;width:100%}.sentence-voice-only-spacer,.translation-voice-only-spacer{min-height:1.5rem}.home-page{width:100%;margin:0;padding:0 0 4.5rem}.home-hero{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:flex-start;min-height:min(50vh,28rem);max-height:min(56vh,32rem);padding:1.25rem clamp(1rem,4vw,2.5rem) 1.75rem;overflow:hidden;color:var(--ink);background:#c8d6e4}.home-hero-atmosphere{position:absolute;inset:0;z-index:0;pointer-events:none}.home-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 45%}.home-hero-scrim{position:absolute;inset:0;background:linear-gradient(105deg,rgba(255,248,239,.28),rgba(255,248,239,.14) 42%,rgba(255,248,239,.06) 70%,rgba(255,248,239,.02)),linear-gradient(180deg,rgba(255,248,239,.22),rgba(255,248,239,.04) 55%,transparent)}.home-toolbar{position:relative;z-index:1;display:flex;justify-content:flex-end}.home-hero-copy{position:relative;z-index:1;width:min(48rem,100%);margin-top:0;padding-top:clamp(.35rem,1.5vh,.85rem);padding-bottom:1rem}.home-brand{font-family:var(--font-display);font-size:clamp(2.6rem,7vw,4.25rem);font-weight:700;letter-spacing:-.045em;line-height:1.02;margin:0 0 .9rem;max-width:none;text-shadow:0 1px 2px rgba(255,248,239,.55)}.home-supporting{color:var(--muted);font-size:1.05rem;line-height:1.55;margin:0 0 1.75rem;max-width:30rem;text-shadow:0 1px 2px rgba(255,248,239,.45)}.home-hero .home-cta{box-shadow:0 10px 28px rgba(28,22,16,.28)}.home-cta-row{display:flex;flex-wrap:wrap;gap:.75rem}.home-cta{min-width:8.5rem;text-align:center}.home-hero-orb{position:absolute;border-radius:50%;filter:blur(28px);opacity:.9;animation:home-orb-drift 14s ease-in-out infinite}.home-hero-orb-a{width:min(48vw,28rem);height:min(48vw,28rem);top:6%;right:8%;background:color-mix(in srgb,var(--accent) 16%,transparent)}.home-hero-orb-b{width:min(36vw,20rem);height:min(36vw,20rem);left:4%;bottom:18%;background:color-mix(in srgb,#c4a574 20%,transparent);animation-delay:-5s}.home-voice-bars{position:absolute;right:clamp(1.5rem,8vw,6rem);bottom:clamp(2rem,8vh,4.5rem);display:flex;align-items:flex-end;justify-content:center;gap:.55rem;height:min(14vh,7rem);opacity:.92;filter:drop-shadow(0 1px 3px rgba(0,0,0,.45))}.home-voice-bars span{display:block;width:.4rem;height:100%;border-radius:999px;background:#fff8ef;transform-origin:bottom center;animation:home-voice-travel 1.4s linear infinite}.home-voice-bars span:first-child{animation-delay:0s}.home-voice-bars span:nth-child(2){animation-delay:-.2s}.home-voice-bars span:nth-child(3){animation-delay:-.4s}.home-voice-bars span:nth-child(4){animation-delay:-.6s}.home-voice-bars span:nth-child(5){animation-delay:-.8s}.home-voice-bars span:nth-child(6){animation-delay:-1s}.home-voice-bars span:nth-child(7){animation-delay:-1.2s}@keyframes home-orb-drift{0%,to{transform:translateZ(0) scale(1)}50%{transform:translate3d(2.5%,-3%,0) scale(1.05)}}@keyframes home-voice-travel{0%{transform:scaleY(.22);opacity:.72}12.5%{transform:scaleY(.55);opacity:.86}25%{transform:scaleY(1);opacity:1}37.5%{transform:scaleY(.55);opacity:.86}50%{transform:scaleY(.22);opacity:.72}62.5%{transform:scaleY(.4);opacity:.8}75%{transform:scaleY(.78);opacity:.94}87.5%{transform:scaleY(.4);opacity:.8}to{transform:scaleY(.22);opacity:.72}}@media (prefers-reduced-motion:reduce){.home-hero-orb,.home-voice-bars span{animation:none}}.home-features{width:min(1120px,calc(100% - 2rem));margin:0 auto;padding:1.25rem 0 2.5rem}.home-features-heading{font-family:var(--font-display);font-size:1.2rem;font-weight:650;letter-spacing:-.02em;margin:0 0 .85rem}.home-features-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:.75rem;gap:.75rem;width:100%}.home-feature{display:flex;flex-direction:column;justify-content:flex-start;gap:.35rem;padding:.9rem .85rem;border:1px solid color-mix(in srgb,var(--border) 90%,var(--accent));border-radius:var(--radius);background:linear-gradient(165deg,color-mix(in srgb,var(--accent-soft) 55%,white) 0,var(--bg-elevated) 70%);box-shadow:var(--shadow-soft);overflow:hidden}.home-feature-icon{flex:0 0 auto;width:1.35rem;height:1.35rem;color:color-mix(in srgb,var(--accent) 75%,var(--ink));margin-bottom:.15rem}.home-feature-title{font-family:var(--font-display);font-size:.95rem;font-weight:650;margin:0;line-height:1.25}.home-feature-body{color:var(--muted);font-size:.82rem;line-height:1.4;margin:0}@media (max-width:960px){.home-features-list{grid-template-columns:repeat(2,minmax(0,1fr))}.home-feature{aspect-ratio:1}}@media (max-width:700px){.home-hero{min-height:min(50svh,22rem);max-height:none}.home-features-list{grid-template-columns:repeat(2,minmax(0,1fr))}.home-voice-bars{opacity:.9;height:5.5rem;bottom:1.5rem}.flashcard-panel.collection-practice,.flashcard-panel.course-practice,.flashcard-panel.demo-practice,.flashcard-panel.new-cards-practice,.flashcard-panel.repeat-practice{max-width:100%;overflow-x:hidden}.collection-lesson-html,.collection-lesson-overlay,.flashcard,.new-cards-practice-header,.practice-mode-bar,.progress-stats-bar{max-width:100%;min-width:0}.flashcard-text-block{min-width:0}.practice-mode-bar__chips,.progress-stats-bar{overflow-wrap:anywhere}}@media (max-width:480px){.home-features-list{grid-template-columns:1fr}.home-feature{aspect-ratio:auto;min-height:7.5rem}.home-hero{padding-top:1.15rem;padding-bottom:2.5rem}.home-cta{min-height:2.75rem}.shell{width:min(100% - 1.25rem,920px);padding-top:.5rem}.shell.shell--wide{width:min(100% - 1.25rem,1280px)}.panel{padding:1.1rem}.assessment-actions--single>.btn,.assessment-actions__pair .btn,.btn,.collection-lesson-overlay .demo-guest-cta-actions.assessment-actions--single>.btn{min-height:2.75rem}.translation{min-height:6.5rem}.translation-voice-only-spacer{min-height:4.5rem}.analysis-actions .btn{flex:1 1 100%}.hub-actions{grid-template-columns:1fr}.hub-btn{min-height:3.25rem}.analysis-modal-dialog{inset:.75rem;max-height:calc(100vh - 1.5rem)}.analysis-report-heading{align-items:start;flex-direction:column}.analysis-context dl,.cefr-grid,.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.progress-stats-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:.15rem;margin-bottom:.75rem;padding:.5rem .75rem;background:color-mix(in srgb,var(--bg-muted) 70%,var(--bg-elevated));border-radius:var(--radius);font-size:.9rem;color:var(--ink)}.practice-mode-bar{background:color-mix(in srgb,var(--accent-soft) 55%,var(--bg-elevated));border:1px solid color-mix(in srgb,var(--border) 80%,var(--accent));border-radius:var(--radius);box-shadow:var(--shadow-soft);margin-bottom:.85rem;padding:.75rem .9rem}.practice-mode-bar--below-panel{margin-top:.85rem;margin-bottom:0}.practice-mode-bar__collapsed{align-items:center;display:flex;flex-wrap:wrap;gap:.65rem .85rem;justify-content:flex-start}.practice-mode-bar__chips{display:flex;flex-wrap:wrap;gap:.4rem;list-style:none;margin:0;padding:0}.practice-mode-chip{background:var(--bg-elevated);display:inline-block;font-size:.8rem;font-weight:600;line-height:1.3;padding:.35rem .65rem}.practice-mode-bar__edit,.practice-mode-chip{border:1px solid var(--border);border-radius:var(--radius-chip);color:var(--ink)}.practice-mode-bar__edit{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;cursor:pointer;font-weight:650;padding:.4rem .85rem}.practice-mode-bar__edit:focus-visible,.practice-mode-confirm__actions .btn:focus-visible,.practice-mode-option:focus-visible,.practice-mode-toggle:focus-within,.replay-icon-btn:focus-visible{outline:3px solid var(--warn);outline-offset:3px}.practice-mode-bar__panel{border-top:1px solid var(--border);display:grid;grid-gap:.85rem;gap:.85rem;margin-top:.75rem;padding-top:.75rem}.practice-mode-fieldset{border:0;margin:0;min-width:0;padding:0}.practice-mode-fieldset legend{color:var(--muted);font-size:.8rem;font-weight:650;margin-bottom:.4rem;padding:0}.practice-mode-fieldset--disabled{opacity:.72}.practice-mode-srs-hint{color:var(--muted);font-size:.85rem;margin:0}.practice-mode-options{display:flex;flex-wrap:wrap;gap:.4rem}.practice-mode-option{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-chip);color:var(--ink);cursor:pointer;font-size:.85rem;font-weight:550;padding:.4rem .7rem}.practice-mode-option--active{background:var(--accent-soft);border-color:var(--accent);font-weight:650}.practice-mode-toggles{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem}.practice-mode-toggle{align-items:center;cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:650;gap:.5rem;-webkit-user-select:none;-moz-user-select:none;user-select:none}.practice-mode-toggle input{accent-color:var(--accent);height:1.1rem;width:1.1rem}.practice-mode-apply-all{margin-top:.15rem}.practice-mode-confirm{align-items:center;background:color-mix(in srgb,var(--ink) 35%,transparent);display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:40}.practice-mode-confirm__card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-soft);max-width:22rem;padding:1.15rem 1.25rem;width:min(100%,22rem)}.practice-mode-confirm__card h3{font-family:var(--font-display);font-size:1.1rem;margin:0 0 .5rem}.practice-mode-confirm__body{color:var(--muted);font-size:.92rem;line-height:1.45;margin:0 0 1rem}.practice-mode-confirm__actions{display:flex;flex-wrap:wrap;gap:.55rem;justify-content:flex-end}.replay-icon-btn{align-items:center;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--bg-elevated);border:1px solid color-mix(in srgb,var(--border) 70%,var(--accent));border-radius:var(--radius-chip);color:var(--ink);cursor:pointer;display:inline-flex;height:2.25rem;justify-content:center;padding:0;width:2.25rem}.replay-icon-btn:disabled{cursor:not-allowed;opacity:.5}.replay-icon-btn__icon{display:block}.practice-edit-link-row{display:flex;flex-wrap:wrap;gap:.75rem 1.25rem;justify-content:flex-start;align-items:center;margin:.65rem 0 .15rem;text-align:left}.practice-edit-link-row--outside-panel{margin:.85rem 0 0}.practice-edit-link{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;color:var(--accent);cursor:pointer;font:inherit;font-weight:650;padding:.25rem .5rem;text-decoration:underline;text-underline-offset:.2em}.practice-edit-link:focus-visible{outline:3px solid var(--warn);outline-offset:3px}button.back-link{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;cursor:pointer;font:inherit;padding:0;text-align:left}