/* Family Edition: one clear destination per tap. No source itinerary changes. */
:root{--fu-ink:#1b2d43;--fu-muted:#607189;--fu-line:#e6eaf0;--fu-soft:#f4f7fb;--fu-accent:#2465b5}
#screen{max-width:860px;margin:auto}
#tabs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;align-items:stretch;padding:7px max(6px,env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(6px,env(safe-area-inset-left));}
#tabs button{min-width:0;min-height:55px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:2px;font-size:11px;font-weight:700;line-height:1.3;border-radius:12px;padding:5px 1px}
#tabs button span{font-size:22px;line-height:1.2}
#tabs button.active{background:#e9f2ff;color:#17539d}
.fu-hero{background:linear-gradient(125deg,#ecf4ff,#f9fbff 65%,#e9f8ef);border:1px solid #e2eaf6;border-radius:23px;padding:27px 20px 24px;margin:13px 0 17px;text-align:right}
.fu-kicker{font-size:10px;font-weight:850;letter-spacing:1.4px;color:#4b79a6;direction:ltr;display:inline-block}
.fu-hero h1{font-size:clamp(25px,6vw,34px);letter-spacing:-.6px;color:#193c68;margin:10px 0 5px;line-height:1.2}
.fu-hero p{color:#4b6481;margin:8px 0 0;font-size:14px}
.fu-heading{padding:15px 4px 11px}
.fu-heading h1{font-size:clamp(23px,6vw,30px);color:#193c68;margin:5px 0}
.fu-heading p{font-size:14px;color:#61718a;line-height:1.6;margin:6px 0}
.fu-card{border:1px solid var(--fu-line);background:#fff;border-radius:20px;padding:18px 17px;margin:13px 0;box-shadow:0 4px 18px #1c3d6608}
.fu-card h2{font-size:17px;color:#193c68;margin:0 0 14px;line-height:1.5}
.fu-featured{border-color:#c9dcf2}
.fu-day-title{font-size:21px;font-weight:850;color:#183b65;line-height:1.5}
.fu-muted{color:var(--fu-muted);font-size:13px;line-height:1.75;margin:8px 0}
.fu-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:16px}
.fu-action{appearance:none;display:inline-flex;align-items:center;justify-content:center;min-height:47px;border:1px solid #d7e3f1;background:#eef5fd;color:#20558f!important;border-radius:13px;padding:11px 13px;font-weight:750;font-size:13px;cursor:pointer;text-decoration:none;text-align:center;line-height:1.45}
.fu-action.fu-primary{background:#2465b5;color:#fff!important;border-color:#2465b5}
.fu-shortcuts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.fu-shortcuts .fu-action{min-height:66px;padding:12px 8px;font-size:13px}
.fu-footnote{color:#7a8696;font-size:12px;line-height:1.7;padding:6px 4px 15px}
.fu-filters{display:flex;gap:7px;overflow-x:auto;scrollbar-width:none;padding:4px 1px 11px;scroll-snap-type:x proximity}
.fu-filters::-webkit-scrollbar{display:none}
.fu-filter{flex-shrink:0;scroll-snap-align:start;min-height:42px;background:#edf2f8;border:1px solid #e0e8f2;border-radius:22px;padding:9px 15px;color:#3c5775;font-size:13px;font-weight:700;cursor:pointer}
.fu-filter.active{background:#2465b5;color:#fff;border-color:#2465b5}
.fu-search-label{display:block;font-size:12px;color:#607189;font-weight:700;margin:5px 0 14px}
.fu-search{display:block;width:100%;border:1px solid #dbe3ef;background:#fff;border-radius:14px;padding:14px;margin:6px 0 0;font-size:16px;color:#1b2d43}
.fu-day-list{display:grid;gap:10px}
.fu-day{border:1px solid #e1e8f2;background:#fff;border-radius:17px;overflow:hidden;scroll-margin-top:85px}
.fu-day[hidden]{display:none!important}
.fu-day>summary{display:flex;align-items:center;gap:12px;padding:15px 13px;cursor:pointer;list-style:none;min-height:70px}
.fu-day>summary::-webkit-details-marker{display:none}
.fu-date{background:#eef4fd;border-radius:11px;color:#285d9d;padding:9px 8px;min-width:61px;text-align:center;font-size:14px;font-weight:850;direction:ltr}
.fu-day-text{display:flex;flex:1;flex-direction:column;gap:5px;min-width:0}
.fu-day-text b{color:#1c3554;font-size:14px;line-height:1.4}
.fu-day-text small{color:#75869a;font-size:12px}
.fu-chevron{color:#7c8ba1;font-size:23px;transition:transform .15s}
.fu-day[open] .fu-chevron{transform:rotate(180deg)}
.fu-day-content{border-top:1px solid #e9edf4;padding:12px 15px 18px}
.fu-steps .daystep{margin:0;border-bottom:1px solid #eef1f6}
.fu-steps .daystep:last-child{border-bottom:0}
.fu-details{margin:14px 0;background:#f6f8fc;border:1px solid #e3e9f3;border-radius:13px;padding:10px 12px}
.fu-details summary{font-size:13px;font-weight:750;cursor:pointer;color:#315f99}
.fu-details p{font-size:13px;color:#485b75;line-height:1.85;white-space:pre-line;overflow-wrap:anywhere}
.fu-note{background:#fff8ea;border-radius:12px;padding:11px;font-size:13px;line-height:1.7}
.fu-list-row{display:flex;flex-direction:column;gap:6px;padding:12px 1px;border-bottom:1px solid #ebeff4}
.fu-list-row:last-child{border-bottom:0}
.fu-list-row b{font-size:14px;color:#273c56;line-height:1.45}
.fu-list-row small{font-size:12px;color:#6b7b90;line-height:1.6}
.fu-menu{display:grid}
.fu-menu-row{display:flex;justify-content:space-between;align-items:center;gap:12px;text-align:right;width:100%;background:transparent;border:0;border-bottom:1px solid #e9edf3;min-height:54px;padding:11px 4px;color:#263f5b;font-size:14px;font-weight:700;cursor:pointer}
.fu-menu-row:last-child{border-bottom:0}
.fu-menu-row span:last-child{font-size:18px;color:#7894b4}
.fu-backbar{margin:12px 0}
.fu-detail .tt-menu{display:none}
.fu-detail>.pillrow{display:none}
.fu-detail .tt-card{margin-top:7px}
.fu-detail>h2.section-title{margin-top:8px}
@media(max-width:440px){.fu-hero{padding:22px 17px}.fu-card{padding:16px 14px}.fu-shortcuts{gap:8px}.fu-shortcuts .fu-action{font-size:12px}#tabs button{font-size:10px}}
@media(prefers-reduced-motion:reduce){.fu-chevron{transition:none}}

/* Consistent one-tap Back across all screens, including nested bookings and tools */
.fu-backbar{display:flex;justify-content:flex-start;align-items:center;margin:8px 0 14px;min-height:46px}
.fu-back{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:9px 18px;background:#eef4fc;border:1px solid #d4e2f4;color:#205a9b;border-radius:14px;font-size:15px;font-weight:800;cursor:pointer;touch-action:manipulation}
.fu-back:focus-visible{outline:3px solid #2c7ac9;outline-offset:2px}
.fu-back span{font-size:21px;line-height:1}
