.document-toolbar,.document-meta,.document-footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.document-toolbar{margin:16px 0;color:var(--muted)}.document-list{display:grid;gap:14px}.document-card{padding:20px;border:1px solid var(--line);border-radius:18px;background:var(--surface);min-width:0}.document-meta{color:var(--muted);font-size:var(--text-meta)}.document-meta>span{color:var(--accent);background:var(--accent-tint);padding:5px 10px;border-radius:8px}.document-card h3{font-size:18px;line-height:1.5;margin:14px 0 10px;overflow-wrap:anywhere}.document-note{color:var(--muted);font-size:16px;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere}.document-footer{margin-top:18px;font-size:var(--text-meta);color:var(--muted);flex-wrap:wrap}.document-footer button{min-height:44px}.document-message{padding:14px;background:var(--accent-tint);border-radius:12px;line-height:1.6;overflow-wrap:anywhere}.document-message a{color:var(--accent)}.document-hint{color:var(--muted);font-size:var(--text-meta);line-height:1.7;margin:22px 0}@media(min-width:760px){.document-list{grid-template-columns:repeat(2,minmax(0,1fr))}}.weather-wrap{max-width:var(--width-content);margin:0 auto 20px;padding:0 24px}.weather-panel{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:20px 24px}.weather-heading{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px}.weather-heading h2{margin:3px 0 0;font-size:21px}.weather-heading .journal-eyebrow{margin:0;font-size:11px}.weather-controls{display:flex;gap:8px;align-items:center;min-width:0}.weather-controls label{min-width:0}.weather-controls select{min-height:44px;max-width:100%;padding:8px 30px 8px 12px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);font:inherit}.weather-controls .tbtn{flex-shrink:0}.weather-current{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:18px}.weather-place{margin:0;color:var(--ink-soft);font-size:14px}.weather-temperature{display:block;font-size:40px;line-height:1.3;font-weight:600;font-variant-numeric:tabular-nums}.weather-conditions{display:grid;gap:3px;font-size:14px;color:var(--ink-soft)}.weather-conditions strong{font-size:17px;color:var(--ink)}.weather-note{font-size:13px;line-height:1.7;color:var(--muted);margin:10px 0 0;overflow-wrap:anywhere}.weather-error{font-size:14px;line-height:1.7;background:var(--warn-bg);color:var(--warn);padding:10px 12px;border-radius:8px}.weather-forecast{margin-top:10px;border-top:1px solid var(--line)}.weather-forecast summary{min-height:44px;padding-top:12px;cursor:pointer;color:var(--accent);font-size:14px;font-weight:600}.weather-days{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:10px;margin-top:8px}.weather-days article{min-width:0;display:flex;flex-direction:column;gap:5px;padding:12px 8px;border-radius:8px;background:var(--surface-2);text-align:center;font-size:14px}.weather-days time{color:var(--muted);font-size:13px}.weather-days strong{font-size:14px}.weather-days small{color:var(--ink-soft);font-size:12px}.weather-attribution{color:var(--muted);font-size:12px;line-height:1.7;margin:12px 0 0}.weather-attribution a{color:inherit;text-underline-offset:3px;display:inline-flex;align-items:center;min-height:30px}.weather-attribution span{display:block}@media(max-width:700px){.weather-wrap{padding:0 16px}.weather-panel{padding:18px}.weather-heading{align-items:flex-start}.weather-controls{width:100%}.weather-controls label{flex:1}.weather-controls select{width:100%}.weather-current{gap:20px}.weather-temperature{font-size:36px}.weather-days{grid-template-columns:repeat(2,minmax(0,1fr))}}.contacts-wrap{max-width:var(--width-content);margin:0 auto;padding:0 20px 28px}.contact-section{padding:24px;margin-bottom:20px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg)}.contact-section h3{font-size:22px;margin:4px 0 16px}.contact-section-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.contact-eyebrow{font-size:13px;font-weight:650;color:var(--accent)}.contact-help,.contact-source{font-size:14px;line-height:1.65;color:var(--muted);margin:8px 0}.contact-country,.contact-dial-fields label,.contact-editor label{display:grid;gap:8px;font-size:14px;font-weight:600;min-width:0}.contacts-wrap select,.contacts-wrap input,.contact-editor input,.contact-editor select,.contact-editor textarea{min-height:44px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-sm);color:var(--ink);background:var(--surface);font:inherit;font-size:16px;width:100%;box-sizing:border-box}.emergency-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin:18px 0}.emergency-call{display:grid;gap:7px;padding:18px;color:var(--ink);text-decoration:none;background:var(--danger-bg);border:1px solid var(--danger-line);border-radius:var(--radius)}.emergency-call strong{font-size:30px;color:var(--danger);letter-spacing:.02em;overflow-wrap:anywhere}.call-caption{font-size:13px;color:var(--ink-soft)}.personal-contacts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,270px),1fr));gap:16px;margin-top:16px}.personal-contact{border:1px solid var(--line);border-radius:var(--radius);padding:18px;min-width:0}.contact-card-heading{display:flex;align-items:center;gap:12px}.contact-card-heading h4{margin:0 0 4px;font-size:19px;overflow-wrap:anywhere}.contact-avatar{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;background:var(--accent-tint);color:var(--accent);border-radius:50%;font-weight:700}.contact-note{font-size:14px;color:var(--ink-soft);white-space:pre-wrap;overflow-wrap:anywhere}.contact-international{font-size:22px;font-variant-numeric:tabular-nums;margin:20px 0;overflow-wrap:anywhere}.contact-actions{display:flex;gap:8px;flex-wrap:wrap}.contact-actions a{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.contact-manage{display:flex;justify-content:flex-end;gap:16px;border-top:1px solid var(--line-soft);margin-top:16px;padding-top:4px}.contact-text-button{border:0;background:none;color:var(--muted);min-height:44px;font:inherit;font-size:14px;cursor:pointer}.contact-empty{background:var(--surface-2);border-radius:var(--radius);padding:20px;color:var(--muted);line-height:1.7;margin-top:18px}.contact-empty h4{margin:0 0 6px;color:var(--ink)}.contact-empty p{margin:0}.contact-error{color:var(--danger);overflow-wrap:anywhere}.contact-feedback{color:var(--accent);padding:10px 0}.contact-dial-fields{display:grid;grid-template-columns:1fr 1.4fr;gap:16px}.converted-phone{padding:18px;background:var(--accent-tint);border-radius:var(--radius);margin:16px 0}.converted-phone>strong{display:block;font-size:24px;margin-bottom:12px;overflow-wrap:anywhere}.contact-editor{display:grid;gap:16px;padding:12px 0}@media(max-width:600px){.contacts-wrap{padding:0 12px 20px}.contact-section{padding:18px}.contact-country{width:100%}.contact-dial-fields,.emergency-grid{grid-template-columns:1fr}.emergency-call{grid-template-columns:1fr auto;align-items:center}.emergency-call strong{font-size:26px}.call-caption{grid-column:1 / -1}}.currency-wrap{max-width:620px;margin:0 auto;padding:26px 24px 72px}.currency-card{padding:24px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.currency-card h2{margin:0 0 20px;font-size:22px}.currency-field,.currency-pair label{display:grid;gap:6px;font-size:var(--text-meta);font-weight:600}.currency-field input,.currency-pair select{width:100%;min-height:44px}.currency-pair{display:grid;grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr);align-items:end;gap:10px;margin-top:16px}.currency-swap{width:44px;height:44px;border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--accent-dark);font-size:22px}.currency-result{margin-top:18px;padding:16px;background:var(--accent-tint);border:1px solid var(--accent-line);border-radius:var(--radius)}.currency-result span{display:block;color:var(--muted);font-size:var(--text-meta)}.currency-result strong{display:block;margin-top:4px;color:var(--accent-dark);font-size:28px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}@media(max-width:600px){.currency-wrap{padding:20px 16px 60px}.currency-card{padding:18px}.currency-pair{gap:6px}}:root{--text-body: 16px;--text-meta: 14px;--control-size: 44px;--font-editorial: var(--font-text);--app-header-height: 68px;--day-rail-height: 114px;--bg: #f7f7f5;--surface: #ffffff;--surface-2: #eff1ee;--ink: #292d2b;--ink-soft: #454c47;--muted: #656c66;--faint: var(--muted);--line: #dfe3dd;--line-soft: #edf0eb;--accent: #6d43ad;--accent-dark: var(--accent);--accent-tint: #f1ebfb;--accent-line: var(--line);--on-accent: #ffffff;--progress-track: var(--surface);--ok: #3c7a5a;--ok-bg: #eaf6ef;--ok-line: #cde8d8;--warn: #9a6b2e;--warn-bg: #fbf1e2;--warn-line: #ebd9bd;--danger: #b4564e;--danger-bg: #fbecea;--danger-line: #efd3cf;--highlight-bg: #fff8ec;--highlight-line: #f0d99a;--ticket-ink: #8a6a1e;--ticket-bg: #fbf3d8;--ticket-line: #ebd9a6;--radius: 14px;--radius-sm: 9px;--radius-lg: 20px;--shadow: 0 1px 2px rgba(55, 53, 47, .04), 0 8px 24px rgba(55, 53, 47, .06);--shadow-card: 0 2px 8px rgba(0, 0, 0, .08), 0 0 0 .5px rgba(0, 0, 0, .06);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .14);--font-display: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-text: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, monospace;--width-content: 920px;--width-app: 920px;--width-wide: 1080px;--bottomnav-height: 72px;--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-top: env(safe-area-inset-top, 0px)}:root{--type-flight: #3f6c93;--type-transit: #6e8ca0;--type-food: #c08552;--type-activity: #4e8a7b;--type-shopping: #8a6fa0;--type-lodging: #5e6b7a;--type-buffer: #9aa6b2;--type-note: #a9b2bc}*,*:before,*:after{box-sizing:border-box}*{margin:0;min-width:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);font:var(--text-body)/1.7 var(--font-text);-webkit-font-smoothing:antialiased}#root{padding-bottom:calc(var(--bottomnav-height) + var(--safe-bottom) + 28px)}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}button:disabled{cursor:not-allowed;opacity:.48}a{color:var(--accent-dark);text-underline-offset:3px;overflow-wrap:anywhere}svg{width:20px;height:20px;flex-shrink:0}:focus-visible{outline:2px solid var(--accent-dark);outline-offset:3px}h1,h2,h3,h4{line-height:1.5;overflow-wrap:anywhere;font-weight:600}p{overflow-wrap:anywhere}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap}.is-unset{color:var(--muted)}.page-main,.flights-wrap,.prep-wrap,.bud-wrap,.simple-wrap,.more-wrap{max-width:var(--width-content);padding:26px 24px 72px;margin-inline:auto}.page-intro,.sec-sub{color:var(--muted);font-size:var(--text-meta);line-height:1.8;margin-bottom:20px}.tbtn,.back-btn,.devbar-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:9px 14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);font-size:var(--text-meta);text-decoration:none}.tbtn.primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.tbtn.danger{background:var(--danger-bg);color:var(--danger);border-color:var(--danger-line)}.tbtn:hover:not(:disabled),.back-btn:hover{border-color:var(--accent)}.tbtn.primary:hover:not(:disabled){background:var(--accent-dark)}.ibtn{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:0;border-radius:9px;background:transparent;color:var(--muted)}.ibtn svg{width:17px;height:17px}.ibtn:hover:not(:disabled),.ibtn.is-locked-on{background:var(--accent-tint);color:var(--accent-dark)}.ibtn.del:hover:not(:disabled){background:var(--danger-bg);color:var(--danger)}.status-pill,.pin,.tm-badge{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:6px;padding:1px 7px;font-size:var(--text-meta);color:var(--muted);background:var(--surface-2);white-space:nowrap}.status-pill.confirmed,.status-pill.booked,.status-pill.completed,.tm-badge.active{background:var(--ok-bg);color:var(--ok);border-color:var(--ok-line)}.status-pill.proposed,.status-pill.candidate{background:var(--warn-bg);color:var(--warn);border-color:var(--warn-line)}.status-pill.cancelled{color:var(--muted)}.state-block{max-width:620px;margin:48px auto;padding:24px}.st-badge{color:var(--accent-dark);font-size:var(--text-meta)}.st-title{font-size:24px;margin:12px 0}.st-body{margin:12px 0;color:var(--muted)}.is-error .st-badge{color:var(--danger)}.inline-empty,.empty-day{padding:24px;background:var(--surface);border:1px dashed var(--line);border-radius:var(--radius);color:var(--muted);font-size:14px;margin-bottom:18px}.offline-notice{max-width:var(--width-content);margin:12px auto;padding:12px 20px;background:var(--warn-bg);color:var(--warn);border-radius:10px;font-size:var(--text-meta)}.skeleton{background:var(--surface-2);border-radius:var(--radius);animation:breathe 1.5s ease-in-out infinite alternate}.skeleton-card{height:90px;margin-block:12px}@keyframes breathe{to{opacity:.5}}@media(max-width:600px){.page-main,.flights-wrap,.prep-wrap,.bud-wrap,.simple-wrap,.more-wrap{padding:20px 16px 72px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}@media print{body{background:#fff}#root{padding-bottom:0}button{display:none!important}}.app-header{position:sticky;top:0;z-index:40;padding-top:var(--safe-top);background:var(--bg);border-bottom:1px solid var(--line)}.app-header-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:var(--width-content);margin:auto;padding:12px 24px;min-height:68px}.app-logo{display:flex;align-items:baseline;gap:8px;white-space:nowrap}.app-logo-mark{font-family:var(--font-editorial);font-size:28px;font-weight:700;color:var(--accent-dark);letter-spacing:-.05em}.app-logo-sep{color:var(--line)}.app-logo-sub{font-size:10px;font-weight:650;letter-spacing:.12em;text-transform:uppercase}.hdr-right{display:flex;align-items:center;gap:12px;min-width:0}.trip-switcher-wrap{position:relative;min-width:0}.trip-switcher{display:block;min-height:44px;max-width:240px;width:100%;padding:6px 12px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);font:inherit;font-size:var(--text-meta);text-overflow:ellipsis}.ts-name{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.ts-caret{font-size:9px;color:var(--muted)}.sync-pill{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;font-size:var(--text-meta);color:var(--accent-dark)}.sync-pill:before{content:"";width:6px;height:6px;background:currentColor;border-radius:50%}.sync-pill.is-offline,.sync-pill.is-conflict{color:var(--danger)}.sync-pill.is-saving{color:var(--warn)}.trip-menu{position:absolute;right:0;top:calc(100% + 10px);width:300px;max-width:calc(100vw - 32px);max-height:65dvh;overflow-y:auto;padding:8px;background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-lg);z-index:55}.trip-menu-section+.trip-menu-section{border-top:1px solid var(--line);margin-top:8px;padding-top:8px}.trip-menu-heading,.trip-menu-empty{padding:8px;font-size:var(--text-meta);color:var(--muted)}.trip-menu-row{width:100%;display:flex;align-items:center;gap:10px;padding:12px 10px;min-height:60px;text-align:left;border:0;border-radius:8px;background:transparent}.trip-menu-row:hover,.trip-menu-row.on{background:var(--accent-tint)}.tm-text{display:grid;gap:4px;flex:1}.tm-title{font-size:14px;overflow-wrap:anywhere}.tm-period{font-size:var(--text-meta);color:var(--muted)}.bottomnav{display:flex;justify-content:center;gap:8px;max-width:var(--width-content);margin:auto;padding:0 24px 10px}.bnav-btn{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:8px 24px;border:0;background:transparent;color:var(--muted);border-radius:9px}.bnav-btn.on{color:var(--accent-dark);background:var(--accent-tint);font-weight:650}.bnav-ic{display:flex;align-items:center;justify-content:center}.bnav-ic svg{width:19px;height:19px}.bnav-lbl{font-size:13px}.page-heading{max-width:var(--width-content);margin:auto;padding:32px 24px 0}.page-heading-copy{padding-bottom:12px}.page-heading.has-landscape{background:url(./journal-landscape-BA8NkSKQ.jpg) right top / auto 168px no-repeat;padding-top:30px}.page-heading h2{font-size:30px;letter-spacing:.025em;font-weight:550}.page-heading.has-landscape h2{max-width:70%}.page-heading p{color:var(--muted);font-size:var(--text-meta);margin-top:7px}.journal-eyebrow{display:block;color:var(--accent-dark);letter-spacing:.18em;font-size:10px;font-weight:600;margin-bottom:8px}.page-heading-meta{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding-block:20px 16px;color:var(--muted);font-size:var(--text-meta)}.journey-route{letter-spacing:.06em}.readonly-banner{max-width:var(--width-content);margin:auto;display:flex;align-items:start;gap:8px;padding:8px 24px;color:var(--muted);font-size:var(--text-meta)}.rb-ic{white-space:nowrap;font-size:var(--text-meta)}.cloud-account{display:flex;justify-content:flex-end;align-items:center;gap:12px;padding:4px max(16px,calc((100vw - 872px)/2));color:var(--muted);background:var(--bg);font-size:var(--text-meta);overflow-wrap:anywhere}.cloud-account button{min-height:var(--control-size);border:0;color:var(--accent-dark);background:transparent;white-space:nowrap}.fab{position:fixed;right:max(20px,calc((100vw - var(--width-content)) / 2 - 64px));bottom:28px;width:52px;height:52px;border-radius:50%;display:flex;justify-content:center;align-items:center;border:0;background:var(--accent);color:var(--on-accent);box-shadow:0 4px 16px #4e583433;z-index:35}.fab svg{width:25px;height:25px}.toast{position:fixed;z-index:130;bottom:28px;left:50%;transform:translate(-50%);background:var(--ink);color:var(--bg);padding:12px 20px;border-radius:12px;max-width:calc(100vw - 32px);font-size:var(--text-meta)}.pwa-status{background:var(--accent-tint);color:var(--accent-dark);display:flex;flex-wrap:wrap;gap:8px;justify-content:center;align-items:center;padding:10px 16px;font-size:var(--text-meta)}.devbar{max-width:var(--width-content);margin:16px auto;padding:10px 16px;border:1px dashed var(--line);border-radius:9px;font-size:var(--text-meta);color:var(--muted)}.devbar-row{display:flex;gap:8px;flex-wrap:wrap;padding-top:10px}.devbar-btn.on{background:var(--accent-tint)}@media(max-width:700px){.app-header-inner{padding:10px 16px;min-height:64px}.app-logo-sep{display:none}.app-logo{gap:4px}.app-logo-sub{display:inline;max-width:48px;overflow:hidden;font-size:8px;color:var(--accent)}.app-logo-mark{font-size:22px}.trip-switcher{max-width:68vw;font-size:16px}.hdr-right{gap:8px}.bottomnav{position:fixed;inset:auto 0 0;z-index:50;padding:8px 8px calc(8px + var(--safe-bottom));gap:4px;background:var(--surface);border-top:1px solid var(--line);max-width:none}.bnav-btn{flex:1;flex-direction:column;gap:4px;padding:4px;min-height:56px;border-radius:9px}.bnav-lbl{font-size:13px}.bnav-ic svg{width:21px;height:21px}.fab,.toast{bottom:calc(var(--bottomnav-height) + var(--safe-bottom) + 16px)}.page-heading{padding:24px 20px 0}.page-heading.has-landscape{padding-top:24px;background-size:auto 150px}.page-heading p{max-width:90%;font-size:var(--text-meta)}.journal-eyebrow{font-size:9px}.readonly-banner{padding:8px 16px;font-size:var(--text-meta)}}@media print{.app-header,.cloud-account,.pwa-status,.fab,.toast,.devbar,.readonly-banner{display:none}.page-heading.has-landscape{background:none}}.cloud-account{justify-content:space-between}.toast{display:flex;align-items:center;gap:12px}.toast button{color:inherit;background:transparent;border:0;min-height:var(--control-size);min-width:var(--control-size);font-size:20px}.rail{position:sticky;top:var(--app-header-height);z-index:30;padding:10px 24px;background:var(--bg);border-bottom:1px solid var(--line)}.rail-inner{max-width:calc(var(--width-content) - 48px);margin:auto;display:flex;align-items:center;gap:16px}.seg{display:flex;flex-shrink:0;padding:3px;background:var(--accent-tint);border-radius:10px}.seg-btn{min-height:44px;padding:6px 16px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:var(--text-meta)}.seg-btn.on{background:var(--surface);color:var(--accent)}.day-chips{display:flex;gap:6px;flex:1;overflow-x:auto;scrollbar-width:thin;padding-block:3px}.chip{display:flex;align-items:center;flex-shrink:0;gap:7px;min-height:44px;border:1px solid transparent;border-radius:9px;padding:8px 11px;background:transparent}.chip.on{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}.chip.on .cwd,.chip.on .cempty{color:inherit}.cdot{width:6px;height:6px;border-radius:50%}.cdate{font-size:16px;font-weight:600}.cwd,.cempty{font-size:14px;color:var(--muted)}.day{margin-bottom:44px;scroll-margin-top:calc(var(--app-header-height) + var(--day-rail-height) + 20px)}.day-head{display:grid;grid-template-columns:90px minmax(0,1fr) auto;align-items:start;gap:16px;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:18px}.day-date{font:400 1.1 var(--font-editorial);font-size:38px;color:var(--accent-dark)}.day-date .wd{display:block;font:12px/1.6 var(--font-text);margin-top:8px;color:var(--muted)}.day-meta{display:grid;gap:7px}.stage-badge{display:inline-flex;align-items:center;justify-self:start;gap:6px;font-size:var(--text-meta);background:var(--accent-tint);color:var(--accent-dark);border-radius:6px;padding:3px 9px}.sdot{width:5px;height:5px;border-radius:50%;background:currentColor}.day-note{color:var(--muted);font-size:var(--text-meta);line-height:1.8;white-space:pre-wrap}.day-sort{font-size:var(--text-meta)}.timeline{display:grid;gap:14px}.item{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px;position:relative;box-shadow:0 2px 5px #30332b04}.item.is-locked{border-color:var(--accent-line)}.visit-mark{display:inline-flex;vertical-align:middle;margin-left:6px;color:var(--muted)}.visit-mark svg{width:14px;height:14px}.day-visit-progress{color:var(--muted);font-size:13px;line-height:1.6;margin:12px 0}.schedule-weather-tools{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-bottom:18px;font-size:13px;color:var(--muted)}.day-weather{display:grid;gap:10px;margin:0 0 14px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--surface);font-size:14px;line-height:1.7;overflow-wrap:anywhere}.day-weather p{margin:0}.day-weather small{color:var(--muted);font-size:12px}.day-weather-warning{color:var(--danger)}.day-weather.compact{padding:8px 0;margin:0;border:0;background:transparent;font-size:12px}.item-header{display:grid;grid-template-columns:64px minmax(0,1fr);align-items:start;gap:16px;padding-right:32px}.item .time{font:500 1.8 var(--font-mono);font-size:14px;font-variant-numeric:tabular-nums;padding-top:1px}.item .time.is-unset{font:12px/1.8 var(--font-text)}.item-top{display:flex;align-items:center;flex-wrap:wrap;gap:7px;min-height:24px}.cat-tag{display:inline-flex;align-items:center;gap:5px;font-size:var(--text-meta);color:var(--ink-soft);white-space:nowrap}.cat-tag svg{width:15px;height:15px;color:var(--accent)}.item-title{margin-top:7px;font-size:17px}.item-loc{display:flex;align-items:start;gap:5px;margin-top:6px;color:var(--muted);font-size:var(--text-meta);overflow-wrap:anywhere}.item-loc svg{width:14px;height:14px;margin-top:4px}.item-note{font-size:14px;line-height:1.85;white-space:pre-line;color:var(--ink-soft);margin:14px 0 0 80px}.item-links{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:12px}.tk-link,.info-link{font-size:var(--text-meta);color:var(--accent-dark)}.lk-lab{font-size:14px;color:var(--muted)}.fl-jump{display:flex;justify-content:space-between;gap:12px;margin-top:16px;padding:10px 12px;background:var(--accent-tint);color:var(--accent-dark);border:0;border-radius:8px;font-size:var(--text-meta);min-height:44px}.item-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid var(--line-soft);margin-top:16px;padding-top:4px}.item-source{color:var(--muted);font-size:var(--text-meta)}.item-actions{display:flex;gap:4px}.add-row{margin-top:14px}.add-btn{min-height:48px;width:100%;padding:10px 16px;text-align:left;border:1px dashed var(--line);border-radius:10px;background:transparent;color:var(--accent-dark);font-size:var(--text-meta)}.cal-wrap{max-width:1180px;margin:auto;padding:24px}.cal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:8px}.cal-wd{display:none;color:var(--muted);text-align:center;font-size:var(--text-meta);padding-bottom:8px}.cal-cell{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;border:1px solid var(--line);border-radius:12px;padding:12px;min-height:140px;background:var(--surface);text-align:left}.cal-cell:hover{border-color:var(--accent)}.cal-cell.is-blank{display:none;background:transparent;border-style:dashed}.cal-date{display:flex;align-items:center;gap:6px;margin-bottom:12px}.dnum{font:24px/1.2 var(--font-editorial);color:var(--accent-dark)}.dwd{font-size:14px;color:var(--muted)}.dstage{width:6px;height:6px;border-radius:50%;margin-left:auto}.cal-row{display:grid;grid-template-columns:48px 8px minmax(0,1fr);gap:5px;margin-top:12px;font-size:15px;line-height:1.65}.cal-t{color:var(--muted)}.cal-node{width:5px;height:5px;border-radius:50%;margin-top:6px}.cal-x{overflow-wrap:anywhere}.cal-none,.cal-hint{font-size:var(--text-meta);color:var(--muted)}.cal-hint{max-width:1180px;margin:auto;padding:8px 24px 32px}@media(max-width:700px){.rail{padding:8px 16px}.rail-inner{flex-direction:column;align-items:stretch;max-width:none;gap:4px}.seg-btn{flex:1}.day-chips{flex:auto;order:-1;margin-bottom:6px}.day-head{grid-template-columns:minmax(0,1fr) auto;gap:10px;padding-bottom:16px}.day-date{grid-column:1;font-size:28px;font-weight:600;color:var(--ink)}.day-date .wd{display:inline;margin-left:10px}.day-sort{grid-column:2;grid-row:1}.day-meta{grid-column:1 / -1;grid-row:2}.item{padding:18px 16px}.item-header{grid-template-columns:50px minmax(0,1fr);gap:12px}.item-title{font-size:18px}.item .time{font-size:16px}.item-note{margin-left:0;font-size:16px;line-height:1.75}.cal-grid{grid-template-columns:minmax(0,1fr)}.cal-row{font-size:16px}.cal-cell{padding:20px}.cat-tag,.status-pill,.item-loc,.day-note-edit{font-size:14px}.cal-cell.is-blank,.cal-wd{display:none}.cal-wrap{padding:20px 16px}}@media print{.rail,.add-row,.item-actions{display:none}.item{break-inside:avoid;box-shadow:none}.day{scroll-margin:0}}.item-more{position:absolute;right:8px;top:8px;min-width:44px;min-height:44px;border:0;background:transparent;color:var(--muted);border-radius:10px;font-size:17px;letter-spacing:2px}.item-more:hover{background:var(--accent-tint);color:var(--accent)}.native-dialog.item-action-sheet{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:20px;padding:24px;width:min(440px,calc(100% - 32px))}.item-action-sheet header{display:flex;align-items:start;gap:16px;justify-content:space-between}.item-action-sheet h2{font-size:20px;line-height:1.5}.item-action-sheet header button{flex-shrink:0}.action-source{color:var(--muted);font-size:14px;margin:12px 0}.action-sheet-options{display:grid;gap:8px}.action-sheet-options button{display:flex;align-items:center;gap:12px;width:100%;min-height:52px;padding:12px;background:var(--bg);border:1px solid var(--line);border-radius:10px;text-align:left;font-size:16px}.action-sheet-options svg{width:20px;height:20px}.action-sheet-options .danger{color:var(--danger);margin-top:8px}.day-documents{margin:0 0 18px;padding:16px;border-radius:12px;background:var(--accent-tint)}.day-documents h3{font-size:16px;margin-bottom:8px}.day-document-link{width:100%;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;min-height:48px;font-size:15px;text-align:left;background:transparent;border:0;border-bottom:1px solid var(--accent-line);color:var(--accent-dark)}.day-document-link:last-child{border-bottom:0}.day-document-link span:last-child{flex-shrink:0}@media(max-width:700px){.native-dialog.item-action-sheet{margin:auto 0 0;width:100%;max-width:none;border-radius:22px 22px 0 0;padding:24px 20px calc(24px + env(safe-area-inset-bottom))}}.auth-remember{display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between;gap:8px;font-size:14px;color:var(--muted);margin-top:12px}.tk-link,.fl-jump{min-height:44px;display:inline-flex;align-items:center;font-size:14px}.add-btn{font-size:15px}.cempty{font-size:var(--text-meta)}.item-more:active,.ibtn:active{background:var(--accent-tint)}.bud-list,.bud-card,.bud-analysis,.prep-sec,.simple-card,.more-list{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.fl-tip{color:var(--muted);font-size:var(--text-meta);line-height:1.8}.bud-grand{background:var(--accent-tint);border:1px solid var(--accent-line);padding:24px;border-radius:var(--radius);margin-bottom:16px;display:flex;flex-direction:column;gap:12px}.ag-lab{color:var(--accent-dark);font-size:var(--text-meta)}.ag-val{color:var(--accent-dark);font-size:36px;font-variant-numeric:tabular-nums;letter-spacing:-.04em}.ag-val small{font-size:var(--text-meta);letter-spacing:0;margin-left:8px}.bud-totals{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:24px}.bud-card{padding:16px 20px}.bl{font-size:var(--text-meta);color:var(--muted)}.bv{font-size:24px;font-variant-numeric:tabular-nums}.bv small{margin-left:6px;font-size:var(--text-meta)}.bud-rates{display:flex;flex-wrap:wrap;gap:14px;align-items:center;color:var(--muted);font-size:var(--text-meta);margin-bottom:16px}.bud-sec-h{margin:28px 0 10px;font-size:14px;font-weight:600}.bud-list{overflow:hidden}.bud-group{display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--surface-2);padding:10px 18px;color:var(--muted);font-size:var(--text-meta)}.bud-group-meta{color:var(--muted);font-variant-numeric:tabular-nums}.bud-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:16px;border-bottom:1px solid var(--line-soft);padding:16px 18px;font-size:14px}.br-description{min-width:0}.br-description strong{overflow-wrap:anywhere;word-break:break-word}.bud-side{display:flex;min-width:92px;flex-direction:column;align-items:flex-end;justify-content:space-between;gap:10px}.bud-actions{display:inline-flex;align-items:center;gap:2px;flex-shrink:0}.bud-row:last-child{border:0}.br-item{overflow-wrap:anywhere}.br-qty{display:flex;align-items:center;gap:7px;color:var(--muted);font-size:var(--text-meta)}.br-amt{font-variant-numeric:tabular-nums;font-weight:600;overflow-wrap:anywhere}.br-cur{font-size:var(--text-meta);color:var(--muted)}.bud-analysis{padding:20px}.ana-row{display:grid;grid-template-columns:120px minmax(0,1fr) 100px;align-items:center;gap:14px;margin-block:12px;font-size:var(--text-meta)}.an-bar{height:6px;border-radius:8px;background:var(--surface-2);overflow:hidden}.an-fill{display:block;height:100%;background:var(--accent);border-radius:inherit}.an-val{text-align:right;font-variant-numeric:tabular-nums;color:var(--muted)}.prep-progress{display:grid;gap:16px;padding:20px;background:var(--accent-tint);border-radius:var(--radius);margin-bottom:14px}.pnum{font-size:38px;font-weight:650;color:var(--accent-dark);white-space:nowrap}.pbar{display:block;width:100%;height:6px;border-radius:8px;background:var(--progress-track);overflow:hidden}.pfill{display:block;height:100%;border-radius:inherit;background:var(--accent)}.prep-sec{padding:20px;margin-bottom:20px}.prep-sec h3{font-size:18px;margin-bottom:6px}.chk{display:flex;align-items:flex-start;flex-wrap:wrap;gap:8px;padding:12px 0;border-bottom:1px solid var(--line-soft)}.chk-main{flex:1;display:flex;align-items:flex-start;gap:12px;min-height:44px;padding-top:9px;cursor:pointer}.chk-main input{flex-shrink:0;width:20px;height:20px;margin-top:3px;accent-color:var(--accent)}.ctext{font-size:15px;overflow-wrap:anywhere}.chk.is-done .ctext{color:var(--muted);text-decoration:line-through}.chk-del{width:44px;height:44px;border:0;border-radius:8px;background:transparent;color:var(--muted);font-size:20px}.chk-del:hover:not(:disabled){color:var(--danger);background:var(--danger-bg)}.more-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.tool-group:first-child{grid-column:1 / -1}.tool-group-heading{display:flex;gap:10px;align-items:center;font-size:14px;margin-bottom:10px}.tool-group-number{font:18px var(--font-editorial);color:var(--accent)}.more-list{overflow:hidden}.more-row{display:flex;align-items:center;gap:14px;width:100%;min-height:80px;padding:16px 20px;background:transparent;border:0;border-bottom:1px solid var(--line-soft);text-align:left}.more-row:last-child{border-bottom:0}.more-row:hover{background:var(--accent-tint)}.mr-ic{display:flex;justify-content:center;align-items:center;width:36px;height:36px;flex-shrink:0;background:var(--accent-tint);color:var(--accent-dark);border-radius:10px}.mr-ic svg{width:19px;height:19px}.mr-text{flex:1;display:grid;gap:4px}.mr-title{font-size:15px;font-weight:500}.mr-sub{font-size:var(--text-meta);color:var(--muted)}.mr-badge{color:var(--accent-dark);font-size:var(--text-meta);padding:2px 8px;background:var(--accent-tint);border-radius:10px}.mr-arr{color:var(--muted);font-size:22px}.tool-details{border:1px solid var(--line);border-radius:var(--radius);padding:18px 20px;margin-top:24px;background:var(--surface)}.tool-details summary{cursor:pointer;min-height:44px}.tool-details-title{font-size:15px;font-weight:550}.tool-details-description{font-size:var(--text-meta);color:var(--muted);display:block;margin-top:5px}.tool-details-body{margin-top:20px}.tool-details-secondary{background:transparent}.more-save-status{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px;color:var(--muted);font-size:var(--text-meta)}.more-save-label{color:var(--accent-dark)}.source-version-list{display:grid;grid-template-columns:90px minmax(0,1fr);gap:10px;font-size:var(--text-meta)}.source-version-list dt{color:var(--muted)}.source-version-list dd,.source-version-hash{overflow-wrap:anywhere}.subpage-head{display:flex;gap:16px;align-items:center;max-width:var(--width-content);padding:24px 24px 0;margin:auto}.subpage-title{font-size:23px}.simple-card{padding:24px;margin-bottom:20px;font-size:var(--text-body);overflow-wrap:anywhere}.simple-card h3{font-size:18px;margin-bottom:12px}.note-item{display:flex;gap:10px;padding:14px 0;border-bottom:1px solid var(--line-soft)}.note-item:last-child{border:0}.ndot{width:5px;height:5px;background:var(--accent);border-radius:50%;flex-shrink:0;margin-top:10px}.note-item b{display:block;margin-bottom:4px}.note-item.warn{padding:14px;background:var(--warn-bg);color:var(--warn);border-radius:9px}.note-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px}.note-toolbar span{font-size:var(--text-meta);color:var(--muted)}.note-entry{border-bottom:1px solid var(--line);padding-block:18px}.note-entry p{margin-block:12px}.note-entry.warn{color:var(--warn)}.ab-hero{padding:24px 0}.ab-kicker{font-size:var(--text-meta);color:var(--accent);letter-spacing:.12em}.ab-title{font-size:28px;margin-block:10px}.ab-sub{color:var(--muted);font-size:14px}.ab-hl{padding-block:14px;border-bottom:1px solid var(--line)}.ab-hl b{display:block;margin-bottom:6px}.source-diff,.source-conflicts{overflow-wrap:anywhere;font-size:var(--text-meta)}@media(max-width:600px){.bud-grand{padding:20px}.ag-val{font-size:30px}.bud-row{grid-template-columns:minmax(0,1fr) 88px;gap:12px;padding:16px 14px}.bud-side{min-width:88px}.br-description strong{line-height:1.45}.ana-row{grid-template-columns:minmax(0,1fr) auto;gap:8px}.an-lab{grid-column:1 / -1}.more-grid{grid-template-columns:1fr}.tool-group:first-child{grid-column:auto}.prep-sec,.simple-card{padding:18px}.subpage-head{padding:20px 16px 0}}.flight-links{margin-bottom:20px}.appearance-settings{margin-top:24px}.br-description,.br-total{display:grid;gap:4px}.br-description strong{font-weight:550;font-size:16px}.br-description span,.br-total span{font-size:14px;color:var(--muted)}.br-total{text-align:right;font-variant-numeric:tabular-nums}.br-total strong{font-size:16px;overflow-wrap:anywhere}.chk .item-links{flex-basis:100%;order:3;padding-left:32px}.note-entry p{font-size:16px}.flight-tabs{display:flex;gap:8px;padding:4px;background:var(--accent-tint);border-radius:14px;margin-bottom:20px;overflow-x:auto}.flight-tab{flex:1 0 116px;display:grid;justify-items:center;gap:4px;min-height:68px;padding:8px 4px;border:0;border-radius:10px;background:transparent;font-size:14px;color:var(--muted)}.flight-tab-number{font-size:var(--text-meta);letter-spacing:.04em}.flight-tab[aria-pressed=true]{color:var(--accent);background:var(--surface);font-weight:600}.boarding-pass{background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:24px;margin-bottom:20px}.boarding-header{display:flex;align-items:center;justify-content:space-between;gap:16px}.boarding-header h3{font-size:17px;margin-top:4px}.boarding-kicker{font-size:var(--text-meta);color:var(--muted)}.boarding-number{font-size:var(--text-meta);font-weight:600;padding:6px 10px;background:var(--accent-tint);color:var(--accent);border-radius:8px;white-space:nowrap}.boarding-date{font-size:var(--text-meta);color:var(--muted);margin-block:18px 28px}.boarding-route{display:grid;grid-template-columns:1fr 40px 1fr;align-items:center;gap:12px}.boarding-route>div{display:grid;gap:3px}.boarding-route>div:last-child{text-align:right}.boarding-route strong{font-size:38px;font-weight:700;line-height:1.15;letter-spacing:-.03em}.boarding-route span{font-size:var(--text-meta);color:var(--muted)}.boarding-route svg{width:28px;height:28px;color:var(--accent);transform:rotate(90deg);justify-self:center}.boarding-times{display:grid;grid-template-columns:1fr minmax(60px,1fr) 1fr;gap:8px;align-items:center;margin-block:28px}.boarding-times>div{display:grid;gap:5px}.boarding-times>div:last-child{text-align:right}.boarding-times strong{font-size:25px;font-weight:650;font-variant-numeric:tabular-nums}.boarding-times span{font-size:var(--text-meta);color:var(--muted)}.boarding-duration{text-align:center}.boarding-duration i{display:block;height:1px;background:var(--line);margin-top:5px}.boarding-footer{border-top:1px dashed var(--line);padding-top:20px}.boarding-status{display:inline-flex;padding:4px 9px;border-radius:6px;font-size:var(--text-meta);color:var(--accent);background:var(--accent-tint)}.boarding-footer p{margin-top:12px;font-size:var(--text-meta);color:var(--muted);line-height:1.8}@media(max-width:360px){.boarding-pass{padding:20px}.boarding-route strong{font-size:32px}.boarding-times strong{font-size:22px}.flight-tab{font-size:var(--text-meta)}}input:not([type=checkbox]):not([type=radio]),select,textarea{max-width:100%;border:1px solid var(--line);border-radius:8px;padding:10px 12px;min-height:44px;background:var(--surface);font-size:16px}textarea{min-height:110px;resize:vertical;width:100%}label{overflow-wrap:anywhere}input[type=checkbox]{accent-color:var(--accent)}.field{display:grid;gap:6px;margin-block:16px}.field label,.auth-form label{font-size:var(--text-meta);font-weight:600}.field-hint,.auth-footnote{font-size:var(--text-meta);line-height:1.8;color:var(--muted)}.row2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.lockrow{display:flex;gap:10px;align-items:center;min-height:44px;margin-block:16px}.dialog-actions,.note-toolbar,.add-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.dialog-actions{justify-content:flex-end;margin-top:24px}.add-bar{margin-block:16px}.add-bar input:first-child{flex:1 1 160px}.add-bar .add-amount{width:120px}.inline-number{width:90px;font-variant-numeric:tabular-nums}.br-qty .inline-number:first-child{width:60px}.note-form{display:grid;gap:14px;margin-block:16px}.note-form label{display:grid;gap:6px}.note-form input[type=checkbox]{justify-self:start}.more-section+.more-section{margin-top:28px}.more-section-title{margin-bottom:12px}.overlay{position:fixed;inset:0;z-index:120;background:#0007;display:grid;place-items:center;padding:16px;overflow-y:auto}.dialog{width:min(540px,100%);max-height:calc(100dvh - 32px);overflow-y:auto;padding:24px;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow-lg)}.dialog h3{font-size:22px}.dl-version{padding:12px;background:var(--surface-2);border-radius:8px;margin-top:12px;overflow-wrap:anywhere}.dv-lab{font-size:var(--text-meta);color:var(--muted)}.auth-shell{min-height:90dvh;display:grid;place-items:center;padding:32px 20px}.auth-card{width:min(440px,100%);padding:36px;background:var(--surface);border:1px solid var(--line);border-radius:22px}.auth-mark{color:var(--accent);font-size:30px;font-weight:750;letter-spacing:-.04em;margin-bottom:28px}.auth-kicker{font-size:10px;letter-spacing:.16em;color:var(--accent);margin-bottom:10px}.auth-card h1{font-size:29px;margin-bottom:12px}.auth-card>p{color:var(--muted)}.auth-form{display:grid;gap:12px;margin-block:24px}.auth-form button{min-height:48px;background:var(--accent);color:var(--on-accent);border:0;border-radius:10px;font-weight:600;padding:10px}.auth-message{font-size:var(--text-meta);padding:14px;background:var(--accent-tint);border-radius:10px;margin-block:16px}.auth-link-login{border-top:1px solid var(--line);padding-block:18px;font-size:var(--text-meta)}.auth-link-login summary{cursor:pointer;min-height:44px;color:var(--accent)}.auth-link-login p{color:var(--muted)}.source-consent{display:flex;gap:10px;margin-block:16px;align-items:start}.source-consent input{margin-top:7px;flex-shrink:0}@media(max-width:420px){.auth-card{padding:24px}.dialog{padding:20px}.row2{gap:10px}}.native-dialog{margin:auto}.native-dialog::backdrop{background:#0007}textarea.day-note-edit{min-height:44px;padding:10px 12px;font-size:var(--text-body);line-height:1.7;resize:none;background:var(--accent-tint);border-color:transparent}.day-note-edit:focus{background:var(--surface);border-color:var(--accent)}.confirm-target{display:block;padding:12px;border-radius:8px;background:var(--surface-2);margin-block:12px}.sheet-grip{display:none}.sheet-header{display:flex;justify-content:space-between;gap:12px;align-items:center}.sheet-header .ibtn{font-size:26px}.invitation-inbox{max-width:var(--width-content);padding:16px 20px 0;margin:auto}@media(max-width:700px){.editor-sheet{position:fixed;top:auto;bottom:var(--sheet-bottom,0px);left:0;right:0;width:100%;max-width:100%;max-height:calc(var(--sheet-height,100dvh) - 12px);margin:0;padding:12px 20px calc(12px + var(--safe-bottom));border-radius:24px 24px 0 0;border-bottom:0;animation:sheet-enter .22s ease-out;overscroll-behavior:contain}.sheet-grip{display:block;width:34px;height:4px;background:var(--line);border-radius:4px;margin:0 auto 10px}.editor-sheet .sheet-header{position:sticky;top:-12px;z-index:1;background:var(--surface);padding-block:8px}.editor-sheet .dialog-actions{position:sticky;bottom:-12px;background:var(--surface);padding:12px 0 calc(12px + var(--safe-bottom));border-top:1px solid var(--line)}.editor-sheet .dialog-actions button{flex:1}.editor-sheet .field{margin-block:12px}}@keyframes sheet-enter{0%{transform:translateY(40px);opacity:.4}to{transform:translateY(0);opacity:1}}.brand-logo{display:block;flex:none;width:40px;height:35px;object-fit:contain}.auth-brand{margin-bottom:20px}.auth-steps{counter-reset:login-step;list-style:none;display:grid;gap:14px;margin:24px 0;padding:18px;background:var(--accent-tint);border-radius:14px}.auth-steps li{counter-increment:login-step;display:grid;grid-template-columns:24px minmax(0,1fr);column-gap:10px;font-size:var(--text-meta);line-height:1.65}.auth-steps li:before{content:counter(login-step);grid-row:1 / 3;display:grid;place-items:center;align-self:start;width:24px;height:24px;background:var(--accent);color:var(--on-accent);border-radius:50%;font-size:var(--text-meta);font-weight:700}.auth-steps strong{color:var(--ink)}.auth-steps span{grid-column:2;color:var(--ink-soft)}.auth-link-login h2{font-size:16px;line-height:1.5;margin-bottom:8px}.sheet-fields{border:0;margin:0;padding:0;min-inline-size:0}.sheet-fields label{font-size:14px}.sheet-fields label input,.sheet-fields label textarea,.sheet-fields label select{width:100%}.sheet-fields input[type=checkbox]{width:20px;height:20px}.sheet-fields .note-form label:has(input[type=checkbox]){display:flex;align-items:center;gap:10px;min-height:44px}.sheet-fields .field{font-size:14px}.sheet-fields .dialog-actions button{min-height:48px;flex:1}.sheet-cancel{width:100%;margin-top:8px}.discard-prompt{padding:20px 0}.discard-prompt p{color:var(--muted);margin-top:8px}.field-error{padding:12px;margin-block:12px;background:var(--danger-bg);color:var(--danger);border-radius:10px}@media(max-width:700px){.dialog.native-dialog[role=alertdialog]{margin:auto 0 0;width:100%;max-width:none;border-radius:22px 22px 0 0;padding:24px 20px calc(24px + var(--safe-bottom))}.dialog[role=alertdialog] .dialog-actions button{flex:1;min-height:48px}}.add-bar.expense-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-block:20px}.expense-form label{display:grid;gap:6px;font-size:14px}.expense-form .expense-name{grid-row:1;grid-column:1/-1}.expense-form .expense-category,.expense-form .expense-currency{grid-row:2}.expense-form .expense-amount{grid-row:3;grid-column:1/-1}.add-bar.expense-form .add-amount{width:100%}.expense-form>button{grid-column:1/-1;min-height:48px}html{color-scheme:light}html[data-palette=kj]{--accent: #087c7c;--accent-tint: #e5f8f8}html[data-palette=orange]{--accent: #ad4317;--accent-tint: #fff0e7}html[data-palette=purple]{--accent: #6d43ad;--accent-tint: #f1ebfb}html[data-palette=black]{--accent: #292a2d;--accent-tint: #ecedef}html[data-mode=dark]{color-scheme:dark;--bg: #151918;--surface: #212725;--surface-2: #29322e;--ink: #f0f3ee;--ink-soft: #d4ddd6;--muted: #b4beb8;--line: #3c4842;--line-soft: #303c35;--accent: #62d7d3;--accent-tint: #183735;--on-accent: #17221d;--progress-track: #ffffff38;--ok: #a4dcba;--ok-bg: #193728;--ok-line: #345443;--warn: #f5cd95;--warn-bg: #352c20;--warn-line: #544636;--danger: #ffb6af;--danger-bg: #3c2424;--danger-line: #68423e;--ticket-ink: #f5d79b;--ticket-bg: #382f1c;--ticket-line: #635432;--highlight-bg: #352c20;--highlight-line: #635432}html[data-mode=dark][data-palette=orange]{--accent: #ffaf7f;--accent-tint: #352820}html[data-mode=dark][data-palette=purple]{--accent: #c4a7ff;--accent-tint: #30283f}html[data-mode=dark][data-palette=black]{--bg: #151618;--surface: #222427;--ink: #f1f2f4;--muted: #b5b8bf;--line: #40434b;--accent: #e2e4e8;--accent-tint: #32343a;--on-accent: #202226}html[data-background=paper] body{background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23888' opacity='.055' filter='url(%23n)' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}html[data-background=ruled] body{background-image:repeating-linear-gradient(transparent 0 31px,color-mix(in srgb,var(--muted) 10%,transparent) 31px 32px)}html[data-background=grid] body{background-image:linear-gradient(color-mix(in srgb,var(--muted) 8%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--muted) 8%,transparent) 1px,transparent 1px);background-size:24px 24px}html[data-background=linen] body{background-image:repeating-linear-gradient(0deg,transparent 0 3px,color-mix(in srgb,var(--muted) 4%,transparent) 3px 4px),repeating-linear-gradient(90deg,transparent 0 3px,color-mix(in srgb,var(--muted) 4%,transparent) 3px 4px)}.appearance-settings fieldset{border:0;padding:0;margin-top:20px}.appearance-settings legend{font-size:var(--text-meta);margin-bottom:10px;color:var(--muted)}.appearance-options{display:flex;flex-wrap:wrap;gap:8px}.appearance-options [aria-pressed=true]{background:var(--accent-tint);border-color:var(--accent);color:var(--accent)}.appearance-options i{width:12px;height:12px;border-radius:50%;background:#087c7c}[data-swatch=orange] i{background:#ad4317}[data-swatch=purple] i{background:#6d43ad}[data-swatch=black] i{background:#292a2d}.cover-heading{position:relative;overflow:hidden;isolation:isolate;min-height:210px}.cover-art{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover}.cover-heading:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,color-mix(in srgb,var(--bg) 96%,transparent),color-mix(in srgb,var(--bg) 85%,transparent) 45%,color-mix(in srgb,var(--bg) 20%,transparent)),linear-gradient(0deg,color-mix(in srgb,var(--bg) 40%,transparent),transparent 35%)}.cover-heading .page-heading{padding-inline:0;padding-top:0}.cover-heading h2{max-width:80%}.cover-heading p{color:var(--ink-soft)}.cover-heading .journal-eyebrow{color:var(--ink)}.cover-controls{margin-top:12px}.cover-controls summary{cursor:pointer;display:inline-flex;align-items:center;padding:6px 12px;min-height:44px;background:var(--surface);border:1px solid var(--line);border-radius:8px;font-size:var(--text-meta)}.cover-editor{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:16px;margin-block:12px}.cover-editor p{max-width:none;margin-bottom:12px}@media print{:root{color-scheme:light!important;--bg: #fff !important;--surface: #fff !important;--surface-2: #f4f4f4 !important;--ink: #202020 !important;--ink-soft: #333 !important;--muted: #555 !important;--line: #ccc !important;--line-soft: #ddd !important;--accent: #222 !important;--accent-tint: #f4f4f4 !important;--on-accent: #fff !important;--ok: #245c36 !important;--ok-bg: #fff !important;--warn: #704511 !important;--warn-bg: #fff !important;--danger: #8b2929 !important;--danger-bg: #fff !important}body{background:#fff!important;background-image:none!important}.cover-controls,.cover-art,.cover-heading:after,.appearance-settings,.native-dialog{display:none!important}.cover-heading{min-height:auto}.page-heading{break-after:avoid}.item,.fl-card,.prep-sec{break-inside:avoid}}.guide-heading{max-width:700px;margin-bottom:24px}.guide-heading h2{font-size:clamp(25px,4vw,34px);margin:8px 0}.guide-heading>p:not(.journal-eyebrow){color:var(--ink-soft);margin-top:6px}.guide-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}.guide-filters button[aria-pressed=true]{background:var(--accent-tint);color:var(--accent-dark);border-color:transparent}.guide-filters span{font-variant-numeric:tabular-nums}.guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:start}.guide-photo{margin:0 0 18px}.guide-photo-frame{aspect-ratio:8/5;overflow:hidden;border-radius:10px;background:var(--accent-tint)}.guide-photo-frame img{display:block;width:100%;height:100%;object-fit:cover}.guide-photo figcaption{display:flex;flex-direction:column;color:var(--muted);font-size:13px;line-height:1.6;overflow-wrap:anywhere;padding-top:8px}.guide-photo figcaption a{display:inline-flex;align-items:center;align-self:flex-start;min-height:44px;color:var(--muted);text-underline-offset:3px}.guide-photo-empty{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:10px;color:var(--ink-soft);padding:16px;text-align:center}.guide-photo-empty p{margin:0}.guide-card{border:1px solid var(--line);border-radius:var(--radius);padding:22px;background:var(--surface)}.guide-card h3{font-size:21px;margin-block:10px}.guide-card>p{margin-bottom:14px}.guide-meta{display:flex;gap:10px;color:var(--muted);font-size:14px}.guide-meta span:first-child{color:var(--accent-dark)}.guide-address{color:var(--muted);font-size:15px}.guide-actions{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 10px}.travel-disclosure summary{cursor:pointer;min-height:44px;padding-block:10px;color:var(--accent-dark);font-size:15px;font-weight:600}.travel-disclosure[open] summary{margin-bottom:4px}.travel-disclosure>div{background:var(--accent-tint);padding:14px;border-radius:10px}.travel-disclosure p{white-space:pre-wrap;line-height:1.8;font-size:16px}.travel-disclosure small{display:block;color:var(--muted);font-size:13px;margin-top:10px}.travel-disclosure a{display:inline-flex;align-items:center;min-height:44px;font-size:15px}.item-travel{margin-top:14px}.item-travel>.map-action{display:inline-flex;align-items:center;min-height:44px;border:1px solid var(--line);border-radius:8px;padding:8px 12px;text-decoration:none;font-size:15px}.item-travel .travel-disclosure{margin-top:4px}@media(max-width:700px){.guide-grid{grid-template-columns:minmax(0,1fr)}.guide-card{padding:20px}.guide-actions .tbtn{flex:1}.guide-heading{margin-bottom:20px}}.notes-workspace{margin-bottom:36px}.notes-workspace>.note-toolbar{justify-content:space-between;align-items:start;margin-bottom:24px}.notes-workspace>.note-toolbar h3{font-size:24px;letter-spacing:-.025em}.notes-workspace .sec-sub{margin:5px 0 0}.note-library-controls{margin-bottom:18px}.note-search{display:flex;margin-bottom:12px}.note-search input{width:100%;min-height:48px;background:var(--surface)}.note-filters{display:flex;flex-wrap:wrap;gap:6px}.note-filters button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:8px 12px;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--muted);font-size:14px}.note-filters button span{font-size:12px;font-variant-numeric:tabular-nums}.note-filters button[aria-pressed=true]{background:var(--accent-tint);color:var(--accent);border-color:var(--accent-tint);font-weight:600}.note-filters button:hover{border-color:var(--line)}.note-results{color:var(--muted);font-size:13px;margin:14px 0 0}.notes-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start}.notes-grid .note-entry{background:var(--surface);padding:0;border:1px solid var(--line);border-radius:var(--radius);margin:0;color:var(--ink)}.notes-grid .note-entry.warn{border-top:3px solid var(--accent);color:var(--ink)}.notes-grid .note-entry:has(.note-reader[open]){grid-column:1 / -1}.note-reader>summary{display:block;list-style:none;cursor:pointer;padding:22px;border-radius:var(--radius)}.note-reader>summary::-webkit-details-marker{display:none}.note-reader>summary:hover{background:color-mix(in srgb,var(--surface-2) 35%,transparent)}.note-reader>summary:focus-visible{outline-offset:-3px}.note-meta{color:var(--muted);font-size:12px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:13px}.note-visibility{display:inline-flex;align-items:center;gap:5px}.note-visibility svg{width:14px;height:14px}.note-important{color:var(--accent);font-weight:600}.note-reader h3{font-size:20px;line-height:1.5;margin:0;letter-spacing:-.015em}.note-reader .note-category{font-size:12px;color:var(--muted);margin:5px 0 0}.note-reader .note-preview{color:var(--ink-soft);font-size:15px;line-height:1.8;margin:14px 0 18px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.note-read-more{display:flex;justify-content:space-between;align-items:center;gap:12px;color:var(--accent);font-size:14px;font-weight:500}.note-read-chevron{font-size:22px;line-height:1}.note-close-label,.note-reader[open] .note-read-label,.note-reader[open] .note-preview{display:none}.note-reader[open] .note-close-label{display:inline}.note-reader[open] .note-read-more{margin-top:16px}.note-reader[open] .note-read-chevron{transform:rotate(180deg)}.note-reading-body{padding:20px 24px 24px;border-top:1px solid var(--line-soft)}.note-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px;padding-top:18px;border-top:1px solid var(--line-soft)}.note-actions .note-delete{margin-left:auto;color:var(--muted);border-color:transparent}.note-actions .note-delete:hover{color:var(--danger);border-color:var(--danger-line)}.note-empty{text-align:center;padding:34px 24px;border:1px dashed var(--line);border-radius:var(--radius);background:var(--surface)}.note-empty-symbol{display:inline-grid;place-items:center;width:48px;height:48px;margin-bottom:12px;border-radius:14px;background:var(--accent-tint);color:var(--accent);font-size:28px}.note-empty h4{font-size:19px}.note-empty p{max-width:430px;margin:8px auto 0;color:var(--muted);font-size:14px}.note-empty .tbtn{margin-top:18px}.note-privacy-hint{color:var(--muted);font-size:13px;margin-top:-8px}.note-document,.rich-note-editor .tiptap{font-size:16px;line-height:1.85;overflow-wrap:anywhere;color:var(--ink)}.note-document>:first-child,.rich-note-editor .tiptap>:first-child{margin-top:0}.note-document p,.rich-note-editor .tiptap p{white-space:pre-wrap;margin-block:8px}.note-document h3,.note-document h4,.rich-note-editor .tiptap h2,.rich-note-editor .tiptap h3{font-size:19px;margin:24px 0 10px}.note-document ul,.note-document ol,.rich-note-editor ul,.rich-note-editor ol{padding-left:24px;margin-block:12px}.note-document li,.rich-note-editor li{margin-block:5px}.note-document blockquote,.rich-note-editor blockquote{border-left:3px solid var(--accent);padding:10px 16px;margin:16px 0;background:var(--accent-tint);border-radius:0 8px 8px 0;color:var(--ink-soft)}.note-document blockquote>:first-child,.rich-note-editor blockquote>:first-child{margin-top:0}.note-document blockquote>:last-child,.rich-note-editor blockquote>:last-child{margin-bottom:0}.note-document code,.rich-note-editor code{background:var(--surface-2);padding:2px 4px;border-radius:4px}.note-document hr,.rich-note-editor hr{border:0;border-top:1px solid var(--line);margin:20px 0}.note-table-scroll{max-width:100%;overflow-x:auto;margin:18px 0;border:1px solid var(--line);border-radius:9px;overscroll-behavior-x:contain}.note-table-scroll table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.65}.note-table-scroll th,.note-table-scroll td{min-width:110px;padding:11px 14px;border-right:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);vertical-align:top}.note-table-scroll th{background:var(--surface-2);font-weight:600}.note-table-scroll tr:last-child>*{border-bottom:0}.note-table-scroll tr>:last-child{border-right:0}.note-table-scroll p{margin:0}.note-document ul.note-tasks,.rich-note-editor ul[data-type=taskList]{list-style:none;padding-left:0}.note-tasks>li,.rich-note-editor li[data-checked]{display:flex;align-items:flex-start;gap:10px}.task-indicator{color:var(--accent);font-size:22px}.note-tasks .is-done>div{color:var(--muted);text-decoration:line-through}.rich-note-editor li[data-checked]>label{flex:none;margin-top:4px;display:flex;min-height:30px}.rich-note-editor li[data-checked]>div{flex:1}.rich-note-editor li[data-checked=true]>div{text-decoration:line-through;color:var(--muted)}.rich-note-editor{border:1px solid var(--line);border-radius:12px;background:var(--surface)}.note-editor-heading{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px;padding:12px 14px 8px;font-size:14px}.note-editor-heading span{color:var(--muted);font-size:12px}.rich-toolbar{display:flex;flex-wrap:wrap;gap:5px;padding:8px;border-bottom:1px solid var(--line);background:var(--surface-2)}.rich-tool-group{display:flex;flex-wrap:wrap;align-items:center;gap:2px}.rich-tool-group+.rich-tool-group{border-left:1px solid var(--line);padding-left:5px}.rich-toolbar button{min-width:44px;min-height:44px;padding:8px;border:1px solid transparent;border-radius:7px;background:transparent;font-size:14px}.rich-toolbar button:hover:not(:disabled){background:var(--surface)}.rich-toolbar button[aria-pressed=true]{color:var(--accent);background:var(--surface);border-color:var(--line)}.rich-toolbar button[aria-label=粗體]{font-weight:800}.rich-toolbar button[aria-label=斜體]{font-style:italic}.rich-toolbar button[aria-label=底線]{text-decoration:underline}.rich-note-editor .tiptap{min-height:230px;padding:18px;outline-offset:-2px}.rich-note-editor .tiptap>p:first-child:last-child:empty:before{content:"記下這趟旅行的靈感…";color:var(--muted);pointer-events:none}.editor-hint{color:var(--muted);font-size:12px;line-height:1.7;padding:10px 14px;border-top:1px solid var(--line)}.note-link-editor{padding:14px;border-bottom:1px solid var(--line);background:var(--accent-tint)}.note-link-editor>div{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.note-link-editor p{color:var(--danger);margin-top:8px}@media(max-width:700px){.notes-grid{grid-template-columns:minmax(0,1fr)}.notes-workspace>.note-toolbar{gap:16px}.notes-workspace>.note-toolbar h3{font-size:22px}.notes-workspace>.note-toolbar>button{flex-shrink:0}.note-reader>summary{padding:20px}.note-reading-body{padding:18px 20px 22px}.note-filters{gap:3px}.note-filters button{padding-inline:9px;gap:5px}.rich-tool-group+.rich-tool-group{border-left:0;padding-left:0}.rich-note-editor .tiptap{min-height:210px;padding:14px}.note-table-scroll th,.note-table-scroll td{min-width:110px;padding:10px 12px}}.notes-reminder-group>summary{cursor:pointer;display:flex;justify-content:space-between;gap:12px;font-weight:650;min-height:44px;align-items:center}.notes-reminder-group>summary span{font-weight:400;font-size:13px;color:var(--muted);white-space:nowrap}.notes-reminder-group .note-item>div{min-width:0;width:100%}.annual-wrap{max-width:1100px;margin:0 auto;padding:24px 24px 100px}.annual-heading{display:flex;gap:24px;justify-content:space-between;align-items:start;margin-bottom:24px}.annual-heading h2{font-size:30px;margin:8px 0}.annual-heading p{color:var(--ink-soft)}.annual-heading label{display:grid;gap:6px;min-width:100px}.annual-heading select{min-height:44px}.annual-toolbar{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:24px}.annual-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px}.annual-metrics>div{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px}.annual-metrics strong{display:block;font-size:32px;margin:12px 0}.annual-metrics strong small{font-size:16px;font-weight:400}.annual-metrics p,.annual-rule{font-size:14px;color:var(--muted);line-height:1.7}.annual-cost>strong{display:block;font-size:24px;margin:12px 0}.annual-rule{margin:20px 0}.annual-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.annual-list article{min-width:0;overflow-wrap:anywhere;margin:0}.annual-list header{display:flex;justify-content:space-between;gap:10px;align-items:center;font-size:14px;color:var(--muted)}.annual-list h3{margin:12px 0}.annual-list dl{display:grid;grid-template-columns:80px minmax(0,1fr);gap:10px;margin:16px 0}.annual-list dt{color:var(--muted)}.annual-list dd{margin:0}.annual-form{border:0;padding:0;min-width:0}.annual-form .field{margin-bottom:16px}.annual-check{display:flex;align-items:center;gap:10px;min-height:44px;margin-bottom:16px}.annual-entry{white-space:nowrap;font-size:14px}@media(max-width:850px){.annual-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:700px){.annual-wrap{padding:20px 16px 100px}.annual-heading{gap:14px}.annual-heading h2{font-size:26px}.annual-list{grid-template-columns:minmax(0,1fr)}.annual-metrics{gap:10px}.annual-metrics>div{padding:16px}.annual-metrics strong{font-size:28px}.annual-entry{padding-inline:8px}.annual-list header{flex-wrap:wrap}}
