.nihongo-scope .jp-text{font-family:Hiragino Sans,Hiragino Kaku Gothic ProN,Noto Sans JP,Yu Gothic,Meiryo,system-ui,sans-serif;font-size:clamp(1.3rem,4.6vw,1.65rem);line-height:2.15;letter-spacing:.02em;overflow-wrap:anywhere}.nihongo-scope .jp-text--sm{font-size:1.15rem;line-height:2.2}.nihongo-scope .jp-text--cue{font-size:clamp(1.15rem,4.2vw,1.4rem);line-height:1.75}.nihongo-scope .jp-text--word{line-height:1.9}.nihongo-scope .jp-text--card{font-size:clamp(2.5rem,12vw,4rem);line-height:1.7}.nihongo-scope rt{font-size:max(.5em,10px);letter-spacing:0;color:var(--muted-foreground);user-select:none}.nihongo-scope[data-furigana=off] rt{visibility:hidden}.nihongo-scope .jp-token{cursor:pointer;border-radius:.3em;-webkit-tap-highlight-color:transparent;transition:background-color .12s}@media (hover:hover){.nihongo-scope .jp-token:hover{background:var(--muted)}}.nihongo-scope .jp-token:focus-visible{outline:2px solid var(--ring);outline-offset:1px}.nihongo-scope .jp-token--saved{border-bottom:2px dotted color-mix(in oklab,var(--primary) 70%,transparent)}.nihongo-scope .jp-token[aria-pressed=true]{background:var(--selected)}.nihongo-scope [data-furigana=on] rt{visibility:visible}.nihongo-scope [data-furigana=off] rt{visibility:hidden}.nihongo-scope[data-furigana=off] [data-furigana-force] rt{visibility:visible}.nihongo-scope .pace-viewport{overflow:hidden;touch-action:none;-webkit-mask-image:linear-gradient(180deg,transparent,#000 14%,#000 82%,transparent);mask-image:linear-gradient(180deg,transparent,#000 14%,#000 82%,transparent)}.nihongo-scope .pace-content{will-change:transform}.nihongo-scope .pace-content .jp-text{font-size:clamp(1.45rem,5.2vw,2rem)}.nihongo-scope .pace-content .pace-word{font-size:clamp(2.2rem,9vw,3.2rem);line-height:1.7}.nihongo-scope .nh-center,.nihongo-scope .nh-center :is(p,span,div,h2){text-align:center}.nh-stroke{animation:nh-stroke linear both}.nh-stroke-label{opacity:0;animation:nh-stroke-label .01s linear both}@keyframes nh-stroke{to{stroke-dashoffset:0}}@keyframes nh-stroke-label{to{opacity:1}}.nh-ink-miss{animation:nh-ink-miss .7s ease-out both}@keyframes nh-ink-miss{0%,40%{opacity:.9}to{opacity:0}}@media (prefers-reduced-motion:reduce){.nh-stroke{animation:none;stroke-dashoffset:0!important}.nh-stroke-label{animation:none;opacity:1}.nh-ink-miss{animation:none;opacity:0}}.nh-flip{perspective:1200px}.nh-flip-face{backface-visibility:hidden;transition:transform .28s cubic-bezier(.2,.8,.2,1)}.nh-flip-back,.nh-flip[data-revealed=true] .nh-flip-face{transform:rotateY(180deg)}.nh-flip[data-revealed=true] .nh-flip-back{transform:rotateY(1turn)}.nihongo-scope .nh-flip[data-furigana=off] rt{visibility:hidden}.nihongo-scope .nh-flip .nh-flip-back rt,.nihongo-scope[data-furigana=off] .nh-flip[data-furigana=on] rt{visibility:visible}@media (prefers-reduced-motion:reduce){.nh-flip-face{transition:opacity .15s ease-out;transform:none!important}.nh-flip[data-revealed=false] .nh-flip-back,.nh-flip[data-revealed=true] .nh-flip-face:not(.nh-flip-back){opacity:0;pointer-events:none}}@keyframes nh-pulse{0%{box-shadow:0 0 0 0 color-mix(in oklab,var(--color-foreground) 45%,transparent)}to{box-shadow:0 0 0 6px color-mix(in oklab,var(--color-foreground) 0%,transparent)}}.nh-pulse{animation:nh-pulse .4s ease}@keyframes nh-shake{0%,to{transform:translateX(0)}20%{transform:translateX(-6px)}40%{transform:translateX(6px)}60%{transform:translateX(-4px)}80%{transform:translateX(3px)}}.nh-shake{animation:nh-shake .3s ease-out}@keyframes nh-settle{0%{transform:scale(.9);opacity:.6}to{transform:scale(1);opacity:1}}.nh-settle{animation:nh-settle .2s ease 80ms both}@keyframes nh-draw{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}.nh-draw{stroke-dasharray:1;stroke-dashoffset:1;animation:nh-draw .25s ease .12s forwards}@media (prefers-reduced-motion:reduce){.nh-draw,.nh-pulse,.nh-settle,.nh-shake{animation:none}.nh-draw{stroke-dashoffset:0}}.nh-mascot{animation:nh-mascot-in .28s ease both}@keyframes nh-mascot-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.nh-mascot{animation-name:nh-fade-in}}.nh-fade-in{animation:nh-fade-in .16s ease-out both}@keyframes nh-fade-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.nh-fade-in{animation:none}}body[data-lesson] .nh-nav{display:none}.nh-turn{display:inline-flex;animation:nh-turn .4s ease-out both}@keyframes nh-turn{0%{opacity:0;transform:scale(.6)}70%{opacity:1;transform:scale(1.15)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.nh-turn{animation:none}}.nh-rise{animation:nh-rise .2s ease-out both}@keyframes nh-rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.nh-rise{animation:none}}.nihongo-scope [lang=en] .jp-text,.nihongo-scope [lang=en].jp-text{font-family:system-ui,sans-serif;letter-spacing:0;line-height:1.4}