/* Small mobile-only refinements to the existing design — desktop unchanged. */
.day-tabs-wrap {position:relative;min-width:0;}
.selected-day-return[hidden] {display:none!important;}
.selected-day-return {display:none;}
@media(max-width:680px){
  .day-tabs-wrap {position:relative;}
  .selected-day-return:not([hidden]){
    display:flex;align-items:center;justify-content:center;
    position:absolute;right:2px;top:4px;z-index:2;
    min-height:36px;padding:6px 9px;border-radius:10px;
    border:1px solid #8cb6a0;color:#194a39;background:#e6f4e9;
    font-size:.75rem;font-weight:850;box-shadow:-8px 0 12px rgba(247,247,241,.92);
  }
  .selected-day-return:focus-visible{outline:3px solid #4e9a79;outline-offset:2px;}
  /* Slightly more legible type without turning every itinerary card into a giant card. */
  .day-tab strong{font-size:.80rem;}
  .day-tab span{font-size:.68rem;}
  .filters .filter{font-size:.72rem;min-height:34px;padding:6px 10px;}
  .day-summary p{font-size:.85rem;}
  .pill{font-size:.73rem;}
  .event-time{font-size:.79rem;}
  .event-sub{font-size:.83rem;line-height:1.5;}
  .event h3{font-size:1rem;}
  .tag{font-size:.70rem;line-height:1.2;}
  .event-actions .small-btn,.event-actions .check-btn{min-height:38px;}
  .event-actions .check-btn{min-width:38px;}
  .mobile-weather-heading p,.mobile-outfit-preview{font-size:.79rem;}
  .gems-category,.gems-why{font-size:.79rem;}
  .gems-provider,.gems-footnote{font-size:.72rem;}
  .gems-google-score,.gems-unrated{font-size:.73rem;}
  .gems-sort-controls .gems-select{font-size:.77rem;}
  #aiModal .ai-bubble{font-size:.83rem;}
  #aiModal .ai-status{font-size:.73rem;}
  /* The AI composer sits above the iPhone keyboard, even when Safari does
     not resize CSS dvh until after the keyboard animation finishes. */
  #aiModal.companion-backdrop{
    bottom:var(--trip-keyboard-inset,0px);
  }
  #aiModal .companion-sheet{
    height:min(93dvh,calc(var(--trip-visual-height,93dvh) - 6px));
    max-height:min(93dvh,calc(var(--trip-visual-height,93dvh) - 6px));
    min-height:0;
    display:flex;flex-direction:column;
  }
  /* Before the first question, show a compact bottom sheet, not an enormous
     empty conversation canvas. Once messages exist, expand for readable chat. */
  #aiModal:not(.has-messages) .companion-sheet{height:auto;}
  #aiModal .ai-thread.is-intro-only{
    flex:0 0 auto;min-height:0;max-height:86px;
    margin-bottom:8px;padding:7px;
  }
  #aiModal .ai-thread.is-intro-only .ai-bubble{max-width:100%;font-size:.75rem;padding:7px 9px;}
  #aiModal .ai-form{margin-top:auto;position:relative;z-index:1;}
  #aiModal .ai-send{min-height:44px;}
  #aiModal.is-composing .companion-heading{margin-bottom:6px;}
  #aiModal.is-composing .companion-heading h2{font-size:1.12rem;}
  #aiModal.is-composing .companion-heading .eyebrow{font-size:.58rem;}
  #aiModal.is-composing .ai-presets{display:none;}
  #aiModal.is-composing .ai-thread.is-intro-only{display:none;}
  #aiModal.is-composing .ai-privacy-details{display:none;}
  #aiModal.is-composing .ai-settings:not([open]){margin-top:3px;}
  #aiModal.is-composing .ai-form textarea{min-height:54px;max-height:75px;}
  #aiModal.is-composing .ai-thread:not(.is-intro-only){min-height:36px;}
  #aiModal.is-composing .ai-status{max-height:2.5em;}
  /* Currency: show the converted dollars AND age of the rate with keyboard up.
     The rate and quick amounts remain accessible after the keyboard closes. */
  .currency-backdrop{bottom:var(--trip-keyboard-inset,0px);}
  .currency-panel{max-height:min(94dvh,calc(var(--trip-visual-height,94dvh) - 6px));}
  .currency-backdrop.is-editing .currency-panel{
    padding:12px 14px calc(10px + env(safe-area-inset-bottom));
    border-radius:17px 17px 0 0;
    overflow-y:auto;
  }
  .currency-backdrop.is-editing .currency-header .eyebrow,
  .currency-backdrop.is-editing .currency-header p:not(.eyebrow),
  .currency-backdrop.is-editing .currency-quick-amounts,
  .currency-backdrop.is-editing .currency-rate-bar,
  .currency-backdrop.is-editing .currency-disclaimer{display:none;}
  .currency-backdrop.is-editing .currency-header h2{font-size:1.24rem;margin:0 0 7px;}
  .currency-backdrop.is-editing .currency-close{width:34px;height:34px;}
  .currency-backdrop.is-editing .currency-choice{gap:6px;margin:0 0 7px;}
  .currency-backdrop.is-editing .currency-option{min-height:38px;padding:6px 3px;font-size:.83rem;}
  .currency-backdrop.is-editing .currency-option small{font-size:.67rem;}
  .currency-backdrop.is-editing .currency-conversion{padding:9px;border-radius:12px;}
  .currency-backdrop.is-editing .currency-conversion label{font-size:.71rem;margin-bottom:3px;}
  .currency-backdrop.is-editing .currency-input-wrap{min-height:48px;border-radius:11px;}
  .currency-backdrop.is-editing .currency-input-wrap>span:first-child{font-size:1.45rem;}
  .currency-backdrop.is-editing .currency-input-wrap input{font-size:1.46rem;}
  .currency-backdrop.is-editing .currency-arrow{font-size:.95rem;padding:2px;}
  .currency-backdrop.is-editing .currency-usd{min-height:72px;padding:9px 11px;border-radius:11px;}
  .currency-backdrop.is-editing .currency-usd strong{font-size:1.75rem;margin:3px 0 2px;}
  .currency-backdrop.is-editing .currency-result-caption{font-size:.68rem;}
}
@media(max-width:355px){
  .event-actions .small-btn{padding:7px 8px;}
  .gems-category{font-size:.74rem;}
  #aiModal .companion-sheet{padding-left:10px;padding-right:10px;}
}
@media print{.selected-day-return{display:none!important;}}
