:root{color-scheme:dark;--ink:#e7ebeb;--muted:#8d9ba4;--line:rgba(194,210,215,.14);--paper:#0b141c;--panel:#121d26;--accent:#da855e;--accent2:#f1a576;--font:Inter,ui-sans-serif,system-ui,-apple-system,'Segoe UI',sans-serif}
*{box-sizing:border-box}html,body{margin:0;height:100%;background:#0a121a;color:var(--ink);font-family:var(--font)}button,select,input{font:inherit}button{cursor:pointer}button:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid var(--accent2);outline-offset:3px}.app{min-height:100vh;display:flex;flex-direction:column;background:#0a1119}.top{height:112px;border-bottom:1px solid var(--line);display:flex;align-items:center;padding:22px 33px;gap:22px;background:#0c151d}.mark{flex-shrink:0;border:1px solid #6b4739;color:#e6a07c;width:66px;height:66px;display:flex;align-items:center;justify-content:center;flex-direction:column;font-size:12px;letter-spacing:1px;font-weight:800;line-height:1.35;background:radial-gradient(circle at 30% 15%,#39271f,#15181a);box-shadow:inset 0 0 16px rgba(231,149,98,.14)}.mark span{color:#f2dcc1;font-weight:300}.heading{min-width:0}.eyebrow{font-size:9px;font-weight:800;color:#9eaab2;letter-spacing:2.25px}.eyebrow .sep{color:var(--accent);margin:0 7px}.tag{padding-left:11px;border-left:1px solid #52606b;margin-left:10px;color:#d69b7b}.heading h1{margin:6px 0 0;font-size:clamp(23px,2.5vw,32px);line-height:1;letter-spacing:3px;font-weight:750}.heading h1 em{font-size:26px;color:var(--accent);font-style:normal;font-weight:300}.heading p{margin:8px 0 0;font-size:10px;letter-spacing:2px;color:#98a6ad}.topright{margin-left:auto;display:flex;align-items:center;gap:22px}.status{font-size:10px;font-weight:700;letter-spacing:1.8px;white-space:nowrap}.status i{display:inline-block;width:6px;height:6px;margin-right:7px;background:#90be8f;border-radius:50%;box-shadow:0 0 9px #82ba78}.smallbtn{padding:10px 12px;color:#d6dfe1;background:transparent;border:1px solid #3b4951;border-radius:3px;font-size:11px;font-weight:700;letter-spacing:1px;white-space:nowrap}.smallbtn span{color:var(--accent);padding:0 7px}.layout{flex:1;display:grid;grid-template-columns:minmax(0,1fr) 370px;min-height:600px}.viewport{position:relative;min-width:0;overflow:hidden;isolation:isolate;background:linear-gradient(#617f96,#b8b8a8)}#scene{display:block;width:100%;height:100%;position:absolute;inset:0;touch-action:none;cursor:grab}#scene.grabbing{cursor:grabbing}.vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(8,15,21,.26),transparent 24%,transparent 69%,rgba(8,15,21,.62)),linear-gradient(90deg,rgba(7,12,16,.18),transparent 30%,transparent 72%,rgba(7,12,16,.22));z-index:1}.vtop{position:absolute;z-index:2;top:27px;left:29px;right:29px;display:flex;align-items:flex-start;justify-content:space-between;gap:15px;pointer-events:none}.coord{display:flex;flex-direction:column;gap:7px}.coord strong{font-size:12px;font-weight:750;letter-spacing:1.6px;text-shadow:0 2px 8px #000}.coord small{font-size:10px;letter-spacing:1.1px;color:#e9e9e7;text-shadow:0 2px 8px #000}.t-dot{width:8px;height:8px;background:#d88663;border-radius:50%;box-shadow:0 0 0 4px #d8866333;display:inline-block;margin-bottom:3px}.mode{background:#0c1725af;color:#e8e2dc;font-size:9px;font-weight:800;letter-spacing:1.6px;border:1px solid #ffffff48;padding:10px 12px;backdrop-filter:blur(10px)}.vbottom{position:absolute;z-index:2;bottom:24px;left:29px;right:29px;display:flex;align-items:center;justify-content:space-between;gap:10px}.instr{font-size:10px;letter-spacing:.8px;color:#d8dfe0;text-shadow:0 1px 8px #000}.key{font-weight:800;color:#fff}.dotsep{margin:0 6px;color:#bb8b6c}.tourbtn{color:#fff;display:flex;align-items:center;gap:10px;background:rgba(11,21,27,.78);border:1px solid rgba(255,255,255,.33);padding:12px 16px;font-size:10px;letter-spacing:1.5px;font-weight:750;backdrop-filter:blur(6px)}.tourbtn span:first-child{color:var(--accent2)}.tourbtn.active{background:#824832}.crosshair{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:14px;font-weight:200;color:#ffffff5a;z-index:1;pointer-events:none}#hotspots{position:absolute;inset:0;z-index:3;pointer-events:none}.spot{position:absolute;pointer-events:auto;transform:translate(-50%,-50%);border:1px solid #ffe2c597;border-radius:30px;background:rgba(12,21,26,.78);color:#f9e6d5;white-space:nowrap;padding:7px 11px 7px 24px;font-size:10px;font-weight:700;letter-spacing:.25px;box-shadow:0 3px 19px #080d1199;backdrop-filter:blur(7px)}.spot:before{content:'';position:absolute;left:8px;top:50%;transform:translateY(-50%);width:8px;height:8px;border-radius:50%;background:#edb287;box-shadow:0 0 0 3px #edb28725}.spot:hover,.spot.selected{background:#7b3e2c;border-color:#f4a678}.sidebar{background:radial-gradient(circle at 100% 0,rgba(204,114,72,.045),transparent 42%),#101b23;border-left:1px solid #46505a55;display:flex;flex-direction:column;min-width:0}.side-intro{padding:27px 27px 23px;border-bottom:1px solid var(--line)}.step{font-size:10px;color:var(--accent2);font-weight:750;letter-spacing:2px}.step span{color:#65727a;margin:0 6px}.side-intro h2{font-weight:600;font-family:Georgia,serif;font-size:26px;line-height:1.22;margin:16px 0 10px;letter-spacing:-.5px}.side-intro p{font-size:12px;line-height:1.65;color:#a7b3bb;margin:0}.meta{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:19px}.meta>div{border-left:2px solid #935b45;padding-left:11px;display:flex;flex-direction:column;gap:5px}.meta span,.meta strong{font-size:9px;letter-spacing:1.5px}.meta span{color:#788995}.meta strong{color:#d5dddf}.panel{padding:20px 26px;border-bottom:1px solid var(--line)}.ph{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-bottom:17px}.ph h3{font-size:10px;letter-spacing:1.7px;font-weight:750;margin:0}.num{color:var(--accent);margin-right:12px;font-size:11px}.micro{background:transparent;color:#c2a48f;border:0;font-size:10px;font-weight:750;letter-spacing:.7px;padding:4px}.presets{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.presets button{border:1px solid #36444c;background:#1b2830;color:#adbbc3;min-height:34px;padding:5px 2px;font-size:9px;font-weight:700;letter-spacing:.4px}.presets button.active{border:1px solid #bc7655;background:#4a2d24;color:#ffdcbb}.readout{font-size:16px;letter-spacing:1px;color:#fff;font-variant-numeric:tabular-nums}.fieldlabel{display:flex;justify-content:space-between;align-items:center;font-size:9px;font-weight:800;letter-spacing:1.2px;color:#aebbc3}.fieldlabel output{font-size:11px;letter-spacing:.6px;color:#efb18b}input[type=range]{width:100%;margin:20px 0 4px;appearance:none;background:linear-gradient(90deg,#553e33,#9a5c41,#d7996f);height:4px;border-radius:5px}input[type=range]::-webkit-slider-thumb{appearance:none;background:#ffcfad;border:2px solid #593a2a;box-shadow:0 0 0 4px #efbb9540;width:16px;height:16px;border-radius:50%}input[type=range]::-moz-range-thumb{background:#ffcfad;border:2px solid #593a2a;width:14px;height:14px;border-radius:50%}.ticks{display:flex;justify-content:space-between;color:#74838c;font-size:9px;letter-spacing:.3px}.space{margin-top:23px;margin-bottom:10px}select{width:100%;height:40px;padding:0 12px;background:#1d2931;border:1px solid #33414b;border-radius:2px;color:#cdd7da;font-size:11px}.toggleRow{display:flex;align-items:center;justify-content:space-between;padding:16px 0 0}.toggleRow strong{display:block;font-weight:750;font-size:10px;letter-spacing:1px}.toggleRow small{display:block;color:#8797a0;font-size:10px;margin-top:6px}.switch{display:inline-flex;cursor:pointer;position:relative;align-items:center}.switch input{opacity:0;position:absolute;width:100%;height:100%;margin:0;cursor:pointer;z-index:1}.track{width:38px;height:22px;border:1px solid #65717a;border-radius:30px;background:#34414a;position:relative;transition:background .2s}.track:after{content:'';position:absolute;top:3px;left:3px;background:#d7dcdb;border-radius:50%;width:14px;height:14px;transition:transform .2s}.switch input:checked+.track{background:#995a3d;border-color:#dc956a}.switch input:checked+.track:after{transform:translateX(16px);background:#fff0df}.fact{margin:22px 26px 20px;border:1px solid #4c493e;background:linear-gradient(135deg,#2a2825,#191e21);padding:19px 18px;box-shadow:inset 3px 0 #ad704d}.fact span{color:#d29a75;font-size:9px;letter-spacing:1.6px;font-weight:750}.fact h4{font-family:Georgia,serif;font-weight:500;font-size:18px;margin:12px 0 9px}.fact p{margin:0;color:#c5c5c1;font-size:11px;line-height:1.7}.sidefoot{display:flex;justify-content:space-between;gap:6px;margin-top:auto;padding:17px 27px;color:#768994;border-top:1px solid var(--line);font-size:8px;letter-spacing:.9px}.bottomline{height:38px;display:flex;align-items:center;justify-content:space-between;gap:15px;color:#788892;padding:0 33px;font-size:9px;letter-spacing:1px;border-top:1px solid var(--line);background:#0a1119}.bottomline span:first-child{color:#ca8b68;font-weight:800}.load,.error{position:absolute;inset:0;z-index:10;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:18px;background:rgba(10,19,25,.94);font-size:10px;font-weight:800;letter-spacing:2px;color:#d8b18a}.load.hidden{display:none}.loader{height:32px;width:32px;border:2px solid #b27752;border-top-color:transparent;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.error{padding:35px;text-align:center;font-size:13px;line-height:1.7;letter-spacing:0;color:#ffb1a2}.error[hidden]{display:none}@media (max-width:1150px){.layout{grid-template-columns:minmax(0,1fr) 330px}.panel{padding:19px}.side-intro{padding:21px}.fact{margin:18px}.heading h1{font-size:24px}}@media (max-width:820px){.top{height:auto;min-height:91px;padding:16px;gap:13px}.mark{width:48px;height:53px;font-size:10px}.heading h1{font-size:22px}.heading p{font-size:8px}.eyebrow{font-size:8px;letter-spacing:1px}.tag,.status{display:none}.layout{grid-template-columns:1fr;display:flex;flex-direction:column}.viewport{height:64vh;min-height:430px}.sidebar{border-left:0}.side-intro{padding:23px 20px}.panel{padding:19px 20px}.fact{margin:18px 20px}.sidefoot{padding:19px 20px}.bottomline{height:auto;min-height:45px;padding:12px 18px;font-size:8px}.bottomline span:nth-child(2){display:none}.vtop{top:20px;left:20px;right:20px}.vbottom{left:20px;right:20px;bottom:18px}.instr{font-size:9px}.tourbtn{padding:11px;font-size:8px}}@media(max-width:480px){.topright{gap:0}.smallbtn{font-size:9px;padding:8px}.heading h1{letter-spacing:1px;font-size:20px}.heading p{letter-spacing:.5px}.mark{display:none}.viewport{height:56vh;min-height:360px}.instr{font-size:8px;max-width:185px;line-height:1.8}.coord small{font-size:8px}.mode{font-size:8px;padding:8px}.spot{font-size:8px;padding:7px 8px 7px 18px}.spot:before{width:5px;height:5px;left:7px}.bottomline span:last-child{display:none}}
