/* Scoped to the existing trip list and itinerary. Original Clareiti branding is retained. */
#mainApp .page, #mainApp .page > .scroll { min-height:0; }
#daysContainer, #detailScroll { overflow-anchor:none; overscroll-behavior:contain; }
#tripSelector .plans-pills { display: block; padding-top: 14px; }
#tripSelector .ct-trips-tools { display:flex; flex-wrap:wrap; gap:8px 12px; align-items:center; }
#tripSelector .ct-trips-tools h1 { margin:0 auto 0 0; font-size:20px; font-weight:800; }
#tripSelector .ct-trips-tools a,
#tripSelector .ct-trips-tools button { display:inline-flex; align-items:center; justify-content:center; min-height:40px; padding:8px 12px; border:1px solid var(--border); border-radius:9px; background:var(--white); color:var(--ink); font-family:inherit; font-size:13px; font-weight:700; text-decoration:none; cursor:pointer; }
#tripSelector .ct-trips-tools [hidden] { display:none; }
#tripSelector .plans-row-actions { flex-wrap:wrap; }
#tripSelector .plans-row-action { min-height:36px; padding:8px 10px; }
#page-home .day-card-past,
#page-home .day-card-collapsed { opacity:.72; }
#page-home button.day-card-collapsed { width:calc(100% - 32px); min-height:44px; border-top:0; border-right:0; border-bottom:0; text-align:left; font-family:inherit; }
#page-home .day-card-collapsed .cc-info { flex-wrap:wrap; min-width:0; gap:2px 8px; }
#page-home .day-card-collapsed .cc-title { overflow-wrap:anywhere; }
#page-home .day-card-collapsed .ct-day-date { font-size:11px; color:var(--muted); flex-shrink:0; }
#page-home .ct-day-collapse { display:inline-flex; align-items:center; justify-content:center; width:36px; min-width:36px; height:36px; padding:0; color:var(--muted); }
#page-home .ct-day-collapse .ct-day-chevron { display:block; font-size:20px; line-height:1; transform:rotate(-90deg); }
#page-home .day-card-collapsed .cc-check { font-size:20px; line-height:1; }
@media (pointer:coarse) { #page-home .ct-day-collapse { width:44px; min-width:44px; height:44px; } }
#tripSelector button:focus-visible,
#tripSelector a:focus-visible,
#page-home .ct-day-collapse:focus-visible,
#page-home button.day-card-collapsed:focus-visible { outline:3px solid var(--accent); outline-offset:2px; }
.ct-install-help { width:min(440px,calc(100% - 32px)); max-height:80vh; overflow:auto; padding:24px; border:1px solid var(--border); border-radius:16px; color:var(--ink); background:var(--white); font-family:inherit; }
.ct-install-help::backdrop { background:rgba(27,45,69,.4); }
.ct-install-help h2 { font-size:21px; margin:0 0 14px; }
.ct-install-help p { font-size:15px; line-height:1.6; }
.ct-install-help button { min-height:44px; padding:10px 20px; border:0; border-radius:9px; color:#fff; background:var(--ink); font:inherit; cursor:pointer; }
@media (max-width:480px) {
  #tripSelector .plans-top { flex-wrap:wrap; }
  #tripSelector .plans-search { order:3; flex-basis:100%; }
  #tripSelector .plans-new-btn { margin-left:auto; min-height:44px; }
  #tripSelector .plans-row-action { min-height:44px; }
  #tripSelector .plans-search input { font-size:16px; min-height:44px; }
  #tripSelector .ct-trips-tools { gap:6px; }
  #tripSelector .ct-trips-tools h1 { flex-basis:100%; }

}

#page-home .day-card-collapsed:focus-visible, #page-home .day-card-past:focus-within { opacity:1; }
@media (hover:hover) { #page-home .day-card-collapsed:hover { opacity:.9; } }

#dayWeather{flex-wrap:wrap;gap:3px 10px;min-height:24px;line-height:1.5}#dayWeather:empty{display:none}
.ct-weather-values{color:var(--ink);font-size:13px;font-weight:700}.ct-weather-source{font-size:11px;color:var(--muted);text-decoration:none}
[data-weather-day]{flex-wrap:wrap;gap:4px}[data-weather-day] small{font-size:10px;color:var(--muted)}
.ct-map-network-note{position:absolute;bottom:25px;left:8px;right:8px;z-index:500;background:white;padding:8px;border:1px solid var(--border);border-radius:8px;font-size:12px;color:var(--ink)}
.leaflet-control-attribution{font-size:10px!important;max-width:95%;line-height:1.3!important}.leaflet-popup-content{font-family:Nunito,system-ui,sans-serif}

.ct-example-tool-note{flex-shrink:0;font-size:11px;line-height:1.5;color:#52647d;background:#edf5fc;border-bottom:1px solid var(--border);padding:8px 14px;margin:0;text-wrap:pretty}
