/* Shared web-player language, based on the observed Apple Music New, Search and
   playlist layouts. Audiobook artwork, reader and record remain our own. */
:root{--bg:#fff;--surface:#fff;--paper:#fff;--ink:#1d1d1f;--muted:#6e6e73;--line:#e5e5e7;--accent:#fa233b;--accent-soft:#fa233b0d;--glass:#fffffff0;--nav:260px;--shadow:0 12px 32px #00000012}
body{background:var(--bg)}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline-color:var(--accent)}
.sidebar{padding:72px 12px 22px;background:#fafafa;border-right:1px solid #e9e9eb;backdrop-filter:none;-webkit-backdrop-filter:none}.nav-button{min-height:40px;margin:0;padding:9px 14px;font-size:14px;font-weight:400;color:var(--ink);gap:12px;border-radius:7px}.nav-button svg{color:var(--accent);height:20px;width:20px}.nav-button.active{background:#e9e9eb;color:var(--ink);font-weight:500}.nav-button:hover{background:#efeff1}.sidebar-bottom .nav-button{color:var(--muted)}.sidebar-bottom .nav-button svg{color:var(--muted)}
main{padding-left:40px;padding-right:40px}.topbar{height:111px;border-bottom:1px solid var(--line);margin-bottom:26px}.topbar h1{font-size:32px;letter-spacing:-1px;font-weight:700}.topbar small{display:none}.toolbar{gap:10px}.primary,.secondary{border-radius:9px;min-height:38px;padding:9px 16px;box-shadow:none}.primary:hover,.primary-round:hover{background:#dc1730}.secondary{background:#f5f5f7}.search-field{border:0;background:#f0f0f2;border-radius:9px;height:38px}.search-field input{font-size:14px;width:min(30vw,320px)}
.section-label{font-size:20px;letter-spacing:-.4px;margin:24px 0 18px;font-weight:700}.books{gap:30px 22px;grid-template-columns:repeat(auto-fill,minmax(165px,1fr))}.cover-frame{border-radius:8px;background:#f0f0f2;box-shadow:0 2px 8px #00000012}.cover{background:#f0f0f2}.book-open:hover .cover-frame{transform:translateY(-2px);box-shadow:0 5px 14px #0002}.book-card h3{font-size:14px;line-height:1.35;font-weight:500;margin:10px 0 4px}.author{font-size:12px}.card-footer{font-size:11px;margin-top:9px}.completion{font-weight:400;color:var(--muted)}.book-progress{height:2px;margin-top:7px}.book-progress i,.mini-progress i{background:var(--accent)}.card-menu{background:#f7f7f9ed;color:var(--ink)}
.featured-row{display:flex;gap:24px;overflow:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:0 0 28px;border-bottom:1px solid var(--line)}.featured-row::-webkit-scrollbar{display:none}.continue-card{display:flex;flex-direction:column;align-items:stretch;flex:0 0 calc((100% - 48px)/3);min-width:240px;max-width:420px;gap:0;border:0;border-radius:0;padding:0;margin:0;background:none;box-shadow:none;overflow:visible;scroll-snap-align:start}.continue-card .details{padding:0;min-height:83px;text-align:left;display:block;flex:none}.eyebrow{font-size:10px;letter-spacing:.6px;margin:0 0 4px;font-weight:500}.continue-card h2{font-size:20px;font-weight:500;letter-spacing:-.5px;line-height:1.2;margin:0 0 5px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.continue-card p{font-size:13px}.featured-art{height:205px;padding:0;overflow:hidden;border-radius:9px;background:linear-gradient(135deg,#eceef6,#e4e7ee);box-shadow:0 2px 7px #0001}.featured-art .cover{width:100%;height:100%;object-fit:contain;background:transparent}.continue-card .primary-round{position:absolute;right:14px;bottom:14px;width:42px;height:42px;background:#ffffffeb;color:#1d1d1f;box-shadow:0 2px 10px #0002}.continue-card .primary-round:hover{background:white}
.player{left:calc(var(--nav) + 24px);right:24px;max-width:1260px;margin:0 auto;bottom:14px;border-radius:22px;border-color:#0000000a;box-shadow:0 8px 28px #00000016;background:var(--glass);column-gap:14px;padding:12px 18px 10px;grid-template-columns:minmax(145px,1fr) auto minmax(150px,1.25fr) auto;min-height:116px}.desktop-transport{gap:0}.desktop-transport .icon-button{width:31px;height:38px}.desktop-transport svg{height:19px;width:19px}.timeline-caption{display:block;font-size:10px;color:var(--muted);margin-bottom:2px}.player-progress{font-size:10px}.speed{background:#f1f1f3;border:0;border-radius:8px;color:var(--ink);min-height:34px;padding:7px 10px}.volume input{width:50px}.chapter-chip{background:transparent;border:0;border-radius:6px;font-size:10px;height:26px;padding:4px 8px}.chapter-chip.current{background:#00000008;color:var(--ink)}.chapter-chip:hover{background:#00000008}.chapter-number{font-variant-numeric:tabular-nums}.current-book strong{font-weight:500}.current-book small{font-size:11px}.record-button{width:46px;height:46px}.record-art{box-shadow:inset 0 0 0 1px #fff9,0 2px 7px #0002}.record-art.large{box-shadow:inset 0 0 0 2px #fff9,0 18px 38px #0000001c}.icon-button:hover{background:#00000006;color:var(--ink)}input[type=range]::-webkit-slider-runnable-track{height:3px}input[type=range]::-webkit-slider-thumb{width:12px;height:12px;border:0;transform:translateY(-4.5px)}
.reader-mode .topbar{border-bottom:1px solid var(--line);margin-bottom:0}.reader .toc{width:218px;padding-top:20px}.toc button{font-size:12px;border-radius:6px}.toc button.current,.toc button:hover{background:#00000006;color:var(--ink)}.book-text{max-width:830px;padding-top:28px}.book-detail{display:flex;align-items:center;gap:24px;margin:0 0 52px;padding:0 0 30px;border-bottom:1px solid var(--line);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.book-detail>.cover{width:123px;height:185px;flex-shrink:0;object-fit:contain;border-radius:6px;box-shadow:0 3px 12px #0001}.book-detail h1{font-size:25px;line-height:1.2;letter-spacing:-.6px;margin:0 0 8px;font-weight:700}.book-detail p{font-size:13px;line-height:1.5;white-space:normal;margin:0 0 6px}.book-detail .detail-author{color:var(--accent)}.book-detail .detail-duration{color:var(--muted);font-size:11px;margin-bottom:16px}.book-detail .primary{min-width:104px}.book-text mark{background:#c9dfff;color:inherit}.bookmarks-list{max-width:none}.bookmark-row{padding:14px 9px;border-radius:5px}.bookmark-row:nth-child(2n){background:#fafafa}.bookmark-row .cover{width:38px;height:57px}.mark-open strong{font-size:14px;font-weight:500}.mark-open small{font-size:12px}.chapter-row{border-radius:6px}.chapter-row:hover,.chapter-row.current{background:#00000005}.chapter-row.current{color:var(--accent)}
dialog{border:1px solid #0000000a;border-radius:16px;box-shadow:0 20px 80px #0003}.modal-header h2{font-size:19px;letter-spacing:-.35px}.modal-header{padding:14px 18px 8px}.modal-body{padding:14px 24px 26px}.setting-row{font-size:14px}.settings-card{border:0;background:#f5f5f7;border-radius:10px}.settings-row{font-size:14px;border-color:#dedee2}.settings-group h3{font-size:11px;letter-spacing:.4px}.sign-out{color:var(--accent);border-color:var(--line);border-radius:10px}.pair-card{border-radius:18px;box-shadow:0 8px 35px #0000000c}.pair-card h1{font-size:26px}.pair-card input,.field,.account-form input,.modal-body input:not([type=range]){background:#f5f5f7;border-radius:8px}.pair-card .primary{min-height:43px}.text-button{color:var(--accent)}
.now-playing{background:var(--surface)}.now-playing .modal-body{gap:11px}.now-playing .timeline-caption{display:none}.now-title h2{font-size:22px;font-weight:600}.now-title p{font-size:13px}.now-chapter>span{font-size:11px}.now-chapter strong{font-size:13px}.now-actions p{font-size:11px}.sheet-transport{display:flex;justify-content:space-between;gap:8px}.sheet-transport .icon-button{width:42px;height:42px}.sheet-transport .transport-status{font-size:11px;width:60px}.rate-choices{background:#f0f0f2;border-radius:8px;padding:3px;gap:0}.rate-choices button{background:none;border:0;border-radius:6px;min-height:35px;font-size:12px}.rate-choices button.selected{background:var(--surface);color:var(--ink);box-shadow:0 1px 4px #0002}.rate-control{border-radius:10px}.sheet-volume svg{color:var(--muted)}.now-playing .chapter-rail{border-top:1px solid var(--line);padding-top:10px}
@media(min-width:901px) and (max-width:1240px){:root{--nav:218px}.player{grid-template-columns:minmax(145px,1fr) auto minmax(140px,1fr);column-gap:10px}.player-options{grid-column:3;grid-row:2;justify-content:flex-end}.player>.chapter-rail{grid-column:1/3;grid-row:2}.player-options .volume{display:none}.books{grid-template-columns:repeat(auto-fill,minmax(145px,1fr))}.featured-art{height:180px}.continue-card{min-width:220px}}
@media(max-width:900px){:root{--nav:0px;--player:178px}main{padding-left:22px;padding-right:22px}.topbar{min-height:100px;height:auto;flex-wrap:nowrap;gap:12px;padding:28px 0 22px;margin-bottom:23px}.topbar h1{font-size:30px}.toolbar{width:auto;gap:4px}.toolbar .primary{min-height:36px;padding:8px 12px;font-size:12px}.toolbar .primary svg{height:15px;width:15px}body:has(.nav-button.active .icon use[href="#i-search"]) .topbar{flex-wrap:wrap}.toolbar:has(.search-field){width:100%}.search-field{width:100%;height:41px}.search-field input{width:100%;font-size:16px}.topbar:has(.search-field){flex-wrap:wrap}.section-label{font-size:20px;margin:24px 0 16px}.books{grid-template-columns:repeat(2,minmax(0,1fr));gap:27px 19px}.cover-frame{border-radius:7px}.book-card h3{font-size:13px}.card-footer{font-size:10px}.featured-row{gap:18px;margin-right:-22px;padding-right:22px;padding-bottom:24px}.continue-card{flex-basis:82%;min-width:0;max-width:340px}.continue-card .details{min-height:80px}.continue-card h2{font-size:21px}.continue-card p{font-size:13px}.continue-card .eyebrow{font-size:10px}.featured-art{height:217px}.continue-card .primary-round{width:43px;height:43px}.mobile-nav{left:0;right:0;bottom:0;padding:6px 10px calc(6px + env(safe-area-inset-bottom));height:calc(64px + env(safe-area-inset-bottom));border-radius:0;background:var(--glass);box-shadow:none;border:0;border-top:1px solid #0000000a}.mobile-nav .nav-button{width:20%;font-size:9px;border-radius:8px;gap:4px;color:var(--muted)}.mobile-nav .nav-button svg{color:inherit}.mobile-nav .nav-button.active{background:transparent;color:var(--accent)}.mobile-nav .nav-button svg{height:22px;width:22px}.player{left:10px;right:10px;bottom:calc(72px + env(safe-area-inset-bottom));min-height:71px;height:71px;border-radius:15px;display:flex;margin:0;padding:10px 12px 13px;box-shadow:0 3px 18px #0000000b}.record-button{width:44px;height:44px}.player-options,.desktop-transport,.player-timeline{display:none}.current-book strong{font-size:12px}.current-book small{font-size:10px}.mobile-play{color:var(--muted);background:transparent}.mini-progress{left:68px;bottom:6px;height:2px}.mini-progress i{background:var(--muted)}.has-player main{padding-bottom:calc(175px + env(safe-area-inset-bottom))}.reader-mode .topbar{flex-wrap:wrap;gap:6px;min-height:108px;padding-top:12px;padding-bottom:10px}.reader-mode .toolbar{width:100%}.reader-title h1{font-size:15px}.reader-mode main{padding-left:18px;padding-right:18px}.book-detail{gap:17px;margin:6px 0 36px;padding:15px 0 25px}.book-detail>.cover{width:99px;height:149px}.book-detail h1{font-size:21px}.book-detail p{font-size:12px}.book-detail .primary{min-height:35px}.book-text{padding:4px 3px 60px}.return-position{bottom:calc(157px + env(safe-area-inset-bottom))}.toast{bottom:calc(157px + env(safe-area-inset-bottom))}dialog{border-radius:0;border:0;background:var(--bg)}dialog::backdrop{background:var(--bg)}.modal-header{background:var(--bg);padding-top:calc(10px + env(safe-area-inset-top));min-height:65px}.modal-header h2{font-size:23px}.modal-header .icon-button{background:#f0f0f2}.modal-body{padding:18px 22px calc(28px + env(safe-area-inset-bottom))}.settings-card{background:#f5f5f7}.settings-row{min-height:56px}.now-playing{background:var(--surface)}.now-playing .modal-body{gap:12px;max-width:460px;padding-top:4px}.now-title h2{font-size:22px}.now-chapter strong{font-size:13px}.record-stage{height:clamp(158px,23dvh,215px)}.record-button.large{width:clamp(150px,21dvh,200px);height:clamp(150px,21dvh,200px)}.sheet-transport .transport-status{font-size:10px;width:50px}.sheet-transport .icon-button{width:42px;height:42px}.sheet-transport .previous-chapter svg,.sheet-transport .next-chapter svg{height:19px;width:19px}.now-playing .chapter-rail{margin-top:2px}.pair-card{padding:28px 23px}.chapter-row{min-height:58px}}
@media(max-width:900px) and (max-height:760px){.now-playing .modal-body{gap:8px}.record-stage{height:144px}.record-button.large{width:132px;height:132px}.now-title h2{font-size:20px}.now-playing .chapter-rail{display:none}}
@media(prefers-color-scheme:dark){:root{--bg:#1c1c1e;--surface:#242426;--paper:#1c1c1e;--ink:#f5f5f7;--muted:#aaaab0;--line:#39393b;--accent:#ff375f;--accent-soft:#ff375f18;--glass:#2b2b2deb}body{background:var(--bg)}.sidebar{background:#252527;border-color:#353537}.nav-button.active,.nav-button:hover{background:#3a3a3c;color:var(--ink)}.search-field,.speed,.rate-choices{background:#38383a}.cover,.cover-frame{background:#303032}.continue-card{background:transparent;border:0}.featured-art{background:linear-gradient(135deg,#34343b,#2b2b32)}.featured-art .cover{background:transparent}.primary,.primary-round{background:#fa233b;color:white}.card-menu{background:#303032ef;color:var(--ink)}.chapter-chip.current,.chapter-chip:hover,.toc button.current,.toc button:hover,.icon-button:hover{background:#ffffff0c;color:var(--ink)}.player{border-color:#ffffff0b}.now-playing{background:var(--surface)}.modal-header{background:var(--surface)}.settings-card,.pair-card input,.field,.account-form input,.modal-body input:not([type=range]){background:#303032}.settings-row{border-color:#444446}.bookmark-row:nth-child(2n){background:#242426}.book-text mark{background:#2962a8;color:inherit}.rate-choices button.selected{background:#5a5a5e;color:white}.mobile-nav{border-color:#ffffff0b}.mobile-nav .nav-button.active{background:transparent;color:var(--accent)}.modal-header .icon-button{background:#38383a}.toast{background:#ececee;color:#1d1d1f}}
@media(prefers-reduced-transparency:reduce){:root{--glass:var(--surface)}}@media(prefers-contrast:more){:root{--muted:CanvasText;--line:GrayText;--glass:var(--surface)}}
#player-cover{width:100%;height:100%}
