:root{color:#33372f;font-synthesis:none;--bg:#f8f7f4;--paper:#fffefa;--text:#33372f;--muted:#8b8e83;--line:#e6e5df;--accent:#e97d43;--soft:#eeede7;--green:#53654c;background:#f8f7f4;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer;color:inherit;background:0 0;border:0}button:disabled{opacity:.4;cursor:default}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button:hover{color:var(--accent)}input,textarea,select{color:var(--text);background:var(--paper);border:1px solid var(--line);border-radius:8px;outline:none}input:focus,textarea:focus,select:focus{border-color:var(--accent);box-shadow:0 0 0 2px #e97d431a}input[type=checkbox]{accent-color:var(--accent);width:23px;height:23px}button.primary,.primary{background:var(--accent);color:#fff;letter-spacing:.04em;border-radius:9px;padding:16px 28px;font-weight:600}.outline-button{border:1px solid var(--line);background:var(--paper);border-radius:8px;padding:12px 20px;font-size:14px}.text-button{color:var(--muted);padding:15px 0;font-size:14px}.icon-button{border-radius:50%;place-items:center;width:42px;height:42px;font-size:24px;display:grid}.icon-button:hover{background:var(--soft)}.topbar{justify-content:space-between;align-items:center;gap:20px;height:112px;display:flex}.brand{text-align:left;letter-spacing:2px;align-items:center;gap:11px;font-size:18px;font-weight:600;display:flex}.brand small{color:var(--muted);letter-spacing:4px;margin-top:5px;font-size:10px;font-weight:400;display:block}.brand-mark{border:1.5px solid var(--accent);width:39px;height:39px;color:var(--accent);letter-spacing:0;border-radius:50%;place-items:center;font:25px Hiragino Mincho ProN,Songti SC,serif;display:grid}.topbar nav{gap:42px;padding-right:40px;display:flex}.nav-item{color:var(--muted);letter-spacing:1px;padding:12px 2px;font-size:14px;position:relative}.nav-item span{display:none}.nav-item.active{color:var(--text);font-weight:600}.nav-item.active:after{content:"";background:var(--accent);border-radius:4px;width:16px;height:3px;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.settings-toggle{color:var(--muted);font-size:23px}.home-grid{border:1px solid var(--line);background:var(--paper);border-radius:16px;grid-template-columns:1.3fr 1fr;min-height:620px;display:grid;overflow:hidden}.wallpaper{color:#fff;isolation:isolate;background:url(/kyoto.jpg) 50% 47%/cover;flex-direction:column;min-height:620px;display:flex;position:relative}.photo-shade{z-index:-1;background:linear-gradient(#17282742,#17282722 30%,#17282750 55%,#111e1cd9);position:absolute;inset:0}.wallpaper-top{letter-spacing:3px;color:#ffffffe0;justify-content:space-between;padding:28px 32px;font-size:11px;display:flex}.daily-word{text-align:center;text-shadow:0 2px 18px #0003;padding-top:62px}.daily-word>span{letter-spacing:9px;padding-left:9px;font-size:16px}.daily-word h1{letter-spacing:12px;margin:13px 0 18px;padding-left:12px;font-family:Hiragino Mincho ProN,Yu Mincho,Songti SC,serif;font-size:88px;font-weight:400}.daily-word p{letter-spacing:3px;color:#ffffffe3;font-size:13px}.wall-audio{color:#fff;border:1px solid #fff6;border-radius:50px;margin-top:9px;padding:8px 13px;font-size:10px}.wall-audio span{margin-left:5px}.wall-audio:hover{color:#fff;background:#fff2}.wallpaper-bottom{text-align:center;margin-top:auto;padding:54px 32px 38px}.wallpaper-bottom>p{letter-spacing:2px;margin:0 0 9px;font:15px Hiragino Mincho ProN,Songti SC,serif}.wallpaper-bottom>span{letter-spacing:2px;color:#ffffffb0;font-size:10px}.home-actions{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff15;border:1px solid #ffffff35;border-radius:9px;grid-template-columns:1fr 1fr;margin-top:30px;display:grid}.home-actions button{text-align:left;color:#fff;padding:18px 24px}.home-actions button+button{border-left:1px solid #ffffff35}.home-actions small{letter-spacing:2px;color:#ffffffc0;font-size:11px;display:block}.home-actions strong{margin-top:3px;font-size:35px;font-weight:400;line-height:1.5;display:block}.home-actions i{color:#ffc49e;margin-left:12px;font-size:12px;font-style:normal;font-weight:400}.photo-credit{text-align:center;letter-spacing:3px;color:#ffffff60;width:100%;font-size:8px;position:absolute;bottom:12px}.today-panel{padding:44px 44px 32px}.section-eyebrow{letter-spacing:2px;color:var(--muted);font-size:10px;font-weight:500}.today-heading h2{letter-spacing:3px;margin:23px 0 12px;font-size:34px;font-weight:500;line-height:1.6}.today-heading p{color:var(--muted);letter-spacing:1px;font-size:12px}.today-numbers{gap:55px;margin-top:33px;display:flex}.today-numbers strong{font-size:39px;font-weight:300}.today-numbers strong small{color:#b0b2aa;font-size:15px;font-weight:400}.today-numbers div>span{color:var(--muted);margin-top:7px;font-size:11px;display:block}.goal-line{align-items:center;gap:12px;margin:16px 0 30px;display:flex}.track{background:var(--soft);border-radius:8px;height:3px;overflow:hidden}.track i{background:var(--accent);min-width:0;height:100%;display:block}.goal-line .track{flex:1}.goal-line button{color:var(--muted);white-space:nowrap;font-size:10px}.section-line{justify-content:space-between;align-items:center;gap:16px;margin:22px 0 17px;display:flex}.section-line h3{margin:0;font-size:14px;font-weight:500}.section-line h3 small{color:var(--muted);margin-left:12px;font-size:11px;font-weight:400}.section-line>button,.section-line>small{color:var(--muted);font-size:11px}.book-card{text-align:left;gap:23px;display:flex}.book-cover{background:var(--cover);color:#344135;border-radius:2px 5px 5px 2px;flex-direction:column;width:118px;min-width:118px;height:166px;padding:14px 14px 12px;display:flex;position:relative;box-shadow:inset 5px 0 #0000000c,4px 6px 12px #0000000b}.book-cover:before{content:"";pointer-events:none;border:1px solid #ffffff60;position:absolute;inset:8px}.book-cover>span{letter-spacing:2px;text-align:center;padding-top:3px;font-size:7px}.book-cover b{writing-mode:vertical-rl;letter-spacing:5px;white-space:nowrap;margin:auto;font:400 23px Hiragino Mincho ProN,Songti SC,serif}.book-cover small{text-align:center;letter-spacing:3px;margin-top:6px;font-size:8px}.book-info{flex:1;min-width:0;padding:9px 0}.book-info>small{color:var(--muted);font-size:9px}.book-info h3{letter-spacing:1px;margin:12px 0;font-size:18px;font-weight:500}.book-info p{color:var(--muted);margin:0 0 23px;font-size:11px}.book-info>span{color:var(--muted);font-size:10px}.compact{align-items:center;gap:20px;width:100%;padding:0}.compact .book-cover{width:72px;min-width:72px;height:103px;padding:10px 6px}.compact .book-cover b{letter-spacing:2px;font-size:16px}.compact .book-cover:before{inset:5px}.compact .book-cover>span,.compact .book-cover small{letter-spacing:1px;font-size:5px}.compact .book-info>small{display:none}.compact .book-info h3{margin:0 0 8px;font-size:15px}.compact .book-info p{margin:0 0 17px;font-size:11px}.streak-line{text-align:left;border-top:1px solid var(--line);align-items:center;gap:12px;width:100%;margin-top:28px;padding:22px 0 0;font-size:11px;display:flex}.streak-icon{color:var(--muted);font-size:25px}.streak-line small{color:var(--muted);margin-top:6px;font-size:9px;display:block}.streak-line>span:last-child{color:var(--muted);margin-left:auto}.streak-line b{color:var(--accent);font-weight:500}.desktop-footer{color:#a5a79d;letter-spacing:1px;justify-content:space-between;padding:27px 0 30px;font-size:9px;display:flex}.desktop-footer i{color:#b5b7ad;margin-left:16px;font-size:9px;font-style:normal}.content-page{min-height:620px;padding:28px 0 40px}.page-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:44px;display:flex}.page-heading h1{letter-spacing:2px;margin:17px 0 13px;font-size:30px;font-weight:500}.book-grid{grid-template-columns:repeat(2,1fr);gap:26px 38px;margin-bottom:48px;display:grid}.book-grid .book-card{border:1px solid var(--line);background:var(--paper);border-radius:12px;padding:25px}.book-grid .book-card.selected{border-color:#deab8e}.book-info .track{margin-top:16px}.book-info em{color:var(--muted);justify-content:space-between;margin-top:15px;font-size:10px;font-style:normal;display:flex}.selected .book-info em{color:var(--accent)}.search-field{background:var(--soft);border-radius:9px;align-items:center;gap:12px;margin-bottom:15px;padding:0 17px;display:flex}.search-field>span{color:var(--muted);font-size:27px}.search-field input{width:100%;height:48px;box-shadow:none;background:0 0;border:0;font-size:13px}.word-row{border-bottom:1px solid var(--line);align-items:center;gap:20px;padding:12px 6px;display:flex}.word-row[hidden]{display:none}.word-open{text-align:left;flex:1;grid-template-columns:1fr 1fr 1.8fr;align-items:center;gap:20px;padding:10px 0;display:grid}.word-open b{font-size:18px;font-weight:500}.word-open span{color:var(--muted);font-size:12px}.word-open .row-meaning{color:var(--text)}.word-state{color:var(--muted);white-space:nowrap;font-size:9px}.star{color:#aaa;font-size:23px}.star.on{color:var(--accent)}.no-matches{text-align:center;color:var(--muted);padding:30px;font-size:14px}.empty-state{text-align:center;color:var(--muted);padding:90px 20px}.empty-state>span{letter-spacing:8px;color:#bbc0b2;font-family:serif;font-size:35px}.empty-state h3{color:var(--text);margin-top:27px;font-size:18px;font-weight:400}.empty-state p{font-size:12px;line-height:1.8}.study-page{max-width:940px;margin:12px auto 40px}.study-top{color:var(--muted);justify-content:space-between;align-items:center;padding:0 0 24px;font-size:12px;display:flex}.back-link{color:var(--text);padding:8px 0;font-size:19px}.back-link span{margin-left:8px;font-size:12px}.progress-count{color:var(--accent);font-size:16px}.progress-count i{color:var(--muted);font-size:12px;font-style:normal}.study-track{background:var(--line);height:2px;overflow:hidden}.study-track i{background:var(--accent);height:100%;transition:width .3s;display:block}.study-body{grid-template-columns:1fr 1fr;min-height:380px;margin-top:35px;display:grid}.word-block{padding-right:42px}.word-toolbar{letter-spacing:1px;color:var(--muted);justify-content:space-between;align-items:center;font-size:10px;display:flex}.word-center{text-align:center;padding:27px 0}.reading{letter-spacing:4px;min-height:22px;color:var(--muted);margin:10px 0 12px;font-size:17px}.word-center h1{letter-spacing:5px;overflow-wrap:anywhere;margin:18px 0 25px;font-family:Hiragino Mincho ProN,Yu Mincho,Songti SC,serif;font-size:65px;font-weight:400}.audio-button{border:1px solid var(--line);color:var(--muted);border-radius:30px;padding:10px 18px;font-size:10px}.audio-button span{letter-spacing:1px;margin-left:5px}.definition{margin-top:27px}.definition p{letter-spacing:1px;font-size:19px}.recall-note{color:var(--muted);margin-top:50px;font-size:11px}.context-block{border-left:1px solid var(--line);margin:15px 0;padding:30px 0 24px 44px}.context-block .section-eyebrow{font-size:9px}.section-eyebrow span{letter-spacing:1px;margin-left:12px}.example{letter-spacing:1px;overflow-wrap:anywhere;margin:34px 0 16px;font-family:Hiragino Mincho ProN,Yu Mincho,serif;font-size:23px;line-height:1.9}.text-audio{color:var(--accent);padding:13px 0;font-size:11px}.memory-note{border-top:1px solid var(--line);margin-top:29px;padding-top:20px}.memory-note>span{color:var(--muted);font-size:10px}.hidden-context{text-align:center;color:var(--muted);padding-top:68px}.hidden-context>span{color:#c7cbbf;opacity:.5;font:64px serif}.hidden-context p{letter-spacing:2px;margin-top:23px;font-size:13px}.hidden-context small{font-size:10px}.study-controls{text-align:center;max-width:640px;margin:35px auto 0}.reveal-button{justify-content:center;gap:50px;width:100%;max-width:370px;margin:auto;display:flex}.reveal-button span{opacity:.65}.control-hint{color:var(--muted);margin:18px 0;font-size:10px;display:block}.grade-buttons{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.grade-buttons button{background:var(--paper);border:1px solid var(--line);border-radius:9px;padding:16px 9px}.grade-buttons button b{letter-spacing:1px;font-size:14px;font-weight:500;display:block}.grade-buttons button span{color:var(--muted);margin-top:9px;font-size:9px;display:block}.grade-buttons .good{color:#b15c2a;background:#faeee6;border-color:#e7b89c}.done-page{text-align:center;flex-direction:column;align-items:center;min-height:650px;padding:50px 20px;display:flex}.done-stamp{color:var(--accent);letter-spacing:2px;border:1px solid #e8b69b;margin:15px 0 48px;padding:13px 18px;font-family:serif;font-size:14px;transform:rotate(-7deg)}.done-page h1{letter-spacing:4px;font-family:Songti SC,serif;font-size:43px;font-weight:400;line-height:1.5}.done-page p{color:var(--muted);margin:0 0 30px;font-size:13px;line-height:2.1}.done-page .primary{min-width:270px}.quiz-page{max-width:820px;margin:12px auto 60px}.quiz-card{text-align:center;max-width:460px;margin:65px auto 0}.quiz-card h1{font-size:32px;font-weight:400;line-height:1.5}.quiz-card>p{color:var(--muted);font-size:11px}#quiz-form{flex-direction:column;gap:15px;margin-top:35px;display:flex}#answer{text-align:center;letter-spacing:4px;padding:18px 10px;font-size:27px}#answer:disabled{opacity:.7}.quiz-feedback{color:#9f603b;background:#faeee6;border-radius:9px;margin:20px 0;padding:20px}.quiz-feedback.correct{color:#526447;background:#e9ede4}.quiz-feedback p{font-size:21px}.quiz-feedback p span{font-size:15px}.quiz-feedback small{line-height:1.8;display:block}.profile-stats{grid-template-columns:repeat(4,1fr);margin:45px 0;display:grid}.profile-stats>div{text-align:center;border-right:1px solid var(--line)}.profile-stats>div:last-child{border:0}.profile-stats strong{font-size:45px;font-weight:300;display:block}.profile-stats span{color:var(--muted);margin-top:12px;font-size:11px;display:block}.activity{border:1px solid var(--line);background:var(--paper);border-radius:12px;padding:24px 28px 28px}.activity .section-line{margin-top:0}.calendar{grid-template-columns:repeat(14,1fr);gap:7px;display:grid}.calendar-day{background:var(--soft);height:48px;color:var(--muted);border-radius:5px;flex-direction:column;justify-content:center;align-items:center;font-size:11px;display:flex}.calendar-day i{margin-top:6px;font-size:17px;line-height:5px}.calendar-day.studied{color:#b96537;background:#e97d4324}.calendar-day.today{outline:1px solid var(--accent);outline-offset:1px}.profile-actions{grid-template-columns:1fr 1fr;gap:20px 40px;margin:30px 0;display:grid}.profile-actions button{text-align:left;border-bottom:1px solid var(--line);padding:20px 0}.profile-actions b{font-size:14px;font-weight:500;display:block}.profile-actions span{color:var(--muted);margin-top:10px;font-size:11px;display:block}.about-note{color:var(--muted);margin-top:30px;font-size:10px;line-height:2}dialog{border:1px solid var(--line);background:var(--bg);width:calc(100% - 36px);max-width:500px;color:var(--text);border-radius:15px;max-height:90dvh;padding:27px 30px;overflow-y:auto;box-shadow:0 25px 90px #0002}.modal-head{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.modal-head h2{letter-spacing:1px;margin:0;font-size:21px;font-weight:500}.modal-head .icon-button{font-size:26px}.setting-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:22px 0;display:flex}.setting-row small{color:var(--muted);margin-top:9px;font-size:11px;display:block}.setting-row select{padding:10px;font-size:13px}dialog .primary{width:100%;margin-top:15px}.modal-copy{color:var(--muted);font-size:12px;line-height:1.9}.import-columns{background:var(--soft);border-radius:7px;margin:20px 0 12px;padding:13px 10px;font-size:10px}textarea{resize:vertical;width:100%;padding:13px;font-size:13px;line-height:1.7}.file-label{color:var(--muted);margin-top:15px;font-size:12px;line-height:2.4;display:block}.file-label input{width:100%;padding:9px;font-size:11px}#restore-file{width:100%;padding:12px;font-size:12px}#restore-preview{margin-top:20px;font-size:13px;line-height:1.8}.detail-content>p:first-child{letter-spacing:3px;color:var(--muted)}.detail-content>small{color:var(--muted);font-size:11px}.detail-content h3{font-size:20px;font-weight:500}.install-copy h3{margin-top:27px;font-size:15px;font-weight:500}.install-copy p{font-size:12px;line-height:1.9}#toast{color:#fff;z-index:1000;opacity:0;pointer-events:none;background:#343a31;border-radius:10px;width:max-content;max-width:calc(100% - 36px);padding:14px 22px;font-size:12px;line-height:1.7;transition:all .2s;position:fixed;bottom:30px;left:50%;transform:translate(-50%,20px)}#toast.visible{opacity:1;transform:translate(-50%)}[data-theme=dark]{--bg:#232720;--paper:#2a2e26;--text:#e1e4d9;--muted:#9da592;--line:#3b4235;--soft:#30372b;background:var(--bg);color:var(--text)}[data-theme=dark] .grade-buttons .good{color:#f4b18c;background:#46372c;border-color:#8e6145}[data-theme=dark] .quiz-feedback{color:#edb18c;background:#453529}[data-theme=dark] .quiz-feedback.correct{color:#bbd7a7;background:#36432e}[data-theme=dark] .book-cover{filter:brightness(.8)}@media (width>=1500px){.app-shell{padding-top:20px}.home-grid,.wallpaper{min-height:690px}.today-panel{padding:56px 50px}.daily-word{padding-top:85px}.today-numbers{margin-top:40px}.streak-line{margin-top:36px}}@media (width<=1000px){.app-shell{padding:0 28px}.today-panel{padding:34px 28px}.home-grid{grid-template-columns:1.2fr 1fr}.topbar nav{gap:28px;padding:0}.today-heading h2{font-size:29px}.home-actions button{padding:17px}.wallpaper-bottom{padding:50px 23px 35px}.book-grid{gap:20px}.book-grid .book-card{gap:18px;padding:20px}.book-cover{width:95px;min-width:95px}.book-info h3{font-size:16px}.book-info p{font-size:10px}.context-block{padding-left:28px}.word-block{padding-right:28px}}@media (width<=700px){.app-shell{padding:0 20px 85px}.topbar{height:78px}.brand{gap:9px;font-size:16px}.brand-mark{width:33px;height:33px;font-size:22px}.brand small{letter-spacing:3px;font-size:8px}.topbar nav{z-index:10;border-top:1px solid var(--line);background:var(--bg);width:100%;padding:5px 12px calc(7px + env(safe-area-inset-bottom));height:calc(65px + env(safe-area-inset-bottom));grid-template-columns:repeat(4,1fr);gap:0;display:grid;position:fixed;bottom:0;left:0}.nav-item{letter-spacing:0;padding:3px 0;font-size:10px}.nav-item span{margin:0 auto 3px;font-size:23px;font-weight:400;line-height:26px;display:block}.nav-item.active{color:var(--accent)}.nav-item.active:after{display:none}.settings-toggle{font-size:21px}.home-grid{background:0 0;border:0;border-radius:12px;flex-direction:column;gap:0;display:flex}.wallpaper{background-position:48% 45%;border-radius:12px;min-height:565px;overflow:hidden}.wallpaper-top{letter-spacing:2px;padding:23px 24px;font-size:9px}.daily-word{padding-top:53px}.daily-word h1{margin:11px 0 18px;font-size:77px}.daily-word>span{font-size:14px}.daily-word p{letter-spacing:2px;font-size:11px}.wallpaper-bottom{padding:45px 23px 33px}.wallpaper-bottom>p{letter-spacing:1px;font-size:13px}.wallpaper-bottom>span{letter-spacing:1px;font-size:9px}.home-actions{margin-top:26px}.home-actions button{padding:14px 20px}.home-actions strong{font-size:31px}.home-actions small{font-size:10px}.today-panel{padding:34px 8px 0}.today-heading h2{margin:16px 0 10px;font-size:27px;line-height:1.5}.today-heading h2 br{display:none}.today-heading p{font-size:11px}.today-numbers{gap:65px;margin-top:24px}.today-numbers strong{font-size:34px}.goal-line{margin-bottom:25px}.compact{max-width:100%}.streak-line{padding-bottom:5px}.desktop-footer{display:none}.content-page{padding-top:15px}.page-heading{margin-bottom:28px;display:block}.page-heading h1{letter-spacing:1px;margin-top:14px;font-size:25px;line-height:1.5}.page-heading p{font-size:11px}.page-heading .outline-button{margin-top:13px;padding:10px 14px;font-size:12px}.book-grid{grid-template-columns:1fr;gap:14px;margin-bottom:33px}.book-grid .book-card{gap:24px;padding:20px}.book-cover{width:108px;min-width:108px;height:155px}.book-info{padding-top:6px}.book-info h3{font-size:18px}.book-info p{margin-bottom:18px;font-size:11px}.word-row{gap:8px;padding:10px 0}.word-open{grid-template-columns:1fr 1.2fr;gap:6px 12px;padding:5px 0}.word-open b{font-size:17px}.word-open>span{font-size:11px}.word-open .row-meaning{color:var(--muted);grid-column:1/-1;font-size:11px}.word-state{font-size:8px}.word-row .icon-button{width:35px;min-width:35px}.learning-shell .topbar{display:none}.learning-shell{padding-top:max(20px,env(safe-area-inset-top));padding-bottom:25px}.study-page{margin:0}.study-top{padding-bottom:17px;font-size:10px}.study-top .back-link span{font-size:11px}.study-body{min-height:0;margin-top:16px;display:block}.word-block{padding:0}.word-toolbar{font-size:9px}.word-center{padding:12px 0 13px}.word-center h1{letter-spacing:4px;margin:17px 0 23px;font-size:59px}.reading{margin:2px 0 12px;font-size:15px}.reading.muted{font-size:10px}.definition{margin-top:18px}.definition p{margin:12px 0 8px;font-size:18px}.context-block{border-left:0;border-top:1px solid var(--line);margin:16px 0 0;padding:23px 6px 0}.context-block:has(.hidden-context){display:none}.example{margin:18px 0 12px;font-size:20px;line-height:1.9}.translation{font-size:12px}.context-note{margin-top:4px;font-size:8px}.text-audio{padding:9px 0;font-size:10px}.memory-note{display:none}.study-controls{margin:25px auto 10px}.grade-buttons{gap:8px}.grade-buttons button{padding:14px 5px}.grade-buttons button b{font-size:13px}.grade-buttons button span{letter-spacing:-.1px;font-size:8px}.control-hint{margin:16px 0;font-size:9px}.keyboard-hint{display:none}.recall-note{margin-top:65px}.study-body:not(.revealed){min-height:calc(100dvh - 240px)}.study-body:not(.revealed) .word-center{padding-top:45px}.reveal-button{max-width:100%}.done-page{min-height:600px;padding-top:20px}.done-page h1{font-size:34px}.done-page p{font-size:12px}.done-stamp{margin-bottom:32px}.quiz-page{margin:0}.quiz-card{margin-top:55px}.quiz-card h1{font-size:27px}.profile-stats{margin:35px 0}.profile-stats strong{font-size:32px}.profile-stats span{font-size:9px}.activity{padding:20px 14px}.activity .section-line>small{font-size:9px}.calendar{grid-template-columns:repeat(7,1fr);gap:6px}.calendar-day{height:41px;font-size:10px}.profile-actions{grid-template-columns:1fr;gap:0}.profile-actions b{font-size:13px}.profile-actions span{font-size:10px}.about-note,.section-eyebrow{font-size:9px}.section-line h3{font-size:13px}.section-line>button{font-size:10px}dialog{max-height:85dvh;padding:22px}.modal-head h2{font-size:19px}#toast{font-size:11px;bottom:90px}.learning-shell~#toast{bottom:20px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.scene-intro{justify-content:space-between;align-items:center;gap:30px;display:flex}.scene-intro h1{letter-spacing:1px;margin:19px 0 15px;font-size:34px;font-weight:500}.scene-intro p{color:var(--muted);font-size:13px;line-height:1.8}.scene-totals{text-align:center;gap:35px;display:flex}.scene-totals strong{font-size:36px;font-weight:300}.scene-totals span{color:var(--muted);letter-spacing:1px;margin-top:8px;font-size:10px;display:block}.scene-continue{background:var(--paper);border:1px solid var(--line);border-radius:12px;align-items:center;gap:24px;margin:30px 0 40px;padding:25px 28px;display:flex}.scene-continue>div{flex:1}.scene-continue small{color:var(--muted);margin-bottom:9px;font-size:10px;display:block}.scene-continue b{font-size:18px;font-weight:500}.scene-continue b span{color:var(--muted);margin-left:18px;font-size:11px;font-weight:400}.scene-continue .primary{padding:14px 22px;font-size:12px}.review-inline{color:var(--muted);padding:12px 4px;font-size:11px}.review-inline b{color:var(--text);margin-left:8px;font-size:20px;font-weight:400}.catalog-heading{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.catalog-heading h2{letter-spacing:1px;margin:0;font-size:20px;font-weight:500}.catalog-heading>span{color:var(--muted);font-size:11px}.scene-search{background:var(--paper);border:1px solid var(--line);max-width:100%;margin-bottom:18px}.category-tabs{flex-wrap:wrap;gap:6px;margin-bottom:27px;display:flex}.category-tabs button{color:var(--muted);border-radius:7px;padding:10px 12px;font-size:12px}.category-tabs button.selected{color:var(--text);background:var(--soft)}.scene-card{border:1px solid var(--line);text-align:left;background:var(--paper);border-radius:12px;padding:22px;position:relative;overflow:hidden}.scene-card[hidden]{display:none}.scene-card:hover{color:var(--text);border-color:#d8ad92;transform:translateY(-2px)}.scene-card-top{align-items:center;gap:12px;display:flex}.scene-card-top>span:nth-child(2){color:var(--muted);font-size:10px}.scene-card-top>i{color:#a5ac9e;margin-left:auto;font-size:18px;font-style:normal}.scene-mark{background:var(--scene-color);color:#465343;border-radius:5px;flex-shrink:0;place-items:center;width:41px;height:44px;font:25px Hiragino Mincho ProN,Songti SC,serif;display:grid}.scene-card h3{letter-spacing:1px;margin:19px 0 10px;font-size:19px;font-weight:500}.scene-card>p{color:var(--muted);margin:0 0 26px;font-size:12px;line-height:1.7}.scene-card-bottom{color:var(--muted);justify-content:space-between;align-items:center;gap:5px;font-size:10px;display:flex}.scene-card-bottom b{color:var(--accent);font-size:10px;font-weight:400}.scene-card>.track{background:0 0;width:100%;height:2px;position:absolute;bottom:0;left:0}.catalog-note{color:var(--muted);margin-top:24px;font-size:10px;line-height:1.9}.scene-detail{padding:5px 0 40px}.scene-detail-heading{align-items:center;gap:22px;margin:30px 0;display:flex}.scene-detail-heading>.scene-mark{width:78px;height:88px;font-size:48px}.scene-detail-heading h1{margin:10px 0;font-size:34px;font-weight:500}.scene-detail-heading p{color:var(--muted);margin:0;font-size:13px}.lesson-roadmap{border-bottom:1px solid var(--line);color:var(--muted);align-items:center;gap:22px;padding:20px 0 25px;font-size:12px;display:flex}.lesson-roadmap span b{opacity:.7;margin-right:8px;font-size:10px;font-weight:400}.lesson-roadmap>i{color:#b3b8ad;font-style:normal}.lesson-roadmap .current{color:var(--accent)}.lesson-roadmap .complete{color:var(--green)}.scene-detail-grid{grid-template-columns:1fr 1.2fr;gap:70px;padding:40px 0;display:grid}.lesson-plan>small{color:var(--muted);font-size:10px}.lesson-plan h2{margin:15px 0;font-size:23px;font-weight:500}.group-progress{align-items:baseline;gap:15px;margin:22px 0 15px;display:flex}.group-progress strong small{color:var(--muted);font-size:17px}.group-progress>span{color:var(--muted);font-size:10px}.lesson-plan>.primary{width:100%;margin-top:24px;font-size:14px}.story-entry{width:100%;margin-top:12px}.lesson-save-note{text-align:center;margin-top:17px;display:block}.scene-preview{border-left:1px solid var(--line);padding:10px 0 0 45px}.scene-preview>h2{margin-top:20px;font-size:16px;font-weight:500}.scene-preview>p{letter-spacing:1px;margin:24px 0 15px;font:25px/1.8 Hiragino Mincho ProN,Songti SC,serif}.scene-preview>span:not(.section-eyebrow){color:var(--muted);font-size:12px;line-height:1.8}.article-preview{border-top:1px solid var(--line);margin-top:35px;padding-top:22px}.article-preview>span{color:var(--muted);font-size:10px}.article-preview h3{margin:12px 0;font-size:18px;font-weight:500}.article-preview p{color:var(--muted);font-size:12px;line-height:1.8}.article-preview small{color:var(--muted);font-size:10px;line-height:1.8}.group-words{border-top:1px solid var(--line);padding-top:25px}.group-words summary{cursor:pointer;font-size:14px}.group-words summary span{color:var(--muted);margin-left:20px;font-size:11px}.group-word-grid{grid-template-columns:repeat(3,1fr);gap:0 25px;margin-top:20px;display:grid}.group-word-grid>button{text-align:left;border-bottom:1px solid var(--line);gap:13px;padding:18px 0;display:flex}.group-word-grid>button>small{color:var(--muted);padding-top:5px;font-size:9px}.group-word-grid b{font-size:18px;font-weight:500}.group-word-grid div>span{color:var(--muted);margin-top:5px;font-size:10px;display:block}.group-word-grid p{color:var(--muted);margin:8px 0 0;font-size:11px}.group-word-grid i{color:var(--accent);margin-left:auto;font-style:normal}.article-page{padding:10px 0 40px}.article-heading{text-align:center;margin:30px 0 35px}.article-heading h1{letter-spacing:2px;margin:18px 0;font-family:Songti SC,serif;font-size:38px;font-weight:400}.article-heading p{color:var(--muted);font-size:12px}.reading-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding-bottom:18px;display:flex}.reading-toolbar button{color:var(--muted);padding:10px 15px;font-size:12px}.reading-toolbar button[aria-pressed=true]{color:var(--accent)}.reading-tabs button[aria-pressed=true]{background:var(--paper);border:1px solid var(--line);border-radius:7px}.article-layout{grid-template-columns:1fr 220px;gap:45px;margin-top:28px;display:grid}.reading-paper{background:var(--paper);border:1px solid var(--line);border-radius:12px;min-width:0;padding:20px 35px 30px}.paper-top{border-bottom:1px solid var(--line);align-items:center;gap:15px;margin-bottom:12px;padding-bottom:8px;display:flex}.paper-top>span{color:var(--muted);flex:1;font-size:10px}.paper-top .text-button{font-size:10px}.story-line{gap:18px;padding:17px 0 12px;display:flex}.line-number{color:var(--muted);padding-top:25px;font-size:9px}.story-line>div{min-width:0}.story-japanese{overflow-wrap:anywhere;margin:0;font:22px/2.4 Hiragino Mincho ProN,Yu Mincho,Songti SC,serif}.article-word{font:inherit;color:var(--text);vertical-align:baseline;background:0 0;border-bottom:1px solid #e97d4377;border-radius:0;padding:0 1px;display:inline}.article-word:hover{color:var(--accent)}.article-word ruby{ruby-align:center}.article-word rt{letter-spacing:1px;color:var(--muted);font:10px sans-serif}.hide-kana rt{display:none}.sentence-reading{color:var(--muted);margin:9px 0 0;font-size:11px;line-height:1.8;display:block}.line-chinese{color:var(--muted);margin:12px 0 0;font-size:13px;line-height:1.9}.article-vocab h2{margin:10px 0;font-size:15px;font-weight:500}.article-vocab>p{color:var(--muted);margin-bottom:18px;font-size:10px}.article-vocab>div{flex-direction:column;display:flex}.article-vocab button{text-align:left;border-bottom:1px solid var(--line);justify-content:space-between;gap:10px;padding:13px 0;display:flex}.article-vocab button b{font-size:13px;font-weight:500}.article-vocab button span{color:var(--muted);text-align:right;font-size:10px;line-height:1.6}.article-finish{text-align:center;padding:35px 0 0}.article-finish>p{color:var(--muted);font-size:12px;line-height:1.9}.article-finish>.primary{margin:10px auto;display:block}.article-finish>.text-button{font-size:12px}.dialogue-line{border-bottom:1px solid var(--line);gap:17px;padding:24px 0;display:flex}.dialogue-line:last-child{border:0}.speaker{color:var(--muted);width:45px;min-width:45px;padding-top:16px;font-size:10px}.dialogue-line>div>p:first-child{margin:0;font:21px/2 Hiragino Mincho ProN,Songti SC,serif}.dialogue-line.mine .speaker{color:var(--accent)}.scene-done h1{font-size:37px}.scene-done .done-stamp{font-size:14px}.scene-done p{max-width:400px}.scene-done .primary{font-size:14px}@media (width<=1000px){.scene-grid{grid-template-columns:repeat(2,1fr)}.scene-intro h1{font-size:29px}.scene-detail-grid{gap:35px}.scene-preview{padding-left:28px}.article-layout{grid-template-columns:1fr 190px;gap:25px}.reading-paper{padding:18px 23px}.story-japanese{font-size:20px}}@media (width<=700px){.scene-home{padding-top:10px}.scene-intro{display:block}.scene-intro h1{letter-spacing:0;margin:14px 0 8px;font-size:25px;line-height:1.6}.scene-intro p{max-width:320px;margin:0;font-size:12px;line-height:1.9}.scene-totals{display:none}.scene-continue{grid-template-columns:1fr auto;gap:17px 10px;margin:24px 0 30px;padding:18px;display:grid}.scene-continue b{font-size:17px}.scene-continue b span{margin:8px 0 0;font-size:10px;display:block}.scene-continue .primary{padding:13px 16px;font-size:11px}.review-inline{text-align:left;border-top:1px solid var(--line);grid-column:1/-1;justify-content:space-between;align-items:center;padding:13px 0 0;display:flex}.review-inline b{font-size:18px}.catalog-heading{gap:10px}.catalog-heading h2{font-size:17px}.catalog-heading>span{font-size:9px}.scene-search{padding:0 12px}.scene-search input{font-size:11px}.category-tabs{scrollbar-width:thin;flex-wrap:nowrap;gap:3px;margin-bottom:18px;padding-bottom:8px;overflow-x:auto}.category-tabs button{white-space:nowrap;padding:9px 11px;font-size:11px}.category-tabs small{margin-left:5px;font-size:8px}.scene-grid{grid-template-columns:1fr 1fr;gap:12px}.scene-card{border-radius:10px;padding:16px 13px}.scene-mark{width:34px;height:37px;font-size:22px}.scene-card-top{gap:7px}.scene-card-top>span:nth-child(2){font-size:8px}.scene-card-top>i{display:none}.scene-card h3{letter-spacing:0;margin:15px 0 10px;font-size:16px}.scene-card>p{min-height:36px;margin-bottom:18px;font-size:10px;line-height:1.8}.scene-card-bottom{font-size:9px;display:block}.scene-card-bottom b{margin-top:8px;font-size:9px;display:block}.catalog-note{font-size:9px}.scene-detail{padding-top:0}.scene-detail-heading{gap:17px;margin:23px 0}.scene-detail-heading>.scene-mark{width:60px;height:70px;font-size:39px}.scene-detail-heading h1{margin:8px 0;font-size:28px}.scene-detail-heading p{font-size:11px;line-height:1.7}.lesson-roadmap{justify-content:space-between;gap:8px;padding:17px 0;font-size:10px}.lesson-roadmap span b{margin:0 0 6px;font-size:8px;display:block}.lesson-roadmap i{font-size:10px}.scene-detail-grid{flex-direction:column;gap:30px;padding:28px 0;display:flex}.lesson-plan h2{font-size:21px}.lesson-plan>p{font-size:12px}.group-progress{margin:18px 0 12px}.group-progress strong{font-size:38px}.scene-preview{border-left:0;border-top:1px solid var(--line);padding:25px 0 0}.scene-preview>p{font-size:23px}.article-preview{margin-top:25px}.group-words summary{font-size:12px}.group-words summary span{margin-left:12px;font-size:9px}.group-word-grid{grid-template-columns:1fr 1fr;gap:0 15px}.group-word-grid>button{gap:9px}.group-word-grid b{font-size:16px}.group-word-grid p{font-size:10px}.article-page{padding-top:0}.article-heading{margin:27px 0}.article-heading h1{letter-spacing:1px;font-size:29px;line-height:1.5}.article-heading p{font-size:11px;line-height:1.8}.reading-toolbar{flex-direction:column;align-items:stretch;gap:6px;padding-bottom:11px}.reading-toolbar>div{justify-content:space-between;display:flex}.reading-toolbar button{padding:9px 13px;font-size:11px}.reading-toolbar>div:last-child{justify-content:flex-end}.article-layout{margin-top:20px;display:block}.reading-paper{padding:15px 15px 20px}.paper-top{gap:10px}.paper-top>span{font-size:9px}.paper-top .text-audio{font-size:10px}.paper-top .text-button{font-size:9px}.story-line{gap:9px;padding:13px 0}.line-number{padding-top:22px;font-size:8px}.story-japanese{font-size:20px;line-height:2.5}.article-word rt{letter-spacing:0;font-size:9px}.sentence-reading{font-size:10px;line-height:1.9}.line-chinese{font-size:12px;line-height:1.9}.article-vocab{margin-top:30px}.article-vocab>div{grid-template-columns:1fr 1fr;gap:0 20px;display:grid}.article-vocab button{padding:12px 0;display:block}.article-vocab button b{font-size:13px;display:block}.article-vocab button span{text-align:left;margin-top:6px;font-size:10px;display:block}.article-finish{padding-top:25px}.article-finish .primary{width:100%;font-size:12px}.article-finish>p{font-size:11px}.dialogue-line{gap:8px;padding:18px 0}.speaker{width:34px;min-width:34px;padding-top:15px;font-size:9px}.dialogue-line>div>p:first-child{font-size:19px;line-height:2}.scene-done h1{font-size:30px}.scene-done .primary{width:100%;min-width:0;font-size:12px}}@media (width<=350px){.scene-grid{gap:9px}.scene-card{padding:14px 10px}.scene-card h3{font-size:15px}.scene-card-top>span:nth-child(2){font-size:7px}.scene-intro h1{font-size:22px}}.scene-intro{isolation:isolate;color:#fff;background:#35463e url(/kyoto.jpg) 50% 53%/cover;border-radius:20px;align-items:flex-end;min-height:420px;padding:54px 52px 75px;position:relative;overflow:hidden}.scene-intro:before{content:"";z-index:-1;background:linear-gradient(90deg,#101d1ac2,#101d1a1f 78%),linear-gradient(#0000 50%,#101d1a66);position:absolute;inset:0}.scene-intro:after{content:"京都 · 暮色里的街道";letter-spacing:3px;color:#fffc;font-size:10px;position:absolute;top:26px;right:27px}.scene-intro .section-eyebrow{color:#fff9;letter-spacing:5px;font-size:12px}.scene-intro h1{letter-spacing:4px;margin:20px 0;font-family:Hiragino Mincho ProN,Songti SC,serif;font-size:52px;font-weight:500;line-height:1.4}.scene-intro p{color:#fffc;letter-spacing:1px;font-size:13px;line-height:2}.scene-totals{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#152b2545;border:1px solid #fff3;border-radius:12px;gap:30px;margin-bottom:0;padding:18px 25px}.scene-totals strong{font-size:32px}.scene-totals span{color:#fffb}.scene-continue{background:var(--paper);border:1px solid #fff7;border-radius:14px;margin:-35px 28px 48px;padding:24px 30px;position:relative;box-shadow:0 10px 35px #27372b12}.catalog-heading h2{letter-spacing:2px;font-family:Hiragino Mincho ProN,Songti SC,serif;font-size:25px}.scene-grid{gap:20px}.scene-card{border:0;border-radius:12px;padding-top:148px;transition:transform .25s,box-shadow .25s;box-shadow:0 3px 18px #2e352408}.scene-card:before{content:"";background:url(/kyoto.jpg) 50% 65%/cover;height:126px;transition:filter .3s;position:absolute;top:0;left:0;right:0}.scene-card[data-category-id=eat]:before,.scene-card[data-category-id=shop]:before,.scene-card[data-category-id=admin]:before{background-image:url(/scenery/tokyo.jpg);background-position:50% 52%}.scene-card[data-category-id=health]:before,.scene-card[data-category-id=work-study]:before,.scene-card[data-category-id=social]:before{background-image:url(/scenery/sakura.jpg);background-position:50%}.scene-card:nth-child(3n):before{background-position:60% 70%}.scene-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px #2e352414}.scene-mark{width:30px;height:32px;font-size:25px;background:0 0!important}.scene-card h3{margin-top:13px}.scene-card .track{height:2px}.scene-card-top>i{font-size:19px}.study-page{isolation:isolate;background:var(--paper);border-radius:18px;padding:30px 36px;position:relative;box-shadow:0 16px 50px #233d2c18}.app-shell:has(.study-page):before{content:"";z-index:-1;background:linear-gradient(#f8f7f43b,#f8f7f496),url(/scenery/sakura.jpg) 50%/cover;position:fixed;inset:0}.app-shell:has(.study-page) .topbar{background:var(--bg);border-radius:0 0 16px 16px;margin-bottom:22px;padding:0 22px}.scene-detail-heading{color:#fff;background:linear-gradient(90deg,#172b27db,#172b2760),url(/scenery/tokyo.jpg) 50%/cover;border-radius:14px;padding:35px}.scene-detail-heading .section-eyebrow,.scene-detail-heading p{color:#fffc}.scene-detail-heading>.scene-mark{color:#fff;background:#ffffff1a!important}.article-heading{color:#fff;background:linear-gradient(90deg,#20392ee8,#20392e60),url(/scenery/sakura.jpg) 50%/cover;border-radius:14px;padding:35px}.article-heading .section-eyebrow,.article-heading p{color:#fffc}@media (width<=700px){.scene-intro{background-position:57%;border-radius:15px;min-height:370px;padding:38px 26px 67px}.scene-intro h1{letter-spacing:3px;margin:23px 0 14px;font-size:35px;line-height:1.5}.scene-intro p{font-size:11px;line-height:2}.scene-intro .section-eyebrow{letter-spacing:3px;font-size:10px}.scene-intro:after{letter-spacing:2px;font-size:8px;top:19px;right:18px}.scene-continue{gap:15px 8px;margin:-29px 12px 32px;padding:20px 17px}.scene-grid{gap:13px}.scene-card{padding:110px 14px 17px}.scene-card:before{height:94px}.scene-card-top{gap:5px}.scene-mark{width:24px;height:26px;font-size:21px}.scene-card h3{margin:12px 0 8px;font-size:17px}.scene-card>p{font-size:11px}.scene-card-top>span:nth-child(2){font-size:9px}.catalog-heading h2{font-size:21px}.study-page{border-radius:14px;padding:22px 18px}.app-shell:has(.study-page) .topbar{margin-bottom:12px;padding:0 10px}.scene-detail-heading{padding:24px 18px}.article-heading{padding:26px 20px}.article-heading h1{font-size:27px}.scene-card-bottom b{font-size:10px}}@media (prefers-reduced-motion:reduce){.scene-card{transition:none}}.category-overview[hidden],.scene-catalog[hidden]{display:none}.category-card{text-align:left;background:var(--paper);min-height:315px;color:var(--text);border-radius:16px;grid-template-rows:185px auto auto;padding:0;display:grid;overflow:hidden;box-shadow:0 4px 24px #29351e0b}.menu-lookup{border:1px solid var(--line);background:var(--paper);border-radius:14px;margin:26px 0 40px;padding:24px}.menu-lookup summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;margin-bottom:0;font-size:19px;display:flex}.menu-lookup[open] summary{margin-bottom:20px}.menu-lookup summary small{color:var(--muted);margin-left:14px;font-size:11px;display:inline-block}.menu-lookup summary b{color:var(--accent);white-space:nowrap;font:15px ui-monospace,monospace}.menu-lookup .search-field{margin:0}.dictionary-tools{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;margin:13px 0;font-size:11px;display:flex}.dictionary-tools button{color:var(--accent);text-align:right;font-size:11px}.dictionary-list{overscroll-behavior:contain;border-top:1px solid var(--line);border-bottom:1px solid var(--line);max-height:320px;overflow:auto}.dictionary-row{text-align:left;border-bottom:1px solid var(--line);grid-template-columns:minmax(160px,1fr) minmax(0,2fr) 20px;align-items:center;gap:18px;width:100%;padding:15px 5px;display:grid}.dictionary-row:last-child{border:0}.dictionary-row b{overflow-wrap:anywhere;font-size:15px;font-weight:500;line-height:1.6;display:block}.dictionary-row small{color:var(--muted);font-size:10px;line-height:1.7;display:block}.dictionary-row p{color:var(--muted);margin:0;font-size:12px;line-height:1.8}.dictionary-row>span{color:var(--accent)}.dictionary-row[hidden]{display:none}.dictionary-note{color:var(--muted);margin:14px 0 0;font-size:10px;line-height:1.9}.dictionary-note a{text-underline-offset:3px;text-decoration:underline}.lesson-selector{margin-bottom:34px}.lesson-selector header{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:20px;display:flex}.lesson-selector h2,.current-lesson-heading h2{margin:5px 0 0;font:500 24px/1.5 Hiragino Mincho ProN,Songti SC,serif}.lesson-selector header>span{color:var(--muted);font-size:11px}.lesson-tiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.lesson-tiles button{text-align:left;background:var(--paper);border:1px solid var(--line);border-radius:9px;align-items:center;gap:12px;padding:17px 14px;display:flex}.lesson-tiles button.selected{border-color:var(--accent);background:#7d968c13}.lesson-tiles button>span{color:var(--accent);font:20px/1.2 ui-monospace,monospace}.lesson-tiles button div{flex:1}.lesson-tiles b{font-size:12px;font-weight:500;line-height:1.7;display:block}.lesson-tiles small{color:var(--muted);margin-top:3px;font-size:10px;display:block}.lesson-tiles i{color:var(--muted);font-style:normal}.current-lesson-heading{margin:28px 0 20px;scroll-margin-top:90px}@media (width<=700px){.menu-lookup{margin:20px 0 28px;padding:18px 15px}.menu-lookup summary{font-size:17px}.menu-lookup summary small{margin:5px 0 0;font-size:10px;display:block}.dictionary-row{grid-template-columns:minmax(0,1fr);gap:4px;padding:14px 4px}.dictionary-row>div{flex-wrap:wrap;align-items:baseline;gap:0 9px;display:flex}.dictionary-row>span{display:none}.dictionary-row p{font-size:11px}.dictionary-tools{align-items:flex-start}.dictionary-tools>span{white-space:nowrap}.dictionary-tools button{font-size:10px}.lesson-selector header{display:block}.lesson-selector header>span{margin-top:9px;display:block}.lesson-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.lesson-tiles button{gap:8px;padding:12px 10px}.lesson-tiles button>span{font-size:17px}.lesson-tiles b{font-size:11px}.lesson-tiles i{display:none}.lesson-selector h2,.current-lesson-heading h2{font-size:21px}}.category-volume{color:var(--accent);letter-spacing:.5px;margin-top:7px;font-size:10px;display:block}.category-photo{background:linear-gradient(0deg,#182a2359,#182a2308),var(--category-photo) center/cover;color:#fff;justify-content:space-between;align-items:flex-end;padding:22px 24px;display:flex;position:relative}.category-photo span{text-shadow:0 3px 22px #0005;font:54px/1 Hiragino Mincho ProN,Songti SC,serif}.category-photo small{letter-spacing:2px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#13221c3d;border:1px solid #fff7;padding:7px 9px;font-size:9px}.category-copy{justify-content:space-between;align-items:center;padding:22px 24px 12px;display:flex}.category-copy h3{letter-spacing:2px;margin:0 0 9px;font:500 25px/1.2 Hiragino Mincho ProN,Songti SC,serif}.category-copy p{color:var(--muted);margin:0;font-size:11px}.category-copy i{color:var(--accent);font-size:22px;font-style:normal}.category-progress{color:var(--muted);align-items:flex-end;gap:18px;padding:0 24px 22px;display:flex}.category-progress span{flex:1;font-size:9px;line-height:1.7}.category-progress b{color:var(--accent);font:400 15px/1 ui-monospace,SFMono-Regular,monospace}.category-card:hover{color:var(--text);transform:translateY(-4px);box-shadow:0 14px 35px #29351e16}.scene-catalog-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-end;margin-bottom:18px;padding:3px 0 22px;display:flex}.scene-catalog-head>button{color:var(--muted);padding:10px 0;font-size:12px}.scene-catalog-head span{color:var(--muted);letter-spacing:2px;font-size:9px}.scene-catalog-head h2{letter-spacing:2px;margin:5px 0 0;font:500 29px/1.3 Hiragino Mincho ProN,Songti SC,serif}.scene-card:before{background-image:var(--scene-photo)!important;background-position:50%!important}.scene-detail-heading{background:linear-gradient(90deg,#172b27e8,#172b2760),var(--scene-photo) center/cover}.article-heading{background:linear-gradient(90deg,#20392ee8,#20392e60),var(--scene-photo) center/cover}@media (width<=700px){.category-overview{grid-template-columns:1fr;gap:16px;margin-top:18px}.category-card{grid-template-rows:auto auto;grid-template-columns:132px 1fr;min-height:0}.category-photo{background-position:50%;grid-row:1/3;min-height:145px;padding:14px}.category-photo span{font-size:39px}.category-photo small{display:none}.category-copy{padding:20px 16px 8px}.category-copy h3{margin-bottom:7px;font-size:21px}.category-copy p{font-size:10px;line-height:1.6}.category-copy i{font-size:18px}.category-progress{gap:8px;padding:0 16px 18px}.category-progress span{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:8px;line-height:1.55;display:-webkit-box;overflow:hidden}.scene-catalog{margin-top:20px}.scene-catalog-head{align-items:center;padding-bottom:16px}.scene-catalog-head>button{font-size:11px}.scene-catalog-head h2{font-size:23px}.scene-catalog-head span{font-size:8px}}.review-hero{border:1px solid var(--line);background:var(--paper);border-radius:16px;grid-template-columns:1.25fr 1fr;display:grid;overflow:hidden}.review-hero>div:first-child{color:#fff;background:linear-gradient(90deg,#14352ddd,#14352d45),url(/kyoto.jpg) 50% 55%/cover;padding:50px 44px}.review-hero .section-eyebrow{color:#ffffffb5}.review-hero h1{letter-spacing:2px;margin:24px 0 18px;font:400 34px/1.65 Hiragino Mincho ProN,Songti SC,serif}.review-hero p{color:#ffffffc9;font-size:13px;line-height:1.9}.review-method{letter-spacing:1px;color:#ffffffba;margin-top:24px;font-size:11px;display:inline-block}.review-today{flex-direction:column;justify-content:center;align-items:flex-start;padding:42px;display:flex}.review-today>strong{margin:15px 0 0;font-size:76px;font-weight:300;line-height:1.2}.review-today>strong small{color:var(--muted);margin-left:14px;font-size:13px}.review-today p{color:var(--muted);font-size:11px}.review-today>small{color:var(--muted);font-size:11px;line-height:1.9}.review-filters{align-items:center;gap:20px;padding:27px 0;display:flex}.review-filters label{color:var(--muted);align-items:center;gap:12px;font-size:12px;display:flex}.review-filters select{max-width:290px;padding:11px 12px}.review-filters>.text-button{margin-left:auto}.review-columns{grid-template-columns:1.4fr 1fr;gap:35px;display:grid}.review-columns h2{margin:0;font-size:18px;font-weight:500}.review-list-panel .section-line>span{color:var(--muted);font-size:11px}.review-panel-note{color:var(--muted);font-size:11px;line-height:1.8}.review-word-list>div{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr auto;align-items:center;gap:12px;padding:18px 0;display:grid}.review-word-list b{overflow-wrap:anywhere;font-size:18px;font-weight:500}.review-word-list span{color:var(--muted);font-size:11px}.review-phase{color:var(--green);background:var(--soft);border-radius:6px;padding:5px 9px;font-size:10px}.review-plan{background:var(--paper);border:1px solid var(--line);border-radius:12px;margin-top:20px;padding:26px}.review-plan>p{color:var(--muted);font-size:11px;line-height:1.8}.review-days{margin:25px 0}.review-days>div{grid-template-columns:78px 1fr 35px;align-items:center;gap:15px;margin:19px 0;font-size:11px;display:grid}.review-days i{background:linear-gradient(to right,var(--green) var(--day-fill),var(--soft) var(--day-fill));border-radius:4px;height:4px}.review-days b{text-align:right;font-weight:500}.review-guide{border-top:1px solid var(--line);padding-top:15px}.review-guide p{color:var(--muted);font-size:11px;line-height:1.8}.review-guide b{color:var(--text);font-weight:500}.review-guide small{color:var(--muted);font-size:10px;line-height:1.9;display:block}.review-empty>span{color:var(--green);font-family:Hiragino Mincho ProN,serif;font-size:23px}.review-empty h3{margin-top:20px;font-size:15px;font-weight:500}.review-empty p{color:var(--muted);font-size:12px;line-height:1.8}.review-soon{background:var(--soft);border-radius:10px;margin-top:25px;padding:20px}.review-soon>div{justify-content:space-between;gap:15px;padding:10px 0;font-size:13px;display:flex}.review-soon span,.review-soon>p{color:var(--muted);font-size:11px;line-height:1.8}.scene-review-entry{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:15px;margin:0 0 24px;padding:0 0 20px;display:flex}.scene-review-entry p{color:var(--muted);margin:0;font-size:11px;line-height:1.8}.grade-buttons{grid-template-columns:repeat(4,minmax(0,1fr))!important}.grade-buttons button{min-width:0}.grade-buttons button.easy{background:var(--green);color:#fff}.grade-buttons button.easy span{color:#ffffffd9}.review-done-note{color:var(--muted);margin:15px 0;font-size:12px;line-height:1.9}.memory-date{border-top:1px solid var(--line);color:var(--muted);margin-top:20px;padding-top:15px;font-size:12px}@media (width<=900px){.topbar nav{gap:23px;padding-right:0}.review-today{padding:30px}.review-hero>div:first-child{padding:35px 28px}.review-hero h1{font-size:28px}.review-columns{gap:24px}.review-filters{gap:15px}.review-filters>.text-button{font-size:11px}.review-filters select{max-width:240px}}@media (width<=700px){.topbar nav{grid-template-columns:repeat(5,1fr);gap:0;padding-right:0;display:grid}.review-page{padding:5px 0 25px}.review-hero{grid-template-columns:1fr}.review-hero>div:first-child{padding:27px 24px}.review-hero h1{margin:17px 0 10px;font-size:26px}.review-hero p{font-size:12px}.review-method{margin-top:12px;font-size:10px}.review-today{padding:24px}.review-today>strong{margin-top:6px;font-size:60px}.review-today .primary{margin:10px 0}.review-filters{flex-wrap:wrap;gap:12px;padding:23px 0}.review-filters label{flex:1;min-width:0;font-size:10px;display:block}.review-filters label:first-child{flex:2}.review-filters select{width:100%;max-width:none;margin-top:7px;padding:10px 7px;font-size:12px;display:block}.review-filters>.text-button{text-align:right;width:100%;margin:0;padding:0}.review-columns{grid-template-columns:1fr;gap:5px}.review-columns h2{font-size:17px}.review-plan{margin-top:15px;padding:22px}.review-word-list>div{grid-template-columns:1fr 90px 42px;gap:8px}.review-word-list b{font-size:17px}.review-phase{padding:5px 6px}.grade-buttons{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}.grade-buttons button{padding:12px 6px!important}.grade-buttons button b{font-size:13px!important}.grade-buttons button span{font-size:10px!important}.study-controls .control-hint{font-size:11px}.scene-review-entry{align-items:flex-start}.scene-review-entry p{max-width:55%}.scene-review-entry .outline-button{padding:12px;font-size:12px}.review-done-note{max-width:300px;margin:15px auto}.review-today>small{overflow-wrap:anywhere}.study-page .word-center h1{font-size:clamp(22px,calc((100vw - 105px)/var(--word-chars,6)),52px);letter-spacing:1px;line-height:1.45}.learning-shell:has(.study-page) .study-controls{bottom:max(12px,env(safe-area-inset-bottom));z-index:10;background:var(--paper);border:1px solid var(--line);border-radius:12px;max-width:none;margin:0;padding:12px;position:fixed;left:20px;right:20px;box-shadow:0 8px 30px #182e2518}.learning-shell .study-page{padding-bottom:190px}.learning-shell .study-page:has(.reveal-button){padding-bottom:120px}.study-controls .control-hint{margin:0 0 9px;line-height:1.5;display:block}.study-controls .keyboard-hint{margin:10px 0 0}.grade-buttons .easy span{color:#ffffffc9}}:root{--bg:#f5f6f8;--paper:#fff;--text:#24262b;--muted:#777d88;--line:#e7e9ed;--soft:#edf0f4;--accent:#e76a36;--green:#e76a36;--font:-apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans","Microsoft YaHei",sans-serif;color:var(--text);background:var(--bg);font-family:var(--font)}body{background:var(--bg);font-size:14px}[hidden]{display:none!important}h1,h2,h3{font-family:var(--font);letter-spacing:0;text-wrap:balance}button{transition:background .18s,color .18s,transform .18s,box-shadow .18s}button:active{transform:translateY(1px)}button:focus-visible,a:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.ui-icon{flex:none;width:21px;height:21px;display:block}button.primary,.primary{background:var(--accent);color:#fff;letter-spacing:0;border-radius:10px;justify-content:center;align-items:center;gap:18px;min-height:46px;padding:13px 21px;font-size:13px;font-weight:600;display:inline-flex}.primary:hover{color:#fff;background:#ce5524}.primary:disabled{background:var(--soft);color:var(--muted);opacity:1}.outline-button{background:var(--paper);border-radius:10px;padding:12px 18px;font-size:13px}.outline-button:hover{background:var(--soft);color:var(--text)}.text-button{color:var(--muted);font-size:13px}input,textarea,select{border-radius:9px;font-size:13px}input:focus,textarea:focus,select:focus{box-shadow:0 0 0 3px #e76a3617}input[type=checkbox]{accent-color:var(--accent)}.app-shell{max-width:1256px;margin:auto;padding:0 48px}.topbar{border-bottom:1px solid var(--line);gap:24px;height:88px;margin-bottom:0}.brand{letter-spacing:-.4px;gap:10px;font-size:20px;font-weight:700}.brand small{letter-spacing:.3px;color:var(--muted);margin-top:5px;font-size:10px;font-weight:500}.brand-mark{background:var(--text);color:var(--paper);border:0;border-radius:11px;width:39px;height:42px}.brand-mark .ui-icon{stroke-width:1.8px;width:26px;height:26px}.topbar nav{background:var(--soft);border-radius:12px;gap:5px;padding:5px;display:flex}.nav-item{letter-spacing:0;color:var(--muted);border-radius:8px;align-items:center;gap:7px;padding:10px 15px;font-size:12px;display:flex}.nav-item>span{display:block}.nav-item .ui-icon{width:16px;height:16px}.nav-item.active{background:var(--paper);color:var(--text);font-weight:600;box-shadow:0 2px 4px #20242a08}.nav-item.active:after{display:none}.nav-item:hover{color:var(--text);background:var(--paper)}.settings-toggle{width:37px;height:37px;color:var(--muted);border:1px solid var(--line);background:var(--paper);border-radius:11px}.settings-toggle:hover{color:var(--text)}.settings-toggle .ui-icon{width:18px;height:18px}.desktop-footer{color:var(--muted);border-top:1px solid var(--line);letter-spacing:0;justify-content:space-between;margin-top:28px;padding:24px 0 28px;font-size:10px;display:flex}.workspace-heading{justify-content:space-between;align-items:flex-end;gap:20px;padding:30px 0 24px;display:flex}.workspace-date{color:var(--muted);font-size:11px}.workspace-heading h1{letter-spacing:-1px;margin:8px 0 0;font-size:29px;font-weight:700;line-height:1.4}.workspace-summary{color:var(--muted);gap:15px;padding-bottom:5px;font-size:11px;display:flex}.workspace-summary>span{align-items:center;gap:7px;display:flex}.workspace-summary .ui-icon{width:15px;height:15px}.learning-overview{grid-template-columns:2.05fr 1fr;gap:20px;display:grid}.continue-feature{color:#fff;isolation:isolate;background:#20252b;border-radius:18px;min-height:316px;position:relative;overflow:hidden}.continue-feature>img{object-fit:cover;object-position:center 60%;z-index:-2;width:100%;height:100%;position:absolute;inset:0}.continue-feature:after{content:"";z-index:-1;background:linear-gradient(90deg,#111a25d9,#111a256a 67%,#111a2529);position:absolute;inset:0}.feature-content{flex-direction:column;min-height:316px;padding:27px 30px;display:flex}.feature-top{justify-content:space-between;align-items:center;gap:12px;font-size:10px;display:flex}.feature-tag{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff17;border:1px solid #ffffff32;border-radius:6px;padding:6px 9px}.feature-step{color:#fff9;font-variant-numeric:tabular-nums}.feature-lesson{padding:27px 0 24px}.feature-lesson>span{color:#ffffffad;font-size:10px}.feature-lesson h2{font:700 34px/1.35 var(--font);letter-spacing:-.8px;margin:7px 0}.feature-lesson p{color:#ffffffdf;max-width:360px;margin:0;font-size:14px;font-weight:400;line-height:1.8}.feature-bottom{align-items:center;gap:18px;margin-top:auto;display:flex}.feature-details{color:#fff;border-bottom:1px solid #fff5;padding:7px 0;font-size:11px}.feature-details:hover{color:#fff;border-color:#fff}.feature-progress{font-variant-numeric:tabular-nums;margin-left:auto;font-size:23px;font-weight:600}.feature-progress small{color:#fffb;font-size:10px;font-weight:400}.daily-panel{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:26px 26px 0;overflow:hidden}.daily-panel-heading{justify-content:space-between;align-items:center;gap:12px;font-size:12px;font-weight:600;display:flex}.daily-panel-heading>span:first-child{align-items:center;gap:8px;display:flex}.daily-panel-heading .ui-icon{width:17px;height:17px;color:var(--accent)}.daily-method{border:1px solid var(--line);color:var(--muted);border-radius:4px;padding:4px 6px;font-size:9px;font-weight:500}.daily-due{align-items:baseline;gap:10px;margin-top:13px;display:flex}.daily-due strong{font:600 55px/1.2 var(--font);letter-spacing:-2px;font-variant-numeric:tabular-nums}.daily-due>span{color:var(--muted);font-size:11px}.daily-panel>p{color:var(--muted);margin:7px 0 17px;font-size:11px;line-height:1.8}.daily-review{background:var(--soft);width:100%;color:var(--text);border-radius:9px;justify-content:space-between;align-items:center;padding:12px 14px;font-size:12px;font-weight:600;display:flex}.daily-review:hover{background:var(--text);color:var(--paper)}.daily-review .ui-icon{width:17px;height:17px}.daily-activity{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:7px;margin-top:21px;padding:15px 0 18px;display:grid}.daily-activity>div{flex-direction:column;gap:5px;display:flex}.daily-activity b{font-variant-numeric:tabular-nums;font-size:18px;font-weight:600;line-height:1.2}.daily-activity span{color:var(--muted);font-size:9px}.catalog-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px;display:flex}.catalog-heading h2{font:700 21px/1.4 var(--font);letter-spacing:-.4px;margin:0}.catalog-heading p{color:var(--muted);margin:7px 0 0;font-size:11px}.catalog-heading>span{color:var(--muted);white-space:nowrap;font-size:10px}.search-field.scene-search{border:1px solid var(--line);background:var(--paper);border-radius:10px;align-items:center;gap:11px;margin:0 0 20px;padding:13px 16px;display:flex}.scene-search>span{color:var(--muted)}.scene-search .ui-icon{width:17px;height:17px}.scene-search input{box-shadow:none;background:0 0;border:0;flex:1;min-width:0;padding:0;font-size:12px}.scene-search small{color:var(--muted);white-space:nowrap;letter-spacing:0;font-size:9px}.category-overview{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:0;display:grid}.category-card{background:var(--paper);border:1px solid var(--line);text-align:left;min-width:0;min-height:130px;color:var(--text);box-shadow:none;border-radius:13px;padding:0;transition:transform .2s,border-color .2s,box-shadow .2s;display:flex;overflow:hidden}.category-photo{background:var(--category-photo) center/cover;border-radius:0;flex:0 0 130px;min-height:130px;padding:0;display:block;position:relative}.category-copy{flex:1;justify-content:space-between;align-items:center;gap:14px;min-width:0;padding:15px 18px;display:flex}.category-info{min-width:0;display:block}.category-index{color:var(--muted);letter-spacing:.5px;font-size:9px;line-height:1.5;display:block}.category-copy h3{font:600 18px/1.5 var(--font);letter-spacing:0;margin:5px 0 4px}.category-caption{color:var(--muted);font-size:10px;line-height:1.6;display:block}.category-volume{color:var(--accent);letter-spacing:0;margin:8px 0 0;font-size:10px;line-height:1.5;display:block}.category-arrow{background:var(--soft);width:26px;height:26px;color:var(--muted);border-radius:50%;flex:none;place-items:center;display:grid}.category-arrow .ui-icon{width:14px;height:14px}.category-card:hover{color:var(--text);border-color:#cbd0d8;transform:translateY(-2px);box-shadow:0 6px 16px #20242a08}.category-card:hover .category-photo{filter:none}.category-card:hover .category-arrow{color:#fff;background:var(--accent)}.category-card:last-child{grid-column:1/-1}.category-card:last-child .category-photo{flex-basis:220px}.category-card:last-child .category-copy{padding-left:25px}.catalog-foot{color:var(--muted);justify-content:space-between;align-items:center;gap:15px;padding:23px 0 0;font-size:10px;display:flex}.catalog-foot p{margin:0}.scene-home:has(.scene-catalog:not([hidden])) .learning-overview{display:none}.scene-home:has(.scene-catalog:not([hidden])) .catalog-section{padding-top:0}.scene-catalog{margin-top:0}.scene-catalog-head{border:0;justify-content:space-between;align-items:center;margin:0;padding:5px 0 18px;display:flex}.scene-catalog-head>button{color:var(--muted);font-size:12px}.scene-catalog-head>div{text-align:right}.scene-catalog-head span{letter-spacing:0;font-size:9px}.scene-catalog-head h2{font:600 24px/1.5 var(--font);letter-spacing:0;margin:3px 0 0}.category-tabs{flex-wrap:wrap;gap:6px;margin:0 0 22px;display:flex}.category-tabs button{border:1px solid var(--line);white-space:nowrap;background:var(--paper);color:var(--muted);border-radius:7px;padding:9px 11px;font-size:10px}.category-tabs button.selected{background:var(--text);color:var(--paper);border-color:var(--text)}.category-tabs small{opacity:.65;margin-left:5px;font-size:9px}.scene-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;display:grid}.scene-card{background:var(--paper);border:1px solid var(--line);text-align:left;min-height:0;box-shadow:none;color:var(--text);border-radius:13px;padding:173px 19px 17px;overflow:hidden}.scene-card:before{opacity:1;border-radius:0;height:151px;inset:0 0 auto;background:var(--scene-photo) center/cover!important}.scene-card:after{display:none}.scene-card:hover{color:var(--text);border-color:#cbd0d8;transform:translateY(-2px);box-shadow:0 5px 17px #20242a0a}.scene-card-top{color:var(--muted);font-size:9px;line-height:1.5}.scene-card-top .scene-mark{display:none}.scene-card-top i{font-size:13px}.scene-card h3{font:600 21px/1.5 var(--font);letter-spacing:-.5px;margin:7px 0}.scene-card>p{min-height:40px;color:var(--muted);font-size:11px;line-height:1.8}.scene-card-bottom{justify-content:space-between;align-items:center;gap:10px;margin:19px 0 10px;font-size:10px;display:flex}.scene-card-bottom b{color:var(--accent);font-weight:500}.track{background:var(--soft);height:4px}.track i{background:var(--accent)}.scene-detail{padding-top:24px}.back-link{letter-spacing:0;color:var(--muted);font-size:12px}.scene-detail-heading{background:var(--paper);color:var(--text);border:1px solid var(--line);border-radius:16px;grid-template-columns:1.05fr 1fr;align-items:center;gap:32px;margin-top:20px;padding:0;display:grid;overflow:hidden}.scene-cover-photo{object-fit:cover;width:100%;height:245px;display:block}.scene-detail-heading>.scene-mark{display:none}.scene-detail-heading>div{padding:25px 32px 25px 0}.scene-detail-heading .section-eyebrow{color:var(--muted);letter-spacing:.2px;font-size:10px}.scene-detail-heading h1{font:700 34px/1.4 var(--font);letter-spacing:-1px;margin:15px 0 12px}.scene-detail-heading p{color:var(--muted);max-width:none;font-size:12px;line-height:1.9}.scene-review-entry{background:var(--soft);border:0;border-radius:10px;align-items:center;margin:18px 0 24px;padding:15px 19px}.scene-review-entry p{font-size:11px;line-height:1.8}.scene-review-entry .outline-button{border:0;font-size:11px}.menu-lookup{background:var(--paper);border-radius:13px;margin:24px 0 30px;padding:23px}.menu-lookup summary{font-size:17px;font-weight:600}.menu-lookup summary small{font-size:10px;font-weight:400}.menu-lookup summary b{color:var(--accent);font-size:13px}.menu-lookup .search-field{border-radius:9px}.dictionary-row{border-color:var(--line);padding:15px 5px}.dictionary-row b{font-size:15px;font-weight:600}.dictionary-row p{font-size:12px;line-height:1.8}.dictionary-row small{font-size:10px}.dictionary-row:hover{background:var(--soft)}.dictionary-note{color:var(--muted);font-size:10px}.lesson-selector h2,.current-lesson-heading h2{font:600 23px/1.5 var(--font);letter-spacing:0}.lesson-tiles{gap:10px}.lesson-tiles button{background:var(--paper);border-radius:10px}.lesson-tiles button.selected{background:color-mix(in srgb,var(--accent) 7%,var(--paper));border-color:var(--accent)}.lesson-tiles button>span{color:var(--muted);font-size:18px}.lesson-tiles b{font-size:12px;font-weight:600}.lesson-tiles small{font-size:10px}.lesson-roadmap{font-size:11px}.lesson-plan,.scene-preview{background:var(--paper);border-radius:13px}.lesson-plan h2,.scene-preview h2{font:600 22px/1.5 var(--font);letter-spacing:0}.lesson-plan>p{color:var(--muted);font-size:12px;line-height:2}.group-progress strong{font-size:42px;font-weight:600}.lesson-plan .primary{width:100%;margin:22px 0 12px}.lesson-plan .outline-button{width:100%;font-size:12px}.scene-preview>p{font-size:22px;line-height:1.9}.article-preview{background:var(--soft);border-radius:9px}.article-preview h3{font:600 16px/1.6 var(--font)}.article-preview p{font-size:12px;line-height:2}.group-words{background:var(--paper);border-radius:12px}.group-words summary{font-size:13px;font-weight:600}.group-word-grid button{border-color:var(--line)}.review-page{padding:30px 0}.review-hero{background:0 0;border:0;border-radius:0;grid-template-columns:1.1fr 1fr;align-items:center;gap:42px;overflow:visible}.review-hero>.review-intro:first-child{color:var(--text);background:0 0;padding:0}.journal-kicker{color:var(--muted);letter-spacing:.4px;font-size:11px;display:inline-block}.review-hero h1{font:700 34px/1.45 var(--font);letter-spacing:-1px;max-width:420px;margin:14px 0 15px}.review-hero p{color:var(--muted);max-width:390px;font-size:12px;line-height:1.9}.review-method{background:var(--soft);border:1px solid var(--line);letter-spacing:0;color:var(--muted);border-radius:6px;margin-top:15px;padding:7px 10px;font-size:10px;display:inline-flex}.review-today{background:var(--paper);border:1px solid var(--line);border-radius:15px;min-height:270px;padding:26px 28px;position:relative}.review-card-icon{background:var(--soft);width:36px;height:36px;color:var(--accent);border-radius:10px;place-items:center;display:grid;position:absolute;top:22px;right:24px}.review-today>span{color:var(--muted);font-size:11px}.review-today>strong{font:600 64px/1.1 var(--font);letter-spacing:-2px;font-variant-numeric:tabular-nums;margin:15px 0 0}.review-today>strong small{letter-spacing:0;margin-left:12px;font-size:11px}.review-today>p{margin:9px 0;font-size:11px}.review-today .primary{width:100%;margin:12px 0}.review-today>small{font-size:10px;line-height:1.8}.review-filters{background:var(--paper);border:1px solid var(--line);border-radius:11px;gap:22px;margin:24px 0;padding:17px 20px}.review-filters label{gap:10px;font-size:11px}.review-filters select{padding:10px;font-size:12px}.review-filters>.text-button{padding:0;font-size:11px}.review-columns{grid-template-columns:1.2fr 1fr;gap:22px}.review-list-panel{border:1px solid var(--line);background:var(--paper);border-radius:13px;padding:22px}.review-columns h2{font:600 20px/1.5 var(--font)}.review-list-panel .section-line{margin:0 0 13px}.review-list-panel .section-line>span{white-space:nowrap;font-size:10px}.review-panel-note{margin:0 0 5px;font-size:11px;line-height:1.9}.review-word-list>div{grid-template-columns:1fr 95px 45px;gap:12px;padding:17px 0}.review-word-list b{font:500 17px/1.5 var(--font)}.review-word-list span{font-size:10px}.review-phase{background:var(--soft);color:var(--muted);text-align:center;border-radius:5px;padding:5px 6px;font-size:10px}.review-plan{background:var(--paper);border:1px solid var(--line);border-radius:13px;align-self:start;margin:0;padding:22px}.review-plan>p{font-size:11px;line-height:1.9}.review-days{grid-template-columns:repeat(7,minmax(0,1fr));align-items:end;gap:9px;height:140px;margin:23px 0;display:grid}.review-days>div{flex-direction:column;justify-content:flex-end;align-items:center;gap:10px;height:100%;margin:0;padding-top:10px;display:flex}.review-days>div>span{white-space:nowrap;color:var(--muted);order:3;font-size:9px}.review-days b{font:500 11px/1.2 var(--font);order:1}.review-days i{width:100%;height:var(--day-fill);background:var(--soft);border-radius:4px 4px 0 0;order:2;max-width:26px;min-height:4px;max-height:86px}.review-days>div:first-child i{background:var(--accent)}.review-guide h3,.review-soon h3{font-size:12px;font-weight:600}.review-guide p{font-size:11px;line-height:1.9}.review-guide small{font-size:10px;line-height:1.9}.review-soon{background:var(--soft);border-radius:9px;padding:17px}.review-soon b{font-weight:500}.review-empty{text-align:center;padding:35px 12px}.review-empty>span{font:500 15px/1.5 var(--font);color:var(--muted)}.review-empty h3{font-size:18px;font-weight:600}.review-empty p{font-size:12px;line-height:1.9}.learning-shell .topbar{border:0}.study-page{background:var(--paper);border:1px solid var(--line);border-radius:17px;margin:26px auto;padding:30px 36px;box-shadow:0 8px 30px #20242a08}.app-shell:has(.study-page):before{background:var(--bg)}.app-shell:has(.study-page) .topbar{background:0 0;border-radius:0;padding:0}.study-top{font-size:11px}.study-track{background:var(--soft);border-radius:4px;height:4px;margin-top:20px}.word-toolbar>span{letter-spacing:0;font-size:10px}.word-center h1{font:600 60px/1.5 var(--font);letter-spacing:-1px;margin-top:10px}.reading{font:400 14px/1.8 var(--font);letter-spacing:2px;color:var(--muted)}.reading.muted{letter-spacing:0;font-size:12px}.definition p{font-size:18px;line-height:1.9}.definition small{color:var(--muted);font-size:10px}.audio-button{color:var(--text);background:var(--soft);border:0;border-radius:10px;padding:10px 16px;font-size:11px}.audio-button:hover{background:var(--line);color:var(--text)}.recall-note{color:var(--muted);font-size:12px}.context-block .section-eyebrow{letter-spacing:1px}.context-block .example{font:500 21px/1.9 var(--font)}.translation{color:var(--muted);font-size:12px;line-height:1.9}.text-audio{color:var(--accent);font-size:11px}.context-note{font-size:10px}.memory-note{background:var(--soft);border:0;border-radius:9px;padding:17px}.memory-note p{color:var(--muted);font-size:12px;line-height:1.8}.study-controls{max-width:900px;margin-top:25px}.control-hint{color:var(--muted);font-size:11px;line-height:1.8}.grade-buttons{gap:10px}.grade-buttons button{border:1px solid var(--line);background:var(--paper);box-shadow:0 2px 0 var(--line);border-radius:10px;padding:16px 8px}.grade-buttons button b{color:var(--text);font-size:13px;font-weight:600}.grade-buttons button span{color:var(--muted);font-size:10px}.grade-buttons button.again{border-color:#e2b3a0}.grade-buttons button.again b{color:#b76a4e}.grade-buttons button.good{background:var(--soft);color:var(--text);border-color:#cbd0d8}.grade-buttons button.easy{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 2px #bd542d}.grade-buttons button.easy b,.grade-buttons button.easy span{color:#fff}.grade-buttons button:hover{background:var(--soft);color:var(--text);transform:translateY(-2px)}.grade-buttons button.easy:hover{color:#fff;background:#ce5524}.article-page{padding-top:24px}.article-heading{border:1px solid var(--line);color:var(--text);text-align:left;border-radius:14px;padding:32px;background:var(--paper)!important}.article-heading h1{font:700 30px/1.5 var(--font);letter-spacing:-.8px;margin:14px 0 10px}.article-heading p,.article-heading .section-eyebrow{color:var(--muted);font-size:11px}.reading-toolbar{background:0 0;border:0;border-radius:0;padding:17px 0}.reading-tabs button,.reading-toolbar>div>button{border-radius:7px;font-size:12px}.reading-tabs button[aria-pressed=true]{background:var(--text);color:var(--paper)}.reading-paper{background:var(--paper);border:1px solid var(--line);border-radius:13px;padding:28px}.story-japanese{font:500 21px/2.1 var(--font)}.sentence-reading,.line-chinese{color:var(--muted);font-size:12px;line-height:1.9}.article-word{font:inherit;color:var(--accent);text-decoration-color:#e2b5a2}.article-word ruby{font:inherit}.article-vocab{background:var(--paper);border:1px solid var(--line);border-radius:12px}.article-vocab h2{font:600 17px/1.5 var(--font)}.article-vocab b{font-size:14px;font-weight:600}.article-vocab span{color:var(--muted);font-size:10px}.article-finish{background:var(--soft);border-radius:12px}.dialogue-line>div{background:var(--paper);border:1px solid var(--line);border-radius:12px}.dialogue-line.mine>div{background:var(--soft)}.dialogue-line p{font-family:var(--font)}.content-page{padding:30px 0}.page-heading h1{font:700 29px/1.5 var(--font);letter-spacing:-.6px;margin:12px 0}.page-heading p{color:var(--muted);font-size:12px;line-height:1.9}.book-card{background:var(--paper);border:1px solid var(--line);border-radius:14px}.book-card.selected{border-color:var(--accent)}.book-info h3{font:600 21px/1.5 var(--font)}.word-open b{font:500 19px/1.5 var(--font)}.profile-stats{background:var(--paper);border:1px solid var(--line);border-radius:14px}.profile-stats strong{font-size:42px;font-weight:600}.profile-stats span{color:var(--muted);font-size:11px}.activity{background:var(--paper);border-radius:14px}.calendar-day.studied{background:var(--soft);color:var(--accent)}.calendar-day.today{border-color:var(--accent)}.profile-actions>button{background:var(--paper);border:1px solid var(--line);border-radius:10px;padding:20px}.profile-actions b{font-size:13px;font-weight:600}.profile-actions span{font-size:11px}.about-note{font-size:11px;line-height:1.9}.done-page h1{font:700 34px/1.5 var(--font);letter-spacing:-.7px}.done-stamp{font-family:var(--font);color:var(--accent);border-color:var(--accent)}.done-page p{color:var(--muted);font-size:13px;line-height:1.9}.quiz-card{background:var(--paper);border:1px solid var(--line);box-shadow:none;border-radius:15px}.quiz-card h1{font:600 29px/1.5 var(--font)}.quiz-feedback.correct{background:var(--soft);color:var(--text)}dialog{border:1px solid var(--line);background:var(--paper);color:var(--text);border-radius:17px;max-width:min(520px,100vw - 32px);box-shadow:0 24px 80px #12172033}dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#151a2255}.modal-head h2{font:600 23px/1.5 var(--font)}.setting-row b{font-size:13px;font-weight:600}.setting-row small{font-size:11px;line-height:1.8}.detail-content h3{font:600 22px/1.6 var(--font)}.detail-content .example{font:500 18px/1.9 var(--font)}[data-theme=dark] .grade-buttons button.good{background:var(--soft);color:var(--text);border-color:var(--line)}[data-theme=dark] .grade-buttons button.easy{background:var(--accent);color:#191c20}[data-theme=dark] .grade-buttons button.easy b,[data-theme=dark] .grade-buttons button.easy span{color:#191c20}@media (width<=1050px){.app-shell{padding:0 32px}.topbar nav{gap:3px;padding:4px}.nav-item{gap:5px;padding:10px 11px;font-size:11px}.nav-item .ui-icon{width:14px;height:14px}.learning-overview{grid-template-columns:1.7fr 1fr;gap:17px}.feature-content{padding:25px}.feature-bottom{gap:14px}.feature-progress{font-size:20px}.feature-progress small{font-size:9px}.daily-panel{padding-left:20px;padding-right:20px}.category-photo{flex-basis:108px}.category-copy{gap:10px;padding:14px}.category-copy h3{font-size:17px}.category-caption{font-size:9px}.review-hero{gap:28px}.review-hero h1{font-size:30px}.scene-detail-heading{gap:24px}.scene-detail-heading>div{padding-right:24px}.scene-grid{gap:14px}.scene-card{padding-left:15px;padding-right:15px}}@media (width<=700px){.app-shell{padding:0 20px 99px}.topbar{border:0;gap:15px;height:76px}.brand{gap:9px;font-size:18px}.brand small{margin-top:4px;font-size:9px}.brand-mark{border-radius:9px;width:33px;height:36px}.brand-mark .ui-icon{width:23px;height:23px}.settings-toggle{border-radius:9px;width:33px;height:33px}.settings-toggle .ui-icon{width:16px;height:16px}.topbar nav{left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));z-index:20;background:color-mix(in srgb,var(--paper) 96%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid var(--line);border-radius:16px;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;width:auto;height:65px;padding:6px 5px;display:grid;position:fixed;box-shadow:0 4px 22px #1e273310}.nav-item{letter-spacing:0;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:7px 1px;font-size:10px;line-height:1.2;display:flex}.nav-item>span{line-height:0;display:block}.nav-item .ui-icon{width:20px;height:20px}.nav-item.active{background:var(--soft);color:var(--accent);box-shadow:none}.nav-item.active:after{display:none}.nav-item:hover{background:var(--soft)}.desktop-footer{display:none}.workspace-heading{align-items:flex-start;padding:10px 0 20px}.workspace-date{font-size:10px}.workspace-heading h1{letter-spacing:-.8px;margin-top:7px;font-size:24px}.workspace-summary{display:none}.learning-overview{grid-template-columns:1fr;gap:14px}.continue-feature{border-radius:15px;min-height:259px}.feature-content{min-height:259px;padding:21px}.feature-top{font-size:9px}.feature-tag{padding:5px 7px}.feature-lesson{padding:21px 0 18px}.feature-lesson>span{font-size:9px}.feature-lesson h2{margin:5px 0;font-size:30px}.feature-lesson p{max-width:240px;font-size:12px}.feature-bottom{gap:17px}.feature-bottom .primary{gap:13px;min-height:42px;padding:11px 15px;font-size:12px}.feature-bottom .primary .ui-icon{width:17px;height:17px}.feature-details{font-size:10px}.feature-progress{font-size:20px}.feature-progress small{font-size:9px}.daily-panel{border-radius:13px;grid-template-columns:1fr auto;align-items:center;column-gap:16px;padding:17px 18px;display:grid}.daily-panel-heading{grid-column:1;justify-content:flex-start;gap:9px;font-size:11px}.daily-panel-heading .ui-icon{width:14px;height:14px}.daily-method{white-space:nowrap;border:0;padding:0;font-size:8px}.daily-due{grid-area:2/1;gap:8px;margin:7px 0 0}.daily-due strong{letter-spacing:-1px;font-size:34px}.daily-due>span{font-size:10px}.daily-panel>p,.daily-activity{display:none}.daily-review{border-radius:9px;grid-area:1/2/3;gap:13px;width:auto;padding:12px 13px;font-size:11px}.daily-review .ui-icon{width:15px;height:15px}.catalog-section{padding-top:25px}.catalog-heading{gap:14px;margin-bottom:16px}.catalog-heading h2{font-size:20px}.catalog-heading p{margin-top:6px;font-size:10px}.catalog-heading>span{font-size:9px}.search-field.scene-search{gap:9px;margin:0 0 16px;padding:12px 13px}.scene-search input{font-size:11px}.scene-search .ui-icon{width:15px;height:15px}.scene-search small{display:none}.category-overview{grid-template-columns:1fr;gap:12px}.category-card{border-radius:12px;min-height:116px}.category-photo{flex-basis:108px;grid-row:auto;min-height:116px;padding:0;display:block}.category-copy{gap:12px;padding:13px 15px}.category-index{font-size:8px}.category-copy h3{margin:4px 0 3px;font-size:17px}.category-caption{font-size:9px;line-height:1.6}.category-volume{margin-top:7px;font-size:9px}.category-card:last-child{grid-column:auto}.category-card:last-child .category-photo{flex-basis:108px}.category-card:last-child .category-copy{padding-left:15px}.category-arrow{width:24px;height:24px}.category-arrow .ui-icon{width:13px;height:13px}.catalog-foot{gap:10px;padding-top:18px;font-size:9px}.scene-catalog-head{align-items:center;gap:14px;padding:3px 0 17px}.scene-catalog-head>button{font-size:10px}.scene-catalog-head h2{font-size:21px}.scene-catalog-head span{font-size:8px}.category-tabs{scrollbar-width:none;flex-wrap:nowrap;gap:6px;margin:0 0 15px;padding-bottom:6px;overflow-x:auto}.category-tabs button{padding:9px 10px;font-size:9px}.category-tabs small{margin-left:4px;font-size:8px}.scene-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.scene-card{border-radius:11px;padding:129px 12px 13px}.scene-card:before{height:114px}.scene-card-top{font-size:8px}.scene-card h3{letter-spacing:-.4px;margin:6px 0;font-size:18px}.scene-card>p{min-height:37px;margin:5px 0;font-size:9px;line-height:1.9}.scene-card-bottom{gap:4px;margin-top:12px;font-size:8px;display:block}.scene-card-bottom b{margin-top:6px;font-size:9px;display:block}.scene-card .track{height:3px;margin-top:9px}.scene-detail{padding-top:9px}.back-link{font-size:10px}.scene-detail-heading{border-radius:13px;grid-template-columns:1fr;gap:0;margin-top:17px}.scene-cover-photo{height:166px}.scene-detail-heading>div{padding:22px}.scene-detail-heading .section-eyebrow{font-size:9px}.scene-detail-heading h1{margin:10px 0 8px;font-size:29px}.scene-detail-heading p{margin:0;font-size:11px}.scene-review-entry{gap:12px;margin:15px 0 21px;padding:13px 15px}.scene-review-entry p{max-width:57%;font-size:9px;line-height:1.9}.scene-review-entry .outline-button{white-space:nowrap;padding:10px;font-size:10px}.menu-lookup{border-radius:12px;margin:20px 0 25px;padding:18px 16px}.menu-lookup summary{font-size:16px}.menu-lookup summary small{margin-top:5px;font-size:9px}.menu-lookup summary b{font-size:11px}.dictionary-row b{font-size:14px}.dictionary-row p{font-size:11px}.dictionary-row small,.dictionary-tools{font-size:10px}.dictionary-tools button,.dictionary-note{font-size:9px}.lesson-selector h2,.current-lesson-heading h2{font-size:21px}.lesson-selector header>span{margin-top:7px;font-size:10px}.lesson-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.lesson-tiles button{gap:8px;padding:12px 10px}.lesson-tiles b{font-size:10px}.lesson-tiles small{font-size:9px}.lesson-tiles button>span{font-size:15px}.lesson-plan,.scene-preview{border-radius:12px;padding:23px}.lesson-plan h2,.scene-preview h2{font-size:20px}.lesson-plan>p{font-size:11px}.lesson-plan .primary{min-height:45px;margin-top:20px;font-size:12px}.scene-preview>p{font-size:21px}.article-preview h3{font-size:15px}.article-preview p{font-size:11px}.group-words{margin-top:23px;padding:18px}.group-words summary{font-size:12px}.review-page{padding:13px 0 20px}.review-hero{flex-direction:column;align-items:stretch;gap:21px;display:flex}.review-hero>.review-intro:first-child{background:0 0;padding:0}.journal-kicker{font-size:10px}.review-hero h1{letter-spacing:-.7px;max-width:270px;margin:10px 0;font-size:27px;line-height:1.5}.review-hero p{max-width:310px;margin:0;font-size:11px;line-height:1.9}.review-method{margin-top:14px;padding:6px 8px;font-size:9px}.review-today{border-radius:13px;min-height:0;padding:23px}.review-card-icon{border-radius:9px;width:31px;height:31px;top:18px;right:20px}.review-card-icon .ui-icon{width:17px;height:17px}.review-today>span{font-size:10px}.review-today>strong{margin-top:16px;font-size:58px}.review-today>strong small{margin-left:10px;font-size:10px}.review-today>p{margin:8px 0;font-size:10px}.review-today .primary{min-height:44px;margin:10px 0 12px;font-size:12px}.review-today>small{font-size:9px}.review-filters{flex-wrap:wrap;gap:12px;margin:19px 0;padding:16px}.review-filters label{min-width:0;font-size:9px;display:block}.review-filters label:first-child{flex:2}.review-filters label:nth-child(2){flex:1}.review-filters select{width:100%;max-width:none;margin-top:7px;padding:9px 7px;font-size:11px;display:block}.review-filters>.text-button{text-align:right;width:100%;margin:0;font-size:10px}.review-columns{grid-template-columns:1fr;gap:17px}.review-list-panel,.review-plan{border-radius:12px;padding:20px}.review-columns h2{font-size:18px}.review-list-panel .section-line>span{font-size:9px}.review-word-list>div{grid-template-columns:1fr 70px 42px;gap:8px;padding:15px 0}.review-word-list b{font-size:16px}.review-word-list span,.review-phase{font-size:9px}.review-panel-note,.review-plan>p{font-size:10px}.review-days{gap:8px;height:139px;margin:23px 0}.review-days>div>span{font-size:8px}.review-days i{max-width:23px}.review-guide p{font-size:10px}.review-guide small{font-size:9px}.review-soon{padding:15px}.review-soon span,.review-soon>p{font-size:10px}.review-empty{padding:30px 0}.review-empty h3{font-size:17px}.review-empty p{font-size:11px}:is(.learning-shell:has(.study-page),.learning-shell:has(.quiz-page)){padding-top:15px;padding-bottom:25px}:is(.learning-shell:has(.study-page) .topbar,.learning-shell:has(.quiz-page) .topbar){display:none}.study-page{border-radius:15px;max-width:none;min-height:calc(100dvh - 30px);margin:0 auto;padding:21px 20px 188px}.study-top{gap:10px;font-size:9px}.study-top .back-link{font-size:10px}.study-track{height:3px;margin-top:18px}.word-toolbar{padding-top:21px}.word-toolbar>span{font-size:9px}.word-center{padding:31px 0 22px}.word-center h1{font-size:clamp(22px,calc(265px / var(--word-chars,4)),47px);letter-spacing:-.8px;overflow-wrap:anywhere;margin:8px 0 22px;font-weight:600;line-height:1.5}.reading{font-size:12px}.reading.muted{font-size:10px}.definition p{margin-top:10px;font-size:16px;line-height:1.8}.audio-button{padding:10px 14px;font-size:10px}.recall-note{margin-top:33px;font-size:11px}.context-block{border-top:1px solid var(--line);margin-top:4px;padding-top:24px}.context-block .example{font-size:19px;line-height:1.95}.translation{font-size:11px;line-height:1.9}.memory-note{margin-bottom:18px}.hidden-context{display:none}.study-controls{left:20px;right:20px;bottom:max(12px,env(safe-area-inset-bottom));background:color-mix(in srgb,var(--paper) 97%,transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border:1px solid var(--line);z-index:25;border-radius:13px;margin:0;padding:13px 11px 11px;position:fixed;box-shadow:0 4px 24px #1e273310}.study-controls .primary{width:100%;min-height:45px;font-size:12px}.control-hint{margin-bottom:10px;font-size:9px;line-height:1.8}.grade-buttons{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}.grade-buttons button{border-radius:9px;min-height:57px;padding:11px 6px!important}.grade-buttons button b{font-size:12px!important}.grade-buttons button span{font-size:9px!important}.quiz-card h1{font-size:24px}.quiz-card{padding:25px 20px}.article-page{padding-top:14px}.article-heading{border-radius:12px;padding:24px}.article-heading h1{margin:10px 0;font-size:25px;line-height:1.5}.article-heading p{font-size:10px;line-height:1.8}.reading-toolbar{gap:12px;padding:17px 0}.reading-tabs button,.reading-toolbar>div>button{padding:10px;font-size:10px}.reading-paper{border-radius:12px;padding:20px 17px}.story-japanese{font-size:20px;line-height:2.05}.sentence-reading,.line-chinese{font-size:11px;line-height:1.9}.article-vocab{padding:20px}.dialogue-line p{font-size:18px;line-height:1.9}.article-finish{padding:21px}.content-page{padding:14px 0 25px}.page-heading h1{font-size:25px}.page-heading p{font-size:11px}.profile-stats strong{font-size:31px}.profile-stats span{font-size:9px}.profile-actions{gap:10px}.profile-actions>button{padding:17px}.profile-actions b{font-size:12px}.profile-actions span,.about-note{font-size:10px}.done-page h1{font-size:28px}.done-page p{font-size:12px}.modal-head h2{font-size:21px}.setting-row b{font-size:12px}.setting-row small{font-size:10px}}@media (width<=370px){.app-shell{padding-left:16px;padding-right:16px}.workspace-heading h1{font-size:22px}.feature-content{padding:18px}.feature-bottom{gap:12px}.feature-bottom .primary{gap:9px;padding:11px 13px}.feature-progress{font-size:17px}.feature-progress small{font-size:8px}.daily-panel{column-gap:10px;padding:15px}.daily-due>span{font-size:9px}.daily-review{gap:8px;padding:10px;font-size:10px}.category-photo,.category-card:last-child .category-photo{flex-basis:96px}.category-copy{gap:7px;padding:12px}.category-arrow{display:none}.category-copy h3{font-size:16px}.category-caption{font-size:9px}.scene-card h3{font-size:16px}.review-hero h1{font-size:25px}.review-list-panel,.review-plan{padding:17px}.review-days{gap:6px}.learning-shell:has(.study-page) .study-controls{left:16px;right:16px}}.scene-home{padding:0 0 30px}.scene-search input{height:22px}.feature-progress{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#10182255;border:1px solid #ffffff1a;border-radius:8px;padding:5px 9px}.category-caption{font-size:11px}.story-japanese,.context-block .example{font-weight:400}.article-heading{margin:20px 0}.reading-toolbar{flex-flow:wrap;align-items:center;gap:10px;margin:18px 0;padding:0;display:flex}.reading-toolbar>div{justify-content:flex-start;gap:5px;display:flex}.article-layout{margin-top:18px}.reading-tabs button[aria-pressed=true]{border-color:var(--text)}.empty-state>span{background:var(--soft);width:64px;height:64px;color:var(--muted);border-radius:17px;place-items:center;margin:0 auto 23px;display:grid}.empty-state .ui-icon{width:27px;height:27px}.empty-state h3{font:600 18px/1.5 var(--font)}.empty-state p{color:var(--muted);font-size:12px;line-height:1.9}@media (width<=700px){.scene-home{padding:10px 0 25px}.category-caption{font-size:10px}.category-index{font-size:9px}.category-volume{font-size:10px}.feature-progress{padding:5px 7px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}.category-card:hover,.scene-card:hover,.grade-buttons button:hover{transform:none}}:root{--bg:#fafafa;--accent:#ed7c28;--green:#ed7c28;--line:#e9e9e9;--soft:#f2f2f2;--text:#333;--muted:#8a8a8a}[data-theme=dark]{--bg:#202526;--paper:#252b2c;--text:#e8eeee;--muted:#a0acac;--line:#384444;--soft:#303a3b;--accent:#f49c59;--green:#f49c59}.app-shell{max-width:1120px;padding:0 36px}.topbar{height:76px}.brand{font-size:17px}.brand-mark{width:31px;height:34px;color:var(--accent);background:0 0;border:1px solid;border-radius:50%}.brand-mark .ui-icon{width:20px;height:20px}.brand small{font-size:9px;font-weight:400}.topbar nav{background:0 0;border-radius:0;gap:16px;padding:0}.nav-item{border-radius:0;gap:6px;padding:14px 5px}.nav-item.active{color:var(--accent);box-shadow:none;background:0 0;font-weight:500}.nav-item:hover{background:0 0}.settings-toggle{background:0 0;border:0}.desktop-footer{display:none}.primary,.outline-button,button.primary{box-shadow:none;border-radius:5px;font-weight:400}.page-heading h1,.catalog-heading h2,.scene-detail h1,.review-hero h1{font-weight:500}.page-heading h1{font-size:28px}.content-page,.review-page{padding-top:24px}.page-home.app-shell{max-width:none;margin:0;padding:0}.page-home>.topbar{display:none}.immersive-home{isolation:isolate;color:#fff;background:#627a83;height:100dvh;min-height:100svh;font-weight:400;position:relative;overflow:hidden}.home-wallpaper{object-fit:cover;object-position:50% 50%;z-index:-2;width:100%;height:100%;position:absolute;inset:0}.immersive-home:after{content:"";z-index:-1;background:linear-gradient(#17282b2b,#13212824 40%,#1020235e 74%,#1124294f);position:absolute;inset:0}.home-top{top:max(30px,env(safe-area-inset-top));justify-content:space-between;align-items:center;display:flex;position:absolute;left:40px;right:40px}.home-top button{color:#fff;background:0 0;border:0;padding:0}.home-avatar{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:50%;place-items:center;width:36px;height:36px;display:grid;background:#ffffff1c!important;border:1px solid #ffffff92!important}.home-avatar .ui-icon{width:20px;height:20px}.home-brand{letter-spacing:3px;opacity:.9;font-size:13px;font-weight:400}.home-brand small{letter-spacing:1px;margin-left:12px;font-size:10px}.home-setting{opacity:.85}.home-setting .ui-icon{width:23px;height:23px}.home-word{text-align:center;position:absolute;top:26%;left:24px;right:24px}.daily-word{color:#fff;text-shadow:0 1px 20px #24303955;background:0 0;border:0;flex-direction:column;gap:13px;max-width:100%;padding:0 8px;display:inline-flex}.daily-word h1{font:400 52px/1.5 var(--font);letter-spacing:3px;overflow-wrap:anywhere;margin:0}.daily-word>span{letter-spacing:3px;color:#ffffffe0;font-size:14px;font-weight:400}.home-learning{text-align:center;position:absolute;bottom:19%;left:0;right:0}.home-book{color:#fff;background:0 0;border:0;flex-direction:column;gap:7px;max-width:90%;padding:0 22px 19px;display:inline-flex;position:relative}.home-book>span{letter-spacing:1px;font-size:15px;font-weight:400}.home-book small{letter-spacing:.2px;color:#ffffffb8;text-overflow:ellipsis;white-space:nowrap;max-width:360px;font-size:10px;font-weight:400;overflow:hidden}.home-book i{color:#fffd;font:400 22px/1 sans-serif;position:absolute;top:1px;right:0}.home-actions{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0b273b38;border-top:1px solid #ffffff24;border-bottom:1px solid #ffffff24;grid-template-columns:1fr 1fr;width:100%;height:64px;display:grid}.home-actions button{color:#fff;letter-spacing:2px;background:0 0;border:0;justify-content:center;align-items:center;gap:9px;min-height:64px;padding:0;font-size:21px;font-weight:400;display:flex}.home-actions button:first-child{border-right:1px solid #ffffff29}.home-actions button:hover{background:#ffffff15}.home-actions button b{color:#ff963d;font:500 15px/1.2 var(--font);letter-spacing:0}.home-today{color:#ffffffb8;letter-spacing:.5px;padding:15px 0;font-size:10px}.home-tools{bottom:max(26px,env(safe-area-inset-bottom));justify-content:space-between;align-items:center;display:flex;position:absolute;left:40px;right:40px}.home-tools button{color:#ffffffdf;letter-spacing:1px;background:0 0;border:0;flex-direction:column;align-items:center;gap:7px;min-width:34px;padding:8px 0;font-size:10px;font-weight:400;display:flex}.home-tools .ui-icon{stroke-width:1.25px;width:22px;height:22px}.home-tools button:hover{color:#fff}.home-tools button:focus-visible,.home-top button:focus-visible,.daily-word:focus-visible,.home-book:focus-visible{outline-offset:7px;outline:2px solid #fff}.scene-home{padding-top:28px}.catalog-section{padding-top:0}.catalog-heading{margin-bottom:21px}.catalog-heading h2{font-size:27px;font-weight:500}.category-overview{gap:0 26px}.category-card,.category-card:last-child{border:0;border-bottom:1px solid var(--line);box-shadow:none;background:0 0;border-radius:0;grid-column:auto;min-height:134px;margin:0;padding:19px 0}.category-photo,.category-card:last-child .category-photo{border-radius:4px;flex-basis:92px;width:92px;height:96px}.category-copy{padding:4px 0 4px 18px}.category-copy h3{margin:6px 0;font-size:18px;font-weight:500}.category-index{font-size:9px}.category-caption,.category-volume{font-size:10px}.category-arrow{background:0 0;border:0;width:25px}.category-card:hover{border-color:var(--line);background:0 0;transform:none}.category-card:hover h3{color:var(--accent)}.scene-card{box-shadow:none;border-radius:5px}.search-field{background:var(--paper);border-radius:5px}.scene-detail-heading{box-shadow:none;border-radius:5px}.lesson-tiles>button{box-shadow:none;border-radius:4px}.lesson-plan,.scene-preview,.reading-paper,.article-vocab,.review-list-panel,.review-plan,.due-phase,.profile-actions>button{box-shadow:none;border-radius:5px}.review-hero h1{font-size:32px}.review-intro{padding-left:0}.review-hero{gap:30px}.review-today{border-radius:5px}.review-method{background:0 0;padding-left:0}.profile-stats,.reading-toolbar{border-radius:5px}.learning-shell:has(.study-page){--text:#2f4041;--muted:#7a9193;--line:#bcd4d660;--soft:#ffffff42;--paper:#e0eeef;background:linear-gradient(145deg,#e3f0ee,#d2e9ee);max-width:none;min-height:100dvh;padding:0}.learning-shell:has(.study-page):before{display:none}.learning-shell:has(.study-page)>.topbar{display:none}.study-page{max-width:740px;min-height:100dvh;box-shadow:none;background:0 0;border:0;border-radius:0;margin:0 auto;padding:28px 40px 155px}.study-top{color:var(--muted);gap:20px;font-size:10px}.study-top .back-link{color:var(--text);white-space:nowrap;font-size:13px}.study-top .back-link span{display:none}.study-top>span:nth-child(2){color:var(--muted);white-space:normal;text-align:center;max-width:80%;font-size:10px}.study-track{background:#bcd4d6;height:2px;margin-top:20px}.study-track i{background:#73acb2}.study-body,.study-body.revealed{gap:0;max-width:none;display:block}.word-block{background:0 0;border:0;padding:0}.word-toolbar{justify-content:space-between;align-items:center;padding:24px 0 0;display:flex}.word-toolbar>span{color:var(--muted);font-size:10px}.word-toolbar .star{color:var(--muted);background:0 0;border:0;width:30px;height:32px;font-size:25px}.word-toolbar .star.on{color:var(--accent)}.word-center{text-align:left;min-height:0;padding:20px 0 27px}.word-center h1{font:600 43px/1.5 var(--font);letter-spacing:0;overflow-wrap:anywhere;margin:0 0 3px}.word-center .reading{font:400 13px/1.9 var(--font);letter-spacing:1px;color:var(--muted);margin:0}.word-center .reading.muted{letter-spacing:0;font-size:11px}.word-center .audio-button{color:#5d8489;background:0 0;border:0;border-radius:0;align-items:center;gap:6px;margin:0;padding:8px 0;font-size:11px;display:inline-flex}.word-center .audio-button:hover{color:#314f52;background:0 0}.word-center .definition{justify-content:flex-start;align-items:baseline;gap:12px;margin-top:12px;display:flex}.word-center .definition p{margin:0;font-size:17px;line-height:1.8}.word-center .definition small{color:var(--muted);white-space:nowrap;font-size:10px}.recall-note{color:var(--muted);margin:20px 0 0;font-size:11px}.context-block{border:0;border-top:1px solid var(--line);background:0 0;max-width:none;margin:0;padding:22px 0 0}.context-block .section-eyebrow{color:var(--muted);letter-spacing:0;font-size:10px}.context-block .section-eyebrow>span{color:var(--muted);margin-left:9px}.context-block .example{font:400 21px/1.9 var(--font);color:var(--text);margin:17px 0 8px}.context-block .translation{color:#719092;margin:0;font-size:12px;font-weight:400;line-height:1.9}.context-block .text-audio{color:#5e888e;margin:15px 0 0;padding:0;font-size:11px}.context-note{color:var(--muted);margin-top:9px;font-size:9px}.context-block .memory-note{border:0;border-top:1px solid var(--line);background:0 0;border-radius:0;margin:26px 0 0;padding:20px 0 0}.memory-note span{color:var(--muted);font-size:10px}.memory-note p{color:var(--muted);margin:8px 0;font-size:12px;line-height:1.9}.hidden-context{display:none}.study-controls{width:min(740px,100%);padding:15px 40px max(24px,env(safe-area-inset-bottom));box-shadow:none;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:25;background:#dcecf0eb;border:0;border-top:1px solid #bcd4d648;border-radius:0;margin:0;position:fixed;bottom:0;left:50%;right:auto;transform:translate(-50%)}.study-controls .control-hint{color:#719092;text-align:center;margin:0 0 9px;font-size:9px}.study-controls .grade-buttons{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:0!important}.study-controls .grade-buttons button{box-shadow:none;min-height:56px;color:var(--text);background:0 0;border:0;border-right:1px solid #91b2b44d;border-radius:0;padding:11px 2px!important}.study-controls .grade-buttons button:last-child{border-right:0}.study-controls .grade-buttons button b{color:#426368;font-weight:400;font-size:12px!important}.study-controls .grade-buttons button span{color:#80999b;margin-top:8px;font-size:9px!important}.study-controls .grade-buttons button.again b{color:#bc7960}.study-controls .grade-buttons button.easy b{color:#3d8684}.study-controls .grade-buttons button:hover{background:#fff5;transform:none}.study-controls button.reveal-button{color:#3c6267;background:0 0;border:0;border-radius:0;width:100%;min-height:48px;padding:8px;font-weight:400}.reveal-button span{color:#7b9a9d}.keyboard-hint{display:block!important}.study-controls .grade-buttons button:focus-visible{outline-offset:-2px;outline:2px solid #69a0a6}[data-theme=dark] .learning-shell:has(.study-page){--text:#d9e8e9;--muted:#8dadaf;--line:#668a8c36;--soft:#ffffff10;--paper:#293c40;background:linear-gradient(145deg,#283e41,#24363a)}[data-theme=dark] .study-controls{background:#283e41f2}[data-theme=dark] .word-center .audio-button,[data-theme=dark] .context-block .text-audio,[data-theme=dark] .study-controls button.reveal-button,[data-theme=dark] .study-controls .grade-buttons button b{color:#b1d4d7}[data-theme=dark] .study-controls .grade-buttons button.again b{color:#e9a487}[data-theme=dark] .study-controls .grade-buttons button.easy b{color:#86c7bb}@media (width>=1000px){.home-actions button:first-child{justify-content:flex-end;padding-right:95px}.home-actions button:last-child{justify-content:flex-start;padding-left:95px}.home-tools{left:calc(50% - 225px);right:calc(50% - 225px)}.home-top{left:calc(50% - 320px);right:calc(50% - 320px)}.home-word{top:27%}}@media (width<=760px){.app-shell{padding:0 23px 92px}.topbar{height:65px;position:relative}.brand{font-size:16px}.brand small{display:none}.topbar nav{height:65px;padding:0 12px max(0px,env(safe-area-inset-bottom));border:0;border-top:1px solid var(--line);background:var(--paper);box-shadow:none;z-index:30;border-radius:0;grid-template-columns:repeat(5,1fr);gap:0;display:grid;position:fixed;inset:auto 0 0}.nav-item{letter-spacing:0;flex-direction:column;gap:6px;padding:10px 0;font-size:9px}.nav-item.active{box-shadow:none;background:0 0;font-weight:400}.nav-item .ui-icon{stroke-width:1.3px;width:20px;height:20px}.home-top{top:max(27px,env(safe-area-inset-top));left:26px;right:26px}.home-brand{letter-spacing:2px;font-size:11px}.home-brand small{margin-left:8px;font-size:9px}.home-word{top:27%;left:20px;right:20px}.daily-word h1{font-size:clamp(23px,calc(290px / var(--home-word-chars,4)),39px);letter-spacing:2px;font-weight:400}.daily-word>span{letter-spacing:2px;font-size:12px}.home-learning{bottom:18%}.home-book{padding-bottom:22px}.home-book>span{font-size:13px}.home-book small{max-width:280px;font-size:9px}.home-actions{height:62px}.home-actions button{min-height:62px;font-size:19px}.home-actions button b{font-size:13px}.home-today{padding-top:13px;font-size:9px}.home-tools{left:26px;right:26px;bottom:max(24px,env(safe-area-inset-bottom))}.home-tools button{gap:7px;font-size:8px}.home-tools .ui-icon{width:19px;height:19px}.scene-home{padding-top:24px}.category-overview{grid-template-columns:1fr}.category-card,.category-card:last-child{min-height:123px;padding:17px 0}.category-photo,.category-card:last-child .category-photo{flex-basis:83px;width:83px;height:88px}.category-copy{padding:0 0 0 17px}.category-copy h3{font-size:17px}.catalog-heading h2{font-size:25px}.catalog-heading p{font-size:11px}.catalog-heading .text-button{font-size:10px}.scene-search{height:43px;margin-bottom:4px}.scene-detail{padding-top:20px}.scene-detail-heading h1{font-size:26px}.review-hero h1{font-size:28px}.learning-shell:has(.study-page){padding:0}.learning-shell:has(.study-page) .study-page{border-radius:0;min-height:100dvh;padding:22px 25px 148px}.study-top{gap:10px}.study-top>span:nth-child(2){font-size:9px}.study-top .progress-count{white-space:nowrap;font-size:10px}.study-track{margin-top:16px}.word-toolbar{padding-top:16px}.word-center{padding:26px 0 25px}.word-center h1{font-size:clamp(23px,calc(300px / var(--word-chars,4)),36px);margin:0 0 1px;line-height:1.55}.word-center .reading{font-size:12px}.word-center .definition p{font-size:16px}.context-block{padding-top:22px}.context-block .example{font-size:19px;line-height:1.95}.study-controls{width:100%;padding:12px 18px max(19px,env(safe-area-inset-bottom));box-shadow:none;border-radius:0;bottom:0;left:0;right:0;transform:none}.study-controls .grade-buttons button b{font-size:11px!important}.study-controls .grade-buttons button span{font-size:8px!important}.study-controls .control-hint{margin-bottom:6px;font-size:8px;line-height:1.7}.study-controls .grade-buttons button{min-height:57px}.learning-shell:has(.study-page) .study-controls{left:0;right:0}.keyboard-hint{font-size:8px!important}.page-heading h1{font-size:25px}}@media (height<=630px){.home-word{top:23%}.home-learning{bottom:14%}.home-top{top:20px}.home-book{padding-bottom:10px}.home-tools{bottom:13px}.home-actions,.home-actions button{height:52px;min-height:52px}}.immersive-home .daily-word{padding-top:0}.immersive-home .home-actions{border-radius:0;margin-top:0}.immersive-home .home-actions button+button{border-left:0}.study-page .study-top{padding-bottom:0}.study-page .study-body{min-height:0;margin-top:0}.study-page .word-center h1{letter-spacing:0;font-size:43px;line-height:1.5}.learning-shell:has(.study-page) .study-controls{width:min(740px,100%);max-width:740px;padding:15px 40px max(24px,env(safe-area-inset-bottom));box-shadow:none;z-index:25;background:#dcecf0eb;border:0;border-top:1px solid #bcd4d648;border-radius:0;bottom:0;left:50%;right:auto}.study-page .study-body:not(.revealed){min-height:0}.study-page .study-body:not(.revealed) .word-center{padding-top:26px}[data-theme=dark] .learning-shell:has(.study-page) .study-controls{background:#283e41f2}@media (width<=760px){.study-page .word-center h1{font-size:clamp(22px,calc((100vw - 65px)/var(--word-chars,4)),36px);line-height:1.55}.learning-shell:has(.study-page) .study-controls{width:100%;max-width:none;padding:12px 18px max(19px,env(safe-area-inset-bottom));bottom:0;left:0;right:0;transform:none}}.learning-shell .study-controls .grade-buttons button.good,.learning-shell .study-controls .grade-buttons button.easy{box-shadow:none;background:0 0;border-color:#91b2b44d}.learning-shell .study-controls .grade-buttons button.good b{color:#426368}.learning-shell .study-controls .grade-buttons button.easy b{color:#3d8684}.learning-shell .study-controls .grade-buttons button span{color:#80999b}.learning-shell .study-controls .grade-buttons button:hover{background:#ffffff36}[data-theme=dark] .learning-shell .study-controls .grade-buttons button.good b{color:#b1d4d7}[data-theme=dark] .learning-shell .study-controls .grade-buttons button.easy b{color:#86c7bb}[data-theme=dark] .learning-shell .study-controls .grade-buttons button span{color:#93b3b6}.immersive-home:after{background:linear-gradient(#17282b40,#13212850 40%,#1020236e 74%,#11242959)}.home-learning{bottom:15%}@media (width<=760px){.home-learning{bottom:12%}.study-controls .keyboard-hint{display:none!important}}@media (height<=630px){.home-learning{bottom:12%}}.learning-shell:has(.study-page) .study-controls:has(.recognition-actions){border-top:0;padding-top:0}.recognition-actions{grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;gap:0;display:grid}.recognition-actions button{min-height:56px;box-shadow:none;color:#426368;font:400 17px/1.6 var(--font);letter-spacing:.5px;text-align:center;background:0 0;border:0;border-radius:0;padding:12px 0}.recognition-actions button:hover{color:#314f52;background:#ffffff26}.recognition-actions button:focus-visible{outline-offset:-4px;outline:2px solid #69a0a6}.recognition-tools{justify-content:flex-end;align-items:center;min-height:28px;display:flex;position:relative}.recognition-tools>span{color:#819b9d;margin-right:auto;font-size:9px}.recognition-more{color:#7a969a;margin:0;padding:0}.recognition-more>summary{cursor:pointer;letter-spacing:2px;-webkit-user-select:none;user-select:none;border-radius:4px;place-items:center;min-width:44px;min-height:28px;font-size:22px;line-height:1;list-style:none;display:grid}.recognition-more>summary::-webkit-details-marker{display:none}.recognition-more>summary:hover{background:#ffffff36}.recognition-more>summary:focus-visible{outline-offset:1px;outline:2px solid #69a0a6}.recognition-popover{color:#426368;z-index:40;text-align:left;background:#edf5f5;border:1px solid #b6d0d3;border-radius:8px;width:min(290px,100vw - 36px);padding:18px 20px;position:absolute;bottom:36px;right:0;box-shadow:0 8px 25px #26434712}.recognition-popover>button{color:#3b7774;background:0 0;border:0;border-radius:0;justify-content:space-between;align-items:center;width:100%;min-height:44px;padding:10px 0;font-size:15px;display:flex}.recognition-popover>button:hover{color:#2f6562}.recognition-popover>button small{color:#66898b;font-size:11px}.recognition-popover>p{color:#789295;margin:3px 0 16px;font-size:10px;line-height:1.8}.recognition-popover dl{border-top:1px solid #c8dbdd;border-bottom:1px solid #c8dbdd;gap:12px;margin:0;padding:12px 0;display:grid}.recognition-popover dl>div{justify-content:space-between;font-size:11px;line-height:1.5;display:flex}.recognition-popover dt,.recognition-popover dd{margin:0;font-weight:400}.recognition-popover dd{color:#789295;font-variant-numeric:tabular-nums}.recognition-popover>small{color:#789295;margin-top:12px;font-size:10px;line-height:1.9;display:block}[data-theme=dark] .recognition-actions button{color:#bdd5d8}[data-theme=dark] .recognition-actions button:hover{color:#d9e8e9;background:#ffffff0d}[data-theme=dark] .recognition-popover{color:#cfdee0;background:#2d4549;border-color:#526b6e;box-shadow:0 8px 25px #10252955}[data-theme=dark] .recognition-popover>button{color:#a5d0c7}[data-theme=dark] .recognition-popover>button small,[data-theme=dark] .recognition-popover>p,[data-theme=dark] .recognition-popover dd,[data-theme=dark] .recognition-popover>small{color:#a0babd}[data-theme=dark] .recognition-popover dl{border-color:#4b686c}@media (width<=760px){.recognition-actions button{min-height:56px;font-size:16px}.recognition-tools{min-height:32px}.recognition-more>summary{min-height:32px;font-size:21px}.recognition-popover{bottom:40px}}
