.feature-fragment-stage{container-type:inline-size}.feature-fragment{max-width:420px;font-size:14px;line-height:1.4}.feature-fragment--wide{max-width:720px}.feature-fragment:has(.journey-map){max-width:540px}.feature-fragment .text-xs,.feature-fragment [data-slot=button]{font-size:12px;line-height:1.4}.feature-fragment .text-sm{font-size:14px;line-height:1.4}.feature-fragment .text-base{font-size:16px;line-height:1.35}.feature-fragment .text-3xl{font-size:30px;line-height:1.2}.feature-fragment .fragment-stop{min-height:48px}.feature-fragment .fragment-vehicle{min-height:62px}.feature-fragment .fragment-choices button{min-height:30px}.fragment-repair [data-slot=button]{min-height:36px}.fragment-sheet{box-shadow:0 10px 28px -16px hsl(var(--foreground) / .22),0 2px 6px hsl(var(--foreground) / .04)}.journey-map{height:200px}.journey-map-art{display:block;width:100%;height:100%}.journey-camera{transform-origin:480px 280px;transition:transform 1.1s cubic-bezier(.22,1,.36,1)}.journey-basemap--dark,html.dark .journey-basemap--light{display:none}html.dark .journey-basemap--dark{display:block}.journey-route{stroke-dasharray:1}.journey-map[data-visible=true] .journey-route{animation:journey-route-reveal 1.6s cubic-bezier(.22,1,.36,1) both}.journey-map-marker{cursor:pointer;outline:none}.journey-map-marker circle{transition:r .25s ease,opacity .25s ease}.journey-map-marker:is(:hover,:focus-visible) .journey-marker-halo{stroke:var(--fresh-line-red);stroke-width:2}.journey-callout{position:absolute;top:14px;width:148px;padding:10px 12px;display:grid;gap:4px;border:1px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--card) / .96);box-shadow:0 6px 18px hsl(var(--foreground) / .08);pointer-events:none;animation:journey-callout-reveal .35s ease both}.journey-callout[data-side=left]{left:14px}.journey-callout[data-side=right]{right:14px}.journey-callout-title{font-size:12px;font-weight:600}.journey-callout-time{font-size:11px;color:hsl(var(--muted-foreground))}.journey-callout-duration{display:flex;align-items:center;gap:5px;font-size:11px}.journey-attribution{position:absolute;bottom:3px;right:4px;display:flex;gap:5px;background:hsl(var(--card) / .9);padding:2px 4px;border-radius:var(--radius-sm);font-size:9px;color:hsl(var(--muted-foreground))}.journey-stops{border-top:1px solid hsl(var(--border))}.journey-stop{position:relative;overflow:hidden;transition:background-color .25s ease}.journey-stop[aria-pressed=true]{background:hsl(var(--muted) / .65)}.journey-stop-icon{display:grid;place-items:center;width:28px;height:28px;border:1px solid hsl(var(--border));border-radius:var(--radius-md);background:hsl(var(--card))}.journey-stop[aria-pressed=true] .journey-stop-icon{color:var(--fresh-line-red)}.feature-fragment .journey-stop-arrow{width:15px;height:15px;opacity:0;transform:translate(-4px,4px);transition:opacity .25s ease,transform .25s ease}.journey-stop:is(:hover,:focus-visible,[aria-pressed=true]) .journey-stop-arrow{opacity:1;transform:none}.feature-fragment .fragment-vehicle>span>svg{width:22px;height:22px}.feature-fragment .fragment-selection svg{width:12px;height:12px;color:inherit}@keyframes journey-route-reveal{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}@keyframes journey-callout-reveal{0%{opacity:0}to{opacity:1}}.fragment-choices [aria-pressed=true]{background:hsl(var(--card));box-shadow:0 1px 3px hsl(var(--foreground) / .08)}.fragment-vehicle{transition:background-color .3s ease,border-color .3s ease}.fragment-vehicle[aria-pressed=true]{background:hsl(var(--muted) / .65);border-color:hsl(var(--foreground) / .35)}.fragment-vehicle[aria-pressed=true] .fragment-selection{background:hsl(var(--primary));color:hsl(var(--primary-foreground));border-color:transparent}.fragment-cost-bar{flex-basis:0;min-width:0;transition:flex-grow .75s var(--studio-ease, ease)}.fragment-cost-bar--0{background:var(--fresh-line-red)}.fragment-cost-bar--1{background:hsl(var(--foreground) / .6)}.fragment-cost-bar--2{background:hsl(var(--foreground) / .2)}.fragment-repair-source{transition:opacity .3s ease}.fragment-repair[data-approved=true] .fragment-repair-source{opacity:.65}.fragment-transition{display:grid;position:relative;isolation:isolate}.fragment-transition-layer{grid-area:1 / 1;min-width:0}.fragment-transition-layer[aria-hidden=true]{pointer-events:none}.fragment-repair-body{height:124px;overflow:hidden}.fragment-repair-complete{height:124px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px}.fragment-complete-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;color:#209760;background:#2097601f}html.dark .fragment-complete-icon{color:#6ce0aa;background:#6ce0aa1f}.fragment-repair[data-phase="1"] .fragment-request-line{box-shadow:inset 0 0 0 1px hsl(var(--foreground) / .3);transition:box-shadow .35s ease}.fragment-repair[data-phase="1"] [data-slot=button]{animation:fragment-confirm-press .9s ease both}.fragment-vehicle{transition:background-color .3s ease,border-color .3s ease,box-shadow .25s ease}.fragment-vehicle:is(:hover,:focus-visible){box-shadow:0 3px 8px hsl(var(--foreground) / .06);border-color:hsl(var(--foreground) / .35)}@keyframes fragment-confirm-press{0%,65%,to{transform:scale(1)}85%{transform:scale(.98)}}.fragment-result{animation:fragment-state-change .38s var(--studio-ease, ease)}@keyframes fragment-state-change{0%{opacity:.35;transform:translateY(4px);filter:blur(2px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}@container (max-width: 340px){.journey-map{height:205px}.journey-stop-icon{display:none}}@media(prefers-reduced-motion:reduce){.feature-fragment *,.feature-fragment *:before,.feature-fragment *:after{animation:none!important;transition:none!important}}.fragment-permissions [data-slot=button]{min-height:48px}.journey-slot{stroke:var(--study-accent);fill:var(--study-accent);fill-opacity:.08;animation:journey-slot 6s ease-in-out infinite;opacity:0}.journey-cone{animation:journey-cone 4s ease-in-out infinite}.journey-usage{animation:journey-usage 5s cubic-bezier(.22,1,.36,1) infinite}@keyframes journey-slot{0%,33%,to{opacity:0}6%,27%{opacity:1}}@keyframes journey-cone{0%,to{opacity:.35}50%{opacity:1}}@keyframes journey-usage{0%,to{stroke-dashoffset:1;opacity:0}18%,78%{stroke-dashoffset:0;opacity:1}92%{stroke-dashoffset:0;opacity:0}}@media(prefers-reduced-motion:reduce){.journey-slot,.journey-cone,.journey-usage{animation:none;opacity:1}.journey-slot{fill-opacity:0}.journey-usage{stroke-dashoffset:0}}.grounded-fleet{--study-accent:#f8f8f8}.grounded-fleet[data-accents=true]{--study-accent:#ff1a00}.grounded-fleet__vehicle{stroke:var(--grounded-highlight,#e5e5e5);stroke-width:1.7;stroke-linejoin:round}.grounded-fleet__flow{stroke:var(--study-accent);stroke-width:2.5;stroke-dasharray:.09 .91;animation:fleet-flow 3.6s linear infinite}.grounded-fleet__crossing{animation:fleet-crossing 6s cubic-bezier(.45,0,.55,1) infinite}.grounded-fleet__boundary{fill:none;stroke:var(--study-accent);stroke-width:2.5;animation:fleet-boundary 6s ease-in-out infinite}.grounded-fleet[data-paused=true] *{animation-play-state:paused!important}@keyframes fleet-flow{0%{stroke-dashoffset:.1;opacity:0}12%{opacity:1}85%{opacity:1}to{stroke-dashoffset:-1;opacity:0}}@keyframes fleet-crossing{0%,8%{transform:translate(-155px)}42%,58%{transform:translate(0)}92%,to{transform:translate(155px);opacity:0}8%,85%{opacity:1}0%{opacity:0}}@keyframes fleet-boundary{0%,20%,80%,to{opacity:0}35%,65%{opacity:1}}@media(prefers-reduced-motion:reduce){.grounded-fleet__crossing{animation:none;transform:translate(0)}.grounded-fleet__boundary{animation:none;opacity:.8}.grounded-fleet__flow{animation:none;stroke-dasharray:none;opacity:.5}}.grounded-fleet--themed{display:block;width:100%;height:100%;--grounded-faint:color-mix(in srgb,currentColor 14%,transparent);--grounded-line:color-mix(in srgb,currentColor 32%,transparent);--grounded-edge:color-mix(in srgb,currentColor 52%,transparent);--grounded-highlight:color-mix(in srgb,currentColor 80%,transparent);--grounded-inset:var(--fresh-line-page);--grounded-side:color-mix(in srgb,currentColor 5%,var(--fresh-line-page));--grounded-face:color-mix(in srgb,currentColor 9%,var(--fresh-line-page));--study-accent:currentColor}
