/* VOYAGER_MOBILE_RESULTS_V1 (admin request, 2026-09-27) - Sky Express phone
   results, step 1 ("Flug waehlen"). Loaded only via
   <link media="(max-width:760px)"> and scoped to body.voy-res (set by
   js/results-mobile.js on phones) - desktop never sees any of this. */
body.voy-res{background:#f4f6f9;--voy-m-navy:color-mix(in srgb,var(--voy-color-primary) 55%,#06182a)}
body.voy-res .voy-header,
body.voy-res .voy-footer,
body.voy-res .voy-results-head,
body.voy-res .voy-summary-rail,
body.voy-res .voy-leg-group-title,
body.voy-res .voy-leg-lock-message{display:none!important}
body.voy-res main.public-content{padding:0!important;background:#f4f6f9!important}
body.voy-res .voy-results-page{padding:0!important;margin:0!important;max-width:none!important}
body.voy-res .voy-results-layout{display:block!important}
body.voy-res #flight-choice-form{padding-bottom:calc(env(safe-area-inset-bottom,0px) + 96px)}

/* top bar + step bar */
.voy-res-top{position:sticky;top:0;z-index:30;background:#fff;box-shadow:0 1px 0 #e3e8ef}
.voy-res-bar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:calc(env(safe-area-inset-top,0px) + 8px) 12px 8px}
.voy-res-back{justify-self:start;display:inline-flex;align-items:center;gap:4px;border:0;background:none;padding:6px 2px;font:inherit;font-size:15px;font-weight:700;color:#172033;text-decoration:none;cursor:pointer}
.voy-res-back svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.voy-res-title{font-size:16px;font-weight:800;color:#172033}
.voy-res-cur{justify-self:end;font-size:14px;font-weight:800;color:#6b7a8c}
.voy-res-step{display:flex;align-items:center;gap:8px;padding:6px 16px 10px;font-size:13px;font-weight:700;color:#44516a}
.voy-res-step svg{width:16px;height:16px;fill:none;stroke:var(--voy-color-primary);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.voy-res-progress{height:3px;background:#e3e8ef}
.voy-res-progress i{display:block;height:100%;width:33.33%;background:var(--voy-color-accent);border-radius:0 3px 3px 0}

/* leg header */
.voy-res-leghead{display:flex;align-items:center;gap:12px;padding:14px 16px;background:#fff;border-bottom:1px solid #e3e8ef}
.voy-res-leghead svg.plane{width:22px;height:22px;flex:0 0 auto;fill:var(--voy-color-primary)}
.voy-res-leghead[data-leg="return"] svg.plane{transform:scaleX(-1)}
.voy-res-leghead-text{flex:1;min-width:0}
.voy-res-leghead-text small{display:block;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--voy-color-primary)}
.voy-res-leghead-text strong{display:block;font-size:16px;font-weight:800;color:#172033;text-transform:uppercase;letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.voy-res-leghead-text span{display:block;font-size:12px;font-weight:600;color:#6b7a8c;margin-top:1px}
.voy-res-edit{width:40px;height:40px;border-radius:50%;border:1.5px solid #d5dce6;background:#fff;display:inline-flex;align-items:center;justify-content:center;color:#172033;cursor:pointer;flex:0 0 auto;padding:0}
.voy-res-edit svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

/* chosen outbound, collapsed */
.voy-res-chosen{display:flex;align-items:center;gap:10px;padding:12px 16px;background:var(--voy-color-primary-tint);border-bottom:1px solid #d9e3ec}
.voy-res-chosen svg.plane{width:18px;height:18px;fill:var(--voy-color-primary)}
.voy-res-chosen b{font-size:13px;font-weight:800;color:#172033;text-transform:uppercase;letter-spacing:.04em}
.voy-res-chosen span{flex:1;font-size:13px;font-weight:600;color:#44516a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.voy-res-chosen .voy-res-edit{width:34px;height:34px}

/* date strip */
.voy-res-dates{display:flex;gap:0;overflow-x:auto;scrollbar-width:none;background:#fff;border-bottom:1px solid #e3e8ef;scroll-snap-type:x proximity}
.voy-res-dates::-webkit-scrollbar{display:none}
.voy-res-date{flex:0 0 25%;display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 4px 9px;border:0;border-bottom:3px solid transparent;background:none;font:inherit;cursor:pointer;scroll-snap-align:center;color:#44516a}
.voy-res-date small{font-size:12px;font-weight:700}
.voy-res-date b{font-size:13px;font-weight:800;color:#172033}
.voy-res-date em{font-style:normal;font-size:12px;font-weight:700;color:var(--voy-color-primary)}
.voy-res-date[aria-current="true"]{border-bottom-color:var(--voy-color-accent);background:color-mix(in srgb,var(--voy-color-accent) 7%,#fff)}
.voy-res-date[disabled]{opacity:.4;cursor:default}
.voy-res-note{padding:12px 16px 4px;font-size:12px;font-weight:600;color:#6b7a8c}

/* views */
body.voy-res .voy-leg-group{margin:0!important;padding:0!important}
body.voy-res[data-view="outbound"] .voy-leg-group[data-leg="return"],
body.voy-res[data-view="return"] .voy-leg-group[data-leg="outbound"] .voy-flight-list,
body.voy-res[data-view="return"] .voy-leg-group[data-leg="outbound"] .voy-res-dates,
body.voy-res[data-view="return"] .voy-leg-group[data-leg="outbound"] .voy-res-leghead,
body.voy-res[data-view="return"] .voy-leg-group[data-leg="outbound"] .voy-res-note{display:none!important}
body.voy-res[data-view="outbound"] .voy-res-chosen{display:none!important}
body.voy-res .voy-flight-list{display:flex!important;flex-direction:column;gap:12px;padding:12px 16px!important}

/* flight card */
body.voy-res .voy-flight-card{
  display:block!important;position:relative;background:#fff!important;border:1.5px solid #fff!important;border-radius:16px!important;
  box-shadow:0 2px 10px rgba(16,24,40,.08)!important;padding:14px 16px 10px!important;margin:0!important;cursor:pointer;
}
body.voy-res .voy-flight-card[data-selected="true"]{border-color:var(--voy-color-primary)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--voy-color-primary) 18%,transparent)!important}
body.voy-res .voy-flight-card input[type=radio]{position:absolute;opacity:0;pointer-events:none}
body.voy-res .voy-flight-row{display:grid!important;grid-template-columns:1fr auto;gap:6px 14px;align-items:center}
body.voy-res .voy-flight-carrier{display:none!important}
body.voy-res .voy-flight-route{display:grid!important;grid-template-columns:auto 1fr auto;align-items:center;gap:10px}
body.voy-res .voy-flight-time{font-size:22px!important;font-weight:800!important;color:#172033!important;line-height:1.1}
body.voy-res .voy-flight-airport{font-size:13px!important;font-weight:700!important;color:#6b7a8c!important}
body.voy-res .voy-flight-path{position:relative;display:flex;align-items:center;justify-content:center}
body.voy-res .voy-flight-path-line{width:100%;border-top:2px dashed #c9d3de!important;height:0!important;background:none!important}
body.voy-res .voy-flight-duration{position:absolute;top:-18px;font-size:11px!important;font-weight:700;color:#6b7a8c}
body.voy-res .voy-flight-baggage{display:none!important}
body.voy-res .voy-flight-price{text-align:right}
body.voy-res .voy-flight-price strong{display:block;font-size:20px!important;font-weight:800!important;color:var(--voy-color-primary)!important;white-space:nowrap}
body.voy-res .voy-flight-price span{display:none!important}
.voy-res-cardfoot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px;padding-top:9px;border-top:1px solid #eef1f5}
.voy-res-direct{border:0;background:none;padding:2px 0;font:inherit;font-size:13px;font-weight:800;color:var(--voy-color-primary);cursor:pointer;display:inline-flex;align-items:center;gap:3px}
.voy-res-direct svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round}
.voy-res-airline{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;color:#44516a;min-width:0}
.voy-res-airline img{height:16px;width:auto}
.voy-res-airline span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
body.voy-res .voy-flight-sold-out{opacity:.5}

/* bottom bar */
.voy-res-foot{position:fixed;left:0;right:0;bottom:0;z-index:40;display:flex;align-items:center;justify-content:space-between;gap:14px;
  padding:12px 16px calc(env(safe-area-inset-bottom,0px) + 12px);background:#fff;box-shadow:0 -6px 20px rgba(16,24,40,.1)}
.voy-res-total small{display:block;font-size:12px;font-weight:700;color:#6b7a8c}
.voy-res-total strong{display:block;font-size:20px;font-weight:800;color:#172033}
.voy-res-next{min-width:150px;min-height:52px;border:0;border-radius:999px;background:var(--voy-color-accent);color:#fff;font:inherit;font-size:16px;font-weight:800;letter-spacing:.03em;text-transform:uppercase;cursor:pointer}
.voy-res-next:disabled{background:#f5c3ad;cursor:default}

/* bottom sheets (flight details) */
.voy-res-sheet{position:fixed;inset:0;z-index:60;visibility:hidden;pointer-events:none;transition:visibility 0s linear .45s}
.voy-res-sheet[data-open="true"]{visibility:visible;pointer-events:auto;transition-delay:0s}
.voy-res-sheet-bg{position:absolute;inset:0;background:rgba(6,18,34,.5);opacity:0;transition:opacity .4s ease}
.voy-res-sheet[data-open="true"] .voy-res-sheet-bg{opacity:1}
.voy-res-sheet-panel{position:absolute;left:0;right:0;bottom:0;max-height:88vh;overflow-y:auto;background:#fff;border-radius:22px 22px 0 0;
  transform:translateY(105%);transition:transform .5s cubic-bezier(.22,.8,.22,1);padding:0 0 calc(env(safe-area-inset-bottom,0px) + 20px)}
.voy-res-sheet[data-open="true"] .voy-res-sheet-panel{transform:none}
.voy-res-sheet-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid #eef1f5}
.voy-res-sheet-head b{font-size:14px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#172033}
.voy-res-sheet-x{width:36px;height:36px;border:0;border-radius:50%;background:#f1f4f8;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0}
.voy-res-sheet-x svg{width:18px;height:18px;fill:none;stroke:#172033;stroke-width:2.2;stroke-linecap:round}
.voy-res-det-hero{height:200px;background:linear-gradient(135deg,var(--voy-color-primary),var(--voy-m-navy));background-size:cover;background-position:center}
.voy-res-det{padding:14px 18px}
.voy-res-det h3{margin:0 0 4px;font-family:inherit!important;font-size:16px;font-weight:800;color:#172033;letter-spacing:normal}
.voy-res-det .meta{font-size:13px;font-weight:600;color:#6b7a8c;margin-bottom:14px}
.voy-res-det-line{display:grid;grid-template-columns:56px 16px 1fr;gap:0 10px}
.voy-res-det-line .t{font-size:17px;font-weight:800;color:#172033;padding-top:1px}
.voy-res-det-line .dot{position:relative;display:flex;justify-content:center}
.voy-res-det-line .dot::before{content:"";width:10px;height:10px;border-radius:50%;border:2px solid var(--voy-color-primary);background:#fff;margin-top:5px;z-index:1}
.voy-res-det-line .p b{display:block;font-size:15px;font-weight:800;color:#172033}
.voy-res-det-line .p small{display:block;font-size:12px;color:#6b7a8c;margin-top:1px}
.voy-res-det-mid{display:grid;grid-template-columns:56px 16px 1fr;gap:0 10px;min-height:46px}
.voy-res-det-mid .dot{display:flex;justify-content:center}
.voy-res-det-mid .dot::before{content:"";width:0;border-left:2px dashed #c9d3de}
.voy-res-det-mid span{align-self:center;font-size:12px;font-weight:700;color:#6b7a8c}
.voy-res-det-bag{margin-top:14px;padding:10px 12px;border-radius:12px;background:#f4f6f9;font-size:13px;font-weight:600;color:#44516a}
