:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif;color:#f3ecdc;background:#101b22;font-synthesis:none;font-size:14px}*{box-sizing:border-box}html,body,#app,#viewport{height:100%;min-height:100%;margin:0;overflow:hidden}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible{outline:2px solid #e7c18b;outline-offset:3px}#viewport{position:relative;isolation:isolate;background:#a78d75}#render,canvas{position:absolute;inset:0;width:100%;height:100%;display:block}#render canvas{touch-action:none;cursor:grab}#render canvas:active{cursor:grabbing}.vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(7,21,30,.72),rgba(7,21,30,.12) 32%,transparent 55%,rgba(8,18,23,.24)),linear-gradient(0deg,rgba(9,19,22,.58),transparent 23%,transparent 65%,rgba(7,20,32,.32));z-index:1}.grain{position:absolute;inset:0;z-index:1;pointer-events:none;opacity:.15;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='.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.29'/%3E%3C/svg%3E")}.eyebrow{font-size:9px;letter-spacing:2.1px;font-weight:700;color:#d4b88a}.masthead{position:absolute;z-index:5;top:0;left:0;right:0;padding:24px 35px;display:flex;align-items:flex-start;justify-content:space-between;pointer-events:none}.brand-lockup{display:flex;align-items:center;gap:12px}.brand-symbol{width:38px;height:38px;border:1px solid rgba(235,205,151,.69);display:flex;align-items:center;justify-content:center;color:#eacba0;transform:rotate(45deg)}.brand-symbol span{transform:rotate(-45deg);font-size:26px}.brand-title{display:block;font-size:11px;letter-spacing:2.2px;line-height:1.21;font-weight:750}.brand-small{font-size:7px;letter-spacing:1.8px;color:#c3ad92;display:block;margin-top:5px}.mast-right{font-size:9px;letter-spacing:1.8px;color:#e0d2b9;font-weight:650;margin-top:8px}.live-pulse{display:inline-block;width:6px;height:6px;background:#ddb980;border-radius:50%;box-shadow:0 0 10px #ffd696;margin-right:9px;animation:pulse 2s ease-in-out infinite}.mast-separator{margin:0 10px;color:#bb9469}@keyframes pulse{50%{opacity:.45}}.intro-panel{position:absolute;z-index:4;top:125px;left:38px;width:343px;max-height:calc(100% - 215px);overflow-y:auto;scrollbar-width:none;pointer-events:auto}.intro-panel::-webkit-scrollbar{display:none}.intro-rule{display:flex;justify-content:space-between;align-items:center;gap:10px}.coordinate{font-size:8px;color:#c5b29a;white-space:nowrap;letter-spacing:.2px}.diamond{font-size:7px;margin:0 4px;color:#cfa871}.issue{font-size:8px;letter-spacing:2.4px;color:#e8c68c;margin:35px 0 12px;font-weight:650}.issue span{float:right;color:#aeb7b4}.intro-panel h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-size:clamp(39px,4.1vw,61px);line-height:.99;letter-spacing:-3px;margin:0 0 4px;text-shadow:0 3px 28px rgba(0,0,0,.24)}.title-dot{color:#e4b976}.subhead{font-family:Georgia,serif;font-size:24px;line-height:1.2;color:#f8ebd5;margin:6px 0 23px}.subhead em{color:#e2bc83}.intro-divider{height:1px;width:100%;background:linear-gradient(90deg,#dbbc8c 0%,rgba(227,197,143,.22) 72%,transparent)}.intro-copy{font-size:12px;line-height:1.9;color:#e1dbcf;margin:17px 0 16px;max-width:319px;text-shadow:0 1px 6px #16222d}.stamp-line{display:flex;gap:8px;margin:0 0 27px}.stamp{border:1px solid #9a8e7a;padding:6px 8px;font-size:8px;letter-spacing:1px;color:#ecd7b1;white-space:nowrap}.chapters{border-top:1px solid rgba(231,205,163,.27)}.chapter{width:100%;display:grid;grid-template-columns:33px 1fr auto;align-items:center;text-align:left;gap:12px;padding:15px 5px;background:transparent;border:0;border-bottom:1px solid rgba(231,205,163,.27);color:#eadfd0;font-size:10px;letter-spacing:1.6px;transition:all .22s}.chapter span:first-child{color:#bd9972}.chapter.active,.chapter:hover{color:#f9dfac;background:rgba(255,219,145,.08);padding-left:12px}.chapter-arrow{color:#f2d5ab;font-size:14px}.intro-caption{font-size:10px;line-height:1.6;color:#b4b9b6;margin-top:16px;max-width:315px}.controls{position:absolute;z-index:5;right:25px;top:108px;width:305px;border:1px solid rgba(225,201,165,.29);background:rgba(14,26,32,.82);box-shadow:0 18px 60px #060f1499;backdrop-filter:blur(24px);padding:23px 22px 18px;max-height:calc(100% - 178px);overflow:auto;scrollbar-width:thin;scrollbar-color:#ad9065 transparent}.panel-heading{display:flex;justify-content:space-between;align-items:end}.panel-heading h2{font-family:Georgia,serif;font-size:25px;font-weight:400;margin:5px 0 3px}.panel-count{font-size:9px;letter-spacing:1.1px;color:#b69b72}.panel-rule{height:1px;background:linear-gradient(90deg,#ba9871,#413b35);margin:16px 0 20px}.control-block{margin-bottom:20px}.control-head{display:flex;justify-content:space-between;margin-bottom:15px}.control-head label{font-size:11px;color:#e7ddd0}.control-head span{font-size:12px;color:#e6bb80;font-variant-numeric:tabular-nums}input[type=range]{width:100%;accent-color:#cfac78;cursor:pointer;height:3px;display:block;margin:0;appearance:none;background:linear-gradient(90deg,#dfb97e,#4e514d);border-radius:3px}input[type=range]::-webkit-slider-thumb{appearance:none;width:13px;height:13px;background:#e0bd88;border:3px solid #e9d6ba;border-radius:50%;box-shadow:0 0 0 4px #b38a5944}.range-labels{display:flex;justify-content:space-between;margin-top:12px;font-size:8px;letter-spacing:1.1px;color:#a9aaa3}.control-minihead{margin:25px 0 11px;font-size:9px;color:#ccaf81;letter-spacing:1.5px}.action-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.action{min-height:89px;border:1px solid #6b666050;background:#17262e83;color:#e5d9c9;text-align:left;padding:12px 10px 10px;position:relative;display:flex;flex-direction:column;gap:6px;transition:background .2s,border-color .2s}.action:hover,.action.active{border-color:#ceb084;background:#b2976b1b}.action-icon{font-size:20px;line-height:1;color:#d9b685}.action strong{display:block;font-size:10px;font-weight:600;margin-bottom:3px}.action small{display:block;font-size:9px;color:#acaa9f}.toggle-dot{position:absolute;right:9px;top:11px;width:6px;height:6px;border-radius:50%;border:1px solid #a4a49b}.action.active .toggle-dot{background:#e5c28f;border-color:#e5c28f;box-shadow:0 0 8px #d9ab70}.reset{display:flex;align-items:center;justify-content:space-between;width:100%;padding:14px 9px;margin-top:15px;background:transparent;border:1px solid #9c88685e;color:#d9c3a1;letter-spacing:1.3px;font-size:9px}.reset:hover{background:#e5c18a12}.reset span:first-child{font-size:18px}.reset span:last-child{font-size:10px;color:#a2a29c}.panel-footer{font-size:8px;color:#929a98;line-height:1.8;text-align:center;margin-top:14px;letter-spacing:.65px}.panel-footer span{color:#d4b483;margin:0 4px}.info-card{position:absolute;z-index:5;left:calc(50% - 175px);bottom:60px;width:350px;min-height:173px;background:rgba(18,34,39,.92);backdrop-filter:blur(25px);border-left:2px solid #d2ae77;border-top:1px solid #9d8c6b66;padding:17px 20px 15px;box-shadow:0 11px 45px #0a0f1199;transition:transform .3s,opacity .3s}.info-card.hidden{opacity:0;pointer-events:none;transform:translateY(20px)}.info-meta{display:flex;justify-content:space-between;align-items:center;color:#c1a579;font-size:9px;letter-spacing:1.6px}.info-meta button{border:none;background:transparent;color:#ddd2c0;font-size:21px;line-height:1}.info-card #info-tag{font-size:8px;color:#a5b3ae;letter-spacing:1.7px;margin:10px 0 4px}.info-card h3{font-family:Georgia,serif;font-size:21px;font-weight:400;margin:2px 0 9px;color:#fff0d8}.info-card #info-copy{font-size:10.5px;line-height:1.55;color:#d3d2c6;margin:0 0 12px}.info-card #info-focus{border:0;background:transparent;color:#e5c48c;padding:0;font-size:9px;letter-spacing:1.2px}.info-card #info-focus span{margin-left:12px}.orientation{position:absolute;z-index:3;right:54px;bottom:122px;display:flex;flex-direction:column;align-items:center;color:#e4ceaa;font-size:10px;letter-spacing:1px;text-shadow:0 2px 5px #21313c}.compass-line{height:40px;width:1px;background:linear-gradient(#d4bd96,#d4bd9633);margin:8px 0}.compass-n{font-weight:700}.compass-s{color:#b7b0a6}.bottom-strip{position:absolute;z-index:5;bottom:0;left:0;right:0;height:42px;padding:0 37px;display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;background:#111e26e8;border-top:1px solid #c1a77b35;color:#aaaea8;font-size:8px;letter-spacing:1.1px;white-space:nowrap}.bottom-label{color:#d9b780;margin-right:17px}.center-status{text-align:center}.golden-point{font-size:7px;color:#cfaa79;margin:0 14px}.bottom-right{text-align:right}.bottom-right span{color:#c6a57a;margin:0 5px}.mini-controls{position:absolute;left:37px;bottom:59px;z-index:5}.mini-controls button{height:30px;width:30px;color:#e2c79c;background:rgba(13,25,33,.55);border:1px solid #c6a57a87;border-radius:50%;font-weight:700}.help-dialog{position:absolute;left:37px;bottom:104px;z-index:10;width:280px;padding:20px;background:#152731f2;border:1px solid #d1af7d77;color:#e9ddc9;box-shadow:0 15px 35px #0a1319a8}.help-dialog[hidden],.error-dialog[hidden]{display:none}.help-dialog h3{font:normal 21px Georgia,serif;margin:0 0 12px}.help-dialog p{font-size:11px;line-height:1.7}.help-dialog button{background:none;border:1px solid #b39972;color:#e1bb82;padding:8px 16px;font-size:10px}.error-dialog{position:absolute;inset:35%;z-index:30;padding:25px;background:#20262a;border:1px solid #d9b580;color:#f4e9d3}.hotspot{position:absolute;z-index:4;transform:translate(-50%,-50%);display:flex;align-items:center;gap:7px;border:0;background:transparent;color:#fff6de;white-space:nowrap;padding:8px;text-shadow:0 2px 5px #182022;pointer-events:auto;transition:opacity .15s}.hotspot.hidden{opacity:0;pointer-events:none}.hotspot-ring{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border:1px solid #f5cf98;border-radius:50%;background:rgba(24,40,42,.49);box-shadow:0 0 0 5px #d9ae7240,0 0 18px #f4d0a255}.hotspot-ring::after{content:'';height:5px;width:5px;background:#f5d6aa;border-radius:50%}.hotspot-label{background:rgba(15,29,36,.68);padding:5px 8px;font-size:9px;letter-spacing:1px;opacity:0;transform:translateX(-4px);transition:opacity .2s,transform .2s}.hotspot:hover .hotspot-label,.hotspot:focus-visible .hotspot-label{opacity:1;transform:translateX(0)}.loading{position:absolute;inset:0;z-index:50;background:#14232b;display:flex;align-items:center;justify-content:center;flex-direction:column;transition:opacity .85s ease,visibility .85s}.loading.fade{opacity:0;visibility:hidden;pointer-events:none}.loading-sun{height:57px;width:57px;border:1px solid #d4af79;transform:rotate(45deg);margin-bottom:34px;position:relative}.loading-sun:after{content:'✧';transform:rotate(-45deg);position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#d4af79;font-size:42px}.loading h2{font:normal 50px Georgia,serif;letter-spacing:-2px;color:#f2e0bf;margin:8px 0 23px}.loading-rail{width:200px;height:2px;background:#45504e;overflow:hidden}.loading-rail span{display:block;width:45%;height:100%;background:#dfbb80;animation:load 1.4s ease-in-out infinite alternate}@keyframes load{to{transform:translateX(125%)}}.loading p{font-size:10px;letter-spacing:1px;color:#b1b0a2;margin-top:16px}
@media(max-height:750px) and (min-width:900px){.intro-panel{top:92px;max-height:calc(100% - 148px)}.issue{margin-top:18px}.intro-panel h1{font-size:46px}.intro-copy{line-height:1.6}.stamp-line{margin-bottom:11px}.chapters .chapter{padding:10px 5px}.intro-caption{display:none}.controls{top:75px;max-height:calc(100% - 120px);padding:17px}.control-block{margin-bottom:12px}.panel-rule{margin:12px 0}.action{min-height:72px;padding:8px}.action-icon{font-size:16px}.info-card{bottom:54px;min-height:auto}}
@media(max-width:1250px){.intro-panel{width:290px;left:25px}.intro-panel h1{font-size:45px}.coordinate{display:none}.controls{right:15px;width:270px}.bottom-strip{padding:0 22px}.info-card{width:300px;left:calc(50% - 150px)}}
@media(max-width:900px){.masthead{padding:17px 18px}.mast-right{font-size:7px}.intro-panel{top:87px;left:16px;width:min(300px,calc(100% - 32px));max-height:42%;overflow:auto}.issue{margin:15px 0 5px}.intro-panel h1{font-size:39px}.subhead{font-size:21px;margin:4px 0 14px}.intro-copy{line-height:1.6;font-size:11px;margin:10px 0}.stamp-line{margin-bottom:12px}.chapters,.intro-caption{display:none}.controls{top:auto;right:12px;bottom:51px;width:250px;max-height:51%;padding:14px}.panel-heading h2{font-size:19px}.panel-rule{margin:10px 0}.control-block{margin-bottom:13px}.control-head{margin-bottom:11px}.action{min-height:63px;padding:8px}.action-icon{display:none}.control-minihead{margin:14px 0 9px}.reset{margin-top:9px;padding:10px}.panel-footer{display:none}.info-card{left:14px;bottom:52px;width:calc(100% - 286px);min-height:0;padding:12px;max-height:190px;overflow:auto}.info-card h3{font-size:19px}.orientation{display:none}.mini-controls{left:17px;bottom:54px}.bottom-strip{grid-template-columns:1fr 1fr}.center-status{text-align:right}.bottom-right{display:none}}
@media(max-width:620px){.masthead{padding:14px 12px}.brand-symbol{height:27px;width:27px}.brand-title{font-size:9px}.brand-small{font-size:6px}.mast-right{display:none}.intro-panel{top:58px;left:13px;max-height:24%;width:calc(100% - 26px);pointer-events:none;overflow:hidden}.intro-rule{display:none}.issue{font-size:8px;margin:0 0 5px}.intro-panel h1{font-size:35px;letter-spacing:-1.4px}.subhead{font-size:17px;margin:2px 0}.intro-divider,.intro-copy,.stamp-line{display:none}.controls{right:0;left:0;bottom:35px;width:100%;max-height:35%;overflow-y:auto;padding:10px 12px 13px;background:#13222adf;display:grid;grid-template-columns:1fr 1fr;column-gap:12px;row-gap:5px;border-left:none;border-right:none}.panel-heading{grid-column:1/-1}.panel-heading h2{font-size:17px}.panel-rule{display:none}.control-block{margin:0 0 9px}.control-head{margin-bottom:10px}.control-head label{font-size:10px}.control-minihead{display:none}.action-grid{grid-column:1/-1;grid-template-columns:repeat(4,1fr);gap:5px}.action{min-height:52px;padding:7px 3px;text-align:center;align-items:center}.action strong{font-size:9px}.action small{font-size:8px}.toggle-dot{display:none}.reset,.panel-footer{display:none}.info-card{left:9px;right:9px;width:auto;bottom:calc(35% + 43px);padding:9px 12px;max-height:112px;overflow-y:auto}.info-card #info-copy{font-size:9px;margin-bottom:6px}.info-card #info-tag{font-size:7px;margin:4px 0}.info-card h3{font-size:17px;margin:0 0 4px}.info-card #info-focus{font-size:8px}.bottom-strip{height:35px;padding:0 10px;font-size:7px}.bottom-label{margin-right:3px}.bottom-strip>div:first-child>span:last-child{display:none}.hotspot-label{display:none}.hotspot-ring{width:17px;height:17px}.mini-controls{left:auto;right:9px;bottom:calc(35% + 57px)}.help-dialog{left:14px;bottom:calc(35% + 95px)}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
