@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:400;font-display:swap;src:url(./noto-sans-thai-thai-400-normal-BEOmKAI1.woff2)format("woff2")}@font-face{font-family:Noto Sans Thai;font-style:normal;font-weight:600;font-display:swap;src:url(./noto-sans-thai-thai-600-normal-Cs73sVjl.woff2)format("woff2")}@font-face{font-family:Noto Sans JP;font-style:normal;font-weight:400;font-display:swap;src:url(./noto-sans-jp-japanese-400-normal-C7ZJEbOP.woff2)format("woff2")}:root{font-synthesis:weight;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f6f7f2;--surface:#fff;--surface-soft:#f0f3ed;--text:#263d34;--muted:#627168;--line:#dce3d9;--primary:#236453;--on-primary:#fff;--primary-soft:#e4eee5;--hero:#edf2e8;--amber:#865b22;--amber-soft:#f8eddb;--blue:#3c627b;--blue-soft:#e6edf2;--purple:#6c5189;--purple-soft:#eee8f5;--red:#a83e38;--red-soft:#faebe8;--ring:#397660;--radius:18px;--shadow:0 5px 22px #203b2806;--reader-scale:1;--app-safe-top:var(--safe-area-inset-top,env(safe-area-inset-top,0px));--app-safe-right:var(--safe-area-inset-right,env(safe-area-inset-right,0px));--app-safe-bottom:var(--safe-area-inset-bottom,env(safe-area-inset-bottom,0px));--app-safe-left:var(--safe-area-inset-left,env(safe-area-inset-left,0px));font-family:Noto Sans Thai,Noto Sans JP,system-ui,sans-serif}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#141e19;--surface:#1c2922;--surface-soft:#23352a;--text:#eaf1e8;--muted:#b1bdb0;--line:#3e5143;--primary:#b5d7b0;--on-primary:#1b382a;--primary-soft:#2b4433;--hero:#243b2e;--amber:#e8c48e;--amber-soft:#423524;--blue:#b3d2e8;--blue-soft:#293a44;--purple:#d1b9ec;--purple-soft:#3b2e48;--red:#ffb1a8;--red-soft:#482f2c;--ring:#b5d7b0;--shadow:none}*{box-sizing:border-box}html{font-size:calc(100% * var(--reader-scale));scrollbar-gutter:stable;scroll-padding-block:2rem}body{background:var(--bg);color:var(--text);margin:0;font-size:1rem;line-height:1.65}button,input,select,textarea{font:inherit;color:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,summary,a{touch-action:manipulation}button{cursor:pointer;min-block-size:44px}button:disabled{cursor:default;opacity:.55}a{color:inherit;text-decoration:none}a,button,input,select,summary{outline-offset:4px}:focus-visible{outline:3px solid var(--ring)}main:focus{outline:none}input,select{border:1px solid var(--line);background:var(--surface);border-radius:10px;min-block-size:46px;min-inline-size:0;padding:.65rem .85rem}input:not([type=checkbox]):not([type=file]){inline-size:100%}input[type=checkbox]{accent-color:var(--primary);flex-shrink:0;block-size:20px;min-block-size:20px;inline-size:20px}input::placeholder{color:var(--muted)}select{max-inline-size:100%}p{margin:0 0 1rem}p:last-child{margin-block-end:0}h1,h2,h3{overflow-wrap:anywhere;margin:0;font-weight:600;line-height:1.45}h1{letter-spacing:-.035em;text-wrap:balance;font-size:clamp(1.65rem,1.2rem + 1.4vw,2.25rem)}h2{font-size:1.15rem}h3{font-size:1rem}svg{flex-shrink:0;display:block}button svg{pointer-events:none}img{block-size:auto;max-inline-size:100%}small,.tiny{font-size:.8rem}.muted{color:var(--muted)}.eyebrow{letter-spacing:.06em;color:var(--muted);margin-block-end:.4rem;font-size:.75rem;font-weight:600}.center{text-align:center}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;block-size:1px;inline-size:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--primary);color:var(--on-primary);border-radius:10px;padding:12px 20px;position:fixed;inset-block-start:-100px;inset-inline-start:16px}.skip-link:focus{inset-block-start:12px}.button{border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:.7rem;min-block-size:46px;padding:.7rem 1.1rem;font-size:.9rem;font-weight:600;line-height:1.5;transition:background .18s,border-color .18s,box-shadow .18s;display:inline-flex}.button.primary{background:var(--primary);color:var(--on-primary)}.button.secondary{background:var(--surface);color:var(--text);border-color:var(--line)}@media (width>=992px) and (hover:hover) and (pointer:fine){.button:hover:not(:disabled){box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 12%, transparent)}}.button:active:not(:disabled){filter:brightness(.94)}.button-group{flex-wrap:wrap;gap:.75rem;display:flex}.text-link{color:var(--primary);background:0 0;border:0;align-items:center;gap:.4rem;min-block-size:44px;padding:0;font-size:.85rem;font-weight:600;display:inline-flex}@media (width>=992px) and (hover:hover) and (pointer:fine){.text-link:hover{text-decoration:underline}}.icon-button{min-block-size:44px;min-inline-size:44px;color:var(--muted);background:0 0;border:0;border-radius:10px;justify-content:center;align-items:center;padding:.5rem;display:inline-flex}@media (width>=992px) and (hover:hover) and (pointer:fine){.icon-button:hover{background:var(--primary-soft);color:var(--primary)}}.icon-button.saved{color:var(--primary)}.inline-actions{flex-shrink:0;display:flex}.row-between{justify-content:space-between;align-items:center;gap:.75rem;min-inline-size:0;display:flex}.row-between>h2,.row-between>h3{min-inline-size:0}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}.pill{background:var(--surface-soft);color:var(--muted);border-radius:7px;padding:.3rem .65rem;font-size:.75rem;display:inline-block}.notice{background:var(--primary-soft);color:var(--text);overflow-wrap:anywhere;border-radius:12px;margin-block:1.5rem;padding:1rem 1.2rem;font-size:.85rem}.notice.error{background:var(--red-soft);color:var(--red)}.notice button{margin-inline-start:1rem}.empty{text-align:center;max-inline-size:720px;margin:3rem auto;padding:3rem 1.5rem}.empty>svg{color:var(--primary);margin:0 auto 1rem}.empty h2{margin-block-end:.6rem;font-size:1.3rem}.empty p{max-inline-size:48ch;margin:0 auto 1.5rem}.progress-track{background:var(--line);border-radius:10px;block-size:6px;overflow:clip}.progress-track>span{background:var(--primary);border-radius:inherit;block-size:100%;transition:inline-size .2s ease-out;display:block}.section-title{justify-content:space-between;align-items:center;gap:1rem;margin-block:1.75rem 1rem;display:flex}.section-title h2{font-size:1.15rem}.page-heading{justify-content:space-between;align-items:center;gap:1.25rem;margin-block-end:1.75rem;display:flex}.page-heading .muted{margin-block-start:.4rem;font-size:.95rem}.back-link{min-block-size:44px;color:var(--muted);align-items:center;gap:.5rem;margin-block-end:1rem;font-size:.85rem;display:inline-flex}@media (width>=992px) and (hover:hover) and (pointer:fine){.back-link:hover{color:var(--primary)}}.app-layout{min-block-size:100dvh;padding:var(--app-safe-top) var(--app-safe-right) 0 var(--app-safe-left);grid-template-columns:232px minmax(0,1fr);display:grid}.sidebar{border-inline-end:1px solid var(--line);background:var(--surface);flex-direction:column;block-size:100dvh;padding:2.2rem 1.25rem 1.2rem;display:flex;position:sticky;inset-block-start:0}.brand{letter-spacing:-.08em;align-items:center;gap:.7rem;padding-inline:.5rem;font-size:1.9rem;font-weight:600;line-height:1;display:flex}.brand-stamp{background:var(--primary);block-size:45px;inline-size:42px;color:var(--on-primary);letter-spacing:0;border-radius:13px 13px 13px 4px;place-items:center;font-size:1.6rem;display:grid}.brand-sub{letter-spacing:0;color:var(--muted);margin-block-start:8px;font-size:.61rem;font-weight:400;line-height:1.5;display:block}.sidebar-caption{color:var(--muted);margin:3rem .75rem .8rem;font-size:.72rem}.sidebar nav{gap:.4rem;display:grid}.nav-item{min-block-size:49px;color:var(--muted);border-radius:10px;align-items:center;gap:.8rem;padding:.7rem .9rem;font-size:.9rem;display:flex}@media (width>=992px) and (hover:hover) and (pointer:fine){.nav-item:hover{background:var(--surface-soft);color:var(--primary)}}.nav-item.active{background:var(--primary-soft);color:var(--primary);font-weight:600}.nav-dot{background:currentColor;border-radius:50%;block-size:6px;inline-size:6px;margin-inline-start:auto}.sidebar-bottom{margin-block-start:auto}.small-journal{border-block-start:1px solid var(--line);margin:2rem .5rem 1.2rem;padding:1.4rem 1rem}.small-journal>span{letter-spacing:.25em;font-family:Yu Mincho,Noto Sans JP,serif;font-size:1.4rem}.small-journal p{margin:.5rem 0 .15rem;font-size:.85rem}.small-journal small{color:var(--muted);font-size:.7rem}.version{color:var(--muted);padding:.8rem .9rem 0;font-size:.68rem;display:block}.workspace{min-inline-size:0}.topbar{border-block-end:1px solid var(--line);align-items:center;gap:1.5rem;min-block-size:88px;padding:1rem clamp(1.5rem,3vw,3.5rem);display:flex}.breadcrumb{white-space:nowrap;align-items:center;gap:.6rem;font-size:.8rem;display:flex}.breadcrumb>.desktop-only{color:var(--muted)}.quick-search{max-inline-size:300px;color:var(--muted);flex:1;align-items:center;gap:.6rem;margin-inline-start:auto;display:flex}.quick-search input{background:0 0;border:0;min-block-size:44px;padding:.5rem 0;font-size:.8rem}.topbar-actions{align-items:center;gap:.6rem;margin-inline-start:auto;display:flex}.sync-label{min-block-size:44px;color:var(--muted);white-space:nowrap;align-items:center;gap:.4rem;font-size:.7rem;display:flex}.avatar{background:var(--primary-soft);border:1px solid var(--line);min-block-size:40px;min-inline-size:40px;color:var(--primary);border-radius:50%;place-items:center;font-size:.85rem;font-weight:600;display:grid}.avatar.large{block-size:55px;inline-size:55px}.main-content{min-block-size:calc(100dvh - 165px);max-inline-size:1330px;margin-inline:auto;padding:2.3rem clamp(1.5rem,3vw,3.5rem) 2rem}.page-footer{border-block-start:1px solid var(--line);color:var(--muted);justify-content:space-between;gap:1rem;padding:1.25rem clamp(1.5rem,3vw,3.5rem);font-size:.68rem;display:flex}.mobile-nav{display:none}.toast{z-index:80;background:var(--text);color:var(--bg);visibility:hidden;opacity:0;overflow-wrap:anywhere;border-radius:12px;max-inline-size:min(90vw,560px);padding:.9rem 1.4rem;font-size:.85rem;transition:opacity .2s;position:fixed;inset-block-end:calc(24px + var(--app-safe-bottom));inset-inline-start:50%;translate:-50%;box-shadow:0 5px 35px #0002}.toast.visible{visibility:visible;opacity:1}.loading{color:var(--muted);padding:3rem}.update-banner{background:var(--primary-soft);flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;padding:.6rem 1.5rem;font-size:.8rem;display:flex}.update-banner button{background:0 0;border:0;align-items:center;gap:.5rem;font-weight:600;display:flex}.spinning{animation:1.4s linear infinite spin}@keyframes spin{to{rotate:360deg}}.fatal-error{max-inline-size:700px;margin:4rem auto;padding:2rem}.daily-grid{grid-template-columns:minmax(0,1.9fr) minmax(245px,1fr);gap:1.25rem;display:grid}.continue-card{background:var(--hero);border:1px solid var(--line);border-radius:var(--radius);align-items:center;min-block-size:330px;padding:2rem 1.8rem;display:flex;position:relative}.continue-copy{z-index:1;flex:1;min-inline-size:0;position:relative}.label-with-dot{color:var(--primary);align-items:center;gap:.45rem;font-size:.75rem;font-weight:600;display:inline-flex}.label-with-dot:before{content:"";background:currentColor;border-radius:50%;block-size:6px;inline-size:6px}.lesson-kicker{letter-spacing:.08em;color:var(--muted);margin-block:1.65rem .5rem;font-size:.64rem}.continue-copy h2{text-wrap:balance;max-inline-size:24ch;font-size:clamp(1.25rem,1rem + .6vw,1.65rem)}.continue-copy p{color:var(--muted);margin-block:.7rem 1.5rem;font-size:.8rem}.journal-art{aspect-ratio:.78;flex-shrink:0;align-self:center;place-items:center;inline-size:185px;margin-inline-start:1rem;display:grid;position:relative;rotate:7deg}.journal-page{color:#33553d;background-color:#fffdf6;background-image:linear-gradient(#294d3a0c 1px,#0000 1px),linear-gradient(90deg,#294d3a0c 1px,#0000 1px);background-position:0 0;background-repeat:repeat;background-size:24px 24px;background-attachment:scroll;background-origin:padding-box;background-clip:border-box;border-inline-start:8px solid #c5d1ba;border-radius:4px 10px 10px 4px;flex-direction:column;justify-content:center;align-items:center;block-size:90%;inline-size:83%;display:flex;position:relative;box-shadow:6px 8px #d7ddcd,8px 11px 22px #1c38251a}.journal-kanji{font-family:Yu Mincho,Noto Sans JP,serif;font-size:5.4rem;line-height:1.4}.journal-caption{letter-spacing:.05em;font-size:.6rem}.journal-rule{background:#839b763b;block-size:1px;inline-size:75%;margin-block:.7rem}.journal-tab{clip-path:polygon(0 0,100% 0,100% 100%,50% 83%,0 100%);background:#ba7959;block-size:40px;inline-size:13px;position:absolute;inset-block-start:7%;inset-inline-end:7%}.journal-pencil{background:#bc8d58;border-inline:2px solid #e0bf8a;border-radius:3px;block-size:170px;inline-size:7px;position:absolute;inset-block-end:0;inset-inline-end:0;rotate:17deg}.journal-pencil:after{content:"";clip-path:polygon(0 0,100% 0,50% 100%);background:#d1bba0;block-size:18px;inline-size:7px;position:absolute;inset-block-end:-16px;inset-inline-start:-2px}.review-card{color:#f8fbf2;border-radius:var(--radius);background:#236453;flex-direction:column;align-items:flex-start;padding:1.6rem;display:flex}.review-card .row-between{inline-size:100%}.review-card .round-icon{background:#ffffff15;border-radius:12px;place-items:center;block-size:45px;inline-size:45px;display:grid}.review-card .pill{color:#e2eee3;background:#ffffff12;font-size:.65rem}.big-count{letter-spacing:-.04em;margin-block:.85rem .1rem;font-size:3.8rem;font-weight:600;line-height:1.25}.big-count>span{letter-spacing:0;color:#d9e9dc;margin-inline-start:.6rem;font-size:.9rem}.review-card h2{margin-block-end:.4rem;font-size:1.05rem}.review-card p{color:#deebe0;margin-block-end:1.2rem;font-size:.77rem}.review-button{color:#234c3e;background:#fffef1;justify-content:space-between;inline-size:100%;margin-block-start:auto;font-size:.82rem}.stats-strip{border:1px solid var(--line);background:var(--surface);border-radius:14px;grid-template-columns:repeat(3,minmax(0,1fr));margin-block:1.4rem 2rem;padding:1.25rem 0;display:grid}.stats-strip>div{border-inline-end:1px solid var(--line);align-items:center;gap:.85rem;padding-inline:1.5rem;display:flex}.stats-strip>div:last-child{border:0}.stats-strip>div>div{flex:1;min-inline-size:0}.stats-strip strong{font-size:1.45rem;font-weight:600;line-height:1.4;display:block}.stats-strip strong small{color:var(--muted);font-size:.8rem;font-weight:400}.stats-strip strong+span{color:var(--muted);font-size:.7rem}.stat-icon{border-radius:12px;flex-shrink:0;place-items:center;block-size:46px;inline-size:46px;display:grid}.stat-icon.green{background:var(--primary-soft);color:var(--primary)}.stat-icon.amber{background:var(--amber-soft);color:var(--amber)}.stat-icon.blue{background:var(--blue-soft);color:var(--blue)}.stat-icon.purple{background:var(--purple-soft);color:var(--purple)}.stat-icon.red{background:var(--red-soft);color:var(--red)}.goal-stat .progress-track{block-size:4px;margin-block-start:.4rem}.home-lower{grid-template-columns:minmax(0,1.5fr) minmax(250px,1fr);gap:1.5rem;display:grid}.home-lower .section-title{margin-block:0 1rem}.lesson-short-list{gap:.65rem;display:grid}.lesson-short{border:1px solid var(--line);background:var(--surface);border-radius:13px;align-items:center;gap:1rem;min-block-size:91px;padding:.9rem 1.1rem;transition:border-color .2s;display:flex}@media (width>=992px) and (hover:hover) and (pointer:fine){.lesson-short:hover{border-color:var(--primary)}}.lesson-short>div{flex:1;min-inline-size:0}.lesson-short h3{-webkit-line-clamp:1;line-clamp:1;-webkit-box-orient:vertical;margin-block:.15rem;font-size:.85rem;display:-webkit-box;overflow:clip}.lesson-short>svg{color:var(--muted)}.lesson-number{border:1px solid var(--line);min-block-size:48px;inline-size:44px;color:var(--primary);background:var(--surface-soft);letter-spacing:-.03em;border-radius:10px;flex-shrink:0;place-items:center;font-size:1.15rem;font-weight:600;display:grid}.week-panel{align-self:stretch;padding:1.5rem}.week-panel h2{font-size:.95rem}.week-panel>.row-between{flex-wrap:wrap}.week-days{justify-content:space-between;gap:.35rem;margin-block:1.65rem 1rem;display:flex}.week-days>div{flex-direction:column;align-items:center;gap:.45rem;display:flex}.day-dot{background:var(--surface-soft);border:1px solid var(--line);block-size:31px;inline-size:31px;color:var(--muted);border-radius:50%;place-items:center;display:grid}.day-dot i{background:var(--line);border-radius:50%;block-size:4px;inline-size:4px}.day-dot.today{border:1px solid var(--primary)}.day-dot.today>span{background:var(--primary);border-radius:50%;block-size:6px;inline-size:6px}.day-dot.studied{background:var(--primary);color:var(--on-primary);border-color:var(--primary)}.week-days small{color:var(--muted);font-size:.65rem}.week-panel>p{font-size:.78rem;line-height:1.8}.weekly-total{border-block-start:1px solid var(--line);justify-content:space-between;margin-block-start:1rem;padding-block-start:1rem;font-size:.72rem;display:flex}.weekly-total strong{color:var(--primary)}.quick-practice{grid-template-columns:1fr 1fr;gap:1.25rem;display:grid}.quick-practice>a{border:1px solid var(--line);background:var(--surface);border-radius:14px;align-items:center;gap:1rem;padding:1.2rem;transition:border-color .2s;display:flex}@media (width>=992px) and (hover:hover) and (pointer:fine){.quick-practice>a:hover{border-color:var(--primary)}}.quick-practice>a>div{flex:1;min-inline-size:0}.quick-practice h3{font-size:.9rem}.quick-practice p{margin-block-start:.25rem;font-size:.72rem}.catalog-toolbar{flex-wrap:wrap;align-items:center;gap:1rem;margin-block-end:1.25rem;display:flex}.search-field{border:1px solid var(--line);background:var(--surface);min-inline-size:min(250px,100%);color:var(--muted);border-radius:11px;flex:1;align-items:center;gap:.7rem;padding-inline:1rem;display:flex}.search-field input{background:0 0;border:0;padding-inline:0;font-size:.9rem}.large-search{padding-block:.3rem}.segmented{background:var(--surface-soft);border:1px solid var(--line);border-radius:10px;gap:3px;padding:3px;display:flex}.segmented button{color:var(--muted);background:0 0;border:0;border-radius:7px;padding:.5rem 1.1rem;font-size:.85rem}.segmented button.selected{background:var(--surface);color:var(--primary);box-shadow:var(--shadow)}.catalog-meta{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:1rem;margin-block:1rem;font-size:.75rem;display:flex}.lesson-grid{grid-template-columns:repeat(auto-fill,minmax(min(260px,100%),1fr));gap:1rem;display:grid}.lesson-card{flex-direction:column;min-block-size:230px;padding:1.4rem;transition:border-color .2s;display:flex}@media (width>=992px) and (hover:hover) and (pointer:fine){.lesson-card:hover:not(.unavailable){border-color:var(--primary)}}.lesson-card h2{-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;margin-block:1.15rem .5rem;font-size:1.05rem;display:-webkit-box;overflow:clip}.lesson-card-footer{border-block-start:1px solid var(--line);color:var(--primary);justify-content:space-between;align-items:center;margin-block-start:auto;padding-block-start:.85rem;font-size:.8rem;display:flex}.lesson-card.unavailable{box-shadow:none;color:var(--muted);background:0 0}.lesson-card.unavailable .lesson-card-footer{color:var(--muted)}.done-mark{color:var(--primary);align-items:center;gap:.3rem;font-size:.72rem;display:inline-flex}.lesson-summary{background:var(--surface);border:1px solid var(--line);border-radius:12px;flex-wrap:wrap;align-items:center;gap:.7rem 1.2rem;margin-block-end:1.25rem;padding:1rem 1.3rem;font-size:.8rem;display:flex}.lesson-summary>span{color:var(--muted);align-items:center;gap:.4rem;display:flex}.lesson-summary>a{margin-inline-start:auto}.section-tabs{border-block-end:1px solid var(--line);flex-wrap:wrap;gap:.5rem;margin-block:1rem 1.5rem;display:flex}.section-tabs button{color:var(--muted);background:0 0;border:0;border-block-end:2px solid #0000;padding:.7rem 1rem;font-size:.85rem}.section-tabs button.active{border-block-end-color:var(--primary);color:var(--primary);font-weight:600}.reading-column{max-inline-size:900px}.grammar-note{margin-block-end:1.1rem;padding:1.75rem}.grammar-note h2{margin-block:.7rem 1rem;font-size:1.25rem}.grammar-note>p,.word-card>p{font-size:.95rem;line-height:1.9}.example{background:var(--surface-soft);border-inline-start:3px solid var(--primary);border-radius:0 10px 10px 0;align-items:flex-start;gap:.7rem;margin-block-start:1rem;padding:1rem 1.1rem;display:flex}.example>div{flex:1;min-inline-size:0}.example p[lang=ja]{overflow-wrap:anywhere;font-family:Noto Sans JP,sans-serif;font-size:1rem;line-height:1.9}.example .muted{margin-block-start:.3rem;font-size:.82rem}.dialogue-line{border-block-end:1px solid var(--line);align-items:flex-start;gap:1rem;padding-block:1.2rem;display:flex}.dialogue-line:last-child{border:0}.dialogue-line>div{flex:1;min-inline-size:0}.dialogue-line p{margin-block-end:.4rem;font-size:1rem}.dialogue-line .muted{font-size:.82rem}.speaker{background:var(--primary-soft);color:var(--primary);overflow-wrap:anywhere;border-radius:8px;max-inline-size:95px;padding:.4rem .6rem;font-size:.75rem}.word-grid{grid-template-columns:repeat(auto-fill,minmax(min(285px,100%),1fr));gap:1rem;display:grid}.word-card{min-inline-size:0;padding:1.3rem}.word-card h2,.word-card h3{font-size:1.2rem}.word-card>p{margin-block:.4rem}.romaji{color:var(--muted);overflow-wrap:anywhere;font-family:Noto Sans JP,system-ui,sans-serif;font-size:.8rem}.word-card .romaji{font-size:.8rem}.kanji-character{line-height:1.6;font-family:Noto Sans JP,sans-serif!important;font-size:2.4rem!important}.word-footer{flex-wrap:wrap;gap:.5rem;margin-block-start:.5rem;display:flex}.word-footer a{min-block-size:44px;color:var(--primary);align-items:center;gap:.2rem;font-size:.75rem;display:inline-flex}.word-card details{margin-block-start:.7rem;font-size:.85rem}summary{cursor:pointer;min-block-size:44px;color:var(--primary);overflow-wrap:anywhere;padding-block:.55rem}.dictionary-example{background:var(--surface-soft);border-radius:6px;margin-block:.4rem;padding:.6rem;font-size:.85rem}.line-clamp{-webkit-line-clamp:4;line-clamp:4;-webkit-box-orient:vertical;display:-webkit-box;overflow:clip}.load-more{margin:2rem auto;display:flex}.lesson-end{background:var(--hero);justify-content:space-between;align-items:center;gap:1rem;margin-block:2rem 1rem;padding:1.5rem;display:flex}.lesson-end p{margin-block-start:.3rem;font-size:.85rem}.lesson-navigation{margin-block:1.5rem 0}.practice-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem;display:grid}.practice-card{flex-direction:column;padding:1.5rem;transition:border-color .2s;display:flex}@media (width>=992px) and (hover:hover) and (pointer:fine){.practice-card:hover{border-color:var(--primary)}}.practice-card h2{margin-block:1.4rem .5rem}.practice-card p{font-size:.85rem}.practice-meta{color:var(--primary);margin-block-start:auto;padding-block-start:.7rem}.setup-panel{max-inline-size:650px;margin-block-end:1rem;padding:2rem}.setup-panel>label:first-child{margin-block-end:.6rem;display:block}.setup-panel>select{inline-size:100%;margin-block-end:1rem}.setup-panel>.button{margin-block-start:1.5rem}.checkbox-row{align-items:center;gap:.65rem;min-block-size:44px;padding-block:.5rem;font-size:.9rem;display:flex}.session-controls{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:1rem;max-inline-size:800px;margin-block-end:1.5rem;margin-inline:auto;display:flex}.session-controls label{flex-direction:column;flex:1;gap:.4rem;min-inline-size:0;font-size:.8rem;display:flex}.session-controls select{inline-size:100%;min-inline-size:0;font-size:.9rem}.study-session{max-inline-size:800px;margin-inline:auto}.session-meta{margin-block:.8rem;font-size:.8rem}.session-meta>span{align-items:center;gap:.4rem;display:flex}.flashcard{margin-block:1.25rem;padding:1.2rem}.card-flip{background:0 0;border:0;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-block-size:315px;inline-size:100%;padding:1rem;display:flex}@media (width>=992px) and (hover:hover) and (pointer:fine){.card-flip:hover{background:var(--surface-soft)}}.flash-front{overflow-wrap:anywhere;max-inline-size:100%;font-family:Noto Sans JP,sans-serif;font-size:clamp(2.5rem,2rem + 3vw,4.6rem);line-height:1.6}.flip-hint{color:var(--muted);align-items:center;gap:.4rem;margin-block-start:1rem;font-size:.8rem;display:flex}.flash-answer{border-block-start:1px solid var(--line);inline-size:100%;padding-block-start:1rem}.flash-answer h2{margin-block:.5rem;font-size:1.15rem}.rating-row{grid-template-columns:1fr 1fr;gap:1rem;margin-block-end:1rem;display:grid}.question-card{margin-block:1.25rem;padding:2rem}.question-prompt{overflow-wrap:anywhere;margin-block:1.75rem 1rem;font-family:Noto Sans JP,sans-serif;font-size:1.4rem;line-height:1.9}.question-translation{font-size:.9rem;line-height:1.8}.question-options{gap:.75rem;margin-block-start:1.5rem;display:grid}.option-button{text-align:start;border:1px solid var(--line);background:var(--surface);border-radius:11px;align-items:center;gap:.9rem;inline-size:100%;padding:.9rem 1rem;transition:border-color .15s,background .15s;display:flex}@media (width>=992px) and (hover:hover) and (pointer:fine){.option-button:hover:not(:disabled){border-color:var(--primary);background:var(--surface-soft)}}.option-button:disabled{opacity:1}.option-button>span:nth-child(2){overflow-wrap:anywhere;flex:1;min-inline-size:0;line-height:1.7}.option-number{border:1px solid var(--line);block-size:30px;inline-size:30px;color:var(--muted);border-radius:8px;flex-shrink:0;place-items:center;font-size:.8rem;display:grid}.option-button.correct{background:var(--primary-soft);border-color:var(--primary);color:var(--primary)}.option-button.incorrect{background:var(--red-soft);border-color:var(--red);color:var(--red)}.answer-feedback{border-radius:10px;margin-block-start:1.2rem;padding:1rem 1.2rem;font-size:.9rem}.answer-feedback p{margin-block-start:.5rem}.answer-feedback.correct{background:var(--primary-soft)}.answer-feedback.incorrect{background:var(--red-soft)}.next-question{margin-block-start:1.5rem;margin-inline-start:auto;display:flex}.session-summary{text-align:center;flex-direction:column;align-items:center;gap:1rem;max-inline-size:700px;margin:3rem auto;padding:3rem 1.5rem;display:flex}.session-summary h1{font-size:1.7rem}.session-summary p{margin:0}.summary-icon{background:var(--primary-soft);block-size:80px;inline-size:80px;color:var(--primary);border-radius:50%;place-items:center;margin-block-end:.5rem;display:grid}.result-score{letter-spacing:-.04em;font-size:4rem;font-weight:600;line-height:1.3}.result-score span{color:var(--muted);margin-inline-start:.3rem;font-size:1.5rem}.listening-prompt{text-align:center;padding-block:2rem}.listening-prompt p{margin-block-end:1rem}.battle-arena{grid-template-columns:1fr 90px 1fr;align-items:center;gap:1rem;padding:1.25rem;display:grid}.battle-arena strong{margin-block:.3rem .5rem;font-size:.85rem;display:block}.boss-sigil{aspect-ratio:1;background:var(--purple-soft);inline-size:76px;color:var(--purple);border-radius:24px;place-items:center;font-family:Yu Mincho,Noto Sans JP,serif;font-size:2.6rem;display:grid;rotate:-5deg}.verb-card{text-align:center}.verb-dictionary{margin-block:1rem .25rem;font-family:Noto Sans JP,sans-serif;font-size:2.6rem}.verb-card h3{margin-block:1.5rem 1rem}.verb-answer{text-align:center;min-block-size:65px;margin-block-end:1rem;font-size:1.3rem}.verb-card form>.button{inline-size:100%}.settings-grid{grid-template-columns:1fr 1fr;align-items:start;gap:1.25rem;display:grid}.settings-section{min-inline-size:0;padding:1.75rem}.settings-section>h2,.settings-title{margin-block-end:1.2rem}.settings-title{align-items:center;gap:.65rem;display:flex}.settings-title>svg{color:var(--primary)}.settings-section>p,.account-form+p{font-size:.85rem}.account-form{gap:.6rem;margin-block:1rem;display:grid}.account-form label{font-size:.85rem}.account-form>.button{margin-block-start:.5rem}.account-form>.text-link{justify-content:center}.account-profile{align-items:center;gap:1rem;margin-block-end:1.2rem;display:flex}.account-profile p{overflow-wrap:anywhere;margin-block-start:.25rem;font-size:.8rem}.account-profile>div{min-inline-size:0}.sync-detail{flex-direction:column;gap:.3rem;margin-block:1.2rem;font-size:.85rem;display:flex}.sync-detail small{color:var(--muted);font-size:.75rem}.guest-import{border-block-start:1px solid var(--line);margin-block-start:1.5rem;padding-block-start:1.25rem;font-size:.85rem}.setting-row{border-block-end:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;padding-block:.8rem;font-size:.85rem;display:flex}.setting-row select{max-inline-size:60%;font-size:.8rem}.file-label{cursor:pointer;position:relative}.file-label input{opacity:0;cursor:pointer;block-size:100%;inline-size:100%;position:absolute;inset:0}.file-label:focus-within{outline:3px solid var(--ring);outline-offset:4px}.legacy-browser{margin-block:.75rem .3rem}.import-preview{background:var(--hero);border:1px solid var(--line);border-radius:12px;margin-block-start:1.5rem;padding:1.25rem}.import-preview h3{margin-block-end:.75rem}.import-preview p{font-size:.85rem}.import-preview ul{overflow-wrap:anywhere;padding-inline-start:1.1rem;font-size:.8rem}.import-preview .button-group{margin-block-start:1rem}.source-list{padding-inline-start:1.25rem;font-size:.8rem}.source-list li{margin-block:.5rem}.source-list a{color:var(--primary);align-items:center;gap:.4rem;min-block-size:44px;display:inline-flex}.settings-section details>p{font-size:.75rem}@media (width>=1200px){.continue-card{container-type:inline-size}.continue-copy h2{font-size:clamp(1.25rem,3.7cqi,1.7rem)}}@media (width<=1180px){.app-layout{grid-template-columns:205px minmax(0,1fr)}.sidebar{padding-inline:.9rem}.brand{font-size:1.7rem}.brand-sub{font-size:.54rem}.topbar{gap:1rem;padding-inline:1.5rem}.quick-search{max-inline-size:215px}.sync-label span{display:none}.journal-art{inline-size:135px;margin-inline-start:.4rem}.journal-kanji{font-size:4rem}.journal-pencil{block-size:130px}.continue-card{padding:1.6rem 1.3rem}.daily-grid{grid-template-columns:minmax(0,1.7fr) minmax(225px,1fr)}.stats-strip>div{gap:.6rem;padding-inline:1.1rem}.stats-strip .stat-icon{block-size:38px;inline-size:38px}.practice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.week-panel{padding:1.2rem}.day-dot{block-size:27px;inline-size:27px}}@media (width<=900px){.app-layout{display:block}.sidebar{display:none}.main-content{padding:1.8rem 1.5rem 2rem}.topbar{min-block-size:72px;padding:1rem 1.5rem}.quick-search{max-inline-size:280px}.sync-label span{display:inline}.mobile-nav{z-index:30;padding:.45rem calc(.8rem + var(--app-safe-right)) calc(.45rem + var(--app-safe-bottom)) calc(.8rem + var(--app-safe-left));background:var(--surface);border-block-start:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));display:grid;position:fixed;inset-block-end:0;inset-inline:0}.mobile-nav a{min-block-size:54px;color:var(--muted);border-radius:9px;flex-direction:column;justify-content:center;align-items:center;gap:.25rem;font-size:.65rem;display:flex}.mobile-nav a.active{color:var(--primary);background:var(--primary-soft)}.page-footer{padding-block-end:calc(100px + var(--app-safe-bottom))}.toast{inset-block-end:calc(90px + var(--app-safe-bottom))}.journal-art{inline-size:160px}.journal-kanji{font-size:4.7rem}.continue-card{padding:1.6rem}.main-content{min-block-size:calc(100dvh - 225px)}.settings-section{padding:1.4rem}}@media (width<=650px){.topbar{gap:.5rem;min-block-size:66px;padding:.55rem 1.15rem}.desktop-only,.quick-search{display:none!important}.topbar-actions{gap:.35rem}.sync-label{font-size:.63rem}.avatar{min-block-size:36px;min-inline-size:36px}.main-content{padding:1.6rem 1.1rem}.page-heading{flex-direction:column;align-items:flex-start;gap:1rem;margin-block-end:1.5rem}.page-heading .muted{max-inline-size:38ch;font-size:.83rem}.daily-grid{grid-template-columns:1fr;gap:1rem}.continue-card{min-block-size:290px;padding:1.5rem 1.25rem}.continue-copy h2{max-inline-size:19ch;font-size:1.35rem}.continue-copy p{font-size:.73rem}.lesson-kicker{margin-block-start:1.4rem;font-size:.57rem}.journal-art{inline-size:115px;margin-inline-start:0}.journal-kanji{font-size:3.7rem}.journal-caption{font-size:.47rem}.journal-pencil{block-size:105px}.journal-page{border-inline-start-width:5px}.review-card{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:.2rem 1rem;padding:1.25rem;display:grid}.review-card>.row-between{grid-column:1/-1}.review-card>.row-between>.round-icon{block-size:35px;inline-size:35px}.big-count{grid-area:2/1/4;align-self:center;margin:0;font-size:3.3rem}.review-card h2{grid-column:2;margin-block-start:.7rem;font-size:.9rem}.review-card>p{grid-column:2;margin-block-end:.8rem;font-size:.7rem}.review-button{grid-column:1/-1;margin-block-start:.6rem}.stats-strip{grid-template-columns:minmax(0,1fr);gap:0;margin-block:1rem 1.5rem;padding:.9rem 0}.stats-strip>div{border-inline-end:0;border-block-end:1px solid var(--line);gap:.6rem;padding-block:1rem;padding-inline:1rem}.stats-strip>div:nth-child(2){border-block-end:1px solid var(--line)}.stats-strip strong{font-size:1.35rem}.stats-strip strong+span{font-size:.65rem}.stats-strip .goal-stat{margin:0}.goal-stat .progress-track{max-inline-size:300px}.home-lower{grid-template-columns:1fr;gap:1.5rem}.week-panel{padding:1.35rem}.day-dot{block-size:34px;inline-size:34px}.week-days{margin-block:1.3rem .8rem}.quick-practice{grid-template-columns:1fr;gap:.8rem}.section-title{margin-block:1.5rem 1rem}.section-title h2{font-size:1.03rem}.section-title .text-link{font-size:.75rem}.quick-practice>a{padding:1rem}.lesson-short{gap:.8rem;padding:.85rem 1rem}.page-footer{flex-direction:column;gap:.25rem;padding-inline:1.1rem;font-size:.6rem}.catalog-toolbar{flex-direction:column;align-items:stretch}.catalog-toolbar .segmented{align-self:flex-start}.segmented button{padding-inline:1.2rem}.catalog-meta{font-size:.68rem}.lesson-grid{grid-template-columns:1fr}.lesson-card{min-block-size:210px}.lesson-card h2{font-size:1.05rem}.lesson-summary{gap:.6rem .75rem;padding:.9rem;font-size:.72rem}.lesson-summary>a{flex-basis:100%;margin-inline-start:0}.section-tabs{gap:0}.section-tabs button{padding:.7rem .65rem;font-size:.77rem}.grammar-note{padding:1.25rem}.grammar-note h2{font-size:1.15rem}.grammar-note>p,.word-card>p{font-size:.9rem}.example{gap:.3rem;padding:.85rem}.example .icon-button{min-inline-size:40px}.dialogue-line{flex-wrap:wrap;gap:.5rem}.dialogue-line>.speaker{inline-size:fit-content;max-inline-size:none;color:var(--muted);background:0 0;flex-basis:100%;padding:0}.dialogue-line>div{flex-basis:70%}.word-grid{grid-template-columns:1fr}.lesson-end{flex-direction:column;align-items:flex-start;padding:1.25rem}.lesson-end p{font-size:.8rem}.practice-grid{grid-template-columns:1fr;gap:1rem}.practice-card{padding:1.3rem}.practice-card h2{margin-block:1.1rem .4rem}.practice-card p{font-size:.82rem}.setup-panel{padding:1.3rem}.session-controls{gap:.8rem}.session-controls select{font-size:.8rem}.question-card{margin-block:1rem;padding:1.2rem}.question-prompt{margin-block:1.3rem .8rem;font-size:1.15rem}.question-translation{font-size:.8rem}.option-button{gap:.65rem;padding:.85rem .8rem;font-size:.95rem}.answer-feedback{padding:.9rem;font-size:.85rem}.next-question{inline-size:100%}.card-flip{min-block-size:285px;padding:.75rem .2rem}.flashcard{padding:1rem}.flash-front{font-size:3rem}.flash-answer h2{font-size:1.05rem}.rating-row{gap:.7rem}.rating-row .button{padding-inline:.5rem;font-size:.82rem}.session-summary{margin-block:1.5rem;padding:2rem 1.2rem}.session-summary h1{font-size:1.4rem}.session-summary p{font-size:.85rem}.session-summary .result-score{font-size:3.5rem}.battle-arena{grid-template-columns:1fr 64px 1fr;gap:.65rem;padding:1rem}.boss-sigil{border-radius:18px;inline-size:58px;font-size:2rem}.battle-arena .tiny{font-size:.65rem}.battle-arena strong{font-size:.75rem}.verb-dictionary{font-size:2.3rem}.settings-grid{grid-template-columns:1fr;gap:1rem}.settings-section{padding:1.25rem}.settings-section>p,.setting-row{font-size:.8rem}.account-profile strong{font-size:.9rem}.account-profile p{font-size:.75rem}.toast{inline-size:max-content;padding:.8rem 1rem;font-size:.8rem}.speaker{max-inline-size:80px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media (forced-colors:active){.panel,.button,.option-button{border:1px solid canvastext}.progress-track>span{background:highlight}.mobile-nav a.active,.nav-item.active,.day-dot.studied{outline:2px solid highlight}}ruby{ruby-align:center}rt{color:var(--muted);font-size:.56em;font-weight:400;line-height:1.4}@media (width<=650px){.mobile-nav a{font-size:.75rem}.continue-copy p{font-size:.83rem}.lesson-kicker{font-size:.7rem}.review-card>p{font-size:.8rem}.sync-label,.page-footer{font-size:.72rem}.example .icon-button{min-inline-size:44px}.avatar{min-block-size:44px;min-inline-size:44px}}select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23627168' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 1rem center;background-repeat:no-repeat;background-size:16px;padding-inline-end:2.8rem}:root[data-theme=dark] select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23b1bdb0' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}.reading-column,.setup-panel{inline-size:100%;max-inline-size:none}.grammar-note>p{max-inline-size:85ch}.reading-column .example{inline-size:100%}.page-screen{min-inline-size:0}.main-content{view-transition-name:study-page}body,.panel,.topbar,.sidebar,.mobile-nav,input,select{transition:background-color .2s,color .2s,border-color .2s}.section-tabs button,.segmented button,.nav-item,.mobile-nav a,.icon-button{transition:background-color .18s,color .18s,border-color .18s}.lesson-card,.practice-card,.boss-tile{transition:translate .2s,border-color .2s,box-shadow .2s}@media (width>=992px) and (hover:hover) and (pointer:fine){.lesson-card:hover:not(.unavailable),.practice-card:hover,.boss-tile:hover{translate:0 -3px;box-shadow:0 8px 24px #183c2810}}::view-transition-old(root){animation:none}::view-transition-new(root){animation:none}::view-transition-old(study-page){animation:.16s ease-in both page-leave}::view-transition-new(study-page){animation:.24s ease-out both page-enter}@keyframes page-enter{0%{opacity:0;translate:0 10px}to{opacity:1;translate:0}}@keyframes page-leave{to{opacity:0;translate:0 -5px}}.route-fallback,.reading-column,.lesson-detail .word-grid,.answer-feedback,.import-preview{animation:.22s ease-out both page-enter}.card-flip{perspective:1400px;background:0 0;min-block-size:330px;padding:.75rem .3rem;transition:background-color .2s;display:block}.flip-inner{min-block-size:305px;inline-size:100%;transform-style:preserve-3d;transition:transform .46s cubic-bezier(.2,.7,.2,1);display:grid}.flip-inner.is-flipped{transform:rotateY(180deg)}.flip-face{backface-visibility:hidden;background:var(--surface);border-radius:12px;flex-direction:column;grid-area:1/1;justify-content:center;align-items:center;gap:1rem;min-inline-size:0;padding:1.5rem 1rem;display:flex}.flip-back-face{background:var(--surface-soft);transform:rotateY(180deg)}.flash-back-word{font-family:Noto Sans JP,sans-serif;font-size:clamp(1.7rem,1.2rem + 2vw,2.7rem);line-height:1.7}.flash-meaning{overflow-wrap:anywhere;font-size:1.15rem;font-weight:600;line-height:1.8}.flashcard{animation:.2s ease-out both card-arrive}@media (width>=992px) and (hover:hover) and (pointer:fine){.flashcard .card-flip:hover .flip-front-face{background:var(--surface-soft)}}@keyframes card-arrive{0%{opacity:0;translate:12px}to{opacity:1;translate:0}}.battle-journey{color:#f3f4e8;isolation:isolate;background:radial-gradient(at 85% 40%,#3f5365 0,#0000 50%),linear-gradient(120deg,#17273e,#101a2a);border-radius:20px;justify-content:space-between;align-items:center;gap:2rem;min-block-size:235px;padding:2.2rem;display:flex;position:relative}.battle-journey:after{content:"";z-index:-1;border-radius:inherit;opacity:.3;background-image:radial-gradient(#e0d2a655 .8px,#0000 .8px);background-size:31px 31px;position:absolute;inset:0}.battle-eyebrow{letter-spacing:.16em;color:#d6bc89;font-size:.72rem}.battle-journey h2{margin-block:.7rem;font-size:clamp(1.4rem,1rem + 1vw,1.9rem)}.battle-journey p{color:#b9c8d5;font-size:.85rem}.battle-profile{flex-wrap:wrap;align-items:center;gap:1rem;margin-block-start:1.6rem;display:flex}.battle-profile>div{flex:1;min-inline-size:150px}.battle-profile>div>span{color:#c2d0dc;font-size:.7rem}.battle-profile .progress-track{background:#ffffff20;margin-block-start:.3rem}.battle-profile .progress-track>span{background:#e0b776}.battle-profile>strong{color:#cbd7e0;font-size:.8rem}.battle-level{color:#efd9b0;border:1px solid #d4b07866;border-radius:8px;padding:.5rem .7rem;font-size:.95rem;font-weight:600}.journey-samurai{flex-shrink:0;place-items:center;block-size:160px;inline-size:170px;display:grid}.journey-samurai img{block-size:180px;inline-size:180px;image-rendering:pixelated;filter:drop-shadow(0 10px 12px #0005)}.battle-achievements{color:var(--muted);flex-wrap:wrap;align-items:center;gap:.6rem;margin-block:1.3rem 1.7rem;font-size:.8rem;display:flex}.achievement-chip{border:1px solid var(--line);border-radius:20px;gap:.4rem;padding:.4rem .7rem;font-size:.72rem;display:inline-flex}.achievement-chip.unlocked{background:var(--amber-soft);border-color:var(--amber);color:var(--amber)}.boss-roster{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.1rem;display:grid}.boss-tile{min-inline-size:0;overflow:clip}.boss-tile-art{border-block-end:1px solid var(--line);background:radial-gradient(at 50% 110%,#67809055,#0000 70%),linear-gradient(135deg,#1a2a3e,#101c2b);border-radius:17px 17px 0 0;place-items:center;block-size:150px;display:grid;position:relative}.boss-tile-art .combat-sprite{object-fit:contain;block-size:115px;inline-size:auto;max-inline-size:90%;image-rendering:pixelated;filter:drop-shadow(0 10px 8px #0005)}.boss-tile-art .cthulu-sprite{block-size:145px}.boss-chapter{color:#d7bd90;letter-spacing:.08em;font-size:1rem;position:absolute;inset-block-start:12px;inset-inline-start:14px}.boss-cleared{color:#e0eee4;background:#234f42;border-radius:6px;align-items:center;gap:.25rem;padding:.25rem .5rem;font-size:.68rem;display:flex;position:absolute;inset-block-start:12px;inset-inline-end:10px}.boss-tile-copy{padding:1.2rem}.boss-tile-copy .eyebrow{letter-spacing:.06em;font-size:.65rem}.boss-tile-copy h2{margin-block:.4rem;font-size:1.05rem}.boss-tile-copy p{min-block-size:2.7em;margin-block:.45rem .9rem;line-height:1.6}.boss-tile-footer{border-block-start:1px solid var(--line);justify-content:space-between;gap:.5rem;padding-block-start:.8rem;font-size:.78rem;display:flex}.boss-tile-footer>span:last-child{color:var(--primary);align-items:center;gap:.4rem;display:flex}.battle-topline{justify-content:space-between;align-items:center;display:flex}.battle-topline .back-link{margin:0}.rpg-arena{isolation:isolate;color:#f4f4e5;background:#13243b;border:1px solid #36495f;border-radius:20px;min-block-size:355px;position:relative;overflow:clip}.arena-sky{z-index:-3;background-image:radial-gradient(#e4e3dc77 .8px,#0000 .8px),linear-gradient(#142338,#2b455a);background-size:59px 49px,100% 100%;position:absolute;inset:0}.arena-moon{z-index:-2;aspect-ratio:1;opacity:.7;background:#d0dbc7;border-radius:50%;inline-size:90px;position:absolute;inset-block-start:105px;inset-inline-start:47%;box-shadow:0 0 65px #d0dbc744}.arena-ridge{z-index:-1;clip-path:polygon(0 70%,8% 50%,18% 80%,28% 25%,36% 67%,50% 12%,62% 76%,73% 44%,86% 76%,94% 34%,100% 64%,100% 100%,0 100%);background:#122d3d;position:absolute;inset:40% 0 25%}.arena-ground{background:linear-gradient(#1c3933,#132b29);border-block-start:2px solid #73877533;block-size:90px;position:absolute;inset-block-end:0;inset-inline:0}.arena-ground:after{content:"";background-image:linear-gradient(#0000 95%,#78938011 95%);background-size:100% 18px;position:absolute;inset:12px 0 0}.rpg-hud{z-index:4;background:linear-gradient(#0a1526bb,#101e2a66,#0000);grid-template-columns:minmax(0,1fr) 90px minmax(0,1fr);gap:1.3rem;padding:1.35rem 1.5rem;display:grid;position:relative}.rpg-hud>div{min-inline-size:0}.hud-name{color:#d0deea;font-size:.75rem;line-height:1.6;display:block}.rpg-hud strong{letter-spacing:.02em;margin-block:.2rem .4rem;font-size:.8rem;display:block}.rpg-hud .progress-track{background:#ffffff1c;block-size:7px}.rpg-hud .progress-track>span{background:#7ec49c;transition:inline-size .4s ease-out}.hud-sp{color:#9cb6d6;margin-block:.4rem .25rem;font-size:.67rem;display:block}.hud-sp+.progress-track{block-size:4px}.hud-sp+.progress-track>span{background:#8aafd6}.enemy-hud{text-align:end}.enemy-hud .progress-track>span{background:#dd887c}.enemy-hud b{letter-spacing:.04em;background:#ffffff15;border-radius:4px;margin-inline-start:.2rem;padding:.15rem .4rem;font-size:.62rem;display:inline-block}.hud-weakness{color:#d1c29e;margin-block-start:.6rem;font-size:.65rem;line-height:1.7;display:block}.arena-turn{text-align:center;color:#e4c58e;padding-block-start:.3rem;font-size:.85rem;font-weight:600}.arena-turn small{color:#a4b4c4;font-size:.65rem;font-weight:400;display:block}.fighter{z-index:2;place-items:center;block-size:220px;inline-size:38%;display:grid;position:absolute;inset-block-end:40px}.hero-fighter{inset-inline-start:1%}.boss-fighter{inset-inline-end:2%}.combat-sprite{object-fit:contain;image-rendering:pixelated;z-index:2;max-inline-size:100%;position:relative}.fighter .hero-sprite{block-size:230px;inline-size:230px}.fighter .monster-sprite{block-size:155px;inline-size:auto;max-inline-size:90%;transform:scaleX(-1)}.fighter .cthulu-sprite{block-size:300px;inline-size:320px;max-inline-size:115%;margin-block-end:28px;transform:scaleX(-1)}.fighter-shadow{filter:blur(3px);z-index:0;background:#050b13aa;border-radius:50%;block-size:17px;inline-size:105px;position:absolute;inset-block-end:15px}.hero-fighter .fighter-shadow{inline-size:90px;inset-block-end:8px}.arena-caption{text-align:center;color:#c5d4c7;letter-spacing:.1em;font-size:.72rem;position:absolute;inset-block-end:12px;inset-inline:0}.rpg-combo{color:#ffd290;z-index:4;background:#211a24bb;border-radius:7px;align-items:center;gap:.3rem;padding:.35rem .6rem;font-size:.8rem;font-weight:600;display:flex;position:absolute;inset-block-end:45px;inset-inline-start:1.5rem}.phase-2 .arena-sky{background-image:radial-gradient(#e4e3dc77 .8px,#0000 .8px),linear-gradient(#302139,#473448)}.phase-3 .arena-sky{background-image:radial-gradient(#e4e3dc77 .8px,#0000 .8px),linear-gradient(#351c31,#562c36)}.hero-dash{animation:.43s ease-in-out hero-dash}.boss-dash{animation:.43s ease-in-out boss-dash}.fighter-hit img{animation:.4s ease-out hit-recoil}.damage-number{z-index:6;color:#ffd994;text-shadow:0 2px 5px #000c;white-space:nowrap;font-size:1.6rem;font-weight:600;animation:.75s ease-out both damage-rise;position:absolute;inset-block-start:20px}.damage-number.negative{color:#ffada0}.damage-number.positive{color:#9ef0c5}.damage-number.weak-hit{color:#ffe196}.telegraph-banner{background:var(--amber-soft);color:var(--amber);border:1px solid var(--amber);border-radius:12px;align-items:center;gap:.8rem;margin-block:1rem;padding:1rem 1.25rem;display:flex}.telegraph-banner strong{font-size:.9rem;display:block}.telegraph-banner span{font-size:.8rem;display:block}.rpg-content{grid-template-columns:minmax(0,2.3fr) minmax(230px,1fr);gap:1.1rem;margin-block:1.25rem;display:grid}.rpg-command-panel{min-inline-size:0;padding:1.5rem}.rpg-command-panel>.row-between{flex-wrap:wrap;margin-block-end:.4rem}.rpg-command-panel h2{font-size:1.1rem}.rpg-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin-block:1rem;display:grid}.rpg-action{text-align:start;border:1px solid var(--line);background:var(--surface-soft);min-block-size:80px;color:var(--text);border-radius:11px;align-items:center;gap:.7rem;padding:.8rem;transition:background-color .18s,border-color .18s;display:flex}@media (width>=992px) and (hover:hover) and (pointer:fine){.rpg-action:hover:not(:disabled){background:var(--primary-soft);border-color:var(--primary)}}.rpg-action>span:nth-child(2){flex:1;min-inline-size:0}.rpg-action strong{font-size:.9rem;display:block}.rpg-action small{color:var(--muted);margin-block-start:.2rem;font-size:.68rem;display:block}.rpg-action:disabled{opacity:.55}.rpg-action .action-cost{color:var(--primary);flex-shrink:0;font-size:.65rem}.action-iai_slash{color:var(--purple)}.action-recover{color:var(--primary)}.rpg-items{border-block-start:1px solid var(--line);flex-wrap:wrap;gap:.65rem;padding-block-start:1rem;display:flex}.rpg-items button{border:1px solid var(--line);background:var(--surface);border-radius:9px;align-items:center;gap:.4rem;padding:.6rem .8rem;font-size:.75rem;display:flex}.rpg-items b{color:var(--primary);margin-inline-start:.2rem}.hint-button{border:1px solid var(--line);background:var(--amber-soft);color:var(--amber);border-radius:8px;align-items:center;gap:.35rem;padding:.4rem .6rem;font-size:.75rem;display:flex}.option-button.eliminated{opacity:.28;text-decoration:line-through}.rpg-command-panel .question-prompt{font-size:1.25rem}.battle-journal{align-self:start;min-inline-size:0;padding:1.3rem}.battle-journal h2{font-size:.95rem}.battle-journal ol{color:var(--muted);margin:1rem 0;padding-inline-start:1.1rem;font-size:.75rem;line-height:1.8}.battle-journal li{overflow-wrap:anywhere;margin-block:.6rem}.battle-journal li:first-child{color:var(--text)}.battle-journal details{border-block-start:1px solid var(--line);font-size:.75rem}.battle-journal details p{font-size:.75rem;line-height:1.8}.battle-round-stats{background:var(--surface-soft);border-radius:9px;grid-template-columns:1fr 1fr;gap:.6rem;margin-block:1rem;padding:.7rem;display:grid}.battle-round-stats span{color:var(--muted);font-size:.7rem}.battle-round-stats strong{color:var(--text);margin-block-start:.25rem;font-size:1rem;display:block}.battle-result{text-align:center;flex-direction:column;align-items:center;gap:.8rem;padding:1.2rem .5rem;display:flex}.battle-result>svg{color:var(--amber)}.battle-result h2{font-size:1.5rem}.battle-result p{margin:0;font-size:.9rem}.battle-result .eyebrow{color:var(--amber);font-size:.75rem}.battle-exp{color:var(--primary);font-size:2rem}.battle-result .button-group{justify-content:center;margin-block-start:.6rem}.battle-result .tiny{font-size:.8rem}@keyframes hero-dash{40%{translate:30%}75%{translate:25%}to{translate:0}}@keyframes boss-dash{40%{translate:-24%}75%{translate:-20%}to{translate:0}}@keyframes hit-recoil{25%{opacity:.55;translate:-8px}75%{opacity:1;translate:4px}}@keyframes damage-rise{0%{opacity:1;translate:0 14px}70%{opacity:1}to{opacity:0;translate:0 -44px}}@media (width<=1100px){.boss-roster{grid-template-columns:repeat(2,minmax(0,1fr))}.rpg-content{grid-template-columns:1fr}.battle-journal{grid-template-columns:1fr 1fr;gap:0 1.5rem;display:grid}.battle-journal h2,.battle-round-stats{grid-column:1}.battle-journal ol{grid-area:1/2/4;margin:0}.battle-journal details{grid-column:1/-1}.rpg-hud{gap:.7rem;padding:1.1rem}.fighter .cthulu-sprite{max-inline-size:130%}}@media (width<=650px){select{background-position:right .85rem center;padding-inline-end:2.5rem}.card-flip{min-block-size:310px}.flip-inner{min-block-size:290px}.flip-face{padding:1.2rem .7rem}.flashcard .inline-actions{gap:0}.flash-back-word{font-size:2rem}.flash-meaning{font-size:1.05rem}.battle-journey{gap:.5rem;min-block-size:230px;padding:1.3rem}.battle-journey>div:first-child{flex:1;min-inline-size:0}.battle-journey h2{font-size:1.3rem}.battle-journey p{font-size:.75rem}.journey-samurai{block-size:120px;inline-size:75px}.journey-samurai img{block-size:140px;inline-size:140px;max-inline-size:none}.battle-profile{gap:.6rem;margin-block-start:1.1rem}.battle-profile>div{min-inline-size:105px}.battle-profile>strong{font-size:.7rem}.battle-level{font-size:.8rem}.boss-roster{grid-template-columns:1fr}.boss-tile{grid-template-columns:110px minmax(0,1fr);min-block-size:180px;display:grid}.boss-tile-art{border-block-end:0;border-inline-end:1px solid var(--line);border-radius:17px 0 0 17px;block-size:100%;min-block-size:180px}.boss-tile-art .combat-sprite{block-size:100px;margin-block-start:20px}.boss-tile-art .cthulu-sprite{block-size:135px;max-inline-size:130%}.boss-tile-copy{padding:1rem}.boss-tile-copy h2{font-size:1rem}.boss-tile-copy .eyebrow{font-size:.59rem}.boss-chapter{inset-block-start:8px;inset-inline-start:10px}.boss-cleared{white-space:nowrap;inset-block:auto 8px;inset-inline-end:50%;translate:50%}.rpg-arena{border-radius:15px;min-block-size:310px}.rpg-hud{grid-template-columns:minmax(0,1fr) 49px minmax(0,1fr);gap:.5rem;padding:1rem .8rem}.hud-name{font-size:.65rem}.enemy-hud .hud-name{line-height:1.5}.enemy-hud b{margin:0;font-size:.55rem}.rpg-hud strong{font-size:.7rem}.hud-weakness{font-size:.56rem}.arena-turn{font-size:.65rem}.arena-turn small{font-size:.58rem}.fighter{block-size:170px;inline-size:43%;inset-block-end:32px}.fighter .hero-sprite{block-size:185px;inline-size:185px;max-inline-size:130%}.fighter .monster-sprite{block-size:120px}.fighter .cthulu-sprite{block-size:230px;inline-size:230px;max-inline-size:145%;margin-block-end:5px}.arena-moon{inline-size:60px;inset-block-start:145px;inset-inline-start:43%}.arena-ground{block-size:67px}.fighter-shadow{block-size:12px;inline-size:70px;inset-block-end:5px}.hero-fighter .fighter-shadow{inline-size:55px;inset-block-end:0}.rpg-combo{font-size:.65rem;inset-block-end:36px;inset-inline-start:.8rem}.arena-caption{font-size:.6rem;inset-block-end:8px}.damage-number{font-size:1.15rem;inset-block-start:35px}.rpg-command-panel{padding:1.1rem}.rpg-command-panel>.row-between>.tiny{font-size:.65rem}.rpg-actions{gap:.5rem}.rpg-action{flex-wrap:wrap;gap:.5rem;min-block-size:85px;padding:.65rem}.rpg-action>svg{inline-size:19px}.rpg-action strong{font-size:.83rem}.rpg-action small{font-size:.62rem}.rpg-action .action-cost{font-size:.59rem}.rpg-items{gap:.5rem}.rpg-items button{padding:.6rem;font-size:.7rem}.battle-journal{padding:1.1rem;display:block}.battle-journal ol{margin-block:1rem}.telegraph-banner{gap:.6rem;padding:.8rem}.telegraph-banner span{font-size:.7rem}.rpg-command-panel .question-prompt{font-size:1.1rem}.rpg-command-panel .inline-actions{flex-wrap:wrap}.battle-result h2{font-size:1.25rem}.battle-result p{font-size:.8rem}}@media (prefers-reduced-motion:reduce){.spinning,.route-fallback,.reading-column,.answer-feedback,.import-preview,.flashcard,.hero-dash,.boss-dash,.fighter-hit img,.damage-number{animation:none}.flip-inner,.progress-track>span,.rpg-hud .progress-track>span,.lesson-card,.practice-card,.boss-tile{transition:none}@media (width>=992px) and (hover:hover) and (pointer:fine){.lesson-card:hover,.practice-card:hover,.boss-tile:hover{translate:none}}::view-transition-group(*){animation:none!important}::view-transition-old(*){animation:none!important}::view-transition-new(*){animation:none!important}}.motion-paused .hero-dash,.motion-paused .boss-dash,.motion-paused .fighter-hit img,.motion-paused .damage-number{animation:none}@media (width<=900px),(pointer:coarse){.main-content{view-transition-name:none}.route-fallback,.reading-column,.lesson-detail .word-grid{animation:none}}@media (forced-colors:active){select,:root[data-theme=dark] select{appearance:auto;background-image:none}.rpg-action,.hint-button{border:1px solid buttontext}.boss-tile-art,.rpg-arena{border:1px solid canvastext}}html:has(.focus-layout){scrollbar-gutter:auto}.focus-layout{block-size:100dvh;min-block-size:0;padding:0;display:block}.focus-layout .sidebar,.focus-layout .topbar,.focus-layout .page-footer,.focus-layout .mobile-nav,.focus-layout .update-banner{display:none}.focus-layout .workspace,.focus-layout .page-screen{block-size:100%;min-block-size:0}.focus-layout .page-screen{animation:none}.focus-layout .main-content{block-size:100%;min-block-size:0;max-inline-size:1500px;padding:calc(10px + var(--app-safe-top)) calc(16px + var(--app-safe-right)) calc(10px + var(--app-safe-bottom)) calc(16px + var(--app-safe-left))}.practice-topline,.focus-layout .battle-topline{justify-content:space-between;align-items:center;gap:8px;min-block-size:44px;display:flex}.practice-topline .back-link{margin:0}.focus-layout .page-heading{gap:4px;margin:0}.focus-layout .page-heading h1{font-size:clamp(1.1rem,2.4vw,1.7rem);line-height:1.4}.focus-layout .page-heading .eyebrow,.focus-layout .page-heading .muted{display:none}.flashcard-screen{grid-template-rows:auto auto auto minmax(0,1fr);gap:10px;block-size:100%;max-inline-size:880px;margin-inline:auto;display:grid}.focus-layout .session-controls{gap:10px;max-inline-size:none;margin:0}.focus-layout .session-controls label{flex-direction:row;align-items:center;gap:8px}.focus-layout .session-controls select{min-block-size:44px;padding-block:8px}.focus-layout .session-controls .button{min-block-size:44px;padding:8px 12px;font-size:.8rem}.focus-layout .study-session{grid-template-rows:auto 4px minmax(0,1fr) auto auto;gap:10px;min-block-size:0;inline-size:100%;max-inline-size:none;display:grid}.focus-layout .study-session>.progress-track{block-size:4px}.focus-layout .flashcard{grid-template-rows:auto minmax(0,1fr);min-block-size:0;margin:0;padding:0;animation:none;display:grid}.focus-layout .flashcard>.row-between{padding-inline:4px}.focus-layout .card-flip{background:0 0;border-radius:20px;block-size:100%;min-block-size:0;padding:0;display:block;overflow:hidden}@supports (overflow:clip){.focus-layout .card-flip{overflow-clip-margin:8px;overflow:clip}}.focus-layout .flip-inner{block-size:100%;min-block-size:0;grid-template-rows:minmax(0,1fr);width:100%;container-type:inline-size}.focus-layout .flashcard[data-card-motion=on] .flip-inner{transition:transform .46s cubic-bezier(.2,.7,.2,1)}.focus-layout .flashcard[data-card-motion=off] .flip-inner{transition:none}.focus-layout .flip-face{border:1px solid var(--line);overflow-wrap:anywhere;border-radius:20px;gap:clamp(6px,1.4dvh,16px);min-block-size:0;padding:clamp(12px,2dvh,28px);box-shadow:0 8px 24px #183c2810}.focus-layout .flip-back-face{border-color:var(--primary)}.focus-layout .flash-front{font-size:clamp(1.55rem,7.5cqi,4.5rem);line-height:1.5}.focus-layout .flash-back-word{font-size:clamp(1.3rem,5.5cqi,2.5rem);line-height:1.4}.focus-layout .flash-meaning{font-size:clamp(.95rem,2.7cqi,1.2rem);line-height:1.6}.focus-layout .flip-hint{margin:0;font-size:.75rem}.focus-layout .rating-row{gap:10px;margin:0}.focus-layout .rating-row .button{min-block-size:48px}.focus-layout .study-session>p{margin:0;font-size:.72rem}.focus-layout .session-summary{max-block-size:100%;margin:0 auto;padding:clamp(16px,4dvh,48px)}.detail-dialog{color:var(--text);background:var(--surface);border:1px solid var(--line);inline-size:min(620px, calc(100vw - var(--app-safe-left) - var(--app-safe-right) - 32px));max-block-size:calc(100dvh - var(--app-safe-top) - var(--app-safe-bottom) - 32px);inset:var(--app-safe-top) var(--app-safe-right) var(--app-safe-bottom) var(--app-safe-left);border-radius:20px;margin:auto;padding:0}.detail-dialog::backdrop{background:#091d2a99}.dialog-heading{background:var(--surface);border-block-end:1px solid var(--line);z-index:1;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex;position:sticky;inset-block-start:0}.dialog-heading h2{font-size:1.1rem}.dialog-content{padding:16px;line-height:1.8}.dialog-content .battle-journal{padding:0;display:block}.dialog-content .battle-journal>h2{display:none}.expanded-word{overflow-wrap:anywhere;font-size:2rem}.expanded-meaning{font-size:1rem}.speakable-text,.speakable-example{text-align:start;font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;align-items:center;gap:12px;display:inline-flex}.speakable-text{min-block-size:44px;padding:3px 0}.speakable-text>svg,.speakable-example>svg{color:var(--muted);flex-shrink:0}.spoken-example-row{padding:0;display:block}.speakable-example{justify-content:space-between;min-block-size:52px;inline-size:100%;padding:14px 16px;display:flex}.speakable-example>span:first-child{gap:6px;min-inline-size:0;display:grid}.speakable-example [lang=ja]{font-size:1.05rem;line-height:1.65}.speakable-example [lang=th]{font-size:.9rem;line-height:1.6}@media (width>=992px) and (hover:hover) and (pointer:fine){.speakable-text:hover,.speakable-example:hover{background:var(--primary-soft)}}.dialogue-line:has(.speakable-example){grid-template-columns:minmax(60px,.15fr) minmax(0,1fr)}@media (height<=700px){.focus-layout .main-content{padding-block:calc(6px + var(--app-safe-top)) calc(6px + var(--app-safe-bottom))}.flashcard-screen,.focus-layout .study-session{gap:6px}.focus-layout .study-session>p:not([role=alert]){display:none}.focus-layout .flip-hint{font-size:.68rem}}@media (height<=500px){.flashcard-screen{grid-template-rows:auto auto minmax(0,1fr);grid-template-columns:minmax(0,1fr) minmax(180px,.7fr);column-gap:20px}.flashcard-screen>.practice-topline{grid-column:1/-1}.flashcard-screen>.page-heading{grid-column:1}.flashcard-screen>.session-controls{flex-direction:column;grid-area:2/2/4;justify-content:center;align-items:stretch}.flashcard-screen>.session-controls label{flex:0}.flashcard-screen>.study-session{grid-area:3/1}.focus-layout .flash-front{font-size:clamp(1.2rem,5cqi,2.5rem)}.focus-layout .flip-face{gap:4px;padding:8px}.focus-layout .flip-hint,.focus-layout .flip-back-face>.tiny{display:none}}.battle-screen{grid-template-rows:auto minmax(100px,1fr) auto;grid-template-columns:minmax(0,1fr);gap:10px;block-size:100%;min-block-size:0;inline-size:100%;display:grid;container:battle/size}.battle-screen>.battle-topline{grid-row:1;align-items:center;gap:8px;min-block-size:44px;display:flex}.battle-title{flex:1;min-inline-size:0;font-size:clamp(1rem,2vw,1.35rem);line-height:1.35}.battle-title small{color:var(--muted);font-size:.65em;font-weight:400;display:none}.battle-topline .back-link{flex-shrink:0;justify-content:center;min-block-size:44px;min-inline-size:44px;margin:0}.battle-back-label{clip-path:inset(50%);block-size:1px;inline-size:1px;position:absolute;overflow:hidden}.battle-topline .inline-actions{flex-shrink:0;gap:0}.battle-screen>.rpg-arena{border-radius:16px;grid-area:2/1;min-block-size:0;container:arena/size}.battle-screen>.rpg-content{grid-area:3/1;min-block-size:0;margin:0;display:block}.battle-screen .rpg-command-panel{flex-direction:column;min-block-size:0;padding:12px;display:flex}.battle-screen .rpg-command-panel>.row-between{gap:8px;margin:0}.battle-screen .rpg-command-panel>.row-between>.tiny,.battle-screen .rpg-command-panel>p.muted.tiny{display:none}.battle-screen .rpg-command-panel h2{font-size:1.1rem}.battle-screen .rpg-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-block:10px 0;display:grid}.battle-screen .rpg-action{flex-wrap:nowrap;gap:8px;min-block-size:58px;padding:8px 10px}.battle-screen .rpg-action strong{font-size:.9rem}.battle-screen .rpg-action small{display:none}.battle-screen .action-cost{font-size:.65rem}.battle-screen .question-prompt{margin-block:8px;font-size:1.1rem;line-height:1.55}.battle-screen .question-translation{margin-block:0 8px;font-size:.9rem;display:none}.battle-screen .question-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-block:4px 0}.battle-screen .option-button{gap:8px;min-block-size:46px;padding:8px 10px;font-size:1rem}.battle-screen .option-button>span:nth-child(2){line-height:1.45}.battle-screen .answer-feedback{margin-block-start:8px;padding:8px 12px;font-size:.95rem}.battle-screen .answer-feedback .text-link{padding-block:6px;display:block}.battle-screen .next-question{flex-shrink:0;min-block-size:46px;margin-block-start:10px}.battle-state-feedback .question-options,.battle-state-victory .question-options,.battle-state-defeat .question-options{display:none}.battle-screen .rpg-hud{grid-template-columns:minmax(0,1fr) 85px minmax(0,1fr);gap:10px;padding:10px 12px}.battle-screen .hud-name{margin-block-end:3px;font-size:.7rem;line-height:1.4}.battle-screen .hud-value,.battle-screen .hud-boss-title,.battle-screen .hud-weakness{display:none}.hud-meter-label{color:#c9dacd;margin-block:3px 2px;font-size:.58rem;line-height:1.25;display:block}.battle-screen .rpg-hud .progress-track{block-size:6px}.battle-screen .hud-sp+.progress-track{block-size:4px}.battle-screen .arena-turn{flex-direction:column;align-items:center;gap:3px;padding:0;font-size:.75rem;display:flex}.battle-screen .arena-turn small{font-size:.65rem;display:inline}.arena-phase{color:#c4d1db;white-space:nowrap;background:#ffffff18;border-radius:5px;padding:2px 7px;font-size:.58rem}.battle-screen .fighter{block-size:min(62cqh,310px);inline-size:40%;inset-block-end:clamp(12px,5cqh,34px)}.battle-screen .fighter .hero-sprite{block-size:min(62cqh,280px);inline-size:min(62cqh,280px);max-inline-size:110%}.battle-screen .fighter .monster-sprite{block-size:min(53cqh,225px);max-inline-size:95%}.battle-screen .fighter .cthulu-sprite{block-size:min(70cqh,330px);inline-size:min(70cqh,330px);max-inline-size:120%;margin:0}.battle-screen .fighter-shadow{block-size:10px;inline-size:min(65px,60%);inset-block-end:0}.battle-screen .arena-moon{inline-size:clamp(30px,15cqh,80px);inset-block-start:25%}.battle-screen .arena-ground{block-size:25%}.battle-screen .arena-caption{font-size:.65rem;inset-block-end:6px}.battle-screen .rpg-combo{font-size:.7rem;inset-block-end:30px;inset-inline-start:12px}.battle-screen>.telegraph-banner{z-index:5;grid-area:2/1;align-self:end;margin:8px;padding:7px 10px}.battle-screen .telegraph-banner strong{font-size:.85rem}.battle-screen .telegraph-banner span{display:none}.battle-screen .battle-result{gap:12px;min-block-size:0;padding:8px}.battle-result-summary,.battle-result-controls{flex-direction:column;align-items:center;gap:8px;display:flex}.battle-state-victory>.rpg-arena,.battle-state-defeat>.rpg-arena{display:none}.battle-state-victory>.rpg-content,.battle-state-defeat>.rpg-content{grid-row:2/4;align-self:center}.battle-screen .battle-result h2{font-size:1.2rem}.battle-screen .battle-exp{font-size:1.5rem}.practice-settings{gap:12px;display:grid}.practice-settings .icon-button{border:1px solid var(--line);border-radius:10px;justify-content:flex-start;gap:12px;inline-size:100%;padding:10px 12px;font-size:1rem}.practice-settings .icon-button[aria-pressed=true]{background:var(--primary-soft)}.battle-stat-list>p{margin-block:6px}.battle-stat-list .rpg-items{flex-wrap:wrap;gap:10px;margin-block-start:12px;display:flex}.battle-stat-list .rpg-items button{min-block-size:46px;font-size:.9rem}@container battle (width>=600px){.battle-screen .rpg-actions{grid-template-columns:repeat(5,minmax(0,1fr))}.battle-screen .question-options{grid-template-columns:repeat(4,minmax(0,1fr))}.battle-screen .battle-title small{margin-inline-start:12px;display:inline}}@container battle (width>=800px) and (height>=700px){.battle-screen .rpg-action small{font-size:.7rem;display:block}.battle-screen .question-translation{display:block}.battle-screen .rpg-command-panel{padding:16px 20px}}@container arena (width>=600px) and (height>=280px){.battle-screen .hud-value,.battle-screen .hud-weakness,.battle-screen .hud-boss-title{display:block}.battle-screen .hud-boss-short,.battle-screen .hud-meter-label{display:none}}@container arena (height<=170px){.battle-screen .rpg-hud{padding-block:6px}.battle-screen .hud-name,.battle-screen .arena-caption,.battle-screen .rpg-combo{display:none}}@container battle (height<=500px){.battle-screen.battle-state-feedback .question-prompt{display:none}.battle-screen .answer-feedback{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:0 12px;line-height:1.35;display:grid}.battle-screen .answer-feedback p{margin:0}.battle-screen .answer-feedback .text-link{grid-area:1/2/3;min-block-size:44px}.battle-screen .rpg-command-panel{padding:8px 10px}.battle-screen .rpg-command-panel>.row-between>h2{display:none}.battle-screen .rpg-actions{margin-block:0}.battle-screen .rpg-action{min-block-size:48px}.battle-screen .question-prompt{margin-block:5px;font-size:.95rem;line-height:1.4}.battle-screen .option-button{padding:6px 8px;font-size:.9rem}.battle-screen .option-number{display:none}.battle-screen .battle-result{grid-template-columns:1fr 1fr;align-items:center;gap:20px;display:grid}}@container battle (width<=600px){.battle-screen .option-number{display:none}}@container battle (height<=700px){.battle-screen .question-prompt{font-size:1rem;line-height:1.45}}@container battle (width<=600px) and (height<=700px){.battle-screen .rpg-command-panel>.row-between>.pill{display:none}.battle-screen .rpg-command-panel>.row-between{justify-content:flex-end}}@media (height<=700px){.battle-screen{grid-template-rows:auto minmax(80px,1fr) auto}}.focus-exercise .main-content{max-inline-size:1440px}.exercise-screen{grid-template-rows:auto auto minmax(0,1fr);gap:10px;block-size:100%;min-block-size:0;display:grid}.verb-screen{grid-template-rows:auto auto auto minmax(0,1fr);max-inline-size:1000px;margin-inline:auto}.focus-exercise .exercise-screen .page-heading h1{font-size:1.35rem}.focus-exercise .study-session{grid-template-rows:auto 4px minmax(0,1fr);gap:10px}.focus-exercise .session-meta{margin:0;font-size:.9rem}.focus-exercise .question-card{grid-template-rows:auto minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px 32px;min-block-size:0;margin:0;padding:clamp(16px,2.5dvh,32px);display:grid}.focus-exercise .question-card>.row-between,.focus-exercise .exercise-outcome{grid-column:1/-1}.focus-exercise .question-copy{align-self:center;min-inline-size:0}.focus-exercise .question-prompt{margin:0;font-size:clamp(1.3rem,1rem + .6vw,1.8rem);line-height:1.75}.focus-exercise .question-translation{margin-block:12px 0;font-size:1rem;line-height:1.6}.focus-exercise .question-options{align-self:center;gap:12px;margin:0}.focus-exercise .option-button{min-block-size:60px;padding:10px 14px;font-size:1.1rem}.focus-exercise .option-button>span:nth-child(2){line-height:1.5}.focus-exercise .exercise-outcome{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;min-inline-size:0;display:flex}.focus-exercise .exercise-outcome:empty{display:none}.focus-exercise .exercise-outcome>[role=alert]{color:var(--red);flex-basis:100%;margin:0;font-size:.9rem}.focus-exercise .answer-feedback{flex-wrap:wrap;align-items:center;gap:8px 16px;margin:0;padding:10px 14px;font-size:.95rem;display:flex}.focus-exercise .answer-feedback p{margin:0}.focus-exercise .answer-feedback .text-link{min-block-size:44px;padding:4px;font-size:.95rem}.focus-exercise .next-question{flex-shrink:0;min-block-size:48px;margin:0 0 0 auto}.focus-exercise .listening-prompt{padding-block:16px}.focus-exercise .verb-card{flex-direction:column;gap:12px;display:flex}.focus-exercise .verb-prompt{flex-direction:column;flex:1;justify-content:center;gap:6px;display:flex}.focus-exercise .verb-prompt p,.focus-exercise .verb-prompt h3{margin:0}.focus-exercise .verb-dictionary{margin:0;font-size:clamp(2.1rem,1.4rem + 2vw,3.6rem);line-height:1.5}.focus-exercise .verb-prompt h3{padding-block-start:10px;font-size:1.1rem}.focus-exercise .verb-card form{grid-template-columns:minmax(0,1fr) auto;gap:12px;display:grid}.focus-exercise .verb-card form[hidden]{display:none}.focus-exercise .verb-answer{min-block-size:54px;margin:0}.focus-exercise .verb-card form>.button{inline-size:auto}.focus-exercise .verb-answer:disabled{grid-column:1/-1}.focus-exercise .verb-card .answer-feedback{text-align:start}.focus-exercise .verb-card .answer-feedback p{font-size:1.1rem}.focus-exercise .session-summary{align-self:center}@media (width<=700px){.focus-exercise .main-content{padding-inline:calc(10px + var(--app-safe-left)) calc(10px + var(--app-safe-right))}.exercise-screen,.focus-exercise .study-session{gap:8px}.focus-exercise .exercise-screen .page-heading h1{font-size:1.1rem}.focus-exercise .question-card{flex-direction:column;gap:12px;padding:14px;display:flex}.focus-exercise .question-copy{flex-direction:column;flex:1;justify-content:center;inline-size:100%;display:flex}.focus-exercise .question-prompt{font-size:1.1rem;line-height:1.65}.focus-exercise .question-translation{margin-block-start:8px;font-size:.85rem;line-height:1.5}.focus-exercise .question-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;inline-size:100%;display:grid}.focus-exercise .option-button{gap:6px;min-block-size:50px;padding:8px;font-size:.95rem}.focus-exercise .option-number{border-radius:6px;block-size:24px;inline-size:24px;font-size:.72rem}.focus-exercise .exercise-outcome{gap:8px}.focus-exercise .answer-feedback{gap:4px 10px;inline-size:100%;padding:8px 10px;font-size:.85rem}.focus-exercise .answer-feedback .text-link{margin-inline-start:auto;font-size:.85rem}.focus-exercise .next-question{inline-size:100%}.focus-exercise .session-controls label{flex-direction:column;align-items:stretch;gap:4px}.focus-exercise .session-controls select{padding-inline-start:10px;font-size:.8rem}.focus-exercise .verb-card form{grid-template-columns:minmax(0,1fr);gap:8px}.focus-exercise .verb-prompt{gap:4px}.focus-exercise .verb-dictionary{font-size:2.3rem}}@media (height<=700px){.exercise-screen,.focus-exercise .study-session{gap:6px}.focus-exercise .question-card{gap:10px 20px;padding:12px}.focus-exercise .question-options{gap:8px}.focus-exercise .option-button{min-block-size:46px;padding-block:6px}.focus-exercise .verb-dictionary{font-size:2rem}}@media (height<=500px) and (width>=701px){.focus-exercise .page-heading{display:none}.exercise-screen{grid-template-rows:auto minmax(0,1fr)}.verb-screen{grid-template-rows:auto auto minmax(0,1fr)}.focus-exercise .question-options{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.focus-exercise .option-number{display:none}.focus-exercise .question-prompt{font-size:1.1rem;line-height:1.45}.focus-exercise .question-translation{margin-block-start:6px;font-size:.85rem}.focus-exercise .verb-card{grid-template-rows:auto minmax(0,1fr);align-items:center;display:grid}.focus-exercise .verb-prompt{grid-area:2/1;gap:0;font-size:.85rem;line-height:1.35}.focus-exercise .verb-dictionary{font-size:1.7rem;line-height:1.3}.focus-exercise .verb-prompt h3{padding:0;font-size:.9rem}.focus-exercise .verb-card form{grid-area:2/2;grid-template-columns:minmax(0,1fr);gap:8px}.focus-exercise .verb-card .exercise-outcome{grid-area:3/1/auto/-1}.focus-exercise .verb-card.verb-answered .exercise-outcome{grid-area:2/2}}.dashboard{min-inline-size:0;container:dashboard/inline-size}.dashboard .daily-grid,.dashboard .home-lower,.dashboard .quick-practice{grid-template-columns:minmax(0,1fr);gap:1rem}.dashboard .continue-card{grid-template-columns:minmax(0,1fr);gap:1.25rem;min-block-size:0;padding:1.25rem;display:grid}.dashboard .continue-copy{grid-area:2/1}.dashboard .continue-copy h2{max-inline-size:32ch}.dashboard .continue-copy .button{justify-content:space-between;min-inline-size:min(100%,14rem);max-inline-size:100%}.dashboard .lesson-kicker{margin-block-start:1rem}.dashboard .journal-art{grid-area:1/1;justify-self:start;inline-size:84px;margin:0 0 0 8px}.dashboard .journal-kanji{font-size:2.5rem}.dashboard .journal-caption{font-size:.45rem}.dashboard .journal-pencil{block-size:80px}.dashboard .journal-rule{margin-block:.3rem}.dashboard .review-card{flex-direction:column;align-items:stretch;min-inline-size:0;padding:1.25rem;display:flex}.dashboard .big-count{margin-block:.85rem .1rem}.dashboard .review-card h2,.dashboard .review-card>p{margin-inline:0}.dashboard .review-button{margin-block-start:1rem}.dashboard .stats-strip{grid-template-columns:minmax(0,1fr);gap:0;padding:0}.dashboard .stats-strip>div{border:0;border-block-end:1px solid var(--line);flex-direction:row;align-items:center;gap:1rem;margin:0;padding:1.1rem 1.25rem}.dashboard .stats-strip>div:last-child{border:0}.dashboard .stats-strip strong+span{display:block}.dashboard .home-lower>section{min-inline-size:0}.dashboard .home-lower .section-title{flex-direction:column;align-items:flex-start;gap:.5rem}.dashboard .lesson-short{grid-template-columns:minmax(0,1fr) auto;gap:.65rem;padding:1rem;display:grid}.dashboard .lesson-short>.lesson-number{grid-area:1/1;justify-self:start}.dashboard .lesson-short>div{grid-area:2/1/auto/-1}.dashboard .lesson-short>svg{grid-area:1/2}.dashboard .lesson-short h3{-webkit-line-clamp:unset;line-clamp:unset;margin-block:.25rem;display:block;overflow:visible}.dashboard .week-panel{align-self:start;padding:1.25rem;container:study-week/inline-size}.dashboard .week-panel>.row-between{gap:.5rem}.dashboard .week-days{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.dashboard .week-days>div{gap:.4rem;min-inline-size:0}.dashboard .day-dot{block-size:38px;inline-size:38px}.dashboard .week-days small{font-size:.8rem}.dashboard .weekly-total{flex-wrap:wrap;gap:.5rem 1rem}.dashboard .quick-practice>a{grid-template-columns:minmax(0,1fr) auto;gap:.75rem;display:grid}.dashboard .quick-practice>a>.stat-icon{grid-area:1/1;justify-self:start}.dashboard .quick-practice>a>div{grid-area:2/1/auto/-1}.dashboard .quick-practice>a>svg{grid-area:1/2}@container dashboard (width>=36rem){.dashboard .quick-practice{grid-template-columns:repeat(2,minmax(0,1fr))}}@container dashboard (width>=42rem){.dashboard .stats-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard .stats-strip>div{border-block-end:0;border-inline-end:1px solid var(--line);flex-direction:column;align-items:flex-start}.dashboard .stats-strip>div>div{inline-size:100%}}@container dashboard (width>=52rem){.dashboard .daily-grid{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr)}.dashboard .home-lower{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:1.5rem}.dashboard .continue-card{grid-template-columns:minmax(0,1fr) auto;padding:1.8rem}.dashboard .continue-copy{grid-row:1}.dashboard .journal-art{grid-column:2;inline-size:140px}.dashboard .journal-kanji{font-size:4rem}.dashboard .journal-caption{font-size:.6rem}.dashboard .journal-pencil{block-size:130px}.dashboard .review-button{margin-block-start:auto}.dashboard .home-lower .section-title{flex-flow:wrap}.dashboard .lesson-short{grid-template-columns:auto minmax(0,1fr) auto}.dashboard .lesson-short>div{grid-area:1/2}.dashboard .lesson-short>svg{grid-column:3}}@container study-week (width>=14rem){.dashboard .week-days{grid-template-columns:repeat(4,minmax(0,1fr))}}@container study-week (width>=23rem){.dashboard .week-days{grid-template-columns:repeat(7,minmax(0,1fr))}}
