:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans TC",sans-serif;color:#203640;background:#f4f6f7;--bg:#f4f6f7;--paper:#fff;--ink:#203640;--muted:#687b83;--line:#dce3e6;--accent:#245866;--read-size:21px;--read-line:1.9;color-scheme:light}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink)}body[data-theme=night]{--bg:#131d24;--paper:#1b2831;--ink:#dce3e8;--muted:#a0b0ba;--line:#344650;--accent:#a2ced1;color-scheme:dark}body[data-theme=care]{--bg:#edf0df;--paper:#f3f5e9;--ink:#354338;--muted:#687360;--line:#ccd4be;--accent:#476148;color-scheme:light}button,input,select{font:inherit}button{cursor:pointer;color:inherit;background:transparent;border:1px solid var(--line);border-radius:10px;min-height:44px;padding:10px 16px;transition:background .15s,transform .15s}button:hover{background:color-mix(in srgb,var(--accent) 9%,transparent)}button:active{transform:translateY(1px)}button:disabled{opacity:.4;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #bc833c;outline-offset:3px}input[type=search]{width:100%;padding:13px 16px;border:1px solid var(--line);border-radius:10px;background:var(--paper);color:var(--ink);min-width:0}select{border:0;background:transparent;color:var(--ink);padding:8px;font-size:14px}.primary{background:#245866;color:#fff;border-color:#245866}.primary:hover{background:#193f4b}.quiet,.icon,.text-button{border:0}.text-button{color:var(--accent)}.wide{width:100%}.shelf{max-width:1080px;margin:auto;padding:0 48px}.brand{height:104px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.wordmark{display:flex;gap:12px;align-items:center;color:var(--ink);text-decoration:none;font-size:23px;font-weight:700;letter-spacing:.12em}.seal{display:grid;place-items:center;width:40px;height:42px;border-radius:4px;background:#172d38;color:#fff;font-family:serif;font-size:25px;font-weight:400}.brand-caption{font-size:13px;font-weight:400;letter-spacing:.08em;border-left:1px solid var(--line);padding-left:16px;margin-left:5px;color:var(--muted)}.shelf-heading{display:flex;align-items:center;justify-content:space-between;margin:52px 0 28px;gap:14px}.eyebrow{font-size:14px;color:var(--muted);letter-spacing:.08em}h1{font-size:32px;font-weight:600;letter-spacing:.03em;margin:10px 0}h1 span{font-size:14px;font-weight:400;color:var(--muted);margin-left:18px;white-space:nowrap}.shelf-controls{display:flex;gap:22px;align-items:center;margin-bottom:32px}.shelf-controls input{max-width:420px}.encoding{font-size:14px;color:var(--muted);white-space:nowrap}.empty{min-height:410px;border:1px dashed #c5d0d4;border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:36px 20px;background:var(--paper)}.empty-symbol{font-family:serif;font-size:44px;color:var(--accent);border:1px solid var(--line);padding:7px 18px;border-radius:3px;transform:rotate(-5deg)}.empty h2{font-size:22px;font-weight:500;margin:25px 0 4px}.empty p{font-size:16px;line-height:1.9;color:var(--muted);margin-bottom:23px}.empty small{font-size:13px;color:var(--muted);margin-top:16px}.shelf-foot{display:flex;justify-content:space-between;font-size:13px;color:var(--muted);padding:28px 0 36px;gap:16px}.book-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.book{position:relative;min-width:0}.book-open{padding:0;width:100%;text-align:left;border:0}.cover{height:246px;background:#263e49;color:#edf3f3;padding:24px 26px 22px 32px;display:flex;flex-direction:column;border-radius:3px 10px 10px 3px;box-shadow:inset 6px 0 #ffffff10,inset 7px 0 #0003,0 8px 14px #13293615}.tone-1{background:#5c494a}.tone-2{background:#405647}.tone-3{background:#665940}.cover-format{font-size:12px;letter-spacing:.2em;opacity:.65}.cover-title{font-family:"Noto Serif TC","PMingLiU",serif;font-size:28px;line-height:1.5;letter-spacing:.1em;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-top:18px;overflow-wrap:anywhere}.cover-rule{width:28px;height:1px;background:#ffffff70;margin:auto 0 12px}.cover-author{font-size:13px;opacity:.7}.book-info h2{font-size:18px;margin:18px 32px 8px 0;overflow-wrap:anywhere}.book-info p{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--muted)}.progress-track{height:3px;background:var(--line);border-radius:3px;margin:16px 0 8px}.progress-track i{display:block;height:100%;background:var(--accent)}.book-progress{display:flex;justify-content:space-between;font-size:13px;color:var(--muted)}.book-menu{position:absolute;right:0;top:254px;border:0;padding:8px;min-width:36px}.reading{background:var(--paper)}.reader-top{position:fixed;top:0;left:0;right:0;z-index:2;display:flex;align-items:center;justify-content:space-between;background:var(--paper);border-bottom:1px solid var(--line);min-height:64px;padding:env(safe-area-inset-top) max(16px,calc((100vw - 960px)/2)) 0;gap:12px}.reader-top button{white-space:nowrap}.reader-book{font-size:14px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--muted)}.icon{font-size:25px}.reading-page{max-width:750px;margin:auto;padding:110px 32px 180px}.chapter-kicker{font-size:13px;letter-spacing:.12em;color:var(--muted)}.reading-page h1{font-family:"Noto Serif TC","PMingLiU",serif;font-size:30px;line-height:1.5;margin:16px 0 26px;overflow-wrap:anywhere}.chapter-line{width:40px;height:2px;background:var(--accent);margin-bottom:36px}#story{font-family:"Noto Serif TC","Songti TC","PMingLiU",serif;font-size:var(--read-size);line-height:var(--read-line);letter-spacing:.025em;overflow-wrap:anywhere}#story p{margin:0 0 1.15em;white-space:pre-wrap;text-indent:2em}.chapter-nav{display:flex;gap:16px;margin-top:48px}.chapter-nav button{flex:1}.chapter-end{text-align:center;font-size:14px;color:var(--muted);margin-top:25px}.reader-bottom{position:fixed;bottom:0;left:0;right:0;background:var(--paper);border-top:1px solid var(--line);padding:10px 16px calc(10px + env(safe-area-inset-bottom));z-index:2}#reader-progress{font-size:12px;color:var(--muted);text-align:center;margin-bottom:5px}.reader-bottom nav{max-width:540px;margin:auto;display:flex;justify-content:space-between}.reader-bottom button{border:0;font-size:22px;min-width:55px;padding:3px 12px}.reader-bottom span{display:block;font-size:12px;margin-top:3px}.zen .reader-top,.zen .reader-bottom{display:none}.zen-exit{display:none;position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));background:var(--paper);box-shadow:0 2px 12px #0002;font-size:14px;z-index:3}.zen .zen-exit{display:block}dialog{border:1px solid var(--line);border-radius:20px;max-width:560px;width:calc(100% - 32px);max-height:85dvh;padding:0;background:var(--paper);color:var(--ink);box-shadow:0 20px 80px #0003}dialog::backdrop{background:#0b1f2a70}dialog header{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--paper);z-index:1}dialog h2{font-size:20px;font-weight:600;margin:0}#close-panel{border:0}#panel-content{padding:22px}.rows{margin-top:16px}.row{display:flex;text-align:left;width:100%;align-items:center;gap:14px;border:0;border-radius:0;border-bottom:1px solid var(--line);padding:16px 4px;line-height:1.6;overflow-wrap:anywhere}.row span{min-width:0}.row small{display:block;color:var(--muted);font-size:13px}.row-number{font-size:13px;color:var(--muted);min-width:28px}.selected{color:var(--accent);font-weight:600}.mark-row{display:flex;align-items:center}.mark-row>button:last-child{border:0}.setting{margin:4px 0 28px}.setting label{display:flex;justify-content:space-between;margin-bottom:20px}.setting b{font-weight:400;color:var(--muted)}input[type=range]{width:100%;accent-color:var(--accent)}.themes{display:flex;gap:10px}.themes button{flex:1}.themes button[aria-pressed=true]{outline:2px solid #aa7c3b;outline-offset:2px}.theme-day{background:#fff;color:#203640}.theme-night{background:#1b2831;color:#dce3e8}.theme-care{background:#edf0df;color:#354338}.help{font-size:16px;line-height:1.85}.help h3{font-size:17px;margin-top:24px}.hint,.no-result{font-size:14px;color:var(--muted);line-height:1.8}.no-result{text-align:center;padding:24px 0}.status-pill{display:inline-block;background:var(--bg);border:1px solid var(--line);padding:5px 12px;border-radius:20px;font-size:14px}.danger{color:#b74343;border-color:#b74343}#search-form{display:flex;gap:8px}#search-form button{white-space:nowrap}#toast{position:fixed;bottom:calc(112px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);background:#172d38;color:white;padding:12px 20px;max-width:90vw;width:max-content;border-radius:10px;box-shadow:0 4px 20px #0002;font-size:14px;z-index:10;opacity:0;pointer-events:none;transition:opacity .2s}#toast.visible{opacity:1}@media(max-width:650px){.shelf{padding:0 22px}.brand{height:82px}.brand-caption{display:none}.brand .quiet{font-size:14px;padding-right:0}.shelf-heading{margin-top:34px}.shelf-heading h1{font-size:28px}.shelf-heading .primary{font-size:14px;padding:10px 12px}h1 span{margin-left:12px}.eyebrow{font-size:13px}.shelf-controls{flex-direction:column;align-items:stretch;gap:8px;margin-bottom:20px}.shelf-controls input{max-width:none}.encoding{align-self:flex-end}.empty{min-height:390px}.empty h2{font-size:20px}.empty small{font-size:12px}.shelf-foot{font-size:12px}.book-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 18px}.cover{height:220px;padding:19px 17px 18px 22px}.cover-title{font-size:23px}.book-info h2{font-size:16px}.book-info p{font-size:12px}.book-menu{top:226px}.reading-page{padding:100px 24px 160px}.reading-page h1{font-size:27px}.reader-top{padding-left:8px;padding-right:8px}.reader-top .quiet{font-size:14px}.reader-bottom{padding-left:8px;padding-right:8px}dialog{margin:auto 0 0;width:100%;max-width:none;border-radius:20px 20px 0 0;max-height:86dvh}#panel-content{padding-bottom:calc(24px + env(safe-area-inset-bottom))}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
