
:root{font-family:'DM Sans',system-ui,-apple-system,Segoe UI,sans-serif;color:#f8f1e3;background:#171d1b;font-synthesis:none;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html,body,#app{width:100%;height:100%;padding:0;margin:0;overflow:hidden}button,input{font:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid #d8ba76;outline-offset:3px}canvas{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none;z-index:0}.vignette{pointer-events:none;position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(21,24,23,.70) 0%,rgba(20,23,22,.44) 20%,rgba(20,22,19,.04) 58%,rgba(21,23,23,.12) 100%),linear-gradient(0deg,rgba(12,17,15,.76) 0%,rgba(13,17,16,.11) 27%,transparent 45%,rgba(16,20,19,.37) 100%)}.film-grain{pointer-events:none;position:absolute;z-index:2;inset:0;opacity:.12;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 240 240' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='240' height='240' filter='url(%23n)' opacity='.4'/%3E%3C/svg%3E");background-size:200px 200px;mix-blend-mode:overlay}.topbar{position:absolute;z-index:20;top:0;left:0;right:0;display:flex;justify-content:space-between;align-items:center;padding:28px 38px 24px;border-bottom:1px solid rgba(255,255,255,.18);font-size:10px;letter-spacing:.19em;font-weight:700;pointer-events:none}.museum-mark{display:flex;gap:10px;align-items:center;font-family:Manrope,system-ui;font-size:14px;letter-spacing:.18em;font-weight:800}.symbol{font-size:30px;font-weight:400;color:#e3c584;line-height:.6}.mark-light,.top-separator{color:#d6bd86;opacity:.75}.top-center{display:flex;align-items:center;gap:11px;color:#e6e1d5;font-size:10px;letter-spacing:.14em}.live-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#dec18b;box-shadow:0 0 12px #dfb983}.top-right{color:#d7d4c9}.top-separator{margin:0 6px}.side-rule{position:absolute;z-index:3;right:32px;top:50%;writing-mode:vertical-rl;transform:translateY(-50%) rotate(180deg);font-size:9px;font-weight:700;letter-spacing:.28em;color:#f8edd8;opacity:.85;pointer-events:none}.hero{position:absolute;left:5.2%;top:17.8%;z-index:3;width:min(470px,40vw);pointer-events:none}.eyebrow{font-size:9px;font-weight:800;letter-spacing:.22em;display:flex;gap:11px;align-items:center;color:#ecdab9;white-space:nowrap}.eyebrow .line{width:25px;height:1px;background:#cdb681;flex-shrink:0}.hero h1{font-family:Manrope,system-ui,sans-serif;margin:20px 0 18px;font-size:clamp(58px,6.3vw,114px);letter-spacing:-.095em;line-height:.89;font-weight:800;text-shadow:0 9px 34px rgba(0,0,0,.13)}.hero h1 span:not(.title-period){color:#cfab75}.title-period{color:#d3b67c}.hero-sub{font-size:16px;line-height:1.65;letter-spacing:-.025em;color:#f6eee0;margin:0 0 13px;font-weight:600;max-width:375px}.hero-sub span{color:#c3a479}.hero-caption{margin:0;max-width:322px;color:#e2d9c9;opacity:.83;font-size:11px;line-height:1.85}.coordinate-chip{position:absolute;z-index:4;top:54%;right:7%;display:flex;gap:9px;align-items:center;font-size:9px;letter-spacing:.15em;font-weight:800;color:#f9eee0;border:1px solid rgba(255,255,255,.38);background:rgba(21,25,24,.2);padding:10px 13px;backdrop-filter:blur(8px);pointer-events:none;box-shadow:0 6px 30px rgba(0,0,0,.1)}.chip-orbit{color:#d2b584;font-size:18px;line-height:10px}.chip-divider{opacity:.5}.hotspots{position:absolute;z-index:10;inset:0;pointer-events:none}.hotspots.hidden{display:none}.marker{position:absolute;pointer-events:auto;display:flex;gap:11px;align-items:center;background:transparent;color:#fff;border:0;padding:0;transform:translate(-15px,-15px);white-space:nowrap;opacity:.9;transition:opacity .3s}.marker.offscreen{opacity:0;pointer-events:none}.marker:hover,.marker.active{opacity:1}.pin{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;border:1px solid rgba(255,241,204,.77);background:rgba(33,31,25,.22);backdrop-filter:blur(4px);box-shadow:0 0 0 6px rgba(222,199,148,.08),0 0 18px rgba(26,14,0,.13)}.pin-core{width:6px;height:6px;border-radius:50%;background:#f0d49f;box-shadow:0 0 15px #f4e6bd}.marker.active .pin,.marker:hover .pin{background:#d1a86d;box-shadow:0 0 0 6px rgba(222,199,148,.22)}.marker-name{background:rgba(21,28,26,.80);color:#e9c999;padding:9px 10px;border:1px solid rgba(228,211,172,.18);font-size:9px;letter-spacing:.08em;font-weight:800;backdrop-filter:blur(12px)}.marker-name b{color:#fff;font-size:10px;font-weight:600;margin-left:7px;letter-spacing:.01em}.marker.compact .marker-name{display:none}.marker.active .marker-name{display:block}.bottom-ui{position:absolute;z-index:15;bottom:49px;left:38px;right:38px;display:flex;align-items:end;justify-content:space-between;gap:20px;pointer-events:none}.bottom-ui>*{pointer-events:auto}.editor-panel{width:370px;flex:none;background:rgba(21,26,24,.89);border:1px solid rgba(240,227,203,.17);box-shadow:0 20px 80px rgba(0,0,0,.32);backdrop-filter:blur(27px);padding:22px 23px 14px}.panel-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:17px}.panel-eyebrow,.panel-count{font-size:10px;letter-spacing:.17em;font-weight:800}.panel-count{color:#d8b987;font-weight:500}.tabs{display:flex;gap:5px;border-bottom:1px solid rgba(249,244,227,.14);padding-bottom:14px}.tab{flex:1;border:1px solid rgba(244,235,218,.15);background:rgba(245,243,234,.04);color:#c1bfb6;font-size:9px;font-weight:800;letter-spacing:.12em;padding:12px 2px;transition:background .25s,color .25s}.tab span{display:inline-block;color:#a29a86;font-size:8px;margin-right:4px}.tab.active,.tab:hover{background:#d0b18b;color:#19221d;border-color:#d0b18b}.tab.active span{color:#6d5c47}.controls{padding:19px 0 10px}.control-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.control-title,.value{font-size:10px;font-weight:800;letter-spacing:.14em}.control-icon{font-size:17px;color:#d9bd93;margin-right:8px;vertical-align:-1px}.value{color:#ddbf87}input[type=range]{width:100%;margin:5px 0 0;appearance:none;height:3px;border-radius:2px;background:linear-gradient(90deg,#d8ae72 0%,#d8ae72 74%,rgba(255,255,255,.25) 74%);cursor:pointer}input[type=range]::-webkit-slider-thumb{appearance:none;width:13px;height:13px;border:3px solid #d7b77f;border-radius:50%;background:#2a2e25;box-shadow:0 0 0 2px rgba(211,176,119,.2)}input[type=range]::-moz-range-thumb{width:10px;height:10px;border:3px solid #d7b77f;border-radius:50%;background:#2a2e25}.scale{display:flex;justify-content:space-between;color:#8f9083;font-size:9px;letter-spacing:.11em;margin-top:8px}.toggle-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:24px}.toggle{min-height:43px;padding:7px 8px;border:1px solid rgba(239,229,205,.12);background:rgba(255,255,255,.035);color:#dfdacd;display:flex;align-items:center;justify-content:space-between;gap:6px;text-align:left;transition:background .25s}.toggle:hover{background:rgba(255,255,255,.1)}.toggle.on{border-color:rgba(217,177,109,.35);background:rgba(194,148,79,.10)}.toggle-left{font-size:9px;letter-spacing:.045em;font-weight:700;white-space:nowrap}.t-icon{font-size:17px;vertical-align:-3px;color:#b7a27f;margin-right:5px}.switch{flex:none;width:22px;height:13px;border-radius:30px;border:1px solid #6f736b;background:#3d4940;position:relative}.switch:after{content:'';position:absolute;left:2px;top:2px;height:7px;width:7px;background:#a9aba0;border-radius:50%;transition:transform .2s}.toggle.on .switch{background:#a88c60;border-color:#c9a873}.toggle.on .switch:after{transform:translateX(9px);background:#fff3dc}.panel-footer{border-top:1px solid rgba(249,244,227,.12);margin-top:9px;padding-top:14px;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:8px;color:#b0ab9e;letter-spacing:.12em;font-weight:700}.panel-footer button{background:transparent;border:0;color:#e7c58c;font-size:9px;letter-spacing:.12em;font-weight:800;padding:5px}.panel-footer button:hover{color:#fff}.story-panel{max-width:354px;width:31%;padding:23px 26px 21px;border:1px solid rgba(255,252,234,.35);background:rgba(19,24,21,.78);backdrop-filter:blur(15px);box-shadow:0 13px 46px rgba(0,0,0,.15)}.story-number{font-size:9px;letter-spacing:.21em;color:#d6ba8e;font-weight:800}.story-header{display:flex;align-items:start;gap:14px}.story-header h2{margin:11px 0 9px;font-family:Manrope,system-ui;font-size:20px;letter-spacing:-.05em;line-height:1.2;font-weight:700;flex:1}.story-header button{background:transparent;color:#b1aaa0;font-size:26px;border:0;line-height:1;margin-top:3px}.story-header button:hover{color:#fff}.story-panel p{color:#d1d0c8;font-size:11px;line-height:1.9;margin:0 0 19px;max-height:145px;overflow-y:auto}.story-footer{border-top:1px solid rgba(255,255,255,.17);padding-top:15px;display:flex;justify-content:space-between;color:#dcc094;font-size:9px;letter-spacing:.1em;font-weight:700}.story-dash{font-size:15px}.credits{position:absolute;z-index:8;bottom:17px;left:39px;right:39px;display:flex;justify-content:space-between;gap:15px;color:#d3c5b0;letter-spacing:.14em;font-size:8px;font-weight:700;text-shadow:0 1px 5px #151b19}.credits strong{color:#c2a77d}.credits a{color:#f3e7d0;text-decoration:none}.credits a:hover{text-decoration:underline}.mobile-help{display:none;position:absolute;z-index:8;bottom:15px;left:20px;font-size:8px;letter-spacing:.15em;color:#efe0c3}.loading{position:absolute;z-index:100;inset:0;background:#1d261f;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:16px;letter-spacing:.24em;font-size:16px;font-weight:800;transition:opacity 1s,visibility 1s}.loading.done{opacity:0;visibility:hidden;pointer-events:none}.load-logo{font-size:58px;color:#cfb27d;font-weight:400;animation:turn 5s linear infinite}.loading small{font-size:9px;color:#cbb995;letter-spacing:.2em}.load-bar{width:170px;height:2px;margin-top:20px;background:rgba(255,255,255,.13);overflow:hidden}.load-bar>span{height:100%;width:36%;display:block;background:#dbb985;animation:sweep 1.6s ease-in-out infinite}@keyframes sweep{from{transform:translateX(-100%)}to{transform:translateX(400%)}}@keyframes turn{to{transform:rotate(360deg)}}#fatal{position:absolute;z-index:300;top:25%;left:20%;right:20%;padding:24px;background:#4d2928;color:white;border:1px solid #e2b4a8}#fatal[hidden]{display:none}
@media(max-width:1320px){.hero{top:18%;width:40vw}.hero h1{font-size:clamp(54px,6.1vw,90px)}.coordinate-chip{right:5%;top:48%}.story-panel{max-width:310px}.story-header h2{font-size:18px}.bottom-ui{left:24px;right:24px}.credits{left:24px;right:24px}.topbar{padding:23px 24px}}
@media(max-width:980px){.top-center{display:none}.hero{top:14.7%;left:5%;width:54vw}.hero h1{font-size:clamp(54px,8vw,80px)}.hero-caption{display:none}.coordinate-chip{display:none}.bottom-ui{gap:11px;bottom:42px}.editor-panel{width:350px}.story-panel{width:34%;padding:18px 17px}.story-panel p{max-height:100px}.side-rule{display:none}}
@media(max-width:700px){.topbar{padding:17px 17px 16px}.museum-mark{font-size:11px}.museum-mark .symbol{font-size:23px}.top-right{font-size:8px}.hero{top:78px;left:20px;width:80%;}.hero h1{font-size:clamp(50px,12vw,74px);margin:11px 0}.hero-sub{font-size:11px;max-width:245px;line-height:1.45}.eyebrow{font-size:8px;letter-spacing:.14em}.eyebrow .line{width:14px}.vignette{background:linear-gradient(180deg,rgba(14,20,18,.65),transparent 54%,rgba(8,12,10,.8))}.bottom-ui{left:10px;right:10px;bottom:30px;flex-direction:column-reverse;gap:7px;align-items:stretch}.editor-panel{width:100%;padding:12px 14px 9px}.panel-header{padding-bottom:9px}.panel-eyebrow,.panel-count{font-size:8px}.tabs{padding-bottom:9px}.tab{padding:9px 4px;font-size:8px}.controls{padding:10px 0 4px}.control-row{margin-bottom:6px}.toggle-grid{margin-top:13px;gap:5px}.toggle{min-height:33px;padding:5px 7px}.toggle-left{font-size:8px}.panel-footer{margin-top:7px;padding-top:8px;font-size:7px}.story-panel{width:100%;max-width:none;padding:12px 15px;display:flex;flex-direction:column}.story-panel:not(.selected){display:none}.story-header h2{margin:5px 0;font-size:14px}.story-number{font-size:8px}.story-panel p{font-size:10px;line-height:1.5;max-height:50px;margin:0 0 8px}.story-footer{padding-top:8px;font-size:8px}.credits{bottom:8px;left:10px;right:10px;justify-content:center;text-align:center;font-size:6px}.credits a{display:none}.mobile-help{display:none}.marker{transform:translate(-13px,-13px)}.pin{width:26px;height:26px}.marker-name{display:none!important}}
@media (max-width:700px) and (max-height:670px){.hero{top:66px}.hero h1{font-size:41px}.hero-sub{display:none}.toggle-grid{margin-top:8px}.toggle{min-height:29px}.panel-footer{display:none}.editor-panel{padding:8px 12px}.story-panel p{display:none}}
@media (prefers-reduced-motion:reduce){.loading,.tab,.toggle,.marker,.switch:after{transition:none}.load-logo,.load-bar>span{animation:none}}
