@font-face{font-family:FallbackSerif;src:local("Iowan Old Style"),local("Baskerville"),local("Georgia");font-display:swap}
:root{color-scheme:dark;--ink:#e9e5dc;--muted:#a7a6a8;--accent:#c6ac85}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;background:#05070b;color:var(--ink)}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;overflow:hidden}
button,select,input{font:inherit}button,select{color:inherit}button,a,select,input{touch-action:manipulation}
button,select{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:5px}
#experience{position:relative;width:100%;height:100%;min-height:520px;isolation:isolate}
#stage,.vignette{position:absolute;inset:0}#stage canvas{display:block;width:100%;height:100%}
.vignette{pointer-events:none;background:linear-gradient(180deg,rgba(5,7,11,.22),transparent 23%,transparent 59%,rgba(5,7,11,.84)),radial-gradient(ellipse at 50% 43%,transparent 40%,rgba(5,7,11,.42))}
header{position:absolute;top:36px;left:44px;right:44px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.wordmark{font-size:21px;letter-spacing:-1px;font-weight:600}.wordmark>span:not(.dot){font-weight:300;color:#b8b5b1}.dot{color:var(--accent)}
.edition{display:flex;gap:36px;font-size:10px;letter-spacing:1.8px;color:#aba9a6}

.eyebrow{font-size:10px;letter-spacing:2.5px;color:var(--accent);margin:0 0 17px}
h1{font-family:FallbackSerif,Georgia,serif;font-weight:400;font-size:clamp(42px,5.8vw,82px);letter-spacing:-2.2px;line-height:1.08;margin:0}h1 span{color:var(--accent)}



footer{position:absolute;left:44px;right:44px;bottom:25px}
.transport{display:flex;align-items:center;gap:18px;border-top:1px solid #ffffff20;border-bottom:1px solid #ffffff13;padding:15px 0}
button{background:transparent;border:0;min-width:38px;height:40px;padding:0;font-size:23px;line-height:1;border-radius:4px}button:hover{background:#ffffff0b}
#play-icon{display:inline-block;font-size:18px;width:24px}.timeline-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
input[type=range]{flex:1;min-width:50px;accent-color:var(--accent);height:20px;cursor:ew-resize}
output{font-size:11px;color:#b9b6b1;min-width:36px;font-variant-numeric:tabular-nums}
.speed-label{font-size:11px;color:var(--muted);margin-left:16px}select{background:#0b0d12;border:1px solid #ffffff26;border-radius:4px;height:34px;min-width:61px;padding:0 7px;font-size:12px}

#loading,#error{position:absolute;left:50%;top:43%;transform:translate(-50%,-50%);font-family:FallbackSerif,Georgia,serif;font-size:23px;text-align:center;width:min(80%,460px);line-height:1.5}#loading span{color:var(--accent)}
[hidden]{display:none!important}
@media(max-width:640px){header{top:24px;left:22px;right:22px}.wordmark{font-size:19px}.edition{gap:8px;flex-direction:column;text-align:right;font-size:8px;letter-spacing:1.3px}h1{font-size:48px;letter-spacing:-1.4px}.eyebrow{font-size:8px;letter-spacing:1.8px}footer{left:22px;right:22px;bottom:20px}.transport{gap:8px;padding:9px 0}.speed-label{display:none}button{min-width:36px}select{min-width:52px}}
@media(max-height:600px) and (min-width:641px){header{top:20px}h1{font-size:48px}.eyebrow{margin-bottom:9px}footer{bottom:16px}}
/* Dated archive and launch surface */
body{overflow:auto}#experience{height:100svh;min-height:560px}
header{flex-wrap:wrap;row-gap:10px}.wordmark{display:flex;align-items:center;min-height:44px}
.archive-nav{display:flex;gap:12px;margin-left:auto}.archive-nav button{font-size:12px;letter-spacing:.3px;min-height:44px;padding:0 12px}.archive-nav button span{margin-left:10px;color:var(--accent)}
button:disabled{cursor:default;color:#858386;background:transparent}.archive-nav button:disabled{opacity:.55}
.edition{flex-basis:100%;justify-content:flex-end;gap:26px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.transport button,.transport select{min-width:44px;min-height:44px}.transport input{min-height:44px}
.waiting{display:flex;flex-direction:column;justify-content:center;padding:150px 44px 130px;overflow:hidden}
.waiting-glow{position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 75% 40%,#a8865421,transparent 42%),radial-gradient(ellipse at 35% 70%,#52738014,transparent 50%)}
.waiting-glow:after{content:"";position:absolute;width:4px;height:4px;border-radius:50%;background:#e0c6a2;top:36%;left:74%;box-shadow:0 0 34px 10px #c6ac851b}
.launch-message{width:min(100%,780px);margin:0 auto}.launch-message h1{font-size:clamp(60px,7.5vw,108px);letter-spacing:-2.8px}
.launch-message .eyebrow{margin-bottom:24px}.launch-copy{font-size:15px;line-height:1.9;color:#b4b0ac;margin:25px 0 0}
.release-note{display:flex;flex-wrap:wrap;gap:16px 28px;font-size:10px;letter-spacing:1.6px;margin:48px 0 0;color:var(--accent)}.release-note span{color:#9c9b9e}
.waiting-footer{position:absolute;bottom:35px;left:44px;right:44px;display:flex;justify-content:space-between;gap:24px;color:#a7a3a0;font-size:9px;letter-spacing:1.7px}.waiting-footer span:last-child{font-family:FallbackSerif,Georgia,serif;font-style:italic;font-size:16px;letter-spacing:0}
.return-link{display:inline-flex;align-items:center;min-height:44px;margin-top:30px;font-size:13px;color:var(--accent)}
dialog{background:#101217;color:var(--ink);border:1px solid #c6ac8538;border-radius:14px;padding:30px;width:min(460px,calc(100% - 32px));max-height:calc(100svh - 32px);overflow:auto;box-shadow:0 28px 100px #000a}
dialog::backdrop{background:#020408bb;backdrop-filter:blur(8px)}.calendar-top{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.calendar-top .eyebrow{font-size:9px;letter-spacing:1.8px;margin:0 0 13px}.calendar-top h2{font-family:FallbackSerif,Georgia,serif;font-weight:400;line-height:1.2;font-size:30px;letter-spacing:-.5px;margin:0}.calendar-top h2 span{color:var(--accent)}
#close-calendar{flex-shrink:0;min-width:44px;min-height:44px;margin:-10px -12px 0 0;color:#bcb7b2}#calendar-description{font-size:12px;line-height:1.8;color:#aaa7a5;margin:17px 0 25px;max-width:310px}
.month-controls{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:19px}.month-controls button{min-width:44px;min-height:44px;font-size:20px}.month-controls input{font:inherit;font-size:14px;color:var(--ink);background:#191c22;border:1px solid #ffffff20;border-radius:5px;padding:10px;min-height:44px;min-width:0;width:210px;max-width:100%}
.weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.weekdays{margin-bottom:10px;font-size:10px;color:#aaa7a4;text-align:center}.calendar-days button,.calendar-days a{display:flex;position:relative;align-items:center;justify-content:center;font-size:12px;min-width:0;min-height:44px;height:44px;border-radius:50%;font-variant-numeric:tabular-nums}.calendar-days button:disabled{color:#7f7e83}.calendar-days .has-art{color:#e3d2b7;background:#c6ac851c}.calendar-days .has-art:after{content:"";position:absolute;bottom:6px;width:3px;height:3px;border-radius:50%;background:var(--accent)}.calendar-days .has-art:hover{background:#c6ac8538}.calendar-days [aria-current=date]{outline:1px solid var(--accent);outline-offset:-2px}
.calendar-note{font-size:11px;color:#aaa7a5;margin:22px 0}.calendar-bottom{border-top:1px solid #ffffff14;padding-top:18px;display:flex;justify-content:space-between;gap:12px;font-size:10px;color:#b4afaa}.calendar-bottom i{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--accent);margin-right:7px}
@media(max-width:640px){
 header{left:22px;right:22px;top:max(16px,env(safe-area-inset-top));gap:2px 10px}.wordmark{font-size:18px}.archive-nav{gap:0}.archive-nav button{font-size:11px;padding:0 8px}.archive-nav button span{margin-left:5px}.edition{flex-direction:row;font-size:8px;margin-top:5px;gap:17px}
 .waiting{padding:140px 26px 125px}.launch-message h1{font-size:clamp(52px,12vw,74px);letter-spacing:-1.8px}.launch-message .eyebrow{font-size:8px;letter-spacing:1.6px}.launch-copy{font-size:13px}.release-note{flex-direction:column;gap:12px;margin-top:35px;font-size:9px}.waiting-footer{left:26px;right:26px;bottom:max(28px,env(safe-area-inset-bottom));font-size:8px;letter-spacing:1px}.waiting-footer span:last-child{font-size:14px}
 footer{bottom:max(20px,env(safe-area-inset-bottom))}.transport{gap:4px}.transport select{min-width:52px}dialog{padding:22px 16px}.calendar-top{padding:0 6px}.calendar-top h2{font-size:26px}#calendar-description{padding:0 6px}.calendar-days{gap:0}.calendar-days button,.calendar-days a{font-size:11px}.calendar-bottom{font-size:9px}
}
@media(max-width:360px){.archive-nav button{padding:0 6px;font-size:10px}.archive-nav button span{display:none}.calendar-days button,.calendar-days a{min-height:40px;height:40px}.launch-message h1{font-size:52px}}
@media(prefers-reduced-motion:reduce){dialog::backdrop{backdrop-filter:none}}
@media(max-width:360px){dialog{width:calc(100% - 8px);padding:24px 0}.calendar-top,#calendar-description,.month-controls,.calendar-note,.calendar-bottom{margin-left:12px;margin-right:12px}.calendar-days button,.calendar-days a{min-height:44px;height:44px}}
@media(max-width:360px){dialog{max-width:calc(100% - 8px)}}
