:root{--ink:#090a08;--panel:#11120f;--panel2:#171814;--cream:#f1eee5;--muted:#989b91;--gold:#c4a260;--gold2:#e7cd91;--line:rgba(255,255,255,.1)}
*{box-sizing:border-box}html,body{margin:0;height:100%;background:var(--ink);color:var(--cream);font-family:Manrope,Arial,sans-serif;overflow:hidden}button,input{font:inherit}.app-shell{height:100%;display:flex;flex-direction:column}.topbar{height:76px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid var(--line);padding:0 30px;background:rgba(9,10,8,.92);z-index:10}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;color:var(--cream);font-size:14px;letter-spacing:.18em}.brand i{font-weight:300;color:var(--gold);font-style:normal}.brand-mark{display:grid;place-items:center;width:34px;height:34px;border:1px solid var(--gold);border-radius:50%;font-family:Prata;font-size:18px;color:var(--gold)}.journey{display:flex;align-items:center;gap:13px;font:10px DM Mono;letter-spacing:.1em;color:#62655e}.journey span{white-space:nowrap}.journey b{font-weight:400;margin-right:4px}.journey .active{color:var(--gold2)}.journey em{width:44px;height:1px;background:#33352f}.quiet-button{justify-self:end;background:none;border:0;color:#aaa;font-size:11px;letter-spacing:.08em;cursor:pointer}.quiet-button span{color:var(--gold);margin-left:6px}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 410px;min-height:0;flex:1}.stage{position:relative;overflow:hidden;background:radial-gradient(circle at 42% 40%,#242820 0,#111310 29%,#050605 65%)}#globeCanvas,#topoCanvas{position:absolute;inset:0;width:100%;height:100%}#topoCanvas{display:none}.atmosphere{position:absolute;width:55vw;height:55vw;max-width:760px;max-height:760px;border-radius:50%;left:calc(50% - 28vw);top:calc(50% - 27vw);box-shadow:0 0 100px rgba(190,204,171,.08);pointer-events:none}.studio{position:relative;overflow:auto;padding:42px 38px 24px;background:linear-gradient(150deg,var(--panel),#0c0d0b);border-left:1px solid var(--line)}.studio-head .eyebrow,.eyebrow{font:10px DM Mono;color:var(--gold);letter-spacing:.2em;margin:0 0 16px}.studio-head h1{font:400 clamp(34px,3vw,47px)/1.05 Prata,serif;letter-spacing:-.02em;margin:0 0 17px}.studio-head h1 em{color:var(--gold2);font-style:italic}.studio-head>p:last-child{color:var(--muted);font-size:12px;line-height:1.7;margin:0 0 28px;max-width:330px}.search-wrap label,.relief-control label,.spec-grid label{font:9px DM Mono;letter-spacing:.17em;color:#74776f}.search{margin-top:9px;height:47px;border:1px solid #3a3c36;background:#151612;display:flex;align-items:center}.search>span{padding:0 13px;color:var(--gold)}.search input{min-width:0;flex:1;border:0;outline:0;color:var(--cream);background:transparent;font-size:12px}.search button{height:100%;width:52px;border:0;border-left:1px solid #34362f;color:var(--gold);background:transparent;font:10px DM Mono;cursor:pointer}.search-results{position:absolute;z-index:20;background:#171814;border:1px solid #3a3c36;width:calc(100% - 76px);display:none}.search-results button{display:block;width:100%;padding:12px;text-align:left;border:0;border-bottom:1px solid var(--line);background:none;color:#ddd;font-size:11px;cursor:pointer}.selection-card{display:grid;grid-template-columns:28px 1fr;gap:10px;margin-top:25px;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.selection-card .number{color:var(--gold);font:10px DM Mono;border:1px solid #685a3d;border-radius:50%;width:23px;height:23px;display:grid;place-items:center}.selection-card h2{margin:2px 0 6px;font:400 15px Prata}.selection-card p{font-size:10px;line-height:1.5;color:#878a82;margin:0}.select-button{grid-column:2;margin-top:6px;width:max-content;border:0;border-bottom:1px solid var(--gold);background:none;color:var(--gold2);padding:5px 0;font:9px DM Mono;letter-spacing:.12em;cursor:pointer}.spec-grid{display:grid;grid-template-columns:repeat(3,1fr);padding:19px 0}.spec-grid div{border-right:1px solid var(--line);padding-left:14px}.spec-grid div:first-child{padding-left:0}.spec-grid div:last-child{border:0}.spec-grid strong{display:block;margin-top:7px;font:400 14px DM Mono;color:#ddd}.relief-control{padding:17px 0;border-top:1px solid var(--line)}.relief-control>div:first-child{display:flex;justify-content:space-between}.relief-control output{font:11px DM Mono;color:var(--gold2)}input[type=range]{width:100%;height:2px;margin:18px 0 8px;accent-color:var(--gold);cursor:pointer}.range-labels{display:flex;justify-content:space-between;color:#555850;font:8px DM Mono}.primary{width:100%;height:53px;margin-top:18px;background:var(--gold2);border:0;color:#17150f;display:flex;justify-content:space-between;align-items:center;padding:0 19px;font:600 10px DM Mono;letter-spacing:.16em;cursor:pointer;transition:.25s}.primary:hover{background:#f3dea9;transform:translateY(-1px)}.primary b{font-size:19px;font-weight:300}.fineprint{text-align:center;font:8px DM Mono;color:#686b64;letter-spacing:.08em}.fineprint span{color:var(--gold);margin-right:4px}.map-label{position:absolute;left:8%;top:14%;border-left:1px solid var(--gold);padding-left:11px;text-shadow:0 2px 8px #000}.map-label small{display:block;color:var(--gold);font:8px DM Mono;letter-spacing:.18em;margin-bottom:5px}.map-label strong{font:400 15px Prata}.coordinates{position:absolute;bottom:23px;left:28px;font:9px DM Mono;color:#777b72;letter-spacing:.08em}.stage-tools{position:absolute;right:22px;top:22px;display:flex;flex-direction:column;border:1px solid var(--line)}.stage-tools button{width:36px;height:35px;border:0;border-bottom:1px solid var(--line);background:rgba(10,11,9,.72);color:#bbb;cursor:pointer;font-size:15px}.stage-tools button:last-child{border:0;color:var(--gold)}.instruction{position:absolute;bottom:20px;right:22px;padding:10px 13px;background:rgba(10,11,9,.66);font:9px DM Mono;color:#8e9189}.instruction span{color:var(--gold)}.selection{display:none;position:absolute;left:31%;top:31%;width:30%;height:30%;border:1px solid var(--gold2);background:rgba(217,190,128,.06);box-shadow:0 0 24px rgba(217,190,128,.08)}.selection i{position:absolute;width:8px;height:8px;border:1px solid var(--gold2);background:#111}.selection i:nth-child(1){left:-4px;top:-4px}.selection i:nth-child(2){right:-4px;top:-4px}.selection i:nth-child(3){left:-4px;bottom:-4px}.selection i:nth-child(4){right:-4px;bottom:-4px}.selection span{position:absolute;bottom:-24px;width:100%;text-align:center;font:8px DM Mono;color:var(--gold2)}.modal{position:fixed;inset:0;z-index:50;display:none;place-items:center;background:rgba(2,3,2,.8);backdrop-filter:blur(15px)}.modal.open{display:grid}.modal-card{position:relative;width:min(570px,92vw);padding:30px;background:#11120f;border:1px solid #3a3b34;box-shadow:0 30px 90px #000}.modal-close{position:absolute;right:13px;top:10px;border:0;background:none;color:#888;font-size:25px;cursor:pointer}.modal h2{margin:0 0 17px;font:400 27px Prata}.preview-wrap{height:225px;background:radial-gradient(circle,#27281f,#090a08);border:1px solid var(--line)}#previewCanvas{width:100%;height:100%}.model-data{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--line);border-top:0}.model-data span{padding:10px;border-right:1px solid var(--line);font:11px DM Mono}.model-data span:last-child{border:0}.model-data small{display:block;color:#686b64;font-size:7px;margin-bottom:4px}.model-data b{font-weight:400}.modal-card>p:not(.eyebrow){font-size:10px;color:#868981;line-height:1.6}.modal .primary{margin-top:10px}
.data-source{display:flex;align-items:center;gap:11px;padding:12px 14px;margin-bottom:5px;background:#171b18;border:1px solid rgba(255,255,255,.09)}.data-dot{width:7px;height:7px;border-radius:50%;background:#73aa84;box-shadow:0 0 0 4px rgba(115,170,132,.12)}.data-source div{display:flex;flex-direction:column}.data-source label{font:7px DM Mono;letter-spacing:.15em;color:#747a73}.data-source strong{font:9px DM Mono;letter-spacing:.08em;margin:3px 0;color:#d9d8d0}.data-source small{font:8px Manrope;color:#777d76}.data-source.loading .data-dot{background:var(--gold);animation:pulse 1s infinite}.data-source.error .data-dot{background:#b85c4f}button:disabled{opacity:.55;cursor:wait}@keyframes pulse{50%{opacity:.25}}
.shape-control{padding:17px 0;border-bottom:1px solid var(--line)}.shape-control>label{font:9px DM Mono;letter-spacing:.17em;color:#74776f}.shape-tabs{display:grid;grid-template-columns:1fr 1fr;margin:10px 0 13px;border:1px solid #3a3c36}.shape-tabs button{height:35px;border:0;background:transparent;color:#797d75;font:8px DM Mono;letter-spacing:.1em;cursor:pointer}.shape-tabs button+button{border-left:1px solid #3a3c36}.shape-tabs button.active{background:#263027;color:var(--gold2)}.size-sliders>div{display:flex;justify-content:space-between;margin-top:9px;font:8px DM Mono;color:#73776f}.size-sliders output{color:#c9aa67}.size-sliders input{margin:9px 0 3px}.shape-control>small{display:block;color:#686d66;font-size:8px;line-height:1.5;margin-top:8px}.shape-control.boundary .size-sliders{display:none}
.preview-wrap{position:relative;cursor:grab;touch-action:none}.preview-wrap:active{cursor:grabbing}.preview-help{position:absolute;left:50%;bottom:8px;transform:translateX(-50%);white-space:nowrap;padding:5px 8px;background:rgba(8,10,8,.72);color:#8f927f;font:7px DM Mono;letter-spacing:.1em;pointer-events:none}
.live-preview-card{margin-top:12px;border:1px solid var(--line);background:#0b0d0b}.live-preview-head{display:flex;justify-content:space-between;align-items:center;padding:9px 11px;border-bottom:1px solid var(--line)}.live-preview-head label{font:8px DM Mono;letter-spacing:.14em;color:#777c74}.live-preview-head small{font:7px DM Mono;color:#b69856}#livePreview{height:150px;position:relative;background:radial-gradient(circle at 50% 40%,#21251f,#090a08);overflow:hidden}#threePreview{width:100%;height:100%;background:radial-gradient(circle at 50% 40%,#252921,#080908)}#livePreview canvas,#threePreview canvas{display:block;width:100%!important;height:100%!important}.download-grid{display:grid;grid-template-columns:1fr 1.35fr;gap:8px}.download-grid .primary{font-size:8px}.primary.secondary{background:#242820;color:#e7cd91;border:1px solid #5f5339}.primary.secondary:hover{background:#30362b}
.cart-button{background:#e8cf91;margin-top:9px}.cart-button[data-state="working"]{opacity:.65;cursor:wait}.cart-button[data-state="success"]{background:#789780;color:#fff}
.material-control{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:18px;margin:14px 0 4px;padding:12px 14px;border:1px solid var(--line);background:#171814}.material-control label{font:9px DM Mono;letter-spacing:.17em;color:var(--gold)}.material-control select{width:100%;padding:9px 34px 9px 11px;border:1px solid #3a3c36;outline:0;background:#10110e;color:var(--cream);font:11px Manrope;cursor:pointer}.material-control select:focus{border-color:var(--gold)}
#realMap{position:absolute;inset:0;z-index:0;background:#09151b}#globeCanvas{display:none}.atmosphere{display:none}.official-logo{width:45px;height:45px;object-fit:contain}.earth-word{font:9px DM Mono;color:var(--gold);letter-spacing:.22em;margin-left:-7px;align-self:flex-end;margin-bottom:7px}.maplibregl-canvas{cursor:grab}.maplibregl-canvas:active{cursor:grabbing}.maplibregl-ctrl-attrib{font-size:8px!important;background:rgba(255,255,255,.7)!important}.map-label,.coordinates,.stage-tools,.instruction{z-index:4}.map-label{background:rgba(6,19,24,.7);padding:9px 12px;border-left:2px solid var(--gold);backdrop-filter:blur(7px)}.map-selection-label{font:9px DM Mono;color:#f2d073;background:#0a252e;border:1px solid #e2c268;padding:5px 8px;white-space:nowrap}.selection{z-index:3;pointer-events:none}
@media(max-width:900px){html,body{overflow:auto}.topbar{grid-template-columns:1fr auto;height:64px}.journey{display:none}.workspace{grid-template-columns:1fr}.stage{height:55vh;min-height:420px}.studio{border-left:0;padding:32px 25px}.atmosphere{width:80vw;height:80vw;left:10vw;top:5vh}}@media(max-width:520px){.topbar{padding:0 16px}.quiet-button{font-size:0}.quiet-button span{font-size:15px}.stage{height:48vh;min-height:360px}.map-label{top:10%;left:5%}.instruction{display:none}.studio-head h1{font-size:37px}}
.manufacturing-downloads{display:none!important}
