@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=Noto+Sans+JP:wght@300;400;500;700;900&family=Klee+One:wght@400;600&family=Patrick+Hand&display=swap";:root{--color-zinc-50: oklch(98.5% 0 0);--color-zinc-100: oklch(96.7% .001 286.375);--color-zinc-200: oklch(92% .004 286.32);--color-zinc-400: oklch(70.5% .015 286.067);--color-zinc-500: oklch(55.2% .016 285.938);--color-zinc-600: oklch(44.2% .017 285.786);--color-zinc-800: oklch(27.4% .006 286.033);--color-zinc-900: oklch(21% .006 285.885);--color-white: #fff;--font-sans: "Inter", ui-sans-serif, system-ui, sans-serif;--font-jp: "Noto Sans JP", sans-serif;--color-zen-black: #1a1a1a;--color-zen-white: #ffffff;--font-mincho: "Noto Sans JP", sans-serif;--font-klee: "Patrick Hand", "Klee One", cursive}body{font-family:var(--font-sans);background-color:var(--color-zen-white);color:var(--color-zen-black)}body{-webkit-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none}input,textarea,[contenteditable=true],[contenteditable=""]{-webkit-user-select:text;-ms-user-select:text;user-select:text;-webkit-touch-callout:default}.font-jp{font-family:var(--font-jp)}.font-mincho{font-family:var(--font-mincho)}.font-klee{font-family:var(--font-klee)}@media print{body:has(.luyende-print-root){position:static!important;top:auto!important;overflow:visible!important}@page{size:A4 portrait;margin:0}.exam-vocab-print-root{position:static!important;inset:auto!important}.luyende-print-root{display:none!important}.a4-wrapper{display:block!important;margin:0!important;padding:0!important;box-shadow:none!important;transform:none!important;zoom:1!important;filter:none!important}.a4-page{width:210mm!important;height:297mm!important;max-height:297mm!important;margin:0!important;page-break-after:always!important;page-break-inside:avoid!important;break-after:page!important;break-inside:avoid!important;box-shadow:none!important;border:none!important}.a4-page:last-child,.a4-wrapper:last-child .a4-page{page-break-after:avoid!important;break-after:avoid!important}*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}}.story-content red{color:#ef4444;font-weight:700}.story-content blue{color:#3b82f6;font-weight:700}.story-content green{color:#22c55e;font-weight:700}.story-content yellow{color:#eab308;font-weight:700}.story-content b{font-weight:900;color:#111827}.hide-scrollbar::-webkit-scrollbar{display:none}.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}@media(min-width:1024px)and (hover:hover)and (pointer:fine){.hide-scrollbar-md::-webkit-scrollbar{display:none}.hide-scrollbar-md{-ms-overflow-style:none;scrollbar-width:none}}@keyframes shimmer-sweep-once{0%{background-position:110% 0}73.7%{background-position:-160% 0}to{background-position:-160% 0}}.shimmer-overlay{background-image:linear-gradient(100deg,transparent 42%,rgba(255,255,255,.95) 50%,transparent 58%);background-size:320% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shimmer-sweep-once 3.8s ease-out infinite;pointer-events:none}@keyframes shimmer-surface-sweep{0%{transform:translate(-45%) skew(-20deg)}to{transform:translate(160%) skew(-20deg)}}.shimmer-surface{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.55) 50%,transparent 70%);animation:shimmer-surface-sweep .9s ease-in-out 1 forwards;pointer-events:none}.kanji-branch{fill:none;stroke:#2f7df6;stroke-width:2.5;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:100;opacity:0;transition:stroke-dashoffset .3s ease-out,opacity .3s ease-out}.kanji-branch-1{transition-duration:.15s;transition-delay:.3s}.kanji-branch-2{transition-delay:.2s}.kanji-branch-3{transition-delay:.1s}.kanji-branch-4{transition-delay:0s}.kanji-node{opacity:0;transform:scale(.4);transition:opacity .3s ease-out,transform .3s ease-out}.kanji-node-1{transition-delay:.3s}.kanji-node-2{transition-delay:.2s}.kanji-node-3{transition-delay:.1s}.kanji-node-4{transition-delay:0s}.kanji-illustration-reset .kanji-branch,.kanji-illustration-reset .kanji-node,.kanji-illustration-reset .kanji-glow{transition:none!important}.kanji-illustration-active .kanji-branch-1{stroke-dashoffset:0;opacity:.75;transition-delay:0s}.kanji-illustration-active .kanji-branch-2{stroke-dashoffset:0;opacity:.75;transition-delay:.15s}.kanji-illustration-active .kanji-branch-3{stroke-dashoffset:0;opacity:.75;transition-delay:.45s}.kanji-illustration-active .kanji-branch-4{stroke-dashoffset:0;opacity:.75;transition-delay:.75s}.kanji-illustration-active .kanji-node-1{opacity:1;transform:scale(1);transition-delay:.15s}.kanji-illustration-active .kanji-node-2{opacity:1;transform:scale(1);transition-delay:.45s}.kanji-illustration-active .kanji-node-3{opacity:1;transform:scale(1);transition-delay:.75s}.kanji-illustration-active .kanji-node-4{opacity:1;transform:scale(1);transition-delay:1.05s}.kanji-glow{opacity:0;transition:opacity .4s ease-out}.kanji-illustration-active .kanji-glow{opacity:.16}.kanji-illustration svg{transition:filter .4s ease-out}.kanji-illustration-active svg{filter:drop-shadow(0 8px 12px rgba(26,42,84,.18))}@media(hover:hover){.kanji-illustration:hover .kanji-branch-1{stroke-dashoffset:0;opacity:.75;transition-delay:0s}.kanji-illustration:hover .kanji-branch-2{stroke-dashoffset:0;opacity:.75;transition-delay:.15s}.kanji-illustration:hover .kanji-branch-3{stroke-dashoffset:0;opacity:.75;transition-delay:.45s}.kanji-illustration:hover .kanji-branch-4{stroke-dashoffset:0;opacity:.75;transition-delay:.75s}.kanji-illustration:hover .kanji-node-1{opacity:1;transform:scale(1);transition-delay:.15s}.kanji-illustration:hover .kanji-node-2{opacity:1;transform:scale(1);transition-delay:.45s}.kanji-illustration:hover .kanji-node-3{opacity:1;transform:scale(1);transition-delay:.75s}.kanji-illustration:hover .kanji-node-4{opacity:1;transform:scale(1);transition-delay:1.05s}.kanji-illustration:hover .kanji-glow{opacity:.16}.kanji-illustration:hover svg{filter:drop-shadow(0 8px 12px rgba(26,42,84,.18))}}@media(max-width:1023px){.kanji-branch,.kanji-node,.kanji-glow,.kanji-illustration svg{transition:none}.kanji-branch{stroke-dashoffset:0;opacity:.75}.kanji-node{opacity:1;transform:scale(1)}.kanji-glow{opacity:.16}}.vocab-stack{position:relative}.vocab-stack-reset .vocab-flashcard{transition:none!important}.vocab-flashcard{position:absolute;left:50%;top:50%;width:128px;height:96px;padding:8px;box-shadow:0 10px 20px -6px #0f172a2e;transition:transform .45s cubic-bezier(.34,1.3,.64,1),opacity .35s ease-out}.vocab-flashcard-shadow{transform:translate(-50%,-50%) translate(10px,12px) rotate(4deg);z-index:0;opacity:0;transition:transform .45s cubic-bezier(.34,1.3,.64,1),opacity .8s ease-out}.vocab-stack-active .vocab-flashcard-shadow{opacity:1;transition-delay:0s}@media(hover:hover){.vocab-stack:hover .vocab-flashcard-shadow{opacity:1;transition-delay:0s}}.vocab-flashcard-base{transform:translate(-50%,-50%);z-index:1}.vocab-flashcard-3{transform:translate(-50%,-50%) translate(3px,4px) rotate(-3deg);z-index:2}.vocab-flashcard-2{transform:translate(-50%,-50%) translate(-2px,2px) rotate(3deg);z-index:3;transition-delay:.15s}.vocab-flashcard-1{transform:translate(-50%,-50%) translate(1px,-3px) rotate(-2deg);z-index:4;transition-delay:.3s}.vocab-stack-active .vocab-flashcard-1{transform:translate(-50%,-50%) translate(-62px,-46px) rotate(-22deg);opacity:0;transition-duration:.45s,.7s;transition-delay:0s}.vocab-stack-active .vocab-flashcard-2{transform:translate(-50%,-50%) translateY(56px) rotate(12deg);opacity:0;transition-duration:.45s,.7s;transition-delay:.15s}.vocab-stack-active .vocab-flashcard-3{transform:translate(-50%,-50%) translate(60px,-36px) rotate(20deg);opacity:0;transition-duration:.45s,.7s;transition-delay:.3s}@media(hover:hover){.vocab-stack:hover .vocab-flashcard-1{transform:translate(-50%,-50%) translate(-62px,-46px) rotate(-22deg);opacity:0;transition-duration:.45s,.7s;transition-delay:0s}.vocab-stack:hover .vocab-flashcard-2{transform:translate(-50%,-50%) translateY(56px) rotate(12deg);opacity:0;transition-duration:.45s,.7s;transition-delay:.15s}.vocab-stack:hover .vocab-flashcard-3{transform:translate(-50%,-50%) translate(60px,-36px) rotate(20deg);opacity:0;transition-duration:.45s,.7s;transition-delay:.3s}}.custom-scrollbar::-webkit-scrollbar{width:6px}.custom-scrollbar::-webkit-scrollbar-track{background:transparent;border-radius:10px}.custom-scrollbar::-webkit-scrollbar-thumb{background-color:var(--color-zinc-200);border-radius:10px}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background-color:var(--color-zinc-400)}@keyframes drawStroke{0%{stroke-dashoffset:500;opacity:0}10%{opacity:1}to{stroke-dashoffset:0;opacity:1}}@keyframes fadeInNumber{to{opacity:.7}}.stroke-anim-path{fill:none;stroke:#18181b;stroke-width:4px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:500;stroke-dashoffset:500;opacity:0;animation-name:drawStroke;animation-timing-function:ease-out;animation-fill-mode:forwards}@keyframes hintStrokeDraw{0%{stroke-dashoffset:500}to{stroke-dashoffset:0}}.hint-stroke-path{fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:500;stroke-dashoffset:500;animation-name:hintStrokeDraw;animation-duration:1.4s;animation-timing-function:ease-out;animation-fill-mode:forwards}.stroke-number{font-size:8px;fill:#999;font-family:sans-serif;opacity:0;animation:fadeInNumber .5s forwards}[transform-style=preserve-3d]{perspective:1000px}.exit-left{transform:translate(-150%) rotate(-15deg);opacity:0;transition:all .4s ease-in}.exit-right{transform:translate(150%) rotate(15deg);opacity:0;transition:all .4s ease-in}@keyframes calendar-drop{0%{opacity:0;transform:translateY(-18px) rotate(-5deg) scale(.92)}55%{opacity:1;transform:translateY(3px) rotate(1.5deg) scale(1.02)}to{opacity:1;transform:translateY(0) rotate(0) scale(1)}}.calendar-widget{animation:calendar-drop .8s cubic-bezier(.34,1.56,.64,1) both}@keyframes calendar-sway{0%,to{transform:rotate(0)}25%{transform:rotate(1.2deg)}75%{transform:rotate(-1.2deg)}}.calendar-sway{transform-origin:top center;animation:calendar-sway 7s ease-in-out .8s infinite;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.calendar-sway.kod-paused,.shimmer-overlay.kod-paused{animation-play-state:paused}@media(prefers-reduced-motion:reduce){.calendar-widget,.calendar-sway,.highlight-glow,.highlight-glow-flat{animation:none!important}}@keyframes highlight-glow{0%{box-shadow:0 0 #2f7df600,0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a}12%{box-shadow:0 0 0 9px #2f7df666,0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a}28%{box-shadow:0 0 #2f7df600,0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a}45%{box-shadow:0 0 0 9px #2f7df666,0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a}to{box-shadow:0 0 #2f7df600,0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a}}.highlight-glow{animation:highlight-glow 2.6s ease-in-out 1 forwards}@keyframes highlight-glow-flat{0%{box-shadow:0 0 #2f7df600}12%{box-shadow:0 0 0 9px #2f7df666}28%{box-shadow:0 0 #2f7df600}45%{box-shadow:0 0 0 9px #2f7df666}to{box-shadow:0 0 #2f7df600}}.highlight-glow-flat{animation:highlight-glow-flat 2.6s ease-in-out 1 forwards}
