@font-face{font-family:Public Sans;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/f7650dfaa438c37c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Public Sans;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/98baa4a7809fbf72-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Public Sans;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/8bf7b2ceda89477b-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Public Sans Fallback;src:local("Arial");ascent-override:90.59%;descent-override:21.46%;line-gap-override:0.00%;size-adjust:104.87%}.__className_81ca43{font-family:Public Sans,Public Sans Fallback;font-style:normal}.__variable_81ca43{--font-public-sans:"Public Sans","Public Sans Fallback"}@font-face{font-family:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/7088c2b12ccac062-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/665e920483964785-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/5611c55482296524-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Newsreader Fallback;src:local("Times New Roman");ascent-override:69.68%;descent-override:25.12%;line-gap-override:0.00%;size-adjust:105.48%}.__className_804dcf{font-family:Newsreader,Newsreader Fallback;font-style:normal}.__variable_804dcf{--font-newsreader:"Newsreader","Newsreader Fallback"}:root{color-scheme:light dark;--font-body:var(--font-public-sans),system-ui,sans-serif;--font-display:var(--font-newsreader),Georgia,serif;--bg:#f5f2ec;--surface:#ffffff;--surface-muted:#f1ede5;--border:#e3ded4;--border-strong:#d2cbbe;--fg:#1c1e1d;--fg-body:#2e3230;--fg-soft:#3a3f3c;--fg-muted-strong:#4a4f4c;--fg-muted:#5b605d;--fg-subtle:#737874;--link:#1f5c57;--accent:#1f5c57;--accent-strong:#123c39;--accent-soft:#e1ecea;--on-accent:#ffffff;--overlay:rgba(28,30,29,0.45);--shadow:0 10px 30px rgba(28,30,29,0.14);--danger:#b91c1c;--danger-strong:#dc2626;--danger-border:#fca5a5;--danger-border-soft:#fecaca;--danger-bg:#fef2f2;--danger-bg-strong:#fee2e2;--warn-bg:#fbeccb;--warn-fg:#8a4b0f;--ok-bg:#dcefe0;--ok-fg:#1d5b30;--ok-strong:#2f7a45;--leg-1-bg:#d9ebe8;--leg-1:#2f7f77;--leg-2-bg:#f5e6c8;--leg-2:#a8761c;--leg-3-bg:#f4dcdd;--leg-3:#b4545b;--leg-4-bg:#dce5f3;--leg-4:#3e6aae;--leg-5-bg:#e3ebd3;--leg-5:#62802c;--leg-6-bg:#e7dff1;--leg-6:#7a5aa6;--leg-7-bg:#f3e0d3;--leg-7:#b5653a;--leg-8-bg:#e1e4e8;--leg-8:#5b6878}:root[data-theme=light]{color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#121413;--surface:#1b1e1d;--surface-muted:#242827;--border:#2e3331;--border-strong:#3f4542;--fg:#ecebe6;--fg-body:#dddbd5;--fg-soft:#cbc9c2;--fg-muted-strong:#b2b0a9;--fg-muted:#9e9c95;--fg-subtle:#83817b;--link:#7cc4bc;--accent:#6fb8af;--accent-strong:#97d3cb;--accent-soft:#1d3432;--on-accent:#0c1817;--overlay:rgba(0,0,0,0.6);--shadow:0 10px 30px rgba(0,0,0,0.5);--danger:#f87171;--danger-strong:#ef4444;--danger-border:#7f2d2d;--danger-border-soft:#5c2424;--danger-bg:#2e1a1c;--danger-bg-strong:#3d1f22;--warn-bg:#3a2e10;--warn-fg:#fbbf24;--ok-bg:#13301d;--ok-fg:#86efac;--ok-strong:#4ade80;--leg-1-bg:#1e3634;--leg-1:#5fb3aa;--leg-2-bg:#3a311d;--leg-2:#d9ae55;--leg-3-bg:#3b2527;--leg-3:#d98088;--leg-4-bg:#222f42;--leg-4:#7fa3db;--leg-5-bg:#2c3520;--leg-5:#9dbb63;--leg-6-bg:#2f2740;--leg-6:#ae91d6;--leg-7-bg:#3d2a1f;--leg-7:#de9165;--leg-8-bg:#2a2e34;--leg-8:#9aa6b5}}:root[data-theme=dark]{color-scheme:dark;--bg:#121413;--surface:#1b1e1d;--surface-muted:#242827;--border:#2e3331;--border-strong:#3f4542;--fg:#ecebe6;--fg-body:#dddbd5;--fg-soft:#cbc9c2;--fg-muted-strong:#b2b0a9;--fg-muted:#9e9c95;--fg-subtle:#83817b;--link:#7cc4bc;--accent:#6fb8af;--accent-strong:#97d3cb;--accent-soft:#1d3432;--on-accent:#0c1817;--overlay:rgba(0,0,0,0.6);--shadow:0 10px 30px rgba(0,0,0,0.5);--danger:#f87171;--danger-strong:#ef4444;--danger-border:#7f2d2d;--danger-border-soft:#5c2424;--danger-bg:#2e1a1c;--danger-bg-strong:#3d1f22;--warn-bg:#3a2e10;--warn-fg:#fbbf24;--ok-bg:#13301d;--ok-fg:#86efac;--ok-strong:#4ade80;--leg-1-bg:#1e3634;--leg-1:#5fb3aa;--leg-2-bg:#3a311d;--leg-2:#d9ae55;--leg-3-bg:#3b2527;--leg-3:#d98088;--leg-4-bg:#222f42;--leg-4:#7fa3db;--leg-5-bg:#2c3520;--leg-5:#9dbb63;--leg-6-bg:#2f2740;--leg-6:#ae91d6;--leg-7-bg:#3d2a1f;--leg-7:#de9165;--leg-8-bg:#2a2e34;--leg-8:#9aa6b5}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font-body);line-height:1.5;color:var(--fg);background:var(--bg)}a{-webkit-tap-highlight-color:transparent}button,input,select,textarea{font-family:inherit;font-size:16px;color:var(--fg);background-color:var(--surface)}button{cursor:pointer;min-height:44px}.app-nav{display:flex;align-items:center;justify-content:space-between;padding:0 1.5rem;min-height:56px;border-bottom:1px solid var(--border);background:var(--surface);flex-wrap:wrap;gap:.5rem 1rem}.app-main{flex:1 1;padding:1.5rem 1rem;max-width:1120px;margin:0 auto;width:100%}@media (min-width:640px){.app-nav{padding:0 2rem}.app-main{padding:2rem 1.5rem}}@media (max-width:480px){.app-nav{min-height:48px;padding:0 1rem}}.trip-calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:4px;gap:4px;margin-bottom:4px}.trip-calendar-weekday{font-size:.7rem;font-weight:600;color:var(--fg-subtle);text-align:center;padding:.25rem 0;text-transform:uppercase}.trip-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:4px;gap:4px}.trip-calendar-cell{min-height:84px;border:1px solid transparent;border-radius:10px;padding:.4rem .5rem;background:var(--leg-bg,var(--surface));display:flex;flex-direction:column;gap:.15rem;overflow:hidden;text-decoration:none;color:inherit}.trip-calendar-cell.is-empty{border-color:transparent;background:transparent}.trip-calendar-cell.is-blank{background:transparent;border:1px dashed var(--border)}.trip-calendar-cell.is-today{outline:2px solid var(--accent);outline-offset:-2px}a.trip-calendar-cell:hover{filter:brightness(.97)}.trip-calendar-cell-date{font-size:.75rem;font-weight:600;color:var(--fg-muted)}.trip-calendar-cell-weekday{display:none}.trip-calendar-cell-place{font-size:.7rem;color:var(--fg-muted-strong);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trip-calendar-cell-title{font-size:.75rem;line-height:1.3;color:var(--fg);overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.trip-calendar-month-label{font-family:var(--font-display);font-size:1.2rem;font-weight:400;margin:1.25rem 0 .5rem;color:var(--fg)}.trip-calendar-month-label:first-child{margin-top:0}.inline-edit-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:.75rem 1rem;gap:.75rem 1rem;align-items:start}.inline-edit-form .field-full,.inline-edit-form .form-actions,.inline-edit-form textarea,.inline-edit-form>button{grid-column:1/-1}@media (max-width:640px){.trip-calendar-weekdays{display:none}.trip-calendar-grid{display:flex;flex-direction:column;gap:.5rem}.trip-calendar-cell{min-height:auto;flex-direction:row;align-items:baseline;gap:.6rem;padding:.6rem .85rem}.trip-calendar-cell.is-blank,.trip-calendar-cell.is-empty{display:none}.trip-calendar-cell-date{min-width:72px;flex-shrink:0}.trip-calendar-cell-weekday{display:inline}.trip-calendar-cell-title{-webkit-line-clamp:1}}.rich-text-content{padding:.75rem .9rem;font-weight:400;color:var(--fg);background:var(--surface)}.rich-text-content .ProseMirror{outline:none}.rich-text-placeholder{position:absolute;color:var(--fg-subtle);pointer-events:none;margin-top:-1.6rem}.rich-text-body h2,.rich-text-content .ProseMirror h2{font-size:1.3rem;font-weight:700;margin:1.2rem 0 .5rem}.rich-text-body h3,.rich-text-content .ProseMirror h3{font-size:1.1rem;font-weight:700;margin:1rem 0 .4rem}.rich-text-body p,.rich-text-content .ProseMirror p{margin:0 0 .75rem;line-height:1.65}.rich-text-body ol,.rich-text-body ul,.rich-text-content .ProseMirror ol,.rich-text-content .ProseMirror ul{margin:0 0 .75rem;padding-left:1.4rem;line-height:1.6}.rich-text-body blockquote,.rich-text-content .ProseMirror blockquote{margin:0 0 .75rem;padding-left:1rem;border-left:3px solid var(--border);color:var(--fg-muted-strong);font-style:italic}.rich-text-body img,.rich-text-content .ProseMirror img{max-width:100%;border-radius:8px;display:block;margin:.75rem 0}.rich-text-body a,.rich-text-content .ProseMirror a{color:var(--link)}.theme-toggle{display:inline-flex;border:1px solid var(--border-strong);border-radius:999px;overflow:hidden}.theme-toggle-btn{min-height:34px;min-width:36px;padding:0 .5rem;display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--fg-muted);font-size:.95rem;line-height:1}.theme-toggle-btn+.theme-toggle-btn{border-left:1px solid var(--border-strong)}.theme-toggle-btn.is-active{background:var(--accent);color:var(--on-accent)}.email-frame{background:#fff;color-scheme:light}input:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=hidden]),select,textarea{padding:.6rem .75rem;border:1px solid var(--border-strong);border-radius:10px}textarea{resize:vertical}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.field{display:flex;flex-direction:column;gap:.3rem;font-size:.8rem;font-weight:600;color:var(--fg-muted);min-width:0}.field>div,.field>input,.field>select,.field>textarea{width:100%;font-weight:400}.check{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--fg-soft)}.check input{width:1.1rem;height:1.1rem;accent-color:var(--accent);flex-shrink:0}.check-list{display:flex;flex-direction:column;gap:.5rem;max-height:280px;overflow-y:auto;border:1px solid var(--border);border-radius:10px;padding:.7rem .8rem;margin:0}.check-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));grid-gap:.45rem .75rem;gap:.45rem .75rem;max-height:none}fieldset.check-list legend{font-size:.8rem;font-weight:600;color:var(--fg-muted);padding:0 .3rem}.form-actions{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;margin-top:.25rem}.form-error{color:var(--danger);font-size:.875rem;margin:0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;min-height:44px;padding:0 1.15rem;border-radius:999px;border:1px solid var(--border-strong);background:var(--surface);color:var(--fg);font-size:.95rem;font-weight:600;text-decoration:none;white-space:nowrap}.btn:disabled{opacity:.55;cursor:default}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.btn-danger{color:var(--danger);border-color:var(--danger-border)}.btn-small{min-height:36px;padding:0 .9rem;font-size:.85rem}.icon-btn{width:44px;height:44px;min-height:44px;padding:0;border-radius:50%;border:1px solid var(--border);background:var(--surface);color:var(--fg);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;text-decoration:none}.icon-btn[aria-disabled=true]{opacity:.35;pointer-events:none}.link-btn{background:none;border:none;padding:0;min-height:auto;color:var(--link);font:inherit;font-weight:600;cursor:pointer;text-decoration:none}.eyebrow{font-size:.75rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--accent)}.display{font-family:var(--font-display);font-weight:400;line-height:1.1;margin:0;color:var(--fg)}h1.display{font-size:clamp(1.9rem,6vw,2.6rem)}.lede{color:var(--fg-muted-strong);margin:0;line-height:1.55}.muted{color:var(--fg-muted)}.small{font-size:.85rem}.empty{color:var(--fg-subtle);font-size:.9rem;margin:0}.back-link{color:var(--fg-muted);font-size:.9rem;text-decoration:none}.page-narrow{max-width:720px;margin:0 auto}.page-header{display:flex;align-items:flex-end;gap:.75rem;flex-wrap:wrap;margin-bottom:1.5rem}.page-header-text{flex:1 1 280px;min-width:0;display:flex;flex-direction:column;gap:.35rem}.page-header-actions{display:flex;gap:.5rem;align-items:center;margin-left:auto}.section{margin-top:2rem}.section-title{font-size:.75rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--fg-muted);margin:0 0 .6rem;display:flex;align-items:center;justify-content:space-between;gap:.5rem}.has-fab{padding-bottom:6rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:1rem 1.1rem}.chip{display:inline-flex;align-items:center;gap:.3rem;font-size:.72rem;font-weight:600;padding:.15rem .55rem;border-radius:999px;background:var(--surface-muted);color:var(--fg-muted-strong);white-space:nowrap}.chip-ok{background:var(--ok-bg);color:var(--ok-fg)}.chip-warn{background:var(--warn-bg);color:var(--warn-fg)}.chip-danger{background:var(--danger-bg-strong);color:var(--danger)}.chip-accent{background:var(--accent-soft);color:var(--accent-strong)}.item-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.6rem}.item-row{width:100%;min-height:56px;display:flex;gap:.85rem;align-items:flex-start;text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:.85rem 1rem;color:var(--fg);font:inherit;cursor:pointer;text-decoration:none}.item-row:hover{border-color:var(--border-strong)}.item-list.is-grouped{gap:0;border:1px solid var(--border);border-radius:14px;background:var(--surface);overflow:hidden}.item-list.is-grouped .item-row{border:none;border-radius:0;border-bottom:1px solid var(--border)}.item-list.is-grouped>li:last-child .item-row{border-bottom:none}.item-time{width:3.1rem;flex-shrink:0;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;padding-top:.05rem}.item-time.is-untimed{color:var(--fg-subtle);font-weight:500}.item-icon{width:1.25rem;flex-shrink:0;color:var(--accent);display:flex;padding-top:.15rem}.item-body{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:.15rem}.item-title{font-weight:600;line-height:1.35}.item-sub,.item-title.is-done{color:var(--fg-muted)}.item-sub{font-size:.875rem;overflow-wrap:anywhere}.item-meta{display:flex;gap:.35rem;flex-wrap:wrap;margin-top:.3rem}.item-row.is-tonight{background:var(--accent-soft);border-color:transparent}.item-row.is-tonight .item-icon{color:var(--accent-strong)}dialog.sheet{font-family:var(--font-body);font-size:1rem;font-weight:400;font-style:normal;line-height:1.5;letter-spacing:normal;text-transform:none;text-align:start;white-space:normal;border:none;padding:0;margin:auto auto 0;width:100%;max-width:640px;max-height:92dvh;border-radius:20px 20px 0 0;background:var(--surface);color:var(--fg);box-shadow:var(--shadow)}dialog.sheet[open]{display:flex;flex-direction:column}dialog.sheet::-webkit-backdrop{background:var(--overlay)}dialog.sheet::backdrop{background:var(--overlay)}@media (min-width:720px){dialog.sheet{margin:auto;border-radius:20px;max-height:86dvh}}.sheet-header{padding:1.1rem 1.25rem .9rem;display:flex;gap:.75rem;align-items:flex-start}.sheet-heading{flex:1 1;min-width:0;display:flex;flex-direction:column;gap:.2rem}.sheet-title{font-family:var(--font-display);font-weight:400;font-size:1.55rem;line-height:1.15;margin:0;overflow-wrap:anywhere}.sheet-body{padding:0 1.25rem 1.5rem;overflow-y:auto;flex:1 1;display:flex;flex-direction:column;gap:1rem}.tabs{display:flex;gap:.25rem;background:var(--surface-muted);border-radius:12px;padding:4px;margin:0 1.25rem 1rem}.tab{flex:1 1;min-height:40px;border:none;border-radius:9px;background:transparent;color:var(--fg-muted);font-size:.9rem;font-weight:500;white-space:nowrap}.tab[aria-selected=true]{background:var(--surface);color:var(--fg);font-weight:600;box-shadow:0 1px 3px rgba(0,0,0,.12)}.details-list{display:grid;grid-template-columns:minmax(6.5rem,auto) 1fr;grid-gap:.65rem 1rem;gap:.65rem 1rem;margin:0}.details-list dt{color:var(--fg-muted)}.details-list dd{margin:0;overflow-wrap:anywhere}.memo{background:var(--surface-muted);border-radius:12px;padding:.75rem 1rem;font-size:.925rem;white-space:pre-wrap;color:var(--fg-body)}.memo-label{display:block;font-size:.72rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--fg-muted);margin-bottom:.2rem}.link-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.link-list a{display:flex;align-items:center;gap:.7rem;padding:.8rem 1rem;border:1px solid var(--border);border-radius:12px;color:var(--fg);text-decoration:none}.link-list a svg{color:var(--accent);flex-shrink:0}.danger-zone{border-top:1px solid var(--border);padding-top:1rem;display:flex;justify-content:flex-end}.page-tabs{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1rem}.page-tab{display:inline-flex;align-items:center;gap:.4rem;min-height:40px;padding:0 .9rem;border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--fg-muted-strong);font-size:.9rem;font-weight:500;white-space:nowrap}.page-tab:hover{border-color:var(--border-strong);color:var(--fg)}.page-tab[aria-selected=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:600}.page-tab-count{font-size:.75rem;font-weight:600;padding:0 .4rem;border-radius:999px;background:var(--surface-muted);color:var(--fg-muted)}.page-tab[aria-selected=true] .page-tab-count{background:color-mix(in srgb,var(--on-accent) 22%,transparent);color:var(--on-accent)}.menu{position:relative}.menu-panel{position:absolute;right:0;top:calc(100% + 6px);z-index:30;min-width:210px;max-width:calc(100vw - 2rem);background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow);padding:6px;display:flex;flex-direction:column}.menu-item{min-height:42px;text-align:left;padding:0 .8rem;border:none;border-radius:8px;background:transparent;color:var(--fg);font-size:.95rem}.menu-item:focus-visible,.menu-item:hover{background:var(--surface-muted)}.fab{position:fixed;right:max(1rem,env(safe-area-inset-right));bottom:calc(1rem + env(safe-area-inset-bottom));z-index:20;height:56px;padding:0 1.35rem 0 1.1rem;border:none;border-radius:28px;background:var(--accent);color:var(--on-accent);font-weight:600;font-size:1rem;display:inline-flex;box-shadow:var(--shadow)}.day-nav,.fab{align-items:center;gap:.5rem}.day-nav{display:flex;justify-content:space-between;margin-bottom:.5rem}.day-nav-center{flex:1 1;min-width:0;text-align:center;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.leg-strip{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:1rem}.leg-strip-seg{flex:0 0 auto;display:inline-flex;align-items:center;gap:.45rem;min-height:40px;padding:0 .85rem;border-radius:999px;background:var(--leg-bg);color:var(--fg);font-size:.85rem;font-weight:600;white-space:nowrap;border:none}.leg-days{font-size:.72rem;font-weight:600;color:var(--fg-muted)}.leg-dot{width:.6rem;height:.6rem;border-radius:50%;background:var(--leg);flex-shrink:0}.trip-layout{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:2rem;gap:2rem}.trip-layout>*{min-width:0}@media (min-width:1024px){.trip-layout{grid-template-columns:minmax(0,1fr) 380px;align-items:start}}.entry{padding:.9rem 1rem;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.entry.is-pending{border-style:dashed;background:var(--bg)}.entry-byline{font-size:.8rem;color:var(--fg-muted);display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;margin-top:.35rem}.entry-photo-link{display:block;margin-bottom:.5rem;cursor:zoom-in}.entry-photo{display:block;width:100%;max-height:480px;object-fit:contain;background:var(--surface-muted);border-radius:8px}.entry-caption{margin:0 0 .35rem;white-space:pre-wrap}.composer{display:flex;flex-direction:column;gap:.75rem}.file-pick{display:inline-flex;position:relative}.file-pick input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}.thumb-row{display:flex;gap:.5rem;flex-wrap:wrap}.thumb{width:64px;height:64px;border-radius:8px;object-fit:cover;background:var(--surface-muted)}.booking-detail{display:flex;flex-direction:column;gap:.75rem}.booking-meta{display:flex;flex-wrap:wrap;gap:.35rem 1rem;color:var(--fg-muted);font-size:.85rem}.email-view{display:flex;flex-direction:column;gap:.5rem}.email-zoom-bar{display:flex;align-items:center;flex-wrap:wrap;gap:.4rem}.email-zoom-bar .btn-small{min-width:2.75rem}.email-fullscreen{margin-left:auto;display:inline-flex;align-items:center;gap:.3rem}.email-scroll{overflow-x:auto;overflow-y:hidden;border:1px solid var(--border);border-radius:10px;background:#fff}.email-sizer{overflow:hidden}iframe.email-frame{display:block;width:100%;height:60vh;border:0;transform-origin:0 0}.email-text{white-space:pre-wrap;font-family:ui-monospace,monospace;font-size:.85rem;padding:1rem;border:1px solid var(--border);border-radius:10px;background:var(--surface);overflow-wrap:anywhere}.app-brand{font-family:var(--font-display);font-size:1.25rem;color:var(--fg);text-decoration:none}.app-nav-links{display:flex;align-items:center;gap:.25rem;flex-wrap:wrap}.app-nav-link{display:inline-flex;align-items:center;gap:.35rem;min-height:40px;padding:0 .7rem;border-radius:999px;color:var(--fg-muted-strong);text-decoration:none;font-size:.9rem;font-weight:600;background:none;border:none}.app-nav-link:hover{background:var(--surface-muted);color:var(--fg)}@media (max-width:480px){.app-nav-link .app-nav-label{display:none}}.visit-card{background:var(--surface);border:1px solid var(--border);border-radius:14px;overflow:hidden}.visit-card .visit-row{border:none;border-radius:0;background:transparent}.visit-card>.visit-row+.visit-row{border-top:1px solid var(--border)}.visit-place{display:flex;align-items:center}.visit-place>.visit-row{flex:1 1;min-width:0}.visit-place.is-attached{background:var(--surface-muted);border-top:1px dashed var(--border-strong);padding-left:4.05rem}.visit-actions{display:flex;align-items:center;gap:.35rem;padding:0 .75rem 0 .25rem;flex-shrink:0}.icon-btn-small{width:36px;height:36px;min-height:36px}.plan-subhead{font-size:.75rem;font-weight:600;color:var(--fg-subtle);margin:.9rem 0 .1rem}.visit-card .visit-row.is-supplemental{min-height:0;padding:0 1rem .7rem 4.95rem;gap:.85rem;align-items:center;border-top:none!important;margin-top:-.35rem}.visit-row.is-supplemental .item-icon{padding-top:0;justify-content:center;color:var(--fg-subtle)}.visit-row.is-supplemental .item-sub{font-size:.8rem;color:var(--fg-subtle)}.visit-row.is-supplemental:hover .item-sub{color:var(--fg-muted)}.blog-page{max-width:720px;margin:0 auto;padding:1.5rem 1rem 5rem}.blog-header{text-align:center;margin-bottom:3rem}.blog-header-bar{display:flex;align-items:center;justify-content:space-between;margin-bottom:2.5rem}.blog-title{font-size:clamp(2.2rem,7vw,3.2rem);margin-bottom:.5rem}.blog-feed{display:flex;flex-direction:column;gap:3.5rem}.blog-eyebrow{margin:0 0 .4rem}.blog-byline{margin:.35rem 0 0;font-size:.8rem;color:var(--fg-subtle)}.blog-subjects{margin:0 0 .6rem;font-style:normal}.blog-subject{margin:0 0 .2rem;font-size:.9rem;color:var(--fg-soft);display:flex;align-items:center;gap:.35rem;flex-wrap:wrap;justify-content:inherit}.blog-subject svg{color:var(--accent)}.blog-post-card{padding:1.75rem;border-radius:18px}.blog-post-title{font-size:1.8rem;margin:0 0 .5rem}.blog-excerpt{margin:1rem 0;color:var(--fg-muted-strong);line-height:1.7;font-size:1.02rem}.blog-photo{margin:0;text-align:center}.blog-photo a{display:block;cursor:zoom-in}.blog-photo img{display:block;width:100%;max-height:560px;object-fit:contain;background:var(--surface-muted);border-radius:18px;margin-bottom:.9rem}.blog-photo .blog-subject{justify-content:center}.blog-caption{margin:.2rem 0 0;font-family:var(--font-display);font-style:italic;font-size:1.15rem;color:var(--fg-soft)}.blog-note{margin:0;padding:.25rem 0 .25rem 1.5rem;border-left:3px solid var(--accent)}.blog-note-text{margin:0 0 .6rem;font-family:var(--font-display);font-size:1.3rem;font-style:italic;color:var(--fg-body)}.blog-article{margin-top:2.5rem}.blog-article .blog-byline{margin-bottom:2rem;font-size:.9rem}.blog-article-body{font-size:1.1rem;color:var(--fg-body)}.save-offline{margin:-.75rem 0 1.5rem}.ask-claude,.save-offline{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.blog-permalink{color:inherit;text-decoration:none}.blog-permalink:hover{text-decoration:underline}.app-brand-short{display:none}@media (max-width:480px){.app-brand-full{display:none}.app-brand-short{display:inline}}.weather-card{flex-wrap:wrap;justify-content:space-between;gap:.5rem 1.25rem;padding:.75rem 1rem;margin:0 0 1.25rem;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.weather-card,.weather-main{display:flex;align-items:center}.weather-main{gap:.75rem;color:var(--fg)}.weather-temps{font-size:1.15rem;display:flex;align-items:baseline;gap:.35rem;flex-wrap:wrap}.weather-f{margin-left:.25rem}.weather-label{font-size:.9rem;color:var(--fg-soft)}.weather-facts{display:flex;flex-wrap:wrap;gap:.35rem 1rem}.weather-facts span{display:inline-flex;align-items:center;gap:.3rem}.weather-source{flex-basis:100%;font-size:.72rem}.weather-source a{color:inherit}.weather-note{display:flex;align-items:center;gap:.4rem;margin:0 0 1.25rem}.weather-skeleton{height:4.2rem;margin:0 0 1.25rem;border-radius:12px;background:var(--surface-muted)}.share-links{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.4rem;margin:1rem 0 0}.share-label{font-size:.8rem;color:var(--fg-muted);margin-right:.15rem}.share-btn{display:inline-flex;align-items:center;gap:.35rem;min-height:32px;padding:.3rem .75rem;border:1px solid var(--border-strong);border-radius:999px;background:var(--surface);color:var(--fg-soft);font-size:.82rem;font-family:inherit;text-decoration:none;cursor:pointer}.share-btn:hover{border-color:var(--fg-muted);color:var(--fg)}.share-links-end{justify-content:flex-start;margin:2rem 0 0;padding-top:1rem}.blog-comments,.share-links-end{border-top:1px solid var(--border)}.blog-comments{margin-top:3rem;padding-top:2rem}.blog-comments-title{font-size:1.5rem;margin:0 0 1.25rem}.comment-list{list-style:none;margin:0 0 2rem;padding:0;display:flex;flex-direction:column;gap:1.25rem}.comment.is-pending{opacity:.75}.comment-meta{margin:0 0 .3rem;display:flex;flex-wrap:wrap;align-items:center;gap:.25rem .5rem;font-size:.9rem;color:var(--fg)}.comment-badge{font-size:.72rem;font-weight:600;padding:.1rem .5rem;border-radius:999px;background:var(--accent-soft);color:var(--accent-strong)}.comment-badge.is-pending{background:var(--warn-bg);color:var(--warn-fg)}.comment-body{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6;color:var(--fg-body)}.comment-form{display:flex;flex-direction:column;gap:.75rem}.comment-form-who{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:.75rem 1rem;gap:.75rem 1rem}.comment-form textarea{width:100%}.comment-form-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem}.comment-thanks{margin:0;padding:.6rem .8rem;border-radius:8px;background:var(--ok-bg);color:var(--ok-fg);font-size:.9rem}.comment-hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.comment-signout{margin-top:.75rem}.comment-privacy{margin-top:1.25rem;color:var(--fg-subtle)}.blog-comments-link{display:inline-flex;align-items:center;gap:.3rem;margin-top:.4rem;font-size:.85rem;color:var(--fg-muted);text-decoration:none}.blog-comments-link:hover{text-decoration:underline}.blog-item-actions{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:.5rem 1rem}.commenter-page h1{margin:1.5rem 0 .5rem}.commenter-form{margin:1.5rem 0}.moderation-list{list-style:none;margin:0 0 1.5rem;padding:0;display:flex;flex-direction:column;gap:.75rem}.moderation-item .eyebrow{margin:0 0 .4rem}.moderation-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.moderation-section{margin-top:1.5rem}.moderation-section>summary{cursor:pointer}.nav-badge{min-width:1.3rem;padding:0 .35rem;border-radius:999px;background:var(--accent);color:var(--on-accent);font-size:.72rem;line-height:1.3rem;text-align:center}.entry-tags{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));grid-gap:.6rem 1rem;gap:.6rem 1rem;margin:0;padding:.75rem .9rem;border:1px solid var(--border);border-radius:10px}.entry-tags legend{padding:0 .3rem;font-size:.85rem;font-weight:600;color:var(--fg-soft)}.entry-tags select{width:100%}.blog-group{display:flex;flex-direction:column;gap:.9rem}.blog-group .blog-eyebrow,.blog-group .blog-subjects{margin:0}.blog-photo-grid{columns:220px 2;column-gap:.6rem}.blog-photo-grid.is-single{column-count:1}.blog-grid-photo{page-break-inside:avoid;break-inside:avoid;margin:0 0 .6rem}.blog-grid-photo a{display:block;cursor:zoom-in}.blog-grid-photo img{display:block;width:100%;height:auto;border-radius:12px;background:var(--surface-muted)}.blog-grid-photo figcaption{margin:.3rem 0 0;font-family:var(--font-display);font-style:italic;font-size:.95rem;color:var(--fg-soft)}.entry-select-bar{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem .9rem;margin:0 0 .6rem}.entry-select-check{display:inline-flex;align-items:center;gap:.4rem;margin:0 0 .4rem;font-size:.85rem;font-weight:600;color:var(--fg-soft)}.entry.is-selected{outline:2px solid var(--accent);outline-offset:4px;border-radius:10px}.entry-batch-form{margin:0 0 1rem;padding:.9rem;border:1px solid var(--accent);border-radius:12px;background:var(--accent-soft)}.upload-resume{display:flex;align-items:center;flex-wrap:wrap;gap:.5rem .8rem;padding:.6rem .8rem;border-radius:10px;background:var(--warn-bg);color:var(--warn-fg)}.upload-thumb{position:relative;display:inline-block;line-height:0}.upload-thumb.is-fill{display:block;width:100%;height:100%}.upload-thumb img{transition:opacity .25s ease}.upload-thumb.is-uploading img,.upload-thumb.is-waiting img{opacity:.35}.upload-thumb.is-failed img{opacity:.6;outline:2px solid var(--danger);outline-offset:-2px}.upload-spinner{position:absolute;top:50%;left:50%;width:22px;height:22px;margin:-11px 0 0 -11px;border:3px solid var(--surface);border-top-color:var(--accent);border-radius:50%;animation:upload-spin .8s linear infinite}@keyframes upload-spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.upload-spinner{animation:none;border-color:var(--accent)}}.upload-badge{position:absolute;right:3px;bottom:3px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:var(--accent);color:var(--on-accent);font-size:11px;font-weight:700;line-height:18px;text-align:center}.upload-badge.is-failed{background:var(--danger)}.unused-upload-list{list-style:none;margin:0 0 1.5rem;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));grid-gap:.9rem;gap:.9rem}.unused-upload{display:flex;flex-direction:column;gap:.5rem}.unused-upload p{margin:0}.unused-upload-pics{display:flex;gap:.4rem}.unused-upload-pics a{flex:1 1;min-width:0}.unused-upload-pics img{display:block;width:100%;aspect-ratio:4/3;object-fit:contain;background:var(--surface-muted);border-radius:8px}.unused-upload-pics img.is-match{outline:2px solid var(--accent);outline-offset:-2px}.unused-upload-actions{display:flex;flex-wrap:wrap;gap:.5rem}.unused-copies-bar{display:flex;align-items:center;flex-wrap:wrap;gap:.6rem 1rem;margin:0 0 1rem;padding:.7rem .9rem;border-radius:10px;background:var(--accent-soft)}.tag-picker{display:flex;flex-direction:column;gap:.3rem}.tag-picker-head{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem}.tag-picker-search{width:100%}.share-tag-picker{font-size:.9rem;font-weight:600;color:var(--fg-soft)}.share-tag-picker input,.share-tag-picker select{font-weight:400}.weather-card-link{display:block;color:inherit;text-decoration:none;border-radius:12px}.weather-card-link .weather-card{transition:border-color .15s ease}.weather-card-link:focus-visible .weather-card,.weather-card-link:hover .weather-card{border-color:var(--accent)}.weather-more{color:var(--link);font-weight:600}.wind-dir{display:inline-flex;align-items:center;gap:.15rem}.wind-dir svg{flex:none}.weather-page h1{margin:.5rem 0 .75rem}.weather-page-place{margin:0 0 .5rem;font-size:1.1rem;font-weight:600}.weather-page-summary{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem .4rem;margin:0 0 1rem}.weather-hours-wrap{overflow-x:auto;margin:0 0 1rem}.weather-hours{width:100%;border-collapse:collapse;font-size:.9rem}.weather-hours td,.weather-hours th{padding:.35rem .5rem;text-align:left;white-space:nowrap;border-bottom:1px solid var(--border)}.weather-hours thead th{font-size:.75rem;font-weight:600;color:var(--fg-muted)}.weather-hours tbody th{font-weight:600}.weather-hours tr.is-night{color:var(--fg-muted);background:var(--surface-muted)}