:root{--bg:#0b1417;--bg2:#111e22;--ink:#ecede6;--muted:#98a5a2;--accent:#e9bb73;--border:#354449;--panel:#18262a;--olive:#b9c99f;color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;font-synthesis:none}*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg);color:var(--ink)}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,canvas:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.app{min-height:100vh;display:flex;flex-direction:column;max-width:1920px;margin:auto}.topbar{height:80px;flex:0 0 80px;display:flex;align-items:center;justify-content:space-between;padding:0 32px;background:#0e1b20;border-bottom:1px solid #233238}.brand{display:flex;align-items:center;gap:16px}.logo{width:42px;height:42px;color:var(--accent)}.logo svg{width:100%;height:100%}.brandtext{display:flex;flex-direction:column;gap:5px}.brand-name{font-size:20px;font-weight:700;letter-spacing:.13em}.slash{color:var(--accent);font-weight:300}.brand-caption{font-size:9px;color:#a6adab;letter-spacing:.24em;font-weight:700}.navtop{display:flex;gap:24px;align-items:center}.nav-chip{color:#b2c5bb;font-size:10px;font-weight:700;letter-spacing:.16em}.signal{display:inline-block;width:7px;height:7px;background:#a2c79a;border-radius:100%;margin-right:7px;box-shadow:0 0 10px #a2c79a55}.headerbutton{display:flex;align-items:center;gap:9px;border:0;background:transparent;color:#d7dcd7;font-size:11px;font-weight:700;letter-spacing:.15em;padding:12px 2px}.headerbutton:first-letter{font-size:18px;color:var(--accent)}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 356px;min-height:0;flex:1;gap:0}.viewer-card{position:relative;min-height:700px;overflow:hidden;background:radial-gradient(circle at 48% 38%,#3a4d4c 0%,#1e3136 68%,#18262d 100%)}#view{display:block;width:100%;height:100%;position:absolute;inset:0;touch-action:none;cursor:grab}#view:active{cursor:grabbing}.viewer-top{position:absolute;top:34px;left:36px;z-index:3;pointer-events:none;text-shadow:0 2px 14px #142022}.eyebrow{color:#f0c480;letter-spacing:.24em;font-weight:750;font-size:10px}.eyebrow.olive{color:#b3d1b6}.dot{padding:0 7px;color:#dae2d4}.viewer-top h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(32px,3.1vw,52px);line-height:1.14;font-weight:400;letter-spacing:-.03em;margin:16px 0 13px;color:#f2efe5}.viewer-top h1 em{font-weight:400;color:#f1c88b}.viewer-desc{font-size:12px;line-height:1.75;color:#d7dad2;letter-spacing:.02em}.viewport-location{position:absolute;left:37px;bottom:122px;background:#101f22b8;color:#d7d9d0;border:1px solid #aeb8a82e;padding:9px 13px;font-size:10px;font-weight:700;letter-spacing:.12em;border-radius:4px;backdrop-filter:blur(10px)}.location-tick{font-size:18px;color:#f5c77c;margin-right:7px}.location-sep{color:var(--accent);margin:0 6px}.location-muted{color:#748382;margin:0 5px}.viewer-tools{position:absolute;right:20px;top:26px;display:flex;flex-direction:column;gap:7px;z-index:3}.tool-button{display:flex;gap:9px;align-items:center;justify-content:flex-start;width:116px;background:#15262aaf;color:#dce5e0;border:1px solid #aeb8a83e;backdrop-filter:blur(10px);font-size:11px;padding:10px 12px;border-radius:4px}.tool-button[aria-pressed="true"]{border-color:#d1b789aa;color:#f1d7a0}.tool-button:hover{background:#20363bbf}.hotspot-layer{position:absolute;inset:0;pointer-events:none;z-index:2}.hotspot{position:absolute;display:flex;align-items:center;gap:7px;background:none;color:#f6e8c8;border:0;pointer-events:auto;padding:5px;transform:translate(-12px,-12px);filter:drop-shadow(0 2px 4px #071a1d);}.hotspot-marker{width:25px;height:25px;border:1px solid #eed29b;border-radius:50%;display:grid;place-items:center;background:#11272aaa;font-size:18px;font-weight:300;transition:transform .2s}.hotspot:hover .hotspot-marker{transform:scale(1.2);background:#8c6634}.hotspot-caption{font-size:9px;letter-spacing:.11em;color:#f4e6c9;font-weight:800;white-space:nowrap;opacity:0;transform:translateX(-7px);transition:.18s}.hotspot:hover .hotspot-caption,.hotspot:focus-visible .hotspot-caption{opacity:1;transform:none}.viewer-bottom{position:absolute;z-index:3;bottom:22px;left:30px;right:23px;display:flex;justify-content:space-between;align-items:end;gap:12px}.camera-bar{display:flex;align-items:center;gap:6px;background:#102025de;border:1px solid #5062656b;border-radius:5px;backdrop-filter:blur(15px);padding:6px}.camera-label{color:#e1c18c;font-size:9px;letter-spacing:.15em;font-weight:700;padding:0 12px}.camera-option{color:#afbebb;padding:12px 13px;background:transparent;border:1px solid transparent;border-radius:3px;font-size:10px;letter-spacing:.06em}.camera-option span{padding-left:4px}.camera-option:hover,.camera-option.active{background:#e8bb7830;border-color:#d8b98755;color:#ffdb9f}.engine-foot{color:#c3ccc7;font-size:10px;letter-spacing:.15em;font-weight:700;white-space:nowrap;padding-bottom:12px;text-shadow:0 2px 3px #151d1a}.tinysep{color:#c9a66d;padding:0 3px}.sidebar{border-left:1px solid #35494e;background:#152327;max-height:calc(100vh - 145px);min-height:700px}.side-scroll{height:100%;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#546160 #152327}.panel-header{padding:28px 25px 18px}.panel-header h2{font-family:Georgia,serif;font-weight:400;font-size:29px;letter-spacing:-.025em;margin:11px 0 7px}.panel-header p{margin:0;color:#8fa6a4;font-size:11px;line-height:1.55}.pane-section{padding:17px 25px 19px;border-top:1px solid #33454a}.pane-section.smaller{padding-top:18px;padding-bottom:18px}.pane-section.no-border{border:0;padding-top:8px}.section-title{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:10px;letter-spacing:.155em;font-weight:800;color:#b9c8c3}.section-title.extra-space{margin-top:22px}.section-extra{color:#f1d2a0;font-size:15px;letter-spacing:0}.section-extra small{font-size:10px;color:#a9aaa0;margin-left:3px;font-weight:500}.pane-section input[type=range]{width:100%;height:4px;accent-color:#e9bb73;margin:21px 0 12px;cursor:pointer}.scale-labels{display:flex;justify-content:space-between;color:#748d8b;letter-spacing:.105em;font-size:8px;font-weight:700}.scale-labels b{color:#b8c5b5;margin-left:2px}.mini-readout{display:flex;align-items:center;justify-content:space-between;margin:20px 0 0;border-top:1px dashed #50606470;padding-top:14px;color:#829995;font-size:10px;letter-spacing:.10em}.mini-readout strong{color:#f0ead6;font-size:18px;font-weight:500;letter-spacing:0}.mini-readout small{font-size:10px;color:#b5bbb1}.mode-switch{display:flex;margin-top:16px;border:1px solid #566267;border-radius:5px;padding:3px}.mode-switch button{flex:1;border:0;background:none;color:#b2c0bd;padding:10px 0;font-size:11px}.mode-switch button.active{background:#d2ab73;color:#172023;border-radius:3px;font-weight:750}.switch-row{display:flex;justify-content:space-between;align-items:center;position:relative;margin-top:19px;cursor:pointer}.switch-row strong{display:block;color:#ecede3;font-size:12px;font-weight:600}.switch-row small{display:block;margin-top:4px;color:#839b99;font-size:10px}.switch-row input{position:absolute;right:0;width:42px;height:25px;opacity:0;cursor:pointer;z-index:2}.switch-visual{width:40px;height:23px;background:#4b5e5e;border-radius:20px;position:relative;transition:.2s}.switch-visual:after{content:'';position:absolute;width:17px;height:17px;border-radius:100%;background:#d0d9d4;top:3px;left:3px;transition:.2s}.switch-row input:checked +.switch-visual{background:#bd9a6d}.switch-row input:checked +.switch-visual:after{left:20px;background:#1d2829}.switch-row input:focus-visible+.switch-visual{outline:2px solid var(--accent);outline-offset:3px}.live-tag{color:#a6cca6;font-size:9px}.stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin:16px 0 25px}.stat{border:1px solid #34474c;background:#1e3033;padding:12px 13px 14px}.stat span{color:#91aca8;font-size:9px;font-weight:800;letter-spacing:.10em;display:block;white-space:nowrap}.stat strong{display:block;font-size:27px;margin:12px 0 2px;font-weight:450;font-variant-numeric:tabular-nums;line-height:1}.stat small{font-size:8px;color:#9aa8a2;letter-spacing:.11em}.chart-heading{display:flex;justify-content:space-between;align-items:center;color:#97aeaa;font-size:10px;letter-spacing:.13em}.chart-heading b{color:#eccd98;font-weight:550;letter-spacing:0;font-size:15px}.chart-heading small{font-size:10px;color:#aab3a8}.chart{display:block;width:100%;height:94px;margin-top:9px;background:#142327;border-bottom:1px solid #465450}.chart-axis{display:flex;justify-content:space-between;font-size:8px;color:#92a49d;letter-spacing:.14em;margin-top:7px}.chart-axis b{color:#d3d3c7}.pane-section select{width:100%;color:#deddd1;background:#203136;border:1px solid #4f6261;padding:11px 12px;margin-top:14px;border-radius:4px;font-size:12px}.operation-buttons{display:flex;gap:9px}.primary-action{flex:1;background:#e4b87c;color:#172427;border:0;border-radius:4px;padding:15px 12px;font-weight:800;font-size:10px;letter-spacing:.07em}.primary-action:hover{background:#ffd09a}.secondary-action{background:#2a3a3d;color:#e7e9e2;border:1px solid #63716d;padding:13px 16px;border-radius:4px;font-size:11px}.secondary-action:hover{background:#34484b}.qualification{color:#819793;font-size:10px;line-height:1.5;margin:12px 0 2px}.bottombar{background:#101c1f;border-top:1px solid #314346;min-height:65px;padding:16px 30px;display:flex;align-items:center;gap:23px;justify-content:space-between;font-size:10px;letter-spacing:.10em}.bottombar-label{font-size:10px;color:#b2bbb3;white-space:nowrap}.bottombar-label strong{color:#e7e3d7}.bottombar-label span:not(.foil){color:#bb9968}.foil{color:#e2b779;font-size:20px;margin-right:5px}.bottombar-text{flex:1;max-width:650px;color:#8aa3a0;line-height:1.5;letter-spacing:0}.bottombar-text strong{color:#d5dfd4;font-weight:700;margin-right:6px;letter-spacing:.12em}.bottombar button{background:none;border:0;color:#e4b77d;font-size:10px;letter-spacing:.1em;font-weight:750;white-space:nowrap}.bottombar button span{font-size:16px;margin-left:7px}.render-error{position:absolute;z-index:10;inset:20%;background:#26373b;border:1px solid #bc9065;padding:30px;text-align:center}.render-error p{color:#b3c2bf}.render-error[hidden]{display:none}dialog{color:#e8ece6;background:#1b2b30;border:1px solid #657270;width:min(580px,calc(100% - 30px));padding:32px;box-shadow:0 20px 90px #000a}dialog::backdrop{background:#061114b8;backdrop-filter:blur(6px)}.modal-head{display:flex;justify-content:space-between;align-items:center}.modal-close{border:0;background:none;color:#dfceab;font-size:30px;line-height:1}.modal-dismiss{background:#e1b679;color:#172227;padding:13px 18px;border:0;font-size:11px;font-weight:800;letter-spacing:.1em;margin-top:16px}dialog h2{font-family:Georgia,serif;font-size:34px;font-weight:400;margin:18px 0}#modalContent{color:#b9ccc5;font-size:14px;line-height:1.8}#modalContent strong{color:#f0ddbb}#modalContent code{background:#0d1c20;padding:2px 4px}#modalContent ul{padding-left:20px}#modalContent li{margin-bottom:5px}#modalContent a{color:#f1c582}@media(max-width:1120px){.workspace{grid-template-columns:minmax(0,1fr) 315px}.sidebar{min-height:680px}.pane-section{padding-left:17px;padding-right:17px}.panel-header{padding-left:17px;padding-right:17px}.camera-option{padding:10px 7px}.camera-label{padding:0 6px}.brand-name{font-size:17px}.viewer-top h1{font-size:35px}}@media(max-width:850px){.topbar{padding:0 16px;height:68px;flex-basis:68px}.nav-chip{display:none}.brand-caption{font-size:7px}.logo{width:33px;height:33px}.navtop{gap:14px}.headerbutton span{display:none}.workspace{display:block}.viewer-card{height:66svh;min-height:480px}.viewer-top{top:20px;left:19px}.viewer-top h1{font-size:clamp(28px,6vw,42px)}.viewer-desc{font-size:10px}.viewer-tools{top:17px;right:12px}.tool-button{width:auto;padding:9px}.tool-button span{display:none}.viewport-location{left:17px;bottom:95px;font-size:8px}.viewer-bottom{left:12px;right:12px;bottom:12px}.engine-foot{font-size:8px}.camera-option{font-size:10px}.camera-option span{display:none}.camera-label{font-size:8px}.sidebar{min-height:0;max-height:none}.side-scroll{overflow:visible;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.panel-header{grid-column:1/-1}.pane-section{border-top:1px solid #33454a}.bottombar{flex-wrap:wrap;gap:8px;padding:14px 18px}.bottombar-text{order:3;flex-basis:100%}}@media(max-width:560px){.brand-name{font-size:15px}.brand-caption{letter-spacing:.08em}.viewer-card{height:67svh;min-height:485px}.viewer-top h1{font-size:29px;margin-top:9px}.viewer-desc{max-width:210px;font-size:10px}.viewer-tools{top:14px}.hotspot-caption{display:none}.viewport-location{bottom:86px;font-size:7px}.camera-option{padding:9px 6px}.camera-label{padding:0 4px}.side-scroll{display:block}.panel-header{padding:26px 22px}.pane-section{padding:18px 22px}.bottombar-label{font-size:8px}.bottombar button{font-size:9px}}
