terrain-studio{--ts-fg-rgb: var(--color-foreground);--ts-bg-rgb: var(--color-background);--ts-fg: rgb(var(--color-foreground));--ts-bg: rgb(var(--color-background));--ts-muted: rgba(var(--color-foreground), .7);--ts-line: rgba(var(--color-foreground), .14);--ts-line-strong: rgba(var(--color-foreground), .32);--ts-soft: rgba(var(--color-foreground), .045);--ts-accent: rgb(var(--color-button));--ts-accent-text: rgb(var(--color-button-text));--ts-error: rgb(190, 40, 40);--ts-warn: rgb(150, 90, 20);--ts-bar-h: 7.2rem;--ts-ease: cubic-bezier(.2, .7, .2, 1);display:block;position:relative;color:var(--ts-fg);background:var(--ts-bg);font-family:var(--font-body-family)}terrain-studio [hidden]{display:none!important}.ts-section{margin:0!important}.ts{display:grid;grid-template-columns:minmax(0,3fr) minmax(36rem,2fr);grid-template-rows:minmax(0,1fr) auto;grid-template-areas:"stage panel" "bar bar";height:calc(100vh - var(--vst-header-group-h, 0px));height:calc(100dvh - var(--vst-header-group-h, 0px));min-height:58rem}.ts__stage{grid-area:stage;position:relative;overflow:hidden;background:radial-gradient(120% 90% at 50% 40%,rgba(var(--color-foreground),.015),rgba(var(--color-foreground),.07));isolation:isolate}.ts__panel{grid-area:panel;display:flex;flex-direction:column;gap:1.6rem;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:2.4rem 3.2rem 3.2rem;border-left:1px solid var(--ts-line);background:var(--ts-bg)}.ts__bar{grid-area:bar;display:flex;align-items:center;justify-content:space-between;gap:1.6rem;min-height:var(--ts-bar-h);padding:1.2rem 2.4rem;border-top:1px solid var(--ts-line);background:var(--ts-bg);position:relative;z-index:4}@media screen and (max-width:989px){.ts{display:block;height:auto;min-height:0;padding-bottom:calc(var(--ts-bar-h) + env(safe-area-inset-bottom))}.ts__stage{position:sticky;top:0;z-index:2;height:55vh;height:55svh;min-height:30rem;transition:height .35s var(--ts-ease);box-shadow:0 1px 0 var(--ts-line)}terrain-studio[data-step=route] .ts__stage,terrain-studio[data-step=product] .ts__stage{position:relative;z-index:1;height:30vh;height:30svh;min-height:20rem}.ts__panel{position:relative;z-index:1;overflow:visible;border-left:0;padding:2rem 1.6rem 2.4rem}.ts__bar{position:fixed;left:0;right:0;bottom:0;z-index:6;padding:1rem 1.6rem calc(1rem + env(safe-area-inset-bottom));box-shadow:0 -.3rem 1.8rem rgba(var(--color-foreground),.06)}}.ts__entry-art{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1.6rem;padding:2.4rem;text-align:center}.ts__entry-art svg{width:min(68%,48rem);max-height:72%;overflow:visible}.ts__art-hex{fill:rgba(var(--color-foreground),.035);stroke:var(--ts-fg);stroke-width:1.4}.ts__art-contours path,.ts__art-contours ellipse{fill:none;stroke:rgba(var(--color-foreground),.22);stroke-width:.8}.ts__art-route{fill:none;stroke:var(--ts-fg);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:360;stroke-dashoffset:360;animation:ts-draw 2.4s var(--ts-ease) .3s forwards}.ts__art-start{fill:var(--ts-fg)}.ts__art-pocket{fill:none;stroke:rgba(var(--color-foreground),.3);stroke-width:.8;stroke-dasharray:2 2}@keyframes ts-draw{to{stroke-dashoffset:0}}.ts__entry-caption{margin:0;font-size:1.2rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ts-muted)}.ts__route-canvas,.ts__map,.ts__canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.ts__route-canvas{display:block}.ts__map-canvas{position:absolute;top:0;right:0;bottom:0;left:0}.ts__map.is-locked .maplibregl-canvas{cursor:default}.ts__window{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;pointer-events:none}.ts__window-mask{fill:rgba(var(--color-foreground),.45)}.ts__window-outline{fill:none;stroke:rgb(var(--color-foreground));stroke-width:3}.ts__window-inner{fill:none;stroke:#fff;stroke-width:1}.ts__window-pocket{fill:none;stroke:rgba(var(--color-foreground),.55);stroke-width:1;stroke-dasharray:3 3}.ts__map .maplibregl-ctrl-attrib{font-size:1rem}.ts__canvas canvas{display:block;width:100%!important;height:100%!important;touch-action:none}.ts__stage-toggle{position:absolute;top:1.6rem;left:50%;transform:translate(-50%);z-index:3;display:inline-flex;padding:.3rem;gap:.2rem;background:rgba(var(--color-background),.92);border:1px solid var(--ts-line);border-radius:min(var(--vst-radius-tab, 99rem) * 999,var(--vst-radius-tab, 99rem) + .4rem);box-shadow:0 .2rem 1.2rem rgba(var(--color-foreground),.1)}.ts__stage-toggle button{min-width:6.4rem;min-height:3.6rem;padding:.4rem 1.4rem;border:0;border-radius:var(--vst-radius-tab, 99rem);background:transparent;color:var(--ts-fg);font:600 1.3rem/1 var(--font-body-family);letter-spacing:.04em;cursor:pointer}.ts__stage-toggle button[aria-pressed=true]{background:var(--ts-accent);color:var(--ts-accent-text)}.ts__stage-note{position:absolute;left:50%;bottom:2.4rem;transform:translate(-50%);z-index:3;margin:0;padding:.8rem 1.4rem;background:rgba(var(--color-background),.94);border:1px solid var(--ts-line);font-size:1.3rem;white-space:nowrap;max-width:calc(100% - 3.2rem);overflow:hidden;text-overflow:ellipsis}.ts__stage-badge{position:absolute;left:50%;top:1.6rem;transform:translate(-50%);z-index:3;margin:0;padding:.6rem 1.2rem;background:rgba(var(--color-background),.96);border:1px solid var(--ts-line);border-left:3px solid var(--ts-warn);color:var(--ts-warn);font-size:1.3rem;font-weight:600;white-space:nowrap;max-width:calc(100% - 3.2rem);overflow:hidden;text-overflow:ellipsis}terrain-studio[data-step=map] .ts__stage-badge{top:6.8rem}@media screen and (max-width:989px){.ts__stage-note{bottom:6rem;white-space:normal;text-align:center;width:max-content;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2}}.ts__progress{position:absolute;left:0;right:0;bottom:0;z-index:3;height:.3rem;background:rgba(var(--color-foreground),.1)}.ts__progress span{display:block;height:100%;width:0;background:var(--ts-fg);transition:width .3s ease}.ts__attribution{position:absolute;right:.8rem;bottom:.6rem;z-index:2;margin:0;max-width:min(58%,52rem);text-align:right;font-size:1rem;line-height:1.3;color:var(--ts-muted);pointer-events:none}terrain-studio[data-stage=entry] .ts__attribution,terrain-studio[data-stage=canvas] .ts__attribution,terrain-studio[data-stage=map] .ts__attribution{display:none}.ts__steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.4rem;margin:0 0 .4rem;padding:.4rem;background:var(--ts-soft);border:1px solid var(--ts-line);border-radius:min(var(--vst-radius-tab, 0px) * 999,var(--vst-radius-tab, 0px) + .5rem)}.ts__step{display:flex;align-items:center;justify-content:center;gap:.6rem;min-height:4.4rem;padding:.6rem .4rem;border:0;border-radius:var(--vst-radius-tab, 0px);background:transparent;color:var(--ts-muted);font:500 1.4rem/1.2 var(--font-body-family);cursor:pointer}.ts__step-num{display:inline-grid;place-items:center;width:2.2rem;height:2.2rem;border:1px solid currentColor;border-radius:50%;font-size:1.2rem;flex:none}.ts__step[aria-selected=true]{background:var(--ts-bg);color:var(--ts-fg);font-weight:700;box-shadow:0 .1rem .4rem rgba(var(--color-foreground),.12)}.ts__step[aria-selected=true] .ts__step-num{background:var(--ts-fg);border-color:var(--ts-fg);color:var(--ts-bg)}.ts__step.is-done{color:var(--ts-fg)}.ts__step.is-done .ts__step-num{font-size:0}.ts__step.is-done .ts__step-num:after{content:"";width:.9rem;height:.5rem;border-left:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-.1rem) rotate(-45deg)}.ts__step[aria-disabled=true]{opacity:.45;cursor:not-allowed}.ts__step:focus-visible,.ts__bar-btn:focus-visible,.ts__chip-btn:focus-visible,.ts__link:focus-visible,.ts__strava:focus-visible,.ts__stage-toggle button:focus-visible{outline:2px solid var(--ts-fg);outline-offset:2px}@media screen and (max-width:420px){.ts__step{flex-direction:column;gap:.3rem;font-size:1.2rem}}.ts__title{margin:.8rem 0 0;font-family:var(--font-heading-family);font-size:clamp(2.8rem,3.2vw,4rem);line-height:1.08;letter-spacing:-.01em}.ts__lede{margin:0;font-size:1.6rem;line-height:1.5;color:var(--ts-muted)}.ts__h2{margin:.4rem 0 0;font-family:var(--font-heading-family);font-size:2.4rem;line-height:1.15}.ts__h3{margin:0;padding:0;font-size:1.3rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.ts__title:focus,.ts__h2:focus{outline:none}.ts__title:focus-visible,.ts__h2:focus-visible{outline:2px solid var(--ts-fg);outline-offset:4px}.ts__pane{display:flex;flex-direction:column;gap:1.6rem}.ts__hint{margin:0;font-size:1.3rem;line-height:1.45;color:var(--ts-muted)}.ts__note{margin:0;font-size:1.4rem}.ts__status{margin:0;min-height:2rem;font-size:1.4rem;line-height:1.45}.ts__status:empty{min-height:0}.ts__status[data-state=error],.ts__error{color:var(--ts-error)}.ts__error{margin:0;font-size:1.3rem}.ts__warnings{margin:0;padding-left:1rem;border-left:2px solid var(--ts-warn);font-size:1.3rem;line-height:1.45;color:var(--ts-warn)}.ts__warnings:empty{border-left:0;padding-left:0}.ts__entry{display:flex;flex-direction:column;gap:1.6rem}.ts__actions{display:flex;flex-direction:column;align-items:stretch;gap:1rem;margin-top:.8rem}.ts__actions .button{width:100%;min-height:4.8rem;margin:0}.ts__strava{display:inline-flex;align-self:flex-start;padding:0;border:0;background:none;cursor:pointer;line-height:0}.ts__strava img{height:4.8rem;width:auto}.ts__strava:disabled{opacity:.6;cursor:default}.ts__strava--pending{visibility:hidden}.ts__file{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.ts__dropzone{padding:1.4rem 1.6rem;border:1px dashed var(--ts-line-strong);transition:border-color .15s ease,background-color .15s ease}.ts__dropzone p{margin:0;font-size:1.3rem;line-height:1.45;color:var(--ts-muted)}terrain-studio.is-dragover .ts__dropzone{border-color:var(--ts-fg);background:rgba(var(--color-foreground),.06)}terrain-studio.is-dragover .ts__stage:after{content:"";position:absolute;top:1.2rem;right:1.2rem;bottom:1.2rem;left:1.2rem;border:2px dashed var(--ts-fg);pointer-events:none}.ts__privacy{margin:0;font-size:1.3rem;color:var(--ts-muted)}.ts__privacy a{color:inherit;text-decoration:underline;text-underline-offset:.2rem}.ts__help{border-top:1px solid var(--ts-line);border-bottom:1px solid var(--ts-line)}.ts__help summary{padding:1.2rem 0;font-size:1.4rem;font-weight:600;cursor:pointer}.ts__help-body{padding:0 0 1.4rem;font-size:1.3rem;line-height:1.5}.ts__help-body p{margin:0 0 .8rem}.ts__resume{display:flex;gap:1.4rem;align-items:center;padding:1.4rem;border:1px solid var(--ts-fg);background:var(--ts-soft)}.ts__resume-thumb{flex:none;width:11.2rem;height:8.4rem;object-fit:cover;background:var(--ts-bg)}.ts__resume-text{display:flex;flex-direction:column;gap:.4rem;min-width:0}.ts__resume-title{margin:0;font-size:1.2rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.ts__resume-name{margin:0;font-size:1.6rem;font-weight:600;overflow-wrap:anywhere}.ts__resume-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem 1.6rem;margin-top:.4rem}.ts .ts__resume-go{min-height:4.4rem;margin:0;padding:0 2rem}.ts__code{display:flex;flex-direction:column;gap:.6rem;padding-top:1.2rem;border-top:1px solid var(--ts-line)}.ts__label-small{font-size:1.3rem;font-weight:600}.ts__code-row{display:flex;gap:.8rem}.ts__code-input{flex:1;min-width:0;min-height:4rem;padding:.6rem 1rem;border:1px solid var(--ts-line-strong);border-radius:var(--vst-radius-field, 0px);background:var(--ts-bg);color:var(--ts-fg);font:1.4rem/1.3 ui-monospace,SFMono-Regular,Consolas,monospace}.ts__code-input:focus-visible{outline:2px solid var(--ts-fg);outline-offset:1px}.ts__code-row .ts__chip-btn{min-height:4rem}.ts__strava-picker{display:flex;flex-direction:column;gap:1.2rem}.ts__picker-head{display:flex;align-items:baseline;justify-content:space-between;gap:1.2rem}.ts__powered{align-self:flex-start;display:block;height:1.5rem;width:auto}.ts__chips{display:flex;flex-wrap:wrap;gap:.6rem}.ts__chip{min-height:3.6rem;padding:.4rem 1.4rem;border:1px solid var(--ts-line-strong);border-radius:var(--vst-radius-tab, 99rem);background:transparent;color:var(--ts-fg);font:600 1.3rem/1 var(--font-body-family);cursor:pointer}.ts__chip[aria-pressed=true]{background:var(--ts-fg);border-color:var(--ts-fg);color:var(--ts-bg)}.ts__chip:focus-visible{outline:2px solid var(--ts-fg);outline-offset:2px}.ts__search{width:100%;min-height:4.4rem;padding:.8rem 1.2rem;border:1px solid var(--ts-line-strong);border-radius:var(--vst-radius-field, 0px);background:var(--ts-bg);color:var(--ts-fg);font:1.5rem/1.3 var(--font-body-family)}.ts__search:focus-visible{outline:2px solid var(--ts-fg);outline-offset:1px}.ts__check{display:flex;align-items:center;gap:.8rem;font-size:1.4rem;cursor:pointer}.ts__check input{width:1.8rem;height:1.8rem;accent-color:rgb(var(--color-foreground))}.ts__acts{display:flex;flex-direction:column;gap:.6rem;margin:0;padding:0;list-style:none}.ts__act{display:flex;flex-direction:column;gap:.4rem;padding:.8rem 1rem;border:1px solid var(--ts-line)}.ts__act.is-selected{border-color:var(--ts-fg);box-shadow:inset 0 0 0 1px var(--ts-fg)}.ts__act.is-disabled{opacity:.55}.ts__act-main{display:grid;grid-template-columns:auto 6.4rem minmax(0,1fr);align-items:center;gap:1rem;cursor:pointer}.ts__act.is-disabled .ts__act-main{cursor:not-allowed}.ts__act-main input{width:1.8rem;height:1.8rem;margin:0;accent-color:rgb(var(--color-foreground))}.ts__act-thumb{width:6.4rem;height:6.4rem;background:var(--ts-soft)}.ts__act-text{display:flex;flex-direction:column;min-width:0}.ts__act-name{font-size:1.5rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ts__act-meta{font-size:1.2rem;color:var(--ts-muted)}.ts__act-view,.ts__leg-view{align-self:flex-end;font-size:1.3rem;font-weight:700;color:var(--ts-fg);text-decoration:underline;text-underline-offset:.3rem}.ts__act-empty{padding:1.2rem 0;font-size:1.4rem;color:var(--ts-muted)}.ts__more{align-self:flex-start}.ts .ts__use{width:100%;min-height:4.8rem;margin:0}.ts__summary{display:flex;flex-direction:column;gap:1.2rem}.ts__stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem 2rem;margin:0}.ts__stats div{min-width:0}.ts__stats dt{font-size:1.2rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ts-muted)}.ts__stats dd{margin:.2rem 0 0;font-size:1.6rem;font-weight:600;overflow-wrap:anywhere}.ts__source{margin:0;font-size:1.3rem;color:var(--ts-muted)}.ts__link{align-self:flex-start;padding:0;border:0;background:none;color:var(--ts-fg);font:inherit;font-size:1.4rem;text-decoration:underline;text-underline-offset:.3rem;cursor:pointer}.ts__link:disabled{opacity:.5;cursor:default}.ts__products{display:flex;flex-direction:column;gap:1.2rem;margin:0;padding:0;border:0}.ts__card{position:relative;display:grid;grid-template-columns:9.6rem minmax(0,1fr) 2.4rem;gap:1.6rem;align-items:start;padding:1.6rem;border:1px solid var(--ts-line-strong);background:var(--ts-bg);cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.ts__card:hover{border-color:var(--ts-fg)}.ts__card.is-selected{border-color:var(--ts-fg);box-shadow:inset 0 0 0 1px var(--ts-fg)}.ts__card:focus-within{outline:2px solid var(--ts-fg);outline-offset:2px}.ts__card.is-unavailable{cursor:not-allowed;opacity:.6}.ts__card-input{position:absolute;opacity:0;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;cursor:inherit}.ts__card-media{display:block;aspect-ratio:1;background:var(--ts-soft);overflow:hidden}.ts__card-art{display:block;box-sizing:border-box;width:100%;height:100%;padding:14%;fill:none;stroke:var(--ts-fg);stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round}.ts__card-media img{display:block;width:100%;height:100%;object-fit:cover}.ts__card-body{display:flex;flex-direction:column;gap:.4rem;min-width:0}.ts__card-title{font-size:1.7rem;font-weight:700}.ts__card-desc{font-size:1.4rem;line-height:1.45;color:var(--ts-muted)}.ts__card-note{font-size:1.2rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.ts__card-price{margin-top:.4rem;font-size:1.6rem;font-weight:600}.ts__card-compare{margin-left:.8rem;font-weight:400;color:var(--ts-muted)}.ts__card-saving{font-size:1.3rem}.ts__card-unavailable{font-size:1.3rem;font-weight:700}.ts__card-check{width:2.2rem;height:2.2rem;border:1.5px solid var(--ts-line-strong);border-radius:50%;display:grid;place-items:center}.ts__card.is-selected .ts__card-check{border-color:var(--ts-fg);background:var(--ts-fg)}.ts__card.is-selected .ts__card-check:after{content:"";width:.9rem;height:.5rem;border-left:1.5px solid var(--ts-bg);border-bottom:1.5px solid var(--ts-bg);transform:translateY(-.1rem) rotate(-45deg)}@media screen and (max-width:420px){.ts__card{grid-template-columns:7.2rem minmax(0,1fr) 2.2rem;gap:1.2rem;padding:1.2rem}}.ts__tileinfo{display:flex;gap:1.2rem;align-items:flex-start;padding:1.2rem 1.4rem;background:var(--ts-soft);border:1px solid var(--ts-line)}.ts__tileinfo p{margin:0;font-size:1.4rem;line-height:1.45}.ts__tileinfo-icon{flex:none;width:2.8rem;height:2.6rem;fill:none;stroke:var(--ts-fg);stroke-width:1.2}.ts__framing{display:flex;flex-direction:column;gap:.8rem}.ts__framing-row{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem 1.6rem}.ts__chip-btn{min-height:3.6rem;padding:.4rem 1.4rem;border:1px solid var(--ts-fg);border-radius:var(--vst-radius-button, 0px);background:var(--ts-bg);color:var(--ts-fg);font:600 1.3rem/1 var(--font-body-family);cursor:pointer}.ts__chip-btn:disabled{opacity:.45;cursor:default}.ts__span{margin:0;font-size:1.5rem;font-weight:600}.ts__routes{display:flex;flex-direction:column;gap:.8rem}.ts__route-list{display:flex;flex-direction:column;gap:.6rem;margin:0;padding:0;list-style:none}.ts__leg{display:flex;align-items:center;gap:1rem;padding:.8rem 1rem;border:1px solid var(--ts-line)}.ts__leg-swatch{width:1.4rem;height:.4rem;background:var(--ts-fg);flex:none}.ts__leg-text{display:flex;flex-direction:column;min-width:0;flex:1}.ts__leg-name{font-size:1.4rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ts__leg-meta{font-size:1.2rem;color:var(--ts-muted)}.ts__leg-remove{width:3.2rem;height:3.2rem;border:0;background:none;color:var(--ts-fg);font-size:2rem;line-height:1;cursor:pointer}.ts__features{display:flex;flex-direction:column;margin:0;padding:0;border:0}.ts__features legend{margin-bottom:.4rem}.ts__switch{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1.2rem;padding:1rem 0;border-bottom:1px solid var(--ts-line);cursor:pointer;position:relative}.ts__switch-text{display:flex;flex-direction:column;gap:.2rem}.ts__switch-label{font-size:1.5rem;font-weight:600}.ts__switch-note{font-size:1.2rem;color:var(--ts-muted)}.ts__switch-note:empty{display:none}.ts__switch-input{position:absolute;opacity:0;width:4.4rem;height:2.6rem;right:0;margin:0;cursor:pointer}.ts__switch-track{position:relative;width:4.4rem;height:2.6rem;border-radius:99rem;background:rgba(var(--color-foreground),.22);transition:background-color .18s ease}.ts__switch-track:after{content:"";position:absolute;top:.3rem;left:.3rem;width:2rem;height:2rem;border-radius:50%;background:var(--ts-bg);box-shadow:0 .1rem .3rem #00000040;transition:transform .18s var(--ts-ease)}.ts__switch-input:checked+.ts__switch-track{background:var(--ts-fg)}.ts__switch-input:checked+.ts__switch-track:after{transform:translate(1.8rem)}.ts__switch-input:focus-visible+.ts__switch-track{outline:2px solid var(--ts-fg);outline-offset:2px}.ts__switch-input:disabled,.ts__switch-input:disabled+.ts__switch-track{cursor:not-allowed;opacity:.45}.ts__sea{display:flex;flex-direction:column;align-items:flex-start;gap:1rem;padding:1.2rem 1.4rem;border-left:2px solid var(--ts-warn);background:#965a140f}.ts__sea p{margin:0;font-size:1.4rem;line-height:1.45}.ts__switch--feature{border-top:1px solid var(--ts-line)}.ts__generate{align-self:stretch;margin:0;min-height:4.8rem}.ts .ts__generate,.ts .ts__sample{background:transparent;color:var(--ts-fg);border:1px solid var(--ts-fg);box-shadow:none;font:600 1.5rem/1.2 var(--font-body-family);letter-spacing:.02em}.ts .ts__generate:before,.ts .ts__generate:after,.ts .ts__sample:before,.ts .ts__sample:after{display:none}.ts .ts__generate:hover:not(:disabled),.ts .ts__sample:hover:not(:disabled){background:rgba(var(--color-foreground),.06)}.ts .ts__generate:disabled,.ts .ts__sample:disabled{opacity:.45;cursor:not-allowed}.ts__dirty{margin:0;font-size:1.4rem;font-weight:600}.ts__field{display:flex;flex-direction:column;gap:.6rem}.ts__label{display:flex;justify-content:space-between;align-items:baseline;font-size:1.5rem;font-weight:600}.ts__label output{font-variant-numeric:tabular-nums}.ts__range{width:100%;accent-color:rgb(var(--color-foreground));min-height:3.2rem}.ts__range-row{display:flex;align-items:center;gap:1rem}.ts__range-row .ts__range{flex:1 1 auto;width:auto;min-width:0}.ts__num{flex:0 0 auto;display:inline-flex;align-items:center;gap:.6rem}.ts__num-input{box-sizing:border-box;width:5.5rem;min-height:4rem;margin:0;padding:.4rem .6rem;border:1px solid var(--ts-line-strong);border-radius:var(--vst-radius-field, 0px);background:var(--ts-bg);color:var(--ts-fg);font:600 16px/1.2 var(--font-body-family);font-variant-numeric:tabular-nums;text-align:right;-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}.ts__num-input::-webkit-outer-spin-button,.ts__num-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.ts__num-input::placeholder{color:var(--ts-muted);opacity:1}.ts__num-input:focus-visible{outline:2px solid var(--ts-fg);outline-offset:1px}.ts__num-input:disabled{opacity:.45;cursor:default}.ts__num-unit{font-size:1.5rem;font-weight:600}.ts__readout{margin:0;font-size:1.4rem;font-weight:600}.ts__readout:empty{display:none}.ts__colours{display:flex;flex-direction:column;gap:1.2rem}.ts__presets{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--ts-line-strong);border-radius:var(--vst-radius-tab, 0px)}.ts__preset:first-child>span{border-radius:max(0px,var(--vst-radius-tab, 0px) - 1px) 0 0 max(0px,var(--vst-radius-tab, 0px) - 1px)}.ts__preset:last-child>span{border-radius:0 max(0px,var(--vst-radius-tab, 0px) - 1px) max(0px,var(--vst-radius-tab, 0px) - 1px) 0}.ts__preset{position:relative;display:flex}.ts__preset+.ts__preset{border-left:1px solid var(--ts-line-strong)}.ts__preset input{position:absolute;opacity:0;top:0;right:0;bottom:0;left:0;margin:0;cursor:pointer}.ts__preset span{flex:1;display:grid;place-items:center;min-height:4rem;padding:.4rem;font-size:1.4rem;font-weight:600}.ts__preset input:checked+span{background:var(--ts-fg);color:var(--ts-bg)}.ts__preset input:focus-visible+span:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:max(0px,var(--vst-radius-tab, 0px) - 1px);outline:2px solid var(--ts-fg);outline-offset:2px;pointer-events:none}.ts__preset input:disabled+span{opacity:.5}.ts__swatch-row{display:flex;flex-wrap:wrap;align-items:center;gap:.8rem 1rem}.ts__swatch-label{flex:0 0 9rem;font-size:1.4rem;font-weight:600}.ts__swatch-name{display:block;font-size:1.2rem;font-weight:400;color:rgba(var(--color-foreground),.72)}.ts__swatches{flex:0 0 auto;display:grid;grid-template-columns:repeat(var(--ts-swatch-cols, 5),3.6rem);gap:.4rem .8rem}.ts__swatch{position:relative;display:inline-grid;place-items:center;width:3.6rem;height:3.6rem;cursor:pointer}.ts__swatch input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;margin:0;cursor:inherit}.ts__swatch-dot{width:2.8rem;height:2.8rem;border-radius:50%;background:var(--swatch);box-shadow:inset 0 0 0 1px #0000002e;transition:transform .12s ease}.ts__swatch input:checked+.ts__swatch-dot{box-shadow:inset 0 0 0 1px #0000002e,0 0 0 2px var(--ts-bg),0 0 0 4px var(--ts-fg)}.ts__swatch input:focus-visible+.ts__swatch-dot{outline:2px dashed var(--ts-fg);outline-offset:4px}.ts__swatch input:disabled{cursor:not-allowed}.ts__swatch input:disabled+.ts__swatch-dot{opacity:.3;background:linear-gradient(135deg,transparent 46%,rgba(var(--color-foreground),.8) 47%,rgba(var(--color-foreground),.8) 53%,transparent 54%),var(--swatch)}.ts__swatches[aria-invalid=true] .ts__swatch input:checked+.ts__swatch-dot{box-shadow:inset 0 0 0 1px #0000002e,0 0 0 2px var(--ts-bg),0 0 0 4px var(--ts-error)}.ts__budget{font-weight:600}.ts__review{margin:0;padding-top:1.2rem;border-top:1px solid var(--ts-line);font-size:1.3rem;color:var(--ts-muted)}.ts__bar-product{display:flex;flex-direction:column;min-width:0}.ts__bar-title{font-size:1.5rem;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ts__bar-price{font-size:1.4rem;color:var(--ts-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ts__bar-actions{display:flex;align-items:center;gap:.8rem;flex:none}.ts__bar-btn{min-height:4.8rem;padding:1.2rem 2rem;border:1px solid var(--ts-fg);border-radius:var(--vst-radius-button, 0px);font:600 1.5rem/1.2 var(--font-body-family);letter-spacing:.02em;cursor:pointer;white-space:nowrap}.ts__bar-btn--primary{min-width:19rem;background:var(--ts-accent);border-color:var(--ts-accent);color:var(--ts-accent-text)}.ts__bar-btn--quiet{background:transparent;color:var(--ts-fg);border-color:var(--ts-line-strong)}.ts__bar-btn-icon{display:none;width:2rem;height:2rem;vertical-align:middle;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.ts__bar-btn:disabled{opacity:.5;cursor:not-allowed}.ts__bar-btn[aria-busy=true].ts__bar-btn--primary{cursor:progress}@media screen and (max-width:989px){.ts__bar{gap:.8rem}.ts__bar-title{font-size:1.3rem}.ts__bar-price{font-size:1.2rem}.ts__bar-btn{min-height:4.4rem;padding:1rem 1.2rem;font-size:1.4rem}.ts__bar-btn--primary{min-width:0;padding:1rem 1.6rem}.ts__bar-btn--quiet[data-ts-change-route]{position:relative;flex:none;width:4.4rem;min-width:4.4rem;padding:0}.ts__bar-btn--quiet[data-ts-change-route] .ts__bar-btn-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.ts__bar-btn--quiet[data-ts-change-route] .ts__bar-btn-icon{display:inline-block}}@media screen and (max-width:380px){.ts__bar-btn--quiet[data-ts-back]{padding:1rem}}.ts__message{font-size:1.4rem;color:var(--ts-fg);text-decoration:underline;text-underline-offset:.3rem}.ts__message--float{position:absolute;left:1.6rem;bottom:calc(var(--ts-bar-h) + 1.6rem);z-index:3;padding:.8rem 1.4rem;background:rgba(var(--color-background),.94);border:1px solid var(--ts-line);border-radius:var(--vst-radius-tab, 0px);text-decoration:none;font-weight:600}.ts__message--panel{display:none;align-self:flex-start}terrain-studio[data-stage=map] .ts__message--float,terrain-studio[data-stage="3d"] .ts__message--float{bottom:calc(var(--ts-bar-h) + 3.6rem)}@media screen and (max-width:989px){.ts__message--float{display:none}.ts__message--panel{display:inline}}.ts__dialog{max-width:min(44rem,calc(100vw - 3.2rem));padding:2.4rem;border:1px solid var(--ts-line-strong);background:var(--ts-bg);color:var(--ts-fg)}.ts__dialog::backdrop{background:rgba(var(--color-foreground),.35)}.ts__dialog p{margin:0 0 2rem;font-size:1.6rem;line-height:1.45}.ts__dialog-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:1rem}.ts__dialog-actions .button{margin:0}.ts__dev{display:flex;flex-direction:column;gap:.8rem;padding:1.2rem;border:1px dashed var(--ts-line-strong)}.ts__dev-buttons{display:flex;gap:.8rem;flex-wrap:wrap}.ts__audit{margin:0;font-size:1.1rem;line-height:1.4;white-space:pre-wrap}.kl-teaser-UApuNd{bottom:calc(var(--ts-bar-h, 72px) + 12px)!important}@media(prefers-reduced-motion:reduce){.ts__stage,.ts__switch-track,.ts__switch-track:after,.ts__progress span,.ts__card,.ts__dropzone{transition:none}.ts__art-route{animation:none;stroke-dashoffset:0}}.ts__field--sub{padding:1rem 0 1.2rem;border-bottom:1px solid var(--ts-line)}.ts__hint--warn{padding:.6rem 0 .6rem 1rem;border-left:2px solid var(--ts-warn);color:var(--ts-warn)}.ts__hint--warn:empty{position:absolute;width:1px;height:1px;margin:-1px;padding:0;border:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.ts__field-head{display:flex;align-items:center;gap:1.2rem}.ts__field-head .ts__label{flex:1 1 auto;min-width:0}.ts__field-output{font-size:1.5rem;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.ts__chip-btn--small{flex:0 0 auto;min-height:3.6rem;padding:.4rem 1.2rem}.ts__presets--2{grid-template-columns:repeat(2,minmax(0,1fr))}.ts__presets--3{grid-template-columns:repeat(3,minmax(0,1fr))}.ts__preset-sub{display:block;font-size:1.15rem;font-weight:400;opacity:.8}.ts__preset span:has(.ts__preset-sub){display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;line-height:1.25}.ts__route-width,.ts__style{position:relative;display:flex;flex-direction:column;gap:.8rem;min-width:0;margin:0;border:0}.ts__route-width{padding:0 0 .4rem}.ts__route-width legend,.ts__style legend{float:left;width:100%;margin:0 0 .2rem;padding:0}.ts__style{padding:1rem 0 1.2rem;border-bottom:1px solid var(--ts-line)}.ts__style[hidden]{display:none}.ts__switch--sub{margin-top:.4rem;padding:.8rem 0 0;border-bottom:0}.ts__notice{padding:.6rem 0 .6rem 1rem;border-left:2px solid var(--ts-fg);color:var(--ts-fg)}.ts__notice[hidden]{display:none}.ts__switch--sub .ts__switch-input{z-index:1}.ts__toast{position:absolute;right:2.4rem;bottom:calc(100% + .8rem);z-index:7;display:flex;align-items:flex-start;gap:.8rem;box-sizing:border-box;max-width:min(46rem,calc(100% - 4.8rem));padding:0;border:1px solid transparent;background:transparent;opacity:0;transform:translateY(.4rem);pointer-events:none;transition:opacity .2s var(--ts-ease),transform .2s var(--ts-ease)}.ts__toast.is-open{padding:1rem 1rem 1rem 1.4rem;border-color:var(--ts-error);border-left-width:3px;background:var(--ts-bg);box-shadow:0 .4rem 1.6rem rgba(var(--color-foreground),.12);opacity:1;transform:none;pointer-events:auto}.ts__toast-text{margin:0;font-size:1.4rem;line-height:1.45;color:var(--ts-error)}.ts__toast-text:empty{display:block;min-height:0}.ts__toast-close{flex:none;display:inline-flex;align-items:center;justify-content:center;width:2.8rem;height:2.8rem;margin:-.4rem -.2rem -.4rem 0;padding:0;border:0;background:transparent;color:var(--ts-fg);cursor:pointer}.ts__toast-close[hidden]{display:none}.ts__toast-close svg{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round}.ts__toast-close:focus-visible{outline:2px solid var(--ts-fg);outline-offset:2px}@media screen and (max-width:989px){.ts__toast{left:1.6rem;right:1.6rem;max-width:none}}@media(prefers-reduced-motion:reduce){.ts__toast{transition:none}}
/*# sourceMappingURL=/cdn/shop/t/17/assets/terrain-studio.css.map */
