/* The book owns the page. The inherited operating system lives inside it. */
:root{--os-bg:#000;--os-panel:#080808;--os-text:#fff;--os-ink:#9ee6cf;--os-line:#343434;--os-dim:#bbb}
html[data-theme=light]{--os-bg:#fff;--os-panel:#f5f5f5;--os-text:#000;--os-ink:#12634d;--os-line:#ccc;--os-dim:#444}
body.book-host{--book-bg:#08070d;--book-ink:#f8f5f0;--book-dim:#bcb7c3;--book-pink:#ff4fd8;--book-cyan:#43d9ff;--book-line:#353043;background:var(--book-bg);color:var(--book-ink);font-family:Inter,ui-sans-serif,system-ui,sans-serif}
html[data-theme=light] body.book-host{--book-bg:#f4eee7;--book-ink:#241426;--book-dim:#6f5a70;--book-pink:#a00080;--book-cyan:#006b89;--book-line:#d1bbc9}
.book-host .cosmic-field{opacity:.45}html[data-theme=light] .book-host .cosmic-field{opacity:.06}
.book-host .os{position:relative;max-width:1440px;padding:26px clamp(14px,3vw,44px) 42px}
.book-host .book-mast{display:grid;grid-template-columns:78px minmax(0,1fr) auto;align-items:center;gap:24px;margin-bottom:26px}
.book-cover{display:block;position:relative}.book-cover:before{content:'';position:absolute;inset:4px -4px -4px 4px;border:1px solid var(--book-pink);opacity:.5;transform:rotate(2deg);z-index:-1}.book-cover img{display:block;width:100%;height:auto;box-shadow:0 12px 36px #0006}
.book-host .book-mast .eyebrow{color:var(--book-cyan);font:10px/1.5 Inter,ui-sans-serif,system-ui,sans-serif;letter-spacing:.16em}
.book-host .book-mast h1{font:normal clamp(38px,5vw,64px)/1.05 Georgia,'Times New Roman',serif;max-width:none;letter-spacing:-1px;margin:7px 0 8px;color:var(--book-ink)}
.book-mast h1 em{color:var(--book-pink);font-weight:normal}.book-premise{font:15px/1.5 Georgia,'Times New Roman',serif;color:var(--book-dim);margin:0}.book-edition{text-align:right;font:11px/1.7 Inter,ui-sans-serif,system-ui,sans-serif;color:var(--book-dim)}.book-edition>span{color:var(--book-pink);text-transform:uppercase;letter-spacing:.12em;font-size:10px}.book-edition p{margin:6px 0}.book-edition a{color:var(--book-cyan)}
.book-host .console{color:var(--os-ink);font:14px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;box-shadow:0 22px 80px #0003}.book-host .console .eyebrow{color:var(--os-ink)}
.book-host .stations button{border-color:var(--book-line);color:var(--book-dim);font-family:Inter,ui-sans-serif,system-ui,sans-serif}.book-host .stations button[aria-current=true]{border-color:var(--book-pink);color:var(--book-pink)}.book-host .stations button:hover{color:var(--book-cyan)}
.book-host .outside{color:var(--book-dim)}.book-host .outside a{color:var(--book-cyan)}
.book-host .site-enclosure-footer{width:auto;max-width:none;min-height:0;margin:0;padding-block:0;flex-direction:row;align-items:center;text-align:left;gap:12px;color:inherit}
.book-host dialog{font-family:ui-monospace,SFMono-Regular,Consolas,monospace}
.console:is(:fullscreen,.screen-takeover){position:fixed;inset:0;width:100%;height:100%;height:100dvh;max-width:none;margin:0;padding:0;display:flex;flex-direction:column;border:1px solid var(--os-line);background:var(--os-bg);overflow:auto;z-index:2147483647}
.console:is(:fullscreen,.screen-takeover):before,.console:is(:fullscreen,.screen-takeover):after{display:none}
.console:is(:fullscreen,.screen-takeover) .identity,.console:is(:fullscreen,.screen-takeover) .clocks,.console:is(:fullscreen,.screen-takeover) .transport{flex-shrink:0}
.console:is(:fullscreen,.screen-takeover) .work-area{flex:1;min-height:0;grid-template-columns:minmax(0,1fr) 300px}
.console:is(:fullscreen,.screen-takeover) .instrument{display:flex;flex-direction:column;min-height:0}
.console:is(:fullscreen,.screen-takeover) .instrument canvas{flex:1;min-height:0;max-height:none;aspect-ratio:auto;height:100%;object-fit:contain}
.console:is(:fullscreen,.screen-takeover) .observer{min-height:0;overflow:auto}
.remote .console:is(:fullscreen,.screen-takeover) .work-area{grid-template-columns:1fr}.remote .console:is(:fullscreen,.screen-takeover) .instrument{max-width:none}
.console-takeover{overflow:hidden!important}.console-takeover .site-enclosure{visibility:hidden}
@media(max-width:700px){.console:is(:fullscreen,.screen-takeover) .work-area{display:flex;flex-direction:column;min-height:260px}.console:is(:fullscreen,.screen-takeover) .instrument{flex:1}.console:is(:fullscreen,.screen-takeover) .observer{display:block;border-left:0;padding:10px 16px;flex-shrink:0;max-height:26vh}.console:is(:fullscreen,.screen-takeover) .observer>div:first-child,.console:is(:fullscreen,.screen-takeover) .description,.console:is(:fullscreen,.screen-takeover) .device{display:none}.console:is(:fullscreen,.screen-takeover) .spoken{border:0;padding:0}.console:is(:fullscreen,.screen-takeover) .passage{font-size:16px;min-height:0;margin:3px 0}.console:is(:fullscreen,.screen-takeover) .transport{padding:9px 12px}}
.book-host.remote .book-mast{grid-template-columns:minmax(0,1fr) auto;gap:16px;margin-bottom:18px}.book-host.remote .book-cover,.book-host.remote .book-premise{display:none}.book-host.remote .book-mast h1{font-size:32px}.book-host.remote .book-edition p{display:none}
@media(max-width:600px){.book-host .os{padding:20px 12px 36px}.book-host .book-mast{grid-template-columns:52px minmax(0,1fr);gap:15px;margin-bottom:20px}.book-host .book-mast h1{font-size:39px;letter-spacing:-1px}.book-host .book-mast .eyebrow{font-size:8px}.book-premise{font-size:12px}.book-edition{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;text-align:left;gap:12px}.book-edition p{display:none}.book-host.remote .book-edition{grid-column:auto;display:block;text-align:right}.book-host.remote .book-edition>span{display:none}}
/* Book narration is the focal reading surface, not a status field in the OS. */
.narrative-window{padding:22px 36px;background:var(--book-bg);color:var(--book-ink);border-bottom:1px solid var(--book-line);text-align:center;min-height:174px;display:flex;flex-direction:column;justify-content:center}
.narrative-window .passage{font:clamp(24px,2.3vw,34px)/1.42 Georgia,'Times New Roman',serif;letter-spacing:0;max-width:60ch;min-height:0;margin:10px auto;width:100%;text-wrap:pretty}
.narrative-label,.narrative-chapter{font:10px/1.5 Inter,system-ui,sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--book-dim)}
.narrative-chapter{display:none}.is-prologue .narrative-chapter{display:block}.is-prologue .narrative-window{min-height:420px}.is-prologue .narrative-window .passage{font-size:clamp(34px,5vw,58px);max-width:26ch}.is-prologue .operating-system{display:none}
.operating-system{color:var(--os-text);background:var(--os-bg)}.operating-system .small,.operating-system .description{color:var(--os-dim)}.operating-system .metric-value,.operating-system strong{color:var(--os-ink)}.observer .device{margin-top:auto}.book-host .instrument canvas{max-height:43vh}
.remote .narrative-window{display:none}.remote .operating-system{flex:1;min-height:0}.remote .instrument canvas{max-height:65vh}
.console:is(:fullscreen,.screen-takeover) .operating-system{flex:1;min-height:0;display:flex;flex-direction:column}.console:is(:fullscreen,.screen-takeover) .narrative-window{flex-shrink:0;min-height:136px;padding:15px 32px}.console:is(:fullscreen,.screen-takeover) .instrument canvas{max-height:none}
.console:is(:fullscreen,.screen-takeover).is-prologue .operating-system{display:none}.console:is(:fullscreen,.screen-takeover).is-prologue .narrative-window{flex:1}
@media(max-width:700px){.narrative-window{padding:18px 20px;min-height:160px}.narrative-window .passage{font-size:23px}.is-prologue .narrative-window{min-height:340px}.console:is(:fullscreen,.screen-takeover) .narrative-window{min-height:125px;padding:12px 20px}.console:is(:fullscreen,.screen-takeover) .narrative-window .passage{font-size:21px}.console:is(:fullscreen,.screen-takeover) .observer{display:none}}
