:root{font-family:Arial,Helvetica,sans-serif;color:#efe8d9;background:#111813;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--gold:#d6b880;--dim:#a9ad9f;--line:rgba(232,220,195,.19)}
*{box-sizing:border-box}html,body,#app{height:100%;width:100%;margin:0;overflow:hidden}button,input{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:4px}a{color:inherit}#app{position:relative;isolation:isolate}#viewport{position:absolute;inset:0}#viewport canvas{display:block;width:100%;height:100%;outline:0}.grain{position:absolute;inset:0;pointer-events:none;background-image:repeating-linear-gradient(25deg,rgba(255,255,255,.018) 0,rgba(255,255,255,.018) 1px,transparent 1px,transparent 5px);opacity:.15;mix-blend-mode:screen}.vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(13,20,18,.55) 0%,rgba(11,20,18,.12) 31%,transparent 61%),linear-gradient(0deg,rgba(9,15,13,.6) 0%,transparent 32%,rgba(8,12,11,.24) 100%)}
.topbar{position:absolute;z-index:10;left:0;right:0;top:0;height:90px;padding:0 46px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(246,226,193,.16);background:linear-gradient(180deg,rgba(8,17,15,.58),rgba(13,21,18,.12))}.brand{font-weight:750;font-size:23px;letter-spacing:.15em;text-decoration:none;display:inline-flex;align-items:center;gap:16px}.brand-symbol{font-size:33px;color:var(--gold);font-weight:400}.brand-period{color:var(--gold)}.top-middle{display:flex;align-items:center;gap:17px;color:#dad2bf;font-size:9px;letter-spacing:.21em;font-weight:700;white-space:nowrap}.top-line{height:1px;width:28px;background:var(--gold);opacity:.65}.top-right{display:flex;align-items:center;gap:9px;font-size:9px;font-weight:bold;letter-spacing:.14em;white-space:nowrap}.live-dot{width:6px;height:6px;border-radius:100%;background:#bedc9f;box-shadow:0 0 9px #b3da90}.icon-button{width:35px;height:35px;border:1px solid var(--line);border-radius:50%;color:#e9e1cd;background:rgba(28,35,31,.4);font-size:16px;margin-left:19px}.icon-button:hover{background:rgba(236,195,128,.18)}
.intro{position:absolute;z-index:6;top:clamp(125px,16%,212px);left:clamp(32px,3.6vw,74px);width:min(410px,38vw);pointer-events:none}.eyebrow{display:flex;align-items:center;gap:11px;font-size:11px;letter-spacing:.21em;font-weight:700;color:#e4d7bf}.eyebrow-line{display:inline-block;width:27px;height:1px;background:var(--gold)}.chapter{margin-top:43px;color:#e3ba80;font-size:10px;letter-spacing:.18em;font-weight:700;display:flex;gap:11px;align-items:center}.chapter i{width:35px;height:1px;background:rgba(228,196,149,.5)}.intro h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(50px,4.8vw,83px);letter-spacing:-.057em;line-height:.99;white-space:nowrap;margin:22px 0 27px;text-shadow:0 2px 26px rgba(0,0,0,.33)}.intro h1 em{color:#ebcf9f;font-weight:400}.intro p{font-size:14px;line-height:1.8;letter-spacing:.013em;color:#e6e4d8;max-width:340px;text-shadow:0 1px 12px #1b221a}.discover{border:0;border-bottom:1px solid var(--gold);background:transparent;color:#fff5e0;letter-spacing:.19em;font-size:10px;font-weight:700;margin-top:20px;padding:12px 0;display:flex;gap:32px;align-items:center;pointer-events:auto}.discover span{color:var(--gold);font-size:17px;font-weight:400;transition:transform .2s}.discover:hover span{transform:translate(3px,-3px)}.intro-bottom{margin-top:37px;font-size:9px;letter-spacing:.11em;color:#d5ccb8;line-height:1.8;white-space:nowrap}.mini-icon{color:var(--gold);font-size:14px}.sep{margin:0 7px;opacity:.5}
.left-rail{position:absolute;z-index:8;left:clamp(27px,3.2vw,62px);bottom:clamp(186px,20%,260px);width:210px;display:flex;flex-direction:column}.rail-header{font-size:9px;letter-spacing:.19em;font-weight:700;color:#d9c6a6;padding:0 0 17px;border-bottom:1px solid rgba(255,255,255,.25)}.view-button{width:100%;height:39px;display:flex;align-items:center;gap:12px;border:0;background:transparent;text-align:left;color:rgba(246,242,224,.75);padding:0 6px 0 0;transition:color .18s}.view-button:hover,.view-button.active,.view-button[aria-pressed=true]{color:#fff}.view-button.active .view-icon{color:var(--gold)}.view-icon{width:20px;font-size:17px;text-align:center;color:#a9aa9c;font-family:Georgia,serif}.view-label{font-size:9px;letter-spacing:.125em;font-weight:700;white-space:nowrap;flex:1}.shortcut{font-size:9px;color:#c4b696}.rail-rule{border-top:1px solid rgba(255,255,255,.23);margin:10px 0}.switch-dot{height:7px;width:7px;border-radius:50%;border:1px solid #b7a88d}.view-button[aria-pressed=true] .switch-dot{background:var(--gold);box-shadow:0 0 8px rgba(230,204,141,.75)}
.info-panel{position:absolute;z-index:9;right:clamp(25px,3.1vw,63px);top:clamp(120px,16.8vh,190px);width:313px;max-height:calc(100vh - 340px);overflow-y:auto;padding:24px 25px 20px;background:rgba(17,28,25,.88);border:1px solid rgba(222,218,191,.22);box-shadow:0 24px 80px rgba(0,0,0,.23);backdrop-filter:blur(16px);scrollbar-width:thin}.panel-kicker{display:flex;align-items:center;gap:8px;letter-spacing:.15em;font-size:9px;font-weight:700;color:#dbcbad}.panel-kicker-line{height:1px;width:24px;background:var(--gold)}.panel-kicker button{background:transparent;border:0;color:#d9d3c3;font-size:20px;margin-left:auto;line-height:1;padding:0 2px}.panel-count{color:#d5aa72;font-weight:700;font-size:9px;letter-spacing:.13em;margin-top:39px;display:flex;justify-content:space-between}.panel-count span{color:#a99c8b}.info-panel h2{font-size:35px;line-height:1.05;letter-spacing:-.045em;font-family:Georgia,'Times New Roman',serif;font-weight:400;margin:15px 0}.info-panel h2 em{color:#d9b98d}.info-panel p{font-size:12px;line-height:1.8;color:#cecfc5}.hairline{height:1px;background:var(--line);margin:24px 0 10px}.detail-row{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(218,216,202,.11);min-height:40px;gap:9px}.detail-row span{font-size:9px;letter-spacing:.11em;color:#abae9f}.detail-row strong{font-size:11px;font-weight:500;color:#f4e7d0;text-align:right}.panel-note{display:flex;gap:10px;margin-top:17px}.panel-note>span{color:#d4bd96;font-size:15px}.panel-note p{color:#bdbbb0;font-size:10px;line-height:1.65;margin:0}.panel-return{display:flex;width:100%;align-items:center;justify-content:space-between;color:#ecd3a7;background:transparent;border:0;border-top:1px solid var(--line);margin-top:23px;padding:17px 0 0;font-size:9px;letter-spacing:.14em;font-weight:700}.panel-return span{font-size:15px;font-weight:400}
.hotspot-layer{position:absolute;inset:0;pointer-events:none;z-index:5}.hotspot{position:absolute;pointer-events:auto;transform:translate(-50%,-50%);background:transparent;border:0;display:flex;align-items:center;gap:7px;padding:5px;white-space:nowrap;filter:drop-shadow(0 2px 4px #342313)}.hotspot-dot{height:27px;min-width:27px;display:grid;place-items:center;border:1px solid #f2d39c;background:rgba(23,31,26,.7);border-radius:50%;font-size:9px;font-weight:bold;color:#e8d1a6}.hotspot-tag{opacity:0;transform:translateX(-3px);transition:.15s;background:#192720e6;border:1px solid rgba(238,220,177,.35);padding:8px 9px;font-size:9px;letter-spacing:.1em}.hotspot:hover .hotspot-tag,.hotspot:focus-visible .hotspot-tag{opacity:1;transform:translateX(0)}.hotspot:hover .hotspot-dot{background:#d1af7d;color:#1c2721}
.drag-prompt{position:absolute;bottom:182px;left:50%;transform:translateX(-50%);font-size:9px;letter-spacing:.15em;color:#f0e7d4;white-space:nowrap;text-shadow:0 1px 5px #15140e}.drag-prompt span{margin:0 7px;color:#d0b98d}
.bottom-dock{z-index:11;position:absolute;left:50%;bottom:31px;transform:translateX(-50%);width:min(970px,calc(100% - 80px));min-height:124px;background:rgba(15,26,24,.92);border:1px solid rgba(236,217,182,.26);backdrop-filter:blur(22px);display:flex;align-items:center;justify-content:space-between;gap:28px;padding:22px 30px;box-shadow:0 14px 70px rgba(3,10,10,.18)}.dock-heading{display:flex;gap:17px;align-items:center;min-width:202px}.dock-number{font-family:Georgia,serif;font-size:28px;color:#dbbc85;white-space:nowrap}.dock-number span{font-size:16px;color:#777f76}.dock-category,.season>span{font-size:9px;letter-spacing:.15em;color:#aaa998}.dock-heading h3{font-size:11px;letter-spacing:.085em;font-weight:600;margin:9px 0 0;white-space:nowrap}.sun-controls{flex:1;min-width:150px;max-width:310px}.sun-line{display:flex;align-items:center;justify-content:space-between;gap:9px;font-size:11px;color:#d7c5a9}.sun-line>span:nth-child(2){font-size:9px;letter-spacing:.11em;white-space:nowrap}.sun-line em{color:#edcf9c;font-size:11px;font-style:normal;font-weight:700;letter-spacing:0;margin-left:12px}.sun-controls input{width:100%;height:2px;accent-color:#f1c98e;margin:23px 0 7px;cursor:pointer}.dock-divider{height:51px;width:1px;background:var(--line)}.season{min-width:143px}.season-switch{display:flex;margin-top:14px;border:1px solid var(--line)}.season-switch button{border:0;background:transparent;color:#aab0a7;padding:9px 16px;font-size:9px;letter-spacing:.12em}.season-switch button.chosen{background:#c3a477;color:#14231e;font-weight:bold}.capture{border:1px solid rgba(223,202,165,.48);height:44px;display:flex;align-items:center;gap:13px;padding:0 15px;background:transparent;color:#f3e7cf;white-space:nowrap}.capture span{font-size:18px;color:var(--gold)}.capture b{font-size:9px;letter-spacing:.11em}.capture:hover{background:rgba(235,192,129,.12)}.bottom-left-caption{position:absolute;bottom:12px;left:clamp(24px,3vw,56px);font-size:8px;letter-spacing:.16em;color:#e8dfcd;opacity:.73}.coord-mark{color:#d9bd88}.dotsep{padding:0 7px}.mobile-panel-button{display:none}
.tour-toast{position:absolute;z-index:14;top:107px;left:50%;transform:translate(-50%,-14px);background:#15251fe8;border:1px solid #dac19888;color:#e4d8c2;font-size:10px;letter-spacing:.08em;padding:12px 20px;opacity:0;pointer-events:none;transition:opacity .3s,transform .3s;white-space:nowrap}.tour-toast.show{opacity:1;transform:translate(-50%,0)}
.modal-cover{z-index:25;position:absolute;inset:0;background:rgba(8,13,12,.68);backdrop-filter:blur(8px);display:none;align-items:center;justify-content:center;padding:20px}.modal-cover.visible{display:flex}.modal-box{background:#15241f;border:1px solid #c3a77988;max-width:680px;max-height:90vh;overflow-y:auto;width:100%;padding:35px 38px;box-shadow:0 32px 130px #090f0ca8}.modal-header{display:flex;justify-content:space-between;align-items:center;font-size:10px;letter-spacing:.18em;color:#d5ba8a}.modal-header button{border:0;background:transparent;font-size:28px;color:#f3e5c9}.modal-box h2{font-family:Georgia,serif;font-weight:400;letter-spacing:-.035em;font-size:46px;margin:32px 0 12px}.modal-box>p{color:#cdcaba;font-size:13px;line-height:1.75;max-width:530px}.help-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:30px 0;padding:25px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.help-grid>div{display:flex;flex-direction:column;gap:8px}.help-grid span{color:#c8a87b;font-size:9px;letter-spacing:.14em}.help-grid strong{font-size:12px;font-weight:500}.help-grid small{font-size:10px;color:#b5baad;line-height:1.5}.modal-source>span{font-size:9px;color:#d4ba8a;letter-spacing:.14em}.modal-source p{font-size:11px;color:#bdc2b3;line-height:1.75}.modal-source a{color:#ebd0a2;text-underline-offset:3px}.modal-action{border:1px solid var(--gold);background:transparent;color:#f3d4a0;letter-spacing:.12em;padding:15px 20px;display:flex;width:100%;justify-content:space-between;margin-top:26px;font-size:10px;font-weight:bold}.modal-action span{font-size:16px}.fallback{position:absolute;inset:0;padding:10vw}.fallback h1{font:48px Georgia,serif}
.clean-view .topbar,.clean-view .intro,.clean-view .left-rail,.clean-view .info-panel,.clean-view .bottom-dock,.clean-view .drag-prompt,.clean-view .bottom-left-caption,.clean-view .mobile-panel-button{display:none}
@media(max-height:810px) and (min-width:901px){.intro{top:130px}.intro h1{font-size:clamp(48px,4.5vw,65px);margin:13px 0 18px}.intro .chapter{margin-top:19px}.intro p{font-size:12px}.intro-bottom{display:none}.info-panel{top:105px;max-height:calc(100vh - 255px);padding-top:15px}.panel-count{margin-top:19px}.info-panel h2{font-size:29px}.hairline{margin:13px 0 7px}.detail-row{min-height:32px}.bottom-dock{bottom:24px;min-height:99px;padding:12px 20px}.left-rail{bottom:165px}.drag-prompt{bottom:140px}}
@media(max-width:1200px){.top-middle{display:none}.bottom-dock{width:calc(100% - 36px);gap:13px;padding:18px}.dock-heading{min-width:170px}.capture b{display:none}.capture{padding:0 15px}.info-panel{right:17px;width:278px}.intro{left:27px}.left-rail{left:27px}}
@media(max-width:900px){.info-panel{display:none}.info-panel.open{display:block;z-index:18;top:90px;bottom:175px;right:18px;max-height:none;width:min(320px,calc(100vw - 36px))}.intro{width:340px}.intro h1{font-size:61px}.left-rail{bottom:180px}.mobile-panel-button{display:block;position:absolute;top:95px;right:20px;z-index:12;background:rgba(17,29,24,.8);border:1px solid rgba(242,215,163,.45);color:#e9cf9d;padding:12px;font-size:9px;letter-spacing:.08em}.bottom-left-caption{display:none}}
@media(max-width:650px){.topbar{height:65px;padding:0 17px}.brand{font-size:18px;gap:8px}.brand-symbol{font-size:24px}.top-right{font-size:0;gap:4px}.top-right .live-dot{width:5px;height:5px}.icon-button{margin-left:6px;width:30px;height:30px}.intro{top:88px;left:20px;width:calc(100% - 40px)}.eyebrow{font-size:9px}.chapter{margin-top:22px;font-size:8px}.intro h1{font-size:clamp(43px,10vw,61px);margin:12px 0 8px}.intro p{font-size:11px;line-height:1.5;max-width:265px}.discover{font-size:9px;margin-top:6px;padding:7px 0}.intro-bottom{display:none}.left-rail{left:12px;bottom:219px;width:150px;max-height:157px;overflow:hidden}.rail-header{padding-bottom:7px;font-size:8px}.view-button{height:29px}.view-label{font-size:8px}.view-icon{width:16px;font-size:14px}.shortcut{font-size:8px}.left-rail .rail-rule,.left-rail #toggle-guides,.left-rail #toggle-excavate{display:none}.bottom-dock{width:calc(100% - 20px);bottom:12px;min-height:160px;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:45px 62px;column-gap:13px;row-gap:8px;padding:13px 15px;align-items:center}.dock-heading{grid-column:1;min-width:0;gap:8px}.dock-number{font-size:22px}.dock-category{font-size:8px}.dock-heading h3{font-size:9px;white-space:normal;margin-top:5px}.sun-controls{grid-row:2;grid-column:1 / span 2;max-width:none;min-width:0;align-self:center}.sun-line>span:nth-child(2){font-size:9px}.sun-controls input{margin:13px 0 0}.dock-divider{display:none}.season{grid-row:1;grid-column:2;min-width:0;justify-self:end}.season>span{display:none}.season-switch{margin-top:0}.season-switch button{padding:9px 10px}.capture{display:none}.drag-prompt{display:none}.hotspot-tag{display:none}.hotspot-dot{min-width:22px;height:22px;font-size:8px}.hotspot{padding:3px}.info-panel.open{top:72px;bottom:184px;right:10px;left:10px;width:auto;max-height:none;overflow-y:auto}.mobile-panel-button{top:auto;bottom:188px;right:13px;padding:10px;font-size:9px}.modal-box{padding:22px}.modal-box h2{font-size:33px}.help-grid{grid-template-columns:repeat(2,1fr);gap:13px}.tour-toast{top:73px;max-width:calc(100% - 24px);text-align:center;white-space:normal;line-height:1.5}}
@media(max-width:360px){.intro h1{font-size:41px}.intro p{max-width:230px}.left-rail{display:none}}
