.reader-page{--read-header-height:calc(62px + env(safe-area-inset-top));--reading-size:14px}.reader-page .phone-shell{padding-bottom:var(--nav-height)}.read-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:var(--read-header-height);padding:calc(8px + env(safe-area-inset-top)) 18px 8px;border-bottom:1px solid var(--rule);background:#0b1018f5;backdrop-filter:blur(16px)}.read-header a{font-size:12px;min-width:44px}.read-brand{font-size:14px}.read-pad{padding:22px 18px}.read-intro{margin-bottom:22px}.read-intro h1{font-size:25px;line-height:1.4;margin:10px 0 8px;letter-spacing:-.03em}.read-intro p,.read-muted{font-size:12px;color:var(--muted);line-height:1.8}.read-input-wrap{position:relative}.read-input-wrap textarea{padding:13px 14px 42px;min-height:135px;max-height:330px}.read-input-wrap button{position:absolute;right:12px;bottom:2px;min-width:50px}.read-label{font-size:13px}.read-help{font-size:12px;line-height:1.8;color:var(--muted);margin:8px 0 20px}.read-help summary{min-height:44px;padding:12px 0;cursor:pointer}.read-section-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:25px}.read-section-heading h2{font-size:18px;margin:0}.read-history-item{display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:12px;align-items:center;border-bottom:1px solid var(--rule);padding:15px 0;color:var(--ink);text-decoration:none}.read-history-item img,.read-history-placeholder{width:54px;height:68px;border-radius:7px;object-fit:cover;background:var(--paper-soft)}.read-history-placeholder{display:grid;place-items:center;color:var(--soft);font-size:18px}.read-history-item strong{font-size:14px;line-height:1.65;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.read-history-item small{display:block;font-size:11px;color:var(--muted);line-height:1.6;margin-top:4px}.read-history-state{font-size:10px;color:var(--green);white-space:nowrap}.read-history-item[data-status=failed] .read-history-state,.read-history-item[data-status=partial] .read-history-state{color:var(--amber)}.read-doc-heading{padding-bottom:12px}.read-doc-kicker{display:flex;align-items:center;gap:10px;margin-bottom:12px}.read-source{font-size:10px;color:var(--green);background:var(--green-soft);border-radius:5px;padding:3px 7px}.read-doc-identity{display:flex;align-items:flex-start;gap:12px}.read-doc-identity>div{flex:1;min-width:0}.read-doc-identity img{width:76px;height:90px;object-fit:cover;border-radius:9px;display:block}.read-doc-identity h1{font-size:19px;line-height:1.55;letter-spacing:-.02em;font-weight:600;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.read-doc-identity h1.expanded{display:block}.read-doc-identity .quiet-button{font-size:11px;min-height:32px;padding:4px 0}.read-doc-identity .read-muted{font-size:11px;margin:4px 0 0}.read-source-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:8px}.read-source-actions a,.read-source-actions button{min-height:44px;font-size:11px;padding:8px 0;display:inline-flex;align-items:center}.read-source-actions button:first-of-type{margin-left:auto}.read-source-actions button[aria-pressed=true]{color:var(--amber)}#reader-extra-actions{padding:12px;border:1px solid var(--rule);border-radius:10px;background:var(--paper-soft)}#reader-extra-actions button{font-size:12px;margin-right:6px}.read-progress{margin:0 18px 14px;background:var(--paper-soft);border:1px solid var(--rule);border-color:#405969;padding:12px;border-radius:10px}.read-progress strong{font-size:13px}.read-progress p,.read-progress small{font-size:12px;color:var(--muted);line-height:1.7}.read-progress button{margin-top:10px;width:100%;font-size:12px}.read-tabs{position:sticky;top:var(--read-header-height);display:flex;gap:4px;z-index:8;padding:4px 18px;background:#0b1018f5;border-bottom:1px solid var(--rule);backdrop-filter:blur(16px)}.read-tabs button{flex:1;min-height:46px;background:transparent;border:0;border-bottom:2px solid transparent;border-radius:8px 8px 0 0;color:var(--muted);font-size:14px}.read-tabs button[aria-selected=true]{background:var(--wine-soft);color:var(--wine);border-bottom-color:var(--wine)}.read-options{display:flex;align-items:center;gap:12px;margin:10px 18px 0}.read-options p{font-size:11px;line-height:1.6;color:var(--soft);flex:1}.read-options button{font-size:12px;flex-shrink:0}#reader-selection-tools{display:flex;align-items:center;gap:12px;padding:0 18px;font-size:12px;color:var(--muted)}#reader-selection-tools button{font-size:12px}#reader-document{padding:0 22px 110px;min-height:240px;outline:none}.read-paragraph{border-bottom:1px solid var(--rule);padding:16px 0;content-visibility:auto;contain-intrinsic-size:auto 240px}.read-paragraph p{font-size:var(--reading-size);line-height:1.95;white-space:pre-wrap;overflow-wrap:anywhere;margin:2px 0 5px}.read-paragraph-head{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:40px}.read-paragraph-head>span,.read-paragraph-head label{font-size:11px;color:var(--soft);font-variant-numeric:tabular-nums}.read-paragraph-head label{display:flex;align-items:center;gap:10px;margin:0;min-height:40px}.read-paragraph-head button{font-size:11px;min-height:40px;padding:6px 0 6px 8px}.read-paragraph h3{font-size:17px;color:var(--ink);margin:10px 0}.read-paragraph:has(input:checked){border-color:var(--wine)}.read-empty{font-size:14px;color:var(--muted);line-height:1.9;padding:30px 0}.read-bottom{position:fixed;left:50%;transform:translateX(-50%);bottom:var(--nav-height);z-index:11;width:100%;max-width:430px;display:grid;grid-template-columns:1fr 1fr;gap:10px;background:#101925f5;backdrop-filter:blur(16px);padding:10px 18px;border-top:1px solid var(--rule)}.read-bottom button{min-height:46px}.read-footer{font-size:11px;color:var(--soft);padding:20px 18px}body.modal-open .read-bottom{visibility:hidden}.read-export-shell{padding:18px;overflow:auto;max-height:calc(var(--dialog-visible-height,100dvh) - 16px);overscroll-behavior:contain}.read-export-shell>header{display:flex;align-items:center;justify-content:space-between;gap:10px;position:sticky;top:-18px;background:var(--paper-soft);z-index:2;padding:8px 0}.read-export-shell h2{font-size:20px;margin:0}.read-export-shell p{font-size:12px;line-height:1.8;color:var(--muted)}.export-format{display:flex;gap:8px;margin:16px 0}.export-format button{flex:1;font-size:12px}.read-check{display:flex;align-items:center;gap:10px;min-height:44px}.read-export-image{margin:20px 0}.read-export-image img{width:100%;height:auto;display:block;border:1px solid var(--rule)}.read-export-image a{width:100%;margin-bottom:8px}.batch-item{padding:12px 0;border-bottom:1px solid var(--rule);font-size:12px}.batch-item strong{display:block;font-size:13px}.batch-item p{color:var(--muted);overflow-wrap:anywhere}.batch-item[data-state=error]{color:var(--danger)}@media(max-width:359px){.read-pad{padding-inline:14px}#reader-document{padding-inline:17px}.read-doc-identity img{width:62px;height:80px}.read-history-item{gap:9px;grid-template-columns:44px minmax(0,1fr) auto}.read-history-item img,.read-history-placeholder{width:44px;height:58px}}@media(prefers-reduced-motion:reduce){.read-paragraph{content-visibility:visible}}
/* One bottom tool strip on a reading page, stable tabs, explicit font choice. */
html:has(body.reader-page){scroll-padding-block-start:calc(62px + env(safe-area-inset-top))}
#reader-document{min-height:calc(100dvh - 180px)}
.read-paragraph{content-visibility:visible;contain-intrinsic-size:none}
#reader-history{overflow-anchor:none}
body.reading-detail .phone-shell{padding-bottom:0}
body.reading-detail .read-bottom{bottom:0;padding-bottom:calc(10px + env(safe-area-inset-bottom))}
body.reading-detail #reader-main-nav{display:none!important}
#reader-detail{overflow-anchor:none}
#reader-mode-tabs{margin:0 0 20px!important}
#reader-mode-tabs button{min-height:46px}
#reader-library .read-section-heading{margin-top:0}
#reader-library{min-height:calc(100dvh - 230px)}
.read-tabs{gap:0}
.reader-font-control{display:flex;align-items:center;gap:3px;margin:0 0 0 6px!important;flex:0 0 76px;font-size:12px}
.reader-font-control select{margin:0;width:47px;min-height:44px;padding:0 2px;font-size:16px}
.read-tabs button{min-width:0;font-size:14px}
.read-history-item strong{font-size:16px}
.read-history-item small,.read-history-state,.read-doc-identity .read-muted,.read-source,.read-doc-kicker .eyebrow{font-size:13px}
.read-source-actions a,.read-source-actions button,.read-doc-identity .quiet-button,.read-paragraph-head button{font-size:13px;min-width:44px;min-height:44px}
.read-paragraph-head label,.read-options p{font-size:13px}
.read-options{gap:8px}
.read-options button{min-width:44px;font-size:14px}
.read-bottom button{min-height:48px}
@media(max-width:359px){.read-tabs{padding-inline:14px}.reader-font-control{margin-left:2px!important}.read-tabs button{font-size:13px}}
/* Reading-first refinement: text before tools, secondary choices on demand. */
.read-intro{margin-bottom:16px}.read-intro h1{font-size:23px;margin-top:0}.read-intro p{font-size:13px}
.read-doc-heading{padding-top:16px;padding-bottom:6px}.read-doc-kicker{margin-bottom:8px}
.read-doc-identity img{width:60px;height:76px;object-fit:cover}
.read-doc-identity h1{display:block;overflow:visible;font-size:18px;line-height:1.5}
#reader-title-toggle{display:flex;align-items:flex-start;gap:6px;min-height:44px;width:100%;padding:0;background:none;border:0;color:var(--ink);font:inherit;text-align:left}
#reader-doc-title-text{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.expanded #reader-doc-title-text{display:block}.title-chevron{flex:none;font-size:16px;color:var(--soft);line-height:27px}
.title-chevron{width:16px;transform:rotate(90deg)}.title-chevron .reicon{width:16px;height:24px}
[aria-expanded=true]>.title-chevron{transform:rotate(-90deg)}
.read-doc-identity .read-muted{font-size:12px;line-height:1.6;margin-top:5px}
.read-source-actions{gap:18px;margin-top:2px}.read-source-actions button:first-of-type{margin-left:auto}
.read-options{margin-top:4px;min-height:44px}.read-options p{font-size:12px;margin-block:6px}
#reader-document{padding-inline:20px}.read-paragraph{padding:12px 0 8px;border-bottom:0}
.read-paragraph p{line-height:1.9;margin:0}.read-paragraph h3{font-size:calc(var(--reading-size) + 2px);line-height:1.65;margin:0 0 8px}
.read-paragraph-head{min-height:44px;margin-top:5px}.read-paragraph-head label{min-height:44px;min-width:44px;font-size:12px}
.read-paragraph-head button{color:var(--muted);font-size:12px}.read-paragraph:has(input:checked){background:var(--wine-soft);box-shadow:0 0 0 8px var(--wine-soft);border-radius:4px}
.library-heading-actions{display:flex;align-items:center;gap:14px}.library-heading-actions .quiet-button{min-width:44px}
#reader-library-options{position:relative}.library-menu{position:absolute;right:0;top:48px;z-index:4;min-width:140px;padding:6px 12px;border:1px solid var(--strong);border-radius:10px;background:var(--paper-soft);box-shadow:0 8px 24px #0005}
.library-menu button{width:100%}.library-menu [aria-pressed=true]{background:var(--wine-soft)}
#reader-library-options summary{list-style:none;cursor:pointer}#reader-library-options summary::-webkit-details-marker{display:none}
.read-history-item{grid-template-columns:48px minmax(0,1fr);gap:12px;position:relative}.read-history-item img,.read-history-placeholder{width:48px;height:62px}
.read-history-item strong{font-size:15px;line-height:1.6}.read-history-item small{font-size:12px}.read-history-state{grid-column:2;font-size:12px;margin-top:-8px}.read-history-item[data-status=ready] .read-history-state{display:none}
.save-options{border-top:1px solid var(--rule);margin-top:12px}.save-options summary{min-height:48px;padding:12px 0;font-size:13px;cursor:pointer;line-height:1.7}
#reader-image-options summary{display:flex;justify-content:space-between;gap:10px}#reader-export-option-label{color:var(--muted)}
.export-format{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;margin:0 0 14px}.export-format label{margin:0}.export-format select{font-size:14px}
#reader-cover-download{font-size:13px}.read-export-shell>header{padding-bottom:12px}#reader-export-scope{color:var(--ink);font-size:13px}
@media(max-width:359px){#reader-document{padding-inline:16px}.read-source-actions{gap:14px}}
/* Series stays inside reading: a deliberate preview, then one readable document. */
.reader-compose-modes{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;margin-bottom:18px;border:1px solid var(--rule);border-radius:12px;background:var(--paper-soft)}
.reader-compose-modes button{min-height:44px;min-width:0;border:0;background:transparent;color:var(--muted);font-size:14px;border-radius:8px}
.reader-compose-modes button[aria-pressed=true]{background:var(--wine-soft);color:var(--wine)}
.reader-series{margin:0 18px 18px;min-width:0}
.reader-series h2{font-size:17px;margin:12px 0 6px}.reader-series label{font-size:13px}.reader-series .read-muted{font-size:13px}
.series-select-heading{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:13px}.series-select-heading>span{margin-right:auto;font-variant-numeric:tabular-nums}.series-select-heading button{min-width:44px;font-size:13px}
.series-warnings{color:var(--amber);font-size:13px;line-height:1.75;white-space:pre-wrap;overflow-wrap:anywhere;padding:10px 12px;border-left:2px solid var(--amber);background:var(--amber-soft);border-radius:0 8px 8px 0;margin:8px 0 12px}
.series-items{list-style:none;margin:0;padding:0;overflow-anchor:none}.series-items>li{border-bottom:1px solid var(--rule);padding:10px 0;min-width:0}
.series-preview-item>label{display:flex;gap:10px;align-items:flex-start;min-height:44px;padding:3px 0;margin:0;cursor:pointer}.series-preview-item input{flex:none;width:20px;height:20px;margin:3px 0;accent-color:var(--wine)}.series-preview-item label>span{min-width:0;flex:1}
.series-item-title{display:block;font-size:14px;line-height:1.7;font-weight:600;overflow-wrap:anywhere}.series-item-source{display:block;margin-top:3px;color:var(--muted);font-size:12px;overflow-wrap:anywhere}
.series-order-actions{display:flex;justify-content:flex-end;gap:12px}.series-order-actions button{min-width:56px;min-height:44px;font-size:13px}
.series-confirm{margin-top:16px;padding-top:2px}.series-confirm .error{margin:8px 0}.series-confirm>button{margin-bottom:8px}
#reader-series-contents{border:1px solid var(--rule);border-radius:12px;padding:0 12px;background:var(--paper-soft)}
#reader-series-contents>summary{min-height:48px;display:flex;justify-content:space-between;gap:12px;align-items:center;cursor:pointer;font-size:14px;color:var(--wine);list-style:none}
#reader-series-contents>summary::-webkit-details-marker{display:none}.series-toggle-icon{flex:none;transform:rotate(90deg)}.series-toggle-icon .reicon{width:18px;height:18px}#reader-series-contents[open] .series-toggle-icon{transform:rotate(-90deg)}
#reader-series-progress-count{font-size:12px;color:var(--muted);margin-left:auto;font-variant-numeric:tabular-nums}
.series-chapter-button{display:flex;align-items:flex-start;gap:10px;width:100%;min-height:44px;padding:4px 0;border:0;background:none;color:var(--ink);text-align:left}
.series-chapter-button:disabled{opacity:1;cursor:default}.series-chapter-number{font-size:12px;color:var(--wine);font-variant-numeric:tabular-nums;line-height:24px}.series-chapter-identity{flex:1;min-width:0}.series-chapter-identity strong{display:block;font-size:14px;font-weight:500;line-height:1.7;overflow-wrap:anywhere}.series-chapter-identity small{display:block;font-size:12px;color:var(--muted);line-height:1.7;margin-top:3px}
.series-items [data-status=ready] .series-chapter-identity small{color:var(--green)}.series-items [data-status=failed] .series-chapter-identity small,.series-items [data-status=partial] .series-chapter-identity small{color:var(--amber)}
.series-item-detail{font-size:12px;color:var(--muted);line-height:1.7;overflow-wrap:anywhere;margin:4px 0}
.series-chapter-actions{display:flex;justify-content:flex-end;gap:18px}.series-chapter-actions a{display:inline-flex;align-items:center;min-height:44px;font-size:13px}
.series-items>li:last-child{border-bottom:0}.read-paragraph:focus-visible{outline:2px solid var(--wine);outline-offset:5px;border-radius:4px}
.series-more{margin-top:10px}.series-more>summary{min-height:44px;padding-block:10px;font-size:13px;color:var(--muted);cursor:pointer}.series-more>button{width:100%}.reader-compose-modes button:focus-visible,.series-chapter-button:focus-visible{outline:2px solid var(--wine);outline-offset:2px}
.read-chapter-heading{padding:18px 0 0}.read-chapter-heading h3{margin-bottom:0}.read-chapter-heading .read-paragraph-head{display:none}#reader-document.selecting-paragraphs .read-chapter-heading .read-paragraph-head{display:flex}
#reader-series-dismiss{width:100%;margin:4px 0 10px}.series-items>li[data-new=true] .series-item-source{color:var(--green)}
@media(hover:hover) and (pointer:fine){.reader-compose-modes button:hover,.series-chapter-button:not(:disabled):hover{background:var(--wine-soft);color:var(--wine)}}
@media(max-width:359px){.reader-series{margin-inline:14px}.series-select-heading{gap:8px}.series-order-actions{gap:8px}#reader-series-contents{padding-inline:10px}#reader-series-progress-count{font-size:11px}}
.reader-queue-feedback{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-height:76px;margin:12px 0 4px;padding:10px 12px;border:1px solid var(--rule);border-radius:12px;background:var(--paper-soft)}
.reader-queue-feedback strong{display:block;font-size:13px;font-weight:600;line-height:1.7;color:var(--ink);overflow-wrap:anywhere}.reader-queue-feedback small{display:block;font-size:12px;line-height:1.7;color:var(--muted);font-variant-numeric:tabular-nums}.reader-queue-feedback .quiet-button{display:inline-flex;align-items:center;justify-content:center;min-width:60px;min-height:44px;padding-inline:8px;white-space:nowrap;font-size:13px}
