:root{color-scheme:dark;--bg:#171b1d;--panel:rgba(17,22,23,.84);--cream:#f3ede2;--muted:#c4c0b8;--rust:#dba379;--border:rgba(241,225,205,.18);--glass:rgba(17,22,23,.58);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif}
*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden;background:#202e37;color:var(--cream)}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--rust);outline-offset:3px}button:disabled{cursor:not-allowed;opacity:.5}a{color:#ffd1a5}.app{position:relative;width:100vw;height:100dvh;overflow:hidden}canvas{position:absolute;inset:0;width:100%;height:100%;display:block;touch-action:none;cursor:grab}canvas:active{cursor:grabbing}.vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(10,13,14,.58) 0%,rgba(15,18,19,.17) 35%,transparent 58%,rgba(10,13,14,.20) 100%),linear-gradient(0deg,rgba(6,10,12,.57),transparent 27%,transparent 83%,rgba(4,8,10,.43));z-index:1}.grain{position:absolute;inset:0;pointer-events:none;z-index:2;opacity:.13;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.75' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)' opacity='.3'/%3E%3C/svg%3E")}.interface{position:absolute;inset:0;z-index:3;pointer-events:none}.interface button,.interface input,.interface select,.interface dialog,.markers button{pointer-events:auto}.topbar{position:absolute;top:0;left:0;right:0;height:78px;border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 clamp(19px,3.1vw,56px);background:linear-gradient(180deg,rgba(8,14,16,.35),rgba(8,14,16,0))}.identity,.header-actions{display:flex;align-items:center;gap:16px}.logo{height:37px;width:37px;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:23px;letter-spacing:-3px;border:1px solid rgba(255,255,255,.54)}.logo span{color:var(--rust)}.brand{font-size:13px;font-weight:750;letter-spacing:.24em}.brand em{font-style:normal;color:var(--rust);margin:0 6px}.divider-v{height:21px;width:1px;background:var(--border);margin:0 8px}.header-caption,.live-label{font-size:10px;font-weight:650;letter-spacing:.22em;color:rgba(255,244,228,.69)}.live-dot{width:7px;height:7px;border-radius:50%;background:#9ecca6;box-shadow:0 0 12px rgba(132,219,147,.7)}.text-button,.square-button{border:1px solid rgba(255,255,255,.25);background:rgba(16,20,22,.48);color:var(--cream);font-size:11px;letter-spacing:.12em;font-weight:650}.text-button{padding:11px 14px}.square-button{width:36px;height:36px;font-size:16px}.hero{position:absolute;top:clamp(110px,17vh,200px);left:clamp(22px,5vw,83px);width:min(470px,38vw);text-shadow:0 3px 22px rgba(0,0,0,.22)}.eyebrow{font-size:10px;letter-spacing:.30em;font-weight:750;color:#e5ded1;display:flex;align-items:center;gap:12px}.mark{height:7px;width:7px;transform:rotate(45deg);background:var(--rust)}.line-small{height:1px;width:37px;background:#fff6e5;opacity:.52}.hero h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(66px,8.4vw,130px);line-height:.91;letter-spacing:-.072em;margin:24px 0 25px}.hero h1 span{font-style:italic;color:#f5cba9}.hero-subtitle{font-size:11px;letter-spacing:.20em;font-weight:700;margin:0 0 19px;color:#e6d4c4}.diamond{font-size:7px;color:var(--rust);margin:0 9px}.hero-desc{font-size:13px;line-height:1.86;color:#e6ded1;max-width:350px;margin:0 0 25px}.explore-btn{display:flex;gap:34px;align-items:center;justify-content:space-between;min-width:236px;padding:15px 18px;border:1px solid rgba(236,213,188,.76);background:rgba(22,27,28,.68);backdrop-filter:blur(16px);color:#fff4e6;font-size:11px;font-weight:720;letter-spacing:.08em;transition:background .2s,transform .2s}.explore-btn:hover{background:rgba(95,63,48,.8);transform:translateY(-2px)}.arrow-symbol{font-size:19px;color:var(--rust)}.control-panel{pointer-events:auto;position:absolute;top:105px;right:clamp(18px,3.15vw,57px);width:268px;background:var(--panel);border:1px solid rgba(245,222,192,.18);box-shadow:0 16px 60px rgba(0,0,0,.22);backdrop-filter:blur(20px);padding:24px}.panel-heading{display:flex;align-items:center;justify-content:space-between;padding-bottom:19px;border-bottom:1px solid var(--border);font-size:10px;font-weight:800;letter-spacing:.23em}.panel-ver{font-size:10px;color:var(--rust)}.section-h{margin-top:22px;font-size:10px;letter-spacing:.22em;font-weight:750;color:#d7afa0}.space-top{margin-top:26px}.mode-buttons{display:flex;margin-top:12px;gap:7px}.mode-btn{flex:1;padding:10px;border:1px solid var(--border);background:transparent;color:rgba(255,246,235,.76);font-size:12px}.mode-btn.active{background:#f0dbc5;color:#292522;border-color:#f0dbc5;font-weight:700}.control-field{margin-top:17px}.field-label{display:flex;align-items:center;justify-content:space-between}.field-label label,.field-name,.switch-row label{font-size:12px;color:#e7e3dc}.field-label output{font-size:13px;font-weight:650;letter-spacing:.07em;color:#efc29c;font-variant-numeric:tabular-nums}input[type=range]{appearance:none;width:100%;height:3px;background:linear-gradient(90deg,#d9a37f 0 68%,rgba(255,255,255,.25) 68%);margin:20px 0 14px;cursor:pointer}input[type=range]::-webkit-slider-thumb{appearance:none;height:13px;width:13px;border-radius:50%;background:#f5ddc8;border:2px solid #b37c63}input[type=range]::-moz-range-thumb{height:12px;width:12px;border-radius:50%;background:#f5ddc8;border:1px solid #b37c63}.range-ends{display:flex;justify-content:space-between;font-size:10px;color:#aaa8a2}.weather-field{display:flex;align-items:center;justify-content:space-between;margin:23px 0 19px}.weather-field select{background:#2a3031;color:#f7ecdf;border:1px solid rgba(255,255,255,.22);min-width:116px;padding:9px 10px;font-size:12px}.switch-row{display:flex;align-items:center;justify-content:space-between;padding:11px 0;border-top:1px solid rgba(255,255,255,.075)}.toggle{appearance:none;width:33px;height:18px;flex:none;border-radius:20px;background:rgba(255,255,255,.25);position:relative;cursor:pointer;transition:background .2s}.toggle::after{content:'';position:absolute;width:12px;height:12px;top:3px;left:3px;border-radius:50%;background:#f2e8dc;transition:transform .2s}.toggle:checked{background:#af704f}.toggle:checked::after{transform:translateX(15px)}.panel-bottom{display:flex;gap:8px;margin-top:16px}.outline-btn{flex:1;display:flex;align-items:center;gap:8px;justify-content:center;padding:10px 7px;background:rgba(255,255,255,.07);border:1px solid var(--border);color:#f1e7d9;font-size:10px}.outline-btn span:first-child{font-size:17px;color:#d7aa8a}.view-bar{position:absolute;bottom:72px;left:clamp(19px,3.1vw,56px);display:flex;align-items:stretch;gap:7px}.view-caption{align-self:center;font-size:10px;letter-spacing:.19em;color:#dedbd5;font-weight:750;margin-right:15px}.view-btn{border:1px solid rgba(245,236,220,.23);background:rgba(17,22,23,.74);backdrop-filter:blur(12px);color:#e2dcd1;display:flex;flex-direction:column;gap:12px;min-width:131px;text-align:left;padding:15px 15px;font-size:11px;transition:border .2s,background .2s}.view-btn:hover,.view-btn.selected{border-color:#dcb18d;background:rgba(75,57,48,.78)}.view-index{font-size:10px;font-weight:720;color:#db9e73}.bottom-left{position:absolute;bottom:25px;left:clamp(19px,3.1vw,56px);display:flex;align-items:center;gap:12px;font-size:10px;letter-spacing:.14em;color:#ddd6ca}.bottom-line{width:26px;height:1px;background:#d5a27b}.bottom-right{position:absolute;bottom:22px;right:clamp(19px,3.1vw,56px);display:flex;align-items:center;gap:9px;font-size:10px;letter-spacing:.12em;color:#ece8df}.bottom-right #quality{color:#c6d5bf}.separator{opacity:.45}.help-button{width:25px;height:25px;border:1px solid #bbb6aa;border-radius:50%;color:#f7efdf;background:rgba(20,20,20,.4);margin-left:6px}.markers{position:absolute;inset:0;pointer-events:none}.marker{position:absolute;transform:translate(-50%,-50%);width:26px;height:26px;border:1px solid #faf2e4;background:rgba(27,28,28,.53);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff8ec;box-shadow:0 0 0 6px rgba(255,255,255,.11),0 3px 12px rgba(0,0,0,.5);font-size:13px;transition:transform .2s,background .2s}.marker:hover{transform:translate(-50%,-50%) scale(1.2);background:#af704f}.info-card{pointer-events:auto;position:absolute;left:clamp(24px,5vw,84px);bottom:190px;width:min(335px,calc(100vw - 48px));padding:22px;background:rgba(17,22,23,.91);border:1px solid rgba(240,216,189,.24);box-shadow:0 18px 50px rgba(0,0,0,.3);backdrop-filter:blur(15px)}.info-card[hidden]{display:none}.info-head{display:flex;justify-content:space-between;align-items:center;color:#d7a381;font-size:10px;letter-spacing:.13em}.info-head button{border:0;background:transparent;color:#fff;font-size:25px;padding:0 4px}.info-card h2{font-family:Georgia,serif;font-weight:400;font-size:27px;margin:14px 0}.info-card p{font-size:12px;line-height:1.8;color:#e6ddd2}.heritage-annotation{font-size:9px;letter-spacing:.1em;padding-top:12px;border-top:1px solid var(--border);color:#c9bcac}.dialog{position:fixed;max-width:min(480px,calc(100% - 30px));border:1px solid #7a6251;background:#181e20;color:#eee3d4;padding:26px;box-shadow:0 25px 100px #000a;line-height:1.7}.dialog::backdrop{background:rgba(2,5,6,.78);backdrop-filter:blur(5px)}.dialog-head{display:flex;justify-content:space-between;font-size:11px;letter-spacing:.25em;color:#d9b393}.dialog-head button{background:transparent;border:0;color:#eee;font-size:26px}.dialog h2{font:normal 37px Georgia,serif;margin:22px 0}.dialog h3{font-size:10px;letter-spacing:.22em;color:#d9ad86}.dialog p{font-size:13px;color:#ddd7cc}.dialog-foot{font-size:9px!important;letter-spacing:.15em;border-top:1px solid #555;padding-top:13px;margin-top:19px}.loading{position:absolute;z-index:10;inset:0;background:#191d1e;display:flex;align-items:center;justify-content:center;flex-direction:column;transition:opacity .65s}.loading.done{opacity:0;pointer-events:none}.load-symbol{font-size:70px;font-weight:750;letter-spacing:-10px}.load-symbol span{color:#be8666}.loading p{font-size:11px;letter-spacing:.24em;color:#b8ad9f;text-transform:uppercase}.loadbar{height:2px;width:190px;background:#3b4140;margin-top:20px;overflow:hidden}.loadbar i{display:block;background:#d5a27b;height:100%;width:100%;animation:loading 1.5s ease-out}@keyframes loading{from{width:0}to{width:100%}}.error{position:absolute;z-index:12;inset:0;background:#181d1f;padding:15vh 10vw;color:#ffd4c3;font-size:20px}.error[hidden]{display:none}#showui{position:absolute;z-index:5;top:22px;right:24px;padding:12px 15px;background:rgba(20,23,23,.7);color:#f7ede0;border:1px solid #bca78e;font-size:10px;letter-spacing:.14em}#showui[hidden]{display:none}
@media(max-height:780px) and (min-width:801px){.hero{top:105px}.hero h1{font-size:clamp(62px,6.7vw,90px)}.hero-desc{line-height:1.55}.control-panel{top:87px;padding:17px}.section-h{margin-top:14px}.space-top{margin-top:17px}.view-bar{bottom:61px}.view-btn{gap:7px;padding:10px 13px}.info-card{bottom:155px}}
@media(max-width:1050px){.hero{width:min(390px,43vw)}.hero h1{font-size:clamp(58px,8vw,100px)}.control-panel{width:240px;padding:18px}.view-bar{bottom:65px}.view-caption{display:none}.view-btn{min-width:109px;padding:12px}.header-caption{display:none}}
@media(max-width:800px){.topbar{height:60px;padding:0 16px}.identity,.header-actions{gap:8px}.header-caption,.divider-v,.live-label,.live-dot{display:none}.brand{font-size:11px}.logo{width:31px;height:31px;font-size:20px}.hero{top:86px;left:20px;width:min(330px,calc(100vw - 40px))}.hero h1{font-size:clamp(61px,13vw,83px);margin:14px 0}.hero-desc{display:none}.hero-subtitle{font-size:9px;letter-spacing:.13em}.explore-btn{padding:12px 14px;min-width:206px;font-size:10px}.control-panel{top:auto;bottom:82px;left:12px;right:12px;width:auto;padding:14px 15px 12px;display:grid;grid-template-columns:1fr 1fr;gap:6px 16px;max-height:32vh;overflow:auto}.panel-heading,.control-panel .section-h{display:none}.weather-field{display:flex;grid-column:1 / -1;margin:2px 0}.panel-bottom{display:flex;grid-column:1 / -1;margin-top:4px}.switch-row{display:flex;padding:4px 0}.mode-buttons{margin-top:0;grid-column:1;align-self:center}.control-field{margin-top:0;grid-column:2}.field-label label{font-size:10px}.range-ends{font-size:9px}.control-field input[type=range]{margin:13px 0 8px}.view-bar{bottom:17px;left:12px;right:12px;gap:5px}.view-btn{flex:1;min-width:0;padding:9px 7px;gap:4px;font-size:9px}.bottom-left,.bottom-right{display:none}.marker{width:21px;height:21px}.info-card{left:12px;bottom:calc(32vh + 100px);max-width:calc(100vw - 24px);padding:14px}.info-card h2{font-size:23px}}
@media(max-width:450px){.hero h1{font-size:60px}.hero{top:73px}.hero-subtitle{margin-bottom:10px}.eyebrow{font-size:8px}.control-panel{bottom:73px;max-height:23vh}.view-bar{bottom:13px}.view-btn{font-size:8px}.view-index{font-size:9px}.explore-btn{min-width:0}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important}}
[hidden]{display:none!important}
