:root{--ink:#101a2b;--muted:#657286;--line:#e7edf4;--soft:#f6f9fc;--card:#fff;--blue:#0b4f9d;--navy:#052e63;--teal:#078b98;--teal2:#08a8b6;--green:#18a957;--orange:#f08a1d;--red:#e5484d;--purple:#8b5cf6;--coral:#ff735e;--shadow:0 18px 40px rgba(15,34,58,.12);--shadow2:0 8px 22px rgba(15,34,58,.09);--bottom:env(safe-area-inset-bottom,0px);--top:env(safe-area-inset-top,0px)}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html{background:#f1f5f9}body{margin:0;color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:radial-gradient(circle at 10% 5%,rgba(8,168,182,.16),transparent 35%),radial-gradient(circle at 90% 0,rgba(11,79,157,.14),transparent 30%),#f3f7fb}button,input,select,textarea{font:inherit}button{cursor:pointer;touch-action:manipulation}.hidden,.visually-hidden{display:none!important}.ui-icon{width:1.25em;height:1.25em;display:inline-block;vertical-align:-.18em;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}.phone-frame{width:100%;max-width:430px;margin:0 auto;min-height:100vh;position:relative;background:#fff;box-shadow:0 0 0 1px rgba(15,34,58,.05);overflow:hidden}.status-bar{position:sticky;top:0;z-index:1000;display:flex;align-items:center;justify-content:space-between;height:28px;padding:calc(4px + var(--top)) 22px 4px;color:#fff;background:#06356f;font-size:12px;font-weight:800}.main{min-height:100vh;padding:0 14px calc(92px + var(--bottom));background:linear-gradient(180deg,#f5f9fc 0,#fff 26%,#fff 100%)}.panel{display:none}.panel.active{display:block}.hero-card{position:relative;margin:0 -14px 0;border-radius:0 0 30px 30px;min-height:258px;padding:32px 26px 92px;background:radial-gradient(circle at 82% 42%,rgba(63,207,222,.28),transparent 28%),linear-gradient(160deg,#052c60 0%,#073f84 54%,#046f86 100%);color:#fff;overflow:hidden;box-shadow:0 18px 42px rgba(4,42,86,.25)}.hero-card:before{content:"";position:absolute;left:-10%;right:-6%;bottom:18px;height:78px;background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.16));clip-path:polygon(0 45%,18% 60%,33% 40%,51% 63%,67% 44%,82% 68%,100% 48%,100% 100%,0 100%)}.hero-copy{position:relative;z-index:3}.hero-copy h1{font-family:Georgia,"Times New Roman",serif;font-size:36px;line-height:.98;margin:0 0 12px;letter-spacing:-.04em}.hero-copy p{font-weight:750;font-size:13px;line-height:1.5;color:#e4fbff;margin:0;width:238px}.hero-bell{position:absolute;right:20px;top:24px;z-index:5;border:0;background:rgba(255,255,255,.11);color:#fff;width:34px;height:34px;border-radius:14px;display:grid;place-items:center}.hero-visual{position:absolute;right:8px;bottom:66px;width:170px;height:126px;z-index:2}.hero-visual:before{content:"";position:absolute;right:9px;bottom:8px;width:116px;height:62px;background:#fff;border-radius:28px 28px 8px 8px;box-shadow:-32px 18px 0 -8px rgba(255,255,255,.9)}.hero-visual:after{content:"";position:absolute;right:35px;bottom:66px;width:58px;height:58px;border-radius:50% 50% 8px 8px;background:#0a56b0;box-shadow:-52px 24px 0 -16px #fff,44px 18px 0 -14px #fff}.hero-visual span:before{content:"";position:absolute;left:0;right:0;bottom:0;height:28px;background:linear-gradient(90deg,#072e60,#0795a6);border-radius:50% 50% 0 0}.readiness-card{position:absolute;left:22px;right:22px;bottom:16px;z-index:8;display:grid;grid-template-columns:58px 1fr auto;align-items:center;gap:12px;background:#fff;color:#10233b;border-radius:22px;padding:11px 14px;box-shadow:var(--shadow)}.progress-ring{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--teal) 25%,#e5edf5 0);font-size:12px;font-weight:950;color:#263447}.progress-ring span{width:42px;height:42px;background:#fff;border-radius:50%;display:grid;place-items:center}.readiness-card strong{display:block;color:#0b4f9d;font-size:12px}.readiness-card small{display:block;color:#657286;font-size:12px;line-height:1.35}.readiness-card b{font-size:28px;color:#0e6e7b}.white-sheet{position:relative;margin:-2px -14px 0;padding:18px 22px 24px;background:#fff;border-radius:30px 30px 0 0;box-shadow:0 -8px 24px rgba(15,34,58,.04)}.section-title{display:flex;gap:9px;align-items:center;margin:0 0 12px}.section-title h3{margin:0;font-size:14px;letter-spacing:-.01em}.tiny-spark{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;color:#078b98;background:#e8fbfd}.setup-list{display:grid;gap:12px}.setup-card{position:relative;display:grid;grid-template-columns:54px 1fr auto;align-items:center;gap:12px;min-height:78px;background:#fff;border:1px solid var(--line);border-radius:20px;padding:12px 14px;box-shadow:var(--shadow2)}.setup-icon{width:48px;height:48px;border-radius:15px;color:#fff;display:grid;place-items:center;box-shadow:0 12px 20px rgba(15,34,58,.12)}.setup-icon .ui-icon{width:25px;height:25px}.setup-card.blue .setup-icon{background:linear-gradient(135deg,#064a9a,#1a73e8)}.setup-card.green .setup-icon{background:linear-gradient(135deg,#10b981,#0ea58f)}.setup-card.purple .setup-icon{background:linear-gradient(135deg,#8b5cf6,#a855f7)}.setup-card.cyan .setup-icon{background:linear-gradient(135deg,#0891b2,#11b8c9)}.setup-card b{font-size:24px;color:#718096}.field label{display:block;color:#172235;font-size:14px;font-weight:900}.field small{display:block;color:#7b8796;font-size:11px;font-weight:650;margin:2px 0}.field input,.field select,.field textarea{width:100%;border:1px solid #dce5ee;border-radius:14px;min-height:44px;padding:10px 12px;background:#fff;color:#10233b;outline:none;font-weight:750}.setup-card .field input,.setup-card .field select{border:0;padding:0;min-height:24px;border-radius:0;color:#0b4f9d;background:transparent;font-size:14px;font-weight:950;appearance:auto}.advanced-fields{display:grid;grid-template-columns:1fr 1fr;gap:8px;height:0;overflow:hidden;opacity:0}.btn{border:0;border-radius:18px;min-height:48px;padding:12px 16px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:950;background:#edf2f7;color:#172033;box-shadow:0 8px 18px rgba(15,34,58,.06)}.btn.wide{width:100%}.btn.primary{background:linear-gradient(135deg,#078b98,#08a8b6);color:#fff;box-shadow:0 14px 30px rgba(8,139,152,.22)}.btn.cta{margin-top:18px;background:linear-gradient(135deg,#ff735e,#ff846d);color:#fff;font-size:16px;box-shadow:0 15px 30px rgba(255,115,94,.28)}.btn.ghost{background:#fff;border:1px solid var(--line);color:#223047}.btn.ok{background:#e8fbef;color:#087a42}.btn.danger{background:#ffe8e8;color:#b42318}.btn.subtle{box-shadow:none;min-height:40px;font-size:13px}.screen-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0 13px}.screen-head h3,.sub-header h3{margin:0;font-size:17px;text-align:center;letter-spacing:-.02em}.back-btn,.icon-btn,.heart-btn,.share-btn{border:0;background:#fff;border-radius:15px;display:grid;place-items:center;color:#1f2937;width:40px;height:40px;font-size:24px}.icon-btn,.heart-btn{border:1px solid var(--line);box-shadow:0 6px 16px rgba(15,34,58,.05)}.back-btn.light,.share-btn{background:rgba(255,255,255,.14);color:#fff}.searchbar{height:50px;display:flex;align-items:center;gap:10px;border:1px solid var(--line);background:#fff;border-radius:17px;padding:0 12px;box-shadow:0 7px 16px rgba(15,34,58,.05);color:#778396}.searchbar input{border:0;background:transparent;outline:0;flex:1;font-size:13px;font-weight:700}.filter-row{margin:12px 0;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:10px;background:#f3f6f9;border-radius:17px;padding:10px 12px;font-size:13px;font-weight:850}.switch{position:relative;width:47px;height:27px;border:0;border-radius:999px;background:#d7e1ea;padding:3px}.switch i{display:block;width:21px;height:21px;border-radius:50%;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.18);margin-left:0}.switch.on{background:linear-gradient(135deg,#078b98,#12b8c9)}.switch.on i{margin-left:20px}.mini-link{border:0;background:transparent;color:#078b98;font-size:12px;font-weight:950;padding:3px}.popular-title{font-weight:950;font-size:14px;margin:10px 0}.notice{padding:11px 12px;border-radius:16px;background:#eefbfc;color:#087282;border:1px solid #bfeaf0;font-size:12px;font-weight:750;line-height:1.4}.notice.warn{background:#fff6df;border-color:#f8dc96;color:#945d0a}.notice.danger{background:#fff1f1;border-color:#fecaca;color:#b42318}.city-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.city-card{position:relative;min-height:158px;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:var(--shadow2)}.city-card.selected{border-color:#078b98;box-shadow:0 12px 26px rgba(8,139,152,.18)}.city-art{height:82px;position:relative;overflow:hidden;background:linear-gradient(135deg,#dbeafe,#a7f3d0)}.city-art:before{content:"";position:absolute;left:-18px;right:-18px;bottom:-20px;height:46px;background:rgba(255,255,255,.64);border-radius:50% 50% 0 0}.city-art:after{content:"";position:absolute;right:12px;bottom:14px;width:55px;height:50px;background:rgba(6,54,111,.20);clip-path:polygon(50% 0,100% 100%,0 100%)}.city-flag{position:absolute;left:10px;top:9px;width:34px;height:34px;border-radius:14px;background:rgba(255,255,255,.88);display:grid;place-items:center;font-size:18px;box-shadow:0 6px 14px rgba(0,0,0,.12)}.city-fav{position:absolute;right:8px;top:8px;width:30px;height:30px;border:0;border-radius:12px;background:rgba(255,255,255,.82);color:#40526a}.city-body{padding:9px 10px 11px}.city-title{display:flex;align-items:center;justify-content:space-between;gap:8px}.city-title h4{margin:0 0 6px;font-size:14px}.city-title .badge.info,.city-card .mini,.city-actions,.ai-mode{display:none}.badge{display:inline-flex;align-items:center;gap:4px;border-radius:999px;padding:4px 7px;font-size:10px;font-weight:950;white-space:nowrap;text-transform:capitalize}.badge.ok{background:#e8fbef;color:#087a42}.badge.warn{background:#fff0d7;color:#a65b00}.badge.danger{background:#ffe8e8;color:#b42318}.badge.info{background:#e8f2ff;color:#1257b8}.badge.dark{background:#eef2f7;color:#526273}.city-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:7px}.city-card:hover .city-actions{display:grid}.city-card:active{transform:scale(.99)}.wizard-sticky-actions{position:sticky;bottom:82px;z-index:50;display:grid;grid-template-columns:auto 1fr;gap:10px;margin:16px 0 4px;padding:10px;background:rgba(255,255,255,.92);backdrop-filter:blur(18px);border:1px solid var(--line);border-radius:22px;box-shadow:0 14px 32px rgba(15,34,58,.12)}.style-screen{padding-top:10px}.style-grid{display:grid;gap:12px;margin:12px 0 18px}.style-btn{border:1px solid var(--line);background:#fff;border-radius:22px;padding:16px;display:grid;grid-template-columns:56px 1fr;grid-template-areas:"icon title" "icon text";gap:2px 12px;text-align:left;box-shadow:var(--shadow2)}.style-btn.primary{border-color:#09aebd;background:#edfcfe}.style-icon{grid-area:icon;width:52px;height:52px;border-radius:18px;background:linear-gradient(135deg,#078b98,#11b7c8);display:grid;place-items:center;color:#fff;font-size:24px}.style-btn strong{grid-area:title}.style-btn small{grid-area:text;color:#6b778a}.route-header{position:relative;margin:0 -14px 12px;padding:12px 18px 16px;background:linear-gradient(180deg,#078b98,#08758a);color:#fff;border-radius:0 0 26px 26px;text-align:center;box-shadow:0 14px 32px rgba(8,117,138,.2)}.route-header h3{margin:0 48px 12px;font-size:17px}.route-header .back-btn{position:absolute;left:12px;top:10px}.share-btn{position:absolute;right:12px;top:10px}.segmented{display:flex;width:260px;max-width:100%;margin:0 auto;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:3px}.segmented button{flex:1;border:0;border-radius:999px;background:transparent;color:#fff;font-weight:900;padding:8px}.segmented .active{background:#fff;color:#0b6d7d}.map-panel{margin-top:-2px;border-radius:24px;overflow:hidden;box-shadow:var(--shadow);border:1px solid rgba(255,255,255,.9)}.map{height:245px;background:#dff8fb}.leaflet-container{font:inherit}.card{background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow2);padding:13px;margin:12px 0}.card h3{margin:0;font-size:14px;letter-spacing:-.01em}.card p{margin:0;color:var(--muted);font-size:12px;line-height:1.4}.card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.flight-legs{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.flight-leg{background:#f6f9fc;border:1px solid var(--line);border-radius:14px;padding:8px;min-height:58px;font-size:10px}.flight-leg b{display:inline-grid;place-items:center;width:19px;height:19px;border-radius:50%;background:#078b98;color:#fff;margin-right:3px;font-size:10px}.flight-leg strong{display:block;font-size:11px;margin-top:4px}.budget-meter{height:14px;background:#eef2f6;border-radius:999px;overflow:hidden;position:relative}.budget-fill{height:100%;width:0;background:linear-gradient(90deg,#21b354,#f5cb19 62%,#ff6d5f);border-radius:999px;transition:.3s}.budget-fill.over{background:linear-gradient(90deg,#f97316,#e5484d)}.meter-line{display:flex;justify-content:space-between;gap:8px;margin:7px 0 10px;font-size:12px;font-weight:900}.meter-line span:first-child{color:#11934d}.breakdown{display:grid;gap:8px}.bar-row{display:grid;grid-template-columns:86px 1fr 66px;gap:8px;align-items:center;font-size:11px}.bar{height:10px;background:#edf2f7;border-radius:999px;overflow:hidden}.bar span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#078b98,#10b7c8)}.trip-city{display:grid;grid-template-columns:22px 1fr auto;gap:9px;align-items:center;padding:9px 0;border-bottom:1px solid #eef2f6}.trip-city:last-child{border-bottom:0}.trip-city .order{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#078b98;color:#fff;font-size:11px;font-weight:950}.trip-city strong{font-size:12px}.day-controls{display:flex;align-items:center;gap:5px}.day-controls button{width:26px;height:26px;border:1px solid var(--line);border-radius:50%;background:#fff;font-weight:950}.summary-app{padding:0;overflow:hidden}.summary-top{display:grid;grid-template-columns:42% 1fr;gap:12px;padding:14px}.trip-photo{height:142px;border-radius:18px;background:linear-gradient(160deg,rgba(255,255,255,.1),rgba(0,0,0,.1)),linear-gradient(135deg,#38bdf8,#14b8a6 52%,#fef3c7);position:relative;overflow:hidden}.trip-photo:before{content:"";position:absolute;left:-20px;right:-20px;bottom:-18px;height:50px;background:rgba(255,255,255,.7);border-radius:50% 50% 0 0}.summary-app h2{font-size:17px;line-height:1.2;margin:2px 0 3px}.summary-app p{font-weight:900;color:#fff;background:#078b98;display:inline-flex;border-radius:999px;padding:3px 8px;font-size:11px}.timeline{display:grid;gap:8px;margin-top:10px}.timeline-row{display:grid;grid-template-columns:23px 1fr;gap:7px;align-items:start;font-size:12px}.timeline-row b{display:grid;place-items:center;width:21px;height:21px;background:#078b98;color:#fff;border-radius:50%;font-size:10px}.timeline-row strong{display:block}.timeline-row small{color:#66758a}.link-row{width:100%;border:0;border-top:1px solid var(--line);background:#fff;color:#078b98;font-weight:950;padding:12px}.tool-cards{display:grid;gap:12px}.feature-card{display:grid;grid-template-columns:58px 1fr auto;gap:12px;align-items:center;text-align:left;background:#fff;border:1px solid var(--line);border-radius:22px;padding:13px;box-shadow:var(--shadow2);color:var(--ink)}.feature-card strong{display:block}.feature-card small{display:block;color:#657286;margin:2px 0}.feature-card b{font-size:24px;color:#64748b}.feature-icon{width:50px;height:50px;border-radius:17px;display:grid;place-items:center;color:#fff}.feature-icon.green{background:linear-gradient(135deg,#10b981,#14b8a6)}.feature-icon.coral{background:linear-gradient(135deg,#ff735e,#ef4444)}.feature-icon.purple{background:linear-gradient(135deg,#8b5cf6,#a855f7)}.feature-icon.blue{background:linear-gradient(135deg,#1a73e8,#38bdf8)}.danger-text{color:#e5484d;font-style:normal;font-weight:900}.avatars{display:flex;margin-top:6px}.avatars i{width:22px;height:22px;margin-right:-5px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#f9a8d4,#93c5fd);border:2px solid #fff;font-style:normal;font-size:9px;font-weight:950}.thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:8px 0}.thumbs i{height:44px;border-radius:10px;background:linear-gradient(135deg,#16a34a,#67e8f9);display:block}.thumbs i:nth-child(2){background:linear-gradient(135deg,#0ea5e9,#f59e0b)}.thumbs i:nth-child(3){background:linear-gradient(135deg,#f59e0b,#ef4444)}.thumbs i:nth-child(4){background:linear-gradient(135deg,#38bdf8,#10b981)}.sub-header{display:flex;align-items:center;gap:10px;padding:14px 0}.tool-hero{position:relative;overflow:hidden;border-radius:26px;padding:20px 16px;margin:4px 0 12px;background:linear-gradient(135deg,#078b98,#0b4f9d);color:#fff;box-shadow:0 16px 36px rgba(8,43,85,.16);display:flex;gap:13px;align-items:center}.tool-hero h2{margin:0 0 4px;font-size:24px}.tool-hero p{color:#e8fbff;margin:0}.section-icon{width:48px;height:48px;border-radius:17px;display:grid;place-items:center;background:rgba(255,255,255,.16);color:#fff}.spend-hero{background:linear-gradient(135deg,#10a36f,#078b98)}.collab-hero{background:linear-gradient(135deg,#8056d9,#078b98)}.album-hero{background:linear-gradient(135deg,#1769e0,#078b98)}.safety-hero{background:linear-gradient(135deg,#ff745f,#be123c)}.docs-hero{background:linear-gradient(135deg,#078b98,#064e3b)}.ai-hero{background:linear-gradient(135deg,#0b4f9d,#352779)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 0}.actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:12px}.actions.split{display:grid;grid-template-columns:1fr 1fr;gap:10px}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:16px}.table{border-collapse:collapse;width:100%;font-size:12px}.table th,.table td{padding:10px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}.table th{background:#f7fafc;color:#657286;font-size:10px;text-transform:uppercase}.copybox{min-height:96px;border:1px dashed #b6c4d2;background:#f8fbfd;border-radius:16px;padding:12px;white-space:pre-wrap;color:#40526a;overflow:auto;font-size:12px;line-height:1.45;margin-top:12px}.list{padding-left:18px;color:#4d5d72;margin:8px 0}.list li{margin:8px 0}.check-list{display:grid;gap:9px}.album-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.album-item{border:1px solid var(--line);border-radius:16px;overflow:hidden}.album-item img{width:100%;height:120px;object-fit:cover;display:block}.album-item div{padding:9px;font-size:12px}.sidebar{position:fixed;left:50%;transform:translateX(-50%);bottom:0;z-index:1200;width:100%;max-width:430px;display:grid;grid-template-columns:repeat(5,1fr);gap:0;background:rgba(255,255,255,.95);backdrop-filter:blur(22px);border-top:1px solid #edf2f7;padding:7px 6px calc(7px + var(--bottom));box-shadow:0 -14px 28px rgba(15,34,58,.12)}.nav-btn{border:0;background:transparent;color:#64748b;display:grid;place-items:center;gap:3px;padding:6px 2px;border-radius:16px;font-size:10px;font-weight:850}.nav-ico{width:25px;height:25px;display:grid;place-items:center}.nav-ico .ui-icon{width:20px;height:20px}.nav-btn.active{color:#078b98}.nav-btn.active:before{content:"";width:18px;height:3px;border-radius:999px;background:#078b98;margin-bottom:1px}.grid{display:grid;gap:12px}.stats-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.stat{border:1px solid var(--line);background:#fff;border-radius:16px;padding:12px}.loading{opacity:.7;pointer-events:none;position:relative}.loading:after{content:"Checking AI...";position:absolute;right:8px;bottom:8px;background:rgba(15,34,58,.82);color:#fff;border-radius:999px;padding:5px 8px;font-size:10px;font-weight:900}@media(min-width:760px){.phone-frame{margin:24px auto;border-radius:34px;min-height:calc(100vh - 48px);box-shadow:0 28px 80px rgba(15,34,58,.22)}.status-bar{border-radius:34px 34px 0 0}.sidebar{bottom:24px;border-radius:0 0 34px 34px}.hero-card{border-radius:0 0 30px 30px}}@media(max-width:374px){.city-grid{grid-template-columns:1fr}.flight-legs{grid-template-columns:repeat(2,1fr)}.form-row{grid-template-columns:1fr}.hero-copy h1{font-size:32px}.hero-visual{opacity:.65;right:-24px}.bar-row{grid-template-columns:72px 1fr 56px}.summary-top{grid-template-columns:1fr}.trip-photo{height:132px}.actions.split{grid-template-columns:1fr}}@media print{body{background:#fff}.status-bar,.sidebar,.actions,.route-header,.hero-card{display:none!important}.phone-frame{max-width:none;box-shadow:none}.main{padding:0}.panel{display:block}.panel:not(.active){display:none}.card{box-shadow:none;border:1px solid #ddd;break-inside:avoid}}


/* v1.5 visual refinement */
.status-bar{display:none!important}
.phone-frame{background:#f7fafc}
.main{padding-top:0}
.hero-card{
  min-height:282px;
  background-image:linear-gradient(180deg,rgba(6,34,74,.18),rgba(4,34,62,.52)), url('https://images.unsplash.com/photo-1570077188670-e3a8d69ac5ff?auto=format&fit=crop&w=1200&q=80');
  background-size:cover;
  background-position:center center;
}
.hero-card:before{left:0;right:0;bottom:0;height:94px;background:linear-gradient(180deg,rgba(255,255,255,0),rgba(255,255,255,.18));clip-path:ellipse(80% 100% at 50% 100%)}
.hero-card:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(7,24,54,.12) 0%,rgba(5,56,108,.24) 34%,rgba(5,104,134,.18) 100%);z-index:1}
.hero-copy,.readiness-card,.hero-bell{position:relative;z-index:3}
.hero-copy p{max-width:240px;text-shadow:0 2px 10px rgba(0,0,0,.18)}
.hero-bell{background:rgba(255,255,255,.18);backdrop-filter:blur(8px)}
.hero-visual{display:none}
.readiness-card{background:rgba(255,255,255,.96)}
.city-art{height:96px;background-size:cover!important;background-position:center center!important}
.city-art:before{content:"";position:absolute;left:0;right:0;bottom:0;height:44px;background:linear-gradient(180deg,rgba(255,255,255,0),rgba(255,255,255,.88))}
.city-art:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,23,42,.06),rgba(15,23,42,.02) 45%,rgba(255,255,255,0) 100%);clip-path:none}
.city-flag{background:rgba(255,255,255,.94);backdrop-filter:blur(6px);width:auto;min-width:34px;padding:0 8px;font-size:16px}
.city-card{min-height:172px}
.city-body{padding:10px 10px 11px}
.trip-photo{background-size:cover;background-position:center center;background-image:linear-gradient(180deg,rgba(255,255,255,.04),rgba(15,23,42,.18)), url('https://images.unsplash.com/photo-1507525428034-b723cf961d3e?auto=format&fit=crop&w=900&q=80')}
.trip-photo:before{background:rgba(255,255,255,.25)}
.thumbs i{background-size:cover!important;background-position:center center!important}
.thumbs i:nth-child(1){background-image:url('https://images.unsplash.com/photo-1441974231531-c6227db76b6e?auto=format&fit=crop&w=300&q=80')}
.thumbs i:nth-child(2){background-image:url('https://images.unsplash.com/photo-1514565131-fce0801e5785?auto=format&fit=crop&w=300&q=80')}
.thumbs i:nth-child(3){background-image:url('https://images.unsplash.com/photo-1516483638261-f4dbaf036963?auto=format&fit=crop&w=300&q=80')}
.thumbs i:nth-child(4){background-image:url('https://images.unsplash.com/photo-1500375592092-40eb2168fd21?auto=format&fit=crop&w=300&q=80')}
.route-line-animated{stroke-dasharray:10 10; animation:dashFlow 1.2s linear infinite}
@keyframes dashFlow{to{stroke-dashoffset:-20}}
.plane-div-icon{background:transparent;border:none}
.plane-marker{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,#078b98,#0b4f9d);display:grid;place-items:center;color:#fff;box-shadow:0 8px 20px rgba(8,43,85,.24);font-size:16px;border:2px solid rgba(255,255,255,.9)}
@media print{.status-bar{display:none!important}}


/* v1.6 compact cards, filters, trips, itinerary */
.hero-card{min-height:218px!important;padding:24px 24px 76px!important;background-position:center 42%!important}
.hero-copy h1{font-size:30px!important}.hero-copy p{font-size:12px!important;line-height:1.35!important}.readiness-card{bottom:10px!important;padding:9px 12px!important;border-radius:18px!important}.progress-ring{width:48px!important;height:48px!important}.progress-ring span{width:38px!important;height:38px!important}.white-sheet{padding-top:14px!important}.setup-card{min-height:68px!important;border-radius:17px!important;padding:10px 12px!important}.setup-icon{width:42px!important;height:42px!important;border-radius:13px!important}.btn.cta{min-height:46px!important;margin-top:14px!important}.city-grid{gap:10px!important}.city-card{min-height:136px!important;border-radius:16px!important}.city-art{height:70px!important}.city-body{padding:8px!important}.city-title h4{font-size:13px!important;margin-bottom:4px!important}.badge{font-size:9px!important;padding:3px 6px!important}.season-chip{font-size:10px!important;line-height:1.2!important;margin-top:5px!important;display:grid!important;grid-template-columns:18px 1fr!important;gap:2px 5px!important}.season-chip strong{font-size:10px!important}.season-chip small{font-size:10px!important;line-height:1.25!important}.city-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:6px!important;margin-top:7px!important}.city-actions .btn{min-height:34px!important;border-radius:13px!important;padding:6px!important;font-size:11px!important}.budget-card .card-head{align-items:start}.budget-card strong{font-size:13px}.bar-row{grid-template-columns:98px 1fr 86px!important;gap:8px!important}.bar-row span{font-size:11px!important;white-space:normal!important}.filter-sheet{position:fixed;left:50%;transform:translateX(-50%);bottom:72px;z-index:1500;width:calc(100% - 28px);max-width:402px}.filter-chips{display:flex;flex-wrap:wrap;gap:8px}.filter-chips button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 10px;font-weight:850;font-size:12px}.filter-chips button.active{background:#078b98;color:#fff;border-color:#078b98}.trip-actions{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-top:10px}.itinerary-panel{max-height:420px;overflow:auto}.day-card{border:1px solid var(--line);border-radius:16px;padding:11px;margin:10px 0;background:#fff}.day-card h4{margin:0 0 8px;font-size:14px}.day-card ul{margin:0;padding-left:18px;color:#40526a;font-size:12px;line-height:1.55}.near-grid{display:grid;gap:9px}.near-card{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center;border:1px solid var(--line);border-radius:16px;padding:10px;background:#fff}.near-card strong{display:block;font-size:13px}.near-card small{display:block;color:#657286;font-size:11px;line-height:1.35}.near-card .btn{min-height:34px;border-radius:12px;font-size:11px;padding:6px 9px}.trips-hero{background:linear-gradient(135deg,#078b98,#0f766e)}.phrase-hero{background:linear-gradient(135deg,#0b4f9d,#078b98)}.trip-list{display:grid;gap:10px}.trip-row{border:1px solid var(--line);border-radius:18px;padding:12px;background:#fff;box-shadow:var(--shadow2)}.trip-row h4{margin:0 0 4px}.trip-row p{margin:0;color:#657286;font-size:12px}.trip-row .actions{margin-top:9px}.trip-row .btn{min-height:34px;border-radius:12px;font-size:11px;padding:6px 9px}.phrase-list{display:grid;gap:9px}.phrase-row{border:1px solid var(--line);border-radius:16px;padding:10px;background:#fff;display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center}.phrase-row strong{font-size:13px}.phrase-row small{display:block;color:#657286;line-height:1.35}.phrase-row button{width:38px;height:38px;border:0;border-radius:14px;background:#e8fbfd;color:#078b98;font-weight:900}.feature-icon.teal{background:linear-gradient(135deg,#078b98,#14b8a6)}
@media(max-width:374px){.city-grid{grid-template-columns:1fr 1fr!important}.city-actions{grid-template-columns:1fr 1fr!important}.bar-row{grid-template-columns:82px 1fr 70px!important}}

/* v1.7 senior UX refinement: compact hero, dashboard, compact cards */
.hero-card{min-height:176px!important;padding:18px 22px 62px!important;border-radius:0 0 26px 26px!important;background-position:center 46%!important}
.hero-copy h1{font-size:28px!important;line-height:.94!important;max-width:210px!important;text-shadow:0 3px 18px rgba(0,0,0,.35)}
.hero-copy p{font-size:11px!important;line-height:1.28!important;max-width:210px!important;font-weight:800!important}
.hero-bell{width:30px!important;height:30px!important;right:16px!important;top:16px!important;border-radius:12px!important}
.readiness-card{left:18px!important;right:18px!important;bottom:-12px!important;grid-template-columns:46px 1fr auto!important;gap:10px!important;padding:9px 12px!important;border-radius:18px!important;box-shadow:0 12px 30px rgba(15,34,58,.18)!important}
.progress-ring{width:44px!important;height:44px!important;font-size:11px!important}.progress-ring span{width:34px!important;height:34px!important}.readiness-card small{font-size:11px!important}.readiness-card strong{font-size:11px!important}
.white-sheet{padding:26px 18px 20px!important;border-radius:24px 24px 0 0!important}
.dashboard-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:0 0 16px}
.dash-card{border:0;border-radius:18px;background:#fff;box-shadow:0 10px 24px rgba(15,34,58,.08);padding:10px 6px;min-height:82px;text-align:center;color:#172235;display:grid;place-items:center;gap:3px}
.dash-card span{width:38px;height:38px;border-radius:14px;display:grid;place-items:center;color:#fff}.dash-card span .ui-icon{width:20px;height:20px}.dash-card strong{font-size:11px;line-height:1}.dash-card small{font-size:9px;color:#7b8796;font-weight:800}.dash-card.blue span{background:linear-gradient(135deg,#0b4f9d,#1a73e8)}.dash-card.teal span{background:linear-gradient(135deg,#078b98,#14b8a6)}.dash-card.green span{background:linear-gradient(135deg,#10b981,#0ea58f)}.dash-card.coral span{background:linear-gradient(135deg,#ff735e,#ef4444)}
.setup-card{min-height:62px!important;padding:8px 11px!important;grid-template-columns:44px 1fr auto!important}.setup-icon{width:40px!important;height:40px!important}.setup-card .field label{font-size:12px!important}.setup-card .field small{font-size:10px!important}.setup-card .field input,.setup-card .field select{font-size:13px!important;min-height:18px!important}
.city-grid{gap:9px!important}.city-card{min-height:132px!important;border-radius:16px!important}.city-art{height:62px!important}.city-flag{height:28px!important;min-width:30px!important;border-radius:12px!important;font-size:12px!important}.city-fav{width:28px!important;height:28px!important;border-radius:12px!important}.city-body{padding:7px 8px 8px!important}.city-title h4{font-size:13px!important;margin:0 0 4px!important}.city-title .badge.info{display:none!important}.badge-line{min-height:18px}.badge{font-size:8.5px!important;padding:3px 6px!important;max-width:100%;overflow:hidden;text-overflow:ellipsis}.compact-season{display:grid!important;grid-template-columns:16px 1fr!important;gap:0 4px!important;margin-top:4px!important;line-height:1.08!important}.compact-season span{font-size:12px!important;grid-row:1/3}.compact-season strong{font-size:10px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.compact-season small{font-size:9px!important;line-height:1.15!important;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.compact-actions{display:grid!important;grid-template-columns:1fr 1fr!important;gap:6px!important;margin-top:6px!important}.compact-actions .btn{min-height:30px!important;border-radius:12px!important;padding:4px 6px!important;font-size:10px!important}
.budget-card .card-head strong{font-size:12px!important;line-height:1.2;text-align:right}.meter-line{font-size:11px!important}.breakdown{display:grid;gap:5px!important}.bar-row{grid-template-columns:86px 1fr 74px!important;gap:7px!important}.bar-row strong{font-size:10px!important}.bar-row span{font-size:10px!important;line-height:1.15!important;word-break:normal!important}.bar{height:8px!important}
.trip-row.active-live{border-color:#f59e0b;box-shadow:0 12px 28px rgba(245,158,11,.15)}.active-trip-card{font-size:12px;line-height:1.45}.field select#expenseLeg{font-size:12px}
@media(max-width:374px){.dashboard-grid{grid-template-columns:repeat(2,1fr)}.city-grid{grid-template-columns:1fr 1fr!important}.hero-card{min-height:168px!important}.hero-copy h1{font-size:25px!important}.readiness-card{bottom:-14px!important}}


/* v1.9 intelligent feature UI */
.dashboard-grid{grid-template-columns:repeat(3,1fr)}
.dash-card.purple span{background:linear-gradient(135deg,#8b5cf6,#0ea5e9)}
.dash-card.amber span{background:linear-gradient(135deg,#f59e0b,#ff735e)}
.health-wrap{display:grid;grid-template-columns:74px 1fr;gap:12px;align-items:center}.health-score{width:74px;height:74px;border-radius:24px;background:linear-gradient(135deg,#078b98,#0b4f9d);color:#fff;display:grid;place-items:center;text-align:center}.health-score strong{font-size:26px;line-height:1}.health-score span{font-size:10px;font-weight:850}.health-bar{height:12px;border-radius:999px;background:#e9eef5;overflow:hidden}.health-bar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#ef4444,#f59e0b,#10b981)}.compact-list{font-size:12px;margin-top:10px}.playbook ol,.hotel-area ul{margin:8px 0 0 18px;padding:0}.playbook li,.hotel-area li{margin:7px 0;color:#42526a;font-size:12px}.hotel-area{border:1px solid var(--line);border-radius:16px;padding:11px;margin:8px 0;background:#fbfdff}.day-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.day-head h4{margin:0}.chat-box{height:330px;overflow:auto;background:#f6f9fc;border:1px solid var(--line);border-radius:18px;padding:12px;display:grid;align-content:start;gap:9px}.msg{max-width:85%;padding:10px 12px;border-radius:16px;font-size:13px;line-height:1.35;white-space:pre-wrap}.msg.user{justify-self:end;background:#078b98;color:#fff;border-bottom-right-radius:5px}.msg.assistant{justify-self:start;background:#fff;border:1px solid var(--line);color:#233044;border-bottom-left-radius:5px}.chat-input{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:10px}.chat-input input{border:1px solid var(--line);border-radius:16px;padding:12px;font-weight:750}.quick-prompts{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.quick-prompts button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 10px;font-size:12px;font-weight:850;color:#078b98}.feature-icon.teal{background:linear-gradient(135deg,#078b98,#14b8a6)}@media(max-width:374px){.dashboard-grid{grid-template-columns:repeat(2,1fr)}.health-wrap{grid-template-columns:1fr}.health-score{width:100%;height:60px}}

/* v2.0 database/auth/admin polish */
.auth-strip{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 14px;background:rgba(255,255,255,.96);border-bottom:1px solid #eaf0f6;color:#32445a;font-size:12px;font-weight:850;position:relative;z-index:20}
.auth-strip a{color:#078b98;text-decoration:none;font-weight:950;margin-left:8px}.auth-strip.guest{background:#fff8e6;color:#8a5b00}.auth-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 20% 0,rgba(8,168,182,.2),transparent 34%),linear-gradient(135deg,#edf7fb,#fff)}.auth-card{width:min(430px,100%);background:#fff;border:1px solid #e5edf5;border-radius:28px;box-shadow:0 24px 70px rgba(15,34,58,.16);padding:24px}.auth-card h1{margin:0 0 8px;color:#073f84;font-size:30px}.auth-card p{color:#657286}.auth-card form{display:grid;gap:10px}.auth-card label{font-weight:900;color:#223047}.auth-card input{border:1px solid #dce5ee;border-radius:15px;padding:13px 14px;min-height:48px}.auth-note{text-align:center}.admin-shell{max-width:1180px;margin:0 auto;padding:24px}.admin-head{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:18px}.admin-head h1{margin:0;color:#073f84}.admin-head p{margin:4px 0;color:#657286}.admin-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}@media(max-width:760px){.admin-stats{grid-template-columns:1fr 1fr}.admin-head{display:block}.auth-strip{font-size:11px}}


/* v2.1 social login separation */
.app-login-page{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 20% 0,rgba(8,168,182,.22),transparent 34%),linear-gradient(135deg,#eef9fb,#ffffff);padding:18px}
.app-login-phone{width:min(430px,100%);background:#fff;border-radius:34px;box-shadow:0 26px 80px rgba(15,34,58,.18);overflow:hidden;border:1px solid #e7eef7}
.login-hero-photo{height:240px;background-image:linear-gradient(180deg,rgba(5,28,64,.1),rgba(5,36,70,.62)),url('https://images.unsplash.com/photo-1507525428034-b723cf961d3e?auto=format&fit=crop&w=1000&q=80');background-size:cover;background-position:center;position:relative;display:flex;align-items:flex-end;padding:22px;color:#fff}
.login-hero-copy span{display:inline-flex;border-radius:999px;background:rgba(255,255,255,.18);backdrop-filter:blur(8px);padding:6px 10px;font-size:11px;font-weight:900;margin-bottom:10px}
.login-hero-copy h1{font-size:34px;line-height:.98;margin:0 0 8px;letter-spacing:-.04em;font-family:Georgia,'Times New Roman',serif}
.login-hero-copy p{margin:0;font-weight:750;color:#e9fbff;max-width:300px}
.login-card-modern{padding:22px;display:grid;gap:12px}
.login-card-modern h2{font-size:24px;margin:0;color:#0f2542}
.login-card-modern p{margin:0;color:#64748b;line-height:1.5}
.social-btn{min-height:54px;border:1px solid #dfe8f1;border-radius:18px;background:#fff;display:grid;grid-template-columns:36px 1fr auto;align-items:center;gap:10px;padding:10px 14px;text-decoration:none;color:#15243b;box-shadow:0 8px 18px rgba(15,34,58,.06);font-weight:900;text-align:left}
.social-btn span{width:34px;height:34px;border-radius:12px;display:grid;place-items:center;background:#f4f7fb;color:#0f2542;font-weight:950}
.social-btn.google .google-mark{background:#fff;border:1px solid #e3e8ef;color:#4285f4;font-family:Arial,sans-serif;font-size:18px}
.social-btn em{font-size:10px;color:#94a3b8;font-style:normal;background:#f1f5f9;border-radius:999px;padding:4px 7px}
.social-btn.disabled{opacity:.55;pointer-events:none;background:#f8fafc}
.auth-note.small{font-size:12px;line-height:1.4;margin:4px 0 0;color:#6b7280;text-align:center}
.auth-note.small a{color:#078b98;font-weight:950;text-decoration:none}
.admin-auth{background:linear-gradient(135deg,#f6f8fb,#eef6fb)}
.admin-auth .auth-card{border-top:6px solid #073f84}

/* v2.3 album flow */
.active-trip-card .actions{margin-top:10px}
.trip-row .actions .btn.ok{background:#e8fbef;color:#087a42}
.album-item div{line-height:1.35}
.album-item .badge{margin-top:4px}


/* v2.4 completed trip view */
.completed-memory{background:linear-gradient(180deg,#ffffff,#f7fffb);border-color:#bdebd8}
.completed-trip-view .completed-hero{background:linear-gradient(145deg,#073f84,#078b98);color:#fff;overflow:hidden;position:relative}
.completed-trip-view .completed-hero:after{content:"";position:absolute;right:-40px;top:-40px;width:150px;height:150px;border-radius:50%;background:rgba(255,255,255,.12)}
.completed-trip-view .completed-hero h2{margin:10px 0 6px;font-size:24px;letter-spacing:-.03em;position:relative;z-index:1}
.completed-trip-view .completed-hero p{color:#e8fbff;font-weight:800;line-height:1.45;position:relative;z-index:1}
.completed-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:14px 0;position:relative;z-index:1}
.completed-stats div{background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.16);border-radius:16px;padding:10px 6px;text-align:center;backdrop-filter:blur(10px)}
.completed-stats strong{display:block;font-size:14px;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.completed-stats span{font-size:10px;color:#dffafe;font-weight:850}
.day-card.locked{background:#f8fafc;border-color:#e2e8f0}
.day-card.locked .mini-link{display:none}
.completed-trip-view .album-grid{grid-template-columns:1fr 1fr}
@media(max-width:374px){.completed-stats{grid-template-columns:repeat(2,1fr)}}

/* v2.5 Dashboard-first UX + slider build form */
.dashboard-sheet{padding-top:18px!important}
.dash-welcome{display:flex;gap:10px;align-items:flex-start;margin:0 0 14px;color:#0f2542}
.dash-welcome h3{margin:0;font-size:16px;letter-spacing:-.02em}
.dash-welcome p{margin:4px 0 0;color:#64748b;font-size:12px;font-weight:750;line-height:1.35}
.icon-dashboard{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:10px!important;margin-bottom:14px!important}
.icon-dashboard .dash-card{min-height:96px!important;border-radius:22px!important;padding:12px 6px!important;text-align:center!important;display:grid!important;place-items:center!important;gap:5px!important;background:#fff!important;border:1px solid #e6edf5!important;box-shadow:0 10px 24px rgba(15,34,58,.07)!important;color:#10233b!important}
.icon-dashboard .dash-card span{width:46px!important;height:46px!important;border-radius:16px!important;color:#fff!important;display:grid!important;place-items:center!important;box-shadow:0 12px 22px rgba(15,34,58,.13)!important}
.icon-dashboard .dash-card .ui-icon{width:23px;height:23px}
.icon-dashboard .dash-card strong{font-size:11px!important;line-height:1.1!important;white-space:nowrap!important}
.icon-dashboard .dash-card small{font-size:9px!important;color:#718096!important;font-weight:850!important;line-height:1!important}
.dash-card.cyan span{background:linear-gradient(135deg,#06b6d4,#0ea5e9)!important}
.dash-card.navy span{background:linear-gradient(135deg,#0f2542,#0b4f9d)!important}
.home-quick-summary{display:grid;grid-template-columns:1fr 1.2fr 1fr;gap:8px;margin:8px 0 0}
.home-quick-summary div{background:#f7fafc;border:1px solid #e8eef6;border-radius:17px;padding:10px 8px;text-align:center}
.home-quick-summary strong{display:block;color:#073f84;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.home-quick-summary span{display:block;color:#6b7788;font-size:10px;font-weight:850;margin-top:2px}
.build-basics-screen{padding-top:4px}.build-intro{margin:4px 0 12px;background:linear-gradient(135deg,#eefbfc,#fff);border-color:#caedf1}.build-intro h2{margin:0 0 5px;color:#073f84;font-size:22px;letter-spacing:-.03em}.build-intro p{margin:0;color:#64748b;font-size:13px;line-height:1.45;font-weight:750}
.build-form{gap:12px;margin-bottom:14px}.slider-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:13px 14px;box-shadow:var(--shadow2)}.slider-head{display:grid;grid-template-columns:54px 1fr;gap:12px;align-items:center}.slider-head label{display:block;font-size:14px;font-weight:950;color:#15233b}.slider-head strong{display:block;font-size:17px;color:#0b4f9d;letter-spacing:-.02em}.slider-head small{display:block;color:#718096;font-size:10px;font-weight:800;margin-top:2px}.range-slider{width:100%;accent-color:#078b98;margin:13px 0 5px;height:26px}.compact-input{margin-top:6px}.compact-input input{min-height:40px!important;border-radius:14px!important;font-size:13px!important}.quick-days{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0 4px}.quick-days button{border:1px solid #dbe7f0;background:#fff;border-radius:999px;padding:7px 9px;color:#506176;font-size:11px;font-weight:900}.quick-days button.active{background:#078b98;color:#fff;border-color:#078b98}.build-basics-screen .setup-card{min-height:72px}.build-basics-screen .cta{margin-top:8px}
@media(max-width:374px){.icon-dashboard{grid-template-columns:repeat(3,1fr)!important}.icon-dashboard .dash-card{min-height:88px!important}.home-quick-summary{grid-template-columns:1fr}.slider-head{grid-template-columns:48px 1fr}.build-intro h2{font-size:20px}}


/* v2.6 Friendly travel polish */
.build-basics-screen{background:
  radial-gradient(circle at 8% 5%,rgba(255,115,94,.13),transparent 34%),
  radial-gradient(circle at 90% 12%,rgba(8,168,182,.16),transparent 36%),
  linear-gradient(180deg,#f7fbff 0,#ffffff 72%);
  margin:0 -14px;
  padding:4px 14px 18px;
}
.build-basics-screen .screen-head h3{font-size:18px;color:#073f84}
.build-intro{
  position:relative;
  overflow:hidden;
  margin:6px 0 14px!important;
  padding:18px 16px!important;
  border:0!important;
  background:linear-gradient(135deg,#073f84 0%,#078b98 62%,#11b8c9 100%)!important;
  color:#fff!important;
  box-shadow:0 18px 36px rgba(7,63,132,.20)!important;
}
.build-intro:after{
  content:"";
  position:absolute;right:-26px;top:-22px;width:120px;height:120px;
  border-radius:50%;background:rgba(255,255,255,.13);
}
.trip-kicker{
  display:inline-flex;align-items:center;gap:6px;
  background:rgba(255,255,255,.18);
  border:1px solid rgba(255,255,255,.24);
  border-radius:999px;
  padding:5px 10px;
  font-size:11px;
  font-weight:950;
  margin-bottom:10px;
}
.build-intro h2{color:#fff!important;font-size:24px!important;line-height:1.1!important;margin:0 0 7px!important}
.build-intro p{color:#e8fbff!important;font-size:13px!important;line-height:1.45!important;max-width:330px}
.build-form{gap:13px!important}
.build-basics-screen .setup-card,
.build-basics-screen .slider-card{
  border:0!important;
  box-shadow:0 14px 32px rgba(15,34,58,.10)!important;
  border-radius:24px!important;
}
.build-basics-screen .setup-card{
  min-height:82px!important;
  padding:14px!important;
  background:
    linear-gradient(135deg,rgba(255,255,255,.92),rgba(255,255,255,.98)),
    radial-gradient(circle at 0 0,rgba(26,115,232,.18),transparent 45%)!important;
}
.build-basics-screen .setup-card.cyan{
  background:
    linear-gradient(135deg,rgba(255,255,255,.92),rgba(255,255,255,.98)),
    radial-gradient(circle at 0 0,rgba(8,168,182,.20),transparent 45%)!important;
}
.build-basics-screen .setup-icon,
.slider-card .setup-icon{
  width:52px!important;height:52px!important;border-radius:18px!important;
  color:#fff!important;box-shadow:0 14px 24px rgba(15,34,58,.18)!important;
}
.build-basics-screen .setup-icon .ui-icon,
.slider-card .setup-icon .ui-icon{width:27px!important;height:27px!important;stroke-width:2!important}
.slider-card.green .setup-icon{background:linear-gradient(135deg,#10b981,#078b98)!important}
.slider-card.purple .setup-icon{background:linear-gradient(135deg,#8b5cf6,#ec4899)!important}
.slider-card.green{
  background:
    linear-gradient(135deg,rgba(236,253,245,.98),rgba(255,255,255,.98)),
    radial-gradient(circle at 100% 0,rgba(16,185,129,.22),transparent 44%)!important;
}
.slider-card.purple{
  background:
    linear-gradient(135deg,rgba(245,243,255,.98),rgba(255,255,255,.98)),
    radial-gradient(circle at 100% 0,rgba(139,92,246,.22),transparent 44%)!important;
}
.slider-card{padding:16px!important}
.slider-head{grid-template-columns:58px 1fr!important}
.slider-head label{font-size:13px!important;color:#18243a!important;line-height:1.25!important}
.slider-head strong{font-size:22px!important;color:#073f84!important;margin-top:3px!important}
.slider-head small{font-size:11px!important;color:#66758a!important;line-height:1.25!important}
.range-slider{
  -webkit-appearance:none;
  appearance:none;
  height:34px!important;
  background:transparent!important;
  margin:14px 0 4px!important;
}
.range-slider::-webkit-slider-runnable-track{
  height:10px;border-radius:999px;
  background:linear-gradient(90deg,#10b981,#08a8b6,#1a73e8);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.4);
}
.range-slider::-moz-range-track{
  height:10px;border-radius:999px;background:linear-gradient(90deg,#10b981,#08a8b6,#1a73e8);
}
.range-slider::-webkit-slider-thumb{
  -webkit-appearance:none;
  width:26px;height:26px;border-radius:50%;
  background:#fff;border:5px solid #078b98;
  box-shadow:0 8px 18px rgba(8,139,152,.30);
  margin-top:-8px;
}
.range-slider::-moz-range-thumb{
  width:20px;height:20px;border-radius:50%;background:#fff;border:5px solid #078b98;
  box-shadow:0 8px 18px rgba(8,139,152,.30);
}
.compact-input small{
  display:block;
  font-size:11px!important;
  font-weight:900!important;
  color:#506176!important;
  margin:8px 0 6px!important;
}
.compact-input input{
  background:rgba(255,255,255,.78)!important;
  border:1px solid rgba(191,211,225,.85)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.65);
}
.quick-days{gap:8px!important;margin:10px 0 5px!important}
.quick-days button{
  border:0!important;
  background:#fff!important;
  color:#394b62!important;
  box-shadow:0 8px 18px rgba(15,34,58,.08);
  padding:8px 11px!important;
}
.quick-days button.active{
  background:linear-gradient(135deg,#078b98,#11b8c9)!important;
  color:#fff!important;
  box-shadow:0 10px 20px rgba(8,139,152,.22)!important;
}
.build-basics-screen .cta{
  margin-top:10px!important;
  min-height:54px!important;
  border-radius:22px!important;
  font-size:16px!important;
}
.field label{line-height:1.25}
.destination-screen .screen-head h3{font-size:17px;color:#073f84}
.searchbar input::placeholder{color:#91a0b2}
.filter-row{background:linear-gradient(135deg,#f2fbfc,#fff8ec)!important}
.city-card .season-chip{
  display:grid!important;
  grid-template-columns:auto 1fr;
  gap:4px 7px;
  margin-top:7px;
  padding:7px 8px;
  border-radius:13px;
  background:#fff7e6;
  border:1px solid #ffe1a8;
}
.city-card .season-chip span{grid-row:1 / span 2}
.city-card .season-chip strong{text-transform:capitalize;font-size:10px;line-height:1;color:#a65b00}
.city-card .season-chip small{font-size:10px;line-height:1.25;color:#6b4a13;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.notice{font-weight:800}
.hero-copy h1{font-size:34px!important}
.dash-welcome h3{font-size:17px!important;color:#073f84}
.dash-welcome p{font-size:12px!important;color:#66758a}
.dashboard-grid .dash-card{transition:transform .18s ease, box-shadow .18s ease}
.dashboard-grid .dash-card:active{transform:scale(.97)}
@media(max-width:374px){
  .build-intro h2{font-size:21px!important}
  .slider-head{grid-template-columns:52px 1fr!important}
  .slider-head strong{font-size:19px!important}
}


/* v2.7 Home hero cleanup */
.home-screen .hero-card{
  min-height:172px!important;
  padding:24px 24px 24px!important;
  border-radius:0 0 24px 24px!important;
  box-shadow:0 12px 30px rgba(4,42,86,.18)!important;
}
.home-screen .hero-card:before{height:54px!important;opacity:.7!important}
.home-screen .hero-copy h1{font-size:30px!important;line-height:.98!important;margin-bottom:8px!important}
.home-screen .hero-copy p{font-size:12px!important;line-height:1.35!important;width:250px!important;max-width:74%!important}
.home-screen .hero-bell{top:18px!important;right:18px!important;width:32px!important;height:32px!important}
.home-screen .readiness-card{display:none!important}
.dashboard-sheet{margin-top:0!important;padding-top:15px!important;border-radius:24px 24px 0 0!important}
.dash-welcome{margin-bottom:12px!important}
.icon-dashboard{margin-top:2px!important}
.home-quick-summary{margin-top:6px!important}
@media(max-width:374px){
  .home-screen .hero-card{min-height:154px!important;padding:20px 20px 22px!important}
  .home-screen .hero-copy h1{font-size:26px!important}
  .home-screen .hero-copy p{font-size:11px!important;max-width:78%!important}
}

/* v3.2 product modules */
.journey-hero{background:linear-gradient(135deg,#0ea5e9,#0f766e)}
.dash-card.ocean{background:linear-gradient(135deg,#0ea5e9,#14b8a6)}
.vault-list,.journey-list,.settlement-box{display:grid;gap:10px;margin-top:12px}
.vault-item,.journey-item,.settle-row{border:1px solid var(--line);background:#fff;border-radius:16px;padding:12px;box-shadow:var(--shadow2)}
.vault-item b,.journey-item strong{display:block;color:#0b2540;margin-bottom:4px}.vault-item small,.journey-item small{display:block;color:#657286;line-height:1.35}.vault-item a{display:inline-flex;margin-top:6px;font-weight:900;color:#078b98;text-decoration:none}.journey-item p{margin:6px 0 0;color:#334155;font-size:12px}.journey-item img{width:100%;max-height:190px;object-fit:cover;border-radius:14px;margin-top:8px}.settle-row{display:flex;align-items:center;justify-content:space-between}.ok-text{color:#087a42}.mini-copy{min-height:42px;font-size:11px}.story-page{background:#f4f9fb}.story-shell{max-width:860px;margin:0 auto;padding:20px}.story-hero{min-height:260px;border-radius:32px;padding:32px;color:#fff;background:linear-gradient(180deg,rgba(6,34,74,.25),rgba(4,34,62,.72)),url('https://images.unsplash.com/photo-1507525428034-b723cf961d3e?auto=format&fit=crop&w=1200&q=80');background-size:cover;background-position:center;box-shadow:var(--shadow)}.story-hero h1{font-size:42px;margin:14px 0 8px;font-family:Georgia,serif}.made-with{text-align:center;color:#64748b;font-weight:900}.admin-feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.admin-feature-grid>div{border:1px solid var(--line);border-radius:18px;padding:14px;background:#f8fbfd}.admin-feature-grid strong{display:block}.admin-feature-grid small{color:#64748b}.dash-card{min-height:118px}.range-slider{accent-color:#078b98}


/* v3.3 font, icon and encrypted vault polish */
body{font-weight:500;letter-spacing:-.005em}.field label,.slider-head label,.card h3,.sub-header h3{font-weight:800}.field input,.field select,.field textarea,.btn{font-weight:700}.notice,.badge,.mini-link{font-weight:700}.tool-hero h2,.hero-copy h1{font-weight:700}.dashboard-grid .dash-card strong{font-weight:800!important}.dashboard-grid .dash-card small{font-weight:650!important}.table th{font-weight:750}.table td{font-weight:500}.city-title h4{font-weight:800}.city-card .season-chip strong{font-weight:800}.city-card .season-chip small{font-weight:600}.dash-card.ocean span{background:linear-gradient(135deg,#0ea5e9,#14b8a6)!important}.dash-card.amber span{background:linear-gradient(135deg,#f59e0b,#ff735e)!important}.dash-card.purple span{background:linear-gradient(135deg,#8b5cf6,#a855f7)!important}.dash-card span .ui-icon,.section-icon .ui-icon,.setup-icon .ui-icon{display:block;stroke:currentColor!important;opacity:1!important}.section-icon{box-shadow:0 12px 26px rgba(15,34,58,.12)}.vault-secure-note{margin:0 0 12px;background:#f0fdfa;border-color:#99f6e4;color:#0f766e}.vault-item{position:relative;padding-left:14px}.vault-item:after{content:'Encrypted';position:absolute;right:10px;top:10px;background:#ecfdf5;color:#087a42;border-radius:999px;padding:3px 7px;font-size:9px;font-weight:800}.vault-item a{color:#0f766e}.spend-hero h2,.docs-hero h2,.journey-hero h2,.album-hero h2{font-weight:750}.active-trip-card{font-weight:650}.form-row{gap:12px}


/* v3.4 feature polish */
.dash-card.sunset span{background:linear-gradient(135deg,#ff7a59,#fbbf24)}
.dash-card.gold span{background:linear-gradient(135deg,#f59e0b,#facc15)}
.dash-card.slate span{background:linear-gradient(135deg,#475569,#0f172a)}
.templates-hero{background:linear-gradient(135deg,#f97316,#0ea5e9)}
.reminders-hero{background:linear-gradient(135deg,#f59e0b,#0f766e)}
.more-hero{background:linear-gradient(135deg,#0f766e,#0b4f9d)}
.settings-hero{background:linear-gradient(135deg,#334155,#0f766e)}
.feature-icon.amber,.section-icon.amber{background:linear-gradient(135deg,#f97316,#fbbf24)}
.feature-icon.gold,.section-icon.gold{background:linear-gradient(135deg,#f59e0b,#facc15);color:#172033}
.feature-icon.slate,.section-icon.slate{background:linear-gradient(135deg,#475569,#111827)}
.template-grid{display:grid;gap:12px}
.template-card{border:1px solid var(--line);background:linear-gradient(180deg,#fff,#f8fcff);border-radius:22px;padding:14px;box-shadow:var(--shadow2)}
.template-card h4{margin:8px 0 4px;font-size:16px}.template-card p{margin:0 0 6px;color:#32435a;font-weight:750}.template-card small{display:block;color:#64748b;line-height:1.35;margin-bottom:12px}.reminder-list{display:grid;gap:10px}.reminder-item{display:grid;grid-template-columns:70px 1fr;gap:10px;align-items:start;padding:12px;border:1px solid var(--line);border-radius:18px;background:#fff}.reminder-item strong{display:block}.reminder-item small{display:block;color:#64748b;line-height:1.35;margin-top:2px}.reminder-item.danger{border-color:#fecaca;background:#fff7f7}.reminder-item.warn{border-color:#fde68a;background:#fffaf0}.reminder-item.ok{border-color:#bbf7d0;background:#f0fdf4}.more-grid{display:grid;gap:12px}.more-grid.mini{gap:8px}.more-grid a{text-decoration:none}.danger-link{color:#dc2626!important;background:transparent!important;padding:4px 0!important;min-height:auto!important;box-shadow:none!important}.vault-item .danger-link{display:inline-block;margin-top:6px}.album-item .danger-link{font-size:11px}.admin-health{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.admin-health div{border:1px solid var(--line);border-radius:18px;background:#f8fafc;padding:12px}.admin-health strong{display:block}.admin-health small{color:#64748b}


/* v3.5 AI Travel Storybook */
.storybook-card{background:linear-gradient(180deg,#fff 0%,#f7fbff 100%);border:1px solid #d7ecff}
.friendly-copy{color:#5f6f85;font-size:14px;line-height:1.45;margin:4px 0 12px;font-weight:500}
.story-actions{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}
.mini-chip{border:1px solid #d6e4f0;background:#fff;border-radius:999px;padding:8px 11px;color:#0b4f9d;font-weight:650;font-size:12px}
.story-editor{display:grid;gap:9px;margin-top:12px}
.story-editor label{font-weight:700;color:#19314d;font-size:13px}
.story-editor textarea{width:100%;min-height:105px;border:1px solid #d8e5ef;border-radius:16px;padding:12px;background:#fff;color:#10233b;font-weight:450;line-height:1.55;resize:vertical}
.story-chapters{display:grid;gap:10px}
.story-chapter{border:1px solid #e4edf5;background:#fff;border-radius:18px;padding:10px}
.story-chapter textarea{min-height:135px;margin-top:6px}
.story-page .story-chapter-read{border-left:4px solid #0796a6;padding:14px 0 14px 16px;margin:16px 0;background:linear-gradient(90deg,#f3fdff,transparent);border-radius:0 14px 14px 0}
.story-page .story-chapter-read p,.story-page .story-prose{font-size:16px;line-height:1.75;color:#28384c;font-weight:400}
.story-page .short-caption{background:#ecfeff;border:1px solid #b8edf4;border-radius:18px;padding:14px;color:#075e68}

/* v3.6.1 navigation, country search and setup cleanup */
.setup-card > b,
.feature-card > b { display:none!important; }
#passportCountry[list] { width:100%; min-height:48px; border:1px solid #d8e6f0; background:#fff; border-radius:16px; padding:12px 14px; font-weight:650; color:#0f2742; }
#travelMonth { min-height:48px; }
.trip-row .actions { display:flex; flex-wrap:wrap; gap:8px; }
.trip-row.active-live { border-color:#6ee7b7; background:linear-gradient(180deg,#fff,#f0fdfa); }
.nav-btn { cursor:pointer; }
.setup-card { grid-template-columns:54px 1fr!important; }


/* v3.6 Travel Storybook Studio + PDF export polish */
.storybook-hero{background:linear-gradient(135deg,#078b98 0%,#0b4f9d 58%,#7c3aed 100%);min-height:112px}
.storybook-studio-shell{display:grid;gap:14px}
.studio-head{align-items:flex-start;gap:12px;margin-bottom:12px}
.studio-head h3{margin:3px 0 4px;font-size:19px;font-weight:760;color:#10233b;letter-spacing:-.02em}
.studio-head p{margin:0;color:#5f6f85;font-size:13px;line-height:1.45;font-weight:500}
.studio-kicker{display:inline-flex;align-items:center;gap:6px;font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.08em;color:#078b98;background:#ecfeff;border:1px solid #b8edf4;border-radius:999px;padding:5px 9px}
.memory-composer-card,.studio-card,.share-card{border:1px solid #dcebf5;background:linear-gradient(180deg,#ffffff 0%,#f8fcff 100%);box-shadow:0 12px 30px rgba(15,34,58,.08)}
.memory-layout{display:grid;grid-template-columns:138px 1fr;gap:14px;align-items:start}
.memory-upload-wrap{display:grid;gap:7px}
.sr-only-file{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.memory-upload-box{min-height:170px;border:1.5px dashed #9bddea;border-radius:24px;background:linear-gradient(145deg,#ecfeff,#fff);display:grid;place-items:center;text-align:center;padding:12px;cursor:pointer;position:relative;overflow:hidden;transition:all .18s ease;box-shadow:inset 0 0 0 1px rgba(255,255,255,.8)}
.memory-upload-box:hover{transform:translateY(-1px);border-color:#0796a6;box-shadow:0 14px 30px rgba(7,150,166,.12)}
.upload-empty-state{display:grid;place-items:center;gap:7px;color:#50627a}
.upload-empty-state b{width:46px;height:46px;display:grid;place-items:center;border-radius:16px;background:linear-gradient(135deg,#0ea5e9,#14b8a6);color:#fff;box-shadow:0 12px 24px rgba(7,150,166,.22)}
.upload-empty-state .ui-icon{width:24px;height:24px}
.upload-empty-state strong{font-size:13px;color:#0f2742;font-weight:780}
.upload-empty-state small{font-size:11px;line-height:1.35;color:#6b7d92;font-weight:550}
.album-photo-preview{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;border-radius:22px;display:block}
.selected-file-name{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#66768c;font-size:11px;font-weight:650;padding:0 4px}
.memory-form-grid{display:grid;gap:10px}
.compact-row{margin:0;gap:10px}
.memory-composer-card .field label,.studio-card .field label{font-size:12px;color:#243b55;font-weight:720;margin-bottom:5px}
.memory-composer-card .field input,.memory-composer-card .field select,.studio-card .field select{min-height:48px;border:1px solid #d8e6f0;background:#fff;border-radius:16px;font-weight:650;box-shadow:0 2px 0 rgba(15,34,58,.02)}
.studio-actions,.story-primary-actions,.story-export-actions{margin-top:4px}
.studio-actions .btn,.story-primary-actions .btn,.story-export-actions .btn{min-height:54px;border-radius:20px;font-size:14px;font-weight:800}
.storybook-config-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:8px 0 12px}
.storybook-card{border:1px solid #dbeafe;background:linear-gradient(180deg,#fff 0%,#f5fbff 100%)}
.story-preview-card{margin-top:14px;border:1px solid #e1edf5;border-radius:24px;background:#fff;overflow:hidden;box-shadow:inset 0 1px 0 rgba(255,255,255,.9)}
.story-preview-card.has-story{border-color:#acecf5;box-shadow:0 16px 32px rgba(7,150,166,.08)}
.storybook-page-head{display:flex;justify-content:space-between;align-items:center;padding:13px 14px;background:linear-gradient(135deg,#ecfeff,#f7fbff);border-bottom:1px solid #e1edf5}
.storybook-page-head span{font-weight:820;color:#0f2742}.storybook-page-head small{color:#078b98;font-weight:750}
.story-preview-card .story-editor{padding:14px}
.story-editor label{font-weight:750;color:#253b56;font-size:12px;text-transform:none;letter-spacing:0;margin-top:2px}
.story-editor textarea{border:1px solid #dfeaf2;background:#fdfefe;border-radius:18px;min-height:120px;font-weight:450;font-size:13px;line-height:1.65;color:#243346;padding:13px;box-shadow:inset 0 1px 2px rgba(15,34,58,.03)}
.story-editor textarea:focus,.memory-composer-card input:focus,.memory-composer-card select:focus,.studio-card select:focus{outline:0;border-color:#0796a6;box-shadow:0 0 0 3px rgba(7,150,166,.10)}
.story-chapter{border:1px solid #e3eef6;background:linear-gradient(180deg,#fff,#fbfdff);border-radius:20px;padding:12px;box-shadow:0 8px 18px rgba(15,34,58,.04)}
.story-chapter label{display:block;background:#f0fdfa;color:#0f766e;border-radius:999px;padding:6px 10px;margin-bottom:7px;width:max-content;max-width:100%}
.story-chapter textarea{min-height:150px;margin-top:4px;background:#fff}
.story-actions{gap:8px;margin:12px 0 10px}.mini-chip{border-color:#cde6f5;background:#fff;border-radius:999px;padding:9px 12px;color:#0b4f9d;font-weight:720;box-shadow:0 4px 12px rgba(15,34,58,.04)}
.mini-chip:hover{background:#effafe;border-color:#95ddeb}.story-export-actions .btn[disabled]{opacity:.55;filter:grayscale(.25);cursor:not-allowed}.share-card .check-list label{background:#f8fbfd;border:1px solid #e4edf5;border-radius:14px;padding:9px 10px;font-size:12px;font-weight:650;color:#31445d}.share-card .copybox{background:#fbfdff;border-color:#dbeafe}.album-grid{gap:12px}.album-item{border-radius:20px;background:#fff;box-shadow:0 8px 22px rgba(15,34,58,.06);border-color:#e2ebf3}.album-item img{height:132px}.album-item div{font-size:12px;color:#40526a}.album-item strong{font-weight:760;color:#10233b}
@media(max-width:374px){.memory-layout{grid-template-columns:1fr}.memory-upload-box{min-height:180px}.storybook-config-grid{grid-template-columns:1fr}.compact-row{grid-template-columns:1fr}.studio-head{display:block}.studio-head .badge{margin-top:8px}.story-export-actions{grid-template-columns:1fr}}
@media(min-width:760px){.memory-layout{grid-template-columns:180px 1fr}.memory-upload-box{min-height:210px}}
@media print{.story-export-actions,.story-actions,.memory-composer-card,.share-card{display:none!important}.story-preview-card{border:0;box-shadow:none}.storybook-page-head{background:#fff}.story-editor textarea{border:0;min-height:auto}}
.story-public-actions{display:flex;justify-content:flex-end;margin:14px 0}.story-public-actions button{border:0;border-radius:999px;background:#0796a6;color:#fff;font-weight:800;padding:11px 16px;box-shadow:0 12px 24px rgba(7,150,166,.18);cursor:pointer}@media print{.story-public-actions{display:none!important}.story-page{background:#fff}.story-shell{max-width:none}.story-page .card{break-inside:avoid;box-shadow:none;border:1px solid #e5e7eb}.story-hero{break-after:page}}


/* v3.6.2 compact professional polish */
.route-clean-header{display:grid!important;grid-template-columns:44px 1fr 44px!important;align-items:center;gap:10px!important;padding:18px 14px 20px!important;min-height:96px!important;border-radius:0 0 24px 24px!important}
.route-title-copy{text-align:center;color:#fff}.route-title-copy h3{margin:0;font-size:18px;font-weight:780;letter-spacing:-.02em}.route-title-copy small{display:block;margin-top:3px;font-size:10px;line-height:1.25;font-weight:600;color:rgba(255,255,255,.82)}
.route-clean-header .back-btn,.route-clean-header .share-btn{width:38px!important;height:38px!important;border-radius:15px!important}.route-clean-header .share-btn{font-size:18px!important}
.map .plane-marker,.plane-marker{width:auto!important;height:auto!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;border:0!important;color:#064a9a!important;font-size:26px!important;text-shadow:0 3px 8px rgba(255,255,255,.95),0 4px 14px rgba(7,43,83,.22);line-height:1!important;transform:rotate(12deg)}
.plane-div-icon{background:transparent!important;border:0!important}
.storybook-hero{min-height:100px!important;border-radius:24px!important;background:linear-gradient(135deg,#078b98 0%,#0b4f9d 100%)!important}
.storybook-hero h2{font-size:21px!important}.storybook-hero p{font-size:12px!important;line-height:1.4!important}
.memory-composer-card,.studio-card,.share-card{border-radius:22px!important;padding:14px!important}.studio-head{margin-bottom:10px!important}.studio-head h3{font-size:17px!important}.studio-head p{font-size:12px!important;line-height:1.4!important}
.memory-layout{grid-template-columns:122px 1fr!important;gap:12px!important}.memory-upload-box{min-height:146px!important;border-radius:20px!important}.album-photo-preview{border-radius:19px!important}.upload-empty-state b{width:40px!important;height:40px!important;border-radius:14px!important}.upload-empty-state strong{font-size:12px!important}.upload-empty-state small{font-size:10px!important}
.storybook-config-grid{gap:9px!important;margin:6px 0 10px!important}.memory-composer-card .field label,.studio-card .field label{font-size:11px!important;font-weight:700!important;color:#31445d!important}.memory-composer-card .field input,.memory-composer-card .field select,.studio-card .field select{min-height:43px!important;border-radius:14px!important;padding:9px 11px!important;font-size:13px!important;font-weight:620!important;color:#0f2742!important}.story-editor textarea{min-height:96px!important;border-radius:16px!important;font-size:12.5px!important;line-height:1.58!important}.story-chapter textarea{min-height:118px!important}
.studio-actions .btn,.story-primary-actions .btn,.story-export-actions .btn{min-height:44px!important;border-radius:16px!important;font-size:13px!important;padding:9px 12px!important;font-weight:760!important}.story-actions{gap:7px!important;margin:9px 0!important}.mini-chip{min-height:32px!important;padding:6px 10px!important;font-size:11.5px!important;font-weight:680!important;box-shadow:none!important}.storybook-page-head{padding:10px 12px!important}.story-preview-card .story-editor{padding:12px!important;gap:8px!important}.share-card .copybox{font-size:11px!important;line-height:1.45!important}.album-grid{gap:10px!important}.album-item img{height:112px!important}.album-item div{padding:8px!important;font-size:11.5px!important}
.card h3{letter-spacing:-.01em}.field input::placeholder,.field textarea::placeholder{color:#8a98aa;font-weight:500}
@media(max-width:374px){.memory-layout{grid-template-columns:1fr!important}.memory-upload-box{min-height:170px!important}.route-title-copy small{display:none}.storybook-config-grid{grid-template-columns:1fr!important}.story-primary-actions,.story-export-actions,.studio-actions{grid-template-columns:1fr!important}}


/* v3.6.3 flow testing fixes */
.app-toast{position:fixed;left:50%;bottom:calc(88px + env(safe-area-inset-bottom));transform:translate(-50%,18px);z-index:2500;width:min(390px,calc(100% - 28px));background:#0f2742;color:#fff;border-radius:18px;padding:12px 14px;box-shadow:0 18px 45px rgba(15,34,58,.26);font-size:13px;line-height:1.42;font-weight:700;opacity:0;pointer-events:none;transition:opacity .2s ease,transform .2s ease}.app-toast.show{opacity:1;transform:translate(-50%,0)}.app-toast.warn{background:#7c3f08}.app-toast.info{background:#0f2742}.app-toast.ok{background:#087a42}
.quick-days button{transition:background .18s ease,color .18s ease,transform .18s ease}.quick-days button:active{transform:scale(.97)}


/* V3.6.5 destination search + planning flow cleanup */
.planning-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:8px 0 14px;padding:0 6px}
.planning-progress span{position:relative;text-align:center;border-radius:999px;background:#eef7fb;border:1px solid #dbeafe;color:#6b7a90;font-size:10px;font-weight:850;padding:7px 4px;white-space:nowrap}
.planning-progress span.done{background:#e6fbf5;color:#0f766e;border-color:#99f6e4}.planning-progress span.active{background:#078b98;color:#fff;border-color:#078b98;box-shadow:0 10px 22px rgba(7,139,152,.18)}
.clean-searchbar{grid-template-columns:auto 1fr!important}.clean-searchbar input{font-size:14px!important;font-weight:700!important}.destination-screen{padding-bottom:126px!important}.destination-screen .icon-btn,.destination-screen .heart-btn{display:none!important}.filter-row{grid-template-columns:1fr auto auto!important;margin-bottom:14px!important}.filter-sheet{display:none!important}.popular-title{font-size:15px!important;margin:12px 4px 10px!important;color:#0f2742}.city-floating-actions{position:sticky!important;bottom:calc(78px + var(--bottom))!important;z-index:900!important;background:rgba(255,255,255,.92)!important;backdrop-filter:blur(18px)!important;border:1px solid #e5edf5!important;border-radius:22px!important;padding:12px!important;box-shadow:0 18px 45px rgba(15,34,58,.16)!important;margin:14px 0 4px!important;grid-template-columns:88px 1fr!important}.city-floating-actions .btn{min-height:42px!important;border-radius:16px!important;font-size:13px!important}.btn:disabled,.btn.disabled{opacity:.55!important;filter:grayscale(.25);cursor:not-allowed!important;box-shadow:none!important}.empty-destination-card{grid-column:1/-1;border:1px solid #ffe0a8;background:linear-gradient(135deg,#fff8e6,#fffdf8);border-radius:18px;padding:14px 16px;color:#955000;box-shadow:0 10px 24px rgba(149,80,0,.08)}.empty-destination-card strong{display:block;color:#713f12;font-size:14px;margin-bottom:5px}.empty-destination-card small{display:block;color:#955000;line-height:1.45;margin-bottom:10px}.empty-destination-card .btn{min-height:36px;border-radius:13px;font-size:12px;padding:7px 11px}.loading-card{border-color:#bae6fd;background:linear-gradient(135deg,#effaff,#ffffff);color:#0369a1}.badge-line{display:flex!important;flex-wrap:wrap!important;gap:4px!important;align-items:center}.city-title .badge.info{max-width:82px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.route-clean-header{grid-template-columns:44px 1fr 44px!important;min-height:128px!important;padding:20px 16px 24px!important}.route-clean-header .route-title-copy{min-width:0!important;text-align:left!important}.route-clean-header .route-title-copy h3{font-size:24px!important;line-height:1.08!important;margin:0 0 7px!important}.route-clean-header .route-title-copy small{display:block!important;max-width:330px!important;font-size:13px!important;line-height:1.45!important;color:rgba(255,255,255,.92)!important;font-weight:650!important}.safety-hero{background:linear-gradient(135deg,#ef4444,#f97316)}.disabled-card{opacity:.82}.disabled-card em{color:#64748b!important}.app-toast{position:fixed;left:50%;bottom:calc(92px + var(--bottom));transform:translate(-50%,18px);z-index:2300;width:calc(100% - 34px);max-width:392px;border-radius:20px;padding:13px 16px;background:#fff;border:1px solid #dbeafe;box-shadow:0 22px 60px rgba(15,34,58,.22);opacity:0;pointer-events:none;transition:.22s ease;display:grid;gap:3px}.app-toast.show{opacity:1;transform:translate(-50%,0)}.app-toast strong{font-size:13px;color:#0f2742}.app-toast small{font-size:12px;line-height:1.42;color:#526176;font-weight:700}.app-toast.ok{border-color:#99f6e4;background:#f0fdfa}.app-toast.warn{border-color:#fed7aa;background:#fff7ed}.app-toast.danger{border-color:#fecaca;background:#fff1f2}.app-dialog-overlay{position:fixed;inset:0;z-index:2400;background:rgba(15,23,42,.46);display:grid;place-items:center;padding:18px}.app-dialog{width:min(392px,100%);background:#fff;border-radius:26px;padding:20px;border:1px solid #e5edf5;box-shadow:0 28px 80px rgba(15,34,58,.32);display:grid;grid-template-columns:46px 1fr;gap:12px}.dialog-icon{width:46px;height:46px;border-radius:16px;display:grid;place-items:center;background:#e6fbff;font-weight:900}.dialog-copy h3{margin:0 0 7px;font-size:17px;color:#0f2742}.dialog-copy p{margin:0;color:#526176;line-height:1.5;font-size:13px;font-weight:650}.dialog-actions{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:8px}.dialog-actions .btn{min-height:42px;border-radius:16px}.dialog-actions .btn:only-child{grid-column:2/3}.app-dialog-overlay.warn .dialog-icon{background:#fff7ed}.app-dialog-overlay.danger .dialog-icon{background:#fff1f2}
@media(max-width:374px){.planning-progress span{font-size:9px;padding:6px 2px}.route-clean-header .route-title-copy h3{font-size:21px!important}.route-clean-header .route-title-copy small{font-size:12px!important}.city-floating-actions{grid-template-columns:76px 1fr!important}}

/* V3.6.6 destination intelligence + route review polish */
.passport-card{overflow:visible!important;z-index:60!important}.passport-field{position:relative}.passport-field input#passportCountry{width:100%!important;min-height:46px!important;border:1px solid #d8e6f0!important;background:#fff!important;border-radius:16px!important;padding:12px 14px!important;font-weight:720!important;color:#0f2742!important}.passport-suggestions{position:absolute;left:0;right:0;top:calc(100% + 8px);z-index:1500;background:#fff;border:1px solid #e1ebf5;border-radius:18px;box-shadow:0 22px 60px rgba(15,34,58,.18);padding:7px;max-height:260px;overflow:auto}.passport-suggestions button{width:100%;border:0;background:transparent;border-radius:13px;padding:10px 11px;text-align:left;color:#0f2742}.passport-suggestions button:hover,.passport-suggestions button:focus{background:#f0fdff}.passport-suggestions strong{display:block;font-size:13px}.passport-suggestions small{display:block;font-size:11px;color:#66758a;margin-top:1px}.city-location{display:block;color:#64748b;font-size:11px;font-weight:750;margin:-2px 0 6px}.city-card .badge-line{display:flex!important}.city-card .city-actions{display:grid!important}.city-actions.compact-actions{grid-template-columns:1.12fr .88fr}.city-actions .btn{min-height:36px!important;border-radius:14px!important;font-size:11px!important;padding:7px 8px!important}.city-card{min-height:180px}.city-title h4{line-height:1.15}.review-screen .route-clean-header{display:grid!important;grid-template-columns:44px minmax(0,1fr) 44px!important;align-items:center!important;gap:12px!important;min-height:auto!important;padding:18px 16px 20px!important;margin:0 -14px 12px!important;border-radius:0 0 28px 28px!important;text-align:left!important}.review-screen .route-clean-header .back-btn,.review-screen .route-clean-header .share-btn{position:static!important}.route-title-copy{min-width:0!important;text-align:left!important}.route-title-copy span{display:inline-block;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:4px 9px;font-size:10px;font-weight:850;margin-bottom:7px}.route-title-copy h3{margin:0 0 5px!important;font-size:22px!important;line-height:1.08!important}.route-title-copy small{display:block!important;max-width:none!important;font-size:12.2px!important;line-height:1.42!important;color:rgba(255,255,255,.9)!important;font-weight:650!important}.trip-review-card{margin-top:12px}.review-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:12px}.review-card-head h3{font-size:20px;margin:4px 0 4px}.review-card-head p{font-size:12px;line-height:1.45;color:#526176}.review-stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:10px 0}.review-stat-grid div{border:1px solid #e3edf6;border-radius:16px;padding:10px;background:#f8fbfd}.review-stat-grid small{display:block;color:#64748b;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.review-stat-grid strong{display:block;color:#0f2742;font-size:13px;margin-top:3px}.review-alerts{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0 12px}.compact-review-actions{display:grid!important;grid-template-columns:1fr 1fr!important}.route-options-card{overflow:hidden}.route-options-head p{margin-top:3px}.route-plan-leg{border-top:1px solid #e8eef6;padding:12px 0}.route-plan-leg:first-of-type{border-top:0}.route-plan-leg h4{margin:0 0 5px;font-size:13px;color:#0f2742}.route-plan-leg p{font-size:11.5px;color:#64748b;line-height:1.45;margin-bottom:8px}.route-option{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;border:1px solid #e1ebf5;border-radius:15px;padding:9px 10px;background:#f8fbfd;margin:7px 0}.route-option.direct{background:#f0fdfa;border-color:#b7f3df}.route-option.has-stop{background:#fff8eb;border-color:#fde3b3}.route-option strong{display:block;font-size:12px;color:#0f2742}.route-option small{display:block;font-size:10.5px;color:#64748b;line-height:1.35;margin-top:2px}.route-option span{font-size:10px;font-weight:900;border-radius:999px;padding:5px 7px;background:#fff;color:#0f766e}.route-option.has-stop span{color:#a65b00}.flight-leg.connection{background:#fff8eb;border-color:#fde3b3}.flight-leg.direct{background:#f0fdfa;border-color:#b7f3df}.app-bottom-sheet-overlay{position:fixed;inset:0;z-index:2450;background:rgba(15,23,42,.46);display:flex;align-items:flex-end;justify-content:center;padding:0 12px 12px}.app-bottom-sheet{width:min(430px,100%);max-height:88vh;overflow:auto;background:#fff;border-radius:28px 28px 24px 24px;padding:18px;border:1px solid #e5edf5;box-shadow:0 -22px 70px rgba(15,34,58,.34)}.travel-check-head{display:grid;grid-template-columns:50px 1fr;gap:12px;align-items:center;margin-bottom:14px}.travel-check-head>span{width:50px;height:50px;border-radius:18px;background:#ecfeff;display:grid;place-items:center;font-weight:900;color:#078b98}.travel-check-head h3{margin:0;font-size:18px;color:#0f2742}.travel-check-head small{display:block;color:#64748b;font-size:12px;margin-top:2px}.travel-check-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:12px}.travel-check-grid div{border:1px solid #e4edf6;border-radius:16px;background:#f8fbfd;padding:10px}.travel-check-grid b,.travel-check-section b{display:block;font-size:10px;color:#64748b;text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px}.travel-check-grid strong{display:block;font-size:13px;color:#0f2742;margin-bottom:3px}.travel-check-grid small{display:block;font-size:10.5px;line-height:1.35;color:#66758a}.travel-check-section{border:1px solid #e4edf6;border-radius:16px;padding:11px;margin:10px 0;background:#fff}.travel-check-section ul{margin:6px 0 0;padding-left:18px;color:#475569;font-size:12px;line-height:1.45}.travel-check-section p{margin:6px 0 0;color:#475569;font-size:12px;line-height:1.45}.travel-check-actions{grid-template-columns:1fr 1fr!important;margin-top:12px!important}.travel-check-actions .btn{min-height:42px!important;border-radius:16px!important}@media(max-width:374px){.travel-check-grid{grid-template-columns:1fr}.review-stat-grid{grid-template-columns:1fr}.route-title-copy h3{font-size:20px!important}.route-title-copy small{font-size:11.5px!important}}

.filter-row{grid-template-columns:1fr auto!important}

/* v3.6.7 Trip tools unlock + selectable routes + safety meter */
.home-screen .app-hero{background-size:cover!important;background-position:center!important;isolation:isolate}.home-screen .app-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(4,31,62,.82),rgba(7,139,152,.72));z-index:1}.home-screen .hero-copy,.home-screen .hero-bell,.home-screen .hero-visual{z-index:3}.home-screen .app-hero.hero-beach{background-image:url('https://images.unsplash.com/photo-1507525428034-b723cf961d3e?auto=format&fit=crop&w=1200&q=80')!important}.home-screen .app-hero.hero-mountain{background-image:url('https://images.unsplash.com/photo-1500530855697-b586d89ba3ee?auto=format&fit=crop&w=1200&q=80')!important}.home-screen .app-hero.hero-city{background-image:url('https://images.unsplash.com/photo-1499092346589-b9b6be3e94b2?auto=format&fit=crop&w=1200&q=80')!important}.home-screen .app-hero.hero-family{background-image:url('https://images.unsplash.com/photo-1500534314209-a25ddb2bd429?auto=format&fit=crop&w=1200&q=80')!important}.home-screen .app-hero.hero-adventure{background-image:url('https://images.unsplash.com/photo-1526772662000-3f88f10405ff?auto=format&fit=crop&w=1200&q=80')!important}
.locked-tool{opacity:.45!important;filter:grayscale(.35);position:relative}.locked-tool:after{content:"Locked";position:absolute;right:8px;top:8px;border-radius:999px;background:#fff7ed;color:#9a3412;border:1px solid #fed7aa;font-size:9px;font-weight:950;padding:3px 6px}.trip-tools-locked #packingMini{color:#9a3412}.review-screen .route-clean-header{grid-template-columns:44px minmax(0,1fr) 44px!important;align-items:flex-start!important;min-height:auto!important;padding:18px 16px!important}.review-screen .route-clean-header .route-title-copy{display:block!important;width:100%!important;max-width:none!important}.review-screen .route-clean-header .route-title-copy small{white-space:normal!important;overflow:visible!important;text-overflow:clip!important}.route-option{width:100%;text-align:left;border:1px solid #e1ebf5}.route-option.selected{border-color:#078b98!important;background:linear-gradient(135deg,#ecfeff,#f8fbfd)!important;box-shadow:0 10px 24px rgba(8,139,152,.14)}.route-option.selected span{background:#078b98!important;color:#fff!important}.safety-meter-card{background:linear-gradient(135deg,#fff,#f7fffb)}.safety-meter-head{display:grid;grid-template-columns:1fr 98px;gap:14px;align-items:center}.safety-meter-head h3{margin:5px 0 5px;color:#0f2742;font-size:20px}.safety-meter-head p{margin:0;color:#64748b;font-size:12px;line-height:1.45;font-weight:700}.safety-gauge{--score:70;width:94px;height:94px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#10b981 calc(var(--score)*1%),#e5edf5 0);position:relative}.safety-gauge:before{content:"";position:absolute;inset:10px;border-radius:50%;background:#fff}.safety-gauge strong,.safety-gauge span{position:relative;z-index:1}.safety-gauge strong{font-size:22px;color:#073f84}.safety-gauge span{font-size:10px;color:#64748b;font-weight:900;margin-top:-26px}.safety-bar,.packing-meter{height:10px;background:#e8eef5;border-radius:999px;overflow:hidden}.safety-bar i,.packing-meter span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#ef4444,#f59e0b,#10b981)}.safety-legend{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;margin-top:8px;font-size:9px;color:#64748b;font-weight:800;text-align:center}.safety-city-card{background:#fff;border:1px solid #e5edf5;border-radius:20px;padding:13px;margin:10px 0;box-shadow:0 10px 24px rgba(15,34,58,.06)}.safety-city-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.safety-city-head strong{display:block;color:#0f2742}.safety-city-head small{display:block;color:#64748b;font-size:11px;margin-top:2px}.mini-meter{height:7px;background:#eef2f7;border-radius:999px;overflow:hidden;margin:10px 0}.mini-meter i{height:100%;display:block;background:linear-gradient(90deg,#f97316,#10b981)}.safety-city-card ul{margin:8px 0 0;padding-left:18px;color:#475569;font-size:12px;line-height:1.45}.safety-city-card p{font-size:11.5px;color:#64748b;line-height:1.45;margin:8px 0 0}.packing-card .card-head p{margin:3px 0 0}.packing-actions{display:grid;grid-template-columns:1fr auto;gap:8px;margin:12px 0}.packing-actions input{border:1px solid #dce5ee;border-radius:14px;min-height:40px;padding:9px 12px;font-weight:700}.packing-list{display:grid;gap:12px;margin-top:12px}.packing-group{border:1px solid #e7eef6;border-radius:18px;padding:10px;background:#fbfdff}.packing-group h4{margin:0 0 8px;font-size:13px;color:#0f2742}.packing-item{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:9px;padding:8px 6px;border-radius:12px;font-size:12.5px;color:#334155;font-weight:750}.packing-item.done{background:#ecfdf5;color:#047857;text-decoration:none}.packing-item.done span{text-decoration:line-through;text-decoration-thickness:2px;text-decoration-color:#6ee7b7}.packing-item button{border:0;background:#fff1f2;color:#be123c;border-radius:10px;width:24px;height:24px;font-weight:950}@media(max-width:374px){.safety-meter-head{grid-template-columns:1fr}.safety-gauge{width:86px;height:86px}.packing-actions{grid-template-columns:1fr}.locked-tool:after{display:none}}
body.trip-tools-locked .locked-tool{display:none!important}.trip-tools-locked .icon-dashboard:after{content:"Create and save a trip first. Packing, safety, spend, album and AI companion will appear here after the trip is added.";grid-column:1/-1;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;border-radius:18px;padding:12px;font-size:12px;font-weight:800;line-height:1.45;text-align:left}

/* v3.6.8 Trip Execution Mode + Live Dashboard */
.live-trip-dashboard{margin-top:14px;display:grid;gap:12px}.live-empty-card{border:1px dashed #b9d9e1;background:#f8fdff;border-radius:22px;padding:16px;display:grid;gap:8px}.live-empty-card strong{color:#073f84;font-size:15px}.live-empty-card small{color:#65758a;font-weight:700;line-height:1.35}.live-trip-card{background:linear-gradient(135deg,#ffffff,#f1fbfd);border:1px solid #d8edf3;border-radius:24px;padding:16px;box-shadow:0 14px 34px rgba(15,34,58,.08);display:grid;gap:12px}.live-trip-card.executing{background:linear-gradient(135deg,#f0fdfa,#fff)}.live-trip-head{display:grid;grid-template-columns:1fr 74px;gap:12px;align-items:center}.live-trip-head h3,.execution-hero-card h2,.live-leg-detail h2{margin:2px 0;color:#073f84}.live-trip-head p,.execution-hero-card p{margin:0;color:#5f6f84;font-weight:750;font-size:12px}.live-score,.execution-meter{height:72px;border-radius:22px;background:conic-gradient(#078b98 var(--p,70%),#e4f4f7 0);display:grid;place-items:center;text-align:center;color:#073f84;box-shadow:inset 0 0 0 8px #fff}.live-score strong,.execution-meter strong{font-size:20px;line-height:1}.live-score span,.execution-meter span{font-size:10px;font-weight:900;text-transform:uppercase}.next-leg-card{background:#fff;border:1px solid #e4edf5;border-radius:20px;padding:13px;display:grid;gap:5px}.next-leg-card h4{margin:0;font-size:17px;color:#10233b}.next-leg-card p,.next-leg-card small{margin:0;color:#5f6f84;font-weight:750}.mini-alerts{display:grid;gap:8px}.mini-alert,.smart-alert{border-radius:17px;padding:11px 12px;border:1px solid #e8eef6;background:#fff;display:grid;gap:4px}.mini-alert b,.smart-alert strong{display:block;color:#10233b}.mini-alert small,.smart-alert small{display:block;color:#607086;font-weight:700;line-height:1.35}.mini-alert.danger,.smart-alert.danger{background:#fff1f2;border-color:#fecdd3}.mini-alert.warn,.smart-alert.warn{background:#fff7ed;border-color:#fed7aa}.mini-alert.info,.smart-alert.info{background:#eff6ff;border-color:#bfdbfe}.execution-hero{background:linear-gradient(135deg,#078b98,#0b4f9d)!important}.execution-hero-card{background:linear-gradient(135deg,#078b98,#0b4f9d);color:#fff;border-radius:26px;padding:18px;display:grid;grid-template-columns:1fr 86px;gap:12px;align-items:center;box-shadow:0 18px 40px rgba(7,139,152,.18)}.execution-hero-card h2,.execution-hero-card p,.execution-hero-card .trip-kicker{color:#fff}.execution-meter{background:#fff;color:#073f84}.live-leg-detail{background:linear-gradient(180deg,#fff,#f7fbff)}.leg-timeline{display:grid;gap:9px}.leg-time-row{border:1px solid #e8eef6;background:#fff;border-radius:16px;padding:10px 12px;display:grid;gap:2px}.leg-time-row b{color:#10233b}.leg-time-row small{color:#64748b;font-weight:700}.smart-alert{grid-template-columns:1fr auto;align-items:center;margin-bottom:8px}.visa-ready-row{display:grid;grid-template-columns:1fr 155px;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid #edf2f7}.visa-ready-row:last-child{border-bottom:0}.visa-ready-row strong{display:block;color:#10233b}.visa-ready-row small{display:block;color:#64748b;font-weight:700}.visa-ready-row select{border:1px solid #dbe7f1;border-radius:14px;padding:10px;font-weight:800;background:#fff}.execution-shortcut-card{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;background:#f0fdfa!important;border-color:#99f6e4!important}.execution-shortcut-card h3{margin:0;color:#0f766e}.execution-shortcut-card p{margin:4px 0 0;color:#55707c;font-size:12px;font-weight:700}.vault-list{display:grid;gap:8px;margin-top:12px}.badge.danger{background:#fee2e2;color:#b91c1c}.badge.info{background:#e0f2fe;color:#0369a1}.badge.warn{background:#ffedd5;color:#9a3412}.badge.ok{background:#dcfce7;color:#166534}@media(max-width:420px){.live-trip-head,.execution-hero-card{grid-template-columns:1fr}.live-score,.execution-meter{width:100%;height:58px}.smart-alert{grid-template-columns:1fr}.visa-ready-row{grid-template-columns:1fr}.execution-shortcut-card{grid-template-columns:1fr}.home-screen .app-hero .hero-copy p{width:auto!important;max-width:90%!important}}

/* v3.6.9 execution update timeline + smart phrasebook */
.execution-quick-actions{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:10px;align-items:center;background:#ffffff!important;border:1px solid #dcecf3!important;border-radius:22px!important;padding:12px!important;box-shadow:0 10px 24px rgba(15,34,58,.06)!important}
.execution-quick-actions .btn{min-height:42px;border-radius:15px;font-size:12px;padding:8px 10px}
.trip-update-card{border-color:#b9f4e6!important;background:linear-gradient(180deg,#ffffff,#f0fdfa)!important}
.trip-update-card textarea{min-height:88px;resize:vertical}
.trip-update-list{display:grid;gap:10px;margin-top:8px}
.trip-update-item{display:grid;grid-template-columns:42px 1fr;gap:10px;align-items:start;border:1px solid #e4edf5;background:linear-gradient(180deg,#fff,#fbfdff);border-radius:18px;padding:12px;box-shadow:0 8px 20px rgba(15,34,58,.05)}
.trip-update-icon{width:42px;height:42px;border-radius:16px;display:grid;place-items:center;background:#ecfeff;border:1px solid #b9eef6;font-size:20px}
.trip-update-title{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}.trip-update-title strong{display:block;color:#10233b;font-size:13px}.trip-update-title span{font-size:10px;color:#64748b;font-weight:800;white-space:nowrap}.trip-update-item small{display:block;color:#607086;font-weight:750;margin-top:2px}.trip-update-item p{margin:6px 0 0;color:#334155;font-size:12px;line-height:1.45}.trip-update-item em{display:inline-block;margin-top:6px;color:#0f766e;font-style:normal;font-size:11px;font-weight:800}.trip-update-item img{width:100%;max-height:180px;object-fit:cover;border-radius:14px;margin-top:8px;border:1px solid #e4edf5}.trip-update-item.ticket-boarding-pass{border-color:#bfdbfe;background:#eff6ff}.trip-update-item.hotel-booking{border-color:#bbf7d0;background:#f0fdf4}.trip-update-item.expense-bill{border-color:#fed7aa;background:#fff7ed}.trip-update-item.delay-change{border-color:#fecaca;background:#fff1f2}
#phraseCityLabel{white-space:normal;text-align:right}.phrase-row{transition:transform .15s ease, box-shadow .15s ease}.phrase-row:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(15,34,58,.06)}
@media(max-width:520px){.execution-quick-actions{grid-template-columns:1fr}.trip-update-title{display:grid}.trip-update-title span{white-space:normal}.trip-update-item{grid-template-columns:36px 1fr}.trip-update-icon{width:36px;height:36px;border-radius:14px;font-size:18px}}

/* v3.6.11 Route labels + Visa Documents tab + album lifecycle lock */
.route-stop-label-icon{background:transparent!important;border:0!important;box-shadow:none!important;pointer-events:none!important}.route-stop-label{min-width:98px;max-width:126px;padding:5px 7px;border-radius:12px;background:rgba(255,255,255,.94);border:1px solid rgba(8,139,152,.22);box-shadow:0 8px 18px rgba(15,34,58,.16);display:grid;gap:1px;text-align:center;transform:translateY(-10px)}.route-stop-label b{font-size:10px;line-height:1;color:#078b98;letter-spacing:.04em}.route-stop-label span{font-size:10px;line-height:1.1;color:#10233b;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.route-stop-label.hub{background:#eff6ff;border-color:#bfdbfe}.route-stop-label.hub b{color:#0b4f9d}.album-locked-card{opacity:.62!important;filter:grayscale(.2);position:relative}.album-locked-card:after{content:"Unlocks when trip starts";position:absolute;right:8px;top:8px;background:#fff7ed;color:#9a3412;border:1px solid #fed7aa;border-radius:999px;font-size:9px;font-weight:950;padding:3px 7px}.album-panel-locked .album-studio-card,.album-panel-locked .story-studio-card,.album-panel-locked .share-card{opacity:.55;pointer-events:none;filter:grayscale(.25)}.album-locked-box{background:#fff7ed!important;border-color:#fed7aa!important;color:#9a3412!important}.visa-docs-overview{display:grid;gap:12px;margin-bottom:14px}.visa-docs-meter-card{background:linear-gradient(135deg,#078b98,#0b4f9d);color:#fff;border-radius:26px;padding:18px;display:grid;grid-template-columns:1fr 88px;gap:14px;align-items:center;box-shadow:0 16px 36px rgba(7,139,152,.18)}.visa-docs-meter-card h3{margin:2px 0;font-size:28px;color:#fff}.visa-docs-meter-card p,.visa-docs-meter-card .trip-kicker{color:#e6fcff;margin:0}.visa-docs-gauge{width:86px;height:86px;border-radius:50%;display:grid;place-items:center;text-align:center;background:conic-gradient(#10b981 var(--p,0%),rgba(255,255,255,.22) 0);box-shadow:inset 0 0 0 9px rgba(255,255,255,.86);color:#fff}.visa-docs-gauge strong{font-size:17px;line-height:1}.visa-docs-gauge span{font-size:9px;font-weight:950;text-transform:uppercase;margin-top:-22px}.visa-doc-country-card{border:1px solid #e2edf7;background:#fff;border-radius:20px;padding:12px;margin:10px 0;display:grid;gap:9px;box-shadow:0 10px 22px rgba(15,34,58,.05)}.visa-doc-country-card strong{display:block;color:#10233b;font-size:15px}.visa-doc-country-card small{display:block;color:#64748b;font-weight:750;margin-top:2px}.visa-doc-country-card select{border:1px solid #dbe7f1;border-radius:14px;min-height:42px;padding:9px 11px;background:#fff;font-weight:850}.visa-doc-country-card p{margin:0;color:#536276;font-size:12px;line-height:1.45;font-weight:700}.visa-doc-checklist{margin-top:0}.vault-item{border:1px solid #e8eef6;background:#fff;border-radius:16px;padding:11px 12px;margin:8px 0;display:grid;gap:4px}.vault-item b{color:#10233b}.vault-item small{color:#64748b;font-weight:700}.vault-item a{color:#078b98;font-weight:900;text-decoration:none;font-size:12px}@media(max-width:374px){.route-stop-label{min-width:82px;max-width:96px;padding:4px 6px}.route-stop-label span{font-size:9px}.visa-docs-meter-card{grid-template-columns:1fr}.visa-docs-gauge{width:100%;height:58px;border-radius:18px}.album-locked-card:after{display:none}}

/* V3.6.12 Ticket OCR confirmation improvements */
.ticket-confirm-card .field textarea{
  width:100%;
  min-height:54px;
  resize:vertical;
  border:1px solid var(--border, #d7e4ef);
  border-radius:18px;
  padding:12px 14px;
  font:inherit;
  font-weight:650;
  color:var(--ink, #082343);
  background:#fff;
  box-sizing:border-box;
}
.ticket-section-title{
  margin:16px 0 8px;
  font-size:13px;
  font-weight:900;
  color:#60738a;
  text-transform:uppercase;
  letter-spacing:.03em;
}
.scan-status{
  display:inline-flex;
  align-items:center;
  min-height:32px;
  font-size:12px;
  font-weight:800;
  color:#60738a;
}
.ticket-scan-preview{
  margin-top:12px;
}
.scan-summary-card{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
  padding:14px;
  border:1px solid #d7e9f1;
  border-radius:18px;
  background:linear-gradient(135deg,#f8fdff,#f0fbf9);
  box-shadow:0 12px 28px rgba(6,71,91,.08);
}
.scan-summary-card strong{
  display:block;
  color:#082343;
  font-size:15px;
  margin-top:2px;
}
.scan-summary-card small{
  display:block;
  color:#60738a;
  font-weight:700;
  line-height:1.35;
}
.notice.compact{
  margin-top:8px;
  padding:10px 12px;
  border-radius:14px;
  font-size:12px;
}
.scan-leg-selector{
  display:flex;
  flex-direction:column;
  gap:8px;
  margin-top:10px;
}
.scan-leg-selector .mini-link{
  width:100%;
  text-align:left;
  justify-content:flex-start;
  border:1px solid #cfe4ee;
  background:#fff;
  border-radius:14px;
  padding:10px 12px;
}
.ticket-saved-item small{
  display:block;
  margin-top:3px;
  line-height:1.35;
}

/* V3.6.13 Hotel OCR confirmation improvements */
.hotel-confirm-card textarea,
.ticket-confirm-card textarea{
  resize:vertical;
}
.hotel-scan-preview{
  margin-top:12px;
}
.hotel-saved-item small,
.ticket-saved-item small{
  word-break:break-word;
}

/* V3.6.14 Leg details flow + album timeline cleanup */
.leg-clickable{width:100%;text-align:left;cursor:pointer;grid-template-columns:34px 1fr auto;align-items:center;border:1px solid #dcecf3;background:linear-gradient(180deg,#fff,#f8fdff);transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}
.leg-clickable:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(15,34,58,.08);border-color:#9bdde6}
.leg-clickable .leg-index{width:28px;height:28px;border-radius:999px;background:#078b98;color:#fff;font-weight:950;display:grid;place-items:center;font-size:12px}
.leg-clickable span small,.leg-clickable span em{display:block}.leg-clickable span em{font-style:normal;color:#0f766e;font-weight:850;font-size:11px;margin-top:3px}.leg-clickable>strong{color:#078b98;font-size:12px;white-space:nowrap}.album-update-card{margin-top:12px}.album-timeline-card{margin-top:12px}.album-update-card textarea{min-height:88px;resize:vertical}.leg-modal.hidden{display:none}.leg-modal{position:fixed;inset:0;z-index:9999;display:grid;place-items:end center}.leg-modal-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.52);backdrop-filter:blur(3px)}.leg-modal-card{position:relative;z-index:1;width:min(560px,calc(100% - 22px));max-height:88vh;overflow:auto;background:#fff;border-radius:28px 28px 0 0;border:1px solid #dcecf3;box-shadow:0 -18px 44px rgba(15,34,58,.24);padding:20px}.modal-close{position:absolute;top:12px;right:14px;width:38px;height:38px;border-radius:999px;border:1px solid #dcecf3;background:#fff;color:#10233b;font-size:24px;font-weight:900}.leg-detail-head{padding:4px 42px 14px 0}.leg-detail-head h2{margin:6px 0 2px;color:#073f84;font-size:23px}.leg-detail-head p{margin:0;color:#60738a;font-weight:800}.leg-detail-section{border:1px solid #e4edf5;border-radius:20px;background:#fbfdff;padding:14px;margin:12px 0}.leg-detail-section h3{margin:0 0 10px;color:#10233b}.leg-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.leg-detail-grid>div{border:1px solid #edf2f7;background:#fff;border-radius:14px;padding:10px}.leg-detail-grid small{display:block;color:#64748b;font-weight:850;font-size:10px;text-transform:uppercase;letter-spacing:.03em}.leg-detail-grid strong{display:block;color:#10233b;font-size:13px;line-height:1.3;word-break:break-word}.linked-hotel-card{border:1px solid #d9f4e7;background:#f0fdfa;border-radius:16px;padding:12px;margin:8px 0;display:grid;gap:4px}.linked-hotel-card b{color:#065f46}.linked-hotel-card small{color:#60738a;font-weight:800}.linked-hotel-card p{margin:4px 0 0;color:#334155;font-size:12px;line-height:1.35}.execution-quick-actions{grid-template-columns:1fr 1fr 1fr}.execution-quick-actions .btn.primary{background:linear-gradient(135deg,#078b98,#10b6c3)}
@media(max-width:520px){.leg-modal-card{max-height:90vh}.leg-detail-grid{grid-template-columns:1fr}.leg-clickable{grid-template-columns:30px 1fr}.leg-clickable>strong{display:none}.execution-quick-actions{grid-template-columns:1fr}}


/* V3.6.15 OCR UI simplification + album card + currency converter */
.ticket-auto-note{background:#f8fbfd!important;border-color:#dcecf3!important;color:#60738a!important}
.three-col{grid-template-columns:1fr 1fr 1fr!important}
.currency-card{background:linear-gradient(180deg,#ffffff,#f5fffc)!important;border-color:#d7f7ec!important}
.currency-card .card-head h3{margin:0}
.currency-card input[readonly]{background:#f8fbfd;color:#0f2742;font-weight:850}
.memory-capture-card{overflow:hidden;background:radial-gradient(circle at top right,rgba(16,185,129,.13),transparent 32%),linear-gradient(180deg,#ffffff,#f3fffd)!important;border:1px solid #bdf3e8!important;box-shadow:0 18px 42px rgba(7,139,152,.10)!important}
.memory-capture-hero{display:grid;grid-template-columns:54px 1fr auto;gap:12px;align-items:start;margin-bottom:14px}
.memory-capture-hero>span{width:54px;height:54px;border-radius:20px;display:grid;place-items:center;background:linear-gradient(135deg,#0ea5e9,#10b981);box-shadow:0 14px 30px rgba(14,165,233,.18);font-size:24px}
.memory-capture-hero h3{margin:2px 0 4px;color:#0f2742;font-size:18px}
.memory-capture-hero p{margin:0;color:#60738a;font-size:12.5px;line-height:1.45;font-weight:700}
.memory-capture-hero em{font-style:normal;background:#dcfce7;color:#047857;border-radius:999px;padding:6px 9px;font-size:10px;font-weight:950;white-space:nowrap}
.memory-upload-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:12px}
.memory-upload-box{border:1px dashed #91dce5!important;border-radius:20px!important;background:#f8fffe!important;padding:12px!important}
.memory-upload-box input{background:#fff!important}
.memory-upload-box small{display:block;color:#64748b;font-weight:750;margin-top:6px;font-size:11px}
.memory-capture-card textarea{min-height:104px!important;border-radius:18px!important}
@media(max-width:520px){.three-col,.memory-upload-grid{grid-template-columns:1fr!important}.memory-capture-hero{grid-template-columns:46px 1fr}.memory-capture-hero em{grid-column:2}.memory-capture-hero>span{width:46px;height:46px;border-radius:17px}}

/* V3.6.17 Ticket form mobile layout + custom leg selector */
.ticket-mobile-card{overflow:hidden;background:linear-gradient(180deg,#ffffff,#f7fffd)!important;border-color:#d8eef1!important}
.ticket-picker-grid{display:grid;grid-template-columns:1fr;gap:12px;margin-top:12px}
.file-input-hidden{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;overflow:hidden!important}
.pretty-file-box{display:grid!important;gap:4px;min-height:74px!important;border:1px dashed #9fdce4!important;border-radius:20px!important;background:linear-gradient(135deg,#f8fdff,#f2fffc)!important;padding:14px 16px!important;color:#0f2742!important;cursor:pointer!important;box-shadow:0 10px 24px rgba(7,139,152,.05)!important}
.pretty-file-box span{font-size:14px;font-weight:950;color:#0f2742;line-height:1.15}
.pretty-file-box small{font-size:12px!important;font-weight:800!important;color:#60738a!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;margin:0!important}
.ticket-leg-picker{width:100%;min-height:74px;border:1px solid #dcecf3;border-radius:20px;background:#fff;padding:12px 14px;text-align:left;display:grid;gap:3px;box-shadow:0 10px 24px rgba(15,34,58,.05);color:#10233b}
.ticket-leg-picker span{font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:#64748b;font-weight:950}
.ticket-leg-picker strong{font-size:15px;line-height:1.25;color:#073f84;font-weight:950;white-space:normal;word-break:break-word}
.ticket-leg-picker small{font-size:11px;color:#64748b;font-weight:800;white-space:normal!important;overflow:hidden;text-overflow:ellipsis;margin:0!important}
.ticket-actions{align-items:center;margin-top:12px;gap:10px;flex-wrap:wrap}.ticket-actions .btn{min-height:44px;border-radius:16px;padding:10px 16px}.ticket-actions .scan-status{min-height:28px}
.ticket-confirm-card .form-row{grid-template-columns:1fr!important;gap:10px!important}.ticket-confirm-card .field input,.ticket-confirm-card .field textarea,.ticket-confirm-card .field select{min-height:48px;border-radius:17px;font-size:14px}.ticket-confirm-card input[type="datetime-local"]{font-size:13px!important;line-height:1.2;min-width:0;padding-right:9px!important}
.ticket-time-row .field{min-width:0}.ticket-time-row input{width:100%;max-width:100%}.ticket-auto-note{font-size:11.5px!important;line-height:1.35!important}
.ticket-leg-sheet.hidden{display:none}.ticket-leg-sheet{position:fixed;inset:0;z-index:10001;display:grid;place-items:end center}.ticket-leg-sheet-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.48);backdrop-filter:blur(3px)}.ticket-leg-sheet-card{position:relative;z-index:1;width:min(520px,100%);max-height:78vh;overflow:auto;background:#fff;border-radius:28px 28px 0 0;border:1px solid #dcecf3;box-shadow:0 -18px 44px rgba(15,34,58,.24);padding:10px 16px 18px}.sheet-handle{width:44px;height:5px;border-radius:999px;background:#cbd5e1;margin:4px auto 10px}.sheet-title{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.sheet-title h3{margin:0;color:#10233b;font-size:17px}.sheet-title button{width:36px;height:36px;border:1px solid #dcecf3;background:#fff;border-radius:999px;color:#10233b;font-size:22px;font-weight:950}.ticket-leg-sheet-list{display:grid;gap:10px}.ticket-leg-option{width:100%;border:1px solid #e1edf5;background:#fff;border-radius:18px;padding:12px;display:grid;grid-template-columns:34px 1fr;gap:12px;text-align:left;align-items:center;box-shadow:0 8px 20px rgba(15,34,58,.05)}.ticket-leg-option span{width:34px;height:34px;border-radius:14px;background:#e8fbfc;color:#078b98;display:grid;place-items:center;font-weight:950}.ticket-leg-option strong{display:block;color:#10233b;font-size:14px;line-height:1.25}.ticket-leg-option small{display:block;color:#64748b;font-size:11px;font-weight:800;line-height:1.3;margin-top:3px}.ticket-leg-option.selected{border-color:#078b98;background:linear-gradient(180deg,#f0fbff,#f6fffc)}.ticket-leg-option.selected span{background:#078b98;color:#fff}
@media(min-width:640px){.ticket-picker-grid{grid-template-columns:1fr 1fr}.ticket-confirm-card .form-row{grid-template-columns:1fr 1fr!important}}
@media(max-width:430px){.ticket-confirm-card{padding-left:16px!important;padding-right:16px!important}.ticket-confirm-card .card-head{align-items:flex-start}.ticket-confirm-card .badge{font-size:9px}.pretty-file-box,.ticket-leg-picker{min-height:70px}.ticket-section-title{margin-top:14px}.ticket-confirm-card .btn.wide{min-height:48px;border-radius:18px}}

/* V3.6.17 Date/time mobile layout fix */
.ticket-confirm-card,
.hotel-confirm-card{
  overflow:hidden!important;
}
.ticket-confirm-card .form-row,
.hotel-confirm-card .form-row,
.ticket-time-row{
  grid-template-columns:1fr!important;
  gap:10px!important;
}
.ticket-confirm-card .field,
.hotel-confirm-card .field{
  min-width:0!important;
  width:100%!important;
}
.ticket-confirm-card .field input,
.ticket-confirm-card .field textarea,
.hotel-confirm-card .field input,
.hotel-confirm-card .field textarea{
  max-width:100%!important;
  width:100%!important;
  min-width:0!important;
}
.ticket-confirm-card .plain-datetime,
.hotel-confirm-card .plain-datetime{
  appearance:none!important;
  -webkit-appearance:none!important;
  background:#fff!important;
  font-size:15px!important;
  line-height:1.35!important;
  min-height:50px!important;
  padding:12px 14px!important;
  border-radius:18px!important;
  letter-spacing:0!important;
}
.ticket-confirm-card .plain-datetime::placeholder,
.hotel-confirm-card .plain-datetime::placeholder{
  color:#8fa0b5!important;
  font-weight:750!important;
}
.ticket-auto-note{
  margin:10px 0!important;
}
@media(min-width:640px){
  .ticket-confirm-card .form-row,
  .hotel-confirm-card .form-row,
  .ticket-time-row{
    grid-template-columns:1fr!important;
  }
}


/* V3.6.18 - Keep trip-leg picker inside the mobile app frame */
.ticket-leg-sheet{
  position:fixed!important;
  top:0!important;
  bottom:0!important;
  left:50%!important;
  right:auto!important;
  width:min(430px,100vw)!important;
  max-width:100vw!important;
  transform:translateX(-50%)!important;
  z-index:10001!important;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:center!important;
  padding:0 12px calc(12px + var(--bottom))!important;
  overflow:hidden!important;
}
.ticket-leg-sheet.hidden{display:none!important}
.ticket-leg-sheet-backdrop{
  position:absolute!important;
  inset:0!important;
  background:rgba(15,23,42,.48)!important;
  backdrop-filter:blur(3px)!important;
}
.ticket-leg-sheet-card{
  position:relative!important;
  z-index:1!important;
  width:100%!important;
  max-width:406px!important;
  max-height:min(72vh,520px)!important;
  overflow:auto!important;
  border-radius:26px 26px 18px 18px!important;
  padding:10px 14px 16px!important;
  box-shadow:0 -18px 44px rgba(15,34,58,.24)!important;
}
.ticket-leg-option{
  grid-template-columns:34px minmax(0,1fr)!important;
  padding:11px!important;
}
.ticket-leg-option strong,.ticket-leg-option small{
  max-width:100%!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}
@media(max-width:460px){
  .ticket-leg-sheet{width:100vw!important;padding-left:10px!important;padding-right:10px!important}
  .ticket-leg-sheet-card{max-width:100%!important}
}


/* V3.7.3 mobile layout + capture fixes */
html,body{width:100%;max-width:100%;overflow-x:hidden!important;}
.phone-frame,.main,.panel,.card,.tool-hero,.ticket-confirm-card,.hotel-confirm-card{max-width:100%!important;overflow-x:hidden!important;}
.main{padding-left:14px!important;padding-right:14px!important;}
.card{min-width:0!important;}
.form-row,.ticket-picker-grid,.memory-upload-grid,.packing-actions,.execution-quick-actions{min-width:0!important;max-width:100%!important;}
.field,.field input,.field select,.field textarea,.pretty-file-box,.ticket-leg-picker{min-width:0!important;max-width:100%!important;}
.ticket-confirm-card,.hotel-confirm-card{padding-left:16px!important;padding-right:16px!important;}
.ticket-confirm-card .form-row,.hotel-confirm-card .form-row{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;}
.ticket-picker-grid{display:grid!important;grid-template-columns:1fr!important;gap:12px!important;}
.ticket-leg-picker{display:grid!important;grid-template-columns:1fr!important;gap:4px!important;white-space:normal!important;text-align:left!important;line-height:1.25!important;overflow:hidden!important;}
.ticket-leg-picker span,.ticket-leg-picker strong,.ticket-leg-picker small{display:block!important;max-width:100%!important;white-space:normal!important;overflow-wrap:anywhere!important;}
.ticket-leg-picker span{font-size:10px!important;text-transform:uppercase;letter-spacing:.04em;color:#64748b!important;}
.ticket-leg-picker strong{font-size:15px!important;color:#073f84!important;}
.pretty-file-box{display:grid!important;gap:4px!important;overflow:hidden!important;}
.pretty-file-box span,.pretty-file-box small{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;}
.ticket-leg-sheet{position:fixed!important;left:0!important;right:0!important;top:0!important;bottom:0!important;width:100%!important;max-width:100%!important;overflow:hidden!important;padding:0 10px!important;}
.ticket-leg-sheet-card{width:100%!important;max-width:430px!important;margin:0 auto!important;max-height:74vh!important;}
.ticket-leg-option{grid-template-columns:34px minmax(0,1fr)!important;max-width:100%!important;overflow:hidden!important;}
.ticket-leg-option strong,.ticket-leg-option small{max-width:100%!important;overflow-wrap:anywhere!important;}
.step-cities-active .city-floating-actions,.city-floating-actions{position:fixed!important;left:50%!important;right:auto!important;transform:translateX(-50%)!important;bottom:calc(78px + env(safe-area-inset-bottom,0px))!important;width:min(398px,calc(100vw - 28px))!important;z-index:4000!important;margin:0!important;background:rgba(255,255,255,.96)!important;border:1px solid #e2edf5!important;border-radius:22px!important;padding:10px!important;box-shadow:0 18px 50px rgba(15,34,58,.22)!important;display:grid!important;grid-template-columns:minmax(82px,.55fr) minmax(0,1.45fr)!important;gap:10px!important;}
.city-floating-actions .btn{min-height:46px!important;border-radius:18px!important;padding:10px 12px!important;}
.step-cities-active .wizard-step[data-step="3"]{padding-bottom:160px!important;}
.native-camera-action-row{margin-top:10px;display:flex;gap:10px;align-items:center;flex-wrap:wrap;max-width:100%;}
.native-camera-btn{min-height:42px;padding:10px 14px;border-radius:16px;font-weight:850;white-space:nowrap;}
.capture-available-note{display:block;margin-top:6px;color:#64748b;font-size:11px;font-weight:750;}
@media(max-width:640px){.native-camera-action-row .native-camera-btn{width:100%;justify-content:center}.execution-quick-actions{grid-template-columns:1fr!important}.ticket-confirm-card,.hotel-confirm-card{border-radius:20px!important}.ticket-confirm-card .btn,.hotel-confirm-card .btn{max-width:100%!important}}


/* v3.7.4 mobile stability, AI loading, fast visa and travel tools */
html,body{max-width:100%;overflow-x:hidden}.phone-frame,.main,.panel,.card,.field,.form-row,.ticket-confirm-card,.ticket-mobile-card{max-width:100%;min-width:0;overflow-wrap:anywhere}.panel.active{overflow-x:hidden}.ticket-picker-grid,.ticket-section-title,.ticket-time-row{max-width:100%;min-width:0}.ticket-leg-field,.ticket-file-field,.pretty-file-box,.trip-leg-picker{max-width:100%;min-width:0}.trip-leg-picker{width:100%;display:block;text-align:left;white-space:normal;overflow:hidden}.trip-leg-picker strong,.trip-leg-picker span,.trip-leg-picker small{display:block;max-width:100%;white-space:normal;overflow:hidden;text-overflow:ellipsis}.file-input-hidden{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}.ticket-confirm-card .form-row,.hotel-confirm-card .form-row{grid-template-columns:1fr!important}.ticket-confirm-card input,.ticket-confirm-card textarea,.ticket-confirm-card select{min-width:0;width:100%}.city-floating-actions{position:sticky;bottom:calc(74px + var(--bottom));z-index:50;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);border:1px solid #e5edf5;border-radius:22px;padding:10px;box-shadow:0 16px 34px rgba(15,34,58,.13);margin:12px 0}.destination-screen{padding-bottom:105px}.city-grid.loading:after{content:'Filtering destinations locally…';display:block;grid-column:1/-1;text-align:center;color:#64748b;font-size:12px;font-weight:850;padding:10px}.flight-loading-overlay{position:fixed;inset:0;z-index:5000;display:none;place-items:center;background:rgba(15,23,42,.42);backdrop-filter:blur(5px);padding:18px}.flight-loading-overlay.show{display:grid}.flight-loading-card{width:min(350px,92vw);background:#fff;border-radius:26px;padding:24px 20px;text-align:center;box-shadow:0 28px 80px rgba(15,34,58,.28);border:1px solid #e6edf5}.flight-loading-card h3{margin:12px 0 6px;color:#0f2542}.flight-loading-card p{margin:0;color:#64748b;font-weight:750;line-height:1.45;font-size:13px}.flight-route-loader{height:46px;position:relative;margin:0 auto;width:230px}.flight-route-loader:before{content:'';position:absolute;left:16px;right:16px;top:22px;border-top:3px dashed #09a7b5}.flight-route-loader span{position:absolute;left:10px;top:15px;width:14px;height:14px;border-radius:50%;background:#078b98;box-shadow:196px 0 0 #078b98}.flight-route-loader i{position:absolute;left:20px;top:5px;font-style:normal;font-size:26px;color:#064a9a;animation:flyLoad 1.45s ease-in-out infinite}@keyframes flyLoad{0%{transform:translateX(0) rotate(8deg)}50%{transform:translateX(165px) translateY(-8px) rotate(8deg)}100%{transform:translateX(0) rotate(8deg)}}.tools-hero{background:linear-gradient(145deg,#075985,#0891b2);color:#fff}.tools-grid{display:grid;gap:12px}.tool-card .form-row.three-col{grid-template-columns:1fr 1fr 1fr}.tool-result strong{display:block;margin-bottom:5px;color:#0b4f9d}.tool-result p{font-size:18px;margin:6px 0;color:#10233b;font-weight:900}.tool-result small{display:block;color:#64748b;font-size:11px;font-weight:750}.tool-list{margin:8px 0 0;padding-left:18px;color:#26364d;font-size:13px;font-weight:750;line-height:1.55}.tool-emergency-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:8px}.tool-emergency-grid span{background:#fff;border:1px solid #dce7ef;border-radius:12px;padding:8px;font-size:11px;font-weight:850;color:#0f2542}@media(max-width:430px){.tool-card .form-row.three-col{grid-template-columns:1fr!important}.tools-grid{gap:10px}.flight-loading-card{width:calc(100vw - 34px)}}


/* v3.7.5 Tools hub redesign */
.tools-intro-card{display:flex;align-items:center;justify-content:space-between;gap:12px;background:linear-gradient(135deg,#f0fdfa,#eff6ff);border:1px solid #dbeafe}.trip-kicker{display:inline-block;font-size:10px;font-weight:900;letter-spacing:.08em;color:#0b4f9d;margin-bottom:6px}.tools-intro-card h3{margin:0 0 6px}.tools-intro-card p{margin:0;color:#5f6f83;font-weight:700;font-size:13px;line-height:1.5}.tools-badge{display:inline-flex;align-items:center;justify-content:center;min-width:68px;height:68px;border-radius:22px;background:linear-gradient(135deg,#0ea5e9,#14b8a6);color:#fff;font-size:14px;font-weight:900;box-shadow:0 16px 30px rgba(14,165,233,.22)}
.tool-hub-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.tool-hub-card{border:1px solid #e3ebf3;border-radius:22px;padding:16px 14px;display:grid;grid-template-columns:52px 1fr auto;align-items:center;gap:12px;background:#fff;color:#13233a;box-shadow:0 12px 28px rgba(15,34,58,.08)}.tool-hub-card strong{display:block;font-size:15px;margin-bottom:3px}.tool-hub-card small{display:block;color:#66778b;font-size:12px;font-weight:750;line-height:1.35}.tool-hub-card b{font-size:20px;color:#0b4f9d}.tool-hub-icon{width:50px;height:50px;border-radius:18px;display:grid;place-items:center;color:#fff;box-shadow:0 14px 24px rgba(15,34,58,.12)}.gradient-cyan .tool-hub-icon{background:linear-gradient(135deg,#06b6d4,#0284c7)}.gradient-violet .tool-hub-icon{background:linear-gradient(135deg,#8b5cf6,#6366f1)}.gradient-sun .tool-hub-icon{background:linear-gradient(135deg,#f59e0b,#f97316)}.gradient-coral .tool-hub-icon{background:linear-gradient(135deg,#fb7185,#ef4444)}.gradient-green .tool-hub-icon{background:linear-gradient(135deg,#22c55e,#10b981)}.gradient-blue .tool-hub-icon{background:linear-gradient(135deg,#3b82f6,#0ea5e9)}.tool-hub-card.gradient-cyan{background:linear-gradient(180deg,#ffffff,#effcff)}.tool-hub-card.gradient-violet{background:linear-gradient(180deg,#ffffff,#f6f3ff)}.tool-hub-card.gradient-sun{background:linear-gradient(180deg,#ffffff,#fff8ea)}.tool-hub-card.gradient-coral{background:linear-gradient(180deg,#ffffff,#fff1f2)}.tool-hub-card.gradient-green{background:linear-gradient(180deg,#ffffff,#effdf5)}.tool-hub-card.gradient-blue{background:linear-gradient(180deg,#ffffff,#eff6ff)}
.currency-hero{background:linear-gradient(135deg,#0f766e,#14b8a6)}.translator-hero{background:linear-gradient(135deg,#6d28d9,#8b5cf6)}.attractions-hero{background:linear-gradient(135deg,#f59e0b,#fb7185)}.embassy-hero{background:linear-gradient(135deg,#ef4444,#f97316)}.transport-hero{background:linear-gradient(135deg,#0891b2,#0ea5e9)}.time-hero{background:linear-gradient(135deg,#2563eb,#6366f1)}
.tool-detail-card{box-shadow:0 16px 34px rgba(15,34,58,.08)}.tool-detail-card .card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.tool-result.large{padding:16px 16px 15px;border-radius:18px}.tool-result.large strong{font-size:14px}.tool-result.large p{font-size:20px;line-height:1.25}.feature-list{display:grid;gap:10px;padding-left:0;list-style:none}.feature-list li{position:relative;padding:12px 14px 12px 42px;border:1px solid #dce7ef;border-radius:16px;background:#fff;box-shadow:0 8px 18px rgba(15,34,58,.05)}.feature-list li:before{content:'✦';position:absolute;left:14px;top:11px;color:#0891b2;font-size:16px;font-weight:900}.tool-emergency-grid{margin-top:12px}.tool-emergency-grid span{background:rgba(255,255,255,.92)}
@media(max-width:430px){.tool-hub-grid{grid-template-columns:1fr}.tool-hub-card{grid-template-columns:48px 1fr auto}.tools-intro-card{flex-direction:column;align-items:flex-start}.tools-badge{width:64px;height:64px;min-width:64px}}

/* v3.7.6 Live travel tools */
.tool-map{height:260px;border-radius:24px;overflow:hidden;border:1px solid #dbe7f0;background:#eaf4f8;margin:12px 0;box-shadow:0 14px 30px rgba(15,34,58,.08)}
.place-result-grid,.transport-grid,.world-clock-grid{display:grid;gap:12px;margin-top:12px}.place-card,.transport-card,.world-clock-card{background:#fff;border:1px solid #e0e9f2;border-radius:22px;overflow:hidden;box-shadow:0 14px 32px rgba(15,34,58,.08)}.place-photo{height:148px;background:linear-gradient(135deg,#dbeafe,#a7f3d0);display:grid;place-items:center;color:#0b4f9d;font-size:34px}.place-photo img{width:100%;height:100%;object-fit:cover;display:block}.place-body,.transport-card{padding:14px}.place-body strong,.transport-card h3{display:block;font-size:16px;color:#10233b;margin:0 0 6px}.place-body small,.transport-card p{display:block;color:#66778b;font-size:12px;font-weight:700;line-height:1.45;margin:0 0 9px}.place-meta{display:flex;gap:7px;flex-wrap:wrap;margin:8px 0}.place-meta span{background:#f1f7fb;border:1px solid #dce8f0;color:#213047;border-radius:999px;padding:6px 9px;font-size:11px;font-weight:850}.transport-card{display:grid;gap:10px}.transport-card strong{color:#0f766e;font-size:12px}.world-clock-card{position:relative;padding:16px;background:radial-gradient(circle at 90% 0,rgba(14,165,233,.16),transparent 30%),linear-gradient(135deg,#fff,#f5fbff)}.world-clock-card button{position:absolute;right:10px;top:10px;width:28px;height:28px;border:0;border-radius:12px;background:#eef2f7;color:#334155;font-weight:900}.world-clock-card span{display:block;font-size:11px;color:#64748b;font-weight:850;text-transform:uppercase;letter-spacing:.06em}.world-clock-card strong{display:block;color:#0b4f9d;font-size:18px;margin:4px 0}.world-clock-card b{display:block;font-size:34px;color:#10233b;letter-spacing:-.04em}.world-clock-card small{display:block;color:#64748b;font-weight:750}.radius-field input{width:100%;accent-color:#0891b2}.embassy-card{background:linear-gradient(180deg,#fff,#fff8f8)}.live-tool-loading{position:relative}.live-tool-loading:after{content:'✈';position:absolute;right:16px;top:16px;animation:flyLive 1.2s ease-in-out infinite;color:#0b4f9d}@keyframes flyLive{0%{transform:translateX(0) rotate(12deg);opacity:.5}50%{transform:translateX(-18px) translateY(-4px) rotate(12deg);opacity:1}100%{transform:translateX(0) rotate(12deg);opacity:.5}}
@media(min-width:700px){.place-result-grid,.transport-grid,.world-clock-grid{grid-template-columns:1fr 1fr}.tool-map{height:320px}}
@media(max-width:430px){.tool-map{height:240px}.place-photo{height:132px}.world-clock-card b{font-size:30px}.place-card .actions.split,.transport-card .actions.split{grid-template-columns:1fr 1fr!important}}

/* v3.7.7 live tools fix */
.city-suggest-list{display:grid;gap:8px;margin-top:10px}.city-suggest-list button{border:1px solid #dce7ef;background:#fff;border-radius:14px;padding:10px 12px;text-align:left;display:block;box-shadow:0 8px 18px rgba(15,34,58,.05)}.city-suggest-list strong{display:block;color:#0f2542;font-size:13px}.city-suggest-list small{display:block;color:#64748b;font-size:11px;font-weight:750;margin-top:2px}.suggestion-loading,.suggestion-empty{color:#64748b;font-weight:850}.tools-debug-link{display:block;margin-top:8px;font-size:12px;color:#0b4f9d;font-weight:850}.map-canvas,.places-map,#attrMap,#embassyMap{background:#eef6ff;border:1px solid #dce7ef;border-radius:20px;min-height:280px;overflow:hidden}.gm-style img{max-width:none!important}


/* v3.8.0 planning, dashboard and itinerary upgrades */
.traveller-card .setup-icon{background:linear-gradient(135deg,#14b8a6,#0ea5e9)}
.dashboard-custom-card{margin:12px 0;background:linear-gradient(180deg,#ffffff,#f8fdff);border:1px solid #dbeafe}
.dashboard-custom-card .card-head{align-items:flex-start}.dashboard-custom-card .card-head small{display:block;color:#64748b;font-size:11px;font-weight:700;margin-top:2px}
.pinned-tool-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;min-height:66px}
.pinned-tool-row.drag-over{outline:2px dashed #08a8b6;outline-offset:4px;border-radius:18px;background:#f0fdfa}
.pinned-tool{position:relative;border:1px solid #e2eaf4;border-radius:18px;background:#fff;min-height:86px;padding:11px 8px;display:grid;place-items:center;text-align:center;gap:3px;box-shadow:0 8px 20px rgba(15,34,58,.06);color:#0f2542}
.pinned-tool span{font-size:23px}.pinned-tool strong{font-size:12px}.pinned-tool small{font-size:10px;color:#64748b;font-weight:750}.pinned-tool em{position:absolute;right:5px;top:5px;width:20px;height:20px;border-radius:999px;background:#eef2f7;color:#334155;font-style:normal;display:grid;place-items:center;font-size:13px}
.pinned-tool.green{background:linear-gradient(180deg,#fff,#ecfdf5)}.pinned-tool.blue{background:linear-gradient(180deg,#fff,#eff6ff)}.pinned-tool.amber{background:linear-gradient(180deg,#fff,#fff7ed)}.pinned-tool.cyan{background:linear-gradient(180deg,#fff,#ecfeff)}.pinned-tool.coral{background:linear-gradient(180deg,#fff,#fff1f2)}.pinned-tool.purple{background:linear-gradient(180deg,#fff,#f5f3ff)}
.dashboard-drop-hint{margin-top:10px}.pin-chip{position:absolute;right:10px;top:10px;z-index:3;border-radius:999px;padding:4px 8px;background:rgba(255,255,255,.92);color:#0b4f9d;font-style:normal;font-size:10px;font-weight:900;border:1px solid #dbeafe;box-shadow:0 5px 12px rgba(15,34,58,.08)}
.tool-hub-card{position:relative}.enhanced-day-card{border-left:5px solid #0ea5e9;background:linear-gradient(180deg,#fff,#f8fdff)}
.day-slot-grid{display:grid;gap:9px;margin:10px 0}.day-slot-grid div{border:1px solid #e2eaf4;background:#fff;border-radius:14px;padding:10px 12px}.day-slot-grid b{display:block;color:#0b4f9d;font-size:12px;margin-bottom:4px}.day-slot-grid span{font-size:12px;line-height:1.45;color:#334155;font-weight:700}
.day-extra-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:10px 0}.day-extra-grid>div{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;padding:10px}.day-extra-grid strong{font-size:12px;color:#0f2542}.day-extra-grid ul{margin:6px 0 0;padding-left:17px}.day-extra-grid li{font-size:11px;line-height:1.45;color:#475569;font-weight:700;margin:4px 0}
.enhanced-hotel-area{margin:10px 0;padding:12px;border:1px solid #dbeafe;border-radius:18px;background:linear-gradient(180deg,#fff,#f8fbff)}
.hotel-rec-grid{display:grid;gap:10px}.hotel-rec-grid>div{border:1px solid #e5edf5;border-radius:14px;padding:10px;background:#fff}.hotel-rec-grid strong{font-size:12px;color:#0b4f9d}.hotel-rec-grid ul{margin:6px 0;padding-left:17px}.hotel-rec-grid li{font-size:12px;line-height:1.45;color:#334155;font-weight:700}.hotel-rec-grid small{display:block;color:#64748b;font-weight:800;margin-top:6px}
@media(max-width:430px){.pinned-tool-row{grid-template-columns:repeat(2,1fr)}.day-extra-grid{grid-template-columns:1fr}}


/* v3.8.1 trip preference, clickable progress and richer planning UX */
.trip-preference-card{margin-top:12px;background:linear-gradient(180deg,#fff,#f8fcff);border:1px solid #dbeafe}
.trip-preference-card h3{margin:8px 0 10px;font-size:15px}
.trip-purpose-grid,.interest-chip-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:12px}
.purpose-chip,.interest-chip{border:1px solid #dce7ef;background:#fff;color:#13233a;border-radius:16px;min-height:42px;padding:9px 10px;font-weight:850;box-shadow:0 6px 14px rgba(15,34,58,.04)}
.purpose-chip.active,.interest-chip.active{background:linear-gradient(135deg,#078b98,#14b8a6);color:#fff;border-color:transparent;box-shadow:0 12px 24px rgba(8,139,152,.2)}
.planning-progress [data-progress-step]{cursor:pointer;user-select:none}
.planning-progress [data-progress-step]:after{content:'↗';font-size:9px;margin-left:4px;opacity:.5}
.companion-quick-card{cursor:pointer;background:linear-gradient(180deg,#fff,#f5fbff);border-color:#dbeafe}
.companion-quick-card:hover{box-shadow:0 16px 34px rgba(8,78,157,.10)}
.day-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.focus-line{margin:6px 0 10px;color:#0b4f9d;font-weight:800}
.compact-review-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.breakdown .bar-row strong{font-size:11px}
@media(max-width:430px){.trip-purpose-grid,.interest-chip-grid{grid-template-columns:1fr}.compact-review-actions{grid-template-columns:1fr}}


/* V3.8.2 contextual planner */
.contextual-day-card{border:1px solid #d8eaf7;background:linear-gradient(180deg,#fff,#f8fcff)}.day-actions{display:flex;gap:8px;flex-wrap:wrap}.mini-link.highlight,.mate-link{background:#e8f7ff;color:#075985;border-radius:999px;padding:6px 10px;text-decoration:none}.mate-link,.mini-link.mate-link{background:linear-gradient(135deg,#0ea5e9,#8b5cf6);color:#fff!important}.place-decision-section{margin-top:12px}.place-decision-section h4{margin:0 0 8px;color:#0f2542}.decision-place-card{display:grid;grid-template-columns:34px 1fr;gap:10px;border:1px solid #e2edf5;border-radius:18px;background:#fff;padding:11px;margin:8px 0;box-shadow:0 8px 18px rgba(15,34,58,.05)}.place-num{width:30px;height:30px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,#08a8b6,#0b4f9d);color:#fff;font-weight:900}.place-title{display:flex;align-items:center;justify-content:space-between;gap:8px}.place-title strong{font-size:14px}.place-title span{font-size:11px;color:#0b4f9d;font-weight:900}.decision-place-card small{display:block;color:#64748b;font-weight:750;margin:3px 0}.decision-place-card p{margin:6px 0;color:#334155;font-size:12px;line-height:1.45}.decision-place-card em{display:block;color:#0f766e;font-size:11px;font-style:normal;font-weight:800}.compact-actions{margin-top:8px}.mini-pill{border:0;border-radius:999px;background:#eef7ff;color:#075985;padding:6px 9px;font-size:11px;font-weight:900;text-decoration:none}.mini-pill.ai{background:#f3e8ff;color:#6d28d9}.day-extra-grid.contextual{grid-template-columns:1fr;gap:12px}.stay-mini{background:#f8fbfd;border:1px solid #e2edf5;border-radius:14px;padding:9px;margin-top:7px}.stay-mini b{display:block;font-size:12px}.stay-mini small{display:block;color:#64748b;font-weight:700}.replan-sheet{position:fixed;inset:0;z-index:6000;display:none;place-items:end center;background:rgba(15,23,42,.48);backdrop-filter:blur(4px);padding:18px}.replan-sheet.show{display:grid}.replan-card{width:min(430px,100%);background:#fff;border-radius:26px;padding:20px;box-shadow:0 30px 90px rgba(0,0,0,.25);position:relative}.replan-card h3{margin:0 0 6px}.replan-card p{margin:0 0 14px;color:#64748b;font-weight:700}.replan-close{position:absolute;right:14px;top:12px;border:0;background:#f1f5f9;border-radius:50%;width:34px;height:34px;font-size:20px}.replan-options{display:grid;grid-template-columns:1fr 1fr;gap:9px}.replan-options button{border:1px solid #dbeafe;background:linear-gradient(180deg,#fff,#f8fbff);border-radius:16px;padding:12px 10px;text-align:left;font-weight:900;color:#0f2542}.msg.context{background:#eefbff!important;color:#075985!important;border:1px solid #bae6fd}.detailed-safety-card{background:linear-gradient(180deg,#fff,#fff7f7)}.safety-columns{display:grid;grid-template-columns:1fr;gap:8px;margin:10px 0}.safety-columns div{background:#fff;border:1px solid #f0e2e2;border-radius:14px;padding:10px}.safety-columns b{display:block;color:#991b1b;margin-bottom:6px}.safety-columns ul{margin:0;padding-left:18px;color:#334155;font-size:12px;line-height:1.5}.packing-group.advisory .packing-advice-item{border:1px solid #e2edf5;background:#fff;border-radius:14px;padding:10px;margin:7px 0;font-size:12px;font-weight:750;color:#334155}.companion-quick-card{background:linear-gradient(135deg,#eef9ff,#f5f3ff);border-color:#dbeafe}.companion-quick-card .btn.primary{background:linear-gradient(135deg,#0ea5e9,#8b5cf6)}@media(min-width:720px){.day-extra-grid.contextual{grid-template-columns:1fr 1fr}.safety-columns{grid-template-columns:repeat(3,1fr)}}@media(max-width:430px){.replan-options{grid-template-columns:1fr}.decision-place-card{grid-template-columns:30px 1fr}.place-title{align-items:flex-start;flex-direction:column;gap:2px}}


/* Dream Trip 2.0 personalized UI polish - conservative visual-only patch */
:root{--dream-ink:#12243a;--dream-muted:#64748b;--dream-soft:#f8fbff;}
body{font-weight:400;letter-spacing:-.01em;color:var(--dream-ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;}
.card,.trip-preference-card,.notice,.field input,.field select,.field textarea{font-weight:400;}
h1,h2,h3,h4,.screen-head h3,.sub-header h3,.card h3,.trip-preference-card h3{font-weight:650!important;letter-spacing:-.025em;color:#0b1f36;}
.trip-kicker{font-weight:650!important;letter-spacing:.04em;color:#075985;}
.personal-plan-note{margin:7px 0 16px;color:#5b6b7f;font-size:13px;line-height:1.55;font-weight:450;background:linear-gradient(135deg,#f0fdfa,#eff6ff);border:1px solid #d7f0f3;border-radius:16px;padding:10px 12px;}
.purpose-chip,.interest-chip,.style-btn,.dash-card,.btn{font-weight:650!important;letter-spacing:-.01em;}
.purpose-chip,.interest-chip{min-height:50px;border-radius:18px;box-shadow:0 7px 18px rgba(15,34,58,.045);}
.purpose-chip.active,.interest-chip.active{background:linear-gradient(135deg,#0f9a9d,#18b6a9)!important;color:#fff;box-shadow:0 14px 28px rgba(15,154,157,.18);}
.trip-preference-card{background:linear-gradient(180deg,#ffffff,#fbfdff);border-color:#dbeafe;box-shadow:0 18px 42px rgba(15,34,58,.06);}
.trip-preference-card .notice{font-size:12.5px;font-weight:450;color:#087282;background:#eefcff;border-color:#b7edf3;}
.notice{font-weight:450!important;line-height:1.55;}
.field label{font-weight:650!important;color:#213247;}
.field input,.field select,.field textarea{font-weight:500!important;color:#10243c;}
.mini-link,.badge{font-weight:650!important;}
.hero-copy p,.live-trip-head p,.execution-hero-card p,.trip-row p,.card p,.mini{font-weight:400!important;}
.dashboard-grid .dash-card strong{font-weight:650!important;}
.dashboard-grid .dash-card small{font-weight:450!important;}
@media(max-width:430px){.trip-preference-card h3{font-size:18px}.personal-plan-note{font-size:12.5px}}


/* V3.8.7 AI Trip Health Score Action Engine */
.health-message{margin:8px 0 0;color:#516173;font-weight:750;line-height:1.35}.health-section-title{font-size:12px;font-weight:950;text-transform:uppercase;letter-spacing:.08em;color:#078b98;margin:14px 0 8px}.health-action-list{display:grid;gap:8px}.health-action-row{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:16px;background:#fff;padding:10px}.health-action-row strong{display:block;font-size:13px;color:#10233b}.health-action-row small{display:block;margin-top:2px;color:#64748b;line-height:1.3}.health-action-row.done{background:#f7fffb;border-color:#c8f7df}.health-impact{font-weight:950;color:#078b98;white-space:nowrap}.health-impact.ok{color:#10b981}.health-completed{margin-top:10px;border:1px solid var(--line);border-radius:16px;background:#fbfdff;padding:10px}.health-completed summary{cursor:pointer;font-weight:950;color:#334155;margin-bottom:8px}@media(max-width:520px){.health-action-row{grid-template-columns:1fr;align-items:start}.health-action-row .mini-link,.health-action-row .badge{justify-self:start}.health-impact{justify-self:start}}


/* V3.8.8 Trip Readiness Lifecycle */
.lifecycle-chips{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0 12px}.lifecycle-chips span{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:999px;background:#fff;color:#64748b;font-size:11px;font-weight:850;padding:5px 8px}.lifecycle-chips span b{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#e2e8f0;color:#334155;font-size:10px}.lifecycle-chips span.done{border-color:#bbf7d0;background:#f0fdf4;color:#047857}.lifecycle-chips span.done b{background:#10b981;color:white}.lifecycle-chips span.active{border-color:#99f6e4;background:#ecfeff;color:#047887;box-shadow:0 8px 22px rgba(7,139,152,.08)}.lifecycle-chips span.active b{background:#078b98;color:white}.trip-row.phase-readiness{border-color:#fed7aa;background:linear-gradient(180deg,#fff7ed,#fff)}.trip-row.phase-ready{border-color:#bbf7d0;background:linear-gradient(180deg,#f0fdf4,#fff)}.trip-row.phase-ongoing{border-color:#bae6fd;background:linear-gradient(180deg,#eff6ff,#fff)}.readiness-hero-card{border:1px solid #a5f3fc;background:linear-gradient(135deg,#ecfeff,#fff7ed)}.readiness-score-card{border-color:#ccfbf1}.readiness-action-list{display:grid;gap:8px}.readiness-action-row{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:14px;padding:10px;background:#fff}.readiness-action-row strong{display:block;color:#10233b;font-size:13px}.readiness-action-row small{display:block;color:#64748b;line-height:1.3;margin-top:2px}.readiness-action-row span{font-weight:950;color:#078b98;white-space:nowrap}.readiness-action-row em{font-size:12px;font-style:normal;color:#ef4444;font-weight:850}@media(max-width:560px){.readiness-action-row{grid-template-columns:1fr}.readiness-action-row .mini-link{justify-self:start}.execution-quick-actions{display:grid}.execution-quick-actions .btn{width:100%}}


/* V3.8.9 Readiness + Documents UX Sync */
.trip-actions{position:sticky;bottom:86px;z-index:900;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);border:1px solid rgba(220,229,238,.85);border-radius:22px;padding:8px;box-shadow:0 14px 30px rgba(15,34,58,.12)}
.trip-row.pinned-trip{border-color:#a7f3d0;background:linear-gradient(180deg,#ffffff,#f2fff8)}
.pinned-trip-dashboard{background:#fff;border:1px solid var(--line);border-radius:22px;padding:12px;margin:0 0 12px;box-shadow:var(--shadow2)}
.pinned-trip-mini{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-top:1px solid #eef2f7}.pinned-trip-mini:first-of-type{border-top:0}.pinned-trip-mini strong{display:block;font-size:13px}.pinned-trip-mini small{display:block;color:#64748b;font-size:11px;font-weight:800}.readiness-action-row.done{background:#f0fdf4;border-color:#bbf7d0}.readiness-action-row .badge{white-space:nowrap}.health-action-row .badge{white-space:nowrap}.leg-time-row.v389-leg em{display:flex!important;flex-wrap:wrap;gap:5px;margin-top:5px}.leg-status{font-style:normal;border-radius:999px;padding:3px 7px;font-size:10px;font-weight:950;background:#eef2f7;color:#475569}.leg-status.ok{background:#e8fbef;color:#087a42}.leg-status.warn{background:#fff7df;color:#945d0a}.leg-status.danger{background:#ffe8e8;color:#b42318}.leg-status.info{background:#eefbfc;color:#087282}.leg-status-line{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.trip-doc-access-card .form-row{margin-top:8px}.leg-related-documents h4,.leg-related-documents h5{margin:8px 0 6px;color:#073f84}.leg-doc-columns{display:grid;grid-template-columns:1fr;gap:10px}.leg-doc-item{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--line);background:#fff;border-radius:14px;padding:10px;margin:6px 0}.leg-doc-item b{display:block;font-size:12px}.leg-doc-item small{display:block;color:#64748b;font-size:10px;font-weight:750}.leg-doc-item a{font-size:11px;font-weight:950;color:#078b98;text-decoration:none}.leg-doc-status-strip{display:flex;gap:6px;flex-wrap:wrap;margin:6px 0 10px}.doc-vault-group{margin-top:12px}.doc-vault-group h4{margin:0 0 8px;color:#073f84;font-size:14px}.packing-group.advisory .packing-advice-item{padding:8px 10px;border:1px dashed #dbe7ef;border-radius:12px;margin:6px 0;background:#f8fbfd;font-size:12px;font-weight:800;color:#40526a}@media(min-width:760px){.leg-doc-columns{grid-template-columns:1fr 1fr}.trip-actions{bottom:104px}}


/* V3.9.0 Readiness Centre cleanup */
.readiness-doc-upload-card{border-color:#bff3f7;background:linear-gradient(180deg,#f8feff,#fff)}
.readiness-doc-grid{display:grid;grid-template-columns:1fr;gap:12px;margin-top:8px}
.readiness-doc-box{border:1px solid #e2edf7;border-radius:18px;background:#fff;padding:12px;box-shadow:0 8px 18px rgba(15,34,58,.04)}
.readiness-doc-box h4{margin:0 0 5px;color:#073f84;font-size:14px}
.readiness-floating-save{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(84px + env(safe-area-inset-bottom,0px));width:min(390px,calc(100vw - 28px));z-index:4600;border-radius:22px;box-shadow:0 18px 42px rgba(8,139,152,.30)}
#execution{padding-bottom:140px}.readiness-orb,.mini-ready-ring{background:conic-gradient(#10b981 calc(var(--ready,0)*1%),#dbeafe 0)!important;box-shadow:inset 0 0 0 7px #fff,0 12px 24px rgba(15,34,58,.10)!important}.readiness-orb strong,.mini-ready-ring strong{position:relative;z-index:2}.execution-meter.readiness-orb,.live-score.readiness-orb{border-radius:50%;display:grid;place-items:center;text-align:center;color:#073f84}.execution-meter.readiness-orb{width:92px;height:92px}.execution-meter.readiness-orb span,.live-score.readiness-orb span{font-size:9px;font-weight:950;text-transform:uppercase;margin-top:-20px}.v390-dashboard-card{padding:14px!important}.v390-dashboard-card .live-trip-head{align-items:center}.dashboard-next-action{border:1px solid #e6f0f7;background:#f8fbfd;border-radius:16px;padding:10px 12px;margin:10px 0}.dashboard-next-action small{display:block;color:#64748b;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.03em}.dashboard-next-action b{display:block;color:#0f2542;font-size:13px;margin-top:2px}.compact-actions{gap:8px;flex-wrap:wrap}.compact-actions .btn{min-height:38px;border-radius:14px;padding:8px 12px}.pinned-trip-dashboard.v390-compact{padding:10px;background:linear-gradient(180deg,#ffffff,#f8fdff)}.pinned-trip-widget{position:relative;display:grid;grid-template-columns:58px 1fr;gap:10px;align-items:center;border:1px solid #e4eef6;background:#fff;border-radius:18px;padding:10px 38px 10px 10px;margin:8px 0;box-shadow:0 10px 22px rgba(15,34,58,.06);cursor:pointer}.pinned-trip-widget:hover{border-color:#99f6e4}.pinned-close{position:absolute;right:9px;top:9px;width:24px;height:24px;border:0;border-radius:50%;background:#f1f5f9;color:#475569;font-weight:950;line-height:1}.mini-ready-ring{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;color:#06356f}.mini-ready-ring strong{font-size:12px}.pinned-trip-copy b{display:block;font-size:13px;color:#0f2542}.pinned-trip-copy small,.pinned-trip-copy em,.pinned-trip-copy span{display:block;font-size:10.5px;font-weight:800;line-height:1.35}.pinned-trip-copy small{color:#64748b}.pinned-trip-copy em{font-style:normal;color:#0b4f9d}.pinned-trip-copy span{color:#078b98;margin-top:2px}.trip-row .actions .badge{align-self:center}.visa-ready-row{display:none!important}
@media(min-width:760px){.readiness-doc-grid{grid-template-columns:1fr 1fr}.readiness-floating-save{left:auto;right:24px;transform:none;width:300px;bottom:30px}}


/* V3.9.1 — premium readiness + simplified readiness centre */
.ticket-confirm-card,.hotel-confirm-card{display:none!important}
.readiness-accordion{overflow:hidden;border:1px solid #e2edf5;background:linear-gradient(180deg,#ffffff,#f8fcff);box-shadow:0 12px 30px rgba(15,34,58,.06)}
.readiness-accordion>summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:1fr auto 28px;gap:10px;align-items:center;padding:15px 16px;border-radius:inherit}
.readiness-accordion>summary::-webkit-details-marker{display:none}.readiness-accordion>summary strong{display:block;color:#0f2542;font-size:15px}.readiness-accordion>summary small{display:block;color:#6b7c90;font-weight:750;font-size:11.5px;margin-top:3px}.accordion-caret{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#eef8fb;color:#078b98;font-weight:950;transition:.2s}.readiness-accordion[open] .accordion-caret{transform:rotate(180deg)}.accordion-body{border-top:1px solid #edf4f8;padding:14px 16px 16px}.readiness-completed-mini{margin-top:10px;border-top:1px dashed #dbe7ef;padding-top:10px}.readiness-completed-mini h4{margin:0 0 8px;color:#0f2542;font-size:13px}.readiness-doc-box.general-only{max-width:780px}.readiness-doc-box.general-only .wide{margin-top:8px}.travel-leg-card{border-color:#dbeafe;background:linear-gradient(180deg,#ffffff,#f8fbff)}.v391-leg{grid-template-columns:34px 1fr auto!important;align-items:center}.v391-leg strong{white-space:nowrap;color:#078b98}.v391-quick{background:rgba(255,255,255,.86)!important;border-color:#e6f0f7!important}.v391-hero{background:linear-gradient(135deg,#0f766e,#0b4f9d)!important}.premium-score{background:conic-gradient(#14b8a6 var(--p,0%),#e7f5fb 0)!important;box-shadow:inset 0 0 0 8px #fff,0 12px 28px rgba(20,184,166,.18)!important;position:relative;overflow:hidden}.premium-score:before{content:"";position:absolute;inset:10px;border-radius:50%;background:linear-gradient(180deg,#fff,#f3fbff);z-index:0}.premium-score:after{content:"✦";position:absolute;right:12px;top:8px;color:#f59e0b;font-size:12px;z-index:1}.premium-score strong,.premium-score span{position:relative;z-index:2}.execution-meter.premium-score,.live-score.premium-score{border-radius:50%;display:grid;place-items:center;text-align:center;color:#073f84}.execution-meter.premium-score{width:96px;height:96px}.live-score.premium-score{width:72px;height:72px}.execution-meter.premium-score strong{font-size:22px}.live-score.premium-score strong{font-size:16px}.execution-meter.premium-score span,.live-score.premium-score span{font-size:9px;font-weight:950;text-transform:uppercase;margin-top:-18px;color:#0f766e}.v391-pinned{background:linear-gradient(135deg,#ffffff,#f6fbff)!important;border-color:#e6f0f7!important;box-shadow:0 10px 24px rgba(15,34,58,.045)!important}.pinned-trip-strip{display:grid;gap:8px}.pinned-trip-widget.v391-widget{background:linear-gradient(135deg,#ffffff,#f7fffb)!important;border:1px solid #e5f2ef!important;box-shadow:0 8px 18px rgba(15,34,58,.045)!important;padding:10px 36px 10px 10px}.pinned-trip-widget.v391-widget:hover{transform:translateY(-1px);box-shadow:0 12px 26px rgba(15,34,58,.08)!important}.mini-ready-ring.premium-score{width:50px;height:50px;box-shadow:inset 0 0 0 6px #fff,0 8px 16px rgba(20,184,166,.15)!important}.mini-ready-ring.premium-score:before{inset:7px}.mini-ready-ring.premium-score:after{display:none}.v391-dashboard-card{background:linear-gradient(135deg,#ffffff,#f8fdff)!important;border-color:#e6f0f7!important;box-shadow:0 12px 30px rgba(15,34,58,.055)!important;padding:14px!important}.dashboard-next-action.light{background:#ffffff;border-color:#ecf3f8}.leg-inline-form{border:1px solid #e5eef6;background:#fbfdff;border-radius:16px;margin-top:10px;overflow:hidden}.leg-inline-form>summary{cursor:pointer;padding:12px 13px;font-weight:950;color:#0f5f75;background:#f0fbfd}.leg-inline-form>summary::-webkit-details-marker{display:none}.leg-inline-grid{display:grid;grid-template-columns:1fr;gap:10px;padding:12px}.leg-inline-form .wide{margin:0 12px 12px;width:calc(100% - 24px)}.premium-leg-head{background:linear-gradient(135deg,#f0fdfa,#eff6ff);border-radius:18px;padding:12px;margin-bottom:10px}.readiness-floating-save{background:linear-gradient(135deg,#0891b2,#0f766e)!important;color:#fff!important}.leg-detail-section h3{color:#0f2542}.leg-detail-section .notice{margin-top:8px}@media(min-width:760px){.leg-inline-grid{grid-template-columns:1fr 1fr}.v391-pinned .pinned-trip-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.readiness-floating-save{bottom:32px!important}}@media(max-width:520px){.readiness-accordion>summary{grid-template-columns:1fr auto}.accordion-caret{display:none}.v391-leg{grid-template-columns:30px 1fr!important}.v391-leg>strong{display:none}.execution-meter.premium-score{width:78px;height:78px}.live-trip-head{grid-template-columns:1fr 72px!important}}


/* V3.9.2 — Readiness accordion arrows, pinned-only dashboard and safe message layout */
.smart-alerts-card{border-color:#fde7bf!important;background:linear-gradient(180deg,#fffaf2,#fff)!important;overflow:hidden!important}
.smart-alerts-card>summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:1fr auto 30px;gap:10px;align-items:center;padding:15px 16px;border-radius:inherit}
.smart-alerts-card>summary::-webkit-details-marker{display:none}.smart-alerts-card>summary strong{display:block;color:#0f2542;font-size:15px}.smart-alerts-card>summary small{display:block;color:#6b7c90;font-size:11.5px;font-weight:750;margin-top:3px}
.readiness-accordion>summary,.smart-alerts-card>summary{position:relative}.readiness-accordion .accordion-caret,.smart-alerts-card .accordion-caret{display:grid!important;width:28px!important;height:28px!important;border-radius:50%!important;place-items:center!important;background:#eaf8fb!important;color:#078b98!important;font-weight:950!important;font-size:20px!important;line-height:1!important;transform:rotate(0deg)!important;transition:.18s ease!important}.readiness-accordion[open] .accordion-caret,.smart-alerts-card[open] .accordion-caret{transform:rotate(90deg)!important;background:#078b98!important;color:#fff!important}.v392-accordion>summary small:after{content:' · tap to open/close';font-weight:850;color:#078b98}.v392-accordion[open]>summary small:after{content:' · tap to collapse'}
.smart-alert-list{display:grid;gap:8px}.smart-alert-list .smart-alert{margin-bottom:0}.smart-alert .mini-link{white-space:nowrap}
.trip-doc-access-card{margin-top:12px}.panel#execution:not(.execution-live) .trip-doc-access-card{display:none!important}
.v392-pinned-only{background:linear-gradient(135deg,#ffffff,#f8fffb)!important;border:1px solid #e8f2ed!important;border-radius:22px!important;padding:12px!important}.v392-widget{background:linear-gradient(135deg,#ffffff,#fbfffe)!important;border-color:#e4f3ee!important}.dashboard-pin-empty{background:linear-gradient(135deg,#ffffff,#f7fbff)!important;border:1px dashed #cfe6f0!important;box-shadow:0 10px 26px rgba(15,34,58,.05)!important}.dashboard-pin-empty .btn{width:max-content;min-height:38px;border-radius:14px;padding:8px 14px}
.live-trip-dashboard .v391-dashboard-card,.live-trip-dashboard .v390-dashboard-card{display:none!important}
.app-toast{top:calc(42px + env(safe-area-inset-top,0px))!important;bottom:auto!important;z-index:9000!important;transform:translate(-50%,-18px)!important}.app-toast.show{transform:translate(-50%,0)!important}.readiness-floating-save{bottom:calc(104px + env(safe-area-inset-bottom,0px))!important;z-index:4200!important}#execution{padding-bottom:178px!important}
@media(min-width:760px){.app-toast{top:22px!important}.readiness-floating-save{right:24px!important;bottom:34px!important}}
@media(max-width:520px){.readiness-accordion>summary,.smart-alerts-card>summary{grid-template-columns:1fr auto 30px!important}.accordion-caret{display:grid!important}.smart-alert{grid-template-columns:1fr!important}.smart-alert .mini-link{justify-self:start}}


/* V3.9.3 — professional accordion headers and pinned-card routing action */
.v393-accordion>summary,.smart-alerts-card>summary{grid-template-columns:1fr auto!important;gap:12px!important;padding:16px 16px!important;background:linear-gradient(135deg,#ffffff,#f7fcff)!important;border-radius:20px!important}
.v393-accordion .accordion-title strong,.smart-alerts-card .accordion-title strong{font-size:15.5px!important;color:#0f2542!important;letter-spacing:-.01em!important}
.v393-accordion .accordion-title small,.smart-alerts-card .accordion-title small{font-size:11.5px!important;color:#64748b!important;font-weight:800!important;margin-top:4px!important}.v393-accordion>summary small:after,.smart-alerts-card>summary small:after{content:""!important}
.accordion-meta{display:flex;align-items:center;gap:8px;justify-content:flex-end;flex-wrap:wrap}.v393-count-badge{font-size:10.5px!important;padding:6px 9px!important;border-radius:999px!important}.accordion-toggle{display:inline-flex!important;align-items:center!important;gap:6px!important;border:1px solid #d8ecf3!important;background:#eef9fb!important;color:#077989!important;border-radius:999px!important;padding:5px 8px 5px 10px!important;font-size:10.5px!important;font-weight:950!important;text-transform:uppercase!important;letter-spacing:.035em!important;line-height:1!important;min-width:70px!important;justify-content:center!important}.accordion-toggle b{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#ffffff;color:#078b98;font-size:13px;transition:.18s ease}.v393-accordion[open] .accordion-toggle,.smart-alerts-card[open] .accordion-toggle{background:#078b98!important;color:#fff!important;border-color:#078b98!important}.v393-accordion[open] .accordion-toggle span,.smart-alerts-card[open] .accordion-toggle span{font-size:0!important}.v393-accordion[open] .accordion-toggle span:after,.smart-alerts-card[open] .accordion-toggle span:after{content:"Close";font-size:10.5px!important}.v393-accordion[open] .accordion-toggle b,.smart-alerts-card[open] .accordion-toggle b{transform:rotate(180deg);background:#e6fffb;color:#078b98}.v393-accordion .accordion-caret,.smart-alerts-card .accordion-caret{display:none!important}.v393-accordion:not([open]) .accordion-body{display:none!important}.smart-alerts-card:not([open]) .accordion-body{display:none!important}.smart-alerts-card{border:1px solid #f7d8a8!important;border-radius:22px!important;box-shadow:0 12px 30px rgba(146,64,14,.055)!important}.smart-alerts-card .accordion-body{padding:14px 16px 16px!important;border-top:1px solid #f8ead4!important;background:#fffdf9!important}.pinned-trip-widget.v393-widget{grid-template-columns:52px minmax(0,1fr) auto!important;align-items:center!important;padding-right:38px!important}.pin-card-action{border:0;border-radius:14px;padding:9px 11px;font-size:11px;font-weight:950;white-space:nowrap;cursor:pointer;box-shadow:0 8px 18px rgba(15,34,58,.06)}.pin-card-action.primary{background:#0f9aa6;color:#fff}.pin-card-action.ok{background:#10b981;color:#fff}.pin-card-action.ghost{background:#eff6ff;color:#0b4f9d}.v393-pinned-only .card-head{margin-bottom:8px}.v393-widget .pinned-trip-copy span{color:#0f766e!important;font-weight:900!important}.dashboard-pin-empty{padding:18px!important;text-align:left!important}.readiness-score-card,.readiness-doc-upload-card{scroll-margin-top:90px}.travel-leg-card{scroll-margin-top:90px}
@media(max-width:620px){.v393-accordion>summary,.smart-alerts-card>summary{grid-template-columns:1fr!important}.accordion-meta{justify-content:flex-start}.accordion-toggle{min-width:74px}.pinned-trip-widget.v393-widget{grid-template-columns:48px 1fr!important}.pin-card-action{grid-column:1/-1;width:100%;margin-top:4px}.pinned-close{top:8px!important;right:8px!important}}


/* V3.9.4 — reference-style professional accordion menu */
.v394-accordion{padding:0!important;overflow:hidden!important;border-radius:20px!important;background:#fff!important;border:1px solid #e3edf2!important;box-shadow:0 12px 30px rgba(15,34,58,.045)!important;margin-bottom:12px!important}
.v394-accordion>summary{list-style:none!important;cursor:pointer!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:12px!important;align-items:center!important;padding:0!important;border-radius:20px!important;min-height:62px!important;border:0!important;transition:background .18s ease, box-shadow .18s ease!important}
.v394-accordion>summary::-webkit-details-marker{display:none!important}
.v394-accordion.v394-state-ok>summary{background:linear-gradient(135deg,#e7f8df,#f8fff7)!important;color:#14532d!important}
.v394-accordion.v394-state-warn>summary{background:linear-gradient(135deg,#fff1d6,#fffdf7)!important;color:#854d0e!important}
.v394-accordion.v394-state-danger>summary{background:linear-gradient(135deg,#ffe4e6,#fff7f8)!important;color:#991b1b!important}
.v394-accordion.v394-state-info>summary{background:linear-gradient(135deg,#e8f7ff,#fbfdff)!important;color:#075985!important}
.v394-acc-main{min-width:0;padding:14px 16px!important;display:grid!important;gap:3px!important}
.v394-acc-main strong{display:block!important;font-size:16px!important;font-weight:950!important;letter-spacing:-.015em!important;color:#0f2542!important;line-height:1.15!important}
.v394-acc-main small{display:block!important;font-size:12px!important;font-weight:850!important;color:#52677d!important;line-height:1.25!important;white-space:normal!important}
.v394-acc-side{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important;padding:12px 14px 12px 6px!important;min-width:max-content!important}
.v394-status-line{display:inline-flex!important;align-items:center!important;max-width:240px!important;font-size:12px!important;font-weight:950!important;line-height:1.15!important;color:#0f766e!important;text-align:right!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.v394-state-warn .v394-status-line{color:#b45309!important}.v394-state-danger .v394-status-line{color:#b91c1c!important}.v394-state-info .v394-status-line{color:#0369a1!important}.v394-state-ok .v394-status-line{color:#15803d!important}
.v394-chevron{width:30px!important;height:30px!important;border-radius:12px!important;display:grid!important;place-items:center!important;background:rgba(255,255,255,.78)!important;border:1px solid rgba(15,34,58,.08)!important;color:#0f766e!important;font-size:16px!important;font-weight:950!important;line-height:1!important;box-shadow:0 5px 12px rgba(15,34,58,.05)!important;transition:transform .18s ease, background .18s ease, color .18s ease!important}
.v394-state-warn .v394-chevron{color:#b45309!important}.v394-state-danger .v394-chevron{color:#b91c1c!important}.v394-state-info .v394-chevron{color:#0369a1!important}
.v394-accordion[open] .v394-chevron{transform:rotate(180deg)!important;background:#ffffff!important;color:#0f2542!important}
.v394-accordion[open]>summary{border-bottom-left-radius:0!important;border-bottom-right-radius:0!important;box-shadow:inset 0 -1px 0 rgba(15,34,58,.06)!important}
.v394-accordion .v394-accordion-body,.v394-smart-alerts-card .accordion-body{padding:15px 16px 17px!important;background:#fff!important;border-top:0!important}
.v394-accordion:not([open]) .accordion-body{display:none!important}
.v394-accordion .accordion-title,.v394-accordion .accordion-meta,.v394-accordion .accordion-toggle,.v394-accordion .accordion-caret,.v394-accordion .v393-count-badge{display:none!important}
.v394-smart-alerts-card{border-color:#f3dfb9!important}.v394-smart-alerts-card.v394-state-ok{border-color:#d9f0df!important}.v394-smart-alerts-card.v394-state-warn{border-color:#f3dfb9!important}
.readiness-score-card.v394-accordion,.readiness-doc-upload-card.v394-accordion,.smart-alerts-card.v394-accordion{max-width:100%!important}
@media(max-width:620px){.v394-accordion>summary{grid-template-columns:1fr!important;gap:0!important}.v394-acc-side{justify-content:space-between!important;padding:0 14px 14px 16px!important;width:100%!important}.v394-status-line{text-align:left!important;max-width:calc(100vw - 110px)!important}.v394-acc-main{padding-bottom:6px!important}.v394-chevron{width:28px!important;height:28px!important;border-radius:10px!important}}


/* V3.9.5 — Dashboard banner welcome + logout polish */
.auth-strip.logged-in{display:none!important}
.home-screen .hero-card.app-hero.dashboard-welcome-hero{margin:10px 0 12px!important;border-radius:28px!important;min-height:220px!important;padding:18px 18px 58px!important;box-shadow:0 20px 46px rgba(15,34,58,.16)!important;overflow:hidden!important}
.home-screen .hero-card.app-hero.dashboard-welcome-hero:before{display:none!important}
.home-screen .app-hero.dashboard-welcome-hero:after{background:linear-gradient(120deg,rgba(4,31,62,.46),rgba(7,139,152,.20))!important;backdrop-filter:none!important}
.home-screen .app-hero.dashboard-welcome-hero .hero-bell{display:none!important}
.home-screen .app-hero.dashboard-welcome-hero .hero-visual{display:none!important}
.hero-account{position:relative;z-index:4;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:34px}
.hero-welcome-copy{min-width:0;display:grid;gap:3px;max-width:calc(100% - 92px)}
.hero-welcome-copy span{display:block;color:#fff;font-size:13px;font-weight:900;letter-spacing:.01em;text-shadow:0 2px 12px rgba(0,0,0,.38);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hero-welcome-copy small{display:block;color:rgba(255,255,255,.88);font-size:11px;font-weight:650;text-shadow:0 2px 10px rgba(0,0,0,.32)}
.hero-logout{position:relative;z-index:5;display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:8px 13px;border-radius:999px;background:rgba(255,255,255,.92);color:#075985!important;text-decoration:none;font-size:11px;font-weight:950;box-shadow:0 10px 24px rgba(0,0,0,.16);border:1px solid rgba(255,255,255,.72);backdrop-filter:blur(8px)}
.hero-logout:active{transform:scale(.98)}
.home-screen .dashboard-welcome-hero .hero-copy{max-width:82%!important}
.home-screen .dashboard-welcome-hero .hero-copy h1{color:#fff!important;text-shadow:0 4px 20px rgba(0,0,0,.44)!important;font-size:31px!important;line-height:1.02!important;letter-spacing:-.035em!important;max-width:250px!important;margin-bottom:8px!important}
.home-screen .dashboard-welcome-hero .hero-copy p{color:rgba(255,255,255,.96)!important;text-shadow:0 3px 14px rgba(0,0,0,.36)!important;font-weight:550!important;font-size:12.5px!important;line-height:1.42!important;width:auto!important;max-width:270px!important}
.home-quick-summary{display:none!important}
.dashboard-sheet{margin:0 -14px 0!important;padding-top:14px!important;border-radius:28px 28px 0 0!important}
@media(max-width:374px){.home-screen .hero-card.app-hero.dashboard-welcome-hero{min-height:206px!important;padding:16px 16px 54px!important}.hero-account{margin-bottom:24px}.hero-welcome-copy span{font-size:12px}.hero-logout{min-height:32px;padding:7px 11px}.home-screen .dashboard-welcome-hero .hero-copy h1{font-size:27px!important}.home-screen .dashboard-welcome-hero .hero-copy p{font-size:11.5px!important;max-width:240px!important}}


/* V3.9.7 — keep professional accordion chevron aligned on the right */
.v394-accordion>summary{grid-template-columns:minmax(0,1fr) 46px!important;align-items:stretch!important}
.v394-accordion .v394-acc-main{align-self:center!important}
.v394-accordion .v394-acc-side{align-self:stretch!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:0 14px 0 0!important;min-width:46px!important;width:46px!important}
.v394-accordion .v394-chevron{width:32px!important;height:32px!important;border-radius:12px!important;font-size:22px!important;line-height:1!important;transform:rotate(0deg)!important}
.v394-accordion[open] .v394-chevron{transform:rotate(90deg)!important}
@media(max-width:620px){.v394-accordion>summary{grid-template-columns:minmax(0,1fr) 44px!important;gap:6px!important}.v394-accordion .v394-acc-side{width:44px!important;min-width:44px!important;padding:0 10px 0 0!important;justify-content:center!important}.v394-accordion .v394-acc-main{padding:14px 12px 14px 16px!important}.v394-accordion .v394-chevron{width:30px!important;height:30px!important;font-size:20px!important}}


/* V3.9.8 — Review dashboard, currency chips and accordion state polish */
.v398-review-dashboard-card{padding:0!important;overflow:hidden!important;border:0!important;background:transparent!important;box-shadow:none!important}
.v398-trip-dashboard{background:linear-gradient(180deg,#ffffff,#f7fbff)!important;border:1px solid #deedf5!important;border-radius:28px!important;box-shadow:0 18px 42px rgba(15,34,58,.07)!important;overflow:hidden!important}
.v398-review-hero{display:grid;grid-template-columns:minmax(0,1fr) 96px;gap:14px;align-items:center;padding:18px;background:linear-gradient(135deg,#0f766e,#0b4f9d)!important;color:#fff!important}
.v398-review-hero h2{margin:3px 0 5px!important;color:#fff!important;font-size:24px!important;line-height:1.05!important;letter-spacing:-.03em!important}
.v398-review-hero p{margin:0!important;color:rgba(255,255,255,.9)!important;font-size:12px!important;line-height:1.4!important;font-weight:650!important}
.v398-review-hero .trip-kicker{color:rgba(255,255,255,.78)!important;font-weight:950!important;text-transform:uppercase!important;letter-spacing:.08em!important;font-size:10.5px!important}
.v398-ready-chip{width:86px;height:86px;border-radius:24px;background:rgba(255,255,255,.96);display:grid;place-items:center;text-align:center;box-shadow:0 14px 32px rgba(0,0,0,.16);border:1px solid rgba(255,255,255,.76)}
.v398-ready-chip strong{font-size:22px;color:#0f2542;line-height:1}.v398-ready-chip span{display:block;margin-top:-22px;color:#0f766e;font-size:9px;font-weight:950;text-transform:uppercase;letter-spacing:.04em}.v398-ready-chip.warn span{color:#b45309}.v398-ready-chip.danger span{color:#b91c1c}
.v398-dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:14px;background:#fff}
.v398-dash-tile{border:1px solid #e6f0f7;border-radius:18px;background:linear-gradient(180deg,#ffffff,#fbfdff);padding:12px;min-height:92px;display:grid;align-content:start;gap:4px}
.v398-dash-tile small{color:#64748b;font-weight:900;font-size:10.5px;text-transform:uppercase;letter-spacing:.045em}.v398-dash-tile strong{color:#0f2542;font-size:14.5px;line-height:1.22}.v398-dash-tile span{color:#52677d;font-size:11.5px;line-height:1.35;font-weight:700}.v398-dash-tile .ok-text{color:#15803d!important}.v398-dash-tile .danger-text{color:#b91c1c!important}
.v398-dashboard-actions{display:flex;gap:8px;flex-wrap:wrap;padding:0 14px 14px;background:#fff}.v398-dashboard-actions .btn{min-height:38px;border-radius:14px;padding:9px 13px;font-size:12px}.v398-dashboard-note{margin:0 14px 14px!important;background:#f8fcff!important;border-color:#dceef7!important}
.readiness-score-card[open],.readiness-doc-upload-card[open],.smart-alerts-card[open]{scroll-margin-top:80px}
.v394-accordion[open] .v394-acc-main small{color:#0f766e!important}.v394-state-warn[open] .v394-acc-main small{color:#b45309!important}.v394-state-danger[open] .v394-acc-main small{color:#b91c1c!important}
@media(max-width:620px){.v398-review-hero{grid-template-columns:1fr 78px;padding:15px}.v398-review-hero h2{font-size:20px!important}.v398-ready-chip{width:74px;height:74px;border-radius:20px}.v398-ready-chip strong{font-size:18px}.v398-ready-chip span{margin-top:-18px;font-size:8px}.v398-dashboard-grid{grid-template-columns:1fr;padding:12px}.v398-dashboard-actions{padding:0 12px 12px}.v398-dashboard-actions .btn{flex:1 1 140px}}

/* V3.9.9 — Review Trip Tabbed Dashboard UI */
.v399-review-screen{margin:0 -14px;padding:0 0 calc(160px + var(--bottom));background:#f0f4f8;min-height:calc(100vh - 28px);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important}.v399-review-shell{position:relative;min-height:100vh;background:#f0f4f8}.v399-sticky-trip-header{position:sticky;top:0;z-index:740;background:linear-gradient(135deg,#0d9488,#0f766e);color:#fff;box-shadow:0 8px 24px rgba(15,118,110,.22)}.v399-header-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px;align-items:center;padding:14px 14px 10px}.v399-back-btn{width:38px;height:38px;border:0;border-radius:50%;background:rgba(255,255,255,.18);color:#fff;font-size:28px;font-weight:700;line-height:1;display:grid;place-items:center}.v399-title-block{min-width:0;text-align:center}.v399-title-block h3{margin:0;color:#fff;font-size:17px;font-weight:900;letter-spacing:-.02em;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v399-title-block small{display:block;margin-top:3px;color:rgba(255,255,255,.82);font-size:11.2px;font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v399-health-chip{border:0;border-radius:999px;background:#fff;color:#0f766e;font-size:12px;font-weight:950;min-width:54px;min-height:34px;padding:7px 11px;box-shadow:0 4px 12px rgba(0,0,0,.12)}.v399-health-chip.warn{color:#92400e}.v399-health-chip.danger{color:#ef4444}.v399-tabbar{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;background:rgba(0,0,0,.15);padding:6px 8px 0}.v399-tabbar button{border:0;background:transparent;color:rgba(255,255,255,.65);border-radius:12px 12px 0 0;min-height:42px;padding:8px 3px;font-size:11.2px;font-weight:900;display:flex;align-items:center;justify-content:center;gap:4px}.v399-tabbar button.active{background:#fff;color:#0d9488;box-shadow:0 -2px 10px rgba(0,0,0,.06)}.v399-review-content{padding:12px 14px 12px;scroll-behavior:smooth}.v399-tab-panel{display:grid;gap:12px}.v399-tab-panel[hidden]{display:none!important}.v399-kpi-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.v399-kpi-card{background:#fff;border:1px solid #e5edf4;border-radius:14px;padding:13px;box-shadow:0 1px 4px rgba(0,0,0,.07);min-height:104px}.v399-kpi-card.success{background:#f0fdf4;border-color:#bbf7d0}.v399-kpi-card.warning{background:#fffbeb;border-color:#fde68a}.v399-kpi-card small{display:block;color:#64748b;font-size:10px;font-weight:950;text-transform:uppercase;letter-spacing:.06em}.v399-kpi-card strong{display:block;color:#0f172a;font-size:26px;line-height:1.05;margin:8px 0 5px}.v399-kpi-card span{display:block;color:#475569;font-size:11.5px;font-weight:800;line-height:1.35}.v399-map-panel{margin:0!important;border-radius:14px!important;box-shadow:0 1px 4px rgba(0,0,0,.07)!important;border:1px solid #e5edf4!important}.v399-map-panel .map{height:250px;border-radius:14px}.v399-section-card{background:#fff;border:1px solid #e5edf4;border-radius:14px;padding:13px;box-shadow:0 1px 4px rgba(0,0,0,.07);margin:0}.v399-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.v399-section-head h3{margin:0;color:#0f172a;font-size:14px}.v399-city-days-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.v399-city-day-card{background:#fff;border:1px solid #e5edf4;border-radius:14px;padding:13px 10px;text-align:center;box-shadow:0 1px 4px rgba(0,0,0,.05)}.v399-city-flag{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:12px;background:#f8fafc;margin-bottom:6px;font-size:20px}.v399-city-day-card h4{margin:0 0 6px;color:#0f172a;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v399-city-day-card>strong{display:block;font-size:32px;line-height:1;color:#0d9488}.v399-city-day-card>small{display:block;font-size:9.5px;color:#64748b;font-weight:950;letter-spacing:.08em;margin:4px 0 8px}.v399-city-day-card em{display:inline-flex;border-radius:999px;padding:4px 8px;font-style:normal;font-size:9.5px;font-weight:950;margin-bottom:9px}.v399-city-day-card em.danger{background:#fee2e2;color:#991b1b}.v399-city-day-card em.ok{background:#dcfce7;color:#166534}.v399-stepper{display:grid;grid-template-columns:32px 1fr 32px;gap:6px;align-items:center}.v399-stepper button{height:32px;border:1px solid #dbe7ef;border-radius:50%;background:#fff;color:#0f766e;font-weight:950;font-size:18px}.v399-stepper span{font-size:10.5px;font-weight:900;color:#475569}.v399-jet-card{background:#fffbeb!important;border-color:#fde68a!important}.v399-jet-note{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:start;color:#92400e}.v399-jet-note>span{font-size:24px}.v399-jet-note strong{display:block;color:#78350f;font-size:13px}.v399-jet-note small{display:block;margin-top:3px;color:#92400e;font-size:11.5px;font-weight:750;line-height:1.4}.v399-nearby-card{overflow:hidden}.v399-near-strip{display:flex;gap:10px;overflow-x:auto;overflow-y:hidden;padding:2px 2px 4px;scroll-snap-type:x proximity}.v399-near-strip::-webkit-scrollbar{display:none}.v399-near-chip{flex:0 0 132px;background:#fff;border:1px solid #e5edf4;border-radius:10px;padding:10px;box-shadow:0 1px 4px rgba(0,0,0,.06);scroll-snap-align:start}.v399-near-chip strong{display:block;font-size:12.5px;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v399-near-chip small{display:block;margin:4px 0 8px;color:#64748b;font-size:10.5px;font-weight:750;line-height:1.3}.v399-near-chip button{border:0;background:transparent;color:#0d9488;font-weight:950;padding:0;font-size:12px}.v399-route-note{background:#f0fdfa;border-left:4px solid #0d9488;border-radius:12px;padding:11px 12px;color:#0f766e;font-size:12px;font-weight:850;line-height:1.4}.v399-flight-list{display:grid;gap:12px}.v399-flight-leg-card{background:#fff;border:1px solid #e5edf4;border-radius:14px;padding:13px;box-shadow:0 1px 4px rgba(0,0,0,.07)}.v399-flight-leg-head{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:start;margin-bottom:10px}.v399-flight-leg-head small{display:block;color:#64748b;font-size:9.5px;font-weight:950;letter-spacing:.08em}.v399-flight-leg-head h3{margin:2px 0;color:#0f172a;font-size:15px}.v399-flight-leg-head p{margin:0;color:#64748b;font-size:11.5px;font-weight:800}.v399-flight-leg-head p.ok-text{color:#065f46}.v399-flight-leg-head em{font-style:normal;border-radius:999px;padding:6px 9px;font-size:10.5px;font-weight:950;white-space:nowrap}.v399-flight-leg-head em.direct{background:#d1fae5;color:#065f46}.v399-flight-leg-head em.stop{background:#fef3c7;color:#92400e}.v399-flight-options{display:grid;gap:8px}.v399-flight-option{border:2px solid #e5edf4;border-radius:10px;background:#fff;padding:11px;display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center;text-align:left;color:#0f172a}.v399-flight-option.selected{border-color:#0d9488;background:#f0fdfa}.v399-flight-option strong{display:block;font-size:12.5px}.v399-flight-option small{display:block;margin-top:3px;color:#64748b;font-size:10.8px;font-weight:750}.v399-flight-option b{font-size:11px;color:#0d9488;white-space:nowrap}.v399-budget-card{margin:0!important;border-radius:14px!important;padding:16px!important}.v399-budget-top{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:start}.v399-budget-top small{display:block;font-size:9.5px;font-weight:950;letter-spacing:.08em;color:#64748b}.v399-budget-top strong{display:block;font-size:28px;color:#0f172a;margin:5px 0}.v399-budget-top p{margin:0!important;font-size:12px!important;color:#64748b!important;font-weight:800}.v399-budget-top>b{align-self:center;color:#065f46;font-size:12px}.v399-budget-meter{height:10px!important;border-radius:8px!important;margin:15px 0;background:#e5edf4!important}.v399-budget-meter .budget-fill{background:linear-gradient(90deg,#10b981 0%,#f59e0b 68%,#ef4444 100%)!important}.v399-budget-breakdown{display:grid;gap:12px}.v399-budget-row{display:grid;grid-template-columns:22px 1fr 95px 74px;gap:8px;align-items:center;font-size:12px}.v399-budget-row i{font-style:normal;width:18px;text-align:center}.v399-budget-row span{font-weight:850;color:#334155}.v399-budget-row strong{text-align:right;color:#0f172a;font-size:11.5px}.v399-mini-budget{height:5px;background:#e5edf4;border-radius:999px;overflow:hidden}.v399-mini-budget b{display:block;height:100%;border-radius:999px}.v399-mini-budget .teal{background:#0d9488}.v399-mini-budget .blue{background:#3b82f6}.v399-mini-budget .amber{background:#f59e0b}.v399-mini-budget .orange{background:#f97316}.v399-mini-budget .pink{background:#ec4899}.v399-mini-budget .purple{background:#8b5cf6}.v399-mini-budget .red{background:#ef4444}.v399-mini-budget .grey{background:#94a3b8}.v399-health-card{margin:0!important;border-radius:14px!important;background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important}.v399-health-score-card{position:relative;background:#fff;border:1px solid #e5edf4;border-radius:14px;box-shadow:0 1px 4px rgba(0,0,0,.07);padding:20px 16px;text-align:center;margin-bottom:14px}.v399-score-svg{transform:rotate(-90deg);display:block;margin:0 auto}.v399-score-svg circle{fill:none;stroke-width:10;stroke-linecap:round}.v399-score-svg .track{stroke:#e5edf4}.v399-score-svg .fill{stroke:#10b981;transition:.25s}.v399-score-center{position:absolute;left:50%;top:61px;transform:translate(-50%,-50%);display:grid;place-items:center}.v399-score-center strong{font-size:26px;line-height:1;color:#0f172a}.v399-score-center small{font-size:11px;font-weight:900;color:#64748b}.v399-health-score-card em{display:inline-flex;margin-top:12px;border-radius:999px;padding:6px 11px;font-style:normal;font-size:11px;font-weight:950}.v399-health-score-card em.ok{background:#d1fae5;color:#065f46}.v399-health-score-card em.warn{background:#fef3c7;color:#92400e}.v399-health-score-card p{margin:8px 0 0!important;color:#64748b!important;font-weight:800!important;font-size:12px!important}.v399-factor-title{margin:0 0 9px!important;color:#64748b!important;font-size:11px!important;letter-spacing:.08em!important}.v399-factor-list{display:grid;gap:9px}.v399-factor-row{background:#fff;border:1px solid #e5edf4;border-radius:14px;box-shadow:0 1px 4px rgba(0,0,0,.05);padding:11px;display:grid;grid-template-columns:30px 1fr auto;gap:9px;align-items:center}.v399-factor-row i{width:30px;height:30px;border-radius:10px;display:grid;place-items:center;font-style:normal}.v399-factor-row i.done{background:#d1fae5}.v399-factor-row i.pending{background:#fef3c7}.v399-factor-row strong{display:block;color:#0f172a;font-size:12.5px}.v399-factor-row small{display:block;color:#64748b;font-size:10.8px;line-height:1.35;margin-top:2px;font-weight:750}.v399-factor-row b{font-size:11px;white-space:nowrap}.ok-text{color:#065f46!important}.warn-text{color:#92400e!important}.v399-sticky-cta{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(74px + var(--bottom));z-index:1180;width:100%;max-width:430px;background:#fff;border-top:1px solid #e5edf4;box-shadow:0 -12px 28px rgba(15,34,58,.12);padding:10px 12px;display:grid;grid-template-columns:1fr 2fr;gap:10px}.v399-cta-secondary,.v399-cta-primary{border-radius:12px;min-height:48px;font-weight:950}.v399-cta-secondary{background:#fff;border:2px solid #0d9488;color:#0d9488}.v399-cta-primary{border:0;background:linear-gradient(135deg,#0d9488,#0f766e);color:#fff;box-shadow:0 12px 22px rgba(13,148,136,.24)}.v399-hidden-render-targets{height:0!important;overflow:hidden!important}.v399-review-screen .planning-progress,.v399-review-screen .route-clean-header{display:none!important}@media(min-width:760px){.v399-sticky-cta{bottom:calc(98px + var(--bottom));border-radius:18px 18px 0 0}.v399-review-screen{border-radius:0 0 34px 34px;overflow:hidden}}@media(max-width:374px){.v399-city-days-row,.v399-kpi-grid{grid-template-columns:1fr}.v399-tabbar button span{display:none}.v399-budget-row{grid-template-columns:22px 1fr 70px}.v399-mini-budget{display:none}.v399-title-block h3{font-size:15px}.v399-sticky-cta{grid-template-columns:1fr;bottom:calc(74px + var(--bottom))}.v399-review-screen{padding-bottom:calc(210px + var(--bottom))}}


/* V3.10.0 — Review UX stabilization + city edit cleanup */
body.bottom-sheet-open{overflow:hidden!important;}
body.bottom-sheet-open .wizard-sticky-actions,
body.bottom-sheet-open .v399-sticky-cta{display:none!important;}
.app-bottom-sheet-overlay{z-index:4000!important;align-items:center!important;padding:16px!important;}
.app-bottom-sheet{max-height:min(86vh,760px)!important;border-radius:24px!important;padding:0!important;overflow:hidden!important;display:flex;flex-direction:column;}
.travel-check-sheet{display:flex;flex-direction:column;min-height:0;}
.travel-check-head{padding:18px 18px 0;margin-bottom:12px;}
.travel-check-grid,.travel-check-section,.travel-check-sheet>.notice{margin-left:18px!important;margin-right:18px!important;}
.travel-check-sheet>.notice{margin-top:4px!important;margin-bottom:12px!important;}
.travel-check-actions{position:sticky;bottom:0;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);border-top:1px solid #e5edf4;padding:12px 18px 14px;margin:0!important;z-index:2;}
.city-fav{display:none!important;}
.selected-city-check{position:absolute;right:9px;top:9px;width:30px;height:30px;border-radius:12px;background:#dcfce7;color:#166534;display:grid;place-items:center;font-weight:950;box-shadow:0 6px 14px rgba(0,0,0,.10);}
.city-card.selected .city-actions{display:grid!important;}
.city-card.selected .btn.danger{background:#fff1f1!important;color:#b42318!important;border:1px solid #fecaca!important;box-shadow:none!important;}
.trip-preference-card{padding:16px!important;}
.v3100-icon-choice-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;}
.v3100-icon-choice-grid .purpose-chip,.v3100-icon-choice-grid .interest-chip{min-height:82px!important;border-radius:18px!important;padding:10px 6px!important;display:grid!important;place-items:center!important;gap:4px!important;background:#fff!important;border:1px solid #dbe7ef!important;color:#0f172a!important;box-shadow:0 1px 4px rgba(0,0,0,.05)!important;text-align:center!important;}
.v3100-icon-choice-grid .purpose-chip span,.v3100-icon-choice-grid .interest-chip span{font-size:22px;line-height:1;}
.v3100-icon-choice-grid .purpose-chip b,.v3100-icon-choice-grid .interest-chip b{font-size:11.5px;line-height:1.15;font-weight:950;}
.v3100-icon-choice-grid .purpose-chip.active,.v3100-icon-choice-grid .interest-chip.active{border-color:#0d9488!important;background:#ecfeff!important;color:#0f766e!important;box-shadow:0 10px 22px rgba(13,148,136,.14)!important;}
.v399-kpi-card.info-soft{background:#eff6ff!important;border-color:#bfdbfe!important;}
.v399-kpi-card.purple-soft{background:#faf5ff!important;border-color:#e9d5ff!important;}
.v399-section-card{background:linear-gradient(180deg,#ffffff,#fbfdff)!important;}
.v399-city-day-card{position:relative;background:linear-gradient(180deg,#fff,#f8fffd)!important;border-color:#ccfbf1!important;}
.v3100-city-remove{position:absolute;right:8px;top:8px;width:26px;height:26px;border-radius:50%;border:1px solid #fecaca;background:#fff1f2;color:#be123c;font-weight:950;line-height:1;display:grid;place-items:center;}
.v399-map-panel,.v399-map-panel .map{min-height:250px!important;background:#e6f4f1!important;}
.v399-nearby-card{position:relative;}
.v399-nearby-card:after{content:"";position:absolute;right:0;top:47px;bottom:10px;width:28px;pointer-events:none;background:linear-gradient(90deg,rgba(255,255,255,0),#fff);}
.v399-near-strip{width:100%;max-width:100%;overflow-x:auto!important;overflow-y:hidden!important;-webkit-overflow-scrolling:touch;scrollbar-width:none;display:flex!important;flex-wrap:nowrap!important;padding:3px 30px 8px 2px!important;}
.v399-near-chip{flex:0 0 138px!important;background:linear-gradient(180deg,#fff,#f8fffd)!important;border-color:#dbeafe!important;}
.v399-factor-title{display:flex;align-items:center;justify-content:space-between;gap:8px;}
.v3100-view-only{font-size:9.5px;font-weight:950;color:#0d9488;background:#ecfeff;border:1px solid #bae6fd;border-radius:999px;padding:4px 7px;letter-spacing:0;text-transform:none;}
@media(max-width:374px){.v3100-icon-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.v3100-view-only{display:none}.travel-check-grid{grid-template-columns:1fr!important}}

/* V3.10.1 — Full Edit Trip Workflow + City Finder + Planning Restore */
.city-alpha-strip{display:flex;gap:6px;overflow-x:auto;padding:8px 2px 10px;margin:2px 0 8px;scrollbar-width:none}
.city-alpha-strip::-webkit-scrollbar{display:none}
.city-alpha-strip button{min-width:34px;height:34px;border:1px solid #d8e8ef;background:#fff;border-radius:999px;color:#0f3d56;font-weight:800;box-shadow:0 1px 3px rgba(0,0,0,.04)}
.city-alpha-strip button.active{background:linear-gradient(135deg,#0d9488,#0f766e);color:#fff;border-color:#0d9488}
.trip-edit-mode .planning-progress{background:#ecfeff;border:1px solid #b6eef0;border-radius:14px;padding:6px}
.trip-edit-mode .planning-progress span{cursor:pointer}
.trip-edit-mode .planning-progress span.edit-enabled::after{content:' edit';font-size:10px;color:#0d9488;margin-left:3px}
.edit-trip-save-bar{position:fixed;left:50%;bottom:calc(72px + env(safe-area-inset-bottom));transform:translateX(-50%);width:min(560px,calc(100% - 28px));display:flex;gap:10px;z-index:80;background:rgba(255,255,255,.94);border:1px solid #dbeafe;border-radius:18px;padding:10px;box-shadow:0 14px 35px rgba(15,23,42,.16);backdrop-filter:blur(10px)}
.edit-trip-save-bar .btn{flex:1;border-radius:14px}.edit-trip-save-bar.hidden{display:none!important}
.v3101-day-plan-card,.v3101-hotel-card{background:#fff;border:1px solid #dbeafe}
.v3101-day-snapshot{display:grid;gap:10px}.v3101-day-mini{display:flex;gap:10px;align-items:flex-start;background:#f8fbff;border:1px solid #dbeafe;border-radius:14px;padding:10px}.v3101-day-mini>b{background:#ccfbf1;color:#0f766e;border-radius:12px;padding:8px 10px;white-space:nowrap}.v3101-day-mini span{display:grid;gap:3px}.v3101-day-mini small{color:#52687a;line-height:1.35}.v3101-full-day-plan{margin-top:10px;display:grid;gap:10px}.v3101-full-day-plan.hidden{display:none!important}.v3101-full-day{background:#fff;border:1px dashed #badbea;border-radius:14px;padding:10px}.v3101-full-day ul{margin:8px 0 0 16px;padding:0}.v3101-hotel-suggestions{display:grid;gap:10px}.v3101-hotel-mini{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:14px;padding:12px}.v3101-hotel-mini strong{color:#064e3b}.v3101-hotel-mini ul{margin:8px 0 8px 18px;padding:0;color:#355064}.v3101-hotel-mini .mini-link{display:inline-flex;margin-top:2px}
.v3100-city-remove{position:absolute;right:8px;top:8px;width:28px;height:28px;border:0;border-radius:999px;background:rgba(239,68,68,.92);color:#fff;font-weight:900;box-shadow:0 4px 10px rgba(239,68,68,.25);z-index:3}.v399-city-day-card{position:relative}
.v399-factor-title .v3101-readiness-open{float:right;font-size:12px;border:1px solid #99f6e4;color:#0f766e;background:#f0fdfa;border-radius:999px;padding:6px 10px;text-decoration:none}
@media(max-width:560px){.edit-trip-save-bar{bottom:calc(78px + env(safe-area-inset-bottom));width:calc(100% - 20px)}.city-alpha-strip button{min-width:32px;height:32px}.v399-factor-title .v3101-readiness-open{float:none;display:inline-flex;margin-top:8px}}


/* V3.10.3 — CTA stacking + preference reflection polish
   One visible action surface per workflow; modal-safe layout; compact preference visibility. */
body.trip-edit-mode .v399-sticky-cta{display:none!important;}
body.trip-edit-mode .wizard-sticky-actions{display:none!important;}
body.bottom-sheet-open .edit-trip-save-bar{display:none!important;}
body.bottom-sheet-open .v399-sticky-cta,
body.bottom-sheet-open .wizard-sticky-actions{display:none!important;}
.edit-trip-save-bar{z-index:1185!important;bottom:calc(82px + env(safe-area-inset-bottom,0px))!important;width:min(430px,calc(100% - 18px))!important;max-width:430px!important;left:50%!important;right:auto!important;transform:translateX(-50%)!important;border-radius:22px!important;background:rgba(255,255,255,.97)!important;border:1px solid #c7f0f1!important;box-shadow:0 -10px 30px rgba(15,34,58,.14)!important;backdrop-filter:blur(14px);}
.edit-trip-save-bar .btn{flex:1;min-height:56px;border-radius:16px;}
.v399-sticky-cta{bottom:calc(82px + env(safe-area-inset-bottom,0px))!important;border-radius:22px 22px 0 0;}
.v399-review-screen{padding-bottom:calc(168px + env(safe-area-inset-bottom,0px))!important;}
.trip-edit-mode .wizard-step[data-step="3"],
.trip-edit-mode .wizard-step[data-step="4"],
.trip-edit-mode .wizard-step[data-step="5"]{padding-bottom:calc(156px + env(safe-area-inset-bottom,0px))!important;}
.app-bottom-sheet-overlay{z-index:5000!important;}
.travel-check-actions{display:grid!important;grid-template-columns:1fr 1.35fr!important;gap:10px!important;}
.travel-check-actions .btn{min-height:54px;border-radius:18px;}
.v3103-style-summary{display:flex;flex-wrap:wrap;gap:5px;margin-top:4px;}
.v3103-style-chip{display:inline-flex;align-items:center;gap:4px;border-radius:999px;background:rgba(13,148,136,.09);color:#0f766e;border:1px solid rgba(13,148,136,.18);padding:3px 7px;font-size:10px;font-weight:900;line-height:1.25;}
.v399-kpi-card.purple-soft span{display:block;max-height:none;white-space:normal;overflow:visible;}
.v399-kpi-card.purple-soft strong{font-size:25px;}
@media(max-width:374px){.edit-trip-save-bar{bottom:calc(78px + env(safe-area-inset-bottom,0px))!important;grid-template-columns:1fr!important}.edit-trip-save-bar .btn{min-height:52px}.v399-sticky-cta{bottom:calc(78px + env(safe-area-inset-bottom,0px))!important}}


/* V3.10.7 — Edit CTA layer fix
   In edit mode the global Cancel/Save bar is the only bottom action surface.
   Older step-next CTAs are hidden so they cannot sit underneath or overlap it. */
body.trip-edit-mode .build-basics-screen > .btn.cta.wide,
body.trip-edit-mode .style-screen > .btn.primary.wide[data-next],
body.trip-edit-mode .destination-screen .wizard-sticky-actions,
body.trip-edit-mode .city-floating-actions,
body.trip-edit-mode .wizard-step > .btn.cta.wide[data-next]{
  display:none!important;
}
body.trip-edit-mode .build-basics-screen,
body.trip-edit-mode .destination-screen,
body.trip-edit-mode .style-screen,
body.trip-edit-mode .review-screen{
  padding-bottom:calc(176px + env(safe-area-inset-bottom,0px))!important;
}
body.trip-edit-mode .edit-trip-save-bar{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:12px!important;
  overflow:visible!important;
}
body.trip-edit-mode .edit-trip-save-bar.hidden{display:none!important;}
body.trip-edit-mode .edit-trip-save-bar .btn{
  margin:0!important;
  width:100%!important;
  min-width:0!important;
}
@media(max-width:374px){
  body.trip-edit-mode .edit-trip-save-bar{grid-template-columns:1fr!important;}
}

/* V3.10.8 — Edit wizard continuity
   Keep section-to-section navigation visible without reintroducing overlapping bottom CTAs. */
body.trip-edit-mode .planning-progress{
  position:sticky;
  top:0;
  z-index:75;
  display:grid!important;
  grid-template-columns:repeat(4,1fr);
  gap:6px;
  background:rgba(240,253,250,.97)!important;
  border:1px solid #99f6e4!important;
  border-radius:16px!important;
  padding:7px!important;
  margin:0 0 12px!important;
  box-shadow:0 8px 18px rgba(15,34,58,.08);
  backdrop-filter:blur(12px);
}
body.trip-edit-mode .planning-progress span{
  display:grid!important;
  place-items:center;
  min-height:34px;
  border-radius:12px;
  color:#0f766e!important;
  background:#ffffff;
  font-size:11px!important;
  font-weight:950!important;
  cursor:pointer;
  padding:6px 4px!important;
}
body.trip-edit-mode .planning-progress span.active{
  background:linear-gradient(135deg,#0d9488,#0f766e)!important;
  color:#fff!important;
  box-shadow:0 8px 16px rgba(13,148,136,.22);
}
body.trip-edit-mode .planning-progress span.edit-enabled::after{content:''!important;display:none!important;}
body.trip-edit-mode .build-basics-screen > .btn.cta.wide,
body.trip-edit-mode .style-screen > .btn.primary.wide[data-next]{
  display:flex!important;
  position:static!important;
  width:100%!important;
  margin:16px 0 calc(96px + env(safe-area-inset-bottom,0px))!important;
  min-height:54px!important;
  border-radius:18px!important;
  background:linear-gradient(135deg,#0d9488,#0f766e)!important;
  color:#fff!important;
  box-shadow:0 12px 24px rgba(13,148,136,.18)!important;
}
body.trip-edit-mode .destination-screen .wizard-sticky-actions.edit-inline-nav,
body.trip-edit-mode .destination-screen .city-floating-actions.edit-inline-nav{
  display:grid!important;
  position:static!important;
  left:auto!important;
  right:auto!important;
  bottom:auto!important;
  transform:none!important;
  width:100%!important;
  max-width:none!important;
  grid-template-columns:.72fr 1.28fr!important;
  gap:10px!important;
  margin:16px 0 calc(108px + env(safe-area-inset-bottom,0px))!important;
  padding:10px!important;
  border-radius:20px!important;
  background:#ffffff!important;
  border:1px solid #ccfbf1!important;
  box-shadow:0 8px 22px rgba(15,34,58,.08)!important;
  z-index:1!important;
}
body.trip-edit-mode .destination-screen .wizard-sticky-actions.edit-inline-nav .btn,
body.trip-edit-mode .destination-screen .city-floating-actions.edit-inline-nav .btn{
  min-height:50px!important;
  border-radius:16px!important;
  margin:0!important;
}
body.trip-edit-mode .destination-screen .wizard-sticky-actions.edit-inline-nav .btn.primary:disabled,
body.trip-edit-mode .destination-screen .city-floating-actions.edit-inline-nav .btn.primary:disabled{
  opacity:.55!important;
}
body.trip-edit-mode .edit-trip-save-bar{
  z-index:1185!important;
}
.v3108-edit-review-note{margin:10px 0 12px!important;}
@media(max-width:374px){
  body.trip-edit-mode .planning-progress{grid-template-columns:repeat(2,1fr)}
  body.trip-edit-mode .destination-screen .wizard-sticky-actions.edit-inline-nav,
  body.trip-edit-mode .destination-screen .city-floating-actions.edit-inline-nav{grid-template-columns:1fr!important;}
}


/* V3.10.9 — New Trip Flow Isolation Guard */
body:not(.trip-edit-mode) .edit-trip-save-bar{display:none!important;}
body:not(.trip-edit-mode) .planning-progress span.edit-enabled::after{content:''!important;display:none!important;}
body:not(.trip-edit-mode) .planning-progress span{cursor:default!important;}
body:not(.trip-edit-mode) .destination-screen .wizard-sticky-actions.edit-inline-nav,
body:not(.trip-edit-mode) .destination-screen .city-floating-actions.edit-inline-nav{position:fixed!important;left:50%!important;right:auto!important;transform:translateX(-50%)!important;bottom:calc(78px + env(safe-area-inset-bottom,0px))!important;width:min(398px,calc(100vw - 28px))!important;z-index:4000!important;display:grid!important;grid-template-columns:minmax(82px,.55fr) minmax(0,1.45fr)!important;gap:10px!important;}
body:not(.trip-edit-mode) .build-basics-screen > .btn.cta.wide.edit-inline-next,
body:not(.trip-edit-mode) .style-screen > .btn.primary.wide.edit-inline-next{position:static!important;margin-top:18px!important;width:100%!important;}

/* V3.10.11 — Live Capture + Story Builder lifecycle */
.story-include-toggle{
  display:flex;
  align-items:center;
  gap:10px;
  margin:12px 0 8px;
  padding:12px 14px;
  border:1px solid #d7eef2;
  border-radius:16px;
  background:#f2fdff;
  color:#0f3b4b;
  font-weight:700;
  font-size:.92rem;
}
.story-include-toggle input{width:18px;height:18px;accent-color:#0891b2;}
.live-capture-actions{margin-top:10px;}
.save-status{
  margin-top:10px;
  font-size:.82rem;
  color:#64748b;
  background:#f8fafc;
  border:1px dashed #cbd5e1;
  border-radius:14px;
  padding:10px 12px;
}
.journey-item.story-excluded{opacity:.72;background:#f8fafc;}
.journey-item.story-excluded::after{
  content:'Private';
  display:inline-flex;
  margin-top:8px;
  padding:4px 9px;
  border-radius:999px;
  background:#fff7ed;
  color:#c2410c;
  font-size:.72rem;
  font-weight:800;
}
.story-source-card{border:1px solid #d9f4f6;background:linear-gradient(180deg,#f4fdff,#ffffff);}
.story-source-card .card-head{align-items:flex-start;gap:12px;}
.story-source-card .card-head p{margin:4px 0 0;color:#64748b;font-size:.86rem;line-height:1.35;}
.story-memory-selector{display:flex;flex-direction:column;gap:10px;margin-top:12px;}
.story-selector-summary{
  display:flex;
  justify-content:space-between;
  gap:10px;
  align-items:center;
  padding:11px 13px;
  border-radius:16px;
  background:#ecfeff;
  border:1px solid #a5f3fc;
  color:#0f3b4b;
}
.story-selector-summary small{color:#64748b;font-weight:600;text-align:right;}
.story-memory-row{
  display:grid;
  grid-template-columns:auto 32px 1fr;
  gap:10px;
  align-items:flex-start;
  padding:12px;
  border:1px solid #e2e8f0;
  border-radius:18px;
  background:#fff;
  box-shadow:0 10px 24px rgba(15,34,58,.04);
}
.story-memory-row input{width:18px;height:18px;margin-top:3px;accent-color:#0891b2;}
.story-memory-row > span{font-size:1.25rem;line-height:1.2;}
.story-memory-row strong{display:block;color:#0f172a;font-size:.95rem;}
.story-memory-row small{display:block;color:#64748b;font-size:.78rem;margin-top:2px;}
.story-memory-row p{margin:6px 0 0;color:#475569;font-size:.83rem;line-height:1.38;}
.story-legacy-capture.hidden{display:none!important;}
.storybook-card .studio-head p::after{
  content:' Story generation uses only the selected Live Capture memories.';
  color:#0891b2;
  font-weight:700;
}
@media(max-width:620px){
  .story-source-card .card-head{flex-direction:column;align-items:stretch;}
  .story-selector-summary{flex-direction:column;align-items:flex-start;}
  .story-selector-summary small{text-align:left;}
  .story-memory-row{grid-template-columns:auto 28px 1fr;padding:11px;}
}

/* V3.10.12 — Draft lifecycle + city alphabet scroll polish */
.city-alpha-strip{
  overflow-x:auto!important;
  overflow-y:hidden!important;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:thin!important;
  scrollbar-color:#0d9488 rgba(13,148,136,.12)!important;
  scroll-snap-type:x proximity;
  padding-bottom:14px!important;
}
.city-alpha-strip::-webkit-scrollbar{display:block!important;height:5px!important}
.city-alpha-strip::-webkit-scrollbar-track{background:rgba(13,148,136,.10);border-radius:999px}
.city-alpha-strip::-webkit-scrollbar-thumb{background:#0d9488;border-radius:999px}
.city-alpha-strip button{scroll-snap-align:start;flex:0 0 auto}
.city-alpha-scroll-wrap{position:relative;margin:2px 0 8px;padding:0 34px}
.city-alpha-scroll-wrap .city-alpha-strip{margin:0!important;padding-left:0!important;padding-right:0!important}
.city-alpha-scroll-btn{position:absolute;top:3px;width:30px;height:34px;border:1px solid #d8e8ef;border-radius:999px;background:rgba(255,255,255,.96);color:#0f766e;font-size:20px;font-weight:950;box-shadow:0 3px 10px rgba(15,34,58,.09);z-index:3;display:grid;place-items:center}
.city-alpha-scroll-btn.left{left:0}.city-alpha-scroll-btn.right{right:0}
.city-alpha-scroll-hint{display:block;margin:-8px 2px 8px;color:#64748b;font-size:10.5px;font-weight:800;text-align:right}

.draft-state-bar{margin:10px 0 12px;padding:10px;border:1px solid #c7f0f1;border-radius:18px;background:linear-gradient(135deg,#f0fdfa,#ffffff);box-shadow:0 8px 22px rgba(15,34,58,.07);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}
.draft-state-bar strong{display:block;color:#0f172a;font-size:13px;line-height:1.2}.draft-state-bar small{display:block;color:#64748b;font-size:10.8px;font-weight:750;margin-top:2px;line-height:1.3}.draft-state-actions{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.draft-state-actions .btn{min-height:36px;border-radius:12px;padding:8px 12px;font-size:11.5px;font-weight:950}.draft-state-actions .btn.ghost{background:#fff;border:1px solid #dbeafe;color:#0f3d56}.draft-state-actions .btn.primary{border:0;background:linear-gradient(135deg,#0d9488,#0f766e);color:#fff;box-shadow:0 7px 16px rgba(13,148,136,.20)}
body.trip-edit-mode .draft-state-bar{display:none!important}
.v399-sticky-cta.draft-review-actions{grid-template-columns:1fr 1.25fr!important}.v399-sticky-cta.saved-review-actions{grid-template-columns:1fr 1.4fr!important}.v399-sticky-cta .v3112-review-save{border:2px solid #0d9488;background:#fff;color:#0d9488}.v399-sticky-cta .v3112-review-next{border:0;background:linear-gradient(135deg,#0d9488,#0f766e);color:#fff;box-shadow:0 12px 22px rgba(13,148,136,.24)}
@media(max-width:374px){.draft-state-bar{grid-template-columns:1fr}.draft-state-actions{justify-content:stretch}.draft-state-actions .btn{flex:1}.city-alpha-scroll-wrap{padding:0 28px}.city-alpha-scroll-btn{width:26px}}

/* V3.10.13 — Review trip name card */
.v3113-trip-name-card{border:1px solid rgba(13,148,136,.18);background:linear-gradient(135deg,#f0fdfa,#fff);box-shadow:0 10px 26px rgba(15,34,58,.07);padding:14px;margin-bottom:12px}
.trip-name-card-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}
.trip-name-card-head h3{margin:2px 0 2px;font-size:17px;color:#0f172a;font-weight:950}.trip-name-card-head p{margin:0;color:#64748b;font-size:12px;font-weight:750;line-height:1.35}.trip-name-input-wrap{display:block}.trip-name-input-wrap span{display:block;font-size:11px;font-weight:950;color:#0f766e;margin:0 0 6px;text-transform:uppercase;letter-spacing:.04em}.trip-name-input-wrap input{width:100%;min-height:48px;border:1px solid #c7e8ee;border-radius:16px;background:#fff;padding:12px 14px;font-size:15px;font-weight:850;color:#0f172a;outline:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.75)}.trip-name-input-wrap input:focus{border-color:#0d9488;box-shadow:0 0 0 4px rgba(13,148,136,.12)}.trip-name-preview{display:block;margin-top:7px;color:#64748b;font-size:11.5px;font-weight:800}
.draft-review-actions .v3112-review-save{font-weight:950}
@media(max-width:420px){.trip-name-card-head{display:block}.trip-name-card-head .badge{margin-top:8px}.v3113-trip-name-card{padding:12px}}


/* V3.10.14 — compact readiness navigation, breadcrumbs and tracker */
#execution > .tool-hero.execution-hero,
#executionCenter .execution-hero-card.readiness-hero-card.v391-hero{display:none!important;}
#smartTravelAlertsCard:not(.v3114-alert-open){display:none!important;}
.v3114-readiness-compact-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 0 12px;padding:12px 14px;border:1px solid rgba(13,148,136,.16);border-radius:22px;background:linear-gradient(135deg,#ffffff 0%,#effdfa 100%);box-shadow:0 10px 26px rgba(15,23,42,.08)}
.v3114-readiness-compact-bar strong{display:block;color:#0f172a;font-size:1rem;line-height:1.2}.v3114-readiness-compact-bar small{display:block;color:#64748b;font-weight:700;margin-top:2px}.v3114-readiness-compact-bar .trip-kicker{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:#0f766e;font-weight:900}
.readiness-alert-bell{position:relative;min-width:50px;height:50px;border:0;border-radius:18px;background:#f1f5f9;color:#0f172a;font-size:1.25rem;box-shadow:inset 0 0 0 1px rgba(148,163,184,.35);display:inline-flex;align-items:center;justify-content:center}.readiness-alert-bell.has-alerts{background:#fff7ed;color:#9a3412;box-shadow:inset 0 0 0 1px rgba(251,146,60,.35),0 8px 18px rgba(251,146,60,.18)}.readiness-alert-bell span{position:absolute;right:-4px;top:-5px;min-width:21px;height:21px;padding:0 5px;border-radius:999px;background:#ef4444;color:white;font-size:.72rem;font-weight:900;display:flex;align-items:center;justify-content:center}.readiness-alert-bell:not(.has-alerts) span{background:#0d9488}
.v3114-breadcrumbs{display:flex;gap:7px;align-items:center;overflow-x:auto;padding:0 4px 10px;margin:-2px 0 8px;scrollbar-width:thin}.v3114-breadcrumbs button{border:1px solid rgba(13,148,136,.18);background:#fff;color:#0f766e;border-radius:999px;padding:8px 12px;font-size:.78rem;font-weight:900;white-space:nowrap}.v3114-breadcrumbs button.active{background:#0d9488;color:#fff;border-color:#0d9488}.v3114-breadcrumbs span{color:#94a3b8;font-weight:900}
.readiness-checklist-card .accordion-body{padding-top:10px}.readiness-checklist-list{display:grid;gap:9px;margin:10px 0}.readiness-checklist-row{display:flex;align-items:flex-start;gap:10px;padding:11px 12px;border-radius:16px;border:1px solid rgba(148,163,184,.22);background:#fff}.readiness-checklist-row input{margin-top:3px;accent-color:#0d9488}.readiness-checklist-row strong{display:block;color:#0f172a;font-size:.9rem}.readiness-checklist-row small{display:block;color:#64748b;font-size:.78rem;margin-top:2px}.readiness-checklist-row.done{background:#ecfdf5;border-color:rgba(16,185,129,.28)}.readiness-checklist-row.done strong{text-decoration:line-through;text-decoration-thickness:1.5px;color:#047857}.readiness-checklist-row.done small{color:#059669}
@media(max-width:640px){.v3114-readiness-compact-bar{border-radius:18px;padding:10px 12px}.readiness-alert-bell{min-width:46px;height:46px}.v3114-breadcrumbs{margin-left:-2px;margin-right:-2px}.v3114-breadcrumbs button{padding:7px 10px}}


/* V3.10.15 simplified lifecycle UI */
.v3115-lifecycle span.active{background:#ecfeff;border-color:#0d9488;color:#0f766e;box-shadow:0 8px 18px rgba(13,148,136,.12)}
.v3115-lifecycle span.done{background:#f0fdf4;border-color:#22c55e;color:#166534}
.v3115-trip-row .lifecycle-chips{margin:10px 0 12px}
.v3115-prepare-checklist{border:1px solid rgba(13,148,136,.18);box-shadow:0 16px 36px rgba(15,118,110,.08)}
.prep-check-list{display:grid;gap:10px;margin-top:12px}
.prep-check-row{border:1px solid rgba(15,23,42,.09);border-radius:16px;background:#fff;padding:10px 12px}
.prep-check-row label{display:flex;gap:10px;align-items:flex-start;margin:0}
.prep-check-row input{margin-top:4px;accent-color:#0d9488}
.prep-check-row b{display:block;font-size:14px;color:#0f172a}
.prep-check-row small{display:block;color:#64748b;margin-top:2px;font-size:12px}
.prep-check-row em{display:block;color:#475569;font-style:normal;margin-top:4px;font-size:12px;line-height:1.35}
.prep-check-row.done{background:#f0fdf4;border-color:rgba(34,197,94,.25)}
.prep-check-row.done b{text-decoration:line-through;text-decoration-thickness:1px;color:#166534}
.prep-check-row.overdue{background:#fff7ed;border-color:#fdba74}
.v3115-phase-hero{background:linear-gradient(135deg,#ecfeff,#f8fafc);border:1px solid rgba(13,148,136,.18)}
.v3115-ready-note{margin-bottom:12px}
.v3115-common-vault{border:1px solid rgba(59,130,246,.18);background:linear-gradient(180deg,#eff6ff,#fff)}
.common-vault-card .mini-vault-list{margin-top:12px;display:grid;gap:8px}
.common-vault-card .vault-item{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:8px;padding:10px;border-radius:14px;background:#fff;border:1px solid rgba(15,23,42,.08)}
.common-vault-card .vault-item b{font-size:13px;color:#0f172a}
.common-vault-card .vault-item small{display:block;color:#64748b;font-size:12px}
.v3115-prepare-modal .modal-card{max-width:440px}
.v3115-prepare-modal .compact{margin-top:8px}
.phase-readiness .badge.warn{background:#fef3c7;color:#92400e}
.phase-ready .badge.ok{background:#dcfce7;color:#166534}
.v399-sticky-cta .v3112-review-next::after{content:''}
@media(max-width:520px){
  .common-vault-card .vault-item{grid-template-columns:1fr;align-items:start}
  .v3115-prepare-checklist .card-head{align-items:flex-start}
  .prep-check-row{padding:10px}
}

/* V3.10.17 — Prepare Trip dates as proper popup modal
   Fixes the form appearing as an unformatted block at the bottom of the screen. */
.modal.v3115-prepare-modal{
  position:fixed;
  inset:0;
  z-index:12000;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px;
  background:rgba(15,23,42,.56);
  backdrop-filter:blur(5px);
  -webkit-backdrop-filter:blur(5px);
}
.modal.v3115-prepare-modal.hidden{display:none!important}
.modal.v3115-prepare-modal .modal-card{
  position:relative;
  width:min(460px,calc(100vw - 28px));
  max-width:460px;
  max-height:calc(100vh - 38px);
  overflow:auto;
  background:linear-gradient(180deg,#ffffff 0%,#f8fffe 100%);
  border:1px solid rgba(13,148,136,.20);
  border-radius:28px;
  box-shadow:0 28px 90px rgba(15,23,42,.34),0 0 0 1px rgba(255,255,255,.65) inset;
  padding:24px 22px 20px;
  margin:0;
  transform:translateY(0);
  animation:prepareModalIn .18s ease-out;
}
@keyframes prepareModalIn{from{opacity:.5;transform:translateY(14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
.modal.v3115-prepare-modal .modal-card .close,
.modal.v3115-prepare-modal .modal-card button.close{
  position:absolute;
  top:12px;
  right:12px;
  width:38px;
  height:38px;
  border-radius:999px;
  border:1px solid rgba(148,163,184,.30);
  background:#fff;
  color:#0f172a;
  font-size:22px;
  line-height:1;
  font-weight:900;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 8px 20px rgba(15,23,42,.08);
}
.modal.v3115-prepare-modal .modal-card .badge{margin-right:42px}
.modal.v3115-prepare-modal .modal-card h2{margin:10px 42px 6px 0;color:#0f172a;font-size:22px;line-height:1.15;font-weight:950}
.modal.v3115-prepare-modal .modal-card p.mini{margin:0 0 14px;color:#64748b;font-size:13px;line-height:1.45;font-weight:750}
.modal.v3115-prepare-modal .form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0}
.modal.v3115-prepare-modal .field label{display:block;margin:0 0 6px;color:#0f766e;font-size:11px;font-weight:950;text-transform:uppercase;letter-spacing:.04em}
.modal.v3115-prepare-modal input[type="date"]{
  width:100%;
  min-height:48px;
  border:1px solid #c7e8ee;
  background:#fff;
  border-radius:16px;
  padding:10px 12px;
  color:#0f172a;
  font-size:14px;
  font-weight:850;
  outline:none;
}
.modal.v3115-prepare-modal input[type="date"]:focus{border-color:#0d9488;box-shadow:0 0 0 4px rgba(13,148,136,.13)}
.modal.v3115-prepare-modal .notice.compact{border-radius:16px;margin:8px 0 16px;padding:11px 12px;font-size:12.5px;line-height:1.4}
.modal.v3115-prepare-modal .actions.split{display:grid;grid-template-columns:1fr 1.35fr;gap:10px;margin-top:14px}
.modal.v3115-prepare-modal .actions.split .btn{width:100%;min-height:46px;border-radius:16px;font-weight:950}
body:has(.modal.v3115-prepare-modal:not(.hidden)) .v399-sticky-cta,
body:has(.modal.v3115-prepare-modal:not(.hidden)) .edit-sticky-actions{display:none!important}
@media(max-width:520px){
  .modal.v3115-prepare-modal{align-items:flex-end;padding:12px}
  .modal.v3115-prepare-modal .modal-card{width:100%;max-width:100%;border-radius:26px 26px 18px 18px;padding:22px 16px 16px;max-height:86vh}
  .modal.v3115-prepare-modal .form-row{grid-template-columns:1fr;gap:10px}
  .modal.v3115-prepare-modal .actions.split{grid-template-columns:1fr}
}

/* V3.10.18 — Prepare Trip realistic dashboard */
#execution .tool-hero.execution-hero.v3118-hidden-hero{display:none!important}
#executionCenter .v3114-readiness-compact-bar,#executionCenter .v3115-phase-hero{display:none!important}
.v3118-prepare-hero{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:20px;border:1px solid rgba(13,148,136,.24);border-radius:24px;background:linear-gradient(135deg,#ecfeff,#f0fdfa 56%,#fff7ed);box-shadow:0 18px 44px rgba(15,118,110,.12);margin:10px 0 14px}
.v3118-prepare-hero h2{margin:6px 0 5px;color:#062f4f;font-size:24px;line-height:1.1;font-weight:950}.v3118-prepare-hero p{margin:0;color:#55708a;font-size:13px;font-weight:750;line-height:1.4}.v3118-hero-badges{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.v3118-hero-badges span{background:rgba(255,255,255,.76);border:1px solid rgba(13,148,136,.14);border-radius:999px;padding:6px 9px;color:#0f766e;font-size:11px;font-weight:950}.v3118-prepare-hero .readiness-alert-bell{min-width:58px;height:58px;border-radius:20px;background:#fff7ed;border:1px solid #fed7aa;box-shadow:0 16px 32px rgba(251,146,60,.18)}
.v3118-action-bar{position:sticky;top:8px;z-index:9;display:grid;grid-template-columns:1fr 1.2fr 1.2fr;gap:10px;margin:12px 0 16px;padding:10px;background:rgba(255,255,255,.84);backdrop-filter:blur(14px);border:1px solid rgba(148,163,184,.18);border-radius:22px;box-shadow:0 14px 34px rgba(15,23,42,.10)}.v3118-action-bar .btn{min-height:44px;border-radius:15px;font-weight:950}.v3118-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:14px 0}.v3118-info-card,.v3118-progress-card,.v3118-route-card,.v3118-itinerary-card,.v3118-weather-card,.v3118-flight-card,.v3118-budget-card,.v3118-health-card,.v3118-doc-card,.v3118-checklist-card{border:1px solid rgba(13,148,136,.13);box-shadow:0 14px 34px rgba(15,118,110,.06)}.v3118-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.v3118-stat-grid div{background:#f8fafc;border:1px solid #eef2f7;border-radius:16px;padding:10px}.v3118-progress-card{text-align:center}.v3118-ring{width:136px;height:136px;border-radius:999px;margin:10px auto 14px;display:flex;align-items:center;justify-content:center;flex-direction:column;background:conic-gradient(#0d9488 calc(var(--p,70)*1%),#ecfeff 0);box-shadow:inset 0 0 0 12px #fff}.v3118-ring strong{font-size:34px;color:#0f766e;font-weight:950}.v3118-ring small{font-size:12px;color:#64748b;font-weight:850}.v3118-route-map{display:flex;align-items:center;gap:9px;overflow-x:auto;padding:12px 2px 4px;scrollbar-width:thin}.v3118-route-node{min-width:104px;background:#fff;border:1px solid #ccfbf1;border-radius:18px;padding:11px;text-align:center;box-shadow:0 10px 24px rgba(13,148,136,.07)}.v3118-route-node b{display:block;font-size:22px}.v3118-route-node em{font-style:normal;font-weight:900;color:#0f172a;font-size:12px}.v3118-route-node.home{background:#f0fdfa}.v3118-route-line{font-style:normal;color:#0d9488;font-weight:950}.v3118-day-list{display:grid;gap:12px}.v3118-day-card{border:1px solid #e2e8f0;border-radius:20px;padding:13px;background:linear-gradient(180deg,#fff,#f8fafc)}.v3118-day-head{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-bottom:8px}.v3118-day-head span{font-size:11px;font-weight:950;color:#0d9488;text-transform:uppercase;letter-spacing:.04em}.v3118-day-head b{font-size:12px;color:#64748b}.v3118-day-card h4{margin:0 0 8px;color:#0f172a;font-size:16px}.v3118-day-card ul{margin:0 0 10px;padding-left:18px;color:#334155;font-size:13px;line-height:1.45}.v3118-day-weather{border-radius:16px;background:#ecfeff;border:1px solid #ccfbf1;padding:10px}.v3118-day-weather strong{display:block;color:#0f766e;font-size:12px}.v3118-day-weather small{display:block;color:#475569;font-size:12px;line-height:1.35;margin-top:2px}.v3118-weather-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}.v3118-weather-chip{background:#fff7ed;border:1px solid #fed7aa;border-radius:18px;padding:12px}.v3118-weather-chip b{display:block;color:#9a3412;font-size:13px}.v3118-weather-chip small{display:block;color:#c2410c;font-weight:950;margin:4px 0}.v3118-weather-chip p{margin:0;color:#475569;font-size:12.5px;line-height:1.4}.v3118-flight-list{display:grid;gap:9px}.v3118-flight-row{border:1px solid #e2e8f0;border-radius:16px;padding:11px;background:#f8fafc}.v3118-flight-row b{display:block;color:#0d9488;font-size:11px;text-transform:uppercase}.v3118-flight-row strong{display:block;color:#0f172a;margin:3px 0}.v3118-flight-row small{color:#64748b}.v3118-budget-mini{display:grid;gap:9px;margin-top:12px}.v3118-budget-mini div{position:relative;overflow:hidden;border-radius:14px;background:#f8fafc;border:1px solid #e2e8f0;padding:9px 10px;display:flex;justify-content:space-between;gap:10px}.v3118-budget-mini i{position:absolute;left:0;bottom:0;height:3px;background:#0d9488;border-radius:999px}.v3118-budget-mini span,.v3118-budget-mini b{position:relative;z-index:1;font-size:12px}.v3118-health-meter{text-align:center;margin:8px 0 10px}.v3118-health-meter strong{font-size:42px;color:#0d9488;font-weight:950}.v3118-health-meter span{color:#64748b;font-weight:900}.v3118-doc-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}.v3118-doc-grid div{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;text-align:center;padding:14px}.v3118-doc-grid b{display:block;color:#0f172a;font-size:25px}.v3118-doc-grid small{color:#64748b;font-weight:850}.v3118-check-list{display:grid;gap:10px}.v3118-check-row{display:flex;gap:10px;border:1px solid #e2e8f0;border-radius:18px;padding:12px;background:#fff}.v3118-check-row.done{background:#f0fdf4;border-color:#bbf7d0}.v3118-check-row.overdue{background:#fff7ed;border-color:#fed7aa}.v3118-check-row input{margin-top:3px;accent-color:#0d9488}.v3118-check-row span{display:block}.v3118-check-row b{display:block;color:#0f172a}.v3118-check-row small{display:block;color:#64748b;font-size:12px;margin:2px 0}.v3118-check-row em{display:block;color:#475569;font-size:12.5px;line-height:1.35;font-style:normal}.notice.compact{padding:9px 10px;margin:8px 0 0;border-radius:14px;font-size:12px}
@media(max-width:760px){.v3118-grid-2{grid-template-columns:1fr}.v3118-prepare-hero{align-items:flex-start;padding:16px}.v3118-prepare-hero h2{font-size:21px}.v3118-action-bar{grid-template-columns:1fr;position:relative;top:auto}.v3118-stat-grid{grid-template-columns:1fr 1fr}.v3118-route-node{min-width:92px}.v3118-day-head{align-items:flex-start;flex-direction:column}}

/* V3.10.19 — Prepare Trip tabbed dashboard, original map and floating actions */
.v3114-breadcrumbs{display:none!important}
#executionCenter{padding-bottom:calc(112px + env(safe-area-inset-bottom,0px));}
.v3119-dashboard{position:relative;padding-bottom:8px;}
.v3119-dashboard .v3118-action-bar,
.v3119-dashboard .v3118-health-card .btn,
#executionCenter .v3118-health-card button[onclick*="Ready"]{display:none!important}
.v3119-hero{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:8px 0 12px;padding:16px 16px 14px;border-radius:24px;background:linear-gradient(135deg,#ecfeff 0%,#f0fdfa 52%,#fff7ed 100%);border:1px solid rgba(13,148,136,.20);box-shadow:0 18px 42px rgba(15,118,110,.10)}
.v3119-hero-main{min-width:0;flex:1}.v3119-hero .trip-kicker{font-size:11px;color:#0f766e;font-weight:950;letter-spacing:.12em;text-transform:uppercase}.v3119-hero h2{margin:5px 0 5px;color:#062f4f;font-size:23px;line-height:1.12;font-weight:950}.v3119-hero p{margin:0;color:#55708a;font-size:12.5px;font-weight:750;line-height:1.35}.v3119-hero small{display:block;color:#64748b;font-size:11.5px;font-weight:850;margin-top:6px}.v3119-progress{height:8px;border-radius:999px;background:rgba(13,148,136,.12);margin-top:11px;overflow:hidden}.v3119-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0d9488,#14b8a6)}
.v3119-tabs{position:sticky;top:0;z-index:20;display:flex;gap:9px;overflow-x:auto;padding:8px 1px 12px;margin:0 0 8px;background:linear-gradient(180deg,#f7fbff 0%,rgba(247,251,255,.92) 100%);backdrop-filter:blur(12px);scrollbar-width:thin}.v3119-tabs button{flex:0 0 auto;border:1px solid rgba(13,148,136,.16);background:#fff;color:#0f3d56;border-radius:999px;padding:10px 13px;font-size:12px;font-weight:950;box-shadow:0 8px 20px rgba(15,34,58,.06);white-space:nowrap}.v3119-tabs button span{margin-right:5px}.v3119-tabs button.active{background:linear-gradient(135deg,#0d9488,#0f766e);border-color:#0d9488;color:#fff;box-shadow:0 12px 22px rgba(13,148,136,.22)}
.v3119-tab-content{display:block}.v3119-info-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0}.v3119-info{min-height:92px;border-radius:22px;padding:13px;border:1px solid rgba(148,163,184,.18);box-shadow:0 12px 26px rgba(15,34,58,.06);display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.v3119-info b{font-size:21px;line-height:1}.v3119-info span{font-size:10.5px;color:#64748b;text-transform:uppercase;letter-spacing:.06em;font-weight:950}.v3119-info strong{font-size:13px;color:#0f172a;line-height:1.22}.v3119-info.teal{background:#ecfeff}.v3119-info.amber{background:#fff7ed}.v3119-info.blue{background:#eff6ff}.v3119-info.purple{background:#f5f3ff}.v3119-info.coral{background:#fff1f2}.v3119-info.green{background:#f0fdf4}.v3119-info.slate{background:#f8fafc}.v3119-info.pink{background:#fdf2f8}
.v3119-map-card{overflow:hidden}.v3119-map{height:310px;border-radius:22px;border:1px solid #dbeafe;background:#eef6ff;overflow:hidden}.route-caption{margin-top:9px!important;color:#64748b!important;font-weight:800}.v3119-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.v3119-day-list{display:grid;gap:12px}.v3119-day{border:1px solid #e2e8f0;border-radius:22px;background:linear-gradient(180deg,#ffffff,#f8fafc);padding:14px;box-shadow:0 10px 24px rgba(15,34,58,.04)}.v3119-day header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:8px}.v3119-day header span{font-size:11px;color:#0d9488;text-transform:uppercase;letter-spacing:.04em;font-weight:950}.v3119-day header b{font-size:12px;color:#64748b}.v3119-day h4{margin:0 0 8px;color:#0f172a;font-size:16px}.v3119-day ul{margin:0 0 10px;padding-left:18px;color:#334155;font-size:13px;line-height:1.45}.v3119-weather-note{background:#ecfeff;border:1px solid #ccfbf1;border-radius:16px;padding:10px}.v3119-weather-note strong{display:block;color:#0f766e;font-size:12px}.v3119-weather-note small{display:block;color:#475569;font-size:12px;line-height:1.35;margin-top:2px}
.v3119-leg-list{display:grid;gap:10px}.v3119-leg{border:1px solid #e2e8f0;border-radius:18px;background:#f8fafc;padding:12px}.v3119-leg b{display:block;color:#0d9488;font-size:11px;text-transform:uppercase;letter-spacing:.04em}.v3119-leg strong{display:block;color:#0f172a;margin:4px 0;font-size:15px}.v3119-leg small{color:#64748b;font-weight:750;line-height:1.35}.v3119-budget-hero{border:1px solid #ccfbf1;background:linear-gradient(135deg,#ecfeff,#fff);border-radius:22px;padding:15px;margin:8px 0 12px}.v3119-budget-hero strong{display:block;color:#0f766e;font-size:28px}.v3119-budget-hero span{color:#64748b;font-weight:900;font-size:11px;text-transform:uppercase}.v3119-budget-hero b{display:block;color:#0f172a;margin-top:6px}.v3119-budget-hero small{display:block;color:#64748b;margin-top:2px;font-weight:800}.v3119-budget-rows{display:grid;gap:8px}.v3119-budget-rows div{display:flex;justify-content:space-between;gap:8px;border:1px solid #e2e8f0;background:#f8fafc;border-radius:15px;padding:9px 10px;font-size:12.5px}.v3119-budget-rows b{color:#0f172a}.v3119-health-ring{width:144px;height:144px;border-radius:999px;margin:12px auto 14px;display:flex;align-items:center;justify-content:center;flex-direction:column;background:conic-gradient(#0d9488 calc(var(--p,70)*1%),#ecfeff 0);box-shadow:inset 0 0 0 13px #fff}.v3119-health-ring strong{font-size:40px;color:#0f766e}.v3119-health-ring span{color:#64748b;font-weight:950}.v3119-visa-section{margin-top:14px}.v3119-visa-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.v3119-visa-card{border:1px solid #fed7aa;background:linear-gradient(180deg,#fff7ed,#fff);border-radius:22px;padding:14px}.v3119-visa-card h4{margin:4px 0 6px;color:#9a3412;font-size:16px}.v3119-visa-card p{margin:0 0 10px;color:#64748b;font-size:12.5px;line-height:1.4}.v3119-visa-card ul{margin:0 0 12px;padding-left:18px;color:#334155;font-size:12.5px;line-height:1.5}.v3119-check-list{display:grid;gap:9px}.v3119-check{display:flex;gap:10px;border:1px solid #e2e8f0;border-radius:18px;background:#fff;padding:12px}.v3119-check.done{background:#f0fdf4;border-color:#bbf7d0}.v3119-check input{margin-top:3px;accent-color:#0d9488}.v3119-check b{display:block;color:#0f172a}.v3119-check small{display:block;color:#64748b;margin:2px 0;font-size:12px}.v3119-check em{display:block;color:#475569;font-size:12.5px;line-height:1.35;font-style:normal}.v3119-doc-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 0}.v3119-doc-grid article{background:#f8fafc;border:1px solid #e2e8f0;border-radius:22px;padding:16px;text-align:center}.v3119-doc-grid b{display:block;font-size:27px}.v3119-doc-grid strong{display:block;font-size:28px;color:#0f766e}.v3119-doc-grid span{display:block;color:#0f172a;font-weight:950}.v3119-doc-grid small{display:block;color:#64748b;margin-top:4px;line-height:1.35}
.v3119-float{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(74px + env(safe-area-inset-bottom,0px));width:min(560px,calc(100vw - 22px));z-index:5800;display:grid;grid-template-columns:1fr 1fr 1.25fr;gap:9px;padding:10px;border-radius:24px;background:rgba(255,255,255,.92);border:1px solid rgba(148,163,184,.24);box-shadow:0 20px 54px rgba(15,23,42,.22);backdrop-filter:blur(18px)}.v3119-float .btn{min-height:46px;border-radius:16px;font-weight:950;padding:10px 12px}.bottom-nav{z-index:5000}.v3119-dashboard + .v3118-action-bar{display:none!important}
@media(max-width:760px){.v3119-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v3119-two{grid-template-columns:1fr}.v3119-map{height:250px}.v3119-hero{align-items:flex-start}.v3119-hero h2{font-size:21px}.v3119-float{grid-template-columns:.8fr .75fr 1.2fr;gap:7px;width:calc(100vw - 18px);bottom:calc(76px + env(safe-area-inset-bottom,0px));padding:8px}.v3119-float .btn{font-size:12px;min-height:44px;padding:8px}.v3119-doc-grid{grid-template-columns:1fr}.v3119-day header{display:block}.v3119-tabs{margin-left:-2px;margin-right:-2px}}
@media(max-width:380px){.v3119-float{grid-template-columns:1fr;position:sticky;bottom:0;transform:none;left:auto;width:auto;margin:12px 0 4px}.v3119-dashboard{padding-bottom:0}#executionCenter{padding-bottom:90px}.v3119-info-grid{grid-template-columns:1fr}}

/* V3.10.20 — Prepare UX Integration + Animated Route + Docs Split */
.v3120-dashboard{position:relative;padding-bottom:98px}.v3120-hero{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:8px 0 12px;padding:16px 16px 14px;border-radius:24px;background:linear-gradient(135deg,#ecfeff 0%,#f0fdfa 56%,#fff7ed 100%);border:1px solid rgba(13,148,136,.2);box-shadow:0 18px 42px rgba(15,118,110,.1)}.v3120-hero-main{min-width:0;flex:1}.v3120-hero .trip-kicker{font-size:11px;color:#0f766e;font-weight:950;letter-spacing:.12em;text-transform:uppercase}.v3120-hero h2{margin:5px 0;color:#062f4f;font-size:23px;line-height:1.12;font-weight:950}.v3120-hero p{margin:0;color:#55708a;font-size:12.5px;font-weight:750;line-height:1.35}.v3120-hero small{display:block;color:#64748b;font-size:11.5px;font-weight:850;margin-top:6px}.v3120-progress{height:8px;border-radius:999px;background:rgba(13,148,136,.12);margin-top:11px;overflow:hidden}.v3120-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#0d9488,#14b8a6)}
.v3120-tabs{position:sticky;top:0;z-index:20;display:flex;gap:9px;overflow-x:auto;padding:8px 1px 12px;margin:0 0 8px;background:linear-gradient(180deg,#f7fbff 0%,rgba(247,251,255,.92) 100%);backdrop-filter:blur(12px);scrollbar-width:thin}.v3120-tabs button{flex:0 0 auto;border:1px solid rgba(13,148,136,.16);background:#fff;color:#0f3d56;border-radius:999px;padding:10px 13px;font-size:12px;font-weight:950;box-shadow:0 8px 20px rgba(15,34,58,.06);white-space:nowrap}.v3120-tabs button span{margin-right:5px}.v3120-tabs button.active{background:linear-gradient(135deg,#0d9488,#0f766e);border-color:#0d9488;color:#fff;box-shadow:0 12px 22px rgba(13,148,136,.22)}
.v3120-info-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0}.v3120-info{min-height:92px;border-radius:22px;padding:13px;border:1px solid rgba(148,163,184,.18);box-shadow:0 12px 26px rgba(15,34,58,.06);display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.v3120-info b{font-size:21px;line-height:1}.v3120-info span{font-size:10.5px;color:#64748b;text-transform:uppercase;letter-spacing:.06em;font-weight:950}.v3120-info strong{font-size:13px;color:#0f172a;line-height:1.22}.v3120-info.teal{background:#ecfeff}.v3120-info.amber{background:#fff7ed}.v3120-info.blue{background:#eff6ff}.v3120-info.purple{background:#f5f3ff}.v3120-info.coral{background:#fff1f2}.v3120-info.green{background:#f0fdf4}.v3120-info.slate{background:#f8fafc}.v3120-info.pink{background:#fdf2f8}
.v3120-map-card{overflow:hidden}.v3120-map{height:320px;border-radius:22px;border:1px solid #dbeafe;background:#eef6ff;overflow:hidden}.v3120-plane-icon{font-size:25px;line-height:34px;text-align:center;filter:drop-shadow(0 8px 12px rgba(15,23,42,.24));transform-origin:center;animation:v3120PlaneFloat 1.6s ease-in-out infinite alternate}.v3120-stop-label{background:#fff!important;border:1px solid rgba(13,148,136,.2)!important;border-radius:999px!important;color:#0f172a!important;font-size:11px!important;font-weight:900!important;padding:3px 7px!important;box-shadow:0 7px 16px rgba(15,23,42,.12)!important}.route-caption{margin-top:9px!important;color:#64748b!important;font-weight:800}@keyframes v3120PlaneFloat{from{transform:translateY(-1px)}to{transform:translateY(2px)}}
.v3120-travel-card{margin-bottom:10px}.v3120-leg-list{display:grid;gap:10px}.v3120-leg{border:1px solid #e2e8f0;border-radius:18px;background:#f8fafc;padding:12px}.v3120-leg b{display:block;color:#0d9488;font-size:11px;text-transform:uppercase;letter-spacing:.04em}.v3120-leg strong{display:block;color:#0f172a;margin:4px 0;font-size:15px}.v3120-leg small{color:#64748b;font-weight:750;line-height:1.35}.v3120-day-list{display:grid;gap:10px}.v3120-day{border:1px solid #e2e8f0;border-radius:22px;background:linear-gradient(180deg,#fff,#f8fafc);padding:14px;box-shadow:0 10px 24px rgba(15,34,58,.04)}.v3120-day header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:8px}.v3120-day header span{font-size:11px;color:#0d9488;text-transform:uppercase;letter-spacing:.04em;font-weight:950}.v3120-day header b{font-size:12px;color:#64748b}.v3120-day h4{margin:0 0 8px;color:#0f172a;font-size:16px}.v3120-day ul{margin:0 0 10px;padding-left:18px;color:#334155;font-size:13px;line-height:1.45}.v3120-weather-note{background:#ecfeff;border:1px solid #ccfbf1;border-radius:16px;padding:10px}.v3120-weather-note strong{display:block;color:#0f766e;font-size:12px}.v3120-weather-note small{display:block;color:#475569;font-size:12px;line-height:1.35;margin-top:2px}.v3120-alerts-card{margin-top:8px}.v3120-alert-line{border:1px solid #fed7aa;background:#fff7ed;border-radius:16px;padding:9px 11px;margin-top:7px}.v3120-alert-line b{display:block;color:#9a3412;font-size:13px}.v3120-alert-line small{display:block;color:#475569;font-weight:700;line-height:1.35;margin-top:2px}
.v3120-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.v3120-budget-hero{border:1px solid #ccfbf1;background:linear-gradient(135deg,#ecfeff,#fff);border-radius:22px;padding:15px;margin:8px 0 12px}.v3120-budget-hero strong{display:block;color:#0f766e;font-size:28px}.v3120-budget-hero span{color:#64748b;font-weight:900;font-size:11px;text-transform:uppercase}.v3120-budget-hero b{display:block;color:#0f172a;margin-top:6px}.v3120-budget-hero small{display:block;color:#64748b;margin-top:2px;font-weight:800}.v3120-budget-rows{display:grid;gap:8px}.v3120-budget-rows div{display:flex;justify-content:space-between;gap:8px;border:1px solid #e2e8f0;background:#f8fafc;border-radius:15px;padding:9px 10px;font-size:12.5px}.v3120-budget-rows b{color:#0f172a}.v3120-health-ring{width:144px;height:144px;border-radius:999px;margin:12px auto 14px;display:flex;align-items:center;justify-content:center;flex-direction:column;background:conic-gradient(#0d9488 calc(var(--p,70)*1%),#ecfeff 0);box-shadow:inset 0 0 0 13px #fff}.v3120-health-ring strong{font-size:40px;color:#0f766e}.v3120-health-ring span{color:#64748b;font-weight:950}.center{text-align:center}
.v3120-visa-section{margin-top:0}.v3120-visa-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px}.v3120-visa-card{border:1px solid #fed7aa;background:linear-gradient(180deg,#fff7ed,#fff);border-radius:22px;padding:14px}.v3120-visa-card h4{margin:4px 0 6px;color:#9a3412;font-size:16px}.v3120-visa-card p{margin:0 0 10px;color:#64748b;font-size:12.5px;line-height:1.4}.v3120-visa-card ul{margin:0 0 12px;padding-left:18px;color:#334155;font-size:12.5px;line-height:1.5}.v3120-check-list{display:grid;gap:9px}.v3120-check{display:flex;gap:10px;border:1px solid #e2e8f0;border-radius:18px;background:#fff;padding:12px}.v3120-check.done{background:#f0fdf4;border-color:#bbf7d0}.v3120-check input{margin-top:3px;accent-color:#0d9488}.v3120-check b{display:block;color:#0f172a}.v3120-check small{display:block;color:#64748b;margin:2px 0;font-size:12px}.v3120-check em{display:block;color:#475569;font-size:12.5px;line-height:1.35;font-style:normal}
.v3120-docs-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.v3120-doc-card .form-row{gap:10px}.v3120-doc-card input[type=file]{background:#fff;border:1px dashed #bfd7ea;border-radius:14px;padding:10px;width:100%}.v3120-doc-row{position:relative}.v3120-doc-row a{display:inline-block;margin-top:4px}.v3120-float{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(74px + env(safe-area-inset-bottom,0px));width:min(560px,calc(100vw - 22px));z-index:5900;display:grid;grid-template-columns:1fr 1fr 1.25fr;gap:9px;padding:10px;border-radius:24px;background:rgba(255,255,255,.94);border:1px solid rgba(148,163,184,.24);box-shadow:0 20px 54px rgba(15,23,42,.22);backdrop-filter:blur(18px)}.v3120-float .btn{min-height:46px;border-radius:16px;font-weight:950;padding:10px 12px}.v3120-dashboard + .v3119-float,.v3120-dashboard + .v3118-action-bar{display:none!important}.bottom-nav{z-index:5000}
@media(max-width:760px){.v3120-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v3120-two,.v3120-docs-grid{grid-template-columns:1fr}.v3120-map{height:260px}.v3120-hero{align-items:flex-start}.v3120-hero h2{font-size:21px}.v3120-float{grid-template-columns:.8fr .75fr 1.2fr;gap:7px;width:calc(100vw - 18px);bottom:calc(76px + env(safe-area-inset-bottom,0px));padding:8px}.v3120-float .btn{font-size:12px;min-height:44px;padding:8px}.v3120-day header{display:block}.v3120-tabs{margin-left:-2px;margin-right:-2px}.v3120-stop-label{font-size:10px!important;padding:2px 6px!important}}
@media(max-width:380px){.v3120-float{grid-template-columns:1fr;position:sticky;bottom:0;transform:none;left:auto;width:auto;margin:12px 0 4px}.v3120-dashboard{padding-bottom:0}#executionCenter{padding-bottom:90px}.v3120-info-grid{grid-template-columns:1fr}}

/* V3.10.21 — itinerary route map + edit name polish */
.v3121-map-card{margin-bottom:14px}
.v3121-map{height:280px;border-radius:22px;overflow:hidden;background:#eaf7f6;border:1px solid rgba(13,148,136,.18)}
.v3121-plane-icon{font-size:26px;filter:drop-shadow(0 8px 14px rgba(15,23,42,.25));transform:rotate(18deg)}
.v3121-edit-name-card{border:1px solid rgba(13,148,136,.2);background:linear-gradient(135deg,#ecfeff,#f0fdfa)}
.v3121-edit-name-card input{width:100%;border:0;background:#fff;border-radius:16px;padding:14px 16px;font-weight:800;color:#0f172a;box-shadow:inset 0 0 0 1px rgba(15,23,42,.08)}
@media(max-width:640px){.v3121-map{height:240px}.v3121-edit-name-card input{font-size:15px}}

/* V3.10.22 — Travel dashboard routing + Album live capture bridge */
.v3122-live-album-head{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:18px;background:linear-gradient(135deg,#ecfeff,#f8fafc);border:1px solid rgba(13,148,136,.16);margin-bottom:4px}
.v3122-live-album-head strong{display:block;color:#0f172a;font-size:15px}.v3122-live-album-head small{display:block;color:#64748b;font-weight:800;margin-top:2px}
.album-item.v3122-live-memory{border:1px solid rgba(13,148,136,.16);background:linear-gradient(180deg,#fff,#f8fafc);border-radius:20px;box-shadow:0 12px 26px rgba(15,34,58,.06);overflow:hidden}
.album-item.v3122-live-memory.private{opacity:.78;background:#f8fafc}.album-item.v3122-live-memory small{display:block;color:#475569;line-height:1.35;margin:6px 0}.album-item.v3122-live-memory em{display:inline-block;margin-top:5px;color:#0f766e;font-style:normal;font-weight:900;font-size:11px}.album-item.v3122-live-memory.private em{color:#64748b}
.v3122-memory-icon{width:100%;min-height:130px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#ecfeff,#f0fdfa);font-size:42px}
.story-memory-row p{margin:4px 0 0;color:#64748b;font-size:12px;line-height:1.35}
@media(max-width:640px){.v3122-live-album-head{align-items:flex-start}.v3122-memory-icon{min-height:110px}.album-item.v3122-live-memory{border-radius:18px}}

/* V3.10.23 routing/live-capture/prepare refresh hardening: no layout migration required. */


/* V3.10.25 — first-save trip name modal */
.modal.v3125-trip-name-modal .field{margin:14px 0 6px}
.modal.v3125-trip-name-modal input[type="text"]{width:100%;border:1px solid #cbddee;border-radius:16px;padding:13px 14px;font-size:15px;font-weight:850;color:#0f172a;background:#fff;outline:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.9)}
.modal.v3125-trip-name-modal input[type="text"]:focus{border-color:#0d9488;box-shadow:0 0 0 4px rgba(13,148,136,.13)}
body:has(.modal.v3125-trip-name-modal:not(.hidden)) .v399-sticky-cta,
body:has(.modal.v3125-trip-name-modal:not(.hidden)) .edit-sticky-actions{display:none!important}


/* V3.10.27 — Nearby scroll cue + visa itinerary + edit button polish */
.v3127-nearby-scroll-card{position:relative!important;overflow:hidden!important}.v3127-nearby-scroll-card .v3127-scroll-helper{display:flex;align-items:center;justify-content:center;gap:8px;margin:0 0 8px;padding:7px 10px;border-radius:999px;background:linear-gradient(135deg,#ecfeff,#f0fdfa);border:1px solid #a5f3fc;color:#0f766e;font-size:11px;font-weight:950}.v3127-nearby-scroll-card .v3127-scroll-helper span{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:#fff;color:#0891b2;box-shadow:0 4px 10px rgba(8,145,178,.14);font-size:18px;line-height:1}.v3127-nearby-scroll-card.has-horizontal-scroll:before,.v3127-nearby-scroll-card.has-horizontal-scroll:after{content:"";position:absolute;top:86px;bottom:14px;width:34px;z-index:4;pointer-events:none}.v3127-nearby-scroll-card.has-horizontal-scroll:before{left:0;background:linear-gradient(90deg,#fff,rgba(255,255,255,0))}.v3127-nearby-scroll-card.has-horizontal-scroll:after{right:0;background:linear-gradient(270deg,#fff,rgba(255,255,255,0))}.v3127-nearby-scroll-card.at-start:before,.v3127-nearby-scroll-card.at-end:after{opacity:.25}.v3127-nearby-scroll-card #nearRouteSuggestions{scrollbar-width:thin}.v3127-nearby-scroll-card #nearRouteSuggestions::-webkit-scrollbar{display:block;height:5px}.v3127-nearby-scroll-card #nearRouteSuggestions::-webkit-scrollbar-thumb{background:#99f6e4;border-radius:999px}.v3127-visa-itinerary-card{border-color:#bfdbfe!important;background:linear-gradient(180deg,#eff6ff,#fff)!important}.v3127-visa-list{display:grid;gap:10px;margin:10px 0}.v3127-visa-row{display:grid;grid-template-columns:34px 1fr auto;gap:10px;align-items:start;background:#fff;border:1px solid #dbeafe;border-radius:14px;padding:11px;box-shadow:0 6px 16px rgba(15,34,58,.05)}.v3127-visa-flag{width:34px;height:34px;border-radius:13px;display:grid;place-items:center;background:#eef2ff;font-size:18px}.v3127-visa-row strong{display:block;color:#0f172a;font-size:13px}.v3127-visa-row small{display:block;color:#64748b;font-size:11px;font-weight:750;line-height:1.35}.v3127-visa-row ul{margin:6px 0 0 16px;padding:0;color:#475569;font-size:11px;font-weight:750;line-height:1.35}.v3127-visa-row em{font-style:normal;border-radius:999px;padding:6px 9px;font-size:10px;font-weight:950;white-space:nowrap}.v3127-visa-row em.ok{background:#dcfce7;color:#166534}.v3127-visa-row em.warn{background:#fef3c7;color:#92400e}.v3127-visa-row em.danger{background:#fee2e2;color:#b91c1c}.v3127-day-visa{display:flex;justify-content:space-between;gap:8px;align-items:center;border-radius:12px;padding:8px 10px;margin:8px 0;border:1px solid #dbeafe;background:#eff6ff;color:#1d4ed8;font-size:11px;font-weight:900}.v3127-day-visa span{font-weight:800;color:#475569;text-align:right}.v3127-day-visa.ok{background:#f0fdf4;border-color:#bbf7d0;color:#166534}.v3127-day-visa.warn{background:#fffbeb;border-color:#fde68a;color:#92400e}.v3127-day-visa.danger{background:#fff1f2;border-color:#fecdd3;color:#be123c}#myTripsList [data-v3127-edit-trip]{box-shadow:0 12px 24px rgba(8,139,152,.20)}

/* V3.10.28 — alerts/readiness/live capture/expense statement fixes */
.v3128-alert-list .smart-alert .mini-link{white-space:nowrap}
.v3128-readiness-breakdown{border:1px solid rgba(14,165,233,.22);background:linear-gradient(145deg,#ffffff,#f0fbff)}
.v3128-score-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:12px 0}
.v3128-score-grid article{border:1px solid var(--border,#dbe7ef);border-radius:18px;padding:12px;background:#fff;box-shadow:0 10px 24px rgba(15,23,42,.05)}
.v3128-score-grid b{display:block;font-size:22px;color:#073b56}
.v3128-score-grid span{display:block;font-size:12px;color:#667085;font-weight:700}
.v3128-readiness-actions{display:grid;gap:10px;margin-top:10px}
.v3128-readiness-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;border:1px solid #e5edf5;border-radius:16px;background:#fff;padding:11px 12px}
.v3128-readiness-row strong{display:block;color:#14213d}.v3128-readiness-row small{display:block;color:#667085;line-height:1.35}.compact{padding:10px 12px!important}.muted{color:#94a3b8;font-size:12px}.v3128-receipt-row{align-items:end}.v3128-start-tools{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}.v3128-start-tools .btn{height:auto;min-height:72px;text-align:left;line-height:1.25;white-space:normal}.v3128-start-tools small{display:block;font-weight:600;opacity:.78;margin-top:4px}.v3128-pinned .pinned-trip-widget{align-items:center}.v3128-pinned .pin-card-action.danger{background:#fff1f2;color:#be123c;border:1px solid #fecdd3}.story-included{border-color:#99f6e4}.story-excluded{opacity:.72}@media(max-width:720px){.v3128-score-grid{grid-template-columns:1fr 1fr}.v3128-readiness-row{grid-template-columns:1fr}.v3128-start-tools{grid-template-columns:1fr}}


/* V3.10.29 — live journey/story polish */
.v3129-pinned .v3129-live-widget{grid-template-columns:52px minmax(0,1fr) auto auto!important;gap:8px!important;align-items:center!important}
.v3129-live-widget .pin-card-action.danger,.pin-card-action.danger{background:#fff1f2;color:#be123c;border:1px solid #fecdd3}
.v3129-live-dashboard .actions{display:flex;flex-wrap:wrap;gap:9px}.v3129-live-dashboard .actions .btn{flex:1 1 130px}
.v3129-journey-item{position:relative}.journey-item-top{display:flex;align-items:center;gap:8px;justify-content:space-between;margin-bottom:6px}.journey-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:10px}.journey-actions .danger-link{color:#be123c!important}.save-status.ok{color:#087a42;font-weight:800}.save-status.warn{color:#b45309;font-weight:800}.save-status.info{color:#0f766e;font-weight:800}
.v3129-hidden-composer{display:none!important}.v3129-story-panel{padding-bottom:calc(130px + env(safe-area-inset-bottom,0px))!important}.v3129-story-float{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(76px + env(safe-area-inset-bottom,0px));width:min(640px,calc(100vw - 20px));z-index:6400;display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:8px;padding:10px;border-radius:24px;background:rgba(255,255,255,.96);border:1px solid rgba(148,163,184,.28);box-shadow:0 20px 55px rgba(15,23,42,.22);backdrop-filter:blur(18px)}
.v3129-story-float .btn{min-height:44px;border-radius:16px;font-size:12.5px;font-weight:900;padding:9px 10px}.story-memory-row.private{opacity:.68;background:#f8fafc}.story-memory-row.private strong:after{content:' · Private';color:#64748b;font-weight:700}.story-excluded .badge.dark{background:#64748b;color:#fff}
@media(max-width:720px){.v3129-pinned .v3129-live-widget{grid-template-columns:48px 1fr!important}.v3129-live-widget .pin-card-action{grid-column:1/-1;width:100%;margin-top:4px}.v3129-story-float{grid-template-columns:1fr 1fr;bottom:calc(72px + env(safe-area-inset-bottom,0px));}.v3129-story-panel{padding-bottom:calc(180px + env(safe-area-inset-bottom,0px))!important}}
@media print{.v3129-story-float{display:none!important}}

/* V3.10.30 — compact, deterministic live-trip tools and Story Builder floating bar */
#album .story-primary-actions,#album .story-export-actions,.v3130-hidden-static-story-actions{display:none!important}
#album.v3130-story-panel,.v3130-story-panel{padding-bottom:calc(132px + env(safe-area-inset-bottom,0px))!important}
.v3130-story-float{grid-template-columns:repeat(4,minmax(0,1fr))!important;width:min(430px,calc(100vw - 22px))!important;bottom:calc(78px + env(safe-area-inset-bottom,0px))!important;border-radius:20px!important;padding:8px!important;gap:7px!important}
.v3130-story-float .btn{min-height:38px!important;border-radius:14px!important;font-size:11.5px!important;padding:7px 8px!important;box-shadow:none!important}
.v3130-live-card{border:1px solid #bfeaf0!important;background:linear-gradient(180deg,#f2feff,#ffffff)!important;border-radius:24px!important;padding:16px!important;box-shadow:0 12px 28px rgba(15,34,58,.06)!important;margin-bottom:14px!important}
.v3130-live-card .notice{margin:12px 0!important}
.v3130-live-tools{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:8px!important;margin-top:12px!important}
.v3130-tool-btn{border:1px solid #dbeafe;background:#fff;color:#172033;border-radius:16px;min-height:52px;padding:8px 6px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;font-weight:950;box-shadow:0 8px 18px rgba(15,34,58,.055);line-height:1.05;text-align:center}
.v3130-tool-btn span{font-size:17px;line-height:1}.v3130-tool-btn b{font-size:10.5px;white-space:normal}.v3130-tool-btn.primary{background:linear-gradient(135deg,#078b98,#08a8b6);color:#fff;border:0}.v3130-tool-btn.ok{background:#e8fbef;color:#087a42;border-color:#b8efd0}.v3130-tool-btn.ghost{background:#fff;color:#0b4f9d}
.v3130-pinned{margin-top:12px!important}.v3130-pin-widget{grid-template-columns:48px minmax(0,1fr)!important;padding:14px 38px 14px 12px!important;gap:10px!important}.v3130-pin-widget .pin-card-action{grid-column:1/-1;width:100%;margin-top:7px}.v3130-pin-tools{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr 1fr;gap:7px;margin-top:8px}.v3130-pin-tools button{border:0;border-radius:13px;min-height:36px;padding:7px 6px;font-size:11px;font-weight:950;background:#e8fbef;color:#087a42}.v3130-pin-tools button.danger{background:#fff1f2;color:#be123c;border:1px solid #fecdd3}.v3130-trip-actions{display:flex!important;flex-wrap:wrap!important;gap:8px!important}.v3130-trip-actions .btn{min-height:38px!important;border-radius:14px!important;padding:8px 11px!important;font-size:11.5px!important;box-shadow:none!important}.v3130-trip-actions.ongoing .btn{flex:1 1 118px!important}.v3130-trip-row .actions:empty{display:none!important}
@media(max-width:620px){.v3130-live-tools{grid-template-columns:repeat(3,minmax(0,1fr))!important}.v3130-tool-btn{min-height:50px}.v3130-story-float{grid-template-columns:repeat(4,minmax(0,1fr))!important}.v3130-story-float .btn{font-size:10.5px!important;padding:6px 5px!important}.v3130-trip-actions .btn{flex:1 1 46%!important}.v3130-pin-tools{grid-template-columns:1fr 1fr 1fr!important}}
@media(max-width:360px){.v3130-live-tools{grid-template-columns:repeat(2,minmax(0,1fr))!important}.v3130-story-float{grid-template-columns:repeat(2,minmax(0,1fr))!important}.v3130-story-panel{padding-bottom:calc(176px + env(safe-area-inset-bottom,0px))!important}}
@media print{.v3130-story-float{display:none!important}}


/* V3.10.32 — album-only story action bar + completed trip report polish */
#storyFloatingActions.v3131-story-float-hidden{display:none!important;pointer-events:none!important;visibility:hidden!important;opacity:0!important}
body:not(.v3131-story-actions-on-album) #storyFloatingActions{display:none!important;pointer-events:none!important;visibility:hidden!important;opacity:0!important}
body.v3131-story-actions-on-album #storyFloatingActions.v3131-story-float-active{display:grid!important;visibility:visible!important;opacity:1!important}
.v3131-story-float{grid-template-columns:repeat(4,minmax(0,1fr))!important;width:min(390px,calc(100vw - 26px))!important;padding:7px!important;gap:6px!important;border-radius:18px!important;bottom:calc(78px + env(safe-area-inset-bottom,0px))!important}
.v3131-story-float .btn{min-height:34px!important;border-radius:13px!important;font-size:10.5px!important;padding:6px 7px!important;box-shadow:none!important}
.v3131-trip-actions{display:flex;gap:8px;flex-wrap:wrap}.v3131-trip-actions .btn{min-height:40px;border-radius:14px;font-size:12px;padding:9px 12px;flex:1 1 auto}
.v3131-completed-expense-report{border:1px solid #c7edf3;background:linear-gradient(180deg,#f8feff,#fff)}
.v3131-report-stats{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:8px;margin:10px 0 12px}.v3131-report-stats article{border:1px solid #e4edf5;background:#fff;border-radius:16px;padding:10px}.v3131-report-stats b{display:block;color:#0b4f9d;font-size:15px}.v3131-report-stats span{font-size:10.5px;color:#64748b;font-weight:850;text-transform:uppercase;letter-spacing:.02em}.v3131-completed-expense-mode .v3128-expense-note,.v3131-completed-expense-mode .v3128-receipt-row{opacity:.72}.actions.compact .btn{min-height:38px;font-size:12px;border-radius:13px}
@media(max-width:420px){.v3131-trip-actions .btn{flex:1 1 45%}.v3131-report-stats{grid-template-columns:1fr}.v3131-story-float{width:calc(100vw - 24px)!important}.v3131-story-float .btn{font-size:10px!important;padding:5px 4px!important}}
@media print{#storyFloatingActions{display:none!important}}

/* V3.10.32 — lifecycle stabilization and read-only trip summary */
body:not(.v3132-album-active) #storyFloatingActions,
#storyFloatingActions.v3131-story-float-hidden{display:none!important;visibility:hidden!important;pointer-events:none!important;}
body.v3132-album-active #storyFloatingActions.v3132-story-visible{display:grid!important;visibility:visible!important;pointer-events:auto!important;}
.v3132-trip-row .actions,.v3132-trip-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;}
.v3132-trip-actions .btn{min-height:40px;padding:10px 16px;font-size:14px;border-radius:18px;}
.v3132-view-summary .card-head{align-items:flex-start;}
.v3132-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-top:14px;}
.v3132-summary-grid article{border:1px solid #d7edf4;background:linear-gradient(180deg,#f8feff,#ffffff);border-radius:18px;padding:14px;box-shadow:0 12px 30px rgba(15,34,58,.05);}
.v3132-summary-grid article b{display:block;font-size:20px;color:#004c7c;margin-bottom:4px;}
.v3132-summary-grid article span{display:block;font-weight:800;color:#0f2742;margin-bottom:5px;}
.v3132-summary-grid article small{display:block;color:#64748b;line-height:1.45;}
.v3132-report-card .table-wrap{overflow:auto;border-radius:16px;border:1px solid #e3eef6;}
.v3132-report-card table{min-width:720px;}
.v3132-place-list{padding-left:20px;margin:8px 0 0;display:grid;gap:10px;}
.v3132-place-list li{line-height:1.45;}
.locked-tool{opacity:.56;filter:grayscale(.2);}
.locked-tool::after{content:'Locked';display:inline-block;margin-left:8px;font-size:11px;font-weight:800;color:#a16207;background:#fef3c7;border:1px solid #fde68a;border-radius:999px;padding:3px 8px;vertical-align:middle;}
.nav-btn.locked-tool::after{display:none;}
@media(max-width:640px){.v3132-trip-actions .btn{flex:1 1 calc(50% - 8px);padding:9px 10px;font-size:13px}.v3132-summary-grid{grid-template-columns:1fr 1fr}.v3132-report-card table{min-width:640px}}


/* V3.10.35 QA stabilization */
.v3135-nearby-arrows{position:relative;padding-left:34px;padding-right:34px}.near-scroll-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:30px;height:30px;border-radius:999px;border:1px solid rgba(7,150,166,.25);background:#fff;box-shadow:0 8px 22px rgba(15,34,58,.14);color:#047887;font-weight:800}.near-scroll-arrow.left{left:0}.near-scroll-arrow.right{right:0}.v3135-view-summary .actions.compact .btn,.v3132-view-summary .actions.compact .btn{white-space:nowrap}.v3135-readonly-expense-note{margin-bottom:12px}.travel-mode-card .btn,.live-trip-card .btn{min-width:64px}.travel-mode-card .btn:last-child,.live-trip-card .btn:last-child{min-width:74px}


/* V3.10.37 — keep universal document access visible on Home */
body.trip-tools-locked .icon-dashboard .dash-card[data-tool-panel="visaDocs"],
body.trip-tools-locked .icon-dashboard .dash-card[onclick*="visaDocs"]{
  display:grid!important;
  opacity:1!important;
  filter:none!important;
}
body.trip-tools-locked .icon-dashboard .dash-card[data-tool-panel="visaDocs"]::after,
body.trip-tools-locked .icon-dashboard .dash-card[onclick*="visaDocs"]::after{display:none!important;content:none!important;}
body.v3137-ready-stable .icon-dashboard .dash-card[data-tool-panel="visaDocs"],
body.v3137-ready-stable .icon-dashboard .dash-card[onclick*="visaDocs"]{display:grid!important;}

/* V3.10.38 — compact readiness and alert actions */
.v3138-compact-layout .card,
.v3138-compact-layout .notice,
.v3138-compact-layout .smart-alert,
.v3138-compact-layout .trip-row{
  margin-top: 10px !important;
  margin-bottom: 10px !important;
}
.v3138-compact-layout #executionCenter > .card,
.v3138-compact-layout #smartTravelAlerts .smart-alert,
.v3138-compact-layout .v3138-readiness-breakdown{
  padding: 16px !important;
}
.v3138-readiness-breakdown .card-head{ margin-bottom:10px; }
.v3138-score-grid{ gap:10px !important; margin:10px 0 !important; }
.v3138-readiness-actions{ display:flex; flex-direction:column; gap:10px; }
.v3138-readiness-row{
  display:grid;
  grid-template-columns: 1fr auto;
  gap:10px;
  align-items:center;
  padding:14px 16px;
  border:1px solid rgba(13,148,136,.16);
  border-radius:18px;
  background:#fff;
}
.v3138-row-copy strong{ display:block; color:#001b45; font-size:1rem; line-height:1.2; }
.v3138-row-copy small{ display:block; color:#51607d; margin-top:3px; line-height:1.35; }
.v3138-row-actions,
.v3138-alert-actions,
.v3138-inline-actions{
  grid-column:1 / -1;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  margin-top:2px;
}
.v3138-row-actions .mini-link,
.v3138-alert-actions .mini-link,
.v3138-inline-actions .mini-link{
  min-height:34px;
  padding:7px 12px;
  border-radius:999px;
  background:#e8fff6;
  border:1px solid rgba(20,184,166,.22);
}
.v3138-row-actions .muted-link,
.v3138-alert-actions .muted-link,
.v3138-inline-actions .muted-link{
  background:#f7f8fb;
  color:#51607d;
  border-color:#e2e8f0;
}
.v3138-row-actions .ghost-link{ background:#eef7ff; color:#006985; border-color:#cbeafe; }
.v3138-alert{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:10px !important;
  padding:14px 16px !important;
}
.v3138-alert strong{ display:block; margin:4px 0 2px; }
.v3138-alert small{ line-height:1.35; }
.v3138-compact-layout .v3128-readiness-row{ padding:14px 16px !important; gap:8px !important; }
.v3138-compact-layout .v3128-readiness-actions{ gap:10px !important; }
.v3138-compact-layout .execution-quick-actions.card{ margin-bottom:10px !important; }
.v3138-compact-layout .readiness-floating-save{ bottom:84px; }
@media (max-width:640px){
  .v3138-readiness-row{ grid-template-columns:1fr; }
  .v3138-row-actions .mini-link,
  .v3138-alert-actions .mini-link,
  .v3138-inline-actions .mini-link{ flex:1 1 auto; text-align:center; }
}


/* V3.11.0 — Clean single bottom navigation */
.sidebar{
  position:fixed!important;left:0!important;right:0!important;bottom:0!important;
  display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:4px!important;padding:8px 8px calc(8px + env(safe-area-inset-bottom,0px))!important;
  background:rgba(255,255,255,.98)!important;border-top:1px solid #e2eaf4!important;
  box-shadow:0 -12px 30px rgba(15,34,58,.12)!important;z-index:9000!important;
  transform:none!important;opacity:1!important;visibility:visible!important;backdrop-filter:blur(14px)!important;
}
.sidebar .nav-btn{
  appearance:none!important;border:0!important;background:transparent!important;box-shadow:none!important;
  min-width:0!important;min-height:58px!important;border-radius:18px!important;padding:5px 2px!important;
  display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;
  gap:4px!important;color:#5f6f83!important;transition:background .16s ease,color .16s ease!important;animation:none!important;transform:none!important;
}
.sidebar .nav-btn.active{background:#ecfeff!important;color:#078b98!important;}
.sidebar .nav-btn:before,.sidebar .nav-btn:after{display:none!important;content:none!important;}
.sidebar .nav-ico{width:28px!important;height:28px!important;border-radius:13px!important;display:grid!important;place-items:center!important;background:#f1f5f9!important;color:#334155!important;transition:none!important;}
.sidebar .nav-ico .ui-icon{width:18px!important;height:18px!important;}
.sidebar .nav-btn.active .nav-ico{background:linear-gradient(135deg,#078b98,#08a8b6)!important;color:#fff!important;}
.sidebar .nav-label{display:block!important;font-size:10.5px!important;font-weight:950!important;white-space:nowrap!important;line-height:1.05!important;}
.panel .sub-header .back-btn{font-size:26px!important;font-weight:900!important;}
body{padding-bottom:calc(78px + env(safe-area-inset-bottom,0px))!important;}
@media(max-width:374px){.sidebar{gap:1px!important;padding-left:5px!important;padding-right:5px!important}.sidebar .nav-btn{border-radius:15px!important}.sidebar .nav-label{font-size:9.5px!important}.sidebar .nav-ico{width:25px!important;height:25px!important}}

