.tx-p-geo{--geo-r1:#39d0e0;--geo-r2:#7ccfb0;--geo-r3:#b9c47d;--geo-r4:#e6b25a;--geo-r5:#f2a33a}.tx-p-geo .geo-h1{max-width:21ch}.tx-p-geo svg text{font-family:var(--font-mono);fill:var(--tx-muted)}.tx-p-geo .geo-t11{font-size:11px;letter-spacing:.04em}.tx-p-geo .geo-t13{font-size:13px;fill:var(--tx-ink)}.tx-p-geo .geo-t15{font-family:var(--font-sans);font-size:15px;font-weight:600;fill:var(--tx-ink)}.tx-p-geo .geo-t17{font-family:var(--font-sans);font-size:17px;font-weight:600;fill:var(--tx-ink)}.tx-p-geo svg .geo-mut{fill:var(--tx-muted)}.tx-p-geo svg .geo-amb{fill:var(--tx-amber)}.tx-p-geo svg .geo-red{fill:var(--tx-red)}.tx-p-geo svg .geo-acc{fill:var(--tx-cyan)}.tx-p-geo .geo-axis{stroke:var(--border-strong);stroke-width:1}.tx-p-geo .geo-box,.tx-p-geo .geo-cellbox{fill:rgba(57,208,224,.035);stroke:var(--border-strong)}.tx-p-geo .geo-gl{stroke:var(--tx-line);stroke-dasharray:3 3}.tx-p-geo .geo-rail{stroke:var(--border-strong);stroke-width:4;stroke-linecap:round}.tx-p-geo .geo-knob{fill:var(--surface-0);stroke:var(--tx-cyan);stroke-width:2.5}.tx-p-geo .geo-figtag{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin:.6rem 0 0;font-size:var(--step-xs);color:var(--tx-muted)}.tx-p-geo .geo-figtag--stage{margin-top:1.4rem}.tx-p-geo .geo-duct{fill:url(#geo-wallfill);stroke:var(--tx-cyan);stroke-width:2;stroke-linejoin:round}.tx-p-geo .geo-cl{fill:none;stroke:var(--tx-amber);stroke-width:1.2;stroke-dasharray:6 5;opacity:.75}.tx-p-geo .geo-st{fill:none;stroke:rgba(57,208,224,.45);stroke-width:1}.tx-p-geo .geo-face{stroke-width:4;stroke-linecap:round;fill:none}.tx-p-geo .geo-face--in{stroke:var(--tx-cyan)}.tx-p-geo .geo-face--out{stroke:var(--tx-amber)}.tx-p-geo .geo-dim line{stroke:var(--tx-amber);stroke-width:1.5}.tx-p-geo .geo-ref{fill:none;stroke:var(--border-strong);stroke-dasharray:4 4}.tx-p-geo .geo-sec{fill:rgba(242,163,58,.14);stroke:var(--tx-amber);stroke-width:2}.tx-p-geo .geo-hp{fill:var(--tx-muted);opacity:.55;transition:fill var(--dur-base),opacity var(--dur-base)}.tx-p-geo .geo-hp.is-on{fill:var(--tx-cyan);opacity:1}.tx-p-geo .geo-cur{fill:none;stroke:var(--tx-cyan);stroke-width:2;filter:drop-shadow(0 0 6px rgba(57,208,224,.8))}.js .tx-p-geo .geo-drawin{stroke-dasharray:1;animation:geo-draw 2s var(--ease-out) .2s both}@keyframes geo-draw{from{stroke-dashoffset:1;fill-opacity:0}60%{fill-opacity:0}to{stroke-dashoffset:0;fill-opacity:1}}.js .tx-p-geo .geo-hero [data-geo-stations],.js .tx-p-geo .geo-hero .geo-face{animation:geo-fade 1s var(--ease-out) 1.2s both}@keyframes geo-fade{from{opacity:0}}.tx-p-geo .geo-kinetic{display:flex;flex-wrap:wrap;gap:.2em .5em;margin:2.2rem 0 2.4rem;font-size:var(--step-xl);font-weight:600;letter-spacing:-.02em;line-height:1.15}.tx-p-geo .geo-kinetic span:last-child{color:var(--tx-amber)}.js .tx-p-geo .geo-kinetic span{opacity:0;transform:translateY(.35em);transition:opacity .7s var(--ease-out),transform .8s var(--ease-out)}.js .tx-p-geo .geo-kinetic.is-in span{opacity:1;transform:none}.js .tx-p-geo .geo-kinetic.is-in span:nth-child(2){transition-delay:.45s}.js .tx-p-geo .geo-kinetic.is-in span:nth-child(3){transition-delay:.9s}.tx-p-geo .geo-mini{width:100%;height:auto;margin-bottom:1rem;display:block}.tx-p-geo .geo-fails .tx-card p{margin-top:.2rem}.tx-p-geo .geo-fails .tx-badge{margin-top:.6rem}.tx-p-geo .geo-sym{stroke:var(--tx-muted);stroke-dasharray:6 4}.tx-p-geo .geo-keep{fill:none;stroke:var(--tx-cyan);stroke-width:5}.tx-p-geo .geo-ghost{fill:none;stroke:var(--border-strong);stroke-width:2;stroke-dasharray:3 5}.tx-p-geo .geo-drift{fill:none;stroke:var(--tx-red);stroke-width:6;stroke-linecap:round}.js .tx-p-geo .is-in .geo-drift{animation:geo-blink 2.4s ease-in-out .6s 2}@keyframes geo-blink{50%{opacity:.25}}.tx-p-geo .geo-flat{stroke:var(--tx-red);stroke-width:2.5}.tx-p-geo .geo-dot{fill:var(--surface-0);stroke:var(--tx-red);stroke-width:2.5}.tx-p-geo .geo-rise{fill:none;stroke:var(--tx-muted);stroke-width:1.5;stroke-dasharray:4 4}.tx-p-geo .geo-sp{fill:var(--tx-cyan)}.tx-p-geo .geo-empty{fill:rgba(242,163,58,.18);stroke:var(--tx-amber);stroke-dasharray:2 3}.tx-p-geo .geo-after{margin-top:2rem;color:var(--tx-muted);font-size:var(--step-md)}.tx-p-geo .geo-stage{padding:4px}.tx-p-geo .geo-l{transition:opacity .7s var(--ease-out)}.js .tx-p-geo .tx-steps[data-active] .geo-l{opacity:0}.js .tx-p-geo .tx-steps[data-active="1"] .geo-l1,.js .tx-p-geo .tx-steps[data-active="2"] :is(.geo-l1,.geo-l2),.js .tx-p-geo .tx-steps[data-active="3"] :is(.geo-l1,.geo-l2,.geo-l3),.js .tx-p-geo .tx-steps[data-active="4"] :is(.geo-l1,.geo-l2,.geo-l3,.geo-l4),.js .tx-p-geo .tx-steps[data-active="5"] :is(.geo-l1,.geo-l2,.geo-l3,.geo-l4,.geo-l5),.js .tx-p-geo .tx-steps[data-active="6"] .geo-l{opacity:1}.tx-reduced .tx-p-geo .tx-steps .geo-l{opacity:1 !important}.tx-p-geo .geo-ttl{fill:var(--tx-ink)}.tx-p-geo .geo-link{fill:none;stroke:var(--tx-cyan);stroke-width:1.6;stroke-dasharray:5 5;opacity:.8}.tx-p-geo .geo-link--back{stroke:var(--tx-amber)}.tx-p-geo .geo-dp{fill:var(--tx-muted);transition:fill .6s var(--ease-out),transform .5s var(--ease-out);transform-box:fill-box;transform-origin:center}.tx-p-geo .geo-r1{fill:var(--geo-r1)}.tx-p-geo .geo-r2{fill:var(--geo-r2)}.tx-p-geo .geo-r3{fill:var(--geo-r3)}.tx-p-geo .geo-r4{fill:var(--geo-r4)}.tx-p-geo .geo-r5{fill:var(--geo-r5)}.tx-p-geo .geo-dp--x{fill:var(--surface-0);stroke:var(--tx-red);stroke-width:2}html.js:not(.tx-reduced) .tx-p-geo .tx-steps:is([data-active="1"],[data-active="2"],[data-active="3"],[data-active="4"]) .geo-l2 .geo-dp{fill:var(--text-tertiary);stroke:none}html.js:not(.tx-reduced) .tx-p-geo .tx-steps[data-active="1"] .geo-l2 .geo-dp{transform:scale(0)}.js .tx-p-geo .tx-steps[data-active="2"] .geo-l2 .geo-dp{transition-delay:calc(var(--i) * 22ms)}.tx-p-geo .geo-nom{fill:none;stroke:var(--tx-ink);stroke-width:2}.tx-p-geo .geo-selring{fill:none;stroke:var(--tx-cyan);stroke-width:2.5;filter:drop-shadow(0 0 5px rgba(57,208,224,.9))}.tx-p-geo .geo-body{fill:rgba(57,208,224,.1);stroke:var(--tx-ink);stroke-width:1.6}.tx-p-geo .geo-body--m{fill:none;stroke:var(--tx-cyan)}.tx-p-geo .geo-mesh{fill:none;stroke:rgba(57,208,224,.5);stroke-width:.7}.tx-p-geo .geo-edge line{stroke:var(--border-strong)}.tx-p-geo .geo-bound{stroke:var(--tx-amber);stroke-width:4;stroke-linecap:round}.tx-p-geo .geo-star{fill:var(--tx-amber);stroke:var(--surface-0);stroke-width:1}.js .tx-p-geo .tx-steps[data-active="6"] .geo-bound{animation:geo-blink 1.8s ease-in-out infinite}.tx-p-geo .geo-explorer{margin-top:2.2rem}.tx-p-geo .geo-explorer svg{background:radial-gradient(circle at 40% 40%,rgba(57,208,224,.06),transparent 70%)}.tx-p-geo .geo-ctl{display:none;gap:.9rem 1.6rem;padding:1.1rem 1.2rem 1.2rem;border-top:1px solid var(--tx-line);grid-template-columns:1fr}.js .tx-p-geo .geo-ctl{display:grid}@media (min-width:640px){.tx-p-geo .geo-ctl{grid-template-columns:1fr 1fr}}.tx-p-geo .geo-ctl label{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.2rem .8rem;align-items:center;font-family:var(--font-mono);font-size:var(--step-sm)}.tx-p-geo .geo-ctl label>span{color:var(--tx-ink)}.tx-p-geo .geo-ctl small{color:var(--tx-muted);margin-left:.4rem}.tx-p-geo .geo-ctl input{grid-column:1 / -1;grid-row:2;width:100%;accent-color:var(--accent);min-height:28px}.tx-p-geo .geo-ctl input:focus-visible{outline:2px solid var(--tx-amber);outline-offset:3px}.tx-p-geo .geo-ctl output{color:var(--tx-cyan);font-variant-numeric:tabular-nums}.tx-p-geo .geo-chainfig{margin-top:1.6rem}.tx-p-geo .geo-chainline{fill:none;stroke:var(--tx-cyan);stroke-width:2;opacity:.7}.tx-p-geo .geo-node rect{fill:var(--surface-2);stroke:var(--border-strong);stroke-width:1.5;transition:stroke var(--dur-base),fill var(--dur-base)}.tx-p-geo .geo-node:hover rect,.tx-p-geo .geo-node:focus-visible rect{stroke:var(--tx-cyan);fill:var(--surface-3)}.tx-p-geo .geo-node:focus-visible{outline:none}.tx-p-geo .geo-node:focus-visible rect{stroke:var(--tx-amber);stroke-width:2.5}.tx-p-geo .geo-node--end rect{stroke:var(--tx-amber)}.tx-p-geo .geo-tabs{margin-top:2.6rem}.tx-p-geo .geo-pan{max-width:76ch;color:var(--tx-muted)}.tx-p-geo .geo-eq{font-family:var(--font-mono);color:var(--tx-ink);background:var(--surface-1);border:1px solid var(--tx-line);border-left:3px solid var(--tx-cyan);border-radius:var(--radius-sm);padding:.85rem 1rem;overflow-x:auto;line-height:1.7}.tx-p-geo .geo-verdicts{margin:0 0 1rem}.tx-p-geo .geo-verdicts tbody th{font-family:var(--font-mono);font-size:var(--step-xs);letter-spacing:.06em}.tx-p-geo .geo-verdicts tr:nth-child(n+3) th{color:var(--tx-red)}.tx-p-geo .geo-kpis{margin-top:2.4rem}.tx-p-geo .geo-kpi-s{font-size:var(--step-lg);font-variant-numeric:tabular-nums}.tx-p-geo .tx-kpi-l .tx-badge{margin-top:.5rem}.tx-p-geo .geo-proofgrid{margin-top:2rem}.tx-p-geo .geo-proof2{margin-top:2.6rem;align-items:center}.tx-p-geo .geo-proof2 p{color:var(--tx-muted)}.tx-p-geo .geo-wf rect,.tx-p-geo rect.geo-wf{transition:transform .5s var(--ease-out),opacity .5s var(--ease-out);transform-box:fill-box;transform-origin:center}.tx-p-geo .geo-wf--ok{fill:rgba(57,208,224,.22);stroke:var(--tx-cyan);stroke-width:1}.tx-p-geo .geo-wf--x rect,.tx-p-geo .geo-wfl{fill:var(--surface-0);stroke:var(--tx-red);stroke-width:2}.tx-p-geo .geo-wf--n rect{fill:var(--surface-3);stroke:var(--tx-ink);stroke-width:2}.tx-p-geo .geo-wf text{font-size:17px;font-weight:700;text-anchor:middle;fill:var(--tx-ink)}.tx-p-geo .geo-wf--x text{fill:var(--tx-red)}.tx-p-geo g.geo-wf{cursor:help}.tx-p-geo g.geo-wf:focus-visible{outline:none}.tx-p-geo g.geo-wf:focus-visible rect,.tx-p-geo g.geo-wf:hover rect{stroke:var(--tx-amber);stroke-width:3}.js .tx-p-geo figure:not(.is-in) rect.geo-wf--ok{transform:scale(.2);opacity:0}.js .tx-p-geo figure.is-in rect.geo-wf--ok{transition-delay:calc(var(--i) * 14ms)}.tx-p-geo .geo-rng{stroke:var(--border-strong);stroke-width:10;stroke-linecap:round}.tx-p-geo .geo-base{fill:var(--surface-0);stroke:var(--tx-ink);stroke-width:2}.tx-p-geo .geo-ver{fill:var(--tx-cyan);stroke:var(--surface-0);stroke-width:1.5}.js .tx-p-geo figure:not(.is-in) .geo-brow .geo-ver{opacity:0}.tx-p-geo .geo-brow .geo-ver{transition:opacity .8s var(--ease-out) .5s}.tx-p-geo .geo-badzone{fill:rgba(255,90,78,.08)}.tx-p-geo .geo-floor{stroke:var(--tx-red);stroke-width:2;stroke-dasharray:5 4}.tx-p-geo .geo-before{fill:var(--tx-cyan)}.tx-p-geo .geo-aft{fill:var(--tx-red)}.tx-p-geo .geo-move{fill:none;stroke:var(--tx-red);stroke-width:2}.tx-p-geo .geo-scen{margin:2.6rem 0 2.2rem}.tx-p-geo .tx-card a,.tx-p-geo .tx-ticks a,.tx-p-geo .geo-after a,.tx-p-geo .geo-pan a{color:var(--tx-cyan)}.tx-reduced .tx-p-geo .geo-kinetic span,.tx-reduced .tx-p-geo rect.geo-wf--ok,.tx-reduced .tx-p-geo .geo-ver,.tx-reduced .tx-p-geo .geo-dp{opacity:1 !important;transform:none !important}.tx-reduced .tx-p-geo .geo-drawin{stroke-dashoffset:0}@media (prefers-reduced-motion:reduce){.js .tx-p-geo .geo-kinetic span,.js .tx-p-geo rect.geo-wf--ok,.js .tx-p-geo .geo-ver{opacity:1;transform:none}}