.home-horizontal-rail{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scroll-snap-type:x proximity;width:100%;overflow:auto hidden}.home-horizontal-rail::-webkit-scrollbar{height:10px}.home-horizontal-rail::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:999px}.home-horizontal-rail::-webkit-scrollbar-track{background:0 0}.sheet-list{align-items:stretch;gap:14px;display:grid}.sheet-card-wrap{min-width:0}.my-sheet-card{flex-direction:column;justify-content:flex-start;height:100%;display:flex}.my-sheet-card .sheet-card-head{align-items:flex-start;gap:8px}.my-sheet-card .sheet-title-row{flex:1;min-width:0}.my-sheet-card .sheet-title{overflow-wrap:anywhere;-webkit-box-orient:vertical;line-height:1.25;display:-webkit-box;overflow:hidden}.my-sheet-card .sheet-head-right{flex-shrink:0}.my-sheet-card .sheet-sub{margin-top:12px}.my-sheet-stats{color:var(--text-soft);flex-wrap:wrap;gap:6px;margin-top:auto;font-weight:700;display:flex}.recommended-rail{width:100%}.recommended-grid{align-items:stretch;gap:14px;display:grid}.recommended-tile{cursor:pointer;box-shadow:none;background:0 0;border:none;flex-direction:column;justify-content:flex-start;align-items:center;display:flex}.recommended-tile.locked{opacity:.74}.recommended-tile.loading{pointer-events:none}.recommended-tile-image-wrap{width:100%;box-shadow:none;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;margin-bottom:12px;padding:0;display:flex}.recommended-tile-image-wrap .recommended-card-image{object-fit:contain;width:100%;height:100%;display:block}.recommended-tile-body{text-align:center;flex-direction:column;align-items:center;gap:0;width:100%;padding:0;display:flex}.recommended-tile-title{color:#0f172a;overflow-wrap:anywhere;word-break:keep-all;text-align:center;-webkit-box-orient:vertical;font-weight:800;line-height:1.28;display:-webkit-box;overflow:hidden}@media (width<=767px){:root{--home-rail-gap:10px;--home-rail-side:2px;--home-card-size:calc((100vw - 48px - var(--home-rail-gap) - (var(--home-rail-side) * 2)) / 2)}.sheet-list,.recommended-grid{grid-auto-flow:column;grid-template-rows:repeat(2, var(--home-card-size));grid-auto-columns:var(--home-card-size);gap:var(--home-rail-gap);width:max-content;padding:2px var(--home-rail-side) 10px;display:grid}.sheet-card-wrap,.recommended-tile{width:var(--home-card-size);min-width:var(--home-card-size)}.my-sheet-card{aspect-ratio:1;border-radius:16px;padding:10px;overflow:hidden}.my-sheet-card .sheet-card-head{gap:6px}.my-sheet-card .sheet-title{-webkit-line-clamp:2;font-size:12px;line-height:1.25}.my-sheet-card .sheet-head-right{gap:2px}.my-sheet-card .icon-btn{border-radius:8px;padding:3px;font-size:12px}.my-sheet-card .sheet-sub{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:8px;font-size:11px;line-height:1.3;display:-webkit-box;overflow:hidden}.my-sheet-stats{gap:4px;font-size:10px;line-height:1.2}.my-sheet-card .sheet-badge{margin-top:6px;font-size:10px}.recommended-tile{aspect-ratio:1;box-shadow:none;background:0 0;border:none;border-radius:0;padding:8px;overflow:hidden}.recommended-tile-image-wrap{aspect-ratio:auto;min-height:0;box-shadow:none;background:0 0;border:none;flex:auto;margin-bottom:8px}.recommended-tile-body{text-align:center;flex:none;align-items:center}.recommended-tile-title{-webkit-line-clamp:2;text-align:center;font-size:11px;line-height:1.3}}@media (width>=768px){.sheet-list,.recommended-grid{grid-template-rows:1fr;grid-template-columns:none;grid-auto-columns:320px;grid-auto-flow:column;gap:14px;width:max-content;padding:4px 4px 12px}.my-sheet-card{min-height:240px}.my-sheet-card .sheet-title{-webkit-line-clamp:2;font-size:22px}.my-sheet-card .sheet-sub{font-size:15px}.my-sheet-stats{font-size:14px}.recommended-tile{min-height:260px;box-shadow:none;background:0 0;border:none;border-radius:0;align-items:center;padding:14px}.recommended-tile-image-wrap{height:170px;box-shadow:none;background:0 0;border:none}.recommended-tile-body{text-align:center;align-items:center}.recommended-tile-title{-webkit-line-clamp:2;text-align:center;font-size:22px}}:root{color:#111827;--c100:#67d55f;--c200:#4fc94a;--c300:#36bc35;--c400:#1fae1f;--c500:#0a9100;--bg:#f7faf6;--surface:#fff;--surface-soft:#f4f7f3;--border:#dfe7dc;--border-strong:#cdd8c8;--text:#111827;--text-soft:#4b5563;--text-muted:#6b7280;--overlay:#1118276b;--sample-bg:#67d55f1a;--sample-border:#67d55f42;--recommended-bg:#4fc94a1a;--recommended-border:#4fc94a3d;--import-bg:#0a91000f;--import-border:#0a91002e;--progress-gradient:linear-gradient(90deg, var(--c100) 0%, var(--c300) 58%, var(--c500) 100%);--progress-gradient-soft:linear-gradient(90deg, #67d55ff2 0%, #36bc35f5 58%, #0a9100fa 100%);--shadow-sm:0 6px 18px #0f172a0f;--shadow-md:0 16px 36px #0f172a1a;background:#f7faf6;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{min-width:320px;color:var(--text);background:var(--bg)}button,select,input,textarea{font:inherit}button{cursor:pointer;border:none}button:disabled{opacity:.45;cursor:not-allowed}input,textarea,select{color:var(--text)}input::placeholder,textarea::placeholder{color:#8b919b}.app-shell{flex-direction:column;min-height:100vh;display:flex}.topbar{z-index:20;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);background:#fffffff0;position:sticky;top:0}.topbar.simple-topbar{flex-direction:column;gap:12px;padding:18px 20px 16px;display:flex}.topbar-head-row{justify-content:space-between;align-items:center;gap:12px;width:100%;max-width:920px;margin:0 auto;display:flex}.topbar-left{justify-content:flex-start;align-items:center;min-width:0;display:flex}.topbar-stats-row{width:100%;max-width:920px;margin:0 auto}.topbar-left h1{margin:0;font-size:24px;font-weight:800}.topbar-logo{object-fit:contain;width:auto;height:52px;display:block}.settings-icon-btn{width:44px;height:44px;color:var(--c500);background:#67d55f24;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;font-size:20px;font-weight:800;display:inline-flex}.settings-icon-btn:hover{background:#67d55f38}.settings-icon-btn:active{transform:translateY(1px)}.stats-inline-bar{background:#67d55f24;border-radius:22px;align-items:center;gap:10px;width:100%;min-width:0;padding:14px 16px;display:flex}.stats-level-inline{white-space:nowrap;flex-shrink:0;font-weight:800;line-height:1}.stats-progress-track{background:#ffffff2e;border-radius:999px;flex:1;min-width:0;height:8px;overflow:hidden}.stats-progress-fill{background:linear-gradient(90deg,#7c3aed 0%,#22c55e 100%);border-radius:999px;height:100%}.stats-progress-text{white-space:nowrap;flex-shrink:0;font-weight:700;line-height:1}.stats-level-inline{color:var(--c500);white-space:nowrap;font-size:18px;font-weight:900}.stats-progress-text{color:var(--c500);white-space:nowrap;min-width:0;font-size:16px;font-weight:800}.stats-progress-track{background:#e5e7eb;border-radius:999px;width:100%;height:10px;overflow:hidden}.stats-progress-fill{background:var(--progress-gradient);border-radius:999px;height:100%;transition:width .25s}.settings-btn{background:var(--c500);color:#fff;text-align:center;white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;gap:8px;height:44px;padding:0 22px;font-size:14px;font-weight:800;display:inline-flex}.settings-btn:hover{background:#087700}.settings-btn:active{transform:translateY(1px)}.home-layout{flex-direction:column;gap:22px;width:100%;max-width:1120px;margin:0 auto;padding:22px 16px 40px;display:flex}.section-block{border-radius:24px;padding:22px;box-shadow:inset 0 1px #ffffffbf}.section-secondary{background:var(--recommended-bg);border:none}.section-import{background:var(--import-bg);border:none}.section-primary{background:var(--sample-bg);border-color:var(--sample-border)}.section-header h2{margin:0 0 8px;font-size:24px;font-weight:800}.section-header p{color:var(--text-muted);margin:0;font-size:15px;line-height:1.55}.section-body{margin-top:18px}.sheet-card-wrap{flex-direction:column;gap:8px;display:flex}.sheet-card,.recommended-card{text-align:left;background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:22px;padding:20px}.sheet-card.clickable{cursor:pointer}.sheet-card.clickable:hover,.recommended-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md)}.sheet-card-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.sheet-title-row{align-items:center;gap:8px;min-width:0;display:flex}.sheet-head-right{align-items:center;gap:8px;display:flex}.sheet-title{color:var(--text);word-break:keep-all;font-size:18px;font-weight:800;line-height:1.3}.sheet-sub{color:var(--text-muted);margin-top:6px;font-size:14px}.sheet-stats{color:var(--text-soft);flex-wrap:wrap;gap:8px;margin-top:12px;font-size:12px;font-weight:600;display:flex}.sheet-badge{color:#8c4b10;margin-top:10px;font-size:13px;font-weight:800}.difficulty-badge{color:var(--c500);background:#67d55f29;border-radius:999px;flex-shrink:0;padding:6px 11px;font-size:12px;font-weight:800}.icon-btn{cursor:pointer;background:0 0;border:none;border-radius:10px;padding:6px;font-size:16px;line-height:1}.icon-btn:hover{background:#0a910014}.icon-btn.danger:hover{background:#dc262614}.progress-block{margin-top:14px}.progress-meta{color:var(--text-soft);justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px;font-size:13px;font-weight:700;display:flex}.progress-track{background:#e5e7eb;border-radius:999px;width:100%;height:12px;overflow:hidden}.progress-fill{background:var(--progress-gradient-soft);border-radius:999px;height:100%;transition:width .25s}.control-btn,.card-action,.primary-btn,.secondary-btn,.speak-btn{border-radius:14px}.control-btn,.secondary-btn,.card-action{color:var(--text);background:#67d55f24;padding:10px 14px;font-weight:700}.control-btn:hover,.secondary-btn:hover,.card-action:hover{background:#67d55f38}.control-btn{box-shadow:none!important;border:none!important;outline:none!important}.primary-btn,.card-action.primary{background:var(--c500);color:#fff;padding:12px 18px;font-weight:800}.primary-btn:hover,.card-action.primary:hover{background:#087700}.card-action.added{color:var(--c400);background:#67d55f29}.card-action.danger{color:#b91c1c;background:#fee2e2}.edit-btn{background:#67d55f24;border-radius:12px;padding:10px 12px}.import-main-btn{background:var(--c500);color:#fff;border-radius:14px;padding:14px 20px;font-size:16px;font-weight:800}.import-main-btn:hover{background:#087700}.settings-overlay{background:var(--overlay);z-index:100;justify-content:flex-end;display:flex;position:fixed;inset:0}.settings-panel{background:var(--surface);flex-direction:column;gap:18px;width:min(360px,92vw);height:100%;padding:20px;display:flex;box-shadow:-10px 0 30px #00000024}.settings-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.settings-header h3{margin:0;font-size:20px}.settings-section{flex-direction:column;gap:10px;display:flex}.settings-panel .control-btn{background:#67d55f29}.settings-panel .control-btn:hover{background:#67d55f3d}.settings-subtitle{color:var(--text-muted);text-transform:uppercase;margin-bottom:8px;font-size:13px;font-weight:800}.settings-stats{flex-wrap:wrap;gap:12px;font-weight:700;display:flex}.repeat-wrap{align-items:center;gap:8px;font-weight:700;display:flex}.repeat-wrap select{border:1px solid var(--border-strong);background:var(--surface);border-radius:12px;padding:8px 10px}.account-block{margin-top:auto}.user-chip{color:var(--c500);background:#67d55f24;border-radius:999px;padding:8px 12px;font-size:14px;font-weight:700}.developer-toggle-row{justify-content:space-between;align-items:center;gap:12px;font-weight:700;display:flex}.developer-tools{margin-top:12px}.modal-overlay{z-index:120;background:#11182785;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.login-modal{background:var(--surface);border-radius:24px;flex-direction:column;gap:18px;width:min(460px,100%);padding:22px;display:flex;box-shadow:0 20px 60px #0000002e}.login-modal-header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.login-modal-header h3{margin:0 0 8px;font-size:24px;font-weight:800}.login-modal-header p{color:var(--text-muted);margin:0;line-height:1.5}.login-modal .control-btn{background:#67d55f29}.login-provider-list{flex-direction:column;gap:12px;display:flex}.google-login-btn{background:var(--c500);color:#fff;cursor:pointer;border:none;border-radius:18px;justify-content:center;align-items:center;gap:12px;padding:15px 18px;font-weight:800;display:flex}.google-login-btn:hover{background:#087700}.google-mark{width:28px;height:28px;color:var(--c500);background:#fff;border-radius:50%;justify-content:center;align-items:center;font-weight:800;display:inline-flex}.login-modal-footnote{color:var(--text-muted);font-size:13px}.manual-import-panel{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:22px;flex-direction:column;gap:20px;padding:22px;display:flex}.manual-import-form{flex-direction:column;gap:12px;display:flex}.manual-label{color:#374151;font-size:14px;font-weight:800}.manual-input,.manual-textarea{border:1px solid var(--border-strong);box-sizing:border-box;background:#fff;border-radius:16px;outline:none;width:100%;padding:14px 16px;font-size:15px}.manual-input:focus,.manual-textarea:focus,.repeat-wrap select:focus{border-color:var(--c300);box-shadow:0 0 0 3px #4fc94a29}.manual-textarea{resize:vertical;min-height:220px;line-height:1.6}.manual-import-help{color:var(--text-soft);background:#67d55f14;border-radius:16px;padding:14px 16px;font-size:14px}.manual-import-help ul{margin:8px 0 0;padding-left:18px}.manual-import-actions{flex-wrap:wrap;gap:12px;margin-top:6px;display:flex}.manual-import-actions .card-action.primary{background:var(--c500)}.manual-import-actions .card-action{background:#67d55f24}.manual-import-suboption{border-top:1px solid var(--border);color:var(--text-muted);flex-direction:column;gap:10px;padding-top:16px;display:flex}.page{flex:1;width:100%;max-width:960px;margin:0 auto;padding:20px 16px 28px}.reader-wrap{flex-direction:column;gap:18px;min-height:calc(100vh - 120px);display:flex}.reader-toolbar{flex-wrap:wrap;gap:10px;display:flex}.progress{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.sheet-name{font-size:18px;font-weight:800}.progress-count{color:var(--c500);font-size:18px;font-weight:800}.sentence-box{background:var(--surface);border:1px solid var(--border);min-height:240px;box-shadow:var(--shadow-sm);border-radius:22px;flex:1;justify-content:center;align-items:center;padding:24px;display:flex;position:relative}.sentence{text-align:center;word-break:keep-all;font-size:clamp(28px,5vw,48px);font-weight:800;line-height:1.35}.translation-box{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-sm);border-radius:18px;padding:18px}.translation{color:var(--text-soft);text-align:center;font-size:clamp(16px,2.6vw,22px);line-height:1.5}.favorite-star-btn{z-index:2;cursor:pointer;background:0 0;border:none;font-size:26px;line-height:1;position:absolute;top:14px;right:14px}.favorite-star-btn.active{color:#f59e0b}.speak-wrap{flex-direction:column;align-items:center;gap:12px;display:flex}.speak-btn{background:var(--c500);color:#fff;padding:16px 22px;font-size:18px;font-weight:800;position:relative;overflow:hidden}.speak-btn:hover{background:#087700}.speak-btn-label{z-index:2;position:relative}.speak-btn-cooldown-bar{z-index:1;transform-origin:0;will-change:transform;background:#ffffffb8;width:100%;height:4px;animation-name:cooldownShrink;animation-timing-function:linear;animation-fill-mode:forwards;position:absolute;bottom:0;left:0}@keyframes cooldownShrink{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.speak-btn.cooldown,.secondary-btn.cooldown{opacity:.75}.repeat-counter{color:var(--c500);font-size:34px;font-weight:800}.nav-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.exit-btn{width:100%}.voice-wrap select{border:1px solid var(--border-strong);background:var(--surface);border-radius:12px;max-width:220px;padding:10px 12px}.confirm-overlay{z-index:2000;background:#11182773;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.confirm-modal{background:var(--surface);border-radius:20px;width:min(420px,100%);padding:24px;box-shadow:0 20px 60px #0003}.confirm-modal h3{margin:0 0 8px;font-weight:800}.confirm-modal p{color:var(--text-muted);margin:0}.confirm-actions{justify-content:flex-end;gap:10px;margin-top:20px;display:flex}.status{text-align:center;padding:40px 16px;font-size:18px}.status.error{color:#b91c1c}.status-overlay{z-index:3000;pointer-events:none;background:#f7faf6b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.status-panel{flex-direction:column;gap:12px;width:min(320px,90%);display:flex}.status-bar-track{background:#e5e7eb;border-radius:999px;width:100%;height:10px;overflow:hidden}.status-bar-fill{background:var(--progress-gradient);border-radius:999px;width:40%;height:100%;animation:1s ease-in-out infinite statusLoadingSlide}.status-text{text-align:center;color:var(--text-soft);font-weight:800}@keyframes statusLoadingSlide{0%{transform:translate(-120%)}to{transform:translate(320%)}}.levelup-particles .particle{background:linear-gradient(to bottom, #fff, var(--c200), var(--c500));transform-origin:50% -110px;opacity:0;border-radius:999px;width:10px;height:22px;animation:1.15s ease-out forwards particleFly;position:absolute;top:50%;left:50%}@keyframes levelupFadeIn{0%{opacity:0}to{opacity:1}}@keyframes levelupFlash{0%{opacity:0}12%{opacity:1}to{opacity:0}}@keyframes levelupBeam{0%{opacity:0;transform:scaleY(.25)scaleX(.7)}20%{opacity:1}to{opacity:0;transform:scaleY(1.3)scaleX(1.05)}}@keyframes levelupBurst{0%{opacity:.95;transform:scale(.2)}to{opacity:0;transform:scale(1.7)}}@keyframes levelupRing{0%{opacity:.95;transform:scale(.35)}to{opacity:0;transform:scale(1.45)}}@keyframes levelupTextPop{0%{opacity:0;transform:scale(.55)translateY(20px)}45%{opacity:1;transform:scale(1.18)translateY(-4px)}70%{transform:scale(.96)}to{transform:scale(1)}}@keyframes particleFly{0%{opacity:0;transform-origin:50% -60px;margin-top:-10px}15%{opacity:1}to{opacity:0;margin-top:-180px}}@keyframes sparkleFly{0%{opacity:0;transform-origin:50% -80px;margin-top:-6px;transform:scale(.4)}20%{opacity:1}to{opacity:0;margin-top:-220px;transform:scale(1.2)}}@media (width<=900px){.topbar.simple-topbar{padding:16px 14px 14px}.topbar-logo{height:42px}.card-actions{grid-template-columns:1fr}.settings-panel{width:min(380px,94vw)}.voice-wrap{width:100%}.voice-wrap select{width:100%;max-width:none}.stats-group{grid-template-columns:1fr 1fr}.levelup-ring,.levelup-burst{width:220px;height:220px}.levelup-beam{width:130px;height:320px}}@media (width>=900px){.reader-wrap{min-height:auto}}.levelup-overlay{z-index:99999;pointer-events:none;background:radial-gradient(circle,#00000080,#00000059);justify-content:center;align-items:center;animation:.2s levelupFadeIn;display:flex;position:fixed;inset:0;overflow:hidden}.levelup-flash{background:radial-gradient(circle,#fffffff2,#ffffff26,#0000 70%);animation:.45s ease-out forwards levelupFlash;position:absolute;inset:0}.levelup-beam{filter:blur(18px);background:linear-gradient(#fff0,#fff0b4f2,#60a5fab3,#fff0);border-radius:999px;width:180px;height:420px;animation:1s ease-out forwards levelupBeam;position:absolute}.levelup-burst{background:radial-gradient(circle,#ffe066d9,#3b82f62e,#0000 70%);border-radius:50%;width:340px;height:340px;animation:1s ease-out forwards levelupBurst;position:absolute}.levelup-ring{border:6px solid #fffffff2;border-radius:50%;width:280px;height:280px;animation:1s ease-out forwards levelupRing;position:absolute;box-shadow:0 0 30px #3b82f6b3,0 0 60px #ffe06699,0 0 100px #ffffff59}.levelup-content{z-index:5;text-align:center;position:relative}.levelup-label{color:#ffe066;letter-spacing:2px;text-shadow:0 0 10px #fffffff2,0 0 18px #ffe066e6,0 0 32px #3b82f6cc,0 4px #b45309;font-size:72px;font-weight:900;animation:.65s ease-out forwards levelupTextPop}.levelup-level{color:#fff;text-shadow:0 0 10px #ffffffe6,0 0 20px #3b82f6d9,0 0 32px #3b82f6a6;margin-top:12px;font-size:42px;font-weight:900;animation:.72s ease-out forwards levelupTextPop}.levelup-particles,.levelup-sparkles{z-index:3;position:absolute;inset:0}.levelup-particles .particle{transform-origin:50% -110px;opacity:0;background:linear-gradient(#fff7ae,#60a5fa);border-radius:999px;width:10px;height:22px;animation:1.15s ease-out forwards particleFly;position:absolute;top:50%;left:50%}.levelup-sparkles .sparkle{transform-origin:50% -130px;clip-path:polygon(50% 0%,62% 38%,100% 50%,62% 62%,50% 100%,38% 62%,0% 50%,38% 38%);opacity:0;background:#fff7ae;width:12px;height:12px;animation:1.2s ease-out forwards sparkleFly;position:absolute;top:50%;left:50%;box-shadow:0 0 10px #ffffffe6,0 0 18px #ffe066cc}.levelup-particles .particle-1{transform:rotate(0)}.levelup-particles .particle-2{transform:rotate(20deg)}.levelup-particles .particle-3{transform:rotate(40deg)}.levelup-particles .particle-4{transform:rotate(60deg)}.levelup-particles .particle-5{transform:rotate(80deg)}.levelup-particles .particle-6{transform:rotate(100deg)}.levelup-particles .particle-7{transform:rotate(120deg)}.levelup-particles .particle-8{transform:rotate(140deg)}.levelup-particles .particle-9{transform:rotate(160deg)}.levelup-particles .particle-10{transform:rotate(180deg)}.levelup-particles .particle-11{transform:rotate(200deg)}.levelup-particles .particle-12{transform:rotate(220deg)}.levelup-particles .particle-13{transform:rotate(240deg)}.levelup-particles .particle-14{transform:rotate(260deg)}.levelup-particles .particle-15{transform:rotate(280deg)}.levelup-particles .particle-16{transform:rotate(300deg)}.levelup-particles .particle-17{transform:rotate(320deg)}.levelup-particles .particle-18{transform:rotate(340deg)}.levelup-sparkles .sparkle-1{transform:rotate(15deg)}.levelup-sparkles .sparkle-2{transform:rotate(45deg)}.levelup-sparkles .sparkle-3{transform:rotate(75deg)}.levelup-sparkles .sparkle-4{transform:rotate(105deg)}.levelup-sparkles .sparkle-5{transform:rotate(135deg)}.levelup-sparkles .sparkle-6{transform:rotate(165deg)}.levelup-sparkles .sparkle-7{transform:rotate(195deg)}.levelup-sparkles .sparkle-8{transform:rotate(225deg)}.levelup-sparkles .sparkle-9{transform:rotate(255deg)}.levelup-sparkles .sparkle-10{transform:rotate(285deg)}.levelup-sparkles .sparkle-11{transform:rotate(315deg)}.levelup-sparkles .sparkle-12{transform:rotate(345deg)}@media (width<=900px){.levelup-ring,.levelup-burst{width:220px;height:220px}.levelup-beam{width:130px;height:320px}}.reader-language-toolbar{box-sizing:border-box;width:100%;padding:12px 16px 0}.reader-language-toolbar-inner{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;max-width:980px;margin:0 auto;display:flex}.reader-language-field{color:#d9d9d9;align-items:center;gap:8px;font-size:14px;display:flex}.reader-language-field select{color:#fff;background:#ffffff0f;border:1px solid #ffffff24;border-radius:10px;outline:none;min-width:140px;height:38px;padding:0 12px}.reader-language-field select option{color:#111}.reader-page{padding-bottom:0}.reader-layout{min-height:calc(100vh - 100px);position:relative}.reader-scroll-content{flex-direction:column;gap:18px;padding-bottom:180px;display:flex}.reader-header-bar{grid-template-columns:auto 1fr auto;align-items:center;gap:12px;display:grid}.reader-back-btn{border-radius:14px;justify-content:center;align-items:center;min-width:52px;height:48px;padding:0 14px;font-size:20px;font-weight:800;display:inline-flex}.reader-header-title{min-width:0;color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:18px;font-weight:800;overflow:hidden}.reader-header-progress{color:var(--c500);white-space:nowrap;font-size:18px;font-weight:800}.reader-sentence-box{flex-direction:column;justify-content:flex-start;min-height:420px;padding:18px 24px 28px;display:flex}.sentence-box-top{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:18px;display:flex}.sentence-controls-left{flex-wrap:wrap;align-items:center;gap:10px;min-width:0;display:flex}.reader-inline-select{min-width:150px;height:44px;color:var(--text);background:#67d55f24;border-radius:14px;padding:0 42px 0 14px;font-weight:700;box-shadow:none!important;border:none!important;outline:none!important}.reader-inline-select:hover{background:#67d55f38}.reader-inline-favorite{flex-shrink:0;padding:4px 6px;font-size:40px;position:static;top:auto;right:auto}.sentence-box-body{flex:1;justify-content:center;align-items:center;display:flex}.reader-translation-box{flex-direction:column;gap:14px;padding:18px 18px 22px;display:flex}.translation-language-flags{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;display:flex}.language-flag-btn{background:#67d55f1a;border:1px solid #67d55f2e;border-radius:14px;justify-content:center;align-items:center;width:52px;height:52px;transition:transform .16s,background .16s,border-color .16s;display:inline-flex}.language-flag-btn:hover{background:#67d55f2e;border-color:#67d55f47}.language-flag-btn.active{background:#67d55f3d;border-color:#0a910047;transform:translateY(-1px)}.language-flag-emoji{font-size:26px;line-height:1}.reader-bottom-dock{width:min(960px,100% - 24px);padding:12px 0 calc(12px + env(safe-area-inset-bottom));-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:40;background:#f7faf6f5;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.reader-bottom-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.reader-bottom-actions .secondary-btn,.reader-bottom-actions .speak-btn{border-radius:18px;width:100%;min-height:64px;font-size:18px;font-weight:800}.reader-bottom-actions .secondary-btn{background:#67d55f24}.reader-bottom-actions .secondary-btn:hover{background:#67d55f38}.reader-repeat-counter{text-align:center;margin-top:12px;font-size:54px;line-height:1}@media (width>=901px){.reader-bottom-dock{border-top-left-radius:24px;border-top-right-radius:24px;padding-left:12px;padding-right:12px;box-shadow:0 -14px 34px #0f172a1a}}@media (width<=900px){.reader-scroll-content{padding-bottom:210px}.reader-header-bar{gap:10px}.reader-back-btn{min-width:48px;height:44px;font-size:18px}.reader-header-title,.reader-header-progress{font-size:17px}.reader-sentence-box{min-height:320px;padding:14px 16px 20px}.sentence-box-top{margin-bottom:14px}.sentence-controls-left{gap:8px}.sentence-controls-left .control-btn,.reader-inline-select{height:44px;padding-top:0;padding-bottom:0;font-size:14px}.reader-inline-select{min-width:132px}.reader-inline-favorite{font-size:34px}.reader-translation-box{gap:12px;padding:14px 14px 18px}.translation-language-flags{gap:8px}.language-flag-btn{border-radius:12px;width:46px;height:46px}.language-flag-emoji{font-size:23px}.reader-bottom-dock{width:calc(100% - 16px);padding:10px 0 calc(10px + env(safe-area-inset-bottom));border-top-left-radius:20px;border-top-right-radius:20px;padding-left:8px;padding-right:8px;box-shadow:0 -10px 28px #0f172a1a}.reader-bottom-actions{gap:10px}.reader-bottom-actions .secondary-btn,.reader-bottom-actions .speak-btn{border-radius:16px;min-height:56px;font-size:16px}.reader-repeat-counter{margin-top:10px;font-size:44px}}@media (width<=640px){.reader-scroll-content{padding-bottom:220px}.reader-header-title,.reader-header-progress{font-size:16px}.sentence-controls-left .control-btn,.reader-inline-select{font-size:13px}.reader-inline-select{min-width:118px}.reader-repeat-counter{font-size:38px}}
