:root{--bg:#f3f6f7;--surface:#fff;--ink:#152e33;--muted:#52666d;--line:#d7e1e4;--accent:#086957;--on:#fff;--soft:#e6f5f0;--danger:#ac302b;--warm:#fff1d5;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,sans-serif}:root[data-theme=dark]{--bg:#101a21;--surface:#1a2932;--ink:#eff7f7;--muted:#b2c5ce;--line:#384c58;--accent:#82dcc5;--on:#072b22;--soft:#203f3b;--danger:#ffaaa4;--warm:#483919;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.6}button,input,select,textarea{font:inherit;color:inherit}button,.button{background:var(--surface);border:1px solid var(--line);min-height:44px;color:var(--ink);cursor:pointer;touch-action:manipulation;border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:9px 13px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}button:disabled{opacity:.45;cursor:default}svg{flex-shrink:0}button:hover:not(:disabled),a.button:hover{border-color:var(--accent);background:var(--soft)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.primary{background:var(--accent);border-color:var(--accent);color:var(--on)}.primary-subtle,.subtle{background:var(--soft);color:var(--accent);border-color:#0000}.primary:hover:not(:disabled){background:var(--accent);color:var(--on);filter:brightness(1.1)}.icon-button{flex-shrink:0;width:44px;padding:10px}.danger{color:var(--danger)}h1,h2,h3,p{margin:0}h1{letter-spacing:-.6px;font-size:28px;line-height:1.25}h2{font-size:23px;line-height:1.4}h3{overflow-wrap:anywhere;font-size:18px;line-height:1.5}p{white-space:pre-wrap;overflow-wrap:anywhere}.muted,.hint{color:var(--muted)}.hint{margin:12px 0;font-size:14px}.eyebrow{letter-spacing:1.2px;color:var(--muted);font-size:12px;font-weight:750}small{font-size:13px}.app{max-width:960px;padding:0 24px calc(110px + env(safe-area-inset-bottom));margin:auto}.masthead{padding:calc(16px + env(safe-area-inset-top)) 0 15px;border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;display:flex}.brand{letter-spacing:-.4px;color:var(--accent);align-items:center;gap:8px;font-size:17px;font-weight:750;display:flex}.language-toggle{border:1px solid var(--line);background:var(--surface);border-radius:12px;align-items:center;gap:2px;padding:2px 4px;display:flex}.language-toggle>svg{color:var(--muted);margin:0 6px}.language-toggle button{background:0 0;border:0;min-height:38px;padding:6px 10px}.language-toggle button[aria-pressed=true]{background:var(--accent);color:var(--on)}.sync-strip{color:var(--accent);align-items:center;gap:8px;padding:6px 0;font-size:13px;display:flex}.sync-strip>span{flex:1}.sync-strip button{background:0 0;border:0}.sync-strip.warning{color:var(--muted)}.trip-header{justify-content:space-between;align-items:center;gap:12px;padding:8px 0 20px;display:flex}.trip-header h1{margin-top:5px}.dates{scrollbar-width:thin;scroll-snap-type:x proximity;gap:7px;padding:2px 0 12px;display:flex;overflow-x:auto}.dates button{scroll-snap-align:center;background:var(--surface);border-radius:12px;flex-direction:column;flex:1 0 65px;gap:0;padding:9px 7px;display:flex}.dates strong{letter-spacing:-.4px;font-size:18px}.section-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.day-heading .section-row>button{background:0 0;border-color:#0000}.day-heading h2{margin-bottom:4px}.day-heading>.muted{font-size:14px}.day-notes{border:1px solid var(--line);background:var(--surface);border-radius:10px;margin-top:12px}summary{cursor:pointer;min-height:44px}summary::-webkit-details-marker{display:none}.day-notes summary{align-items:center;gap:8px;padding:10px 12px;font-size:14px;font-weight:600;display:flex}.day-notes summary svg:last-child{margin-left:auto}.day-notes p{color:var(--muted);padding:0 14px 14px;font-size:14px}.hotel-strip{background:var(--soft);color:var(--accent);border-radius:12px;align-items:center;gap:12px;padding:13px 16px;display:flex}.hotel-strip>div{flex:1;min-width:0}.hotel-strip small{letter-spacing:.5px;font-size:12px;display:block}.hotel-strip strong{overflow-wrap:anywhere;font-size:14px;display:block}.toolbar{justify-content:space-between;align-items:center;gap:12px;margin:20px 0 14px;display:flex}.filters{gap:5px;display:flex}.filters button{background:0 0;border-color:#0000}.filters button[aria-pressed=true]{background:var(--surface);border-color:var(--line);color:var(--accent)}.card{background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:0 2px 6px #152e3304}.item{margin-bottom:12px;padding:18px}.item-top{align-items:flex-start;gap:12px;display:flex}.item-heading{flex:1;min-width:0}.category-icon{background:var(--soft);color:var(--accent);border-radius:12px;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.category-icon.flight{color:#2555a3;background:#e8f0ff}.category-icon.meal{color:#8c4e16;background:#fff0df}.category-icon.show{color:#6541a1;background:#eeeaff}.category-icon.transport{color:#276777;background:#e7f3f7}.meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:4px;font-size:13px;display:flex}.badge{background:var(--soft);min-height:24px;color:var(--accent);border-radius:6px;align-items:center;padding:2px 8px;font-size:12px;font-weight:650;line-height:1.5;display:inline-flex}.badge.CONFIRMED{background:var(--soft);color:var(--accent)}.badge.CANDIDATE,.badge.TO_BOOK{background:var(--warm);color:#805411}.badge.OPTIONAL,.badge.CANCELLED{background:var(--bg);color:var(--muted)}.cancelled h3{text-decoration:line-through}.original-name{color:var(--muted);margin-top:3px;font-size:13px}.item-time{color:var(--ink);font-variant-numeric:tabular-nums;align-items:baseline;gap:8px;margin:14px 0;font-size:15px;display:flex}.item-time svg{color:var(--muted);align-self:flex-start;margin-top:4px}.item-time small{color:var(--muted);margin-top:2px;font-size:12px;display:block}.card-actions{flex-wrap:wrap;gap:8px;display:flex}.card-actions button,.card-actions a{flex-grow:0}.details{border-top:1px solid var(--line);flex-direction:column;gap:14px;margin-top:15px;padding-top:14px;font-size:15px;display:flex}.details .button{align-self:flex-start}.reference{background:var(--bg);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.reference strong{letter-spacing:1px;display:block}.alternatives{background:var(--bg);border:1px dashed var(--line);border-radius:14px;margin:24px 0;padding:0 14px}.alternatives summary{align-items:center;gap:9px;padding:14px 0;font-weight:650;display:flex}.alternatives summary>svg{margin-left:auto}.empty{color:var(--muted);padding:24px}.page-heading h1{margin:4px 0 10px}.booking-group{margin:20px 0 28px}.booking-group>h2{align-items:center;gap:9px;margin-bottom:12px;font-size:19px;display:flex}.checkbox{align-items:center;gap:9px;min-height:44px;font-size:14px;display:flex}.checkbox input{width:20px;height:20px;min-height:20px;accent-color:var(--accent);margin:0}.settings{flex-direction:column;align-items:flex-start;gap:13px;width:100%;margin:0 0 16px;padding:22px;display:flex}.settings h2{align-items:center;gap:9px;font-size:19px;display:flex}.settings p{font-size:15px}.settings label,.settings>.section-row{width:100%}.bottom-nav{z-index:5;background:var(--surface);border-top:1px solid var(--line);padding:8px 16px calc(8px + env(safe-area-inset-bottom));justify-content:center;gap:12px;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -2px 15px #152e3306}.bottom-nav button{max-width:200px;color:var(--muted);background:0 0;border:0;flex-direction:column;flex:1;gap:2px;padding:7px;font-size:13px}.error{background:var(--warm);color:var(--danger);border-radius:10px;margin:14px 0;padding:14px;font-size:14px}.error button{margin-top:12px}.notice{background:var(--soft);color:var(--accent);border-radius:10px;padding:12px;font-size:14px}.login{text-align:center;flex-direction:column;align-items:center;gap:18px;max-width:480px;margin:70px auto;padding:36px;display:flex}.large-icon{background:var(--soft);color:var(--accent);border-radius:18px;padding:16px}.modal{background:var(--surface);width:calc(100% - 32px);max-width:660px;max-height:92dvh;color:var(--ink);border:1px solid var(--line);overscroll-behavior:contain;border-radius:18px;margin:auto;padding:0 24px 24px;position:fixed;inset:4vh 0 auto;overflow:auto}.modal::backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#102b36a3}body:has(dialog[open]){overflow:hidden}.modal>header{z-index:2;background:var(--surface);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;padding:15px 0;display:flex;position:sticky;top:0}.modal>header h2{font-size:21px}.modal-actions{background:var(--surface);border-top:1px solid var(--line);justify-content:flex-end;gap:9px;margin-top:20px;padding:14px 0;display:flex;position:sticky;bottom:-24px}.modal label{margin-bottom:16px;font-size:14px;font-weight:600;display:block}.form-pair{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;display:grid}input,select,textarea{border:1px solid var(--line);background:var(--bg);border-radius:9px;width:100%;min-width:0;min-height:46px;margin-top:7px;padding:11px 12px;font-size:16px;display:block}input[hidden],input[type=hidden]{display:none}textarea{resize:vertical;line-height:1.6}.delete-area{padding:18px 0 0}.delete-area p{margin-bottom:12px;font-size:14px}.delete-area button{margin-right:8px}.show-english{flex-direction:column;align-items:flex-start;gap:20px;padding:10px 0 20px;display:flex}.show-english h2{overflow-wrap:anywhere;font-size:32px;line-height:1.3}.show-english .address{font-size:23px}.show-time{flex-wrap:wrap;align-items:center;gap:9px;font-size:18px;display:flex}.modal-body{flex-direction:column;gap:16px;padding-bottom:15px;display:flex}@media (min-width:850px){.app{padding-left:36px;padding-right:36px}.trip-header h1{font-size:30px}.dates button{min-width:60px}.settings{max-width:760px}.timeline,.booking-group{max-width:820px}}@media (max-width:600px){.app{padding-left:16px;padding-right:16px}.brand{font-size:14px}.brand svg{width:18px}.language-toggle>svg{display:none}.masthead{gap:6px}h1{font-size:24px}.trip-header{align-items:flex-start}.trip-header .subtle{white-space:nowrap;padding:9px;font-size:13px}.dates button{flex:0 0 66px}.day-heading h2{font-size:22px}.item{padding:14px}.item-top{gap:9px}.category-icon{border-radius:10px;width:34px;height:34px}.category-icon svg{width:18px}.item h3{font-size:17px}.edit-button{width:40px;min-height:44px;padding:9px}.card-actions{gap:6px}.card-actions button,.card-actions a{padding:9px 10px;font-size:13px}.settings{padding:18px}.modal{width:100%;max-width:100%;max-height:94dvh;padding:0 16px calc(18px + env(safe-area-inset-bottom));border-radius:18px 18px 0 0;margin:0;inset:auto 0 0}.modal-actions{bottom:calc(-18px - env(safe-area-inset-bottom));padding-bottom:calc(14px + env(safe-area-inset-bottom))}.form-pair{grid-template-columns:1fr;gap:0}.login{margin-top:40px;padding:25px}.sync-strip{font-size:12px}.show-english h2{font-size:28px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.preparation-link{background:var(--soft);width:100%;color:var(--accent);justify-content:flex-start;margin:4px 0 18px}.preparation-link span{text-align:left;flex:1}.preparation-progress{padding:20px}.preparation-progress h2{align-items:center;gap:8px;font-size:18px;display:flex}.preparation-progress progress{width:100%;height:12px;accent-color:var(--accent);margin-top:16px}.checklist-group{margin:24px 0}.checklist-group>h2,.travel-guide>h2{margin-bottom:12px;font-size:19px}.checklist-task{border-bottom:1px solid var(--line);padding:16px 0}.checklist-task:last-child{border-bottom:0}.checklist-task label{cursor:pointer;align-items:flex-start;gap:12px;min-height:44px;font-weight:600;display:flex}.checklist-task input{width:22px;height:22px;min-height:22px;accent-color:var(--accent);flex-shrink:0;margin:3px 0 0;padding:0}.checklist-task.done label span{color:var(--muted);text-decoration:line-through}.checklist-task details{margin-left:34px}.checklist-task summary{color:var(--accent);cursor:pointer;align-items:center;gap:8px;min-height:44px;font-size:14px;display:flex}.checklist-task details p{margin:8px 0;font-size:16px}.guide-section{margin:12px 0;padding:0 18px}.guide-section summary{cursor:pointer;align-items:center;gap:10px;min-height:52px;padding:18px 0;display:flex}.guide-section summary strong{flex:1}.guide-section p{padding:0 0 18px;font-size:16px}.guide-section .button{margin-bottom:18px}.bottom-nav button{font-size:14px}.details,.settings p,.item-time{font-size:16px}@media (max-width:480px){.bottom-nav{gap:2px;padding-left:8px;padding-right:8px}.bottom-nav button{padding:7px 4px}.preparation-progress{padding:16px}.preparation-progress h2{font-size:16px}}.packing-title{font-size:17px;display:block}.packing-note{color:var(--muted);margin:4px 0 12px;font-size:14px}.traveler-checks{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.traveler-checks label{min-width:0;font-size:14px;display:block}.traveler-checks label span{margin-bottom:5px;display:block}.traveler-checks select{width:100%;min-height:44px;padding:8px 5px;font-size:14px}.checklist-task.done .packing-title{color:var(--muted)}.checklist-task.done .traveler-checks label span{text-decoration:none}.travel-guide>summary{cursor:pointer;color:var(--accent);padding:18px 0;font-weight:600}.preparation-progress>.checkbox{margin-top:14px}.traveler-slot{border:1px solid var(--line);border-radius:10px;min-width:0;padding:8px}.traveler-slot label{align-items:center;gap:6px;min-height:44px;font-size:14px;display:flex}.traveler-slot label span{margin:0}.traveler-slot input{width:20px;height:20px;margin:0}.traveler-slot .not-needed{background:0 0;width:100%;padding:6px 2px;font-size:14px;font-weight:400}.traveler-slot .not-needed[aria-pressed=true]{background:var(--soft);color:var(--accent);border-color:var(--accent)}@media (max-width:400px){.traveler-checks{gap:5px}.traveler-slot{padding:5px}}:root{--bg:#f4f6fb;--surface:#fff;--ink:#182d49;--muted:#53657c;--line:#dce3ee;--accent:#254e8a;--soft:#eaf0fa;--warm:#fff0da;--travel-orange:#ad441f;--travel-wash:#fff0e7;--on:#fff}:root[data-theme=dark]{--bg:#101a2a;--surface:#19273d;--ink:#f3f6ff;--muted:#b6c5dc;--line:#344764;--accent:#9ac4ff;--soft:#233b5b;--warm:#4b391d;--travel-orange:#ffb28f;--travel-wash:#432d26;--on:#142740}.app{max-width:1240px;padding-left:32px;padding-right:32px}.masthead{padding-top:calc(20px + env(safe-area-inset-top));border-bottom:2px solid var(--ink)}.brand{letter-spacing:1px;font-size:18px}.brand>svg{color:var(--travel-orange)}.sync-strip{font-size:14px}.trip-header h1{letter-spacing:-1px;font-size:clamp(26px,3.6vw,42px);font-weight:750}.eyebrow{letter-spacing:1.5px;font-size:12px}.trip-header>.subtle{white-space:nowrap}.trip-shortcuts{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:stretch;gap:16px;margin-bottom:20px;display:grid}.city-chapters{grid-template-columns:1fr 1fr;gap:10px;display:grid}.city-chapters button{text-align:left;letter-spacing:.5px;border-radius:12px;justify-content:flex-start;gap:13px;padding:13px 16px;font-size:14px;line-height:1.4}.city-chapters button[aria-pressed=true]{border-color:var(--travel-orange);background:var(--travel-wash)}.chapter-number{color:var(--travel-orange);font-family:Georgia,serif;font-size:28px;font-style:italic;font-weight:400}.city-chapters small{color:var(--muted);letter-spacing:1px;margin-top:3px;font-size:12px;display:block}.preparation-link{border:1px solid var(--line);background:var(--surface);color:var(--ink);margin:0;padding:14px 18px;font-size:14px}.preparation-link>svg{color:var(--travel-orange)}.preparation-link strong{font-variant-numeric:tabular-nums;background:var(--soft);color:var(--accent);border-radius:8px;padding:4px 10px}.dates{gap:6px;margin-bottom:8px;padding:0 0 18px}.dates button{box-shadow:none;background:0 0;border-radius:8px;min-width:65px}.dates button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--surface);box-shadow:none}.dates strong{font-size:19px}.dates small{font-size:12px}.day-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.35fr);align-items:start;gap:32px;display:grid}.day-aside,.day-main{min-width:0}.day-photo{background:var(--surface);border:1px solid var(--line);border-radius:16px;margin:0;overflow:hidden}.day-photo img{aspect-ratio:1.75;object-fit:cover;width:100%;height:auto;display:block}.day-photo figcaption{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;padding:10px 12px;font-size:12px;line-height:1.5;display:flex}.day-photo figcaption a{color:var(--muted);text-underline-offset:3px;margin-left:auto;font-size:12px;text-decoration:underline}.story-theme{color:var(--travel-orange);letter-spacing:1.2px;margin:18px 0 4px;font-size:13px;font-weight:750}.day-heading{padding:0 0 18px}.day-heading h2{letter-spacing:-.5px;margin:5px 0 10px;font-size:clamp(23px,2.4vw,30px);line-height:1.4}.day-heading .section-row>.eyebrow{letter-spacing:.5px;font-size:12px}.jump-plans{min-height:44px;color:var(--accent);align-items:center;gap:7px;padding:9px 0;font-size:14px;font-weight:650;text-decoration:none;display:flex}.day-notes{background:var(--surface);border:0;border-radius:10px;margin-top:7px}.day-notes summary{padding:12px;font-size:14px}.day-notes p{font-size:16px;line-height:1.8}.hotel-strip{border-left:3px solid var(--travel-orange);color:var(--ink);border-radius:0 12px 12px 0;gap:10px;margin-bottom:16px}.hotel-strip>svg{color:var(--accent)}.hotel-strip small{font-size:12px}.hotel-strip .button{border-color:var(--line);background:var(--surface)}.day-guide{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:20px}.day-guide summary{align-items:center;gap:8px;padding:15px 0;font-size:16px;font-weight:650;display:flex}.day-guide summary svg:last-child{margin-left:auto}.day-guide>div{padding:0 0 18px}.day-guide p{font-size:16px;line-height:1.85}.guide-tip{color:var(--muted);align-items:flex-start;gap:9px;margin-top:16px;display:flex}.guide-tip svg{color:var(--travel-orange);margin-top:6px}.day-guide a{color:var(--accent);align-items:center;gap:5px;min-height:44px;margin-top:12px;font-size:14px;display:inline-flex}.day-main{scroll-margin-top:20px}.plan-section-title{border-bottom:2px solid var(--ink);justify-content:space-between;align-items:center;gap:12px;padding:0 0 16px;display:flex}.plan-section-title h2{margin-top:3px;font-size:23px}.plan-section-title>.muted{font-size:14px}.plan-section-title .eyebrow{color:var(--travel-orange)}.toolbar{flex-wrap:wrap;margin:15px 0}.filters{flex-wrap:wrap}.card{border-radius:13px;box-shadow:0 4px 18px #162d4905}.item{border-top:3px solid var(--line);margin-bottom:16px;padding:20px}.item:has(.category-icon.flight){border-top-color:#568ce1}.item:has(.category-icon.meal){border-top-color:#d08050}.item:has(.category-icon.show){border-top-color:#9d7fcc}.item:has(.category-icon.activity){border-top-color:#5b9e99}.item-top{gap:12px}.item h3{font-size:19px;line-height:1.5}.meta,.original-name{font-size:14px}.badge{min-height:26px;font-size:14px}.category-icon{border-radius:50%;width:40px;height:40px}.category-icon.activity{color:#246660;background:#e6f3f1}.item-time{background:var(--bg);border-radius:8px;margin:15px 0;padding:9px 12px;font-size:17px;font-weight:650}.item-time small{font-size:12px;font-weight:400}.place-note{color:var(--muted);margin:4px 0 15px;font-size:16px;line-height:1.75}.card-actions{gap:8px}.card-actions button,.card-actions a{padding:9px 12px;font-size:14px}.details p{line-height:1.85}.edit-button{background:0 0;border-color:#0000}.alternatives{background:var(--soft);border-style:solid}.alternatives summary{font-size:16px}.badge.CANDIDATE,.badge.TO_BOOK{color:#805411}.timeline,.booking-group{max-width:none}.bottom-nav{border:1px solid var(--line);width:calc(100% - 32px);max-width:750px;padding:7px 10px calc(7px + env(safe-area-inset-bottom));border-radius:18px;gap:5px;bottom:12px;left:50%;right:auto;transform:translate(-50%);box-shadow:0 7px 35px #12233d20}.bottom-nav button{border-radius:12px;min-height:56px;font-size:14px}.bottom-nav button[aria-current=page]{background:var(--ink);color:var(--surface)}.page-heading .eyebrow{color:var(--travel-orange)}.page-heading>.muted{max-width:740px}.preparation-progress{border-top:3px solid var(--travel-orange);max-width:880px}.checklist-group{max-width:880px;margin:28px 0}.checklist-group>h2{border-bottom:1px solid var(--line);padding-bottom:12px;font-size:21px}.checklist-group>h2 .badge{margin-left:8px}.checklist{padding:0 22px}.checklist-task{padding:20px 0}.packing-note{font-size:16px;line-height:1.75}.traveler-slot{background:var(--bg)}.settings{max-width:880px}.photo-credits a{color:var(--accent)}.photo-credits p{font-size:14px}.travel-guide a{color:var(--accent)}@media (min-width:950px){.day-aside{position:sticky;top:20px}.jump-plans{display:none}.booking-group{max-width:880px}.trip-header h1{font-size:40px}}@media (max-width:949px){.day-layout{grid-template-columns:1fr;gap:24px}.day-photo img{aspect-ratio:2.7}.day-aside{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 24px;display:grid}.day-photo,.day-heading,.hotel-strip{grid-column:1/-1}.day-guide{grid-column:1/-1;margin-top:0}.story-theme{margin-top:16px}.app{padding-left:22px;padding-right:22px}.trip-shortcuts{grid-template-columns:1fr}.city-chapters button{padding:10px 14px}.preparation-link{min-height:48px;padding:9px 14px}.trip-shortcuts{gap:10px}.day-photo figcaption a{font-size:12px}}@media (max-width:600px){.app{padding-left:16px;padding-right:16px;padding-bottom:calc(115px + env(safe-area-inset-bottom))}.masthead{padding-top:calc(13px + env(safe-area-inset-top));padding-bottom:12px}.brand{letter-spacing:.6px;font-size:15px}.trip-header{padding:16px 0}.trip-header h1{letter-spacing:-.7px;font-size:26px}.trip-header .eyebrow{letter-spacing:.8px;font-size:11px}.trip-header .subtle{padding:9px;font-size:14px}.chapter-number{font-size:23px}.city-chapters button{gap:9px;font-size:13px}.city-chapters small{font-size:12px}.trip-shortcuts{margin-bottom:16px}.preparation-link{font-size:14px}.dates{margin-bottom:6px;padding-bottom:14px}.dates button{flex:0 0 62px;min-width:62px;padding:8px 4px}.day-photo img{aspect-ratio:2.05}.day-photo figcaption{padding:8px 10px;font-size:12px}.day-heading h2{font-size:24px}.day-layout{gap:22px}.day-heading .section-row{gap:8px}.item{margin-bottom:14px;padding:15px}.item-top{gap:9px}.item h3{font-size:18px}.category-icon{width:34px;height:34px}.meta{gap:5px;font-size:14px}.item-time{padding:9px 10px;font-size:16px}.card-actions{gap:6px}.card-actions button,.card-actions a{padding:9px 10px;font-size:14px}.plan-section-title h2{font-size:22px}.page-heading h1{font-size:28px}.checklist{padding:0 15px}.packing-note{font-size:16px}.settings{padding:18px}.bottom-nav{gap:2px;width:calc(100% - 20px);padding-left:5px;padding-right:5px;bottom:8px}.bottom-nav button{padding:7px 3px;font-size:14px}.sync-strip{font-size:13px}.day-guide p{font-size:16px}}@media (max-width:360px){.trip-header{flex-wrap:wrap}.trip-header .subtle{margin-left:auto}.preparation-link{flex-wrap:wrap}.preparation-link span{min-width:140px}.city-chapters button{gap:6px;padding:9px}.day-photo figcaption a{margin-left:0}.toolbar .primary{margin-left:auto}.traveler-checks{gap:4px}.traveler-slot label{flex-wrap:wrap}.traveler-slot .not-needed{font-size:12px}}.trip-header h1{font-size:30px}.trip-header{padding:10px 0 16px}.trip-header .eyebrow{font-size:12px}.focus-board{border:1px solid var(--line);border-left:4px solid var(--travel-orange);background:var(--surface);border-radius:14px;grid-template-columns:1fr 1fr;margin:0 0 20px;display:grid;overflow:hidden}.focus-board>div{padding:22px}.focus-board>div+div{border-left:1px solid var(--line)}.focus-board h2{margin:5px 0 8px;font-size:28px}.focus-board h3{margin:8px 0;font-size:20px}.focus-board p:not(.eyebrow){font-size:16px}.focus-board .card-actions{margin-top:16px}.next-focus:only-child{grid-column:1/-1}.early-warning{background:var(--warm);border:1px solid var(--travel-orange);border-radius:12px;gap:12px;margin-bottom:20px;padding:16px;display:flex}.early-warning svg{margin-top:4px}.early-warning p{margin-top:5px;font-size:16px}.city-chapters{grid-template-columns:repeat(3,minmax(0,1fr))}.city-chapters button{gap:8px;padding:10px}.chapter-number{font-size:23px}.trip-shortcuts{grid-template-columns:1.6fr 1fr}.timeline-caption{color:var(--muted);margin:9px 0;font-size:14px}.fixed-label{color:var(--travel-orange);font-size:14px;font-weight:650}.travel-gap,.schedule-warning,.transfer-note,.arrival-reminder{align-items:flex-start;gap:8px;font-size:14px;line-height:1.65;display:flex}.travel-gap{border-left:2px dashed var(--line);color:var(--muted);margin:4px 0 14px 12px;padding-left:13px}.schedule-warning{background:var(--warm);border-radius:9px;margin-bottom:10px;padding:10px}.transfer-note,.arrival-reminder{color:var(--accent);margin:0 0 13px}.travel-gap svg,.transfer-note svg,.arrival-reminder svg{margin-top:3px}.item{scroll-margin-top:16px}.badge.TO_BOOK,.badge.CANDIDATE{color:#724806;background:#fff0da}:root[data-theme=dark] .badge.TO_BOOK,:root[data-theme=dark] .badge.CANDIDATE{color:#ffe1a7;background:#4b391d}.booking-tabs,.person-switch{flex-wrap:wrap;gap:8px;margin:0 0 20px;display:flex}.booking-tabs button[aria-pressed=true],.person-switch button[aria-pressed=true],.english-purpose button[aria-pressed=true]{background:var(--accent);color:var(--on);border-color:var(--accent)}.booking-tabs span{background:var(--bg);color:var(--ink);border-radius:5px;padding:1px 7px}.booking-list{max-width:900px}.person-switch{z-index:3;background:var(--bg);padding:10px 0;position:sticky;top:0}.person-switch button{flex:1;max-width:160px}.packing-stats{grid-template-columns:1fr 1fr;gap:14px;max-width:900px;display:grid}.packing-stats section{flex-direction:column;padding:18px;display:flex}.packing-stats small{color:var(--muted);font-size:16px;font-weight:500}.packing-stats progress{width:100%;height:9px;accent-color:var(--accent)}.packing-group{max-width:900px;margin-bottom:14px;padding:0 20px}.packing-group>summary{align-items:center;gap:10px;min-height:62px;padding:18px 0;display:flex}.packing-group>summary strong{flex:1;font-size:18px}.packing-group>summary span{color:var(--muted);font-size:14px}.packing-group[open]>summary{border-bottom:1px solid var(--line)}.packing-row{border-bottom:1px solid var(--line);padding:18px 0}.packing-row:last-child{border-bottom:0}.essential{color:var(--accent);white-space:nowrap;font-size:14px}.packing-help{color:var(--muted);margin:6px 0 12px;font-size:16px}.packing-people{grid-template-columns:1fr;display:grid}.packing-people.everyone{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.packing-person{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.person-name{width:100%;font-weight:650}.packing-check{border:1px solid var(--line);cursor:pointer;background:var(--bg);border-radius:9px;align-items:center;gap:9px;min-height:46px;padding:9px 12px;font-size:16px;display:flex}.packing-check.checked{background:var(--soft);border-color:var(--accent);color:var(--accent)}.packing-check input{width:21px;height:21px;min-height:21px;accent-color:var(--accent);margin:0;padding:0}.skip-packing{color:var(--muted);background:0 0;border-color:#0000;font-size:14px;font-weight:400}.skip-packing[aria-pressed=true]{background:var(--soft);color:var(--accent)}.packing-detail{width:100%;margin-top:3px}.packing-detail>summary{color:var(--muted);text-underline-offset:4px;align-items:center;min-height:44px;font-size:14px;text-decoration:underline;display:flex}.packing-detail label{max-width:400px;margin-bottom:12px;font-size:14px;display:block}.shared-check{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;display:flex}.owner-select{align-items:center;gap:10px;font-size:14px;display:flex}.owner-select select{width:auto;max-width:170px;min-height:44px;margin:0;padding:8px}.linked-pending{background:var(--warm);border-radius:9px;justify-content:space-between;align-items:center;gap:10px;margin:12px 0;padding:12px;font-size:14px;display:flex}.linked-pending button{flex-shrink:0}.packing-empty{color:var(--accent);gap:8px;padding:18px 0;display:flex}.packing-add{flex-wrap:wrap;align-items:end;gap:15px;max-width:900px;margin-bottom:20px;padding:20px;display:flex}.packing-add label{flex:180px;font-size:14px}.english-purpose{flex-wrap:wrap;gap:10px;margin-bottom:16px;display:flex}.english-dates{grid-template-columns:1fr 1fr;gap:20px;width:100%;margin:0;display:grid}.english-dates dt{color:var(--muted);font-size:16px}.english-dates dd{margin:4px 0 0;font-size:21px;font-weight:650}.service-phrase{font-size:23px;line-height:1.6}.history-row{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;width:100%;padding-top:10px;font-size:14px;display:flex}.cache-ready{color:var(--accent)}.settings .history-row button{white-space:nowrap}.day-aside{position:static}.day-photo figcaption a{font-size:12px}.day-photo img{aspect-ratio:2;object-fit:cover}.story-theme{letter-spacing:.5px}.app{padding-bottom:calc(130px + env(safe-area-inset-bottom))}@media (max-width:949px){.day-main{grid-row:1}.day-aside{grid-row:2}.jump-plans{display:none}.trip-shortcuts{grid-template-columns:1fr}.day-aside{border-top:1px solid var(--line);padding-top:22px}.day-photo{max-width:650px}.focus-board{margin-bottom:16px}.focus-board>div{padding:18px}}@media (max-width:600px){.trip-header h1{font-size:25px}.trip-header{padding:8px 0 14px}.focus-board{grid-template-columns:1fr}.focus-board>div+div{border-left:0;border-top:1px solid var(--line)}.focus-board>div{padding:16px}.focus-board h2{font-size:25px}.focus-board h3{font-size:18px}.departure-focus p:not(.eyebrow){display:none}.next-focus .eyebrow{font-size:12px}.trip-header>.subtle{min-width:64px}.chapter-number{display:none}.city-chapters button{justify-content:center;padding:9px 6px;font-size:12px}.city-chapters small{letter-spacing:0;font-size:12px}.preparation-link{display:none}.dates{margin-top:12px}.packing-group{padding:0 15px}.packing-group>summary strong{font-size:17px}.packing-stats{gap:10px}.packing-stats section{padding:14px}.packing-stats section>span{font-size:14px}.packing-stats strong{font-size:28px}.packing-people.everyone{grid-template-columns:1fr}.packing-people.everyone .packing-person{background:var(--bg);border-radius:10px;padding:12px}.person-name{width:auto;min-width:50px}.linked-pending{flex-direction:column;align-items:flex-start}.packing-detail>summary{font-size:14px}.person-switch{gap:6px}.person-switch button{padding:9px 8px}.person-switch svg{display:none}.history-row{flex-wrap:wrap}.english-dates{gap:16px}.early-warning{padding:13px}.early-warning p{font-size:14px}.plan-section-title h2{font-size:21px}.plan-section-title .button,.plan-section-title button{font-size:14px}.day-photo figcaption a{font-size:12px}}.sync-panel{border:1px solid var(--line);background:var(--surface);color:var(--accent);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;margin:12px 0 16px;padding:14px 16px;display:flex}.sync-message{flex:1;align-items:flex-start;gap:10px;min-width:220px;display:flex}.sync-message>svg{margin-top:3px}.sync-message strong{font-size:15px;font-weight:650;display:block}.sync-message small{color:var(--muted);margin-top:3px;font-size:13px;display:block}.sync-panel .sync-refresh{background:var(--soft);border:1px solid var(--accent);color:var(--accent);white-space:nowrap;min-height:44px;font-size:14px}.sync-panel.sync-warning{border-color:var(--travel-orange);color:var(--travel-orange)}.sync-detail{width:100%;color:var(--muted);font-size:13px;line-height:1.6}.sync-spinning{animation:1s linear infinite sync-turn}@keyframes sync-turn{to{transform:rotate(360deg)}}@media (max-width:600px){.sync-panel{gap:10px;padding:12px}.sync-message{min-width:180px}.sync-message strong{font-size:14px}.sync-panel .sync-refresh{margin-left:auto}.sync-detail{font-size:13px}}.app-update{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.app-update span{flex:1;min-width:180px}:root{--bg:#f2f2f7;--surface:#fff;--ink:#1c1c1e;--muted:#606067;--line:#dedee3;--accent:#0066d6;--on:#fff;--soft:#eaf2ff;--travel-orange:#a34a13;--travel-wash:#fff3e7;--warm:#fff2dc;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,sans-serif}:root[data-theme=dark]{--bg:#000;--surface:#1c1c1e;--ink:#f5f5f7;--muted:#b0b0b8;--line:#38383c;--accent:#79b7ff;--on:#001b3b;--soft:#17304e;--warm:#392c17;--travel-orange:#ffc18b;--travel-wash:#392c17}::selection{background:var(--accent);color:var(--on)}input,textarea{caret-color:var(--accent)}button,.button{border-radius:10px;min-height:44px;font-weight:550;transition:background .16s ease-out,color .16s ease-out}button:active:not(:disabled),.button:active{opacity:.7}h1,h2,h3{letter-spacing:-.025em}p{line-height:1.65}.app{max-width:1120px;padding:0 28px calc(100px + env(safe-area-inset-bottom))}.masthead{border:0;padding:16px 0 4px}.brand{color:var(--ink);letter-spacing:-.025em;font-size:17px}.brand>svg{color:var(--accent);width:19px}.language-toggle{background:0 0;border:0;gap:0;padding:0}.language-toggle>svg{display:none}.language-toggle button{color:var(--muted);background:0 0;min-height:44px;padding:4px 10px}.language-toggle button[aria-pressed=true]{color:var(--accent);background:0 0}.sync-panel{border:0;border-bottom:1px solid var(--line);color:var(--muted);background:0 0;border-radius:0;flex-wrap:nowrap;gap:4px 8px;margin:0 0 14px;padding:0 0 8px;position:relative}.sync-message{align-items:center;gap:7px;min-width:0}.sync-message>svg{width:16px;color:var(--accent);margin:0}.sync-message strong{font-size:14px;font-weight:500}.sync-message small{margin-top:0;font-size:12px}.sync-panel .sync-refresh{color:var(--accent);background:0 0;border:0;margin:0;padding:8px 5px;font-size:14px}.sync-refresh svg{width:16px}.sync-explanation{position:relative}.sync-explanation>summary{width:32px;color:var(--muted);justify-content:center;align-items:center;list-style:none;display:flex}.sync-explanation>summary span{display:none}.sync-detail{background:var(--surface);border:1px solid var(--line);z-index:10;border-radius:12px;width:260px;padding:14px;font-size:14px;position:absolute;top:40px;right:0}.sync-warning{color:var(--danger);border-color:var(--danger)}.sync-warning .sync-message>svg{color:var(--danger)}.trip-header{align-items:center;padding:0 0 16px}.trip-header h1{margin:0;font-size:30px}.trip-subtitle{color:var(--muted);margin-top:3px;font-size:14px}.trip-header>.subtle{background:0 0;min-width:44px;padding:8px 0 8px 12px;font-size:14px}.focus-board{box-shadow:none;background:var(--surface);border:0;border-radius:14px;align-items:center;gap:8px;margin-bottom:18px;padding:4px 8px;display:flex}.focus-board>button{text-align:left;background:0 0;border:0;padding:10px 8px}.departure-compact{flex:1;justify-content:flex-start}.departure-compact>svg:first-child{color:var(--accent)}.departure-compact span{flex:1}.departure-compact strong{font-size:16px;display:block}.departure-compact small{color:var(--muted);font-size:13px;font-weight:400;display:block}.departure-compact>svg:last-child,.pending-compact>svg:last-child{color:var(--muted)}.pending-compact{color:var(--travel-orange);font-size:14px;border-left:1px solid var(--line)!important;border-radius:0!important}.pending-compact>svg:last-child{display:none}.focus-board>.next-compact{flex:1;align-items:center;gap:10px;padding:10px;display:flex}.next-compact span{flex:1}.next-compact small,.next-compact strong{display:block}.next-compact small{color:var(--muted);font-size:13px}.next-compact strong{font-size:16px}.stay-compact{max-width:40%;font-size:14px}.focus-board>.stay-compact{border-left:1px solid var(--line)}.trip-shortcuts{margin-bottom:12px;display:block}.preparation-link{display:none}.city-chapters{background:var(--line);border-radius:11px;gap:3px;padding:3px;display:flex}.city-chapters button{letter-spacing:0;min-height:38px;color:var(--muted);background:0 0;border:0;border-radius:8px;flex:1;justify-content:center;padding:7px 10px;font-size:14px;font-weight:550}.city-chapters button[aria-pressed=true]{background:var(--surface);color:var(--ink)}.chapter-number{display:none}.dates{scrollbar-width:none;gap:6px;margin:0 0 18px;padding:0 0 4px}.dates button{background:0 0;border:0;border-radius:12px;flex:1 0 56px;gap:2px;min-width:56px;min-height:66px;padding:6px 4px}.dates small{color:var(--muted);font-size:12px}.dates strong{font-size:22px;font-weight:600}.day-layout{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:28px}.day-main{grid-area:1/1}.day-aside{grid-area:1/2}.plan-section-title{border:0;min-height:44px;padding:0}.plan-section-title h2{margin:0;font-size:19px}.plan-section-title button{color:var(--accent);background:0 0;border:0}.timeline-caption{align-items:center;gap:5px;margin:0 0 8px;font-size:12px;display:flex}.toolbar{gap:8px;margin:8px 0 12px}.toolbar .primary{color:var(--accent);background:0 0;border:0;padding:8px 0 8px 10px;font-size:14px}.filters{gap:2px}.filters button{border:0;padding:6px 12px;font-size:14px}.filters button[aria-pressed=true]{background:var(--surface);color:var(--accent);border:0}.card{box-shadow:none;border:0;border-radius:14px}.item{margin-bottom:12px;padding:16px;border:0!important}.item-top{align-items:center;gap:10px}.category-icon{border-radius:0;width:28px;height:28px;color:var(--accent)!important;background:0 0!important}.category-icon svg{width:20px}.item h3{font-size:17px;font-weight:600;line-height:1.4}.meta{gap:7px;margin:2px 0 0;font-size:12px}.badge{gap:3px;min-height:20px;padding:0;font-size:13px;font-weight:450;background:0 0!important}.badge.CONFIRMED{color:var(--muted)}.badge.TO_BOOK,.badge.CANDIDATE{color:#885515}.edit-button{color:var(--muted);margin:-6px -6px -6px 0}.item-time{background:0 0;gap:7px;margin:12px 0 8px 38px;padding:0;font-size:16px;font-weight:500}.item-time>svg{color:var(--muted)}.fixed-label{color:var(--muted);margin-left:auto;font-size:12px;font-weight:400}.card-actions{flex-wrap:wrap;gap:6px;margin-top:10px}.card-actions button,.card-actions a{background:var(--bg);color:var(--accent);border:0;min-height:44px;padding:7px 10px;font-size:14px}.card-actions .primary-subtle{background:var(--soft);color:var(--accent)}.card-actions .details-toggle{color:var(--muted);background:0 0;margin-left:auto;padding-right:0}.arrival-reminder{color:var(--travel-orange);margin:8px 0;font-size:13px}.details{border-top:1px solid var(--line);margin-top:12px;padding-top:14px}.details p{font-size:16px;line-height:1.7}.flight-route{font-variant-numeric:tabular-nums;grid-template-columns:1fr 90px 1fr;align-items:center;gap:8px;margin:15px 0 2px;display:grid}.flight-route>div:first-child{text-align:left}.flight-route>div:nth-child(3){text-align:right}.flight-route>div>span{color:var(--muted);letter-spacing:.04em;font-size:15px;display:block}.flight-route strong{font-size:29px;font-weight:600;line-height:1.25;display:block}.flight-path{color:var(--accent);flex-direction:column;align-items:center;gap:5px;display:flex}.flight-path small{color:var(--muted);white-space:nowrap;font-size:12px}.arrival-date{text-align:right;color:var(--muted);grid-column:1/-1;font-size:12px}.flight-card .card-actions{margin-top:2px}.travel-gap{color:var(--muted);border:0;margin:0 0 10px 14px;padding:0;font-size:12px}.travel-gap svg{width:14px}.schedule-warning{font-size:14px}.early-warning{border:0;border-radius:12px;font-size:14px}.early-warning p{font-size:14px}.day-photo{border:0;border-radius:14px}.day-photo img{aspect-ratio:1.7}.day-photo figcaption{font-size:12px}.story-theme{letter-spacing:0;color:var(--muted);margin-top:16px;font-size:14px;font-weight:500}.day-heading h2{font-size:21px}.day-heading .eyebrow{letter-spacing:0;font-weight:500}.day-guide{margin-top:12px}.day-guide summary{font-size:16px}.hotel-strip{background:var(--surface);border:0;border-radius:12px;padding:12px}.hotel-strip strong{font-size:14px}.hotel-strip .button{color:var(--accent);border:0}.bottom-nav{border:0;border-top:1px solid var(--line);background:var(--surface);width:100%;max-width:none;box-shadow:none;padding:5px max(12px,calc((100vw - 700px)/2)) calc(5px + env(safe-area-inset-bottom));border-radius:0;gap:4px;bottom:0;left:0;right:0;transform:none}.bottom-nav button{color:var(--muted);background:0 0;border:0;border-radius:0;gap:2px;min-height:52px;padding:3px;font-size:12px;font-weight:500}.bottom-nav button svg{stroke-width:1.7px;width:22px;height:22px}.bottom-nav button[aria-current=page]{color:var(--accent);background:0 0}.bottom-nav button[aria-current=page] svg{stroke-width:2.3px}.page-heading{padding:4px 0 18px}.page-heading h1{font-size:28px}.page-heading .muted{max-width:65ch;margin-top:6px;font-size:14px}.booking-tabs,.person-switch{background:var(--line);border-radius:11px;flex-wrap:nowrap;gap:3px;padding:3px}.booking-tabs button,.person-switch button{background:0 0;border:0;border-radius:8px;flex:1;max-width:none;padding:7px 8px;font-size:14px}.booking-tabs button[aria-pressed=true],.person-switch button[aria-pressed=true]{background:var(--surface);color:var(--ink)}.booking-tabs span{color:inherit;background:0 0;padding:0;font-size:12px}.person-switch{position:static}.packing-stats{gap:10px;margin-bottom:14px}.packing-stats section{padding:14px 16px}.packing-stats section>span{color:var(--muted);font-size:14px}.packing-stats strong{margin:4px 0 8px;font-size:24px}.packing-stats small{font-size:14px}.packing-stats progress{height:5px}.packing-group{margin-bottom:10px;padding:0 16px}.packing-group>summary{gap:9px;min-height:54px;padding:13px 0}.packing-group>summary strong{font-size:16px}.packing-group>summary>svg:first-child{color:var(--accent);width:18px}.packing-row{padding:14px 0}.packing-row .section-row>strong{font-size:16px}.essential{color:var(--muted);font-size:12px}.packing-check{background:0 0;border:0;padding:7px 0;font-size:14px}.packing-check.checked{background:0 0}.packing-person{gap:6px 14px}.packing-detail{width:auto;margin-left:auto}.packing-detail[open]{width:100%;margin-left:0}.packing-detail>summary{font-size:12px;text-decoration:none}.packing-hint summary{color:var(--muted);align-items:center;gap:5px;min-height:32px;font-size:13px;list-style:none;display:flex}.packing-help{margin:0 0 8px;font-size:14px}.packing-hint[open]{margin:8px 0}.skip-packing{padding:7px 0;font-size:13px}.settings{margin-bottom:12px;padding:20px}.settings h2{font-size:18px}.settings .muted{max-width:65ch;font-size:14px}.settings .eyebrow{display:none}.eyebrow{letter-spacing:.02em}.notice{font-size:14px}:root[data-theme=dark] .badge.TO_BOOK,:root[data-theme=dark] .badge.CANDIDATE{color:#ffc784}:root[data-theme=dark] .language-toggle button[aria-pressed=true]{color:var(--accent)}@media (max-width:949px){.day-layout{flex-direction:column;gap:24px;display:flex}.day-main,.day-aside{width:100%}.day-aside{padding-top:20px;display:block}.day-photo{max-width:none}.day-photo img{aspect-ratio:2.4}.stay-compact{max-width:45%}}@media (max-width:600px){.app{padding-left:16px;padding-right:16px}.masthead{padding:8px 0 0}.trip-header h1{font-size:28px}.trip-header{padding:0 0 12px}.trip-subtitle{font-size:13px}.sync-panel{margin-bottom:12px}.sync-message strong{font-size:13px}.sync-message small{font-size:12px}.sync-refresh{font-size:13px!important}.sync-explanation>summary{width:26px}.focus-board{gap:0;margin-bottom:14px;padding:2px 5px}.departure-compact strong{font-size:15px}.departure-compact small{font-size:12px}.departure-compact{gap:8px}.pending-compact{gap:5px;font-size:13px!important}.pending-compact>svg{width:16px}.departure-compact>svg:last-child{display:none}.city-chapters button{font-size:14px}.dates{margin-bottom:12px}.dates button{flex-basis:48px;min-width:48px;min-height:60px}.dates strong{font-size:21px}.item{padding:14px 16px}.item h3{font-size:16px}.flight-route strong{font-size:28px}.day-heading h2{font-size:21px}.page-heading h1{font-size:28px}.booking-tabs button{gap:4px;font-size:13px}.packing-stats section{padding:12px}.focus-board>.next-compact{padding:8px 5px}.next-compact strong{font-size:14px}.focus-board:has(.stay-compact){flex-wrap:wrap}.stay-compact{justify-content:flex-start;width:100%;max-width:none;border-top:1px solid var(--line)!important;border-left:0!important}.stay-compact span{flex:1}.packing-people.everyone .packing-person{padding:8px 10px}.packing-row .section-row{gap:6px}.person-switch svg{display:none}}@media (prefers-reduced-motion:reduce){button,.button{transition:none}.sync-spinning{animation:none}}:root{--bg:#f5f4f0;--surface:#fffefb;--ink:#172e45;--muted:#576779;--accent:#1455a0;--soft:#e7eef7;--line:#dddeda;--travel-orange:#a64920;--travel-wash:#fce9dc;--map-water:#e5edf0;--map-land:#f8f5e9;--ticket:#153d63}:root[data-theme=dark]{--bg:#101d29;--surface:#182c3d;--ink:#f0f2ed;--muted:#b0c2cf;--accent:#92c3ff;--soft:#253f58;--line:#354957;--travel-orange:#ffb183;--travel-wash:#443325;--map-water:#152e41;--map-land:#2c4755;--ticket:#173f65}body{background:var(--bg)}.app{max-width:1140px}.brand-home{background:0 0;border:0;min-height:44px;padding:0}.brand-home>svg{color:var(--travel-orange)}.masthead{padding-top:14px}.sync-panel{border-bottom:0;margin-bottom:14px}.journal-heading{justify-content:space-between;align-items:center;gap:16px;margin:10px 0 22px;display:flex}.journal-heading h1{letter-spacing:-.025em;font-size:34px;line-height:1.2}.journal-heading p{color:var(--muted);margin-top:8px;font-size:14px}.journal-start{background:var(--ticket);color:#fff;white-space:nowrap;border:0;border-radius:10px;padding:12px 17px}.journal-start:hover:not(:disabled){color:#fff;background:#225580}.atlas-card{background:var(--map-water);border-radius:16px;margin-bottom:16px;overflow:hidden}.route-atlas{position:relative}.atlas-label{justify-content:space-between;align-items:center;gap:12px;padding:21px 25px 0;display:flex}.atlas-label>span{align-items:center;gap:8px;font-size:17px;font-weight:600;display:flex}.atlas-label small{color:var(--muted);font-size:12px}.atlas-geography{width:100%;height:auto;padding:8px 20px 0;display:block;overflow:visible}.atlas-land path{fill:var(--map-land);stroke:var(--muted);stroke-opacity:.25;stroke-width:.9px;stroke-linejoin:round}.atlas-geography text{fill:var(--ink);letter-spacing:.03em;paint-order:stroke;stroke:var(--map-water);stroke-width:4px;stroke-linejoin:round;font-size:22px;font-weight:700}.atlas-geography .ocean-label{letter-spacing:.18em;fill:var(--muted);stroke:none;font-family:Georgia,serif;font-size:16px;font-style:italic;font-weight:400}.atlas-geography circle{fill:var(--travel-orange);stroke:var(--map-land);stroke-width:3px}.atlas-connection{fill:none;stroke:var(--accent);stroke-width:2px;stroke-dasharray:5 5;opacity:.25;transition:opacity .25s,stroke .25s}.atlas-connection.selected{stroke:var(--travel-orange);stroke-width:3px;opacity:1;stroke-dasharray:2 1;animation:.7s ease-out both route-draw}.atlas-leg-tabs{scrollbar-width:none;gap:6px;padding:8px 22px 12px;display:flex;overflow-x:auto}.atlas-leg-tabs button{color:var(--muted);white-space:nowrap;background:0 0;border:0;flex:1 0 auto;min-height:44px;padding:8px 10px;font-size:13px}.atlas-leg-tabs button[aria-pressed=true]{background:var(--surface);color:var(--ink)}.atlas-leg-tabs button[aria-pressed=true]>svg{color:var(--travel-orange)}.atlas-selected{text-align:left;background:var(--surface);border:0;justify-content:space-between;gap:14px;width:calc(100% - 44px);margin:0 22px;padding:14px 16px;display:flex}.atlas-selected strong{font-size:16px;display:block}.atlas-selected small{color:var(--muted);margin-top:3px;font-size:12px;font-weight:400;display:block}.atlas-selected>span:last-child{color:var(--accent);white-space:nowrap;align-items:center;gap:7px;font-size:14px;display:flex}.atlas-source{text-align:right;color:var(--muted);padding:8px 24px 12px;font-size:12px}.atlas-source a{color:inherit;text-underline-offset:3px}.journal-actions{grid-template-columns:1fr 1fr;gap:12px;margin:0 0 26px;display:grid}.journal-actions button{border:1px solid var(--line);background:0 0;justify-content:flex-start;min-height:58px;padding:12px 16px}.journal-actions button>svg:first-child{color:var(--travel-orange)}.journal-actions button>span{text-align:left;flex:1}.journal-actions button>b{background:var(--travel-wash);color:var(--travel-orange);border-radius:6px;padding:2px 8px;font-size:14px;font-weight:600}.journal-actions button>svg:last-child{color:var(--muted)}.chapter-postcards{grid-template-columns:1fr 1fr;gap:20px;margin:0 0 32px;display:grid}.chapter-postcard{text-align:left;isolation:isolate;background:#172e45;border:0;border-radius:14px;padding:0;display:block;position:relative;overflow:hidden}.chapter-postcard>img{object-fit:cover;width:100%;height:240px;transition:transform .6s cubic-bezier(.2,.8,.2,1);display:block}.postcard-caption{color:#fff;background:linear-gradient(#0000 15%,#071b30cc 100%);justify-content:space-between;align-items:flex-end;gap:12px;padding:24px;display:flex;position:absolute;inset:0}.postcard-caption h2{color:#fff;margin-top:5px;font-size:29px}.postcard-caption small{letter-spacing:.04em;color:#fff;font-size:13px}.postcard-arrow{border:1px solid #ffffff80;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;display:flex}.chapter-postcard:hover>img{transform:scale(1.035)}.journey-days h2{font-size:23px}.journey-days>.section-row>span{color:var(--muted);font-size:14px}.day-index{grid-template-columns:1fr 1fr;gap:0 26px;margin-top:14px;display:grid}.day-index>button{border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;border-radius:0;justify-content:flex-start;gap:16px;padding:17px 0}.index-date{text-align:center;flex-shrink:0;width:43px}.index-date small{color:var(--travel-orange);font-size:12px;font-weight:500;display:block}.index-date strong{font-size:26px;font-weight:550;line-height:1.2;display:block}.index-content{flex:1;min-width:0}.index-content>strong{font-size:16px;font-weight:550;line-height:1.4;display:block}.index-content>small{color:var(--muted);align-items:center;gap:5px;margin-top:6px;font-size:12px;font-weight:400;display:flex}.day-index>button>svg{color:var(--muted)}.day-postcard{background:var(--surface);touch-action:pan-y;border-radius:14px;margin:6px 0 22px;overflow:hidden}.day-postcard-image{min-height:210px;position:relative;overflow:hidden}.day-postcard-image>img{object-fit:cover;width:100%;height:260px;display:block}.day-postcard-copy{color:#fff;background:linear-gradient(#0000 12%,#06182ad9 100%);flex-direction:column;justify-content:flex-end;padding:26px;display:flex;position:absolute;inset:0}.day-postcard-copy h2{color:#fff;text-wrap:balance;max-width:35ch;font-size:29px}.date-stamp{color:#fff;align-items:center;gap:6px;margin-bottom:8px;font-size:13px;display:flex}.atlas-back{color:#172e45;background:#fffefb;border:0;font-size:14px;position:absolute;top:16px;right:16px}.postcard-controls{justify-content:space-between;align-items:center;gap:8px;padding:2px 12px 2px 18px;display:flex}.postcard-controls>a{color:var(--muted);font-size:12px;text-decoration:none}.postcard-controls>div{align-items:center;gap:6px;display:flex}.postcard-controls button{color:var(--accent);background:0 0;border:0;width:44px;padding:6px}.postcard-controls small{color:var(--muted);font-size:12px}.day-route{scrollbar-width:thin;gap:0;margin-bottom:6px;padding:4px 0 16px;display:flex;overflow-x:auto}.day-route a{color:var(--muted);flex-direction:column;flex:0 0 105px;align-items:flex-start;padding-right:14px;text-decoration:none;display:flex;position:relative}.day-route a:not(:last-child):before{content:"";border-top:1px dashed var(--line);position:absolute;top:17px;left:37px;right:5px}.day-route a>span{background:var(--soft);color:var(--accent);border-radius:50%;justify-content:center;align-items:center;width:35px;height:35px;margin-bottom:6px;display:flex}.day-route a>small{font-variant-numeric:tabular-nums;font-size:12px}.day-route a>strong{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;font-weight:500;line-height:1.4;display:-webkit-box;overflow:hidden}.day-route a:hover{color:var(--accent)}.day-main{min-width:0}.day-aside .day-heading h2{display:none}.day-aside .story-theme{margin:0 0 14px}.day-aside .day-heading{padding-bottom:12px}.flight-card{background:var(--surface);position:relative;overflow:hidden;box-shadow:0 5px 20px #182b4310;padding:0!important}.flight-card>.item-top{background:var(--ticket);color:#fff;gap:10px;padding:14px 18px}.flight-card .item-top h3{color:#fff;letter-spacing:.05em;font-size:17px}.flight-card .item-top .meta{color:#dbe8f3}.flight-card .item-top .badge{color:#dbe8f3!important}.flight-card .item-top .category-icon{color:#fff!important}.flight-card .item-top .edit-button{color:#fff}.ticket-route{grid-template-columns:minmax(0,1fr) 76px minmax(0,1fr);align-items:center;gap:8px;padding:20px 24px 18px;display:grid}.ticket-route>div:first-child{text-align:left}.ticket-route>div:last-child{text-align:right}.ticket-route small{color:var(--muted);font-size:12px;display:block}.ticket-route .airport-code{letter-spacing:.03em;color:var(--ink);font-size:37px;font-weight:650;line-height:1.2;display:block}.ticket-route>div>span{color:var(--muted);margin:2px 0 12px;font-size:13px;display:block}.ticket-route b{font-variant-numeric:tabular-nums;font-size:24px;font-weight:550;line-height:1.3;display:block}.ticket-airway{color:var(--travel-orange);flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex}.ticket-airway:before{content:"";border-top:1px dashed var(--line);width:70px}.ticket-airway>span{white-space:nowrap;font-size:12px!important}.ticket-tear{border-top:1px dashed var(--line);margin:0;position:relative}.ticket-tear:before,.ticket-tear:after{content:"";background:var(--bg);border-radius:50%;width:16px;height:16px;position:absolute;top:-8px}.ticket-tear:before{left:-8px}.ticket-tear:after{right:-8px}.ticket-stub{color:var(--muted);align-items:center;gap:6px;padding:12px 20px 0;font-size:13px;display:flex}.ticket-stub small{margin-left:auto;font-size:12px}.flight-card>.card-actions{margin-top:0;padding:0 18px 8px}.flight-card>.details{margin-top:0;padding:14px 20px 20px}.flight-card>.arrival-reminder{padding:8px 20px 0}.item-hotel .category-icon{color:var(--travel-orange)!important}.item-show .category-icon{color:#7e4c9b!important}.item-meal .category-icon{color:var(--travel-orange)!important}.item-activity .category-icon{color:#246e6b!important}.item:not(.flight-card){border:1px solid var(--line)!important}.details{animation:.22s ease-out detail-unfold}.plan-highlight{animation:1.25s ease-out plan-focus}.in-view{animation:.4s cubic-bezier(.2,.8,.2,1) both journal-arrive}.bottom-nav{box-shadow:0 -3px 18px #152e4506}.bottom-nav button[aria-current=page]{color:var(--travel-orange)}.bottom-nav button{min-width:0}.dates button[aria-pressed=true]{background:var(--ticket);color:#fff}.dates button[aria-pressed=true] small{color:#fff}.city-chapters{background:var(--line)}.sync-message>svg{color:var(--accent)}.packing-stats section{background:var(--soft)}.packing-stats progress{accent-color:var(--travel-orange)}.person-switch button[aria-pressed=true]{color:var(--travel-orange)}@keyframes route-draw{0%{stroke-dashoffset:100px;opacity:.35}to{stroke-dashoffset:0;opacity:1}}@keyframes detail-unfold{0%{opacity:.3;transform:translateY(-5px)}to{opacity:1;transform:none}}@keyframes journal-arrive{0%{opacity:.6;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes plan-focus{0%,45%{box-shadow:0 0 0 3px var(--travel-orange)}to{box-shadow:0 0 #0000}}::view-transition-old(root){animation-duration:.16s}::view-transition-new(root){animation-duration:.22s}@media (min-width:950px){.route-atlas{grid-template-columns:minmax(0,1fr) 270px;display:grid}.atlas-label{grid-column:1/-1}.atlas-geography{grid-area:2/1/5}.atlas-leg-tabs{flex-direction:column;grid-area:2/2;gap:1px;padding:20px 22px 10px 0;overflow:visible}.atlas-leg-tabs button{flex:auto;justify-content:flex-start;min-height:40px;font-size:14px}.atlas-selected{grid-area:3/2;width:calc(100% - 22px);margin:0;padding:12px;display:block}.atlas-selected>span:last-child{margin-top:10px}.atlas-source{grid-column:1/-1}.atlas-label small{padding-right:3px}}@media (max-width:600px){.masthead{padding-top:7px}.journal-heading{flex-wrap:wrap;align-items:flex-start;gap:12px;margin:6px 0 17px}.journal-heading h1{font-size:29px}.journal-heading p{margin-top:6px;font-size:13px}.journal-start{min-height:44px;padding:9px 13px;font-size:14px}.atlas-label{flex-direction:column;align-items:flex-start;gap:3px;padding:15px 16px 0}.atlas-label>span{font-size:16px}.atlas-label small{font-size:12px}.atlas-geography{padding:8px 6px 0}.atlas-geography text{font-size:32px}.atlas-geography .ocean-label{font-size:26px}.atlas-geography circle{r:7px}.atlas-connection{stroke-width:3px}.atlas-connection.selected{stroke-width:4px}.atlas-leg-tabs{gap:3px;padding:0 12px 9px}.atlas-leg-tabs button{padding:6px 9px;font-size:12px}.atlas-selected{gap:7px;width:calc(100% - 24px);margin:0 12px;padding:12px}.atlas-selected strong{font-size:14px}.atlas-selected>span:last-child{font-size:13px}.atlas-source{padding:7px 14px 10px}.journal-actions{gap:8px;margin-bottom:22px}.journal-actions button{gap:7px;padding:9px 12px;font-size:14px}.journal-actions button>svg:last-child{display:none}.chapter-postcards{gap:12px;margin-bottom:25px}.chapter-postcard>img{height:180px}.postcard-caption{align-items:flex-end;padding:14px}.postcard-caption h2{font-size:21px}.postcard-caption small{font-size:12px}.postcard-arrow{display:none}.journey-days h2{font-size:21px}.day-index{grid-template-columns:1fr}.day-index>button{padding:14px 0}.day-postcard{margin-bottom:16px}.day-postcard-image{min-height:180px}.day-postcard-image>img{height:195px}.day-postcard-copy{padding:18px}.day-postcard-copy h2{max-width:28ch;font-size:23px}.atlas-back{min-height:38px;padding:6px 10px;top:10px;right:10px}.postcard-controls{padding:2px 7px 2px 12px}.postcard-controls small{font-size:12px}.postcard-controls>div{gap:0}.postcard-controls>a{white-space:nowrap;text-overflow:ellipsis;max-width:90px;overflow:hidden}.ticket-route{grid-template-columns:minmax(0,1fr) 55px minmax(0,1fr);padding:18px 20px 16px}.ticket-route .airport-code{font-size:34px}.ticket-route b{font-size:23px}.ticket-route>div>span{font-size:12px}.ticket-airway:before{width:48px}.ticket-stub{flex-wrap:wrap;gap:5px;padding-left:16px;padding-right:16px}.ticket-stub small{font-size:12px}.flight-card>.item-top{padding:11px 16px}.bottom-nav button{font-size:12px}.bottom-nav button svg{width:21px;height:21px}.day-route a{flex-basis:100px}.day-aside{padding-top:16px}.travel-surface[data-view=days]>.trip-header{padding-bottom:10px}.trip-shortcuts{margin-bottom:9px}.focus-board{margin-bottom:12px}.dates{margin-bottom:10px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important}.atlas-connection.selected,.details,.in-view,.plan-highlight{animation:none!important}.chapter-postcard>img{transition:none}::view-transition-old(root){animation:none!important}::view-transition-new(root){animation:none!important}}.return-map{background:var(--map-water);width:100%;height:260px;display:block}.return-map path{fill:var(--map-land);stroke:var(--muted);stroke-width:1px}.journal-loading{text-align:center;max-width:780px;margin:30px auto;padding:0 0 24px;overflow:hidden}.journal-loading .route-atlas{text-align:left;background:var(--map-water);margin-bottom:20px}.journal-loading .atlas-label small,.journal-loading .atlas-leg-tabs{display:none}.journal-loading h1{margin:8px 16px;font-size:25px}.journal-loading>p{margin:8px 16px}.loading-plane{color:var(--travel-orange);animation:1.5s ease-in-out infinite alternate loading-flight}@keyframes loading-flight{to{transform:translate(12px)}}@media (max-width:600px){.return-map{height:195px}}@media (prefers-reduced-motion:reduce){.loading-plane{animation:none}}.day-map,.route-disclosure,.change-feed{border-block-end:1px solid var(--line,#dce2eb);margin:12px 0;padding:12px 0}.day-map>summary,.route-disclosure>summary,.change-feed>summary{cursor:pointer;align-items:center;gap:10px;min-height:44px;font-size:1rem;display:flex}.day-map>summary span{color:var(--muted);margin-left:auto}.map-stop-list{scrollbar-width:thin;gap:8px;padding:12px 0;display:flex;overflow-x:auto}.map-stop-list button{text-align:left;flex:0 0 180px;align-items:center;gap:8px;font-size:.875rem;display:flex}.map-stop-list b{background:var(--line,#dce2eb);border-radius:50%;place-items:center;min-width:26px;height:26px;display:grid}.map-stop-list button[aria-pressed=true],.map-modes button[aria-pressed=true],.check-filters button[aria-pressed=true]{background:var(--ink,#18304b);color:var(--surface,#fff)}.map-place{background:var(--surface,#fff);border:1px solid var(--line,#dce2eb);border-radius:16px;padding:16px}.map-place p{overflow-wrap:anywhere;font-size:1rem}.map-place small{color:var(--muted);font-size:.875rem;display:block}.map-modes,.check-filters{flex-wrap:wrap;gap:6px;margin:10px 0;display:flex}.map-modes button,.check-filters button{min-height:44px;padding:8px 12px;font-size:.875rem}.undo-strip{z-index:45;bottom:calc(86px + env(safe-area-inset-bottom));border:1px solid var(--line,#dce2eb);background:var(--surface,#fff);border-radius:16px;align-items:center;gap:10px;width:min(600px,100% - 24px);padding:12px 16px;font-size:.875rem;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 8px 32px #142a4830}.undo-strip span{flex:1}.undo-strip button{min-height:44px;font-size:.875rem}.change-feed li{padding:6px 0;font-size:.875rem}.person-welcome{text-align:center;max-width:600px;margin:30px auto;padding:36px 20px}.person-welcome h1{font-size:1.5rem}.person-welcome .person-switch{justify-content:center}.priority-heading{margin:24px 0 10px;font-size:1.15rem}.booking-action{color:var(--muted);margin:12px 0 5px;font-size:.875rem}.overview-priorities{margin:24px 0}.overview-priorities h2{font-size:1.125rem}.overview-priorities>button{text-align:left;border:0;border-bottom:1px solid var(--line,#dce2eb);background:0 0;border-radius:0;align-items:center;gap:12px;width:100%;padding:15px 0;display:flex}.overview-priorities span{flex:1;min-width:0}.overview-priorities strong,.overview-priorities small{overflow-wrap:anywhere;display:block}.overview-priorities strong{font-size:1rem}.overview-priorities small{color:var(--muted);margin-top:4px;font-size:.875rem}@media (max-width:640px){[data-today=true] .day-postcard-image{height:130px;min-height:0}[data-today=true] .day-postcard-copy h2{font-size:1.3rem}.undo-strip{gap:5px;padding:8px 10px}.undo-strip button{padding:8px}.map-stop-list button{flex-basis:155px}}
