@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');
:root{--bg:#090d18;--panel:#111827;--panel2:#171f31;--line:#263149;--text:#f4f5fb;--muted:#9aa6bd;--accent:#8860ff;--accent2:#b18cff;--radius:18px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(ellipse at 75% 0%,#1c1740 0,transparent 36%),var(--bg);color:var(--text);font:15px/1.6 Inter,Arial,sans-serif}.topbar{height:76px;display:flex;align-items:center;gap:30px;padding:0 4vw;border-bottom:1px solid #ffffff12;background:#090d18eF;position:sticky;top:0;z-index:20;backdrop-filter:blur(18px)}a{color:inherit;text-decoration:none}.brand{font-size:20px;font-weight:800;white-space:nowrap}.brand-mark{color:var(--accent2);margin-right:8px}.topnav{display:flex;gap:24px;color:#c5cbe0;font-size:13px}.topnav a:hover,.section-head>a:hover{color:var(--accent2)}.search{margin-left:auto;display:flex;background:var(--panel2);border:1px solid var(--line);border-radius:30px;padding:4px 8px 4px 16px}.search input{background:none;border:0;outline:0;color:white;width:170px}.search button,.theme-toggle{border:0;background:none;color:white;font-size:20px;cursor:pointer}.account-link{font-size:13px}.layout{display:grid;grid-template-columns:210px minmax(0,1fr);gap:32px;max-width:1500px;margin:auto;padding:30px 4vw}.sidebar{display:flex;flex-direction:column;gap:8px;position:sticky;top:100px;height:max-content}.sidebar>a{padding:12px 15px;border-radius:12px;color:#b5bfd3}.sidebar>a:hover{background:var(--panel2);color:white}.sidebar>a span{margin-left:12px}.side-note{margin-top:28px;padding:18px;background:linear-gradient(145deg,#261b55,#151c30);border:1px solid #5941a366;border-radius:16px}.side-note p,.muted{color:var(--muted);font-size:13px}.main-content{min-width:0}.hero{min-height:350px;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;overflow:hidden;border:1px solid #ffffff16;border-radius:24px;padding:42px 5%;background:linear-gradient(110deg,#151b30 0%,#17152f 58%,#34205e 100%);position:relative}.eyebrow{font-size:10px;letter-spacing:2px;color:var(--accent2);font-weight:700}.hero h1{font-size:clamp(30px,4vw,52px);line-height:1.1;margin:14px 0}.hero p{max-width:470px;color:#bac3d7}.hero-art{height:270px;display:grid;place-items:center;position:relative}.hero-orbit{width:250px;height:250px;border:1px solid #b18cff66;border-radius:50%;box-shadow:0 0 80px #8a5cff33,inset 0 0 60px #8a5cff22}.hero-book{position:absolute;width:155px;height:220px;transform:rotate(7deg);border-radius:8px;background:linear-gradient(145deg,#7851dc,#17172e 70%);box-shadow:18px 20px 45px #0009;padding:28px 16px;font-size:27px;line-height:1.05;font-weight:400;letter-spacing:3px}.hero-book b{color:#e0d1ff}.hero-book small{display:block;font-size:7px;letter-spacing:1px;margin-top:65px}.button{display:inline-flex;align-items:center;gap:12px;padding:12px 20px;border-radius:30px;font-weight:700;font-size:13px}.button-primary{background:linear-gradient(110deg,#8055ff,#a16aff);box-shadow:0 8px 25px #8055ff44;color:white}.button-ghost{border:1px solid #8f79c9;color:white}.section{margin:42px 0}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:18px;gap:15px}.section-head h1,.section-head h2,.section h2{margin:3px 0;font-size:23px}.section-head>a{font-size:12px;color:#c2b0ff}.book-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}.book-card{min-width:0;background:linear-gradient(150deg,#141d2e,#0e1422);border:1px solid var(--line);border-radius:15px;overflow:hidden;transition:.2s}.book-card:hover{transform:translateY(-5px);border-color:#8060db}.book-cover{display:block;position:relative;aspect-ratio:2/3;background:linear-gradient(140deg,#43356f,#182235);overflow:hidden}.book-cover img,.detail-cover img{width:100%;height:100%;object-fit:cover;display:block}.cover-open{position:absolute;inset:auto 8px 8px;background:#090d18d9;border-radius:8px;padding:7px;text-align:center;font-size:10px;opacity:0;transition:.2s}.book-card:hover .cover-open{opacity:1}.book-card-info{padding:11px}.book-title{display:block;font-weight:700;font-size:13px;line-height:1.35}.book-meta{font-size:11px;color:var(--muted);margin-top:6px}.genre-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.genre-strip>div{padding:18px;background:var(--panel);border:1px solid var(--line);border-radius:15px;display:grid;gap:4px}.genre-icon{color:var(--accent2);font-size:24px}.genre-strip small{color:var(--muted)}.footer{border-top:1px solid var(--line);padding:28px 4vw;display:flex;gap:24px;color:var(--muted);font-size:12px}.footer .brand{color:var(--text)}.breadcrumbs{font-size:12px;color:var(--muted);margin:4px 0 24px}.detail-top{display:grid;grid-template-columns:240px 1fr;gap:34px;align-items:center}.detail-cover{height:350px;border-radius:15px;overflow:hidden;background:var(--panel2);box-shadow:0 20px 50px #0008}.detail-info h1{font-size:clamp(30px,4vw,46px);margin:8px 0}.detail-author{color:var(--accent2);font-weight:600}.detail-description{color:#c0c9dc;max-width:720px;margin:18px 0}.detail-actions{display:flex;gap:12px;flex-wrap:wrap;margin:22px 0}.detail-tags{color:var(--muted);font-size:12px}.detail-text{color:#d4daea}.reader-placeholder{padding:60px 20px;text-align:center;background:#f2eee5;color:#24232a;border-radius:16px;font-family:Georgia,serif}.pagination{text-align:center;margin:30px}.pagination a,.pagination span{display:inline-block;padding:8px 13px;margin:3px;background:var(--panel2);border-radius:8px}.comment{padding:16px;border-bottom:1px solid var(--line)}.comment-head{display:flex;gap:15px;justify-content:space-between}.comment-head time{color:var(--muted);font-size:12px}.comment-actions{color:var(--accent2);font-size:12px;margin-top:10px}body.light{--bg:#f4f5fa;--panel:#fff;--panel2:#edf0f7;--line:#dce1ed;--text:#1c2231;--muted:#68738a;background:var(--bg);color:var(--text)}body.light .topbar{background:#f4f5faed}body.light .search input{color:#222}body.light .button-ghost{color:#333}.theme-toggle{font-size:18px}@media(max-width:1100px){.book-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.topnav{gap:12px}.sidebar{display:none}.layout{display:block}}@media(max-width:700px){.topbar{height:auto;min-height:64px;padding:12px 16px;gap:12px;flex-wrap:wrap}.topnav{order:3;width:100%;overflow:auto;padding:4px 0}.search{margin-left:auto}.search input{width:110px}.layout{padding:18px 14px}.hero{grid-template-columns:1fr;padding:28px 24px}.hero-art{height:180px}.hero-orbit{width:160px;height:160px}.hero-book{width:110px;height:155px;font-size:19px;padding:20px 12px}.hero-book small{margin-top:40px}.book-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.genre-strip{grid-template-columns:repeat(2,1fr)}.detail-top{grid-template-columns:110px 1fr;gap:16px;align-items:start}.detail-cover{height:165px}.detail-info h1{font-size:25px}.detail-description{font-size:13px}.detail-actions .button{padding:10px 12px;font-size:11px}.section{margin:30px 0}.footer{flex-wrap:wrap}.section-head h1,.section-head h2,.section h2{font-size:20px}}

/* BookSpace in-page reader */
.reader-callout{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(120deg,#171d32,#211943)}.reader-callout p{margin:5px 0 0;color:#b8c1d5;font-size:13px}.book-reader{display:none;position:fixed;inset:0;z-index:9999;background:#0b1020;color:#eef0f7;grid-template-rows:68px minmax(0,1fr) 58px}.book-reader.is-open{display:grid}.book-reader__bar,.book-reader__footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 22px;background:#101729;border-bottom:1px solid #29334a}.book-reader__title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.book-reader__tools{display:flex;gap:8px}.book-reader__tools button,.book-reader__footer button{border:1px solid #39445c;background:#1b2540;color:#f5f5fa;border-radius:9px;padding:9px 12px;cursor:pointer}.book-reader__body{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:0}.book-reader__toc{overflow:auto;padding:20px;background:#101729;border-right:1px solid #29334a}.reader-toc__head{font-weight:800;margin-bottom:15px}.reader-toc__item{display:block;width:100%;text-align:left;border:0;background:transparent;color:#c1c9dc;padding:10px;border-radius:8px;cursor:pointer}.reader-toc__item:hover,.reader-toc__item.is-active{background:#29204b;color:#fff}.book-reader__stage{position:relative;overflow:auto;background:#eee9df;color:#24232a;padding:30px}.reader-status{text-align:center;color:#6f7280;font-size:13px;margin:0 0 12px}.reader-content{max-width:760px;min-height:100%;margin:auto;font:20px/1.85 Georgia,serif;color:#25242a}.reader-content iframe{width:100%;height:100%;min-height:70vh;border:0;background:white}.reader-content #epub-view{height:100%;min-height:70vh}.reader-content pre{white-space:pre-wrap;overflow-wrap:anywhere}.book-reader__footer{border:0;border-top:1px solid #29334a}.book-reader__footer span{font-size:12px;color:#aab4ca;text-align:center}.book-reader.is-dark .book-reader__stage{background:#171c29;color:#e7e9f0}.book-reader.is-dark .reader-content{color:#e7e9f0}.book-reader.is-dark .reader-status{color:#aab4ca}@media(max-width:700px){.book-reader{grid-template-rows:58px minmax(0,1fr) 54px}.book-reader__bar{padding:0 10px;gap:8px}.book-reader__bar .brand{font-size:14px}.book-reader__title{display:none}.book-reader__tools{margin-left:auto;gap:4px}.book-reader__tools button{padding:8px}.book-reader__body{grid-template-columns:1fr}.book-reader__toc{display:none}.book-reader__stage{padding:16px}.reader-content{font-size:18px}.book-reader__footer{padding:0 10px}.book-reader__footer span{font-size:10px}.reader-callout{align-items:flex-start;flex-direction:column}}
