:root { color-scheme: dark; --paper:#f7f3eb; --gold:#a99274; --muted:#c0b3a0; --ink:#171715; }
* { box-sizing:border-box; }
body { margin:0; background:var(--ink); color:var(--paper); font:14px/1.6 'Helvetica Neue',Arial,sans-serif; }
.experience { height:100svh; min-height:680px; position:relative; overflow:hidden; isolation:isolate; }
#space { position:absolute; inset:0; width:100%; height:100%; touch-action:pan-y; cursor:grab; }
#space:active { cursor:grabbing; }
a { color:inherit; text-decoration:none; }
button,select { font:inherit; color:inherit; cursor:pointer; }
button { border:1px solid #a9927440; background:#171715; min-height:44px; padding:8px 12px; }
button:hover,button[aria-pressed='true'] { color:#f4dfc3; border-color:#a99274; background:#a9927412; }
:focus-visible { outline:2px solid #d1b28a; outline-offset:3px; }
[hidden] { display:none!important; }
.space-header { position:absolute; top:22px; left:30px; right:30px; display:flex; align-items:center; justify-content:space-between; z-index:5; pointer-events:none; }
.space-header a { pointer-events:auto; }
.brand { font:19px Georgia,serif; margin-right:28px; }.brand span { color:var(--gold); }
h1 { display:inline; font:normal 22px Georgia,serif; margin:0 16px 0 0; }
.edition,.eyebrow { font:9px/1.65 'Courier New',monospace; letter-spacing:.1em; color:var(--gold); }
.header-links { font-size:11px; }.header-links a { padding-block:12px; border-bottom:1px solid #a9927470; }
.expand { display:none; }
.network-toolbar { position:absolute; top:74px; left:30px; right:30px; display:flex; align-items:center; justify-content:space-between; gap:16px; z-index:5; }
.network-toolbar nav { display:flex; gap:5px; }.network-toolbar button { min-height:38px; padding:6px 16px; font-size:11px; }
.picker-label { max-width:300px; min-width:0; position:relative; }.picker-label::after { content:'⌄'; position:absolute; right:9px; top:50%; transform:translateY(-50%); pointer-events:none; color:var(--gold); }.picker-label select { appearance:none; display:block; width:100%; max-width:300px; height:44px; border:1px solid #a9927440; background:#171715; padding:8px 25px 8px 12px; font-size:12px; text-overflow:ellipsis; }
.invitation { position:absolute; top:29%; left:30px; width:190px; z-index:2; }
.invitation h2 { font:normal 41px/1.08 Georgia,serif; letter-spacing:-.035em; margin:18px 0; }
.deck { color:var(--muted); font-size:13px; line-height:1.8; }.source-note { font-size:10px; color:#ad9d85; margin-top:20px; }
.enter { font-size:11px; text-align:left; border-color:#a9927480; margin-top:8px; width:100%; }.enter span { float:right; }
.focus-panel { position:absolute; top:145px; right:30px; bottom:95px; width:330px; overflow:auto; padding:0 0 20px 22px; border-left:1px solid #a9927430; background:#171715; scrollbar-width:thin; scrollbar-color:#a99274 transparent; z-index:4; }
.back { border:0; padding-left:0; font-size:11px; color:var(--muted); }
.focus-panel h2 { font:normal 31px/1.17 Georgia,serif; letter-spacing:-.025em; margin:12px 0 20px; }
#focus-implication { color:#d0c4b2; font-size:13px; line-height:1.8; }
#source-detail { margin:20px 0; font-size:11px; color:var(--muted); }summary { cursor:pointer; min-height:44px; padding:12px 0; border-block:1px solid #a9927440; }
#focus-warning { color:#dbc09b; }
.connections-heading { margin-top:26px; }
#connections button { display:block; width:100%; text-align:left; border:0; border-bottom:1px solid #a9927438; background:transparent; padding:10px 0; font:14px/1.45 Georgia,serif; }
#connections small { display:block; font:9px/1.6 'Courier New',monospace; color:var(--gold); margin-bottom:4px; }
#destinations { position:absolute; inset:0; pointer-events:none; z-index:2; }
.destination { position:absolute; transform:translate(-50%,-50%); background:#171715f2; border:1px solid transparent; text-align:left; padding:7px 9px; pointer-events:auto; font:13px/1.35 Georgia,serif; color:#e2d2ba; }
.destination small { display:block; color:var(--gold); font:9px/1.4 'Courier New',monospace; text-transform:uppercase; margin-bottom:4px; }
.space-bottom { position:absolute; left:30px; right:30px; bottom:22px; display:flex; justify-content:space-between; align-items:center; gap:15px; z-index:6; pointer-events:none; }
.space-bottom button { pointer-events:auto; font-size:11px; }.space-bottom #orbit-left,.space-bottom #orbit-right,.space-bottom #nearer,.space-bottom #farther { font-size:20px; min-width:44px; }
#flight-controls { display:flex; gap:5px; }.navigation-hint { font-size:11px; color:var(--muted); }
.hover-readout { position:absolute; bottom:74px; left:30px; max-width:60%; font:14px Georgia,serif; color:#e2d2ba; pointer-events:none; z-index:4; }
#anchor-panel { position:absolute; z-index:7; width:min(370px,calc(100% - 40px)); bottom:85px; left:50%; transform:translateX(-50%); background:#211f1b; border:1px solid #a9927470; padding:24px; }
#anchor-text { font:20px/1.5 Georgia,serif; }#anchor-close { float:right; border:0; font-size:20px; padding:0; min-width:44px; }
.sr-only { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
@media(max-width:800px) {
 .space-header { top:18px; left:20px; right:20px; }.brand { display:none; }h1 { display:block; font-size:21px; }.edition { font-size:8px; }
 .network-toolbar { left:20px; right:20px; top:84px; gap:8px; }.network-toolbar button { padding:8px; min-height:44px; }.picker-label { width:42%; }.picker-label select { font-size:11px; min-height:44px; padding:6px; }
 .invitation { top:auto; bottom:77px; left:20px; right:20px; width:auto; }.invitation h2,.invitation .deck,.invitation .eyebrow { display:none; }.invitation .enter { width:auto; min-width:190px; margin:0; }.source-note { display:none; }
 .focus-panel { top:53%; left:20px; right:20px; bottom:82px; width:auto; border-left:0; border-top:1px solid #a9927430; padding:7px 0 20px; }.focus-panel h2 { font-size:25px; }
 .space-bottom { left:16px; right:16px; bottom:18px; gap:5px; }.navigation-hint,#orbit-toggle { display:none; }#flight-controls { gap:4px; }.space-bottom button { padding:7px 9px; }#anchor { padding:7px; }
 .hover-readout { display:none; }
}
/* The Mac preview gets an actual compact layout, not a crop of the full page. */
body.embedded .experience { min-height:0; height:100svh; }
body.embedded .space-header { top:12px; left:16px; right:16px; }body.embedded .brand { display:none; }body.embedded h1 { display:inline; font-size:16px; margin-right:12px; }body.embedded .edition { font-size:7px; }
body.embedded .expand { display:inline; }body.embedded .atlas-link { display:none; }
body.embedded .network-toolbar { top:44px; left:16px; right:16px; gap:8px; }body.embedded .network-toolbar button { min-height:30px; font-size:10px; padding:4px 9px; }body.embedded .picker-label { width:185px; }body.embedded select { min-height:30px; font-size:10px; padding:4px 6px; }
body.embedded .invitation { top:auto; bottom:62px; left:16px; width:160px; }body.embedded .invitation h2,body.embedded .invitation .deck,body.embedded .invitation .eyebrow,body.embedded .source-note { display:none; }body.embedded .enter { min-width:0; width:160px; font-size:10px; background:#171715e8; }
body.embedded .focus-panel { top:88px; left:auto; right:16px; bottom:62px; width:220px; padding:0 0 10px 14px; border-top:0; border-left:1px solid #a9927430; }body.embedded .focus-panel h2 { font-size:20px; margin:8px 0 12px; }body.embedded #focus-implication { font-size:11px; }body.embedded #connections button { font-size:12px; }body.embedded #source-detail { font-size:10px; }body.embedded .focus-panel .eyebrow { font-size:8px; }
body.embedded .space-bottom { bottom:10px; left:16px; right:16px; gap:8px; }body.embedded .navigation-hint { display:none; }body.embedded #orbit-toggle { display:none; }body.embedded .hover-readout { display:none; }
body.embedded .destination { font-size:11px; padding:5px 7px; }body.embedded .destination small { font-size:8px; }
@media(max-width:479px) {
 body.embedded .network-toolbar { display:none; }body.embedded .space-header { left:10px; right:10px; top:8px; }body.embedded h1 { font-size:12px; }body.embedded .edition { display:none; }body.embedded .header-links { font-size:10px; }
 body.embedded .space-bottom { left:8px; right:8px; bottom:6px; }body.embedded #anchor,body.embedded #orbit-left,body.embedded #orbit-right { display:none; }body.embedded #flight-controls { width:100%; justify-content:center; }
 body.embedded .invitation { bottom:58px; left:10px; width:auto; }body.embedded .enter { font-size:9px; width:145px; min-height:32px; padding:5px 8px; }
 body.embedded .focus-panel { top:auto; right:10px; left:10px; bottom:56px; height:28%; width:auto; border-left:0; border-top:1px solid #a9927430; padding:0; }body.embedded .focus-panel h2 { font-size:14px; }body.embedded .focus-panel .eyebrow,body.embedded #focus-implication,body.embedded #source-detail,body.embedded .connections-heading,body.embedded #connections { display:none; }body.embedded .back { font-size:9px; min-height:26px; padding:3px 0; }
}
@media(prefers-reduced-motion:reduce) { #orbit-toggle { display:none; } }
