:root{color-scheme:dark;--bg:#090909;--panel:#121212;--paper:#e8e5de;--muted:#aaa59b;--line:#33312d;--accent:#ddc395}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--paper);font:16px/1.65 system-ui,sans-serif}a{color:inherit;text-underline-offset:5px}button,input,textarea,select{font:inherit}button,select,input,textarea{border:1px solid var(--line);background:var(--panel);color:var(--paper);border-radius:6px;padding:10px 14px}button{cursor:pointer}button:disabled{opacity:.4;cursor:default}button:hover:not(:disabled),a:hover{color:var(--accent)}button.primary,.topbar button.active{background:var(--paper);color:var(--bg)}button.danger{color:#f0a5a5}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}[hidden]{display:none!important}.topbar{position:sticky;top:0;z-index:5;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:16px 6vw;border-bottom:1px solid var(--line);background:#090909f5}.brand{text-decoration:none;font-size:14px;line-height:1.3;letter-spacing:.1em}.brand span{color:var(--muted)}.topbar nav{display:flex;gap:8px}.topbar select{max-width:155px}.hero{padding:90px 9vw 80px;border-bottom:1px solid var(--line)}.eyebrow{font-size:13px;color:var(--accent);letter-spacing:.14em}.hero h1{font-size:clamp(42px,7.8vw,104px);line-height:1.04;font-weight:400;letter-spacing:-.045em;margin:26px 0}.hero h1 span{color:#86837c}.subtitle{font-family:Georgia,serif;font-size:clamp(20px,2.4vw,28px);max-width:760px;color:var(--muted)}.book-layout{display:grid;grid-template-columns:260px minmax(0,800px);gap:6vw;padding:70px 6vw}.book-layout aside{min-width:0}summary{cursor:pointer;color:var(--accent);padding-bottom:18px;font-size:17px}#toc{display:flex;flex-direction:column;gap:4px}#toc a{display:block;text-decoration:none;padding:10px 12px;border-left:2px solid transparent;font-size:14px;color:var(--muted)}#toc a.active{color:var(--paper);border-color:var(--accent);background:var(--panel)}#reading{scroll-margin-top:115px;min-width:0}#reading h2{font:400 clamp(30px,4vw,55px)/1.2 Georgia,serif;margin:0 0 40px;overflow-wrap:anywhere}.prose{font:19px/1.95 Georgia,'Times New Roman',serif;overflow-wrap:anywhere}.prose p{margin:0 0 1.4em;white-space:pre-line}.prose h3{font:500 21px/1.5 system-ui,sans-serif;margin:2em 0 1em}.chapter-nav{display:flex;justify-content:space-between;gap:16px;border-top:1px solid var(--line);padding-top:30px;margin-top:55px}.audio-heading{padding:80px 0 30px}.audio-heading h1{font:400 clamp(38px,6vw,78px)/1.15 Georgia,serif;margin:24px 0}#audio-view{padding:0 9vw 70px;max-width:1200px}.episode{padding:32px 0;border-top:1px solid var(--line)}.episode h2{font:400 32px/1.3 Georgia,serif}.episode audio{width:100%;max-width:760px;margin:16px 0}.episode p{white-space:pre-line}.muted{color:var(--muted)}.community{padding:60px 9vw;border-top:1px solid var(--line)}.community h2{font:400 30px Georgia,serif}.support-links{display:flex;gap:30px;flex-wrap:wrap}footer{display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap;padding:30px 6vw;border-top:1px solid var(--line);color:var(--muted);font-size:14px}#notice:not(:empty){margin:24px 6vw;padding:18px;border:1px solid var(--line)}#progress{position:fixed;top:0;left:0;height:2px;background:var(--accent);z-index:20;width:0}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}html[dir=rtl] .prose{font-family:Tahoma,serif;line-height:2}html[lang=zh] .prose{line-height:2}
/* Author workspace */
.admin-shell{max-width:1450px;margin:auto;padding:30px 4vw}.admin-header{display:flex;gap:20px;justify-content:space-between;align-items:center;flex-wrap:wrap}.admin-header h1{font:400 36px Georgia,serif;margin:0}.actions{display:flex;gap:10px;flex-wrap:wrap}.workspace{display:grid;grid-template-columns:290px minmax(0,1fr);gap:28px;margin-top:28px}.sidebar,.editor{border:1px solid var(--line);border-radius:10px;background:var(--panel);padding:22px;min-width:0}.sidebar .tabs{display:flex;gap:8px;margin-bottom:16px}.sidebar .tabs button{flex:1}.item-list{max-height:65vh;overflow:auto;margin:16px -8px}.item-list button{display:block;width:100%;text-align:start;border:0;border-left:2px solid transparent;border-radius:0;padding:12px;font-size:14px}.item-list button.selected{border-color:var(--accent);background:#24211c}.item-list small{display:block;color:var(--muted)}.field{display:block;margin-bottom:20px}.field>span{display:block;margin-bottom:7px;color:var(--muted);font-size:14px}.field input:not([type=checkbox]),.field textarea,.field select{width:100%}.field textarea{min-height:390px;resize:vertical;font:18px/1.8 Georgia,serif}.row{display:flex;gap:18px;flex-wrap:wrap}.row>.field{flex:1;min-width:160px}.editor-top{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:24px}.editor-top h2{font:400 27px Georgia,serif;margin:0}.note{font-size:14px;color:var(--muted)}#status{margin:18px 0;min-height:26px;color:var(--accent)}.login{max-width:430px;margin:12vh auto;border:1px solid var(--line);padding:32px;border-radius:10px}.login h1{font:400 36px Georgia,serif}.login button{width:100%}.editor audio{width:100%;margin-bottom:18px}.preview{padding:24px;border:1px solid var(--line);margin-top:20px}.preview h2{font-family:Georgia,serif}.upload-state{font-size:14px;color:var(--accent)}
@media(max-width:850px){.book-layout{grid-template-columns:1fr;padding:35px 7vw;gap:32px}#toc{max-height:280px;overflow:auto}.hero{padding:55px 7vw}.workspace{grid-template-columns:1fr}.item-list{max-height:230px}.topbar{gap:10px;padding:12px 4vw}.brand{font-size:12px}.topbar button{padding:8px 12px}.topbar select{max-width:125px;padding:8px}.admin-shell{padding:24px 4vw}.editor,.sidebar{padding:18px}.hero h1{font-size:clamp(39px,9vw,65px)}.login{margin:8vh 5vw}.admin-header .actions{width:100%}.prose{font-size:18px}.community{padding:40px 7vw}}

.support-qr{display:flex;gap:24px;margin-top:25px}.support-qr img{background:white;padding:6px;border-radius:4px}.wallet{font:14px/1.7 monospace;overflow-wrap:anywhere;direction:ltr;user-select:all}.nav-link{display:inline-flex;align-items:center;text-decoration:none;border:1px solid var(--line);border-radius:6px;padding:9px 13px}.nav-link.active{background:var(--paper);color:var(--bg)}
/* Community */
.community-page{max-width:1280px;margin:auto}.community-hero{padding:90px 7vw 70px;border-bottom:1px solid var(--line)}.community-hero h1{font:400 clamp(42px,6.8vw,86px)/1.08 Georgia,serif;max-width:1000px;letter-spacing:-.04em;margin:25px 0}.submit-panel{margin:55px 7vw;padding:32px;border:1px solid var(--line);border-radius:12px;background:var(--panel)}.panel-heading,.feed-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;flex-wrap:wrap}.panel-heading h2,.feed-heading h2{font:400 32px/1.3 Georgia,serif;margin:5px 0 20px}.submit-panel form{max-width:820px;margin-top:30px}.submit-panel textarea{width:100%;min-height:240px;resize:vertical;font:18px/1.8 Georgia,serif}.consent{display:flex;align-items:flex-start;gap:10px;margin:25px 0}.consent input{margin-top:6px}.community-feed{padding:50px 7vw 90px}.story-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:28px 0}.story-card,.moderation-card{padding:28px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}.story-card h3,.moderation-card h2{font:400 28px/1.3 Georgia,serif;margin:12px 0}.story-author{color:var(--accent);font-size:14px}.story-body{white-space:pre-line;color:#d6d2ca;line-height:1.85}.story-card audio,.moderation-card audio{width:100%;margin-top:18px}.moderation{max-width:1100px;margin:50px auto;padding:0 5vw}.moderation-list{display:grid;gap:18px;margin-top:28px}.moderation-card .actions{margin-top:22px}
@media(max-width:850px){.story-grid{grid-template-columns:1fr}.community-hero{padding:55px 7vw}.submit-panel{margin:30px 5vw;padding:22px}.community-feed{padding:38px 5vw 65px}.topbar nav{overflow-x:auto;max-width:70vw}.nav-link{white-space:nowrap;padding:8px 10px}}

/* Community v2.1: readable stories and compact entry */
.community-hero{padding-top:44px;padding-bottom:38px}.community-hero h1{font-size:clamp(36px,5vw,60px)}.story-card,.moderation-card{min-width:0;overflow-wrap:anywhere}.story-body{font-family:Georgia,serif;font-size:18px}.story-card details summary{font-size:14px;padding:12px 0}.submit-panel audio{width:100%}.community-hero .subtitle{font-size:20px}.community-feed{padding-top:32px}
@media(max-width:600px){.topbar{flex-wrap:wrap}.topbar nav{max-width:100%;order:3;width:100%;overflow-x:auto}.topbar nav>*{flex-shrink:0}.community-hero h1{letter-spacing:-.02em}.story-card{padding:22px}}
/* Reader tools */
.detail-page{max-width:900px;margin:0 auto;padding:55px 6vw 80px}.detail-page h1{font:400 clamp(34px,5vw,60px)/1.18 Georgia,serif;overflow-wrap:anywhere}.detail-page h2{font:400 28px/1.35 Georgia,serif}.detail-page audio{width:100%;margin:20px 0}.listening-tools{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:0 0 28px}.listening-tools button,.listening-tools select{min-height:44px}.listening-tools .note{flex-basis:100%}.backup-section{padding:24px 0;border-bottom:1px solid var(--line)}#backup-status{white-space:pre-line;border-left:3px solid var(--accent);padding-left:16px}progress{width:100%;accent-color:var(--accent)}.receipt{border:1px solid var(--accent);border-radius:8px;padding:22px;margin:24px 0}.receipt input{width:100%;margin-bottom:15px}.receipt button,.receipt a{margin:5px}.report-form{border:1px solid var(--line);padding:25px;margin-top:25px}.report-form textarea{min-height:120px}.rules-list li{margin-bottom:24px}.detail-page .field textarea{min-height:250px}.moderation-card>button{margin:12px 8px 0 0}.story-card>.nav-link{margin-top:18px}.topbar nav{flex-wrap:wrap}.listening-tools label{font-size:14px}
@media(max-width:600px){.detail-page{padding:30px 6vw 55px}.listening-tools{gap:8px}.listening-tools button{padding:9px 12px}.actions>*{max-width:100%}.topbar nav{flex-wrap:nowrap}.receipt{padding:16px}}
