:root{font-family:'DM Sans',system-ui,-apple-system,'Segoe UI',sans-serif;color:#edeae0;background:#131b19;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--ink:#e9e6db;--muted:#aaa99c;--accent:#d0b381;--line:rgba(242,238,219,.16);--panel:rgba(17,27,26,.91)}
*{box-sizing:border-box}html,body,#app{margin:0;width:100%;height:100%;overflow:hidden}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,a:focus-visible{outline:2px solid #dfbe89;outline-offset:3px}button{-webkit-tap-highlight-color:transparent}a{color:inherit}
.viewport{position:absolute;inset:0;z-index:0;background:#566965;overflow:hidden}.viewport canvas{display:block;width:100%;height:100%;touch-action:none}.scene-vignette{pointer-events:none;position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,23,23,.20) 0%,transparent 20%,transparent 80%,rgba(8,16,18,.15)),linear-gradient(to top,rgba(17,24,22,.40),transparent 13%)}
.masthead{position:absolute;top:0;left:0;right:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 38px;height:88px;border-bottom:1px solid rgba(255,255,255,.16);background:linear-gradient(#141f1f96,transparent);pointer-events:none}.masthead>*{pointer-events:auto}.brand{display:flex;align-items:center;gap:13px;letter-spacing:.15em;font-size:10px;font-weight:700;line-height:1.25}.brand strong{font-size:15px;font-weight:800;letter-spacing:.12em}.brand-symbol{font-size:33px;font-weight:400;color:#ddc296;line-height:1}.brand-divider{height:30px;width:1px;background:rgba(250,236,209,.28);margin:0 7px}.edition{color:#c7c5b7;font-size:8px;letter-spacing:.18em;line-height:1.8}.mast-meta{display:flex;align-items:center;gap:13px;font-size:9px;font-weight:700;letter-spacing:.17em;white-space:nowrap;color:#f0e9d8}.country-flag{font-size:9px;border:1px solid #e1d1a2;padding:5px 8px;color:#e9d3a1}.mast-meta i{color:#e3c58e;font-style:normal}.mast-dot{width:3px;height:3px;background:#dfbe8e;border-radius:100%;margin:0 2px}
.left-panel{z-index:10;position:absolute;top:88px;bottom:65px;left:0;width:365px;padding:43px 34px 28px;background:linear-gradient(95deg,rgba(17,28,27,.97),rgba(19,31,29,.89));border-right:1px solid var(--line);overflow-x:hidden;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#65716540 transparent;backdrop-filter:blur(22px)}.chapter{color:#c8af84;font-size:9px;letter-spacing:.22em;font-weight:700;display:flex;align-items:center;gap:11px}.chapter-line{display:block;width:24px;height:1px;background:#aa9776}h1{font:800 77px/.95 'Manrope',sans-serif;letter-spacing:-.075em;margin:19px 0 10px;color:#f8f2e5}.title-punct{color:#cca774}.subtitle{margin:0;font:500 30px/1.20 'Manrope',sans-serif;letter-spacing:-.055em}.subtitle em{font-family:Georgia,serif;font-size:35px;font-weight:400;letter-spacing:-.045em;color:#d8bd94}.intro{font-size:12px;line-height:1.85;color:#bbbbb0;max-width:290px;margin:22px 0 20px}.tag-row{display:flex;align-items:center;gap:8px;margin-bottom:36px}.tag-row span{border:1px solid #c2aa805e;color:#dbc19a;padding:7px 8px;font-size:8px;font-weight:700;letter-spacing:.1em}.panel-tabs{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:0 -34px;padding:0 25px}.panel-tabs button{border:0;border-bottom:2px solid transparent;background:transparent;color:#929e9a;font-size:9px;letter-spacing:.09em;font-weight:700;min-height:52px;padding:8px 6px}.panel-tabs button:hover{color:#f3e8cd}.panel-tabs button.active{color:#f1e9d3;border-bottom-color:#d1ae7e}.tab-content{display:none;animation:tabfade .25s ease-out}.tab-content.active{display:block}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:31px 0 16px;font-size:9px;letter-spacing:.14em;font-weight:700;color:#d8c7a6}.side-note{font-size:8px;color:#778983;font-weight:600}.view-buttons{display:grid;grid-template-columns:1fr 1fr;gap:9px}.view-buttons button{height:72px;border:1px solid #73847c50;color:#d2d6c9;background:#ffffff07;display:flex;align-items:center;gap:9px;padding:0 12px;text-align:left;font-size:11px;font-weight:600;transition:.2s ease}.view-buttons button:hover{border-color:#cbac7c;background:#d4bb9220}.view-buttons button.active{background:#d6bb9227;border-color:#c4aa7a;color:#f7e4bf}.view-icon{font-size:21px;font-family:Georgia,serif;color:#d5b88b}.primary-action{width:100%;display:flex;align-items:center;gap:14px;background:#d4b88d;color:#1c2824;border:none;min-height:49px;margin-top:15px;padding:0 14px;font-size:10px;letter-spacing:.13em;font-weight:800;transition:background .2s}.primary-action:hover{background:#f2d7a7}.primary-action .arrow{margin-left:auto;font-size:20px;font-weight:400}.primary-action.is-running{background:#84928b;color:#eff3e9}.space-top{margin-top:37px}.toggle-row{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:8px 0 17px;border-bottom:1px solid var(--line);cursor:pointer;color:#e7e7df;font-size:11px;font-weight:600}.toggle-row + .toggle-row{margin-top:8px}.toggle-row small{display:block;color:#899a94;font-size:10px;margin-top:6px;font-weight:400}.toggle-row input{position:absolute;opacity:0;width:0;height:0}.toggle-row i{width:35px;height:19px;background:#5f6b65;border-radius:20px;flex-shrink:0;position:relative;transition:.2s}.toggle-row i:before{content:'';position:absolute;left:3px;top:3px;width:13px;height:13px;border-radius:50%;background:#e3e4d7;transition:.2s}.toggle-row input:checked+i{background:#c8aa79}.toggle-row input:checked+i:before{transform:translateX(16px);background:#24302b}.help-note{margin-top:35px;font-size:9px;font-weight:600;letter-spacing:.12em;line-height:2.2;color:#71837e}.help-note b{color:#c1ad8d;margin:0 7px}
.step-card{border:1px solid var(--line);background:#f9f1df08;padding:15px 12px}.step-top{display:flex;justify-content:space-between;gap:8px;font-size:9px;font-weight:800;letter-spacing:.05em;color:#d2bd9b;margin-bottom:25px}.step-top span:last-child{color:#82938e}input[type='range']{appearance:none;width:100%;height:3px;display:block;background:#53615a;accent-color:#d4b783;cursor:pointer;margin:19px 0;outline-offset:8px}input[type='range']::-webkit-slider-thumb{appearance:none;width:12px;height:12px;background:#e6d1ab;border:2px solid #17211f;border-radius:50%;box-shadow:0 0 0 1px #ccad76}input[type='range']::-moz-range-thumb{width:12px;height:12px;background:#e6d1ab;border:2px solid #17211f;border-radius:50%}.phase-ticks{display:flex;justify-content:space-between;gap:3px;color:#889790;font-size:7px;letter-spacing:.045em;font-weight:700;margin-bottom:17px}.step-card p,.field-note,.history-tab p{font-size:11px;line-height:1.8;color:#a8b5a9}.step-card p{margin-bottom:0;min-height:57px}.range-label{display:flex;justify-content:space-between;margin-top:25px;font-size:11px;color:#dde0d4;font-weight:600}.range-label output{color:#d4b989;font-size:12px;font-variant-numeric:tabular-nums}.field-note{margin-top:20px}.quiet-action{border:1px solid var(--line);color:#d4c8aa;background:transparent;padding:12px;width:100%;font-size:9px;letter-spacing:.1em;font-weight:700;margin-top:13px}.quiet-action:hover{border-color:#cfb98e}.history-tab strong{color:#efe4cf;font-weight:700}.historical-divider{height:1px;background:var(--line);margin:22px 0}.source-links{display:flex;flex-direction:column;gap:13px;margin-top:18px}.source-links a{text-decoration:none;font-size:10px;color:#d9c18f;border-bottom:1px solid #b3a48250;padding-bottom:10px}.source-links a:hover{color:#fff}
.side-bottom{display:flex;gap:12px;align-items:center;border-top:1px solid var(--line);margin-top:38px;padding-top:19px;color:#d9c8a5}.small-cross{font-size:21px}.side-bottom strong,.side-bottom small{display:block;font-size:8px;letter-spacing:.07em}.side-bottom small{color:#7c918c;margin-top:5px;line-height:1.5}
.right-panel{z-index:9;position:absolute;right:32px;bottom:99px;width:325px;padding:22px 25px 23px;background:rgba(16,26,25,.88);border:1px solid rgba(233,227,207,.2);box-shadow:0 16px 35px #08100d45;backdrop-filter:blur(20px)}.inspector-label{display:flex;align-items:center;font-size:9px;color:#d2bd94;letter-spacing:.17em;font-weight:700;gap:9px}.cross-small{font-size:19px}.inspector-label #item-number{margin-left:auto;color:#82938c}.inspector-type{margin:24px 0 8px;color:#bfad8a;letter-spacing:.18em;font-size:8px;font-weight:700}.right-panel h2{font-size:20px;font-family:'Manrope',sans-serif;line-height:1.25;letter-spacing:-.04em;font-weight:700;margin:0;max-width:265px}.inspector-line{margin:19px 0 14px;height:1px;background:var(--line)}.right-panel p{color:#b8c1b6;font-size:11px;line-height:1.85;margin:0;max-height:160px;overflow:auto;scrollbar-width:thin}.info-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);margin-top:19px;padding-top:15px;gap:10px}.fact-label{display:block;font-size:8px;color:#818e85;letter-spacing:.1em;font-weight:700;margin-bottom:5px}.info-bottom b{font-size:11px;color:#e2c89d;font-weight:600}.info-bottom button{border:1px solid #b2a38454;border-radius:50%;color:#e0c795;background:#ffffff0a;width:35px;height:35px;font-size:19px}.info-bottom button:hover{background:#d4ba8e40}
.hotspots{position:absolute;inset:0;pointer-events:none;z-index:4}.hotspot{position:absolute;transform:translate(-50%,-50%);pointer-events:auto;display:flex;align-items:center;gap:9px;padding:7px 10px 7px 7px;border:0;background:rgba(15,27,25,.70);border:1px solid rgba(233,222,193,.36);color:#f4e7c9;backdrop-filter:blur(12px);white-space:nowrap;transition:opacity .22s,background .2s,scale .2s;box-shadow:0 6px 12px #0c201632}.hotspot:hover,.hotspot.active{background:rgba(196,162,110,.93);color:#19231d}.hotspot .spot-dot{width:23px;height:23px;border-radius:50%;border:1px solid #f3d9a5;display:grid;place-items:center;font-size:11px}.hotspot .spot-name{font-size:9px;letter-spacing:.08em;font-weight:800}.hotspot.outside{opacity:0;pointer-events:none}.hotspot:not(.active):not(:hover) .spot-name{display:none}.hotspot.active .spot-name{display:block}.hotspot:hover{scale:1.04}.hotspot[disabled]{display:none}
.compass{position:absolute;z-index:5;right:41px;top:113px;width:65px;height:89px;display:flex;flex-direction:column;align-items:center;gap:3px;filter:drop-shadow(0 2px 8px #0006)}.compass-letter{font-size:11px;font-weight:800;color:#f2dec1}.compass-needle{font-size:36px;line-height:1;color:#dbc294;transform-origin:center center;transition:transform .2s}.compass-label{font-size:7px;letter-spacing:.13em;color:#efe9d4}.bottom-bar{position:absolute;bottom:0;left:0;right:0;z-index:14;height:65px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 34px;border-top:1px solid rgba(239,238,217,.2);background:rgba(16,27,26,.9);backdrop-filter:blur(20px);font-size:9px;font-weight:700;letter-spacing:.1em;color:#d5d8cb}.footer-id,.footer-center,.footer-right{display:flex;align-items:center;gap:11px}.footer-right{font-variant-numeric:tabular-nums}.live-point{width:7px;height:7px;background:#91caae;box-shadow:0 0 0 3px #8aba9e24;border-radius:100%}.separator{color:#607a6c}.keyboard-hint{color:#96a49a}.toast{position:absolute;left:50%;top:109px;transform:translate(-50%,-10px);opacity:0;pointer-events:none;z-index:40;padding:11px 20px;border:1px solid #c5af86b3;background:#1d2925ee;backdrop-filter:blur(12px);color:#f0d9b2;letter-spacing:.09em;font-size:11px;transition:opacity .25s,transform .25s;max-width:90%;text-align:center}.toast.show{opacity:1;transform:translate(-50%,0)}
.loading{position:absolute;z-index:100;inset:0;background:#131e1b;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:15px;transition:opacity .7s ease,visibility .7s}.loading.hide{opacity:0;visibility:hidden;pointer-events:none}.loader-mark{display:flex;gap:8px;align-items:center;height:45px}.loader-mark span{height:28px;width:2px;background:#d0b483;animation:loader 1.3s infinite alternate}.loader-mark span:nth-child(2){height:43px;animation-delay:.17s}.loader-mark span:nth-child(3){height:17px;animation-delay:.34s}.eyebrow{color:#d0b58c;font-size:10px;letter-spacing:.26em}.loader-title{font-size:84px;font-weight:800;letter-spacing:-.07em;line-height:1}.loader-small{font-size:10px;color:#879c8f;letter-spacing:.12em}@keyframes loader{from{opacity:.2;transform:scaleY(.4)}to{opacity:1;transform:scaleY(1)}}@keyframes tabfade{from{opacity:.5;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}
.icon-button{background:rgba(26,36,32,.75);color:#e9dcc5;border:1px solid #d9bb8766;padding:8px 12px}.mobile-menu{display:none}
@media (max-width:1200px){.left-panel{width:340px;padding-left:28px;padding-right:28px}.panel-tabs{margin-left:-28px;margin-right:-28px;padding-left:21px;padding-right:21px}.right-panel{right:22px;width:290px}.mast-meta span:last-child{display:none}}
@media (max-width:900px){.masthead{height:70px;padding:17px 21px}.mast-meta{font-size:9px}.edition,.brand-divider{display:none}.left-panel{top:70px;bottom:56px;width:min(340px,95vw);padding-top:28px}.right-panel{right:18px;bottom:74px;width:270px}.bottom-bar{height:56px;padding:0 17px}.footer-center{display:none}.mobile-menu{display:block}.compass{top:85px;right:22px}}
@media (max-width:650px){.mast-meta{display:none}.left-panel{transform:translateX(-100%);transition:transform .25s ease;z-index:31;box-shadow:10px 0 28px #0005;width:min(345px,92vw)}.left-panel.open{transform:translateX(0)}.right-panel{right:11px;left:11px;width:auto;bottom:70px;padding:16px 18px;max-height:170px;overflow-y:auto}.inspector-type{margin:8px 0 4px}.right-panel h2{font-size:16px}.right-panel p{font-size:10px;max-height:54px;line-height:1.6}.inspector-line{margin:7px 0}.info-bottom{margin-top:8px;padding-top:8px}.masthead{z-index:35}.hotspot:not(.active) .spot-name{display:none!important}.hotspot{padding:4px}.hotspot .spot-dot{width:21px;height:21px}.footer-right{display:none}.compass{right:20px;top:83px;transform:scale(.78)}.loader-title{font-size:70px}.left-panel h1{font-size:69px}}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}
