:root{font-family:Avenir Next,PingFang SC,Hiragino Sans GB,Noto Sans CJK SC,system-ui,sans-serif;color:#20352c;background:#f7f4ee;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}html{scroll-behavior:smooth}body{min-width:320px;min-height:100vh;margin:0}a{text-decoration:none}button:focus-visible,input:focus-visible,a:focus-visible{outline:3px solid #e57b57;outline-offset:3px}#root{min-height:100vh}*{box-sizing:border-box}button,input{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;color:#20352c;background:#f7f4ee}.skip-link{position:fixed;left:1rem;top:-4rem;z-index:10;padding:.65rem 1rem;color:#fff;background:#1c5547;border-radius:.5rem}.skip-link:focus{top:1rem}.topbar{max-width:1440px;height:72px;margin:auto;padding:0 32px;display:flex;align-items:center;justify-content:space-between}.brand{padding:0;border:0;color:#183e34;display:inline-flex;gap:10px;align-items:center;background:transparent;font:800 1.08rem/1 Avenir Next,Hiragino Sans,sans-serif;letter-spacing:.02em}.brand-mark{width:35px;height:35px;display:grid;place-items:center;color:#f7f4ee;background:#1c5547;border-radius:11px 11px 11px 2px;font:800 1rem serif;letter-spacing:0}.topbar-note{display:flex;align-items:center;gap:8px;color:#6c766f;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase}.pulse-dot{width:7px;height:7px;border-radius:999px;background:#e77950;box-shadow:0 0 0 4px #f3d8cd}main{max-width:1440px;margin:auto;padding:18px 32px 48px}.hero{min-height:284px;display:flex;justify-content:space-between;align-items:center;gap:2rem;padding:30px 0 50px}.eyebrow{color:#df704c;margin:0 0 .7rem;font-size:.78rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}h1,h2,p{margin-top:0}h1{margin-bottom:1.15rem;color:#163c31;font:700 clamp(2.5rem,5vw,4.7rem)/.98 Georgia,"Times New Roman","Hiragino Mincho ProN",serif;letter-spacing:-.055em}h1 em{color:#df704c;font-style:italic}.hero-copy{max-width:450px;color:#5c6961;font-size:1rem;line-height:1.8}.hero-card{width:230px;flex:0 0 auto;padding:28px 27px 24px;color:#f5f0e8;background:#1c5547;border-radius:18px;box-shadow:12px 12px #e4ddd0;transform:rotate(2.2deg)}.hero-card span{color:#aed2b7;font-size:.8rem;letter-spacing:.1em}.hero-card strong{display:block;margin:10px 0 12px;font:700 2.05rem Georgia,serif}.hero-card p{margin:0;color:#d4e1d7;font-size:.84rem;line-height:1.6}.guide-link{padding:.48rem .75rem;border:1px solid #dfe5df;border-radius:999px;color:#397354;background:#fffdf9;font-size:.76rem;font-weight:700}.guide-link:hover{color:#fff;background:#235a48}.workspace{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;align-items:stretch}.player-card,.how-to-card,.library{border:1px solid #e7e1d8;border-radius:22px;background:#fffdf9;box-shadow:0 7px 22px #2a352e0d}.player-card{padding:22px 24px}.player-heading{display:flex;gap:1rem;justify-content:space-between;align-items:flex-start}.player-heading h2,.library h2{color:#173c32;font:700 clamp(1.7rem,3vw,2.3rem)/1.15 Georgia,"Hiragino Mincho ProN",serif;letter-spacing:-.03em}.level-badge{padding:.38rem .68rem;border-radius:999px;color:#397354;background:#ecf5ed;font-size:.75rem;font-weight:700}.level-badge.mid{color:#b4573a;background:#fff0ea}.now-playing-preview{min-height:62px;display:flex;gap:10px;align-items:flex-start;margin:12px 0 10px;padding:9px 11px;border-left:3px solid #df704c;border-radius:0 9px 9px 0;background:#fff8f4}.now-playing-copy{min-width:0;flex:1}.now-playing-preview p{margin:0}.now-playing-japanese{color:#173c32;font-size:.95rem;line-height:1.55;white-space:pre-line}.now-playing-translation{margin-top:3px!important;color:#728078;font-size:.76rem;line-height:1.4;white-space:pre-line}.now-playing-translation small{margin-right:.42rem;color:#df704c;font-size:.65rem;font-weight:800}.now-playing-translation-toggle{flex:0 0 auto;padding:.36rem .48rem;border:1px solid #ead4ca;border-radius:7px;color:#b45236;background:#fffdfa;font-size:.68rem;font-weight:800}.now-playing-translation-toggle.active{color:#fff;border-color:#df704c;background:#df704c}.waveform{height:38px;display:flex;gap:3px;align-items:center;margin-bottom:7px;overflow:hidden}.waveform i{width:100%;border-radius:99px;background:#a4ccb1}.waveform i:nth-child(3n){background:#de8868}.waveform i:nth-child(4n){background:#4e9671}.progress-row{display:grid;grid-template-columns:40px 1fr 40px;gap:9px;align-items:center;color:#718078;font-size:.72rem;font-variant-numeric:tabular-nums}.progress-seek{min-width:0;touch-action:none}.progress-row input{width:100%;pointer-events:none;accent-color:#df704c}.now-playing-japanese ruby,.mobile-now-copy ruby{ruby-position:over;ruby-align:center}.now-playing-japanese rt,.mobile-now-copy rt{color:#df704c;font-size:.58em;font-weight:700;letter-spacing:.04em}.transport{display:flex;align-items:center;justify-content:center;gap:13px;padding:12px 0 10px}.round-button,.play-button{border:0;color:#1a4b3c;background:transparent}.round-button{width:34px;height:34px;border-radius:50%;font-size:1.28rem}.round-button:hover{background:#eef4ef}.play-button{width:48px;height:48px;padding-left:3px;border-radius:50%;color:#fff;background:#df704c;box-shadow:0 4px #bb5738;font-size:1.15rem}.play-button:active{transform:translateY(2px);box-shadow:0 2px #bb5738}.player-options{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-top:1px solid #eeeae2;padding-top:10px}.speed-control{display:flex;flex-wrap:wrap;gap:4px}.speed-control button,.loop-button{border:0;color:#68766e;background:transparent;font-size:.76rem}.speed-control button{padding:.38rem .5rem;border-radius:6px}.speed-control .selected{color:#fff;background:#235a48}.loop-button{padding:.45rem .6rem;border-radius:7px}.loop-button.active{color:#b45236;background:#fff0ea}.sleep-timer{display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin-top:8px;padding-top:9px;border-top:1px solid #eeeae2;color:#68766e}.sleep-timer-label{margin-right:2px;color:#68766e;font-size:.72rem;font-weight:800}.sleep-timer button{padding:.3rem .48rem;border:1px solid #dfe5df;border-radius:7px;color:#527062;background:#fff;font-size:.72rem;font-weight:700}.sleep-timer button:hover,.sleep-timer button.selected{border-color:#235a48;color:#fff;background:#235a48}.sleep-timer .sleep-countdown{margin-left:2px;color:#b45236;font-size:.71rem;font-variant-numeric:tabular-nums}.sleep-timer .sleep-cancel{border-color:#ead4ca;color:#b45236;background:#fffaf7}.sleep-timer .sleep-cancel:hover{border-color:#df704c;color:#fff;background:#df704c}.how-to-card{padding:31px 28px;background:#f1eee6}.how-to-card ol{padding:0;margin:1.6rem 0 0;list-style:none}.how-to-card li{display:flex;gap:14px;padding:0 0 23px}.how-to-card li:last-child{padding-bottom:0}.how-to-card li>span{color:#df704c;font:700 .9rem Georgia,serif}.how-to-card strong{color:#26483e;font-size:.92rem}.how-to-card p{margin:.26rem 0 0;color:#798078;font-size:.8rem;line-height:1.55}.guide-page{max-width:720px;margin:3.5rem auto;padding:clamp(28px,5vw,56px);border:1px solid #e7e1d8;border-radius:22px;background:#fffdf9;box-shadow:0 7px 22px #2a352e0d}.guide-page .hero-copy{margin-bottom:2.3rem}.guide-steps{display:grid;gap:1px;padding:0;margin:0;overflow:hidden;list-style:none;border:1px solid #e7e3db;border-radius:14px}.guide-steps li{display:grid;grid-template-columns:46px 1fr;gap:13px;padding:20px;background:#fff}.guide-steps li>span{color:#df704c;font:700 1rem Georgia,serif}.guide-steps strong{color:#26483e}.guide-steps p{margin:.35rem 0 0;color:#788078;font-size:.9rem;line-height:1.65}.back-to-practice{margin-top:1.6rem;padding:.7rem 1rem;border:0;border-radius:9px;color:#fff;background:#235a48;font-weight:700}.source-card{margin-top:22px;padding:clamp(22px,4vw,40px);border:1px solid #e7e1d8;border-radius:22px;background:#fffdf9;box-shadow:0 7px 22px #2a352e0d}.source-heading{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;margin-bottom:24px}.source-heading h2{margin-bottom:.5rem;color:#173c32;font:700 clamp(1.7rem,3vw,2.3rem)/1.15 Georgia,"Hiragino Mincho ProN",serif;letter-spacing:-.03em}.source-heading>div>p:last-child{margin:0;color:#778078;font-size:.86rem}.translation-tabs{display:flex;gap:5px;padding:4px;border-radius:9px;background:#f1eee6}.translation-tabs button{padding:.42rem .75rem;border:0;border-radius:6px;color:#68766e;background:transparent;font-size:.76rem}.translation-tabs .selected{color:#fff;background:#235a48}.source-pages{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,.7fr);gap:20px;align-items:start}.book-page{position:relative;overflow:hidden;border:1px solid #e5e4df;background:#f1eee6}.book-page img{width:100%;display:block}.translation-page{aspect-ratio:560 / 2480}.translation-page img{width:300%;max-width:none;min-height:100%;transform:translate(0)}.translation-page.zh img{transform:translate(-33.333%)}.translation-label{position:absolute;left:12px;top:12px;padding:.3rem .55rem;border-radius:999px;color:#276047;background:#ffffffe6;font-size:.7rem;font-weight:700}.sentence-hotspots{position:absolute;inset:0}.sentence-hotspots button{position:absolute;left:6%;width:88%;padding:0;border:0;border-radius:7px;color:transparent;background:transparent}.sentence-hotspots button:hover,.sentence-hotspots button:focus-visible,.sentence-hotspots button.active{color:#fff;background:#de704c4a;outline:2px solid #df704c}.sentence-hotspots button span{position:absolute;left:.4rem;top:.35rem;width:20px;height:20px;display:grid;place-items:center;border-radius:50%;font-size:.66rem;font-weight:700;background:#df704c}.transcript-list{display:grid;gap:9px}.transcript-row{display:grid;grid-template-columns:54px minmax(0,1fr);gap:15px;padding:14px;border:1px solid #e9e7e1;border-radius:12px;background:#fff;transition:border-color .18s,background .18s}.transcript-row.active{border-color:#e27b58;background:#fff8f4}.sentence-play-button{min-height:48px;padding:.35rem;align-self:center;border:0;border-radius:9px;color:#2a624b;background:#e9f4eb}.sentence-play-button:hover,.sentence-play-button.playing{color:#fff;background:#df704c}.sentence-play-button span,.sentence-play-button b{display:block}.sentence-play-button span{font:700 .7rem Georgia,serif}.sentence-play-button b{margin-top:.2rem;font-size:.7rem}.transcript-text{min-width:0;-webkit-user-select:text;user-select:text}.japanese-text,.translation-text{white-space:pre-line}.japanese-text{margin:0 0 .55rem;color:#173c32;font-size:1.05rem;line-height:1.75}.japanese-line{display:block}.japanese-text ruby{ruby-position:over;ruby-align:center}.japanese-text rt{color:#df704c;font-size:.58em;font-weight:700;letter-spacing:.04em;-webkit-user-select:text;user-select:text}.translation-text{margin:0;color:#6e786f;font-size:.88rem;line-height:1.7}.translation-text small{display:inline-block;min-width:31px;margin-right:.42rem;color:#df704c;font-size:.67rem;font-weight:800;letter-spacing:.06em}.transcript-loading{padding:2rem 0;margin:0;color:#7c857f;text-align:center}.sentence-analysis{margin-top:.68rem;-webkit-user-select:none;user-select:none}.analysis-toggle{padding:.32rem .52rem;border:1px solid #dfd9d0;border-radius:7px;color:#38614f;background:#f8faf6;font-size:.72rem;font-weight:800}.analysis-toggle:hover,.analysis-toggle.active{border-color:#235a48;color:#fff;background:#235a48}.analysis-content{display:grid;gap:10px;margin-top:8px;padding:11px;border:1px solid #deeadf;border-radius:10px;background:#f7fbf7}.analysis-section+.analysis-section{padding-top:9px;border-top:1px solid #deeadf}.analysis-label{margin:0 0 .42rem;color:#5b796b;font-size:.65rem;font-weight:800;letter-spacing:.09em}.word-pills{display:flex;flex-wrap:wrap;gap:5px}.word-pills button{padding:.28rem .45rem;border:1px solid #cfe2d4;border-radius:999px;color:#245946;background:#fff;font-size:.76rem;line-height:1.15}.word-pills button:hover,.word-pills button.selected{border-color:#df704c;color:#a85035;background:#fff6f1}.word-detail,.analysis-empty{margin:.58rem 0 0;color:#60736a;font-size:.78rem;line-height:1.58}.word-detail b{color:#214b3d}.word-detail span{display:block;margin-top:.22rem;color:#77837c}.grammar-insights{display:grid;gap:6px;padding:0;margin:0;list-style:none}.grammar-insights li{color:#61736a;font-size:.78rem;line-height:1.52}.grammar-insights b{display:inline-block;margin-right:.35rem;color:#a85035}.sentence-analysis.compact{margin-top:.44rem}.sentence-analysis.compact .analysis-toggle{padding:.25rem .42rem;font-size:.65rem}.sentence-analysis.compact .analysis-content{gap:8px;margin-top:6px;padding:9px}.sentence-analysis.compact .word-detail,.sentence-analysis.compact .analysis-empty,.sentence-analysis.compact .grammar-insights li{font-size:.7rem}.library{margin-top:22px;padding:clamp(23px,4vw,42px)}.library-header{display:flex;justify-content:space-between;gap:1.5rem;align-items:flex-end}.library-header h2{margin:0}.search{width:min(235px,100%);display:flex;align-items:center;gap:.45rem;padding:.6rem .8rem;border:1px solid #e3e2dd;border-radius:9px;color:#8b918c;background:#fff}.search input{width:100%;border:0;outline:0;color:#294339;background:transparent;font-size:.82rem}.filter-row{display:flex;gap:7px;margin:30px 0 20px}.filter-row button{padding:.5rem .75rem;border:1px solid #e1e4df;border-radius:99px;color:#6f7b73;background:#fff;font-size:.78rem}.filter-row button small{display:block;margin-top:.12rem;font-size:.62rem;opacity:.75}.filter-row button.selected{border-color:#205746;color:#fff;background:#205746}.course-library{display:flex;justify-content:space-between;gap:2rem;align-items:center;margin-top:0;padding:18px 24px}.course-library .eyebrow{margin-bottom:.3rem}.course-library .library-header h2{font-size:1.45rem}.course-library .filter-row{margin:0}.desktop-practice-layout{display:grid;grid-template-columns:minmax(320px,.78fr) minmax(0,1.22fr);gap:20px;align-items:start;margin-top:20px}.desktop-practice-layout .left-practice-column{grid-column:1;grid-row:1;display:grid;gap:20px;align-items:start}.desktop-practice-layout .workspace{position:static}.desktop-practice-layout .library{margin:0;padding:26px;overflow:visible}.desktop-practice-layout .source-card{grid-column:2;grid-row:1;max-height:none;margin:0;padding:28px;position:static;overflow:visible}.desktop-practice-layout .source-heading{margin-bottom:16px}.desktop-practice-layout .transcript-row{padding:11px}.desktop-practice-layout .japanese-text{font-size:1rem;line-height:1.65}.desktop-practice-layout .translation-text{font-size:.84rem;line-height:1.55}@media(min-width:821px){.desktop-practice-layout .source-card{display:flex;flex-direction:column;min-height:0;overflow:hidden}.desktop-practice-layout .source-heading{flex:0 0 auto}.desktop-practice-layout .source-card>.transcript-list{min-height:0;flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;padding-right:8px;scrollbar-gutter:stable}.desktop-practice-layout .source-card>.transcript-loading{flex:1 1 auto}.desktop-practice-layout .source-card>.transcript-list::-webkit-scrollbar{width:8px}.desktop-practice-layout .source-card>.transcript-list::-webkit-scrollbar-thumb{border-radius:999px;background:#c6d5ca}.desktop-practice-layout .source-card>.transcript-list::-webkit-scrollbar-track{background:#f2f4ef}}.lesson-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.lesson-row{min-width:0;display:grid;grid-template-columns:38px 1fr 27px;gap:11px;align-items:center;padding:13px;border:1px solid #ebe9e3;border-radius:12px;color:#244338;text-align:left;background:#fff;transition:transform .18s,border-color .18s,background .18s}.lesson-row:hover{transform:translateY(-1px);border-color:#9dc7ab;background:#f7fbf7}.lesson-row.active{border-color:#e27b58;background:#fff8f4}.lesson-number{color:#df704c;font:700 .85rem Georgia,serif}.lesson-title{overflow:hidden}.lesson-title strong,.lesson-title small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lesson-title strong{font-size:.88rem}.lesson-title small{margin-top:.25rem;color:#849087;font-size:.7rem}.lesson-play{width:27px;height:27px;display:grid;place-items:center;border-radius:50%;color:#286148;background:#eaf4ec;font-size:.64rem}.active .lesson-play{color:#fff;background:#df704c}.empty-state{padding:2rem 0 0;color:#788078;text-align:center}footer{max-width:1200px;margin:auto;padding:0 32px 35px;color:#8b938c;font-size:.72rem;text-align:center}.mobile-now-playing,.transcript-sheet{display:none}@media(max-width:820px){.desktop-practice-layout{display:block}.desktop-practice-layout .workspace{position:static}.desktop-practice-layout .source-card{max-height:none;margin-top:20px;position:static}.desktop-practice-layout .library{max-height:none;margin-top:20px;position:static;overflow:visible}}@media(max-width:720px){.topbar{height:58px;padding:0 15px}.guide-link{padding:.38rem .62rem;font-size:.7rem}main{padding:10px 12px 126px}.hero{min-height:0;display:block;padding:9px 4px 14px}.hero h1{margin-bottom:.45rem;font-size:2.25rem;line-height:1}.hero-copy{margin:0;font-size:.86rem;line-height:1.55}.hero-card{display:none}.course-library{display:block;margin-top:0;padding:15px}.course-library .library-header h2{font-size:1.35rem}.course-library .eyebrow{margin-bottom:.3rem}.course-library .filter-row{margin:12px 0 0}.workspace{margin-top:10px;grid-template-columns:1fr}.player-card,.library,.source-card{border-radius:15px}.player-card{padding:16px}.player-heading h2{font-size:1.42rem}.player-heading .eyebrow{margin-bottom:.35rem}.now-playing-preview{display:none}.waveform{height:35px;margin:12px 0 7px}.transport{gap:13px;padding:13px 0 10px}.play-button{width:52px;height:52px;font-size:1.2rem}.round-button{width:34px;height:34px;font-size:1.25rem}.player-options{align-items:center;flex-direction:row;padding-top:10px}.speed-control button{padding:.3rem .38rem}.loop-button{padding:.3rem .38rem;font-size:.7rem}.source-card{display:none}.library{margin-top:12px;padding:16px}.library-header{display:block}.library-header h2{font-size:1.45rem}.search{width:100%;margin-top:14px}.filter-row{flex-wrap:wrap;overflow:hidden;margin:15px 0;padding-bottom:3px}.filter-row button{white-space:nowrap}.lesson-grid{grid-template-columns:1fr}.lesson-row{padding:10px}.lesson-title small{font-size:.65rem}footer{display:none}.mobile-now-playing{position:fixed;z-index:20;right:9px;bottom:calc(9px + env(safe-area-inset-bottom));left:9px;display:flex;gap:9px;align-items:center;padding:10px 10px 10px 13px;border:1px solid rgba(225,117,82,.35);border-radius:16px;background:#fffdf9f5;box-shadow:0 12px 30px #1b392f2e;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.mobile-now-copy{min-width:0;flex:1}.mobile-now-copy>span{color:#df704c;font-size:.65rem;font-weight:800;letter-spacing:.05em}.mobile-now-copy p{display:-webkit-box;margin:2px 0;overflow:hidden;color:#173c32;font-size:.92rem;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}.mobile-now-copy .japanese-line{display:inline}.mobile-now-copy small{display:block;overflow:hidden;color:#748077;font-size:.68rem;white-space:nowrap;text-overflow:ellipsis}.mobile-now-actions{display:grid;gap:5px}.mobile-now-actions button{min-width:42px;padding:.38rem .42rem;border:0;border-radius:8px;color:#fff;background:#235a48;font-size:.71rem;font-weight:800}.mobile-now-actions button:first-child{background:#df704c;font-size:.86rem}.transcript-sheet{position:fixed;z-index:30;inset:0;display:flex;align-items:flex-end;padding:12px;background:#112a234d}.sheet-panel{width:100%;max-height:min(82dvh,720px);overflow:auto;padding:18px 14px calc(18px + env(safe-area-inset-bottom));border-radius:20px;background:#fffdf9;box-shadow:0 -12px 38px #16302830}.sheet-heading{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;padding:0 4px 14px}.sheet-heading h2{margin:0;color:#173c32;font:700 1.55rem/1.1 Georgia,serif}.sheet-heading .eyebrow{margin-bottom:.3rem}.sheet-heading button{width:32px;height:32px;border:0;border-radius:50%;color:#315548;background:#edf2ec;font-size:1.35rem}.guide-page{margin:12px 0;padding:24px 18px;border-radius:17px}.guide-page h1{font-size:2.35rem}.guide-steps li{padding:16px}.back-to-practice{width:100%}}@media(max-width:390px){h1{font-size:2.55rem}.speed-control{gap:2px}.speed-control button{padding:.35rem .42rem}.player-card{padding:22px}}@media(max-width:720px){main{padding-bottom:32px}.course-library{padding:10px 12px}.course-library .library-header{display:none}.course-library .filter-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:0;overflow:visible}.course-library .filter-row button{min-width:0;padding:.52rem .4rem;font-size:.84rem;text-align:center}.course-library .filter-row button small{display:none}.workspace{gap:8px;margin-top:8px}.player-card{padding:12px}.player-heading{align-items:center}.player-heading .eyebrow{display:none}.player-heading h2{font-size:1.14rem}.level-badge{padding:.3rem .48rem;font-size:.63rem}.waveform{height:22px;margin:7px 0 4px}.progress-row{grid-template-columns:34px 1fr 34px;gap:6px;font-size:.66rem}.transport{gap:10px;padding:8px 0 6px}.play-button{width:44px;height:44px;font-size:1rem}.round-button{width:40px;height:40px;font-size:1.35rem}.player-options{gap:.45rem;padding-top:7px}.speed-control{gap:2px}.speed-control button{padding:.25rem .32rem;font-size:.68rem}.loop-button{padding:.26rem .32rem;font-size:.66rem}.sleep-timer{gap:4px;padding-top:7px}.sleep-timer-label{font-size:.68rem}.sleep-timer button{padding:.27rem .4rem;font-size:.68rem}.sleep-timer .sleep-countdown{font-size:.67rem}.mobile-now-playing{position:static;z-index:auto;right:auto;bottom:auto;left:auto;display:flex;gap:10px;align-items:center;margin:0 0 14px;padding:10px 10px 10px 12px;border:1px solid rgba(225,117,82,.35);border-radius:14px;background:#fffaf7;box-shadow:0 5px 16px #1b392f14;-webkit-backdrop-filter:none;backdrop-filter:none}.mobile-now-copy{min-width:0;flex:1}.mobile-now-copy{cursor:pointer}.mobile-now-copy:focus-visible{outline:2px solid #df704c;outline-offset:4px;border-radius:6px}.mobile-now-copy>span{color:#df704c;font-size:.72rem;font-weight:800;letter-spacing:.05em}.mobile-now-copy p{display:block;margin:5px 0;overflow:visible;color:#173c32;font-size:1.02rem;line-height:1.5;white-space:pre-line}.mobile-now-copy small{display:block;margin:0;overflow:visible;color:#748077;font-size:.82rem;line-height:1.42;white-space:pre-line}.mobile-now-actions{display:grid;gap:5px}.mobile-now-actions button{min-width:50px;min-height:40px;padding:.42rem .48rem;border:0;border-radius:9px;color:#fff;background:#235a48;font-size:.8rem;font-weight:800}.mobile-now-actions button:first-child{background:#df704c;font-size:1rem}.mobile-now-actions button.active{background:#b45236}.library{overflow:visible}.library:not(.course-library) .filter-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;overflow:visible;margin:12px 0;padding:0}.library:not(.course-library) .filter-row button{min-width:0;padding:.5rem .28rem;font-size:.86rem;white-space:normal}.library:not(.course-library) .filter-row button small{font-size:.65rem}.lesson-row{padding:12px}.lesson-number{font-size:.94rem}.lesson-title strong{font-size:.98rem}.lesson-title small{font-size:.76rem}.lesson-play{width:32px;height:32px;font-size:.72rem}}@media(max-width:390px){.brand{font-size:.98rem}.speed-control button{padding:.24rem .28rem}.loop-button{font-size:.62rem}.player-card{padding:11px}}.topbar-actions{display:flex;align-items:center;gap:7px}.favorite-link{color:#b45236}.favorite-link:hover{background:#df704c}.selectable-transcript{user-select:text;-webkit-user-select:text}.floating-favorite-action{position:fixed;z-index:60;display:flex;align-items:center;gap:9px;max-width:min(260px,calc(100vw - 24px));padding:7px 8px 7px 11px;border:1px solid rgba(223,112,76,.35);border-radius:999px;color:#734b3c;background:#fffdf9fa;box-shadow:0 8px 24px #2139302b;font-size:.74rem;line-height:1.2;pointer-events:auto;transform:translate(-50%,-100%)}.floating-favorite-action.below{transform:translate(-50%)}.floating-favorite-action span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.floating-favorite-action button{flex:0 0 auto;padding:.38rem .68rem;border:0;border-radius:999px;color:#fff;background:#df704c;font-size:.72rem;font-weight:800}.favorites-page{max-width:760px;margin:2.5rem auto;padding:clamp(25px,5vw,48px);border:1px solid #e7e1d8;border-radius:22px;background:#fffdf9;box-shadow:0 7px 22px #2a352e0d}.favorites-page h1{margin-bottom:.75rem;font-size:clamp(2.15rem,5vw,3.75rem)}.favorites-page .hero-copy{margin-bottom:1.6rem}.favorites-list{display:grid;gap:9px}.favorite-item{display:flex;justify-content:space-between;gap:18px;padding:16px;border:1px solid #e8e5df;border-radius:12px;background:#fff}.favorite-text{margin-bottom:.42rem;color:#173c32;font-size:1.05rem;line-height:1.6;white-space:pre-line}.favorite-meta{margin-bottom:.32rem;color:#a16149;font-size:.71rem}.favorite-translation{margin:0;color:#6e786f;font-size:.82rem;line-height:1.55;white-space:pre-line}.favorite-item button{align-self:flex-start;padding:.38rem .58rem;border:1px solid #eadbd4;border-radius:7px;color:#9a533c;background:#fffaf7;font-size:.72rem}.favorites-empty{padding:28px 18px;border:1px dashed #dcded7;border-radius:12px;color:#738078;background:#fff;text-align:center}.favorites-empty p{margin-bottom:.5rem;font-size:.88rem;line-height:1.55}.favorites-empty p:last-child{margin-bottom:0}@media(max-width:720px){.topbar-actions{gap:4px}.floating-favorite-action{max-width:calc(100vw - 20px);padding:7px 8px 7px 10px;font-size:.7rem}.floating-favorite-action button{padding:.34rem .58rem}.sheet-heading .sheet-close{width:auto;min-width:48px;height:34px;padding:0 .62rem;border-radius:8px;font-size:.72rem;font-weight:800}.favorites-page{margin:10px 0;padding:22px 16px;border-radius:16px}.favorites-page h1{font-size:2.25rem}.favorites-page .hero-copy{font-size:.84rem}.favorite-item{gap:10px;padding:13px}.favorite-text{font-size:.96rem}.favorite-item button{padding:.34rem .5rem}}
