@layer flow-train-search{.fts{container-type:inline-size;min-width:0;padding:var(--flow-space-5);border:1px solid var(--flow-color-border-subtle);border-radius:var(--flow-radius-card);background:var(--flow-color-surface);color:var(--flow-color-text);box-shadow:var(--flow-shadow-md)}.fts__route{padding-bottom:var(--flow-space-3);border-bottom:1px solid var(--flow-color-border-subtle)}.fts__route-cities{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:var(--flow-space-4);margin:0;color:var(--flow-color-text);font-size:var(--flow-font-size-title-sm);line-height:var(--flow-line-title-sm);font-weight:var(--flow-font-weight-extrabold);letter-spacing:-.01em}.fts__route-city{min-width:0;justify-self:center;text-align:center}.fts__swap{width:var(--flow-control-height);height:var(--flow-control-height);flex:0 0 auto}.fts__swap svg{transition:transform var(--flow-duration) var(--flow-easing)}.fts__swap:hover:not(:disabled) svg{transform:rotate(180deg)}.fts__details{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--flow-space-3);margin-top:var(--flow-space-3)}.fts__field{min-width:0}.fts__date-control{display:flex;align-items:center;gap:var(--flow-space-2);border-color:var(--flow-color-border-inverse);background:var(--flow-color-surface-inverse);color:var(--flow-color-text-inverse);text-align:left;cursor:pointer}.fts__date-control:hover:not(:disabled){background:color-mix(in srgb,var(--flow-color-text-inverse) 9%,transparent)}.fts__date-control svg{flex:0 0 auto;color:var(--flow-color-focus)}.fts__date-control-word{flex:0 0 auto;color:var(--flow-color-focus)}.fts__date-control-sep{flex:0 0 auto;color:var(--flow-color-text-inverse-muted)}.fts__date-control-value{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fts__date-control-value--short{display:none}.fts-date-strip-frame{min-width:0;container-type:inline-size}.fts-date-strip{display:grid;grid-template-columns:var(--flow-touch-target) minmax(0,1fr) var(--flow-touch-target);align-items:stretch;margin-top:var(--flow-space-4);border:1px solid var(--flow-color-border-inverse);border-radius:var(--flow-radius-control);background:var(--flow-color-surface-inverse);color:var(--flow-color-text-inverse)}.fts-date-strip__days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));min-width:0}.fts-date-strip__control,.fts-date-strip__day{border:0;background:transparent;color:inherit;font-family:var(--flow-font-sans);cursor:pointer;transition:background var(--flow-duration-fast) var(--flow-easing),border-color var(--flow-duration-fast) var(--flow-easing),color var(--flow-duration-fast) var(--flow-easing),transform var(--flow-duration-fast) var(--flow-easing)}.fts-date-strip__control{min-width:var(--flow-touch-target);min-height:var(--flow-touch-target);display:inline-flex;align-items:center;justify-content:center}.fts-date-strip__control:hover:not(:disabled),.fts-date-strip__day:hover:not(:disabled):not(.is-selected){background:color-mix(in srgb,var(--flow-color-text-inverse) 9%,transparent)}.fts-date-strip__control:active:not(:disabled),.fts-date-strip__day:active:not(:disabled){transform:translateY(1px)}.fts-date-strip :where(button):focus-visible{z-index:2;outline:2px solid var(--flow-color-focus);outline-offset:2px}.fts-date-strip :where(button):disabled{cursor:not-allowed;opacity:.35}.fts-date-strip__arrow--previous{border-right:1px solid var(--flow-color-border-inverse);border-radius:var(--flow-radius-control) 0 0 var(--flow-radius-control)}.fts-date-strip__arrow--next{border-left:1px solid var(--flow-color-border-inverse)}.fts-date-strip__day{position:relative;min-width:0;height:72px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--flow-space-1);padding:var(--flow-space-2) var(--flow-space-1);border-left:1px solid var(--flow-color-border-inverse)}.fts-date-strip__day:first-child{border-left:0}.fts-date-strip__day.is-selected{z-index:1;border-color:transparent;border-radius:var(--flow-radius-control);background:var(--flow-color-surface);color:var(--flow-color-text)}.fts-date-strip__day.is-today:not(.is-selected) .fts-date-strip__date{color:var(--flow-color-action)}.fts-date-strip__weekday{color:color-mix(in srgb,currentColor 72%,transparent);font-size:var(--flow-font-size-caption);line-height:var(--flow-line-caption);font-weight:var(--flow-font-weight-semibold);text-transform:uppercase}.fts-date-strip__date{max-width:100%;overflow:hidden;font-size:var(--flow-font-size-secondary);line-height:var(--flow-line-secondary);font-weight:var(--flow-font-weight-semibold);text-overflow:ellipsis;white-space:nowrap}.fts-date-strip__day.is-selected .fts-date-strip__date{font-weight:var(--flow-font-weight-extrabold)}.fts-date-strip__price{max-width:100%;color:color-mix(in srgb,currentColor 78%,transparent);font-family:var(--flow-font-mono);font-size:var(--flow-font-size-caption);line-height:var(--flow-line-caption);font-weight:var(--flow-font-weight-bold);white-space:nowrap}.fts-date-strip__price--loading{display:inline-flex;align-items:center;min-height:var(--flow-line-caption)}.fts-date-strip__price-pulse{display:block;width:44px;height:6px;border-radius:var(--flow-radius-pill);background:color-mix(in srgb,currentColor 28%,transparent);animation:fts-date-price-pulse 1s ease-in-out infinite alternate}.fts-date-strip__price-short{display:none}.fts-date-strip__day.is-selected .fts-date-strip__price{color:var(--flow-color-action)}.fts-date-strip__day.is-cheapest:not(.is-selected) .fts-date-strip__price{color:var(--flow-color-text-inverse)}.fts-date-strip__day.is-no-price .fts-date-strip__price{color:color-mix(in srgb,currentColor 45%,transparent);font-family:var(--flow-font-sans);font-weight:var(--flow-font-weight-regular)}.fts-date-strip__selected-dot{position:absolute;left:50%;bottom:var(--flow-space-1);width:6px;height:6px;border-radius:50%;background:var(--flow-color-action);transform:translate(-50%)}.fts__submit{display:flex;flex-direction:column;align-items:center;gap:var(--flow-space-2);margin-top:var(--flow-space-4);text-align:center}.fts__submit .fp-button{min-width:220px}.fts--inverse{border-color:var(--flow-color-border-inverse-strong);background:var(--flow-color-surface-inverse-subtle);color:var(--flow-color-text-inverse);box-shadow:none}.fts--inverse .fts__route{border-bottom-color:var(--flow-color-border-inverse-strong)}.fts--inverse .fts__route-cities{color:var(--flow-color-text-inverse)}.fts--inverse .fp-icon-button--secondary{border-color:var(--flow-color-border-inverse-strong);background:var(--flow-color-surface-inverse-subtle);color:var(--flow-color-text-inverse)}.fts--inverse .fp-icon-button--secondary:hover:not(:disabled){border-color:var(--flow-color-info-inverse-border);background:var(--flow-color-surface-inverse-hover)}.fts--inverse .fts__date-control svg,.fts__date-control--inverse svg,.fts--inverse .fts__date-control-word,.fts__date-control--inverse .fts__date-control-word{color:var(--flow-color-info)}.fts--inverse .fts__date-control,.fts__date-control--inverse,.fts--inverse .fts-date-strip{border-color:var(--flow-color-border-inverse-strong);background:color-mix(in srgb,var(--flow-color-shadow-base) 16%,transparent)}.fts-calendar__months{min-width:0;flex:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--flow-space-5)}.fts-calendar__months--1{grid-template-columns:minmax(0,1fr)}.fts-calendar__months--2{grid-template-columns:repeat(2,minmax(0,1fr))}.fts-calendar__month{min-width:0}.fts-calendar__body{display:flex;align-items:center;gap:var(--flow-space-2)}.fts-calendar__step{flex:none}.fts-calendar__caption{display:block;margin-bottom:var(--flow-space-2);font-size:var(--flow-font-size-title-sm);line-height:var(--flow-line-title-sm);text-align:center}.fts-calendar__weekdays,.fts-calendar__days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.fts-calendar__weekdays{gap:var(--flow-space-1);margin-bottom:var(--flow-space-1)}.fts-calendar__weekdays span{padding:var(--flow-space-1);color:var(--flow-color-text-muted);font-size:var(--flow-font-size-caption);line-height:var(--flow-line-caption);font-weight:var(--flow-font-weight-semibold);text-align:center;text-transform:uppercase}.fts-calendar__days{gap:var(--flow-space-1)}.fts-calendar__day{min-width:var(--flow-touch-target);height:var(--flow-touch-target);padding:0;border:1px solid transparent;border-radius:var(--flow-radius-control);background:transparent;color:var(--flow-color-text);font:inherit;font-size:var(--flow-font-size-body);font-weight:var(--flow-font-weight-semibold);cursor:pointer;transition:background var(--flow-duration-fast) var(--flow-easing),border-color var(--flow-duration-fast) var(--flow-easing),color var(--flow-duration-fast) var(--flow-easing)}.fts-calendar__day:hover:not(:disabled):not(.is-selected):not(.is-beyond){background:var(--flow-color-info-subtle);color:var(--flow-color-focus)}.fts-calendar__day.is-weekend:not(:disabled):not(.is-selected):not(.is-beyond){color:var(--flow-color-danger)}.fts-calendar__day.is-today:not(.is-selected){border-color:var(--flow-color-focus);color:var(--flow-color-focus)}.fts-calendar__day.is-selected{border-color:var(--flow-color-action);background:var(--flow-color-action);color:var(--flow-color-text-inverse)}.fts-calendar__day:disabled{color:var(--flow-color-text-muted);cursor:not-allowed;opacity:.42}.fts-calendar__day.is-foreign{opacity:.2}.fts-calendar__day.is-beyond{color:var(--flow-color-text-muted);cursor:default}}@media (max-width: 1279px){@layer flow-train-search{.fts-date-strip--priced .fts-date-strip__days{grid-template-columns:repeat(5,minmax(0,1fr))}.fts-date-strip--priced .fts-date-strip__day--index-5,.fts-date-strip--priced .fts-date-strip__day--index-6{display:none}}}@media (max-width: 899px){@layer flow-train-search{.fts-date-strip--priced .fts-date-strip__days{grid-template-columns:repeat(3,minmax(0,1fr))}.fts-date-strip--priced .fts-date-strip__day--index-3,.fts-date-strip--priced .fts-date-strip__day--index-4{display:none}}}@container (max-width: 670px){@layer flow-train-search{.fts-date-strip__days{grid-template-columns:repeat(5,minmax(0,1fr))}.fts-date-strip__day--index-5,.fts-date-strip__day--index-6{display:none}}}@media (max-width: 767px){@layer flow-train-search{.fts-date-strip__price-full{display:none}.fts-date-strip__price-short{display:inline}}}@media (max-width: 374px){@layer flow-train-search{.fts-date-strip__day{padding:0}.fts-date-strip__price{font-size:var(--flow-font-size-badge)}}}@container (max-width: 540px){@layer flow-train-search{.fts-date-strip__days{grid-template-columns:repeat(3,minmax(0,1fr))}.fts-date-strip__day--index-3,.fts-date-strip__day--index-4,.fts-date-strip__day--index-5,.fts-date-strip__day--index-6{display:none}}}@media (max-width: 1279px){@layer flow-train-search{.fts-calendar__months{grid-template-columns:repeat(2,minmax(0,1fr))}.fts-calendar__month--2{display:none}}}@media (max-width: 1023px){@layer flow-train-search{.fts-calendar__months{grid-template-columns:minmax(0,1fr)}.fts-calendar__month--1{display:none}}}@media (max-width: 767px){@layer flow-train-search{.fts__date-control-value--full{display:none}.fts__date-control-value--short{display:inline}.fts__date-control-word{margin-left:auto}.fts__date-control-sep{display:none}.fts{padding:var(--flow-space-4);border-right:0;border-left:0;border-radius:0;box-shadow:none}.fts__route-cities{gap:var(--flow-space-3)}.fts__swap{width:var(--flow-touch-target);height:var(--flow-touch-target)}.fts-date-strip__day{height:76px}.fts-date-strip__day.is-selected{border:2px solid var(--flow-color-action);background:var(--flow-color-surface-inverse);color:var(--flow-color-text-inverse)}.fts__submit .fp-button{width:100%}}}@media (max-width: 374px){@layer flow-train-search{.fts__route-cities{font-size:var(--flow-font-size-control);line-height:var(--flow-line-control)}}}@media (prefers-reduced-motion: reduce){.fts-date-strip__price-pulse{animation:none;opacity:.65}@layer flow-train-search{.fts__swap svg,.fts-date-strip__control,.fts-date-strip__day,.fts-calendar__day{transition:none}}}@keyframes fts-date-price-pulse{0%{opacity:.35}to{opacity:1}}@layer flow-train-search{.fts-calendar--inline{container-type:inline-size}}@container (max-width: 1035px){@layer flow-train-search{.fts-calendar--inline .fts-calendar__months{grid-template-columns:repeat(2,minmax(0,1fr))}.fts-calendar--inline .fts-calendar__month--2{display:none}}}@container (max-width: 683px){@layer flow-train-search{.fts-calendar--inline .fts-calendar__months{grid-template-columns:minmax(0,1fr)}.fts-calendar--inline .fts-calendar__month--1{display:none}}}@layer flow-train-search{.fts-date-strip--quick{grid-template-columns:minmax(0,1fr)}.fts-date-strip--quick .fts-date-strip__days{grid-template-columns:repeat(4,minmax(0,1fr))}.fts-date-strip--quick .fts-date-strip__day{padding-inline:0;height:auto;min-height:calc(var(--flow-control-height) + var(--flow-space-6))}.fts-date-strip--quick .fts-date-strip__date{white-space:normal;overflow:visible;text-overflow:clip}}@media (max-width: 374px){@layer flow-train-search{.fts-date-strip--quick .fts-date-strip__days{grid-template-columns:repeat(2,minmax(0,1fr))}.fts-date-strip--quick .fts-date-strip__day:nth-child(n+3){border-top:1px solid var(--flow-color-border-inverse)}.fts-date-strip--quick .fts-date-strip__day:nth-child(3){border-left:0}}}
