:root{color-scheme:dark;--bg:#07121c;--panel:#0b1924;--panel2:#0e202d;--line:#1b3441;--line2:#254653;--text:#ebf3f4;--muted:#7693a2;--aqua:#58d5db;--aquaDeep:#194b55;--gold:#edb571;--goldDeep:#59442d;--shadow:0 12px 35px #0003}
*{box-sizing:border-box}html,body,#app{margin:0;min-height:100%;width:100%;background:var(--bg)}body{color:var(--text);font:13px/1.55 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif}button,input,select{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--aqua);outline-offset:3px}button:disabled{opacity:.4;cursor:not-allowed}.tecton-app{height:100dvh;min-height:690px;display:grid;grid-template-rows:72px minmax(0,1fr) 30px;overflow:hidden;background:radial-gradient(ellipse at 48% 29%,#102535 0,#07141f 46%,#060e18 90%)}.topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 28px;background:#091722e8;border-bottom:1px solid var(--line);position:relative;z-index:2}.brand{display:flex;align-items:center;gap:12px;min-width:263px}.brand-icon{width:39px;height:39px;border:1px solid #43727d;border-radius:10px;position:relative;overflow:hidden;background:linear-gradient(135deg,#15343d,#08131e)}.brand-icon i{position:absolute;display:block;border:1.6px solid #53d5df;width:43px;height:23px;border-radius:50%;left:-4px;transform:rotate(-26deg)}.brand-icon i:nth-child(1){top:1px}.brand-icon i:nth-child(2){top:10px}.brand-icon i:nth-child(3){top:19px}.brand-icon span{position:absolute;background:#fac17a;width:6px;height:6px;border-radius:50%;top:16px;left:17px;box-shadow:0 0 12px #ffb46a}.brand-word{display:flex;flex-direction:column;line-height:1.2;letter-spacing:.16em}.brand-word strong{font-size:17px;letter-spacing:.15em;font-weight:730}.brand-slash{color:var(--aqua)}.brand-word small{font-size:7.6px;color:#87a6b2;letter-spacing:.24em;margin-top:5px}.top-mid{flex:1;display:flex;flex-direction:column;align-items:flex-start;line-height:1.35;min-width:170px}.crumb{font-size:8px;letter-spacing:.18em;color:#668494;font-weight:750}.crumb b{color:#396074;padding:0 6px}.workspace-name{font-size:12px;color:#b8cbd0;letter-spacing:.01em;margin-top:3px}.top-right{display:flex;gap:13px;align-items:center}.build-tag,.status-chip,.frame-tag{font-size:9px;letter-spacing:.12em;font-weight:750}.build-tag{color:#7e9cab;padding:7px 9px;border:1px solid #213944;border-radius:4px}.status-chip{display:flex;align-items:center;gap:8px;color:#c1e4e0;background:#173134;border:1px solid #25514d;border-radius:4px;padding:7px 11px}.status-dot,.pulse-mark,.live-tag>span{background:#5ae1ab;width:6px;height:6px;border-radius:50%;box-shadow:0 0 9px #5ae1ab99;display:inline-block;animation:breathe 2.4s infinite}@keyframes breathe{50%{opacity:.36;box-shadow:0 0 3px #4fd0c377}}
.layout{min-height:0;display:grid;grid-template-columns:285px minmax(400px,1fr) 285px}.panel-scroll{min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#31505d transparent}.controls-panel,.telemetry-panel{background:#091824;border-right:1px solid var(--line);padding:23px 21px 25px}.telemetry-panel{border-right:0;border-left:1px solid var(--line);padding:23px 20px 25px;background:#0a1a25}.panel-eyebrow{color:var(--aqua);font-size:9px;letter-spacing:.21em;font-weight:800}.controls-panel h1{font-size:26px;letter-spacing:-.04em;line-height:1.12;margin:10px 0 11px;font-weight:720}.controls-panel h1 span{color:var(--gold)}.panel-description{color:#8aa4ae;font-size:11px;margin:0 0 14px;line-height:1.74}.small-legend{font-size:8.5px;color:#7f9ba8;letter-spacing:.05em;display:flex;align-items:center;gap:7px;white-space:nowrap}.small-line{width:16px;height:2px;display:inline-block}.small-line.gold{background:var(--gold)}.small-line.aqua{background:var(--aqua)}.section-head{display:flex;justify-content:space-between;margin:25px 0 12px;border-bottom:1px solid #203845;padding-bottom:11px;color:#d0e2e5;font-size:9px;font-weight:790;letter-spacing:.16em}.section-count,.section-head>span:last-child{color:#5b7d8a;font-weight:650}.preset-list{display:grid;gap:7px}.preset{height:63px;width:100%;display:flex;align-items:center;gap:12px;padding:10px;background:#0e202c;border:1px solid #193541;border-radius:6px;color:#d9e9ed;text-align:left;transition:background .2s,border .2s}.preset:hover{border-color:#4f8190;background:#15303a}.preset.selected{background:linear-gradient(100deg,#173743,#112833);border:1px solid #3ca2aa;box-shadow:inset 2px 0 var(--aqua)}.preset-copy{display:flex;flex-direction:column;gap:2px;flex:1}.preset-copy strong{font-size:11.5px;font-weight:670}.preset-copy small{color:#7e9cac;font-size:9px}.preset-index{font-size:10px;color:#6b8c99}.preset-art{position:relative;display:block;width:46px;height:37px;min-width:46px;border:1px solid #2a4552;border-radius:3px;overflow:hidden;background:#122a33}.preset-art i{display:block;height:8px;border-top:2px solid #648e98;position:absolute;width:140%;left:-10%}.preset-art i:nth-child(1){top:6px}.preset-art i:nth-child(2){top:17px;border-color:#bc9171}.preset-art i:nth-child(3){top:29px;border-color:#607784}.art-fault i{transform:rotate(5deg)}.art-fault:after{content:"";position:absolute;height:100%;width:2px;background:#e6a06e;left:55%;top:0;transform:rotate(8deg)}.art-fold i{border-radius:50% 50% 0 0;transform:translateY(-5px)}.control-block{margin:0 0 18px}.slider-heading,.velocity-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px;gap:8px}.slider-heading label,.velocity-row label{font-size:10.5px;color:#c5d5da}.slider-heading output,.velocity-row output{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px;color:#e1c49e}.controls-panel input[type=range]{appearance:none;width:100%;height:3px;border-radius:3px;background:linear-gradient(90deg,var(--aqua) var(--fill,50%),#274353 var(--fill,50%));display:block;margin:9px 0 0;cursor:pointer}.controls-panel input[type=range]::-webkit-slider-thumb{appearance:none;border-radius:50%;background:#e7fcf7;border:2px solid #51c4cb;width:12px;height:12px;box-shadow:0 0 0 3px #4dcbd91a}.controls-panel input[type=range]::-moz-range-thumb{border-radius:50%;background:#e7fcf7;border:2px solid #51c4cb;width:10px;height:10px}.slider-limits{display:flex;justify-content:space-between;color:#5d8190;font-size:8px;letter-spacing:.05em;margin-top:7px}.velocity-list{display:grid;gap:4px}.velocity-list input[type=range]{margin:0 0 12px}.velocity-row{margin:0 0 3px;justify-content:flex-start}.velocity-row label{flex:1}.velocity-row output{font-size:9.5px}.layer-swatch{width:10px;height:10px;display:block;border:1px solid #7797a1}.layer-one{background:#253b49}.layer-two{background:#49616d}.layer-three{background:#283245}.space-top{margin-top:14px}.mode-row{display:flex;gap:3px;background:#09131d;border:1px solid #24404b;padding:3px;border-radius:5px}.mode-row button{color:#839eaa;flex:1;font-size:9px;background:transparent;border:0;padding:8px 0;border-radius:3px}.mode-row button.active{color:#e6faf6;background:#24505a}.reset-params{margin:20px 0 0;width:100%;padding:10px;background:transparent;color:#8facb7;border:1px dashed #365260;border-radius:5px;font-size:10px;text-align:left}.reset-params:hover{border-color:var(--aqua);color:#eff}
.workbench{min-width:0;min-height:0;display:grid;grid-template-rows:auto minmax(250px,1fr) auto auto auto;padding:20px 23px 0;background:radial-gradient(ellipse at 50% 35%,#112938,#071723 75%)}.stage-header{display:flex;justify-content:space-between;align-items:end;padding:0 0 17px;gap:14px}.stage-header h2{font-size:17px;letter-spacing:-.025em;margin:6px 0 0;font-weight:700}.h2-soft{font-size:12px;color:#7899a7;font-weight:460}.stage-tools{display:flex;gap:7px;align-items:center}.frame-tag{padding:7px 9px;border:1px solid #355561;color:#8bb9be;border-radius:3px}.view-tool{border:1px solid #294453;padding:8px 10px;color:#bfd3d9;background:#102430;font-size:9px;letter-spacing:.08em;border-radius:4px;white-space:nowrap}.view-tool:hover{border-color:var(--aqua);color:#fff}.viewport-wrap{position:relative;min-height:245px;border:1px solid #2a4e5d;border-radius:5px;overflow:hidden;box-shadow:inset 0 0 120px #08121b,0 12px 28px #0003;background:radial-gradient(ellipse at 55% 40%,#173546,#07141f 75%)}.viewport-wrap::after{content:"";pointer-events:none;position:absolute;inset:0;background:linear-gradient(90deg,#091b2540,transparent 22%,transparent 75%,#06182340),radial-gradient(ellipse at 50% 50%,transparent 55%,#07141f70 100%)}#geology{width:100%;height:100%;display:block;cursor:grab;touch-action:none;position:absolute;inset:0}#geology:active{cursor:grabbing}.view-grid{pointer-events:none;position:absolute;inset:0;opacity:.16;background-image:linear-gradient(to right,#42758644 1px,transparent 1px),linear-gradient(to bottom,#42758644 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(90deg,#0005,transparent 50%,#0005)}.viewport-top,.view-bottom{position:absolute;z-index:2;left:18px;right:18px;display:flex;justify-content:space-between;align-items:center;gap:8px}.viewport-top{top:15px}.viewport-overline{display:flex;align-items:center;gap:8px;letter-spacing:.14em;font-size:9px;color:#a4cbd2;font-weight:730}.pulse-mark{width:6px;height:6px}.view-coordinates{color:#6f9ba9;font:9px ui-monospace,monospace}.view-bottom{bottom:14px}.legend-bar{display:flex;align-items:center;gap:7px;color:#9dbbc5;font-size:9px}.legend-label{font-size:8px;letter-spacing:.12em;color:#7798a5;margin-right:6px}.legend-chip{width:5px;height:5px;border-radius:50%}.legend-chip.negative{background:#fa9260}.legend-chip.positive{background:#4dd8e4}.legend-gradient{display:inline-block;background:linear-gradient(90deg,#f28b5b,#1b3348,#39d9e5);width:76px;height:4px;border-radius:2px}.gesture-help{color:#7898a8;font-size:8px;letter-spacing:.10em}.view-annot{position:absolute;z-index:2;display:flex;gap:9px;align-items:flex-start;color:#e8f0f0;letter-spacing:.10em;font-size:9px;font-weight:740;pointer-events:none;text-shadow:0 1px 10px #071925}.view-annot small{display:block;color:#829faa;font-size:8px;letter-spacing:.10em;font-weight:500;margin-top:4px}.annotation-source{left:10%;top:24%}.annotation-array{right:8%;top:21%}.decor-circle{width:8px;height:8px;border:2px solid currentColor;border-radius:50%;margin-top:3px;box-shadow:0 0 11px currentColor}.decor-circle.gold{color:#f2bb76}.decor-circle.aqua{color:#5fe0e9}.compass{pointer-events:none;position:absolute;z-index:2;bottom:60px;right:22px;color:#95b6bd;display:flex;flex-direction:column;gap:3px;align-items:center;font:10px ui-monospace,monospace}.compass i{width:1px;height:23px;background:#81aeb7;display:block;position:relative;transform:rotate(24deg)}.compass i:after{content:"";position:absolute;left:-4px;top:-2px;border-left:4px solid transparent;border-right:4px solid transparent;border-bottom:7px solid #dfa974;transform:rotate(180deg)}.compass small{font-size:9px}.webgl-error{position:absolute;z-index:6;inset:0;background:#0a1825ed;padding:55px 35px;color:#d2e3e8}.webgl-error[hidden]{display:none}.transport{display:flex;align-items:center;gap:8px;border:1px solid #254653;border-top:0;padding:13px 14px;background:#0a1e29}.fire-button{background:linear-gradient(115deg,#eabb7b,#d89951);border:1px solid #ffc58b;color:#1b2631;border-radius:4px;font-size:10px;letter-spacing:.13em;font-weight:850;padding:12px 15px;box-shadow:0 3px 20px #eda74c20;white-space:nowrap}.fire-button:hover{filter:brightness(1.13)}.fire-cross{font-size:15px;margin-right:4px}.fire-button kbd{margin-left:10px;border:1px solid #a57741;padding:2px 5px;border-radius:3px;font:9px ui-monospace,monospace}.transport-button{height:39px;width:39px;border:1px solid #375564;border-radius:4px;background:#122c38;color:#dcf3ed;font-size:17px}.transport-button:hover{background:#20404a}.continuous-label{display:flex;align-items:center;gap:8px;white-space:nowrap;font-size:9px;letter-spacing:.09em;color:#92b0bb;cursor:pointer;margin-left:5px}.continuous-label input{position:absolute;opacity:0;pointer-events:none}.toggle-glyph{position:relative;width:27px;height:15px;border-radius:12px;border:1px solid #42616b;background:#183039;transition:background .15s}.toggle-glyph:after{content:"";position:absolute;left:2px;top:2px;width:9px;height:9px;border-radius:50%;background:#7399a3;transition:transform .15s}.continuous-label input:checked+.toggle-glyph{background:#176b73}.continuous-label input:checked+.toggle-glyph:after{transform:translateX(12px);background:#78f0df}.sim-clock{margin-left:auto;text-align:right;display:flex;flex-direction:column}.sim-clock small{font-size:8px;letter-spacing:.13em;color:#7998a5}.sim-clock strong{font:600 17px ui-monospace,monospace;color:#d7f2f3;font-variant-numeric:tabular-nums}.sim-clock strong span{font-size:11px;color:#7195a1}.metrics-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:13px}.metric-card{background:linear-gradient(145deg,#0e2430,#091a26);border:1px solid #224250;padding:12px 14px;border-radius:4px;min-height:90px;display:flex;flex-direction:column;justify-content:space-between}.metric-card>span{font-size:8px;letter-spacing:.12em;font-weight:730;color:#819eaa;display:flex;justify-content:space-between}.metric-card>span small{font-size:11px;color:#4b8290}.metric-card strong{font:650 20px ui-monospace,monospace;letter-spacing:-.035em;color:#e7f6f5}.metric-card>small{color:#5e8b96;letter-spacing:.09em;font-size:8px}.workbench-foot{display:flex;justify-content:space-between;gap:10px;align-items:center;color:#5b8491;font-size:8px;letter-spacing:.10em;padding:15px 1px 10px}
.telemetry-heading{display:flex;justify-content:space-between;align-items:center;margin:8px 0 19px;font-size:17px;font-weight:670;letter-spacing:-.035em}.live-tag{display:flex;align-items:center;gap:6px;font-size:9px;letter-spacing:.11em;color:#79dcb1;font-weight:680}.channel-choice{display:flex;justify-content:space-between;align-items:center;gap:8px;border:1px solid #294855;background:#102835;border-radius:4px;padding:9px 11px;margin-bottom:12px}.channel-choice label{color:#8aa6b1;font-size:9px;letter-spacing:.12em;font-weight:700}.channel-choice select{background:#0c202b;color:#dcebed;border:1px solid #3b6570;border-radius:3px;font:10px ui-monospace,monospace;padding:6px}.chart-shell{background:#0e222e;border:1px solid #24414f;border-radius:5px;margin:0 0 11px;padding:12px 11px 10px}.chart-title{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:8px}.chart-title strong{font-size:10px;letter-spacing:.1em}.chart-title span{font:9px ui-monospace,monospace;color:#779eaa}.chart-shell canvas{width:100%;display:block;min-width:0;height:142px;border:1px solid #1e3d4b;background:#081924}.gather-shell canvas{height:218px}.chart-footer{display:flex;justify-content:space-between;color:#567986;letter-spacing:.07em;font-size:8px;margin-top:8px}.telemetry-section .section-head{margin-top:22px}.readout{display:flex;justify-content:space-between;align-items:center;gap:8px;border-bottom:1px solid #1a3441;padding:10px 0}.readout>span{font-size:10px;color:#c0d5d9}.readout small{font-size:8px;display:block;color:#6c909c}.readout b{font:600 11px ui-monospace,monospace;white-space:nowrap;color:#e7caa4}.operator-card{margin-top:21px;background:linear-gradient(135deg,#193644,#112a34);border:1px solid #2e5260;border-radius:5px;padding:15px}.operator-head{display:flex;gap:9px;align-items:center;color:#d9eced;font-size:10px;letter-spacing:.12em}.operator-cross{color:#e4b17e;font-size:19px}.operator-card p{font-size:10px;line-height:1.7;color:#a8c4cb;margin:9px 0 13px}.operator-card>span{color:#7cafb7;letter-spacing:.05em;font-size:8px}.data-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:12px}.data-actions button{border:1px solid #365664;padding:10px 5px;background:#102936;color:#a8c9d0;border-radius:4px;font-size:9px;letter-spacing:.05em}.data-actions button:hover{color:#fff;border-color:#5ecbd3}.global-footer{border-top:1px solid #1c3845;background:#081621;display:flex;align-items:center;justify-content:space-between;padding:0 25px;color:#4c7380;letter-spacing:.13em;font-size:8px;font-weight:700}.global-footer b{color:var(--aqua)}
@media(max-width:1350px){.layout{grid-template-columns:266px minmax(360px,1fr) 260px}.topbar{padding:0 18px}.controls-panel,.telemetry-panel{padding-left:15px;padding-right:15px}.workbench{padding-left:15px;padding-right:15px}.stage-header h2{font-size:16px}.annotation-source{left:5%}.annotation-array{right:5%}.workbench-foot{font-size:7px}}
@media(max-width:1100px){.tecton-app{height:auto;min-height:100vh;overflow:visible;grid-template-rows:68px auto 30px}.layout{grid-template-columns:260px minmax(0,1fr);grid-template-rows:660px auto}.controls-panel{grid-row:1;grid-column:1}.workbench{grid-row:1;grid-column:2}.telemetry-panel{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-content:start;max-height:none}.telemetry-panel>.panel-eyebrow,.telemetry-heading,.channel-choice{grid-column:1/-1}.telemetry-heading{margin:0}.chart-shell{margin:0}.operator-card{margin-top:0}.telemetry-section .section-head{margin-top:0}.data-actions{grid-column:1/-1}.workbench-foot,.view-coordinates{display:none}.transport{flex-wrap:wrap}.continuous-label{margin-left:0}.metrics-row{gap:6px}.metric-card{padding:10px}}
@media(max-width:760px){.top-mid,.build-tag{display:none}.topbar{padding:0 15px}.status-chip{font-size:8px}.tecton-app{display:block;min-height:100vh}.layout{display:flex;flex-direction:column}.workbench{order:1;min-height:610px;padding:16px 12px 19px;grid-template-rows:auto minmax(290px,1fr) auto auto}.controls-panel{order:2;overflow:visible;padding:20px}.telemetry-panel{order:3;display:block;padding:20px}.global-footer{height:36px;padding:0 14px}.global-footer span:last-child{display:none}.stage-header h2{font-size:14px}.h2-soft{display:none}.stage-tools{gap:4px}.frame-tag{display:none}.view-tool{padding:7px;font-size:8px}.viewport-wrap{min-height:310px}.view-coordinates,.view-annot,.gesture-help{display:none}.transport{padding:8px;gap:6px}.fire-button{font-size:9px;padding:10px}.fire-button kbd{display:none}.sim-clock{margin-left:auto}.metrics-row{grid-template-columns:1fr 1fr}.metric-card{min-height:75px}.controls-panel .preset-list{grid-template-columns:repeat(3,minmax(0,1fr))}.preset{height:auto;min-height:94px;flex-direction:column;align-items:start;gap:7px;padding:9px}.preset-index{display:none}.preset-art{width:100%;min-width:0;height:24px}.preset-copy strong{font-size:10px}.preset-copy small{font-size:8px}}
@media(prefers-reduced-motion:reduce){*{animation-duration:0s!important;transition-duration:0s!important}}
