.pricing-card{display:flex;flex-direction:column;padding:1.5rem;height:100%}.pricing-card--highlighted{border:2px solid var(--primary)}.pricing-card__badge{align-self:flex-start;-webkit-margin-after:.5rem;margin-block-end:.5rem}.pricing-card__name{margin:0}.pricing-card__price-row{display:flex;align-items:baseline;gap:.25rem;-webkit-margin-before:.25rem;margin-block-start:.25rem}.pricing-card__price{font-size:2rem;line-height:1.2}.pricing-card__subtitle{margin:.5rem 0 0;opacity:.7}.pricing-card__divider{height:1px;background:var(--outline-variant);margin:1rem 0}.pricing-card__features{display:flex;flex-direction:column;gap:.625rem;flex:1 1}.pricing-card__feature{display:flex;align-items:flex-start;gap:.5rem;font-size:.875rem}.pricing-card__feature--excluded{opacity:.4}.pricing-card__cta{display:flex;align-items:center;justify-content:center;padding:.625rem 1.25rem;border:1px solid var(--outline-variant);border-radius:2rem;-webkit-margin-before:1.25rem;margin-block-start:1.25rem;font-weight:500;text-decoration:none;cursor:pointer;color:var(--on-surface);transition:background-color .15s ease}.pricing-card__cta:hover{background:var(--surface-container-high)}.pricing-card__cta--primary{background:var(--primary);color:var(--on-primary);border-color:var(--primary)}.pricing-card__cta--primary:hover{opacity:.9;background:var(--primary)}.chat-mockup{max-width:420px;overflow:hidden;margin:0 auto}.chat-mockup__header{border-radius:1rem 1rem 0 0}.chat-mockup__body{display:flex;flex-direction:column;gap:.75rem;min-height:280px}.chat-mockup__footer{border-radius:0 0 1rem 1rem}.chat-mockup__input-wrap{display:flex;align-items:center;gap:.5rem;background:var(--surface);border:1px solid var(--outline-variant);border-radius:1.5rem;padding:.25rem .25rem .25rem 1rem}.chat-mockup__input-wrap:focus-within{border-color:var(--primary)}.chat-mockup__input{all:unset;flex:1 1;font:inherit;font-size:.875rem;color:var(--on-surface);min-width:0}.chat-mockup__input::placeholder{color:var(--on-surface-variant);opacity:.6}.chat-mockup__send-btn{flex-shrink:0;background:var(--primary)!important;color:var(--on-primary)!important;width:2rem!important;height:2rem!important}.chat-mockup__bubble{max-width:85%;font-size:.875rem;line-height:1.5}.chat-mockup__bubble--user{align-self:flex-end;border-radius:1rem 1rem .25rem 1rem}.chat-mockup__bubble--bot{align-self:flex-start;border-radius:.25rem 1rem 1rem 1rem}.chat-mockup__typing{display:flex;gap:4px;padding:4px 2px}.chat-mockup__typing span{width:8px;height:8px;border-radius:50%;background:var(--on-surface-variant);animation:chat-typing-pulse 1.4s infinite both}.chat-mockup__typing span:nth-child(2){animation-delay:.2s}.chat-mockup__typing span:nth-child(3){animation-delay:.4s}@keyframes chat-typing-pulse{0%,80%,to{transform:translateY(0);opacity:.3}40%{transform:translateY(-6px);opacity:1}}.flash-card{perspective:800px;cursor:pointer;width:100%;max-width:28rem}.flash-card__inner{position:relative;width:100%;transition:transform .5s ease;transform-style:preserve-3d}.flash-card--flipped .flash-card__inner{transform:rotateY(180deg)}.flash-card__face{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;-webkit-backface-visibility:hidden;backface-visibility:hidden;min-height:18rem;padding:2rem}.flash-card__front{position:relative}.flash-card__back{position:absolute;inset:0;transform:rotateY(180deg)}.flash-card__badges{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center}.flash-card__word{font-size:2rem;font-weight:700;margin:.5rem 0;text-align:center}.flash-card__phonetic{opacity:.7;margin:0}.flash-card__hint{opacity:.4;margin:0}.flash-card__example{text-align:center;opacity:.85;margin:0;line-height:1.5}.empty-state{display:flex;flex-direction:column;align-items:center;text-align:center;padding:3rem 1.5rem;gap:.5rem}.empty-state__icon{opacity:.4;-webkit-margin-after:.5rem;margin-block-end:.5rem}.list-item{display:flex;align-items:center;gap:1rem;padding:.75rem 1rem;min-height:3rem}.list-item--clickable{cursor:pointer;border-radius:.75rem;transition:background-color .15s ease}.list-item--clickable:hover{background:var(--surface-container)}.list-item__leading{flex-shrink:0}.list-item__avatar{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;font-size:.75rem}.list-item__content{flex:1 1;display:flex;flex-direction:column;min-width:0}.list-item__primary{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.list-item__secondary{opacity:.7}.list-item__trailing{flex-shrink:0}.dialog-component{max-width:min(90vw,32rem);border:none;padding:0}.dialog-component::-webkit-backdrop{background:rgba(0,0,0,.5)}.dialog-component::backdrop{background:rgba(0,0,0,.5)}.dialog-component__header{display:flex;align-items:center;gap:.5rem;-webkit-margin-after:1rem;margin-block-end:1rem}.bottom-sheet{position:fixed;inset:auto 0 0 0;width:100%;max-width:100%;max-height:80vh;margin:0;border:none;padding:0;background:transparent}.bottom-sheet::-webkit-backdrop{background:rgba(0,0,0,.5)}.bottom-sheet::backdrop{background:rgba(0,0,0,.5)}.bottom-sheet__content{background:var(--surface);overflow-y:auto;max-height:80vh}.bottom-sheet__handle{width:2rem;height:.25rem;border-radius:999px;background:var(--outline-variant);margin:0 auto 1rem}.bottom-sheet__header{display:flex;align-items:center;gap:.5rem;-webkit-margin-after:1rem;margin-block-end:1rem}.chat-conversation{display:flex;flex-direction:column;height:100%;max-height:36rem;overflow:hidden}.chat-conversation__header nav{display:flex;align-items:center;gap:.5rem}.chat-conversation__emoji{font-size:1.25rem}.chat-conversation__body{flex:1 1;overflow-y:auto;display:flex;flex-direction:column}.chat-conversation__footer{border-top:1px solid var(--outline-variant)}.chat-conversation__typing{display:flex;gap:4px;padding:.25rem 0}.chat-conversation__typing span{width:8px;height:8px;border-radius:50%;background:var(--on-surface-variant);opacity:.4;animation:typing-pulse 1.4s ease-in-out infinite}.chat-conversation__typing span:nth-child(2){animation-delay:.2s}.chat-conversation__typing span:nth-child(3){animation-delay:.4s}@keyframes typing-pulse{0%,60%,to{opacity:.4}30%{opacity:1}}.dashboard-page{width:100%;min-height:100vh;background:var(--surface);overflow:visible!important}.dashboard-page--narrow{max-width:56rem;margin-inline:auto}.dashboard-page--default,.dashboard-page--wide{max-width:100%}.cta-section__box{max-width:500px;margin-inline:auto}.cta-section__btn{margin-top:1rem}.cta-section__note{margin-top:.75rem;opacity:.7}.plan-comparison__grid{display:grid;grid-template-columns:1fr;grid-gap:.75rem;gap:.75rem}@media (min-width:40rem){.plan-comparison__grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:64rem){.plan-comparison__grid{grid-template-columns:repeat(3,1fr)}}.mistake-queue{display:flex;flex-direction:column;gap:1rem}.mistake-queue__filters{display:flex;gap:.5rem;flex-wrap:wrap}.mistake-queue__item,.mistake-queue__list{display:flex;flex-direction:column}.mistake-queue__item{gap:.5rem;padding:.75rem;-webkit-border-after:1px solid var(--outline-variant);border-block-end:1px solid var(--outline-variant);cursor:pointer;transition:background .15s ease}.mistake-queue__item:hover{background:var(--surface-container)}.mistake-queue__item-chips{display:flex;gap:.375rem;flex-wrap:wrap;-webkit-padding-start:3rem;padding-inline-start:3rem}.mistake-queue__no-results{text-align:center;opacity:.6}.mistake-drill{display:flex;flex-direction:column;gap:1rem;max-width:36rem}.mistake-drill--resolved{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.75rem;padding:2rem}.mistake-drill__header{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.mistake-drill__attempts{display:flex;align-items:center;gap:.25rem;opacity:.7}.mistake-drill__prompt{margin:0}.mistake-drill__answers{display:flex;flex-direction:column;gap:.75rem}.mistake-drill__answer{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;grid-gap:.25rem .5rem;gap:.25rem .5rem;align-items:center}.mistake-drill__answer>span{grid-column:1}.mistake-drill__answer>i{grid-column:2;grid-row:1/-1}.mistake-drill__answer-text{margin:0;grid-column:1}.mistake-drill__hint-section{display:flex;flex-direction:column;gap:.75rem}.mistake-drill__hint{display:flex;align-items:flex-start;gap:.5rem}.mistake-drill__hint-text{margin:0}.mistake-drill__actions{display:flex;gap:.5rem;flex-wrap:wrap}.explanation-block{display:flex;flex-direction:column;gap:.75rem}.explanation-block__content{line-height:1.6}.explanation-block__content ol,.explanation-block__content ul{padding-left:1.25rem;margin:.5rem 0}.explanation-block__content li{margin-bottom:.25rem}.explanation-block__examples{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}.explanation-block__example{display:flex;flex-direction:column;gap:.125rem}.explanation-block__image{max-height:240px;object-fit:cover}.explanation-block__image--hero,.explanation-block__image--inline{width:100%}.explanation-block__image--float-left,.explanation-block__image--float-right{max-width:50%}.explanation-block__image--float-left{float:left;margin-right:1rem;margin-bottom:.5rem}.explanation-block__image--float-right{float:right;margin-left:1rem;margin-bottom:.5rem}.conjugation-table-block{display:flex;flex-direction:column;gap:.75rem}.conjugation-table-block__table{width:100%;border-collapse:collapse}.conjugation-table-block__table th{text-align:left;padding:.5rem .75rem;font-weight:600;border-bottom:2px solid var(--outline-variant)}.conjugation-table-block__table td{padding:.5rem .75rem;border-bottom:1px solid var(--outline-variant)}.conjugation-table-block__table tr:last-child td{border-bottom:none}.conjugation-table-block__cell--highlight{background:var(--primary-container);color:var(--on-primary-container);border-radius:.25rem;font-weight:600}.conjugation-table-block__footnote{margin-top:.25rem}@media (max-width:599px){.conjugation-table-block__table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch}}.example-sentences-block{display:flex;flex-direction:column;gap:.75rem}.example-sentences-block__list{display:flex;flex-direction:column;gap:.5rem}.example-sentences-block__pair{display:flex;flex-direction:column;gap:.125rem}.example-sentences-block__row{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.phrase-bank-block{display:flex;flex-direction:column;gap:1rem}.phrase-bank-block__category,.phrase-bank-block__phrases{display:flex;flex-direction:column;gap:.5rem}.phrase-bank-block__phrase{display:flex;flex-direction:column;gap:.125rem}.phrase-bank-block__row{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.phrase-bank-block__scene{width:100%;max-height:240px;object-fit:cover}.reveal-block{display:flex;flex-direction:column;gap:.75rem}.reveal-block__prompt{font-size:1.05rem}.reveal-block__answer{animation:reveal-block-fade-in .3s ease-in}@keyframes reveal-block-fade-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.reveal-block__action{display:flex;align-items:center;gap:.5rem}.quick-check-block{display:flex;flex-direction:column;gap:.75rem}.quick-check-block__header{display:flex;align-items:center;gap:.4rem;line-height:1.2}.quick-check-block__options{display:flex;flex-direction:column;gap:.5rem}.quick-check-block__option{display:flex;align-items:center;justify-content:center;cursor:pointer;transition:box-shadow .15s ease,transform .15s ease;text-align:center;width:100%;max-width:100%;box-sizing:border-box;block-size:auto;margin:0;padding:.75rem 1rem!important;border:0;overflow:hidden;font-size:inherit;font-family:inherit}.quick-check-block__option-content{display:inline-flex;align-items:center;justify-content:center;gap:.45rem}.quick-check-block__option-icon{width:1.1rem;height:1.1rem;display:inline-flex;align-items:center;justify-content:center;visibility:hidden}.quick-check-block__option-icon--visible{visibility:visible}.quick-check-block__option:hover:not(:disabled){box-shadow:var(--elevate1);transform:translateY(-1px)}.quick-check-block__option:disabled{cursor:default}.quick-check-block__option--correct{border:2px solid var(--primary);background:var(--primary-container)!important;color:var(--on-primary-container)!important}.quick-check-block__option--incorrect{border:2px solid var(--error);background:var(--error-container)!important;color:var(--on-error-container)!important}.quick-check-block__explanation{display:flex;align-items:flex-start;gap:.5rem;animation:quick-check-fade-in .3s ease-in}@keyframes quick-check-fade-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.learn-phase-container{display:flex;flex-direction:column;gap:1.5rem}.learn-phase-container__main{display:flex;gap:1.5rem;align-items:flex-start}.learn-phase-container__blocks{display:flex;flex-direction:column;gap:1.25rem;flex:1 1;min-width:0}.learn-phase-container__footer-action{display:flex;justify-content:flex-end;margin-top:.25rem}.learn-phase-container__after-blocks{display:flex;flex-direction:column;gap:1.25rem}.learn-phase-container__sidebar{display:none;flex-direction:column;gap:1rem;width:17.5rem;flex-shrink:0}.learn-phase-container__sidebar-content{display:flex;flex-direction:column;gap:1rem}.learn-phase-container__inline-heading,.learn-phase-container__sidebar-heading{margin:0;font-size:1.1rem;line-height:1.3}.learn-phase-container__inline-tips{display:flex;flex-direction:column;gap:1rem;margin-top:.5rem}@media (min-width:900px){.learn-phase-container__sidebar{display:flex;position:-webkit-sticky;position:sticky;top:0;align-self:flex-start;max-height:none;overflow-y:visible}.learn-phase-container__inline-tips{display:none}}.lesson-phase-tabs{display:flex;flex-direction:column;gap:1.125rem}.lesson-phase-tabs__header{display:flex;flex-direction:column;gap:.35rem}.lesson-phase-tabs__meta{display:flex;align-items:center;gap:.5rem}.lesson-phase-tabs__content{min-height:0}.lesson-phase-tabs__completion-nav{display:flex;flex-direction:column;align-items:center;gap:.75rem;margin-top:1rem}.learn-phase,.lesson-phase-tabs__practice{display:flex;flex-direction:column;gap:1rem}.learn-phase__section{display:flex;flex-direction:column;gap:.75rem}.learn-phase__example{display:flex;flex-direction:column;gap:.25rem}.learn-phase__tip{display:flex;align-items:center;gap:.5rem}.apply-phase{display:flex;flex-direction:column;gap:1rem}.apply-phase__scenario{display:flex;align-items:flex-start;gap:.5rem}.apply-phase__prompts{display:flex;flex-direction:column;gap:.5rem}.apply-phase__prompt{display:flex;align-items:center;gap:.5rem}.apply-phase__writing{margin-top:.5rem}.apply-phase__writing textarea{width:100%;resize:vertical}.apply-phase__action{display:flex;justify-content:flex-end;margin-top:.5rem}.billing-page{display:flex;flex-direction:column;gap:2rem}.billing-page__section-title{margin:0 0 .75rem}.billing-page__current-plan{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;padding:1.5rem}.billing-page__plan-info{display:flex;flex-direction:column;gap:.125rem}.billing-page__plan-name{margin:0}.billing-page__plan-meta{margin:0;opacity:.8}.billing-page__portal-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.625rem 1.25rem;border:1px solid var(--outline-variant);border-radius:2rem;color:var(--on-primary-container);font-size:.875rem;font-weight:500;text-decoration:none;cursor:pointer;transition:background-color .15s ease}.billing-page__portal-btn:hover{background:rgba(0,0,0,.08)}.billing-page__usage-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(20rem,1fr));grid-gap:1rem;gap:1rem}@media (max-width:32rem){.billing-page__usage-grid{grid-template-columns:1fr;gap:.85rem}}.billing-page__upgrade{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;padding:1.5rem}.billing-page__upgrade-text{display:flex;flex-direction:column;gap:.375rem;max-width:32rem}.billing-page__upgrade-title{margin:0}.billing-page__upgrade-body{margin:0;opacity:.85}.billing-page__upgrade-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.75rem 1.5rem;border-radius:2rem;background:var(--primary);color:var(--on-primary);font-weight:500;text-decoration:none;cursor:pointer;border:none;transition:opacity .15s ease}.billing-page__upgrade-btn:hover{opacity:.9}