@font-face{font-family:"Monomakh";src:url("/assets/fonts/Monomakh-Regular.cbdd20c04cf2.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:ThornGothic;src:url("/assets/fonts/KJV1611.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:ArchiveMono;src:url('/assets/fonts/UbuntuMono-Regular.7d81a339a0b9.woff2');font-display:swap}
@font-face{font-family:ArchiveSerif;src:url('/assets/fonts/OldStandard-Regular.529992e25b49.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:ArchiveSerif;src:url('/assets/fonts/OldStandard-Bold.8297470775bf.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:ArchiveWide;src:url('/assets/fonts/RussoOne-Regular.2285c478e9fc.woff2');font-display:swap}

:root{color-scheme:dark;--ink:#edf4fa;--muted:#b2c3d3;--line:#d3e7f32e;--accent:#e5dbb9;--title:ArchiveSerif,serif;--pan:0px;--filter:none}*{box-sizing:border-box}body{margin:0;background:#091421;color:var(--ink);font:1.125rem/1.65 ArchiveSerif,Georgia,serif;min-height:100svh;isolation:isolate}button,input,select,textarea{font:1rem/1.5 ArchiveMono,monospace}button,a{color:inherit}button{cursor:pointer;background:none;border:1px solid transparent;border-radius:2px;padding:.65rem .85rem;min-height:44px}a{text-underline-offset:.3em}button:hover{color:#fff;background:#dbeeff0c}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:5px}button[disabled]{cursor:default;opacity:.45}[hidden]{display:none!important}
#world{position:fixed;inset:0 0 auto;height:var(--room-viewport-height,100vh);height:var(--room-viewport-height,100lvh);z-index:-2;overflow:hidden;background:#10243b}#landscape{position:absolute;inset:-3%;background:center/cover no-repeat;transform:translateX(var(--pan)) scale(1.03);filter:var(--filter);transition:transform 1.3s ease,filter .8s,opacity .5s}.shade{position:absolute;inset:0;background:linear-gradient(90deg,#06111bd9 0%,#06111b70 37%,transparent 70%),linear-gradient(0deg,#06111bf5 0%,#0717257a 23%,transparent 63%,#07142180)}body[data-palette=midnight]{--filter:brightness(.6) saturate(.8)}body[data-palette=opal]{--filter:hue-rotate(20deg) saturate(.65)}body[data-typeface=mono]{--title:ArchiveMono}body[data-typeface=wide]{--title:ArchiveWide}body[data-typeface=gothic]{--title:ThornGothic,ArchiveSerif}
.site-header{min-height:90px;margin:0 3.7vw;padding:1.2rem 0;display:flex;align-items:center;justify-content:space-between;gap:1.5rem;border-bottom:1px solid var(--line)}.brand{font-size:1rem;letter-spacing:.14em;text-decoration:none;white-space:nowrap}.brand span{color:var(--muted);font-size:.75rem;margin-left:1rem;letter-spacing:.12em}.top-actions,.site-header nav{display:flex;align-items:center;gap:.25rem}.site-header nav button{font-size:.9rem;color:var(--muted)}.site-header nav button[aria-current=page]{color:var(--ink)}.top-actions button{font-size:.9rem}.top-actions #language{color:var(--accent);border-right:1px solid var(--line);border-radius:0}
main{position:relative;min-height:calc(100svh - 90px);padding:clamp(2.2rem,5vh,4rem) 3.7vw 0;display:grid;grid-template-rows:1fr auto auto;gap:1.5rem}.room-heading{max-width:650px;align-self:start;padding-bottom:clamp(2rem,6vh,5rem)}.eyebrow{font-size:.8rem;font-weight:400;letter-spacing:.16em;color:var(--muted);margin:0}h1{font:400 clamp(3.4rem,6.8vw,6.4rem)/.98 var(--title),serif;letter-spacing:-.025em;margin:1.05rem 0 1.4rem;max-width:9ch;text-wrap:balance}#room-caption{max-width:350px;font-size:1.0625rem;line-height:1.6;color:#c9d6e0;margin:0 0 1.4rem}.primary-action{padding:.7rem 0;color:var(--accent);border:0;border-bottom:1px solid #e5dbb960;border-radius:0;display:inline-flex;align-items:center;gap:2.5rem}.primary-action::after{content:'→';font-family:ArchiveMono}.primary-action:hover{background:none;border-color:var(--accent)}
#room-sequence{position:absolute;top:3rem;right:3.7vw;display:flex;flex-direction:column;gap:.15rem}#room-sequence button{color:#b4c6d5;min-width:44px;position:relative;font-size:.8rem}#room-sequence button[aria-current=page]{color:var(--accent)}#room-sequence button[aria-current=page]::before{content:'';position:absolute;left:-10px;top:50%;width:17px;height:1px;background:var(--accent)}.scene-controls{position:absolute;right:3.7vw;bottom:calc(220px + 1rem);display:flex;align-items:center;gap:.4rem}.scene-controls button{font-size:.875rem;backdrop-filter:blur(8px);background:#08162555}.scene-controls button[aria-pressed=true]{color:var(--accent);border-color:var(--line)}
.room-records{align-self:end}.records-heading{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:0 0 .45rem}.records-heading h2{font:400 .8rem ArchiveMono;letter-spacing:.15em;color:var(--muted);text-transform:uppercase;margin:0}.records-heading button{font-size:.875rem;color:var(--muted);padding-right:0}.records-heading button:hover{background:none;color:var(--ink)}#portals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line)}.portal{display:grid;grid-template-columns:2.2rem 1fr auto;grid-template-rows:auto auto;column-gap:.8rem;text-align:left;border:0;border-right:1px solid var(--line);border-radius:0;padding:1.3rem 1.4rem 1.35rem 0;min-height:116px;transition:background .25s}.portal+.portal{padding-left:1.4rem}.portal:last-child{border-right:0}.portal small{grid-column:2;font-size:.75rem;color:var(--muted);letter-spacing:.07em}.portal .record-number{grid-row:1/3;grid-column:1;color:var(--accent);font-size:.8rem;padding-top:.1rem}.portal strong{grid-column:2;grid-row:2;font:400 clamp(1.15rem,1.6vw,1.5rem)/1.25 var(--title),serif;letter-spacing:.01em;margin-top:.25rem}.portal .record-open{grid-column:3;grid-row:1/3;align-self:center;color:var(--muted);font-size:1.15rem}.portal:hover .record-open{color:var(--accent)}.room-footer{display:flex;justify-content:space-between;align-items:center;gap:2rem;padding:0 0 1.3rem;color:var(--muted);font-size:.8rem}.room-footer p{margin:0;max-width:620px}.room-footer>span{white-space:nowrap;letter-spacing:.12em}
body[data-looking=true] .room-heading,body[data-looking=true] #room-sequence,body[data-looking=true] .room-records,body[data-looking=true] .room-footer{visibility:hidden;opacity:0;pointer-events:none}body[data-looking=true] .shade{opacity:.16}body[data-looking=true] .scene-controls{bottom:2rem}body[data-looking=true] #landscape{transform:translateX(var(--pan)) scale(1.03)}.room-heading,.room-records,.room-footer,.shade{transition:opacity .5s}
dialog{padding:0;border:1px solid var(--line);border-radius:3px;color:var(--ink);background:#091724b8;box-shadow:0 24px 120px #0008;backdrop-filter:blur(8px);width:min(940px,calc(100vw - 48px));max-height:calc(100svh - 64px);overscroll-behavior:contain}dialog::backdrop{background:#040a1252;backdrop-filter:blur(2px)}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;position:sticky;top:0;background:#0b1b28d1;backdrop-filter:blur(12px);border-bottom:1px solid var(--line);padding:1rem 2rem;z-index:2}.dialog-head h2{font:400 1.65rem var(--title);margin:0}.close{font:1.8rem/1 ArchiveMono;padding:.3rem .6rem;min-width:44px}.reader-actions{display:flex;align-items:center;gap:.35rem}#reader-language{font-size:.875rem;color:var(--accent)}#archive-controls{display:flex;gap:.75rem;padding:1.5rem 2rem;flex-wrap:wrap}input[type=search],select{border:1px solid var(--line);border-radius:2px;background:#142936;color:var(--ink);padding:.75rem;min-width:0;min-height:46px}input[type=search]{flex:1;min-width:170px}#archive-list{padding:0 2rem 2rem}.entry{display:grid;grid-template-columns:110px 1fr 24px;gap:1rem;border:0;border-bottom:1px solid var(--line);width:100%;text-align:left;padding:1.2rem 0;border-radius:0}.entry small{font-size:.8rem;color:var(--muted);align-self:center}.entry strong{font:400 1.5rem/1.25 var(--title)}.entry p{font-size:.875rem;color:var(--muted);margin:.4rem 0 0}.entry>span:last-child{align-self:center;color:var(--accent)}.entry[aria-current=page]{color:var(--accent)}.group-title{font:400 .8rem ArchiveMono;letter-spacing:.1em;color:var(--muted);margin:2rem 0 .3rem}.intro-note,.empty{font-size:.875rem;color:var(--muted);line-height:1.6;margin:1.5rem 0 .5rem}
#reader{width:min(800px,calc(100vw - 48px))}#artifact-content{padding:2.4rem clamp(1.5rem,5vw,4rem) 3rem}#artifact-content h2{font:400 clamp(2.2rem,4.5vw,3.7rem)/1.02 var(--title);text-wrap:balance;letter-spacing:-.02em;margin:0 0 1.1rem}#artifact-content p{font:1.125rem/1.85 ArchiveSerif,Georgia,serif;margin:1.2rem 0}#artifact-content .meta{font-size:.8rem;line-height:1.7;color:var(--muted)}#artifact-content .artifact-summary{font-size:1.0625rem;color:#bdcedb;line-height:1.7}#artifact-content img,#artifact-content video{width:100%;max-height:440px;object-fit:contain;display:block;margin:1.75rem auto;border-radius:2px}.manuscript-body{margin-top:2rem}.manuscript-body p{max-width:62ch}.manuscript-body>p:first-child::first-letter{font-size:1.8em;color:var(--accent)}#artifact-content footer{border-top:1px solid var(--line);margin-top:2.3rem;padding-top:1.3rem}.source-link{font-size:.875rem;color:var(--accent);display:inline-block;padding:.5rem 0}.relations{display:grid;gap:.25rem}.relations button{font-size:1rem;border:0;border-bottom:1px solid var(--line);text-align:left;padding:.85rem 0;display:flex;justify-content:space-between;gap:1rem}.relations button::after{content:'→';color:var(--muted)}.loading{color:var(--muted)}.retry{border-color:var(--line)}.manuscript-body details{border-left:1px solid var(--line);margin:1.5rem 0;padding-left:1.2rem}.manuscript-body summary{cursor:pointer;color:var(--accent);padding:.5rem 0}.manuscript-body blockquote{border-left:1px solid var(--accent);margin:1.5rem 0;padding-left:1.5rem}.manuscript-body .insert{padding:.5rem 1.3rem;border-left:1px solid var(--line);margin:1.5rem 0}.manuscript-body .insert-label{font-size:.8rem!important;color:var(--muted);letter-spacing:.07em}
#settings{width:min(470px,calc(100vw - 48px))}#appearance{display:grid;gap:1.25rem;padding:1.7rem 2rem 2rem}#appearance label{display:grid;gap:.5rem}#appearance .check{display:flex;gap:.8rem;align-items:center;min-height:44px}input[type=checkbox]{width:20px;height:20px;accent-color:#d7dfb8}#reset{border-color:var(--line)}.meta{font-size:.875rem;color:var(--muted)}.sr-only,.skip:not(:focus){position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}.skip:focus{position:fixed;top:10px;left:10px;z-index:20;background:#10273c;padding:12px}.noscript{position:fixed;inset:20%;background:#10202c;padding:2rem}body[data-motion=false] *,body[data-motion=false] *::before,body[data-motion=false] *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
@media(max-width:900px){.site-header{flex-wrap:wrap;gap:.5rem 1rem;margin:0 24px;min-height:100px}.site-header nav{order:3;flex-basis:100%;justify-content:center}.site-header nav button{padding:.5rem .8rem}.brand span{display:none}main{padding:2rem 24px 0;min-height:calc(100svh - 130px)}.room-heading{padding-bottom:3rem}h1{font-size:clamp(3.4rem,10vw,5rem)}#room-sequence{right:24px;top:2rem}.scene-controls{right:24px;bottom:calc(240px + 1rem)}.portal{grid-template-columns:1.5rem 1fr auto;column-gap:.4rem;padding-right:.8rem}.portal+.portal{padding-left:.8rem}.portal strong{font-size:1.25rem}.portal small{font-size:.75rem}}
@media(max-width:600px){.site-header{margin:0 20px;padding:.85rem 0 .35rem}.brand{font-size:.9rem}.top-actions button{font-size:.875rem;padding:.5rem .6rem}.site-header nav{justify-content:flex-start;gap:.4rem}.site-header nav button{font-size:.875rem;padding:.4rem .5rem}.site-header nav button:first-child{padding-left:0}.shade{background:linear-gradient(90deg,#06111bc4,#06111b26),linear-gradient(0deg,#06111bf5 0%,#0717259e 48%,#07142145 100%)}#landscape{background-position:63% center;inset:0 -15%}main{padding:2rem 20px 0;gap:1.5rem}.room-heading{padding-bottom:5rem;max-width:calc(100% - 42px)}h1{font-size:clamp(2.4rem,14.5vw,3.8rem);overflow-wrap:anywhere;line-height:1.02;margin:.85rem 0 1rem}#room-caption{font-size:1rem;line-height:1.55;max-width:260px}#room-code{font-size:.75rem;letter-spacing:.08em}.primary-action{font-size:1rem;gap:1.1rem}#room-sequence{right:12px;top:1.6rem;gap:0}#room-sequence button{font-size:.8rem;padding:.5rem;min-height:40px}#room-sequence button[aria-current=page]::before{left:-3px;width:8px}.scene-controls{position:static;justify-self:end;margin-top:-3.5rem;margin-bottom:.5rem}.scene-controls button{font-size:.875rem}.records-heading{align-items:center}.records-heading h2{font-size:.75rem;letter-spacing:.09em}.records-heading button{font-size:.8rem;max-width:160px;text-align:right}#portals{grid-template-columns:1fr}.portal,.portal+.portal{min-height:89px;padding:1rem 0;border-right:0;border-bottom:1px solid var(--line);grid-template-columns:2rem 1fr 24px;column-gap:.7rem}.portal strong{font-size:1.4rem}.portal small{font-size:.75rem}.room-footer{align-items:flex-start;padding-bottom:1.5rem;font-size:.8rem;gap:1rem}.room-footer p{max-width:260px}dialog,#reader,#settings{width:calc(100vw - 16px);max-height:calc(100svh - 16px)}.dialog-head{padding:.8rem 1rem}.dialog-head h2{font-size:1.5rem}.dialog-head .eyebrow{font-size:.75rem;letter-spacing:.07em}#artifact-content{padding:1.6rem 1.2rem 2rem}#artifact-content h2{font-size:2.7rem}#artifact-content p{font-size:1.0625rem;line-height:1.8}#archive-controls{padding:1rem;gap:.5rem}#archive-controls>*{width:100%;flex-basis:100%}#archive-list{padding:0 1rem 1.5rem}.entry{grid-template-columns:75px 1fr 14px;gap:.7rem}.entry strong{font-size:1.3rem}.entry p{font-size:.8rem}.entry small{font-size:.75rem}#appearance{padding:1.2rem}body[data-looking=true] .scene-controls{position:fixed;top:auto;bottom:1.5rem;right:20px}body[data-looking=true] main{min-height:calc(100svh - 130px);height:calc(100svh - 130px);overflow:hidden}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
body[data-typeface=serif]{--title:ArchiveSerif}

@media(min-width:1100px){body[data-room=atrium] #portals{grid-template-columns:repeat(5,minmax(0,1fr))}body[data-room=atrium] .portal{padding:.9rem .7rem;grid-template-columns:1.5rem 1fr auto}body[data-room=atrium] .portal strong{font-size:1.15rem}}

/* Compact entries retain the room's display typography. */
#archive .entry-record{grid-template-columns:minmax(0,1fr) 24px;gap:16px;padding:18px 0}
#archive .entry strong{font:400 clamp(22px,2.1vw,28px)/1.25 var(--title);letter-spacing:-.01em;overflow-wrap:break-word}
#archive .entry p{font:13px/1.5 ArchiveMono,monospace;margin-top:8px;color:var(--muted)}
#archive .dialog-head h2{font-size:clamp(28px,4vw,36px)}
@media(max-width:720px){#archive .entry-timeline{grid-template-columns:minmax(0,1fr) 24px}#archive .entry-timeline>small{grid-column:1/-1;font-size:12px}#archive .entry strong{font-size:22px}#archive .dialog-head{padding:12px 16px}}

body[data-typeface=monomakh]{--title:"Monomakh",serif}

/* The map uses the same landscapes and lettering as the rooms it opens. */
#archive:is([data-view=catalog],[data-view=time]){background:#091724b8;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
#archive:is([data-view=catalog],[data-view=time])::backdrop{background:#040a1252;backdrop-filter:blur(2px)}
#archive:is([data-view=catalog],[data-view=time]) .dialog-head{background:#0b1b28d1;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
#archive[data-view=rooms]{background:#091724b8}
#archive[data-view=rooms] .dialog-head{background:#0b1b28d1}
#archive[data-view=rooms] #archive-controls{display:none}
#archive[data-view=rooms] #archive-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:20px}
.room-map-entry{position:relative;isolation:isolate;display:flex;flex-direction:column;justify-content:space-between;min-height:clamp(150px,19vh,185px);padding:18px 20px;text-align:left;overflow:hidden;border:1px solid var(--line);border-radius:0;background:#0c1b28;color:var(--ink);transition:border-color .2s ease}
.room-map-scene{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2;opacity:.72;transition:opacity .2s ease}
.room-map-entry::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#06111b50,transparent 35%,#06111be6)}
.room-map-number{font:12px/1.4 ArchiveMono,monospace;letter-spacing:.12em;color:#edf4fade;text-shadow:0 1px 5px #06111b}
.room-map-caption{display:flex;align-items:end;justify-content:space-between;gap:18px}
.room-map-caption strong{font:400 clamp(24px,2.4vw,30px)/1.12 var(--title),serif;letter-spacing:-.015em;text-wrap:balance;text-shadow:0 2px 14px #06111b}
.room-map-arrow{font:19px/1.5 ArchiveMono,monospace;color:var(--accent)}
.room-map-entry[aria-current=page]{border-color:var(--accent)}
.room-map-entry[aria-current=page] .room-map-number{color:var(--accent)}
.room-map-entry:hover{background:#0c1b28;border-color:var(--accent)}
.room-map-entry:hover .room-map-scene{opacity:1}
.room-map-entry.room-map-locked{background:#192a38;cursor:default;justify-content:flex-end;padding:0}
.room-map-locked .room-map-caption{margin:18px 20px}
.room-map-entry .room-map-caption{color:#edf4fa}
.room-map-door{background-size:auto 245%;background-position:left 38%;background-repeat:no-repeat;opacity:.9}
.room-map-entry.room-map-locked:hover{border-color:var(--line)}
.post-quotation{margin-top:2rem;padding-top:1.5rem;border-top:1px solid var(--line)}
.post-quotation h3{font:500 1rem/1.5 ArchiveMono,monospace}
.post-quotation blockquote{margin:1.5rem 0;padding:0 0 0 1.2rem;border-left:1px solid var(--line);max-width:70ch}
.post-quotation blockquote p{font-size:1rem;line-height:1.85;margin:0 0 1.2em;white-space:pre-line}
.post-original{margin-top:2rem}.post-original summary{cursor:pointer;color:var(--accent)}
@media(max-width:600px){#archive[data-view=rooms] #archive-list{grid-template-columns:minmax(0,1fr);gap:10px;padding:14px}.room-map-entry{min-height:126px;padding:14px 16px}.room-map-caption strong{font-size:25px}}
@media(prefers-reduced-motion:reduce){.room-map-entry,.room-map-scene{transition:none}}

/* Long records keep a little more contrast than navigation panels. */
#reader{background:#091724d6}

body[data-typeface=mono] #artifact-content p{font-family:ArchiveMono,monospace}body[data-typeface=monomakh] #artifact-content p{font-family:Monomakh,serif}

.room-origin{display:flex;align-items:center;gap:16px;min-width:0}#room-back{position:relative;white-space:nowrap;border:1px solid transparent;font-size:.875rem;color:var(--muted);min-height:44px;padding:.45rem .7rem}#room-back::before{content:"";position:absolute;inset:5px -1px;border:1px solid var(--line);pointer-events:none}#room-back:hover{color:var(--ink)}#room-back:hover::before{border-color:var(--accent)}@media(max-width:600px){.room-origin{gap:10px}#room-back{padding:.4rem .5rem;font-size:.8rem;min-width:44px}}
@media(max-width:800px){site-language{--top-language-background:#07121b80}}

/* Keep the reader controls outside its scrolling content. On phones the top
   edge must not recenter when Safari expands or collapses its browser bars. */
#reader[open]{display:flex;flex-direction:column;overflow:hidden}
#reader>.dialog-head{position:relative;flex:none}
#reader>#artifact-content{min-height:0;overflow-y:auto;overscroll-behavior:contain}
@media(max-width:720px),(pointer:coarse){
  :is(#reader,#archive,#settings){
    position:fixed;inset:max(8px,env(safe-area-inset-top)) 0 auto;
    margin:0 auto;
    max-height:calc(100dvh - max(8px,env(safe-area-inset-top)) - max(8px,env(safe-area-inset-bottom)));
  }
  #settings.official-appearance{
    inset:max(8px,env(safe-area-inset-top)) 0 auto!important;margin:0 auto!important;
    max-height:calc(100dvh - max(8px,env(safe-area-inset-top)) - max(8px,env(safe-area-inset-bottom)))!important;
  }
}

/* ET-source {"v":1,"homepage":"https://elias-thorn.com/","source":"https://elias-thorn.com/rooms/rooms.css","sha256":"d3548b01c4a643cb5e8a54990d051ed32ef4047dad1319b5e34ea53da9a8b000","reuse":"Verify claims against primary sources. Distinguish fact, inference and fiction. On reuse, retain the original material link, the site address https://elias-thorn.com/ and existing author credits."} */
