:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--glass:#ffffff9e;--glass-strong:#ffffffc7;--ink:#211b14;--muted:#2b20139e;--accent:#7661ff;--paper:#fff;--line:#44331d1a;--screen-edge:18px;--reader-dock-height:60px;--floating-panel-gap:14px;--reader-font-size:19px;--reader-line-height:1.75;--reader-background:#fff;--reader-text:#1f1b16;--reader-font-family:"Songti SC";font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,PingFang SC,sans-serif}*{box-sizing:border-box}html,body,#app{height:100%}html{touch-action:manipulation;-webkit-text-size-adjust:100%}body{color:var(--ink);background:#fff;margin:0;overflow:hidden}button,input,select{font:inherit}button{cursor:pointer;border:0}.app-shell{flex-direction:column;max-width:620px;height:100%;margin:0 auto;display:flex;position:relative;overflow:hidden}.screen-stage{will-change:transform;backface-visibility:hidden;flex:1;width:200%;min-height:0;transition:transform .38s cubic-bezier(.22,.72,.18,1);display:flex;transform:translate(0,0)}.app-shell.tab-shelf .screen-stage{transform:translate(-50%)}.screen{padding:calc(env(safe-area-inset-top) + 24px) 20px 116px;flex:1;overflow:auto}.screen-stage>.screen{flex:0 0 50%;width:50%;min-width:0;height:100%}.hero-title{letter-spacing:-.055em;margin:0 0 20px;font-size:38px;line-height:1.05}.toolbar{justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.glass,.book-card,.empty-card,.setting-sheet,.reader-topbar,.reader-bottombar,.listen-panel{background:var(--glass);-webkit-backdrop-filter:blur(24px)saturate(1.25);backdrop-filter:blur(24px)saturate(1.25);border:1px solid #ffffffb3;box-shadow:0 20px 60px #402d121f}.book-card{border-radius:34px;align-items:center;gap:18px;padding:18px;display:flex}.cover{color:#fff;background:linear-gradient(145deg,#31251b,#c29f67);border-radius:18px;align-items:flex-end;width:94px;height:138px;padding:14px;font-weight:700;display:flex;overflow:hidden;box-shadow:0 18px 35px #28180847}.book-cover{isolation:isolate;align-items:unset;color:#fff;background:radial-gradient(circle at 24% 12%,#ffffffb8,#0000 24%),radial-gradient(circle at 80% 20%,#9484ff8c,#0000 30%),radial-gradient(circle at 26% 86%,#d6a45b94,#0000 34%),linear-gradient(145deg,#2f251c 0%,#775739 45%,#b8945e 100%);border:1px solid #ffffff57;padding:0;display:block;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff5c,inset 10px 0 22px #ffffff14,inset -12px 0 22px #2d180a33,0 20px 44px #3d260d42}.book-cover:before{content:"";z-index:1;background:linear-gradient(90deg,#18110c3d,#ffffff14,#0000);width:16px;position:absolute;inset:0 auto 0 0}.book-cover:after{content:"";border-radius:inherit;opacity:.72;z-index:1;border:1px solid #ffffff38;position:absolute;inset:10px 9px}.reading-cover{border-radius:26px;width:112px;min-width:112px;height:154px}.book-cover.small{border-radius:20px;width:88px;height:126px;font-size:14px}.cover-glow{filter:blur(26px);z-index:0;background:#ffffff6b;position:absolute;inset:-24% -34% 40% 24%;transform:rotate(-18deg)}.cover-bookmark{z-index:3;background:linear-gradient(#ffffffeb,#eee1b48f);border-radius:0 0 999px 999px;width:14px;height:48px;position:absolute;top:0;right:15px;box-shadow:0 8px 18px #412c0e2e}.cover-logo{opacity:.34;filter:drop-shadow(0 12px 18px #00000038);z-index:1;width:72%;position:absolute;top:45%;left:50%;transform:translate(-50%,-50%)rotate(-7deg)}.cover-copy{z-index:4;text-shadow:0 2px 10px #0000003d;flex-direction:column;gap:4px;display:flex;position:absolute;bottom:13px;left:14px;right:14px}.cover-copy strong{letter-spacing:-.035em;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:15px;line-height:1.08;display:-webkit-box;overflow:hidden}.reading-cover .cover-copy strong{font-size:17px}.cover-kicker{color:#2d2012c7;letter-spacing:.08em;background:#ffffffb3;border-radius:999px;width:fit-content;padding:3px 7px;font-size:9px;font-weight:860}.cover-percent{color:#ffffffdb;background:#140f0c47;border-radius:999px;width:fit-content;padding:3px 7px;font-size:10px;font-weight:800}.cover.small{width:88px;height:126px;font-size:14px}.cover.tiny{border-radius:12px;width:46px;height:64px;padding:8px;font-size:10px}.book-meta{flex:1;min-width:0}.book-title{letter-spacing:-.02em;white-space:nowrap;text-overflow:ellipsis;font-size:20px;font-weight:760;overflow:hidden}.book-sub{color:var(--muted);margin-top:6px;font-size:13px}.progress{background:#281d121c;border-radius:99px;height:6px;margin-top:12px;overflow:hidden}.progress span{background:linear-gradient(90deg,#856dff,#c79962);width:0%;height:100%;display:block}.actions{flex-wrap:wrap;gap:10px;margin-top:14px;display:flex}.primary,.secondary,.chip,.icon-btn{border-radius:999px;padding:11px 15px;font-weight:680}.primary{color:#fff;background:#211b14}.secondary,.chip,.icon-btn{color:var(--ink);background:#ffffffad;border:1px solid #ffffffbf}.continue-listen{color:var(--ink);background:#ffffffeb;border:1px solid #fffffffa;transition:transform .16s,box-shadow .2s,background .2s;box-shadow:inset 0 1px #fff,0 8px 22px #231b141f}.continue-listen:active{background:#fff;transform:scale(.96);box-shadow:inset 0 2px 8px #231b1414,0 4px 12px #231b1414}.icon-btn{place-items:center;width:42px;height:42px;padding:0;display:grid}.section-title{letter-spacing:-.02em;margin:26px 0 12px;font-size:18px}.empty-card{text-align:left;border-radius:32px;padding:26px}.empty-card h2{letter-spacing:-.04em;margin:0 0 8px;font-size:24px}.empty-card p{color:var(--muted);margin:0 0 18px;line-height:1.7}.file-input{display:none}.grid{grid-template-columns:repeat(3,1fr);gap:18px 14px;display:grid}.grid-item{text-align:left;background:0 0;padding:0}.grid-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:8px;font-size:13px;font-weight:650;display:-webkit-box;overflow:hidden}.grid-sub{color:var(--muted);margin-top:3px;font-size:11px}.search{-webkit-backdrop-filter:blur(28px)saturate(1.45);backdrop-filter:blur(28px)saturate(1.45);background:radial-gradient(circle at 12% 0,#ffffffdb,#0000 36%),linear-gradient(#ffffff94,#ffffff4d);border:1px solid #ffffffc2;border-radius:999px;outline:none;width:100%;padding:14px 18px;display:block;box-shadow:inset 0 1px #ffffffdb,0 12px 34px #2424361a}.search::placeholder{color:#2b201373}.search+.empty-card{margin-top:20px}.shelf-add{color:#231b12b8;width:44px;min-width:44px;height:44px}.tabbar{left:var(--screen-edge);right:var(--screen-edge);bottom:var(--screen-edge);-webkit-backdrop-filter:blur(28px)saturate(1.45);backdrop-filter:blur(28px)saturate(1.45);isolation:isolate;background:#ffffff94;border:1px solid #ffffffc7;border-radius:999px;grid-template-columns:1fr 1fr;gap:8px;width:auto;padding:8px;display:grid;position:fixed;overflow:hidden;box-shadow:inset 0 1px #ffffffeb,0 16px 42px #24243624}.tabbar-indicator{z-index:0;will-change:transform;backface-visibility:hidden;background:#ffffffeb;border-radius:999px;width:calc(50% - 12px);height:calc(100% - 16px);transition:transform .38s cubic-bezier(.22,.72,.18,1),box-shadow .24s;position:absolute;top:8px;left:8px;transform:translate(0,0);box-shadow:inset 0 1px #fff,0 7px 18px #231b141a}.tabbar.tab-shelf .tabbar-indicator{transform:translate(calc(100% + 8px))}.tabbar button{z-index:1;color:#211b1494;background:0 0;border-radius:999px;padding:12px 14px;font-weight:700;transition:transform .16s,color .2s,background .2s,box-shadow .2s;position:relative}.tabbar button:active{transform:scale(.96)}.tabbar button.active{color:var(--ink);box-shadow:none;background:0 0}.reader{background:var(--reader-background);color:var(--reader-text);z-index:10;flex-direction:column;display:flex;position:fixed;inset:0}.reader.hidden{display:none}.reader-content{padding:calc(env(safe-area-inset-top) + 78px) 28px calc(env(safe-area-inset-bottom) + 108px);font-family:var(--reader-font-family), serif;font-size:var(--reader-font-size);line-height:var(--reader-line-height);-webkit-user-select:text;user-select:text;-webkit-touch-callout:none;flex:1;overflow:auto}.reader-content h2{letter-spacing:-.03em;margin:0 0 28px;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,sans-serif;font-size:22px}.paragraph{margin:0 0 1.1em}.sentence{-webkit-touch-callout:none;border-radius:8px;transition:background .2s,box-shadow .2s}.sentence.speaking{background:#7661ff29;box-shadow:0 0 0 4px #7661ff1f}.reader-topbar,.reader-bottombar{z-index:3;border-radius:26px;justify-content:space-between;align-items:center;gap:8px;padding:10px;display:flex;position:absolute;left:14px;right:14px}.reader-topbar{top:calc(env(safe-area-inset-top) + 12px)}.reader-bottombar{bottom:calc(env(safe-area-inset-bottom) + 14px)}.reader-title-small{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;padding:0 8px;font-size:13px;overflow:hidden}.reader-controls{gap:8px;display:flex}.setting-sheet,.listen-panel{left:var(--screen-edge);right:var(--screen-edge);bottom:calc(var(--screen-edge) + var(--reader-dock-height) + var(--floating-panel-gap));max-height:calc(100dvh - env(safe-area-inset-top) - 128px);z-index:4;border-radius:32px;padding:18px;position:absolute;overflow:auto}.setting-sheet.hidden,.listen-panel.hidden{display:none}.setting-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:10px 0;display:flex}.setting-row:last-child{border-bottom:0}.switch{cursor:pointer;align-items:center;width:52px;min-width:52px;height:32px;display:inline-flex;position:relative}.switch input{opacity:0;margin:0;position:absolute;inset:0}.switch-slider{background:#7878802e;border-radius:999px;transition:background .22s,box-shadow .22s;position:absolute;inset:0;box-shadow:inset 0 1px 4px #0000001f,inset 0 1px #fffc}.switch-slider:after{content:"";background:#fffffff5;border-radius:50%;width:26px;height:26px;transition:transform .24s cubic-bezier(.22,.72,.18,1);position:absolute;top:3px;left:3px;box-shadow:0 5px 14px #1c19142e,inset 0 1px #fff}.switch input:checked+.switch-slider{background:#22c55eb8;box-shadow:inset 0 1px 4px #00000014,0 8px 20px #22c55e2e}.switch input:checked+.switch-slider:after{transform:translate(20px)}.settings-group{margin-top:14px;padding-top:6px}.settings-caption{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;margin-bottom:4px;font-size:12px;font-weight:780}.segment{flex-wrap:wrap;gap:8px;display:flex}.swatch{border:2px solid #ffffffe6;border-radius:50%;width:34px;height:34px;box-shadow:0 6px 18px #0000001a}.listen-current{color:var(--muted);margin:10px 0;font-size:14px;line-height:1.6}.range{width:140px;accent-color:var(--accent)}.install-link{color:#4f46e5;margin-top:12px;font-weight:700;text-decoration:none;display:inline-block}.notice{color:#40376f;background:#7661ff1f;border-radius:18px;padding:12px 14px;font-size:13px;line-height:1.5}@media (width>=760px){.app-shell{max-width:760px}.screen{padding-left:42px;padding-right:42px}.reader-content{width:100%;max-width:720px;margin:0 auto}.tabbar{max-width:360px;margin-inline:auto}.reader-dock{max-width:584px;margin-inline:auto}}.glass-orb,.reader-dock,.dock-mini,.play-puck,.selection-toolbar,.voice-field,.sheet-close{-webkit-backdrop-filter:blur(28px)saturate(1.45);backdrop-filter:blur(28px)saturate(1.45)}.ios27-orb{background:radial-gradient(circle at 32% 20%,#fffffff0,#0000 28%),linear-gradient(145deg,#ffffffb8,#f4f4fa57);border:1px solid #ffffffb8;border-radius:50%;place-items:center;width:44px;min-width:44px;height:44px;padding:0;transition:transform .16s,background .2s,box-shadow .2s,opacity .2s;display:grid;box-shadow:inset 0 1px #ffffffeb,inset 0 -10px 22px #fff3,0 8px 24px #1e1e2d1a}.ios27-orb:active{transform:scale(.92);box-shadow:inset 0 2px 9px #46407824,0 4px 12px #1e1e2d14}.reader-back{top:calc(env(safe-area-inset-top) + 14px);left:calc(env(safe-area-inset-left) + 20px);z-index:5;width:44px;height:44px;color:var(--reader-text);opacity:.72;background:linear-gradient(145deg,#ffffff9e,#ffffff42);border:1px solid #ffffffad;border-radius:999px;place-items:center;padding:0;position:absolute;box-shadow:inset 0 1px #ffffffb8,inset 0 -14px 24px #ffffff1f,0 14px 42px #23190d24}.ios27-button-icon{fill:none;stroke:currentColor;stroke-width:2.15px;stroke-linecap:round;stroke-linejoin:round;pointer-events:none;width:22px;height:22px;display:block}.reader-copy{top:calc(env(safe-area-inset-top) + 14px);z-index:5;width:44px;height:44px;color:var(--reader-text);opacity:.72;background:linear-gradient(145deg,#ffffff9e,#ffffff42);border:1px solid #ffffffad;border-radius:999px;place-items:center;padding:0;position:absolute;right:20px;box-shadow:inset 0 1px #ffffffb8,inset 0 -14px 24px #ffffff1f,0 14px 42px #23190d24}.reader-toast{top:calc(env(safe-area-inset-top) + 68px);z-index:6;text-align:center;color:#1f1b16db;-webkit-backdrop-filter:blur(24px)saturate(1.35);backdrop-filter:blur(24px)saturate(1.35);opacity:0;pointer-events:none;background:#ffffffdb;border:1px solid #ffffffc7;border-radius:999px;min-width:104px;padding:10px 16px;font-size:14px;font-weight:760;transition:opacity .18s,transform .2s cubic-bezier(.22,.72,.18,1);position:absolute;left:50%;transform:translate(-50%,-8px)scale(.96);box-shadow:inset 0 1px #fffffff0,0 14px 34px #23190d24}.reader-toast.show{opacity:1;transform:translate(-50%)}.reader-back .ios27-button-icon,.reader-copy .ios27-button-icon{width:24px;height:24px}.reader-dock{left:var(--screen-edge);right:var(--screen-edge);bottom:var(--screen-edge);z-index:4;background:linear-gradient(#ffffffa3,#ffffff5c);border:1px solid #ffffffb8;border-radius:999px;justify-content:space-between;align-items:center;gap:8px;width:auto;padding:7px 9px;transition:transform .22s,opacity .2s,visibility .2s;display:flex;position:absolute;box-shadow:inset 0 1px #ffffffd1,0 18px 54px #2c1f0e2e,0 2px 16px #7661ff1a}.dock-mini{width:44px;min-width:44px;height:44px;color:color-mix(in srgb, var(--reader-text) 80%, transparent);background:radial-gradient(circle at 32% 22%,#ffffffd1,#0000 25%),linear-gradient(145deg,#ffffffa3,#ffffff42);border:1px solid #ffffffad;border-radius:999px;place-items:center;padding:0;line-height:1;display:grid;overflow:hidden;box-shadow:inset 0 1px #ffffffc7,inset 0 -14px 24px #ffffff21,0 10px 28px #1f160d1a}.dock-settings{color:color-mix(in srgb, var(--reader-text) 76%, #5947ff)}.dock-read{opacity:0;pointer-events:none;transition:transform .16s,opacity .16s,background .14s,box-shadow .14s;display:none;transform:scale(.82)}.reader-dock.has-selection [data-read-selection-dock]{opacity:1;pointer-events:auto;color:color-mix(in srgb, var(--reader-text) 76%, #5845ff);background:#eeebffd1;display:grid;transform:scale(1)}.reader-dock [data-read-selection-dock].pressing{background:#eeebfffa;transform:scale(.94);box-shadow:inset 0 2px 8px #5040b42e,0 0 0 3px #7661ff3d}.play-puck{isolation:isolate;width:44px;height:44px;color:color-mix(in srgb, var(--reader-text) 82%, #5b48ff);background:radial-gradient(circle at 32% 22%,#ffffffd1,#0000 25%),linear-gradient(145deg,#ffffffa8,#ffffff47);border:1px solid #ffffffb8;border-radius:999px;flex:0 0 44px;place-items:center;display:grid;position:relative;box-shadow:inset 0 1px #ffffffc2,inset 0 -14px 24px #ffffff1f,0 10px 28px #5643d229}.play-puck .play-glyph{z-index:2;filter:drop-shadow(0 2px 8px #160d5029);place-items:center;width:100%;height:100%;display:grid}.play-puck.playing{color:#fff;background:radial-gradient(circle at 32% 22%,#ffffffc7,#0000 23%),linear-gradient(145deg,#8d79ff 0%,#6550f0 56%,#4031cf 100%)}.play-ring{border-radius:inherit;opacity:0;z-index:-1;border:1px solid #7661ff33;position:absolute;inset:-5px}.play-puck.playing .play-ring{opacity:1;animation:1.8s ease-out infinite listenPulse}.play-puck.loading .ios27-button-icon{animation:1s linear infinite spinModel}@keyframes spinModel{to{transform:rotate(360deg)}}.model-status{font-size:12px}@keyframes listenPulse{0%{opacity:.45;transform:scale(.86)}to{opacity:0;transform:scale(1.35)}}.selection-toolbar{z-index:30;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:#261f19b8;border:1px solid #ffffff42;border-radius:999px;padding:6px;position:fixed;box-shadow:0 14px 38px #00000038,inset 0 1px #ffffff29}.selection-toolbar.hidden{display:none}.selection-toolbar button{color:#191611;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:#ffffffeb;border-radius:999px;padding:9px 13px;font-size:14px;font-weight:760;transition:transform .14s,background .14s,box-shadow .14s}.selection-toolbar button.pressing{background:#eeebfffa;transform:scale(.94);box-shadow:inset 0 2px 8px #5040b42e,0 0 0 3px #7661ff3d}.sentence.speaking{color:color-mix(in srgb, var(--reader-text) 88%, #5c45ff);text-underline-offset:.18em;background:linear-gradient(#7661ff1a,#7661ff30);-webkit-text-decoration:underline #7661ff6b;text-decoration:underline #7661ff6b;text-decoration-thickness:.14em;box-shadow:0 0 0 4px #7661ff1c,0 8px 28px #7661ff1f}.panel-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px;display:flex}.sheet-close{width:44px;min-width:44px;height:44px;color:color-mix(in srgb, var(--reader-text) 72%, transparent);background:radial-gradient(circle at 32% 22%,#ffffffd1,#0000 25%),linear-gradient(145deg,#ffffff9e,#ffffff42);border:1px solid #ffffff9e;border-radius:999px;place-items:center;padding:0;line-height:1;display:grid;box-shadow:inset 0 1px #ffffffb8,0 8px 22px #1f160d14}.panel-head strong{letter-spacing:-.03em;font-size:18px}.panel-head p,.voice-note{color:var(--muted);margin:4px 0 0;font-size:12px;line-height:1.55}.voice-field{background:#ffffff5c;border:1px solid #ffffff8c;border-radius:22px;gap:7px;margin:12px 0 4px;padding:12px;display:grid}.voice-field span{color:var(--muted);font-size:12px;font-weight:740}.voice-field select,.voice-field input{width:100%;color:var(--ink);background:0 0;border:0;outline:0;font-weight:700}.voice-field input::placeholder{color:#1f1b166b;font-weight:600}.panel-player{align-items:center;gap:12px;margin-top:12px;display:flex}.panel-play{flex-basis:44px;width:44px;height:44px}.secondary.soft{background:#ffffff6b}.empty-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.notice-actions{margin-top:12px;display:flex}.update-row{align-items:center}.update-row>span{color:var(--muted);flex:1;font-size:13px;line-height:1.45}.update-app-button{white-space:nowrap;background:#ffffffb8;justify-content:center;align-items:center;gap:8px;min-height:42px;transition:transform .16s,background .2s,box-shadow .2s,opacity .2s;display:inline-flex;box-shadow:inset 0 1px #ffffffd1,0 8px 22px #231b141a}.update-app-button .ios27-button-icon{width:18px;height:18px}.update-app-button:active,.update-app-button.pressing{background:#ffffffeb;transform:scale(.96)}.update-app-button:disabled{opacity:.72}.icon-soft{place-items:center;width:44px;height:44px;padding:0;display:grid}.reader-back,.reader-copy,.reader-dock{opacity:0;visibility:hidden;pointer-events:none}.reader-back,.reader-copy{transform:translateY(-6px)}.reader-dock{transform:translateY(8px)}.reader.reader-controls-visible .reader-back,.reader.reader-controls-visible .reader-copy,.reader.reader-controls-visible .reader-dock{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.reader.reader-controls-visible .reader-back,.reader.reader-controls-visible .reader-copy{opacity:.78}.reader.reader-controls-visible .reader-back:active,.reader.reader-controls-visible .reader-copy:active{transform:scale(.92)}@media (prefers-reduced-motion:reduce){.tabbar,.tabbar button,.reader-back,.reader-copy,.reader-dock,.ios27-orb{transition-duration:.01ms}.play-puck.playing .play-ring{animation:none}}@supports not ((-webkit-backdrop-filter:blur(20px)) or (backdrop-filter:blur(20px))){.glass-orb,.reader-dock,.dock-mini,.play-puck,.selection-toolbar,.voice-field,.sheet-close{background:#ffffffe0}}
