@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');
:root{color-scheme:dark;--cyan:#37dcc7;--ink:#edf1f2;--muted:#a6b4bb}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:#070c10;color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}header{height:48px;padding:0 18px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #26353e}.brand{font-size:12px;font-weight:600;letter-spacing:1.5px;color:var(--ink);text-decoration:none}.brand span{display:none}nav{display:flex;gap:8px}button{border:1px solid #354650;border-radius:2px;background:#111b22;color:var(--ink);font:inherit;font-size:12px;padding:8px 13px;cursor:pointer}button:hover{border-color:var(--cyan)}button:disabled{opacity:.35}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}main{padding:6px 0 0;margin:0;width:100%}#book-stage{margin:0 auto}#book{margin:auto}.book-page{background:#101a21;color:var(--ink);border:1px solid #2b3b45;overflow:hidden;box-shadow:inset 8px 0 22px #0003}.page-inner{height:100%;padding:clamp(24px,3vw,52px);display:flex;flex-direction:column}.page-content{flex:1;min-height:0;overflow:hidden}.page-content p{font-size:clamp(17px,1.35vw,21px);line-height:1.68;margin:0 0 1em;max-width:65ch}.page-inner footer{flex-shrink:0;border-top:1px solid #30434e;margin-top:18px;padding-top:12px;display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.3px;color:var(--muted)}.scene{font-size:clamp(22px,2vw,29px);line-height:1.25;letter-spacing:-.025em;margin:8px 0 22px;font-weight:500;color:var(--cyan)}figure{margin:0}.scene-image{height:calc(var(--page-h)*.29);margin:20px 0 24px;display:flex;flex-direction:column}.scene-image img{min-height:0;flex:1;object-fit:contain;width:100%;border:1px solid #344751}.scene-image figcaption{font-size:11px;line-height:1.5;color:#b1c0c7;padding-top:8px}.scene-image figcaption span{display:block;font-size:9px;color:#8799a3}.diagram{border:1px solid #38505e;padding:18px;margin:20px 0 24px;background:#142530}.diagram small{font-size:10px;letter-spacing:2px;color:var(--cyan)}.diagram div{font-size:15px;border-top:1px solid #324854;padding:12px 0 2px;margin-top:9px}.cover-page img{display:block;width:100%;height:100%;object-fit:contain;background:#04090c}.chapter-opening{height:100%;display:flex;flex-direction:column;justify-content:center}.chapter-opening>small{color:var(--cyan);font-size:11px;letter-spacing:2px}.chapter-opening h1{font-size:clamp(32px,3.2vw,52px);line-height:1.08;letter-spacing:-.05em;margin:22px 0 26px}.chapter-opening figure{height:calc(var(--page-h)*.36);margin-bottom:25px}.chapter-opening img{width:100%;height:calc(100% - 17px);object-fit:contain}.chapter-opening figcaption{font-size:9px;color:var(--muted)}.chapter-opening .deck{font-size:18px;line-height:1.5}.chapter-opening .fiction-note{font-size:11px;line-height:1.55;color:var(--muted);margin-bottom:0}.end-copy{height:100%;display:flex;flex-direction:column;justify-content:center}.end-copy small{font-size:12px;color:var(--cyan);letter-spacing:3px}.end-copy h2{font-size:clamp(38px,4vw,64px);line-height:1.13;letter-spacing:-.04em;font-weight:500;margin:25px 0}.end-rule{height:2px;width:65px;background:var(--cyan);margin:6px 0 25px}.end-copy p{color:var(--muted)}.probe{position:fixed;left:-10000px;top:0;visibility:hidden}#reader-controls{position:fixed;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;height:48px;padding:0 18px;background:#0c141a;border-top:1px solid #2b3c47;z-index:100}#page-status{font-size:12px;color:var(--muted)}dialog{border:1px solid #3b505e;background:#111c23;color:var(--ink);width:min(850px,94vw);max-height:88vh;padding:25px}dialog::backdrop{background:#000b;backdrop-filter:blur(8px)}.dialog-head{display:flex;justify-content:space-between;gap:20px}.dialog-head small{font-size:11px;color:var(--cyan);letter-spacing:2px}.dialog-head h2{font-size:27px}.part{border-top:1px solid #30424d;padding:18px 0}.part summary{font-size:17px;cursor:pointer}.part summary span{display:block;color:var(--muted);font-size:13px;margin-top:7px}.chapter-row{display:flex;justify-content:space-between;align-items:center;gap:15px;border-bottom:1px solid #243843;padding:14px 0;font-size:14px}.chapter-row span{font-size:12px;color:var(--muted)}.portrait .page-inner{padding:22px}.portrait .page-content p{font-size:17px;line-height:1.64}.portrait .scene{font-size:22px;margin-bottom:18px}.portrait .chapter-opening h1{font-size:37px}.portrait .chapter-opening .deck{font-size:17px}.portrait .chapter-opening .fiction-note{font-size:11px}.portrait .scene-image{height:calc(var(--page-h)*.25)}@media print{header,#reader-controls,dialog{display:none!important}main{padding:0}#book,#book-stage,.stf__wrapper,.stf__block{position:static!important;height:auto!important;width:auto!important;display:block!important}.book-page{position:relative!important;transform:none!important;display:block!important;width:var(--page-w)!important;height:var(--page-h)!important;break-after:page;print-color-adjust:exact}.stf__outerShadow,.stf__innerShadow,.stf__hardShadow,.stf__hardInnerShadow{display:none!important}}
.chapter-opening h1{margin:16px 0 20px}.chapter-opening figure{height:calc(var(--page-h)*.27);margin-bottom:16px}.chapter-opening .deck{margin-bottom:14px}.portrait .chapter-opening h1{font-size:34px}@media(max-height:500px){.chapter-opening>small{font-size:9px}.chapter-opening h1{font-size:26px!important;margin:10px 0}.chapter-opening figure{height:calc(var(--page-h)*.19);margin-bottom:10px}.chapter-opening .deck{font-size:14px!important;line-height:1.3!important;margin-bottom:8px}.chapter-opening .fiction-note{font-size:9px!important;line-height:1.3!important}}
@media(max-height:500px){.page-inner{padding:16px}.diagram{padding:10px;margin:12px 0}.diagram div{font-size:12px;padding:5px 0 0;margin-top:5px}.scene-image{height:calc(var(--page-h)*.22);margin:12px 0}.scene-image figcaption{font-size:9px;padding-top:4px}.scene-image figcaption span{font-size:8px}.scene{font-size:19px;margin:5px 0 12px}}

.scene-image img,.chapter-opening img{background:#081016;object-position:center;}
