:root{--ink:#49311d;--muted:#80674e;--line:#b38b5d;--paper:#fbf6e9;--wood:url('assets/oak.svg');--accent:#9b5a2b}*{box-sizing:border-box}body{margin:0;background:#d9b17a var(--wood) repeat;color:var(--ink);font:14px -apple-system,BlinkMacSystemFont,'Helvetica Neue',Arial,sans-serif;min-height:100dvh}button,input,select{font:inherit}button,a,input,select,summary{touch-action:manipulation}button{cursor:pointer;border:1px solid #835f3b;background:linear-gradient(#ba8c5e,#93663c);color:#fff9ec;border-radius:6px;padding:10px 16px;text-shadow:0 -1px #69492899;box-shadow:inset 0 1px #fff5d666,0 1px 2px #4c301c44;font-weight:500}button:hover{filter:brightness(1.07)}button:active{background:linear-gradient(#8e623c,#b78b5a);box-shadow:inset 0 2px 4px #55321f55}button:disabled{opacity:.45;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #426d88;outline-offset:4px}[hidden]{display:none!important}header{position:relative;display:grid;grid-template-columns:1fr 1.3fr 1fr;align-items:center;gap:20px;min-height:142px;padding:25px 4.5%;border-top:1px solid #f8e2bb;border-bottom:1px solid #997044;background:linear-gradient(#ffefce2b,#b77f3a18),var(--wood);box-shadow:0 4px 9px #63421e44;z-index:1}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:#674629;text-shadow:0 1px #fff2d49e;font-size:9px;letter-spacing:1.8px;font-weight:700}.monogram{font:italic 35px Georgia,serif;letter-spacing:-3px;border-right:1px solid #a77e4b;padding-right:15px}.library-title{text-align:center}.library-title h1{font:36px/1.1 Georgia,'Times New Roman',serif;margin:0;text-shadow:0 1px 1px #fff5d6}.library-title p{font-size:11px;margin:9px 0 0;color:#80613f;text-shadow:0 1px #ffeac899}#account{display:flex;align-items:flex-end;flex-direction:column;gap:10px}.private,.private-email{font-size:10px;color:#765436}#account button{font-size:11px;padding:8px 13px}main{max-width:1500px;margin:auto;padding:0 4.5%}h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400}h2{font-size:27px;margin:0}.eyebrow{font-size:9px;font-weight:700;letter-spacing:1.8px;margin:0 0 10px;color:#8b6d4e}.gate{margin:30px 0 10px;padding:20px 24px;border:1px solid #ba9666;border-radius:5px;background:linear-gradient(#fff3daba,#ebd3aa99);box-shadow:inset 0 1px #fff8e6,0 2px 4px #6d421a17;display:flex;justify-content:space-between;align-items:center;gap:25px}.gate h2{font-size:23px}.gate p{font-size:12px;color:#7a5c3c;line-height:1.7;margin-bottom:0;max-width:620px}.gate button{flex-shrink:0}.section-top{display:flex;justify-content:space-between;align-items:center;padding:30px 0 20px}.section-top h2{font-size:24px;text-shadow:0 1px #fff0d2}#count{font:11px -apple-system,BlinkMacSystemFont,sans-serif;color:#80603e;margin-left:10px}.section-top>button{font-size:12px}.toolbar{display:flex;justify-content:space-between;gap:25px;align-items:center;margin-bottom:8px;padding:13px 0 20px;border-bottom:1px solid #ae875455;box-shadow:0 1px #fff0d255}nav{display:flex;border:1px solid #956c40;border-radius:6px;overflow:hidden;box-shadow:0 1px #ffe6bd88}.tab{border:0;border-right:1px solid #aa8255;border-radius:0;background:linear-gradient(#f1d7b1,#ddbc8b);color:#765431;font-size:11px;padding:8px 18px;text-shadow:0 1px #ffe6bc;box-shadow:inset 0 1px #fff1d9}.tab:last-child{border-right:0}.tab.active{background:linear-gradient(#8b633c,#a77b4c);color:#fff8e7;box-shadow:inset 0 2px 4px #57351766;text-shadow:0 -1px #4c321e}.tab:hover{filter:brightness(1.05)}input,select{border:1px solid #bc9e79;border-radius:5px;background:#fffaf1;color:var(--ink);padding:10px;max-width:100%;box-shadow:inset 0 1px 3px #7a583520}.toolbar input{border-radius:20px;background:#f8ecd6c4;width:240px;padding:8px 15px;font-size:11px}.shelf-row,.preview-shelf{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5%;align-items:end;min-height:325px;padding:30px 3% 43px;border-left:1px solid #b98f5855;border-right:1px solid #b98f5855;background:linear-gradient(0deg,#794b1920 0%,transparent 17%,transparent 92%,#885a2e17 100%);isolation:isolate}.shelf-row:after,.preview-shelf:after{content:'';position:absolute;z-index:-1;bottom:22px;left:-2%;right:-2%;height:18px;background:linear-gradient(#ffe8bd 0%,#e3be87 13%,#b2824d 80%,#926337 100%);border-top:1px solid #f5d49e;border-bottom:1px solid #805528;box-shadow:0 9px 12px #58371561,0 17px 19px #67401b25}.shelf-row:before,.preview-shelf:before{content:'';position:absolute;bottom:40px;left:-2%;right:-2%;height:14px;background:linear-gradient(0deg,#ad7b44,#f1cf9e);transform:perspective(80px) rotateX(13deg);transform-origin:bottom;z-index:-1}.book-card{border:0;background:none;box-shadow:none;text-shadow:none;border-radius:0;color:var(--ink);padding:0;text-align:center;position:relative;min-width:0;width:100%;max-width:190px;justify-self:center}.book-card:hover{filter:none}.book-card:active{background:none;box-shadow:none}.cover{position:relative;width:100%;aspect-ratio:.77;display:flex;flex-direction:column;justify-content:space-between;padding:24px 17px;border-radius:1px 3px 3px 1px;box-shadow:inset 4px 0 #ffffff1c,inset 7px 0 #00000014,2px 0 0 #f4e8cf,4px 0 0 #bfae8e,7px 6px 12px #55341466;overflow:hidden;transform-origin:bottom;transition:transform .2s}.cover:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#00000022 0%,#ffffff11 3%,#00000018 4%,transparent 7%,transparent 92%,#0000000b);border:1px solid #0000000c}.book-card:hover .cover{transform:translateY(-7px) rotate(-1deg)}.cover .author{font-size:8px;letter-spacing:1.1px;line-height:1.6}.cover-title{font:28px/1.05 Georgia,serif;overflow-wrap:anywhere}.cover.has-image{padding:0;background:#655c4f}.cover.has-image img{width:100%;height:100%;object-fit:cover;display:block;position:absolute;inset:0}.cover.has-image>.author,.cover.has-image>.cover-title{visibility:hidden}.book-info{position:absolute;top:100%;left:-15%;right:-15%;padding:10px 3px 0;font-size:10px;height:38px;color:#6b4d2d;text-shadow:0 1px #f9e0b5}.book-info strong{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-size:10px;font-weight:500}.formats{display:block;font-size:9px;margin-top:3px;color:#846442}.progress-line{position:absolute;left:10%;right:10%;top:-5px;height:3px;background:#00000022}.progress-line i{display:block;height:3px;background:#f3d190;box-shadow:0 0 2px #5f421d}.audio-badge{position:absolute;top:9px;right:9px;z-index:2;border-radius:50%;background:#fff9e9e8;color:#6f4e30;width:25px;height:25px;display:grid;place-items:center;box-shadow:0 1px 4px #0003;font-size:14px}.olive{background:#526647;color:#ece3b5}.rust{background:#9c4d38;color:#f7d8b4}.cream{background:#e9d9b0;color:#64523c}.blue{background:#486371;color:#efdfc0}.burgundy{background:#6e3c40;color:#edd3a9}.empty-shelf{min-height:315px}.empty{text-align:center;padding:55px 20px 25px;color:#7d5e3b}.empty h3{font-size:26px;margin:10px}.empty p{font-size:12px}.preview-shelf{grid-template-columns:repeat(5,minmax(0,1fr));padding-top:55px;min-height:350px}.sample{position:relative;aspect-ratio:.77;max-width:190px;width:100%;justify-self:center;padding:22px 16px;box-shadow:inset 5px 0 #ffffff22,4px 4px 0 #d6bf98,8px 7px 13px #633b2555;display:flex;flex-direction:column;justify-content:space-between;border-radius:2px 4px 4px 2px;font:27px/1.15 Georgia,serif}.sample small{font:7px -apple-system,BlinkMacSystemFont,sans-serif;letter-spacing:1.2px}.sample span{font-size:27px}.muted{font-size:11px;color:var(--muted);line-height:1.7}footer{max-width:1500px;margin:30px auto 0;padding:20px 4.5% 25px;display:flex;justify-content:space-between;color:#826240;font-size:9px;letter-spacing:1.3px;text-shadow:0 1px #f5dbb3}.sep{padding:0 10px}dialog{border:1px solid #866743;border-radius:9px;max-width:650px;width:calc(100% - 32px);padding:28px;background:#fbf6e9;color:var(--ink);box-shadow:0 16px 70px #2f1e1380,inset 0 1px #fff;max-height:94dvh}dialog::backdrop{background:#271e1580;backdrop-filter:blur(3px)}.dialog-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.dialog-head button{border:0;background:none;color:#705536;box-shadow:none;text-shadow:none;font-size:21px;padding:0 3px}.dialog-head .eyebrow{margin:0}dialog p{font-size:12px;line-height:1.7;color:#7b674f}label{display:block;font-size:11px;margin:16px 0}label input,label select{display:block;width:100%;margin-top:7px}.filebox{padding:20px;border:1px dashed #b99a70;border-radius:5px}.filebox input{border:0;background:none;padding:0;font-size:12px;box-shadow:none}.detail-actions{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0 16px}.detail-actions button{font-size:11px;padding:10px 12px}#editButton,#finishButton{background:linear-gradient(#fffaf0,#eee2cd);color:#7f6547;text-shadow:0 1px white;border-color:#c7b292}.story-heading{display:flex;gap:25px;align-items:center}.story-heading h2{font-size:30px;line-height:1.1}.story-heading p{margin:8px 0 0}.story-heading .eyebrow{font-size:8px;letter-spacing:1.5px}.detail-cover{width:108px;aspect-ratio:.77;flex-shrink:0;background:#526647;box-shadow:3px 4px 7px #53391c33;border:1px solid #5e4b3722;border-radius:1px 3px 3px 1px;overflow:hidden}.detail-cover img{width:100%;height:100%;object-fit:cover}.detail-cover:empty{display:none}#audioSection{padding:10px 0 0;border-top:1px solid #d8c9af}#audioSection>label{margin-top:0}#audioSection label select{font-size:11px}audio{width:100%;height:45px;margin:4px 0}.audio-options{display:flex;align-items:center;justify-content:space-between;gap:8px}.audio-options button{background:none;border:0;box-shadow:none;color:#7d6449;text-shadow:none;font-size:11px;padding:9px 0}.audio-options label{display:flex;gap:8px;align-items:center;margin:8px 0}.audio-options select{width:auto;padding:4px 5px;margin:0;font-size:11px}#notice{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);z-index:99;background:#493624;color:#fff7e6;max-width:90vw;border:1px solid #d9bd93;padding:14px 22px;font-size:12px;border-radius:7px;box-shadow:0 3px 15px #0003}#pairPreview{font-size:12px;line-height:1.7}progress{width:100%;margin-top:16px}#reader{max-width:1600px;width:98vw;height:96dvh;max-height:96dvh;padding:0;overflow:hidden;background:#efe5d2}.reader-bar{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:65px;padding:12px 20px;border-bottom:1px solid #b69267;background:linear-gradient(#f4dfbaaa,#d3ae7899),var(--wood);box-shadow:0 2px 4px #62432122;position:relative;z-index:1}.reader-bar button{padding:7px 14px;font-size:12px}.reader-bar strong{font:18px Georgia,serif;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:50%;text-shadow:0 1px #ffe8c5}.page-navigation{display:flex;align-items:center;gap:13px}#pageLabel{font-size:11px;white-space:nowrap}.reader-workspace{display:flex;height:calc(100% - 65px);min-height:0}.reading-pane{flex:1;min-width:0;display:flex;flex-direction:column;background:linear-gradient(90deg,#c2ad8e33,transparent 6%,transparent 94%,#baa48133),#ebe2d1}#readerContent{flex:1;min-height:0;overflow:auto;padding:25px;text-align:center;overscroll-behavior:contain}#readerContent canvas{max-width:100%;height:auto;box-shadow:0 3px 12px #59432a33;display:block;margin:0 auto}#readerContent iframe{background:#fffaf0}.listening-pane{width:310px;flex-shrink:0;border-left:1px solid #cab69a;background:linear-gradient(90deg,#dbc9ad55,transparent 10%),#f8f0e1;padding:30px 23px;overflow:auto}.listening-pane h2{font:26px/1.2 Georgia,serif;margin-bottom:15px;color:#604429}.reader-hint{font-size:11px;color:#91785b;line-height:1.8;margin-bottom:22px}.listening-pane>.eyebrow{font-size:8px;letter-spacing:1.8px}#listenFromPage{width:100%;margin:0 0 25px;font-size:12px}.listening-pane #audioSection{padding-top:20px}.listening-pane .audio-options{gap:5px}.listening-pane .audio-options button{font-size:10px}.listening-pane .audio-options label{font-size:10px;gap:4px}#readerSync{padding:12px 20px;border-top:1px solid #d3bfa0;background:#f7efdf;flex-shrink:0}#readerSyncStatus{font-size:11px;color:#8d6d45;margin:0}#passagePicker{font-size:11px;margin-top:8px}#passagePicker summary{cursor:pointer;font-weight:600;color:#795a37}#passagePicker>p{margin:8px 0;font-size:10px}#pageText{white-space:pre-wrap;user-select:text;max-height:130px;overflow:auto;background:#fffaf1;padding:12px;line-height:1.7;border:1px solid #e1d3bb;border-radius:4px}#pageText::selection{background:#ebcd85}#listenFromSelection{font-size:10px;margin-top:10px;padding:8px 12px}
@media(min-width:1500px){.shelf-row,.preview-shelf{min-height:355px}}@media(max-width:1000px){header{grid-template-columns:1fr 1.5fr 1fr;padding-left:4%;padding-right:4%}.brand>span:last-child{display:none}main{padding:0 4%}.shelf-row,.preview-shelf{min-height:290px;gap:6%;grid-template-columns:repeat(4,minmax(0,1fr));padding-top:25px}.shelf-row .book-card{max-width:165px}.cover-title{font-size:24px}.listening-pane{width:270px;padding:25px 18px}.listening-pane h2{font-size:24px}}
@media(max-width:700px){header{min-height:120px;padding:20px 5%;gap:12px}.library-title h1{font-size:28px}.library-title p{font-size:9px}.monogram{font-size:28px;padding-right:0;border:0}.private{display:none}.private-email{max-width:100px;text-overflow:ellipsis;overflow:hidden}#account button{font-size:10px;padding:8px}.shelf-row,.preview-shelf{grid-template-columns:repeat(3,minmax(0,1fr));min-height:290px;gap:9%;padding:30px 5% 43px}.toolbar{flex-wrap:wrap;gap:14px}.toolbar input{width:100%}nav{width:100%}.tab{flex:1;padding:9px 6px;font-size:10px}.section-top{padding-top:25px}.gate{padding:20px;align-items:flex-start;flex-direction:column;gap:15px}.gate h2{font-size:22px}.gate p{font-size:11px}.gate button{font-size:11px}.preview-shelf{padding-top:40px}.sample{font-size:22px;padding:18px 12px}.sample small{font-size:6px}.empty-shelf{min-height:260px}.reader-workspace{flex-direction:column}.reading-pane{min-height:0;flex:1}.listening-pane{width:100%;flex-shrink:0;max-height:205px;overflow:auto;padding:12px 17px;border-left:0;border-top:1px solid #c3ab86}.listening-pane>.eyebrow,.listening-pane>h2,.listening-pane>.reader-hint{display:none}.listening-pane #audioSection{padding-top:0;border-top:0}.listening-pane #audioSection>label{display:none}.listening-pane #audioSection audio{height:35px;margin:0}.listening-pane .audio-options{margin:0}.listening-pane #audioStatus{font-size:9px;margin:4px 0}.listening-pane #listenFromPage{margin:0 0 7px;padding:8px;font-size:11px}.reader-bar{padding:12px;gap:10px}.reader-bar strong{font-size:14px;max-width:35%}.reader-bar button{padding:8px 10px;font-size:11px}.page-navigation{gap:7px}#readerContent{padding:15px}#readerSync{padding:9px 12px}#readerSyncStatus{font-size:10px}#passagePicker{font-size:10px}.story-heading{gap:18px}.detail-cover{width:85px}.story-heading h2{font-size:26px}}
@media(max-width:420px){header{grid-template-columns:32px 1fr 88px;gap:10px}.library-title h1{font-size:24px}.library-title p{font-size:8px;line-height:1.5}.brand{font-size:0}.monogram{font-size:25px}.private-email{font-size:8px;max-width:86px}.shelf-row,.preview-shelf{grid-template-columns:repeat(2,minmax(0,1fr));gap:15%;min-height:300px;padding-left:8%;padding-right:8%}.sample:last-child{display:none}.cover-title{font-size:25px}.section-top h2{font-size:22px}#count{font-size:9px;margin-left:5px}.section-top>button{font-size:10px}.reader-bar strong{display:none}.page-navigation{margin-left:auto}dialog{padding:22px}footer{gap:15px;letter-spacing:.5px;font-size:8px}footer>span:last-child{max-width:120px;text-align:right}.listening-pane{max-height:195px}}@media(prefers-reduced-motion:reduce){.cover{transition:none}.book-card:hover .cover{transform:none}}
.book-info{padding-top:28px;color:#634321;text-shadow:0 1px #ffeac5}.book-info strong{font-size:11px}.formats{font-size:10px;color:#765634}.shelf-row{padding-bottom:50px}.shelf-row:after{bottom:29px}.shelf-row:before{bottom:47px}
/* Transparent PDF text stays aligned over the page; only the active word is tinted. */
.pdf-page{position:relative;margin:0 auto;text-align:left;flex-shrink:0}.pdf-page canvas{position:absolute;inset:0}.pdf-page .textLayer{z-index:1;user-select:text}.pdf-page .textLayer .read-word{position:static;display:inline;white-space:pre;transform:none;color:transparent;cursor:text;line-height:inherit}.pdf-page .textLayer .read-word.spoken{background:rgba(247,204,67,.55);border-radius:2px;box-shadow:0 0 0 2px rgba(224,168,29,.23)}.highlight-toggle{display:flex;align-items:center;gap:10px;margin:0 0 22px;cursor:pointer;padding:12px 0;border-top:1px solid #e1d0b6;color:#745333;font-size:11px}.highlight-toggle small{display:block;font-size:9px;color:#9a7f60;line-height:1.5;margin-top:4px}.highlight-toggle input{appearance:none;-webkit-appearance:none;position:relative;flex-shrink:0;width:34px;height:20px;padding:0;margin:0;border:1px solid #bba587;border-radius:20px;background:#d8cbb6;box-shadow:inset 0 1px 2px #6b4d2c33;cursor:pointer}.highlight-toggle input:after{content:'';position:absolute;left:2px;top:2px;width:14px;height:14px;border-radius:50%;background:linear-gradient(#fffdf4,#eee4d0);box-shadow:0 1px 3px #65492c66}.highlight-toggle input:checked{background:#9b7346;border-color:#876039}.highlight-toggle input:checked:after{left:16px}@media(max-width:700px){.listening-pane{max-height:255px}.highlight-toggle{margin:2px 0 8px;padding:5px 0;border:0;font-size:10px}.highlight-toggle small{font-size:8px;margin-top:2px}.highlight-toggle input{width:30px;height:18px}.highlight-toggle input:after{height:12px;width:12px}.highlight-toggle input:checked:after{left:14px}}
#shareButton{background:linear-gradient(#c59961,#9a6b37)}#sharePeople{border:0;margin:18px 0;padding:0;border-top:1px solid #e0cdb0}#sharePeople legend{font-size:11px;color:#8d7051;padding:0 8px 0 0}.share-person{display:flex;align-items:center;gap:12px;padding:12px 6px;border-bottom:1px solid #e5d7c2;margin:0;cursor:pointer;font-size:13px}.share-person input{width:16px;height:16px;display:inline-block;margin:0;box-shadow:none;accent-color:#977044}.person-initials{display:grid;place-items:center;width:31px;height:31px;background:#ead9bb;border:1px solid #d6bb94;border-radius:50%;font:11px Georgia,serif;color:#8b633a}.share-book-title{font:20px Georgia,serif!important;color:#634627!important}.share-subject{background:#f1e6d2;padding:12px 15px;border:1px solid #dfcdaf;border-radius:5px;margin:18px 0}.share-subject>span{font-size:9px;letter-spacing:1px;text-transform:uppercase;color:#a08561}.share-subject p{margin:5px 0 0;font-size:12px}.share-result{font-size:12px;color:#567047}.share-result.failed{color:#a0643f}#sendShare{margin-top:12px}nav{flex-shrink:0}@media(max-width:700px){.tab{font-size:9px;padding:9px 5px}}@media(max-width:420px){.toolbar nav{flex-wrap:wrap}.tab{flex:1 1 30%;border-bottom:1px solid #aa825555}}
.reader-bar{flex-wrap:wrap}.reader-bar strong{max-width:25%;font-size:16px}.reader-chapters{display:flex;align-items:center;gap:7px;min-width:0;margin-left:auto}.reader-chapters label,.page-jump label{font-size:10px;color:#80603c;white-space:nowrap}.reader-chapters select{font-size:11px;max-width:265px;width:24vw;padding:7px;background:#fff4dfd9}.page-jump{display:flex;align-items:center;gap:6px;margin:0}.page-jump input{width:57px;font-size:11px;padding:7px}.page-jump button{font-size:10px;padding:7px 10px}.page-navigation{gap:9px}.reader-workspace{height:calc(100% - 65px)}@media(max-width:1000px){.reader-bar strong{display:none}.reader-chapters select{width:29vw;max-width:260px}}@media(max-width:700px){.reader-bar{gap:8px;min-height:106px}.reader-chapters{order:3;width:100%;margin-left:0}.reader-chapters select{max-width:none;width:100%;flex:1}.reader-chapters label{width:41px}.page-jump{margin-left:auto}.page-jump label{display:none}.page-navigation{margin-left:0}.reader-workspace{height:calc(100% - 106px)}}

.audio-needed{display:block;font-size:10px;color:#684723;margin-top:5px;font-style:italic}.shelf-row{padding-bottom:64px}.shelf-row:after{bottom:43px}.shelf-row:before{bottom:61px}
