.learn{gap:var(--s-4);flex-direction:column;align-items:stretch;max-width:40rem;margin-inline:auto;display:flex}.learn-title{font-family:var(--font-display);font-size:var(--text-xl);line-height:var(--leading-tight);color:var(--ink);margin:0}.learn-note{padding:var(--s-3) var(--s-4);background:var(--notice-wash);border-radius:var(--radius-sm);color:var(--ink-soft);margin:0}.learn-progress{justify-content:space-between;gap:var(--s-3);font-size:var(--text-sm);color:var(--ink-muted);margin:0;display:flex}.learn-card{gap:var(--s-3);padding:var(--s-5);background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;display:flex}.learn-card .btn{align-self:flex-start}.learn-pill{font-size:var(--text-xs);padding:.15rem var(--s-3);border-radius:var(--radius-pill);background:var(--sea-wash);color:var(--sea);align-self:flex-start;font-weight:600}.learn-idiom{font-family:var(--font-specimen);font-size:var(--text-2xl);line-height:var(--leading-tight);overflow-wrap:anywhere;margin:0}.learn-lang{font-size:var(--text-sm);color:var(--ink-muted);margin:0}.learn-sentence{font-family:var(--font-specimen);font-size:var(--text-lg);line-height:var(--leading-snug);margin:0}.learn-blank{border-bottom:2px solid var(--ink-soft);min-width:6ch;display:inline-block}.learn-answer{background:var(--marker-wash);color:var(--ink);padding:0 var(--s-1);border-radius:var(--radius-xs)}.learn-field{gap:var(--s-1);font-size:var(--text-sm);color:var(--ink-soft);flex-direction:column;font-weight:600;display:flex}.learn-input{font:inherit;font-weight:400;font-size:var(--text-base);color:var(--ink);background:var(--surface);border:1px solid var(--hairline-strong);border-radius:var(--radius-sm);padding:var(--s-2) var(--s-3);box-sizing:border-box;resize:vertical;width:100%}.learn-input:focus-visible{outline:2px solid var(--sea);outline-offset:1px}.learn-input[readonly]{background:var(--paper-sunk)}.learn-reveal{gap:var(--s-3);animation:learn-in var(--dur-slow) var(--ease-out);flex-direction:column;display:flex}.learn-reveal:focus,.learn-title:focus{outline:none}.learn-defs{padding-left:var(--s-5);color:var(--ink);margin:0}.learn-example{color:var(--ink-soft);margin:0;font-style:italic}.learn-verdict{color:var(--ink-soft);margin:0}.learn-grades{gap:var(--s-2);grid-template-columns:repeat(3,1fr);display:grid}.learn-grade{appearance:none;font:inherit;cursor:pointer;padding:var(--s-3) var(--s-2);border-radius:var(--radius-sm);border:1px solid var(--hairline-strong);background:var(--surface);color:var(--ink);font-weight:600}.learn-grade kbd{font:inherit;font-size:var(--text-xs);color:var(--ink-muted);margin-left:var(--s-1)}.learn-grade--missed:hover{background:var(--danger-wash);border-color:var(--danger)}.learn-grade--close:hover{background:var(--sea-wash);border-color:var(--sea)}.learn-grade--got:hover{background:var(--success-wash);border-color:var(--success)}.learn-grade:focus-visible,.learn-chip:focus-visible,.learn-link:focus-visible{outline:2px solid var(--sea);outline-offset:2px}.learn-picker{gap:var(--s-4);flex-direction:column;display:flex}.learn-chips{gap:var(--s-2);flex-wrap:wrap;display:flex}.learn-chip{appearance:none;font:inherit;font-size:var(--text-sm);cursor:pointer;padding:var(--s-2) var(--s-4);border-radius:var(--radius-pill);border:1px solid var(--hairline-strong);background:var(--surface);color:var(--ink-soft);transition:background-color var(--dur) var(--ease-out);font-weight:600}.learn-chip:hover{background:var(--sea-wash)}.learn-chip[aria-pressed=true]{background:var(--sea);border-color:var(--sea);color:var(--ink-inverse)}.learn-actions{align-items:center;gap:var(--s-4);flex-wrap:wrap;display:flex}.learn-link{appearance:none;font:inherit;font-size:var(--text-sm);padding:var(--s-1) 0;color:var(--ink-muted);cursor:pointer;background:0 0;border:0;align-self:flex-start;text-decoration:underline}.learn-link:hover{color:var(--sea)}.weekstrip{align-self:stretch;gap:var(--s-5);padding:var(--s-5);background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;display:flex}.weekstrip__streak{align-items:center;gap:var(--s-4);display:flex}.weekstrip__badge{background:var(--paper-sunk);width:3.5rem;height:3.5rem;color:var(--ink-muted);border-radius:50%;flex:none;place-items:center;display:grid}.weekstrip__streak[data-lit=true] .weekstrip__badge{background:var(--flame-wash);color:var(--flame)}.weekstrip__flame{width:1.9rem;height:1.9rem}.weekstrip__flame .flame-core{fill:var(--flame-core)}.weekstrip__text{flex-direction:column;margin:0;display:flex}.weekstrip__num{font-family:var(--font-display);font-size:var(--text-3xl);color:var(--ink);font-variant-numeric:tabular-nums;line-height:1}.weekstrip__unit{font-size:var(--text-sm);color:var(--ink-muted);margin-top:var(--s-1)}.weekstrip__week{font-size:var(--text-sm);color:var(--ink-soft);background:var(--paper-sunk);padding:.15rem var(--s-3);border-radius:var(--radius-pill);align-self:flex-start;margin:0 0 0 auto;font-weight:600}.weekstrip__days{gap:var(--s-2);grid-template-columns:repeat(7,1fr);margin:0;padding:0;list-style:none;display:grid}.weekstrip__day{align-items:center;gap:var(--s-2);padding:var(--s-2) 0;border-radius:var(--radius-pill);background:0 0;flex-direction:column;display:flex}.weekstrip__label{font-size:var(--text-xs);color:var(--ink-muted);font-weight:700}.weekstrip__dot{border:1.5px solid var(--hairline-strong);width:1.9rem;height:1.9rem;color:var(--ink);font-weight:700;font-size:var(--text-sm);box-sizing:border-box;background:0 0;border-radius:50%;place-items:center;display:grid}.weekstrip__day[data-done=true]{background:var(--marker-wash)}.weekstrip__day[data-done=true] .weekstrip__dot{background:var(--marker);border:2px solid var(--marker-edge)}.weekstrip__day[data-done=true] .weekstrip__label{color:var(--marker-deep)}.weekstrip__day[data-today=true]{box-shadow:inset 0 0 0 2px var(--sea)}.weekstrip__day[data-today=true] .weekstrip__label{color:var(--sea)}.weekstrip__day[data-today=true]:not([data-done=true]) .weekstrip__dot{border:2px solid var(--sea)}.weekstrip__day[data-future=true]{opacity:.5}.weekstrip__day[data-future=true] .weekstrip__dot{border-style:dashed}.weekstrip[data-compact=true]{justify-content:space-between;align-items:center;gap:var(--s-4);padding:var(--s-3) var(--s-4);border-radius:var(--radius-md);box-shadow:none;flex-direction:row}.weekstrip[data-compact=true] .weekstrip__badge{width:2rem;height:2rem}.weekstrip[data-compact=true] .weekstrip__flame{width:1.1rem;height:1.1rem}.weekstrip[data-compact=true] .weekstrip__streak{gap:var(--s-2)}.weekstrip[data-compact=true] .weekstrip__num{font-size:var(--text-xl)}.weekstrip[data-compact=true] .weekstrip__unit{display:none}.weekstrip[data-compact=true] .weekstrip__days{gap:var(--s-1)}.weekstrip[data-compact=true] .weekstrip__day{box-shadow:none;background:0 0;flex-direction:row;padding:0}.weekstrip[data-compact=true] .weekstrip__label{display:none}.weekstrip[data-compact=true] .weekstrip__dot{width:1.4rem;height:1.4rem;font-size:var(--text-xs);border-width:1.5px}.weekstrip[data-compact=true] .weekstrip__day[data-today=true] .weekstrip__dot{box-shadow:0 0 0 2px var(--sea-wash)}.profile{gap:var(--s-5)}.profile__head{gap:var(--s-2);flex-direction:column;display:flex}.profile__who{font-size:var(--text-sm);color:var(--ink-muted);overflow-wrap:anywhere;margin:0}.profile__tiles{gap:var(--s-3);grid-template-columns:repeat(2,1fr);margin:0;padding:0;list-style:none;display:grid}.profile__tile{gap:var(--s-1);padding:var(--s-4) var(--s-5);background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;display:flex}.profile__value{font-family:var(--font-display);font-size:var(--text-2xl);line-height:var(--leading-tight);color:var(--ink);font-variant-numeric:tabular-nums}.profile__name{font-size:var(--text-sm);color:var(--ink-muted);font-weight:600}.profile__panel{gap:var(--s-4);padding:var(--s-5);background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius-lg);flex-direction:column;display:flex}.profile__h{font-size:var(--text-md);color:var(--ink);margin:0;font-weight:600}.profile__bar{border-radius:var(--radius-pill);gap:3px;height:.75rem;display:flex;overflow:hidden}.profile__bar span,.profile__swatch{background:var(--hairline-strong)}.profile__bar [data-group=learning],.profile__swatch[data-group=learning]{background:var(--marker-wash);box-shadow:inset 0 0 0 1px var(--marker-edge)}.profile__bar [data-group=getting],.profile__swatch[data-group=getting]{background:var(--marker-edge)}.profile__bar [data-group=strong],.profile__swatch[data-group=strong]{background:var(--marker-deep)}.profile__legend{gap:var(--s-2) var(--s-5);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.profile__legend li{align-items:center;gap:var(--s-2);font-size:var(--text-sm);color:var(--ink-soft);display:flex}.profile__swatch{border-radius:50%;width:.75rem;height:.75rem}.profile__legend-count{color:var(--ink);font-variant-numeric:tabular-nums;font-weight:700}.profile__due{font-size:var(--text-sm);color:var(--ink-soft);margin:0}.profile__list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.profile__list li+li{border-top:1px solid var(--hairline)}.profile__idiom{appearance:none;font:inherit;align-items:center;column-gap:var(--s-3);text-align:left;width:100%;padding:var(--s-3) var(--s-1);border-radius:var(--radius-sm);cursor:pointer;color:var(--ink);background:0 0;border:0;grid-template-columns:1fr auto;grid-template-areas:"text pill""meta pill";display:grid}.profile__idiom:hover{background:var(--sea-wash)}.profile__idiom:focus-visible{outline:2px solid var(--sea);outline-offset:1px}.profile__idiom-text{font-family:var(--font-specimen);font-size:var(--text-md);overflow-wrap:anywhere;grid-area:text}.profile__idiom-meta{font-size:var(--text-xs);color:var(--ink-muted);grid-area:meta}.profile__pill{font-size:var(--text-xs);padding:.15rem var(--s-3);border-radius:var(--radius-pill);background:var(--paper-sunk);color:var(--ink-soft);white-space:nowrap;grid-area:pill;font-weight:600}.profile__pill[data-group=getting]{background:var(--sea-wash);color:var(--sea)}.profile__pill[data-group=strong]{background:var(--marker-wash);color:var(--marker-deep)}.profile__empty{align-items:flex-start;gap:var(--s-3);padding:var(--s-6) var(--s-5);background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius-lg);flex-direction:column;display:flex}.profile__empty-title{font-family:var(--font-display);font-size:var(--text-lg);color:var(--ink);margin:0}.profile__empty-hint{color:var(--ink-muted);margin:0}@media (min-width:561px){.profile__tiles{grid-template-columns:repeat(4,1fr)}}.home{gap:var(--s-5)}.home__section{gap:var(--s-3);flex-direction:column;display:flex}.home__row{justify-content:space-between;align-items:baseline;gap:var(--s-3);display:flex}.home__panel{box-shadow:var(--shadow-sm);align-items:flex-start}.home__panel>*{max-width:100%}.home .btn--quiet,.home__panel .btn--quiet{background:var(--surface);color:var(--ink);border-color:var(--hairline-strong);align-items:center;gap:var(--s-2);display:inline-flex}.home .btn--quiet:hover:not(:disabled){background:var(--sea-wash);border-color:var(--sea)}.home .btn--quiet[aria-pressed=true]{background:var(--sea-wash);border-color:var(--sea);color:var(--sea)}.home .btn:focus-visible{outline:2px solid var(--sea);outline-offset:2px}.home__icon{flex:none;width:1.05rem;height:1.05rem}.home__line{color:var(--ink-soft);margin:0}.home__hint{font-size:var(--text-sm);color:var(--ink-muted);margin:0}.home__idiom{font-family:var(--font-specimen);font-size:var(--text-xl);line-height:var(--leading-tight);color:var(--ink);overflow-wrap:anywhere;margin:0}.home__done{align-items:center;gap:var(--s-4);display:flex}.home__done .home__line{margin-top:var(--s-1)}.home__done .profile__h:focus{outline:none}.home__badge{background:var(--marker-wash);width:3rem;height:3rem;color:var(--marker-deep);box-shadow:inset 0 0 0 2px var(--marker-edge);border-radius:50%;flex:none;place-items:center;display:grid}.home__check{width:1.5rem;height:1.5rem}.home__pills{gap:var(--s-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.home__pill{font-size:var(--text-sm);padding:.2rem var(--s-3);border-radius:var(--radius-pill);background:var(--sea-wash);color:var(--sea);font-weight:600}.home__lang{align-items:flex-start;gap:var(--s-2);padding-top:var(--s-3);border-top:1px solid var(--hairline);flex-direction:column;align-self:stretch;display:flex}.home__sub{font-size:var(--text-sm);color:var(--ink-muted);margin:0;font-weight:600}.home__langpick{gap:var(--s-3);flex-direction:column;align-self:stretch;display:flex}.home__panel .learn-note,.home__panel .learn-example,.home__panel .learn-defs{align-self:stretch}.home__panel .learn-example strong{background:var(--marker-wash);padding:0 var(--s-1);border-radius:var(--radius-xs);font-style:normal}@media (max-width:560px){.home__start{align-self:stretch}}@keyframes learn-in{0%{opacity:0;transform:translateY(4px)}}@media (max-width:560px){.learn-card{padding:var(--s-4)}.learn-idiom{font-size:var(--text-xl)}.learn-grade{padding-inline:var(--s-1);font-size:var(--text-sm)}.weekstrip{padding:var(--s-4)}.weekstrip__week{display:none}.weekstrip[data-compact=true]{padding:var(--s-2) var(--s-3);gap:var(--s-2)}.weekstrip[data-compact=true] .weekstrip__dot{width:1.25rem;height:1.25rem}.profile__panel{padding:var(--s-4)}}@media (prefers-reduced-motion:reduce){.learn-reveal{animation:none}.learn-chip{transition:none}}
