:root{color-scheme:dark;--bg:#101615;--panel:#161d1c;--line:#2b3532;--text:#e5ede8;--muted:#91a19a;--mint:#a5f7c8;--orange:#f1b47d}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:13px 'DM Sans',Arial,sans-serif}button,input,select{font:inherit}button,select{cursor:pointer}button{border:1px solid var(--line);background:#202927;color:var(--text);padding:9px 12px;border-radius:6px;transition:background .15s,border-color .15s}button:hover{background:#303e37;border-color:#6d8576}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--mint);outline-offset:2px}button:disabled{opacity:.4;cursor:not-allowed}input,select{background:#101715;color:var(--text);border:1px solid var(--line);border-radius:5px;padding:9px;width:100%;min-width:0}input[type=color]{height:34px;padding:3px}input[type=checkbox]{width:auto;accent-color:var(--mint)}button.primary{background:var(--mint);color:#14251a;border-color:var(--mint);font-weight:700}button.primary:hover{background:#c6ffde}.topbar{height:78px;display:flex;align-items:center;border-bottom:1px solid var(--line);padding:0 24px;gap:18px}.brand{display:flex;align-items:center;gap:12px;color:var(--mint);text-decoration:none;font:700 19px 'Space Grotesk',Arial,sans-serif;letter-spacing:1px}.brand .light{color:#e9eee9;font-weight:400}.brand small{display:block;color:#83958a;font:9px 'DM Sans',sans-serif;letter-spacing:1.7px;margin-top:5px}.alpha{font:10px 'Space Grotesk',sans-serif;color:var(--orange);border:1px solid #67503b;padding:5px 7px;border-radius:4px;white-space:nowrap}.header-actions{display:flex;gap:8px;margin-left:auto}.quiet{border-color:transparent;background:transparent;color:var(--muted)}.clube-logo{width:149px;height:auto;margin-left:14px;opacity:.85}.workspace{display:grid;grid-template-columns:240px minmax(340px,1fr) 254px;min-height:calc(100dvh - 78px)}.sidebar,.inspector{padding:23px 18px;background:var(--panel);min-width:0}.sidebar{border-right:1px solid var(--line);display:flex;flex-direction:column}.side-heading,.inspector-heading{display:flex;justify-content:space-between;align-items:center}.eyebrow{font-size:10px;letter-spacing:1.6px;color:var(--muted);font-weight:600}.live-dot{font-size:10px;color:var(--mint)}.live-dot:before{content:'●';font-size:7px;margin-right:5px}.project-name{font:500 17px 'Space Grotesk',sans-serif;background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:15px 0}.section-label{font-size:10px;color:#677c70;margin:25px 0 12px;letter-spacing:1.3px}.section-label span{color:#adbbb2;margin-left:8px}.segmented{display:flex;background:#0e1512;border:1px solid var(--line);border-radius:5px;padding:3px;gap:2px}.segmented button{flex:1;padding:8px 2px;font-size:11px;border:0;background:none;color:var(--muted)}.segmented .active{background:#304036;color:var(--mint)}.add-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.add-grid button{height:70px;font-size:11px;text-align:left;background:#1c2722}.add-grid button:last-child{grid-column:1/-1;height:46px;display:flex;align-items:center;gap:12px}.add-grid span{display:block;font:25px 'Space Grotesk';color:var(--mint);margin-bottom:5px}.add-grid button:last-child span{margin:0}.list-heading{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1px;color:var(--muted);margin:27px 0 12px}.objects{max-height:238px;min-height:95px;overflow:auto}.object-row{display:flex;gap:8px;align-items:center;width:100%;padding:11px 8px;background:transparent;border:1px solid transparent;text-align:left;margin-bottom:4px;font-size:12px}.object-row.active{background:#2a3b30;border-color:#415a49}.object-row .dot{width:7px;height:7px;border-radius:2px;flex-shrink:0}.object-row small{display:block;color:var(--muted);font-size:10px;margin-top:4px}.object-row .arrow{margin-left:auto;color:var(--mint)}.object-actions{display:flex;gap:6px;margin:10px 0 22px}.object-actions button{flex:1;font-size:11px;background:none}.danger{color:#e3a89c}.course-card{margin-top:auto;border:1px solid #455344;border-radius:8px;padding:16px;background:linear-gradient(140deg,#293c2eeb,#17211ce8),url('assets/halftone-web.jpg') center/cover}.course-card>img{width:155px;max-width:100%;height:auto}.course-card p{font:400 16px/1.5 'Space Grotesk',sans-serif;color:#dce5d6;margin:18px 0}.course-card button{width:100%;text-align:left;color:var(--mint);background:#40533e;border:0;font-size:11px}.course-card button span{float:right}.course-card small{font-size:9px;display:block;color:#9aaa98;margin-top:10px}.help-button{margin-top:15px;border:0;background:none;color:var(--muted);font-size:11px;padding:8px 0;text-align:left}main{min-width:0;display:flex;flex-direction:column}.view-toolbar{height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 20px;border-bottom:1px solid var(--line);gap:8px}.tabs{display:flex;align-self:stretch;gap:18px}.tabs button{border:0;border-radius:0;background:none;color:var(--muted);padding:0 2px;font-size:12px}.tabs .active{border-bottom:2px solid var(--mint);color:var(--mint)}.view-actions{display:flex;gap:6px}.view-actions button,.view-actions select{font-size:10px;background:transparent;padding:7px}.view-actions select{width:145px}.viewport{position:relative;min-height:390px;flex:1;background:#111919;overflow:hidden}#threeHost{position:absolute;inset:0}#threeHost canvas{display:block;width:100%;height:100%;touch-action:none}.viewport-top,.viewport-bottom{position:absolute;left:22px;right:22px;display:flex;justify-content:space-between;pointer-events:none;font-size:10px;color:#93a69e}.viewport-top{top:20px}.viewport-top i{font-size:6px;color:var(--mint);font-style:normal;margin:0 8px}.viewport-label{letter-spacing:1px}#fps{font-family:monospace}.viewport-bottom{bottom:18px;align-items:center;gap:20px;font-size:10px}.viewport-bottom button{pointer-events:auto;font-size:10px;background:#17201cbb}.mint{color:var(--mint)}.axis{position:absolute;right:24px;bottom:70px;color:#7c9e8c;font:10px monospace;display:flex;flex-direction:column;gap:6px}.axis span{margin-left:13px}.bottom-panel{padding:23px 25px;background:#1a221e;border-top:1px solid var(--line);display:flex;gap:20px;align-items:center;justify-content:space-between}.source-title h2{font:500 19px 'Space Grotesk',sans-serif;margin:8px 0}.source-title p{color:var(--muted);font-size:11px;margin:0;max-width:390px}.source-actions{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.source-actions button{font-size:11px;white-space:nowrap;padding:12px}.active-source{color:var(--mint);border-color:#708a73;background:#2b3c2d}.soon{display:block;font-size:7px;letter-spacing:1px;color:#a2a99c;margin-top:4px}.statusbar{display:flex;justify-content:space-between;padding:10px 20px;font-size:9px;color:#73887a;border-top:1px solid var(--line);gap:10px}.inspector{border-left:1px solid var(--line)}.inspector-heading{margin-bottom:23px}.inspector-heading>span:last-child{color:#70877a}.field-label{display:block;font-size:11px;color:var(--muted)}.field-label input{display:block;margin-top:7px}.inspector-section{font-size:9px;letter-spacing:1px;color:#aab9ae;border-top:1px solid var(--line);padding-top:18px;margin:20px 0 12px;display:flex;justify-content:space-between}.inspector-section span{color:#677f70}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.field-grid label{font-size:10px;color:var(--muted)}.field-grid input{margin-top:6px;padding:8px;font-size:12px}.field-grid.triple{grid-template-columns:repeat(3,1fr);gap:6px}.dimension-summary{background:#253429;color:var(--mint);padding:10px;margin-top:12px;font-size:11px;border-radius:4px;line-height:1.7}.note{font-size:10px;color:#99a998;line-height:1.6}.region-item{font:10px monospace;line-height:1.6;color:#a7b7a8;padding:8px;background:#101813;margin-top:5px;border-radius:4px;cursor:pointer}.region-item.selected{outline:1px solid var(--mint)}.range-label{display:block;color:var(--muted);font-size:11px;margin-top:14px}.range-label input{padding:0;accent-color:var(--mint);margin:12px 0}.check-label{display:flex;gap:7px;align-items:center;font-size:11px;color:#bac6bc}.muted,#curveFields small{font-size:9px;color:#849489;line-height:1.5;display:block;margin-top:9px}#curveFields{margin-top:12px}.export-box{display:grid;gap:7px;margin-top:22px}.export-box button{font-size:10px}.map-view{padding:20px;flex:1;min-height:390px;background:#101715}.map-tools{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.map-tools label{font-size:10px;color:var(--muted);width:86px}.map-tools input{margin-top:6px;padding:7px}.map-tools button{font-size:10px}.map-hint{font-size:11px;line-height:1.6;color:var(--muted)}.map-board{display:flex;align-items:center;justify-content:center;min-height:270px;padding:25px;background-color:#17201b;background-image:linear-gradient(45deg,#1b251f 25%,transparent 25%),linear-gradient(-45deg,#1b251f 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#1b251f 75%),linear-gradient(-45deg,transparent 75%,#1b251f 75%);background-size:20px 20px;background-position:0 0,0 10px,10px -10px,-10px 0;border:1px solid var(--line);border-radius:7px}#mapCanvas{max-width:100%;max-height:55vh;object-fit:contain;box-shadow:0 10px 40px #0008;touch-action:none;cursor:move}.map-info{font-size:11px;color:var(--muted);line-height:1.7;margin-top:15px}#toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);background:#ddfbe5;color:#182b20;padding:13px 22px;border-radius:7px;box-shadow:0 8px 40px #0006;z-index:20;opacity:0;pointer-events:none;transition:.2s;max-width:90vw}#toast.show{opacity:1;transform:translate(-50%,0)}dialog{background:#1a2520;color:var(--text);border:1px solid #526756;border-radius:12px;padding:32px;max-width:560px;width:90vw;line-height:1.8}dialog::backdrop{background:#050a08ba;backdrop-filter:blur(5px)}dialog h2{font:500 25px 'Space Grotesk',sans-serif;color:var(--mint)}dialog p,dialog li{color:#b3c5b7}dialog img{width:125px;float:right;margin-left:20px}.dialog-close{float:right;font-size:20px;padding:0 8px;background:none;border:0}#fatal{position:absolute;inset:60px 30px;background:#281e1a;padding:30px;z-index:4;line-height:1.8}[hidden]{display:none!important}
@media(min-width:851px){.workspace{height:calc(100dvh - 78px);min-height:0;overflow:hidden}.sidebar,.inspector{overflow-y:auto;scrollbar-width:thin;scrollbar-color:#3c4e42 transparent}main{overflow:hidden}.viewport{min-height:200px}.course-card{margin-top:20px}.bottom-panel{flex-shrink:0}.map-view{overflow:auto;min-height:0}.statusbar{flex-shrink:0}}
@media(min-width:1600px){.workspace{grid-template-columns:265px minmax(500px,1fr) 280px}.sidebar,.inspector{padding:25px}}
@media(max-width:1200px){.workspace{grid-template-columns:205px minmax(320px,1fr) 222px}.sidebar,.inspector{padding:18px 12px}.clube-logo{display:none}.bottom-panel{align-items:flex-start;flex-direction:column;padding:20px}.source-actions{justify-content:flex-start}.view-actions select{width:100px}.view-toolbar{padding:0 12px}.tabs{gap:12px}.viewport-bottom{left:12px;right:12px}.desktop-hint{display:none}}
@media(max-width:850px){.workspace{grid-template-columns:190px minmax(300px,1fr)}.inspector{grid-column:1/-1;display:block;border-top:1px solid var(--line)}#selectionForm{display:grid;grid-template-columns:1fr 1fr;gap:12px 24px}.inspector-section{margin-top:8px}.inspector .export-box{max-width:400px}.brand{font-size:16px}.topbar{padding:0 15px;gap:10px}.header-actions button{font-size:10px;padding:8px}.alpha{font-size:8px}.brand small{font-size:7px}.viewport{min-height:480px}.course-card{padding:12px}.course-card p{font-size:14px}.statusbar{flex-wrap:wrap}}
@media(max-width:580px){.topbar{height:auto;min-height:100px;flex-wrap:wrap;padding:14px 12px;gap:10px}.header-actions{width:100%;margin:0}.header-actions button{flex:1}.alpha{margin-left:auto}.workspace{display:flex;flex-direction:column}.sidebar{padding:14px;border-right:0;display:grid;grid-template-columns:1fr 1fr;gap:10px 15px}.side-heading,.project-name{grid-column:1/-1}.project-name{padding:4px 0 10px}.section-label{margin:8px 0}.segmented{grid-column:1/-1}.add-grid{grid-column:1/-1;grid-template-columns:repeat(3,1fr)}.add-grid button,.add-grid button:last-child{grid-column:auto;height:62px;display:block;font-size:10px}.add-grid span,.add-grid button:last-child span{font-size:22px;margin:0 0 3px}.list-heading{margin:5px 0;grid-column:1/-1}.objects{grid-column:1/-1;display:flex;min-height:0;max-height:110px;gap:5px}.object-row{min-width:130px;width:auto;flex-shrink:0}.object-actions{margin:0;grid-column:1/-1}.course-card{display:none}.help-button{margin:0;grid-column:1/-1}.view-toolbar{height:56px}.view-actions select{width:100px}.view-actions button{display:none}.viewport{min-height:410px}.viewport-bottom{font-size:9px;gap:10px}.viewport-bottom button{font-size:9px;padding:8px}.viewport-top{left:12px;right:12px;font-size:8px}.bottom-panel{padding:18px 14px}.source-title h2{font-size:18px}.source-actions button{padding:10px;font-size:10px}.inspector{padding:20px 16px}#selectionForm{display:block}.inspector-section{margin-top:20px}.field-grid{gap:12px}.inspector .export-box{max-width:none}.map-view{padding:14px}.map-board{padding:8px;min-height:220px}.map-tools{gap:7px}.map-tools button{padding:8px}.map-tools label{width:75px}}
