:root{color-scheme:light;--bg: #f4efe6;--bg-warm: #ede6d7;--surface: #fcfaf6;--surface-2: #f8f3ea;--text: #1c1813;--text2: #5c5046;--text3: #6f665b;--line: rgba(28, 24, 19, .08);--line-strong: rgba(28, 24, 19, .14);--accent: #c56a4d;--accent-deep: #a0492f;--accent-soft: #f1d9cc;--accent-wash: #f9ece3;--on-ink: #f6f2ea;--on-accent: #fbf8f1;--glass: rgba(252, 250, 246, .92);--font-display: "Instrument Serif", Georgia, "Times New Roman", serif;--font-body: "Geist", -apple-system, BlinkMacSystemFont, system-ui, "Segoe UI", sans-serif;--font-mono: "Geist Mono", "SF Mono", Menlo, Consolas, monospace;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-12: 3rem;--radius-sm: 6px;--radius: 10px;--radius-lg: 16px;--radius-xl: 24px;--shadow-card: 0 4px 16px rgba(28, 24, 19, .06);--shadow-lifted: 0 8px 24px rgba(28, 24, 19, .12);--t-fast: .12s ease;--t: .18s ease}:root[data-theme=dark]{color-scheme:dark;--bg: #16130e;--bg-warm: #1d1912;--surface: #211c15;--surface-2: #292218;--text: #ede6d9;--text2: #b5a995;--text3: #958a7a;--line: rgba(237, 230, 217, .1);--line-strong: rgba(237, 230, 217, .18);--accent: #d67a5a;--accent-deep: #e2977c;--accent-soft: #4e2f21;--accent-wash: #382418;--on-ink: #211c15;--on-accent: #fbf8f1;--glass: rgba(26, 22, 16, .78);--shadow-card: 0 4px 16px rgba(0, 0, 0, .4);--shadow-lifted: 0 8px 24px rgba(0, 0, 0, .55)}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:16px;line-height:1.5}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.wa-input:focus-visible{outline-offset:-1px}button{font-family:inherit;font-size:inherit;cursor:pointer}#root{min-height:100vh}:root{--ink: #1c1813;--ink-soft: #5c5046;--ink-mute: #6f665b;--font-ui: var(--font-body);--sage: #7e8a6a;--sage-soft: #dde2d0;--sage-wash: #eceee2;--sky: #6e859a;--sky-soft: #d6dee5;--sky-wash: #e8ecef;--gold: #b8893b;--gold-soft: #ecddb8;--gold-wash: #f3e9d0;--rose: #b85c7a;--rose-soft: #e8c5d2;--rose-wash: #f6e4eb;--shadow-card: 0 1px 2px rgba(28, 24, 19, .04), 0 4px 16px rgba(28, 24, 19, .06);--shadow-lifted: 0 8px 24px rgba(28, 24, 19, .12), 0 2px 6px rgba(28, 24, 19, .08);--shadow-hairline: 0 0 0 1px rgba(28, 24, 19, .06);--shadow-panel: -16px 0 48px rgba(28, 24, 19, .14), -2px 0 8px rgba(28, 24, 19, .06);--shadow-pop: 0 12px 36px rgba(28, 24, 19, .16), 0 2px 6px rgba(28, 24, 19, .08);--s-1: .25rem;--s-2: .5rem;--s-3: .75rem;--s-4: 1rem;--s-5: 1.25rem;--s-6: 1.5rem;--s-8: 2rem;--s-12: 3rem;--r-xs: 6px;--r-sm: 9px;--r-md: 12px;--r-lg: 16px;--r-xl: 22px;--r-pill: 999px;--fs-11: 11px;--fs-12: 12px;--fs-13: 13px;--fs-14: 14px;--fs-16: 16px;--fs-18: 18px;--t-display-xl: 56px;--t-display-l: 40px;--t-display-m: 30px;--t-display-s: 22px;--t-body-l: var(--fs-16);--t-body: var(--fs-14);--t-body-s: var(--fs-13);--t-eyebrow: var(--fs-11);--ease: cubic-bezier(.2, .7, .3, 1);--dur-fast: .12s;--dur: .2s;--dur-slow: .36s;--shell-max: 1280px;--topbar-h: 60px;--tripnav-h: 52px;--rail-w: 264px;--detail-rail-w: 320px;--panel-w: 440px}:root[data-theme=dark]{--ink: #ede6d9;--ink-soft: #b5a995;--ink-mute: #958a7a;--sage: #93a07c;--sage-soft: #333c28;--sage-wash: #262c1f;--sky: #8299ad;--sky-soft: #2b3844;--sky-wash: #212a33;--gold: #c99e52;--gold-soft: #443617;--gold-wash: #332a15;--rose: #c97490;--rose-soft: #44212e;--rose-wash: #331a23;--shadow-card: 0 1px 2px rgba(0, 0, 0, .3), 0 4px 16px rgba(0, 0, 0, .4);--shadow-lifted: 0 8px 24px rgba(0, 0, 0, .55), 0 2px 6px rgba(0, 0, 0, .4);--shadow-hairline: 0 0 0 1px rgba(237, 230, 217, .1);--shadow-panel: -16px 0 48px rgba(0, 0, 0, .55), -2px 0 8px rgba(0, 0, 0, .35);--shadow-pop: 0 12px 36px rgba(0, 0, 0, .6), 0 2px 6px rgba(0, 0, 0, .4)}:root[data-theme=dark] .cat-shop{--c: #9b89ad;--c-soft: #383044;--c-wash: #2b2534}.cat-food{--c: var(--accent);--c-soft: var(--accent-soft);--c-wash: var(--accent-wash)}.cat-sight{--c: var(--gold);--c-soft: var(--gold-soft);--c-wash: var(--gold-wash)}.cat-view{--c: var(--sage);--c-soft: var(--sage-soft);--c-wash: var(--sage-wash)}.cat-stay{--c: var(--rose);--c-soft: var(--rose-soft);--c-wash: var(--rose-wash)}.cat-move{--c: var(--sky);--c-soft: var(--sky-soft);--c-wash: var(--sky-wash)}.cat-shop{--c: #7b6b8a;--c-soft: #d8d0e0;--c-wash: #ece7f0}.wa-display{font-family:var(--font-display);font-weight:400;letter-spacing:-.02em;line-height:.98;color:var(--ink)}.wa-eyebrow{font-family:var(--font-mono);font-size:var(--t-eyebrow);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-mute)}.wa-mono{font-family:var(--font-mono);letter-spacing:.03em}.wa-focusable:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@keyframes wa-fade-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes wa-panel-in{0%{transform:translate(24px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes wa-scrim-in{0%{opacity:0}to{opacity:1}}@keyframes wa-pulse-ring{0%{box-shadow:0 0 #c56a4d52}70%{box-shadow:0 0 0 7px #c56a4d00}to{box-shadow:0 0 #c56a4d00}}.app-shell{min-height:100vh;display:flex;flex-direction:column}.app-bar{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 2rem;border-bottom:1px solid var(--line);background:var(--surface)}.app-bar-title{font-family:var(--font-display);font-size:1.75rem;font-weight:500;letter-spacing:.2px;margin:0}.app-bar-title a{color:inherit;text-decoration:none}.app-main{flex:1;padding:2rem;max-width:1280px;width:100%;margin:0 auto}@media (max-width: 640px){.app-bar{flex-wrap:wrap;gap:10px 8px;padding:12px 16px}.app-bar-title{order:1;flex:1;font-size:1.35rem;white-space:nowrap}.app-bar .btn{order:2;flex-shrink:0;white-space:nowrap}.app-bar .app-bar-search{order:3;flex:1 1 200px;min-width:0;width:auto!important}.app-bar .app-bar-tools{order:4;margin-left:auto}.app-bar .fb-link{width:32px;padding:0!important}.app-bar .fb-words{display:none}.app-main{padding:20px 16px}}.section-eyebrow{font-family:var(--font-mono);font-size:.7rem;letter-spacing:1.6px;text-transform:uppercase;color:var(--text3);margin:0 0 .75rem}.section+.section{margin-top:3rem}.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.card{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:1.25rem;display:flex;flex-direction:column;gap:.5rem;text-decoration:none;color:inherit;transition:border-color .12s,box-shadow .12s,transform .12s}.card:hover{border-color:var(--accent-soft);box-shadow:0 1px 3px #0000000d;text-decoration:none}.card-eyebrow{display:flex;align-items:center;gap:.5rem;font-family:var(--font-mono);font-size:.7rem;letter-spacing:1.2px;color:var(--text3);text-transform:uppercase}.card-name{font-family:var(--font-display);font-size:1.5rem;font-weight:500;margin:0;line-height:1.15}.card-meta{font-family:var(--font-mono);font-size:.8rem;color:var(--text2);margin:0}.card-meta-line+.card-meta-line{margin-top:.25rem}.empty-state{text-align:center;padding:4rem 1rem;color:var(--text2)}.empty-state h2{font-family:var(--font-display);font-weight:500;font-size:1.5rem;margin:0 0 .5rem;color:var(--text)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.625rem 1.125rem;font-family:var(--font-body);font-size:.9rem;font-weight:500;border-radius:6px;border:1px solid transparent;cursor:pointer;text-decoration:none;transition:background .12s,border-color .12s,color .12s}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:#d44a3f;text-decoration:none}.btn-primary:disabled{background:var(--accent-soft);cursor:not-allowed}.btn-secondary{background:transparent;color:var(--text);border-color:var(--line)}.btn-secondary:hover{border-color:var(--text2);text-decoration:none}.btn-secondary.is-toggled-on{background:var(--text);border-color:var(--text);color:var(--bg)}.btn-ghost{background:transparent;color:var(--text2);padding:.4rem .6rem}.btn-ghost:hover{color:var(--text);text-decoration:none}.loading,.error{padding:3rem 1rem;text-align:center;color:var(--text2);font-family:var(--font-mono);font-size:.85rem}.error{color:var(--accent)}.form{max-width:560px;margin:0 auto;display:flex;flex-direction:column;gap:1.25rem}.form-title{font-family:var(--font-display);font-size:2rem;font-weight:500;margin:0 0 .25rem}.form-hint{color:var(--text2);margin:0 0 1rem;font-size:.9rem}.field{display:flex;flex-direction:column;gap:.4rem}.field-label{font-family:var(--font-mono);font-size:.7rem;letter-spacing:1.2px;text-transform:uppercase;color:var(--text3)}.field input,.field select,.field textarea{font-family:var(--font-body);font-size:1rem;padding:.625rem .75rem;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:6px;transition:border-color .12s}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--accent)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:.5rem}.planner-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.planner-name{font-family:var(--font-display);font-size:2.25rem;font-weight:500;margin:0;line-height:1.1}.planner-sub{font-family:var(--font-mono);font-size:.85rem;color:var(--text2);margin:.5rem 0 0}.planner-status{display:inline-flex;align-items:center;gap:.4rem;padding:.25rem .75rem;border-radius:999px;font-family:var(--font-mono);font-size:.7rem;letter-spacing:1.2px;text-transform:uppercase;border:1px solid var(--line);background:var(--surface);color:var(--text2);margin-left:.75rem;vertical-align:middle}.planner-status.is-draft{color:#b16a00;border-color:#e6cc8f;background:#fbf3df}:root[data-theme=dark] .planner-status.is-draft{color:#d9a24a;border-color:#5a4416;background:#382c10}.planner-actions{display:flex;gap:.75rem;flex-wrap:wrap}.ribbon-placeholder{border:1px dashed var(--line);border-radius:8px;padding:3rem 1rem;text-align:center;color:var(--text3);font-family:var(--font-mono);font-size:.85rem;background:#fff6}.modal-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:flex-start;justify-content:center;padding:4rem 1rem 1rem;z-index:100}.modal{background:var(--surface);border-radius:12px;max-width:560px;width:100%;max-height:calc(100vh - 6rem);display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 50px #00000040}.modal-head{padding:1.25rem 1.5rem .75rem;border-bottom:1px solid var(--line)}.modal-title{font-family:var(--font-display);font-size:1.5rem;font-weight:500;margin:0 0 .25rem}.modal-sub{font-family:var(--font-mono);font-size:.75rem;color:var(--text2);margin:0}.modal-search{padding:.75rem 1.5rem;border-bottom:1px solid var(--line)}.modal-search input{width:100%;font-family:var(--font-body);font-size:1rem;padding:.6rem .75rem;border:1px solid var(--line);border-radius:6px;background:var(--bg)}.modal-search input:focus{outline:none;border-color:var(--accent)}.modal-body{flex:1;overflow-y:auto;padding:.5rem 0}.modal-foot{padding:.75rem 1.5rem;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;font-family:var(--font-mono);font-size:.7rem;color:var(--text3)}.result-section+.result-section{border-top:1px solid var(--line);margin-top:.5rem}.result-section-head{padding:.5rem 1.5rem .25rem;font-family:var(--font-mono);font-size:var(--fs-11);letter-spacing:1.4px;text-transform:uppercase;color:var(--text3)}.result-row{display:flex;align-items:center;gap:.75rem;width:100%;padding:.625rem 1.5rem;background:transparent;border:none;text-align:left;cursor:pointer;font-family:var(--font-body);font-size:.95rem;color:var(--text)}.result-row:hover,.result-row:focus-visible,.result-row[data-listnav-active=true]{background:#0000000a}.result-row:focus-visible{outline-offset:-2px}.result-icon{width:24px;height:24px;border-radius:50%;background:var(--accent-soft);display:flex;align-items:center;justify-content:center;font-size:.85rem;flex-shrink:0;color:var(--text)}.result-icon.icon-catalog{background:#ffe2b8}.result-icon.icon-google{background:#d8eef5}.result-icon.icon-custom{background:var(--accent-soft)}:root[data-theme=dark] .result-icon.icon-catalog{background:#4a3a1c}:root[data-theme=dark] .result-icon.icon-google{background:#23394a}.result-text{flex:1;display:flex;flex-direction:column;min-width:0}.result-name{font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.result-meta{font-family:var(--font-mono);font-size:.7rem;color:var(--text2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.result-empty{padding:1.5rem;text-align:center;color:var(--text3);font-family:var(--font-mono);font-size:.85rem}.planner-take{margin-top:12px;padding:12px;border:1px solid var(--line-strong);border-radius:8px;background:var(--surface)}.planner-take-text{margin:0 0 8px;font-size:.9rem}.planner-take-options{display:flex;flex-wrap:wrap;gap:8px}.ribbon{position:relative;margin:1.5rem 0 .75rem;-webkit-user-select:none;user-select:none}.ribbon-scroll{overflow-x:auto;padding-bottom:.5rem}.ribbon-grid{display:grid;grid-template-columns:repeat(var(--days, 14),minmax(28px,1fr));gap:0;border:1px solid var(--line);border-radius:8px;background:var(--surface);overflow:hidden}.ribbon-track{position:relative;grid-column:1 / -1;min-height:56px;display:grid;grid-template-columns:repeat(var(--days, 14),minmax(28px,1fr))}.ribbon-cell{grid-row:1;position:relative;min-height:56px;overflow:hidden;border:none;padding:0;background:transparent}.ribbon-cell-empty{cursor:pointer}.ribbon-cell-stay,.ribbon-cell-transit,.ribbon-cell-arr,.ribbon-cell-dep{cursor:grab}.ribbon-cell-stay:active,.ribbon-cell-transit:active,.ribbon-cell-arr:active,.ribbon-cell-dep:active{cursor:grabbing}.ribbon-cell-stay:hover,.ribbon-cell-transit:hover,.ribbon-cell-arr:hover,.ribbon-cell-dep:hover{filter:brightness(1.06)}.ribbon-cell.is-invalid{filter:hue-rotate(-30deg) saturate(.7)}.ribbon-cell-empty:hover .ribbon-cell-plus{opacity:.7}.ribbon-cell-plus{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:20px;height:20px;border-radius:50%;border:1px dashed var(--text3);color:var(--text3);display:flex;align-items:center;justify-content:center;font-size:.8rem;opacity:0;transition:opacity .12s;pointer-events:none}.ribbon-cell-add-night{position:absolute;right:4px;bottom:4px;width:20px;height:20px;padding:0;border-radius:50%;border:1px dashed var(--text3);background:var(--surface, #fff);color:var(--text3);display:flex;align-items:center;justify-content:center;font-size:.8rem;line-height:1;cursor:pointer;opacity:0;transition:opacity .12s;z-index:2}.ribbon-cell-dep:hover .ribbon-cell-add-night,.ribbon-cell-add-night:hover,.ribbon-cell-add-night:focus-visible{opacity:.9}.ribbon-dow-row{grid-column:1 / -1;display:grid;grid-template-columns:repeat(var(--days, 14),minmax(28px,1fr));border-bottom:1px solid var(--line);background:#00000005}.ribbon-dow-cell{text-align:center;padding:4px 0 3px;font-family:var(--font-mono);font-size:var(--fs-11);font-weight:600;letter-spacing:.8px;color:var(--text3)}.ribbon-cell-top{position:absolute;top:3px;left:4px;right:4px;display:flex;align-items:baseline;justify-content:space-between;gap:4px;z-index:1;pointer-events:none}.ribbon-cell-dom{font-family:var(--font-mono);font-size:11px;font-weight:700;letter-spacing:.4px;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.5)}.ribbon-cell-mon{font-family:var(--font-mono);font-size:var(--fs-11);letter-spacing:0;color:#ffffffbf;text-shadow:0 1px 2px rgba(0,0,0,.5)}.ribbon-cell-empty .ribbon-cell-dom,.ribbon-cell-empty .ribbon-cell-mon{color:var(--text3);text-shadow:none}.ribbon-span{grid-row:1;z-index:2;pointer-events:none;position:relative;display:flex;flex-direction:column;gap:1px;align-items:center;justify-content:center;text-align:center;padding:16px 6px 4px;min-width:0;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.55)}.ribbon-span.is-invalid{opacity:.6}.ribbon-span:focus-visible{outline:2px solid var(--text);outline-offset:-2px;border-radius:4px}.ribbon-span-cost{font-family:var(--font-mono);font-size:var(--fs-11);letter-spacing:.3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;opacity:.9}.ribbon-span-cost.is-unbooked{font-style:italic;opacity:.75}.ribbon-span-name{font-family:var(--font-body);font-size:.78rem;font-weight:600;letter-spacing:.2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;line-height:1.1}.ribbon-span-nights{font-family:var(--font-mono);font-size:var(--fs-11);font-weight:500;letter-spacing:.4px;opacity:.85}.ribbon-span.will-remove{opacity:.5}.ribbon-span.will-remove .ribbon-span-name{font-family:var(--font-mono);font-size:var(--fs-11);font-weight:600;letter-spacing:.6px;text-transform:uppercase}.ribbon.is-compact .ribbon-span{padding:4px 6px}.ribbon-seam{grid-row:1;position:relative;z-index:1;pointer-events:none;border-left:3px solid var(--accent)}.ribbon-transit-lane{grid-column:1 / -1;display:grid;grid-template-columns:repeat(var(--days, 14),minmax(28px,1fr));padding:4px 0 5px;border-top:1px solid var(--line)}.ribbon-transit-chip{grid-row:1;justify-self:start;align-self:center;transform:translate(-50%);white-space:nowrap;cursor:default;font-family:var(--font-body);font-variant-numeric:tabular-nums;font-size:var(--fs-11);font-weight:600;letter-spacing:.2px;line-height:1;padding:3px 7px;border-radius:999px;color:#fff;text-shadow:0 1px 1px rgba(0,0,0,.25);border:1px solid rgba(28,24,19,.18)}.ribbon-transit-chip.is-flagged{box-shadow:0 0 0 2px #a23e2259}.ribbon-transit-chip.is-muted{visibility:hidden}.ribbon-transit-total{grid-column:1 / -1;grid-row:1;justify-self:end;align-self:center;display:flex;gap:10px;padding-right:8px;white-space:nowrap;font-family:var(--font-body);font-variant-numeric:tabular-nums;font-size:var(--fs-11);font-weight:600;letter-spacing:.2px;color:var(--text2)}.ribbon-transit-cost{color:var(--accent)}.ribbon-transit-total.is-muted{visibility:hidden}.ribbon.is-compact .ribbon-transit-lane{padding:3px 0}.ribbon-holidays{grid-column:1 / -1;display:grid;grid-template-columns:repeat(var(--days, 14),minmax(28px,1fr));padding:3px 0 2px}.ribbon-holiday-label{grid-row:1;justify-self:start;align-self:center;transform:translate(-50%);white-space:nowrap;font-family:var(--font-mono);font-size:var(--fs-11);font-weight:700;letter-spacing:1.1px;line-height:1;padding:3px 5px;border-radius:3px;background:var(--accent);color:#fff;box-shadow:0 1px 2px #00000040}.ribbon-cell-bg{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0}.ribbon-cell-bg-sleep-overlay{clip-path:polygon(100% 0%,100% 100%,0% 100%)}.ribbon-cell-bg-wake-overlay{clip-path:polygon(0% 0%,100% 0%,0% 100%)}.ribbon-cell-handle{position:absolute;top:0;bottom:0;width:12px;cursor:ew-resize;background:transparent;z-index:3}.ribbon-cell-handle.left{left:0}.ribbon-cell-handle.right{right:0}.ribbon-cell-handle:after{content:"";position:absolute;bottom:3px;left:50%;transform:translate(-50%);width:3px;height:11px;background:#ffffffbf;border-radius:2px;box-shadow:0 0 0 1px #1c18131f}.ribbon-cell-handle:hover:after{background:#fff}.ribbon-empty{padding:2rem 1rem;text-align:center;color:var(--text3);font-family:var(--font-mono);font-size:.85rem}.ribbon-foot{margin-top:.5rem;font-family:var(--font-mono);font-size:.7rem;color:var(--text3);display:flex;justify-content:space-between}.ribbon.is-compact{margin:0}.comparisons{margin-top:.25rem}.comparison-row+.comparison-row{margin-top:.25rem}.comparison-row-strip{display:flex;align-items:center;justify-content:space-between;gap:.5rem;min-height:24px;padding:0 4px}.comparison-row-actions{display:flex;gap:4px;flex-shrink:0}.comparison-drag-handle{flex-shrink:0;cursor:grab;color:var(--text3);font-size:.8rem;line-height:1;padding:2px 4px;-webkit-user-select:none;user-select:none;transition:color .12s}.comparison-drag-handle:hover{color:var(--text)}.comparison-drag-handle:active{cursor:grabbing}.comparison-row.is-dragging{opacity:.4}.comparison-row.drop-before{box-shadow:0 -2px 0 0 var(--accent)}.comparison-row.drop-after{box-shadow:0 2px 0 0 var(--accent)}.comparison-name-input{flex:0 1 160px;min-width:90px;font-family:var(--font-mono);font-size:.75rem;font-weight:600;letter-spacing:1px;text-transform:uppercase;color:var(--text2);background:transparent;border:none;border-bottom:1px solid transparent;padding:2px 0;outline:none;transition:border-color .12s,color .12s}.comparison-name-input:hover,.comparison-name-input:focus{border-bottom-color:var(--line);color:var(--text)}.comparison-note-input{flex:1;min-width:80px;font-size:.75rem;font-style:italic;color:var(--text2);background:transparent;border:none;border-bottom:1px solid transparent;padding:2px 0;outline:none;transition:border-color .12s,color .12s}.comparison-note-input::placeholder{color:var(--text3);opacity:0;transition:opacity .12s}.comparison-row-strip:hover .comparison-note-input::placeholder,.comparison-note-input:focus::placeholder{opacity:1}.comparison-note-input:hover,.comparison-note-input:focus{border-bottom-color:var(--line);color:var(--text)}.comparisons-footer{display:flex;justify-content:space-between;align-items:center;margin-top:.5rem;padding:0 4px}.btn-tertiary{font-family:var(--font-mono);font-size:.7rem;font-weight:600;letter-spacing:.6px;color:var(--text2);background:transparent;border:1px solid transparent;padding:4px 8px;border-radius:4px;cursor:pointer;transition:background-color .12s,border-color .12s,color .12s}.btn-tertiary:hover{background:var(--surface);border-color:var(--line);color:var(--text)}.stay-edit-panel{position:fixed;top:110px;right:18px;width:300px;max-height:calc(100vh - 140px);overflow-y:auto;background:var(--surface);border:1px solid var(--line-strong);border-radius:10px;box-shadow:var(--shadow-lifted);padding:14px 16px 16px;z-index:40}.stay-edit-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.stay-edit-eyebrow{font-family:var(--font-mono);font-size:var(--fs-11);font-weight:600;letter-spacing:.8px;text-transform:uppercase;color:var(--text3)}.stay-edit-title{font-size:1.05rem;font-weight:650;color:var(--text);margin-top:2px}.stay-edit-sub{font-family:var(--font-mono);font-size:.7rem;color:var(--text2);margin-top:2px}.stay-edit-section{margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.stay-edit-label{font-family:var(--font-mono);font-size:var(--fs-11);font-weight:600;letter-spacing:.8px;text-transform:uppercase;color:var(--text3);margin-bottom:7px}.stay-edit-stepper{display:flex;align-items:center;gap:10px}.stay-edit-nights{font-family:var(--font-mono);font-size:.95rem;font-weight:650;min-width:34px;text-align:center}.stay-edit-hint{font-size:.72rem;color:var(--text3);margin:7px 0 0}.stay-edit-input{width:100%;box-sizing:border-box;padding:7px 9px;border:1px solid var(--line-strong);border-radius:6px;font:inherit;font-size:.86rem;background:var(--bg);color:var(--text)}.stay-edit-linkrow{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:4px 0}.stay-edit-linkmeta{display:flex;flex-direction:column;min-width:0}.stay-edit-linkkind{font-family:var(--font-mono);font-size:var(--fs-11);letter-spacing:.6px;text-transform:uppercase;color:var(--text3)}.stay-edit-linkval{font-size:.82rem;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stay-edit-linkactions{display:flex;align-items:center;flex:0 0 auto}.stay-edit-swatches{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}.stay-edit-swatch{width:30px;height:30px;border-radius:50%;border:1px solid var(--line-strong);cursor:pointer;padding:0;transition:transform .1s}.stay-edit-swatch:hover{transform:scale(1.12)}.stay-edit-swatch.is-active{box-shadow:0 0 0 2px var(--surface),0 0 0 4px var(--text)}.stay-edit-ctas{display:flex;flex-direction:column;gap:8px}.stay-edit-remove{width:100%;color:var(--accent-deep);border-color:var(--line-strong)}.stay-edit-remove:hover{border-color:var(--accent-deep)}.stay-edit-checkrow{display:flex;align-items:center;gap:6px;margin-top:8px;font-family:var(--font-mono);font-size:var(--fs-11);font-weight:600;letter-spacing:.5px;text-transform:uppercase;color:var(--text2);cursor:pointer;-webkit-user-select:none;user-select:none}.stay-edit-checkrow input{accent-color:var(--text);cursor:pointer}.ribbon-sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.overview-stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:var(--space-3)}.stat-tile{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-4);box-shadow:var(--shadow-card)}.stat-num{font-family:var(--font-display);font-size:2.1rem;line-height:1;color:var(--text)}.stat-label{font-family:var(--font-mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text3);margin-top:var(--space-2)}.overview-desc{color:var(--text2);max-width:62ch;line-height:1.65;margin:0;white-space:pre-wrap}.stay-list{display:flex;flex-direction:column}.stay-row{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--line)}.stay-row:last-child{border-bottom:none}.stay-dot{width:12px;height:12px;border-radius:50%;flex:none}.stay-name{color:var(--text);font-weight:500}.stay-meta{font-family:var(--font-mono);font-size:.78rem;color:var(--text3);margin-top:2px}.people-list{display:flex;flex-wrap:wrap;gap:var(--space-2)}.person-chip{background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:var(--space-2) var(--space-4);font-size:.9rem;color:var(--text)}.person-rel{color:var(--text3)}.ov-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);overflow:hidden}.ov-stat{display:flex;flex-direction:column;padding:14px 16px;color:var(--ink);text-decoration:none;border-left:1px solid var(--line)}.ov-stat:first-child{border-left:none}.ov-stat:hover{background:var(--accent-wash)}.ov-agenda{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);overflow:hidden}.ov-agenda-row{display:grid;grid-template-columns:64px minmax(0,1fr);gap:12px;padding:11px 16px;border-top:1px dashed var(--line);color:var(--ink);text-decoration:none}.ov-agenda-row:first-child{border-top:none}.ov-agenda-row:hover{background:var(--accent-wash)}.ov-agenda-row.is-soon .ov-agenda-date{color:var(--accent-deep);font-weight:600}.ov-agenda-date{font-family:var(--font-mono);font-size:12.5px;color:var(--ink-soft);padding-top:1px}.ov-agenda-body{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 8px;min-width:0}.ov-agenda-kind{font-family:var(--font-mono);font-size:var(--fs-11);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-mute);flex-basis:100%}.ov-agenda-text{font-size:14px;color:var(--ink);overflow-wrap:anywhere}.ov-agenda-sub{font-size:12px;color:var(--ink-mute)}.ov-agenda-more{padding:10px 16px;border-top:1px solid var(--line);font-size:12.5px;color:var(--accent-deep);text-decoration:none}.ov-leg{display:grid;grid-template-columns:6px minmax(0,1fr) auto;gap:14px;align-items:center;padding:13px 16px;border-radius:var(--r-md);border:1px solid var(--line);background:var(--surface);color:var(--ink);text-decoration:none}.ov-leg:hover{border-color:var(--line-strong);box-shadow:var(--shadow-card)}.ov-leg-bar{align-self:stretch;border-radius:3px}.ov-today{display:block;margin-bottom:var(--s-6);padding:20px 22px;border-radius:var(--r-lg);border:1px solid var(--accent-soft);background:var(--accent-wash);color:var(--ink);text-decoration:none}.ov-today-list{display:flex;flex-direction:column;gap:3px;margin-top:10px;font-size:13.5px;color:var(--ink-soft)}.ov-today-list .wa-mono{display:inline-block;width:48px;color:var(--ink-mute);font-size:12px}@media (max-width: 760px){.ov-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.ov-stat:nth-child(3){border-left:none}.ov-stat:nth-child(n+3){border-top:1px solid var(--line)}}.scope-toggle{display:flex;gap:var(--space-2)}.btn.is-on{background:var(--accent);color:#fff;border-color:var(--accent)}.browse-controls{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-5)}.type-chips{display:flex;flex-wrap:wrap;gap:var(--space-2)}.type-chip{background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:var(--space-2) var(--space-4);font-size:.85rem;color:var(--text2);text-transform:capitalize}.type-chip.is-on{background:var(--accent-wash);border-color:var(--accent-soft);color:var(--accent-deep);font-weight:500}.type-chip-count{font-family:var(--font-mono);font-size:.72rem;color:var(--text3)}.browse-filters{display:flex;flex-wrap:wrap;gap:var(--space-3)}.browse-search{flex:1 1 260px;padding:var(--space-3) var(--space-4);border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);font-family:inherit;font-size:.95rem;color:var(--text)}.browse-region{flex:0 1 220px;padding:var(--space-3) var(--space-4);border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface);font-family:inherit;font-size:.95rem;color:var(--text)}.browse-count{font-family:var(--font-mono);font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;color:var(--text3);margin:0 0 var(--space-3)}.browse-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--space-3)}.browse-card{display:flex;flex-direction:column;gap:var(--space-3);background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-4);box-shadow:var(--shadow-card);transition:box-shadow var(--t),transform var(--t);color:inherit}.browse-card:hover{box-shadow:var(--shadow-lifted);transform:translateY(-1px);text-decoration:none}.browse-card-type{font-family:var(--font-mono);font-size:var(--fs-11);text-transform:uppercase;letter-spacing:.06em;color:var(--text3)}.browse-card-name{font-family:var(--font-display);font-size:1.35rem;line-height:1.15;margin:var(--space-1) 0 var(--space-1);color:var(--text)}.browse-card-place{font-size:.85rem;color:var(--text2)}.browse-card-flag{font-family:var(--font-mono);font-size:.7rem;text-transform:uppercase;letter-spacing:.05em;color:var(--accent-deep)}.rating-chips{display:flex;flex-wrap:wrap;gap:var(--space-2)}.chip{font-family:var(--font-mono);font-size:.72rem;padding:2px var(--space-2);border-radius:5px;background:var(--surface-2);border:1px solid var(--line);color:var(--text2);white-space:nowrap}.chip-michelin{background:var(--accent-wash);border-color:var(--accent-soft);color:var(--accent-deep)}.chip-tabelog{color:#8a5a2b}.chip-google{color:#3b6ea5}:root[data-theme=dark] .chip-tabelog{color:#cf9c5d}:root[data-theme=dark] .chip-google{color:#82a9cd}.detail-prose{color:var(--text2);line-height:1.65;max-width:68ch;margin:0;white-space:pre-wrap}.detail-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--space-3)}.detail-photo{margin:0}.detail-photo img{width:100%;height:180px;object-fit:cover;border-radius:var(--radius);display:block;background:var(--surface-2)}.detail-photo figcaption{font-family:var(--font-mono);font-size:var(--fs-11);color:var(--text3);margin-top:var(--space-1)}.detail-list{margin:0;padding-left:1.1rem;color:var(--text2);line-height:1.7}.detail-list a{color:var(--accent-deep)}.detail-dim{color:var(--text3)}.detail-links{display:flex;flex-wrap:wrap;gap:var(--space-2)}.days-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;align-items:start}@media (max-width: 1180px){.days-week{grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}}@media (max-width: 600px){.days-week{grid-template-columns:minmax(0,1fr)}}.days-week-day{position:relative;display:block;overflow:hidden;padding:16px 12px 12px;border-radius:var(--r-md);border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow-card);color:var(--ink);text-decoration:none;transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}.days-week-day:hover{border-color:var(--line-strong);box-shadow:var(--shadow-lifted)}.days-week-day.is-today{border-color:var(--accent)}.days-week-stripe{position:absolute;top:0;left:0;right:0;height:4px}.dg{--dg-date-w: 132px;--dg-lane-w: 40px;display:flex;flex-direction:column;gap:18px}.dg-legend{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;font-size:12px;color:var(--ink-soft)}.dg-legend>span{display:inline-flex;align-items:center;gap:7px}.dg-legend-hint{color:var(--ink-mute)}.dg-key{display:inline-block;width:3px;height:14px;border-radius:1px}.dg-key.is-booked{background:var(--ink)}.dg-key.is-idea{border-left:2px dashed var(--ink-mute);width:0}.dg-key.is-tobook{border-left:2px dashed var(--gold);width:0}.dg-key.is-pick{width:12px;height:12px;border:1px solid var(--gold-soft);background:var(--gold-wash)}.dg-print{margin-left:auto;background:none;border:1px solid var(--line-strong);border-radius:var(--r-sm);padding:5px 10px;color:var(--ink-soft);font-family:var(--font-ui);font-size:12px;cursor:pointer}.dg-table{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);overflow:clip}.dg-headrow{position:sticky;top:calc(var(--topbar-h) + var(--tripnav-h));z-index:3;display:grid;grid-template-columns:var(--dg-cols);background:var(--surface);border-bottom:1.5px solid var(--line-strong)}.dg-headrow>div{padding:10px 12px;font-family:var(--font-mono);font-size:var(--fs-11);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-mute)}.dg-band{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;padding:8px 14px;background:var(--surface-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line);border-left:4px solid var(--dg-band-c, var(--line-strong))}.dg-band-city{font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;font-weight:600;color:var(--ink)}.dg-band-hotel{font-size:13px;color:var(--ink-soft)}.dg-day{display:grid;grid-template-columns:var(--dg-cols);border-top:1px solid var(--line);scroll-margin-top:calc(var(--topbar-h) + var(--tripnav-h) + 44px)}.dg-day.is-today{box-shadow:inset 3px 0 0 var(--accent)}.dg-date{grid-row:span 2;display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-right:1px solid var(--line);color:var(--ink);text-decoration:none}.dg-date:hover .dg-date-d{color:var(--accent-deep)}.dg-date-d{font-family:var(--font-mono);font-size:14px;font-weight:600;font-variant-numeric:tabular-nums}.dg-date-w{font-size:11px;color:var(--ink-mute);letter-spacing:.04em}.dg-date-title{margin-top:4px;font-size:12px;line-height:1.3;color:var(--ink-soft)}.dg-date-flags{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.dg-chip{font-family:var(--font-mono);font-size:var(--fs-11);letter-spacing:.04em;padding:1px 6px;border-radius:4px;border:1px solid var(--line-strong);color:var(--ink-mute)}.dg-chip.is-accent{color:var(--accent-deep);border-color:var(--accent-soft);background:var(--accent-wash)}.dg-chip.is-warn{color:var(--gold);border-color:var(--gold-soft);background:var(--gold-wash)}.dg-lanerow{display:contents}.dg-lanerow.is-eat>*{background:color-mix(in srgb,var(--surface-2) 55%,transparent);border-top:1px dashed var(--line)}.dg-lane{padding:10px 6px 10px 10px;font-family:var(--font-mono);font-size:var(--fs-11);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-mute)}.dg-cell{position:relative;display:flex;flex-direction:column;gap:5px;padding:8px 10px;min-height:42px;border-left:1px solid var(--line);cursor:pointer}.dg-cell:hover{background:var(--accent-wash)}.dg-cell.is-over{background:var(--accent-wash);outline:2px dashed var(--accent);outline-offset:-3px}.dg-empty{color:var(--line-strong);font-size:13px;-webkit-user-select:none;user-select:none}.dg-cell:not(:hover) .dg-empty{opacity:.5}.dg-item{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 6px;width:100%;text-align:left;padding:2px 0 2px 8px;background:none;border:none;border-left:2.5px solid var(--ink);color:var(--ink);font-family:var(--font-ui);font-size:13px;line-height:1.35;cursor:pointer}.dg-item:hover .dg-title{text-decoration:underline;text-underline-offset:2px}.dg-item.is-booked{font-weight:500}.dg-item.is-idea{border-left:2.5px dashed var(--ink-mute);color:var(--ink-soft)}.dg-item.is-tobook{border-left:2.5px dashed var(--gold);color:var(--ink-soft)}.dg-item.is-pending{border-left:2.5px dotted var(--gold)}.dg-item.is-cancelled{border-left:2.5px solid var(--line);color:var(--ink-mute);text-decoration:line-through}.dg-item.is-must .dg-title{font-weight:600;color:var(--ink)}.dg-item[draggable=true]{cursor:grab}.dg-time{font-family:var(--font-mono);font-size:11.5px;color:var(--ink-mute);font-variant-numeric:tabular-nums}.dg-title{overflow-wrap:anywhere}.dg-flag{font-family:var(--font-mono);font-size:var(--fs-11);letter-spacing:.06em;text-transform:uppercase;color:var(--gold)}.dg-flag.is-quiet{color:var(--ink-mute)}.dg-meta{flex-basis:100%;font-size:11px;color:var(--ink-mute);font-weight:400}.dg-pick{padding:5px 7px;border-radius:var(--r-sm);border:1px solid var(--gold-soft);background:var(--gold-wash);display:flex;flex-direction:column;gap:3px}.dg-pick-label{font-family:var(--font-mono);font-size:var(--fs-11);letter-spacing:.08em;text-transform:uppercase;color:var(--gold)}.dg-synth{display:flex;flex-wrap:wrap;gap:2px 6px;padding:2px 0 2px 8px;border-left:2.5px dashed var(--accent);font-size:13px;color:var(--ink-soft);text-decoration:none}.dg-synth.is-table{border-left-color:var(--gold)}button.dg-synth{width:100%;border-top:0;border-right:0;border-bottom:0;background:none;font:inherit;font-size:13px;text-align:left;cursor:pointer}.dg-key.is-open{width:12px;height:12px;border:1px dotted var(--line-strong)}.dg-open{display:flex;align-items:baseline;gap:6px;padding:2px 0 2px 8px;border-left:2.5px dotted var(--line-strong);color:var(--ink-mute);font-size:13px;font-style:italic}.dg-open-label,.dg-open-x{background:none;border:none;padding:0;font:inherit;color:inherit;cursor:pointer}.dg-open-label:disabled{cursor:default}.dg-open-label:hover:not(:disabled){text-decoration:underline;text-underline-offset:2px}.dg-open-x{font-style:normal;opacity:.4;padding:0 4px}.dg-open:hover .dg-open-x,.dg-open-x:focus-visible{opacity:.9}@media (hover: none){.dg-open-x{opacity:1}}.dg-open-input{width:100%;padding:2px 6px;font:inherit;font-size:13px;border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--surface);color:var(--ink)}.dg-mark-open{margin-left:8px;background:none;border:none;padding:0;font:inherit;font-size:11px;color:var(--ink-mute);cursor:pointer}.dg-mark-open:hover{color:var(--ink);text-decoration:underline;text-underline-offset:2px}.dg-foot{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;align-items:start}.dg-panel{padding:16px 18px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface)}.dg-panel-title{margin:0 0 12px;font-family:var(--font-display);font-size:22px;font-weight:400}.dg-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:7px}.dg-list li{display:grid;grid-template-columns:58px 120px 1fr;gap:10px;font-size:13px;align-items:baseline}.dg-list-date{font-family:var(--font-mono);font-size:12px;color:var(--ink)}.dg-list-kind{font-family:var(--font-mono);font-size:var(--fs-11);color:var(--ink-mute);text-transform:uppercase;letter-spacing:.05em}.dg-list-what{color:var(--ink-soft);text-decoration:none;overflow-wrap:anywhere}a.dg-list-what:hover{color:var(--accent-deep)}.dg-list-sub{color:var(--ink-mute)}.dg-options{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px}.dg-option{display:flex;flex-direction:column;gap:4px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r-sm)}.dg-option-cat{font-family:var(--font-mono);font-size:var(--fs-11);letter-spacing:.08em;text-transform:uppercase;color:var(--accent-deep)}.dg-option-name{font-size:14px;font-weight:600;color:var(--ink);text-decoration:none}.dg-option-fit{font-size:12px;color:var(--ink-mute)}.dg-option-add{align-self:flex-start;margin-top:2px;background:none;border:none;padding:0;color:var(--accent-deep);font-family:var(--font-ui);font-size:12.5px;cursor:pointer}@media (max-width: 1100px){.dg-foot{grid-template-columns:1fr}}@media (max-width: 760px){.dg-headrow{display:none}.dg-day{grid-template-columns:1fr}.dg-date{grid-row:auto;flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:4px 10px;border-right:none;border-bottom:1px solid var(--line)}.dg-date-title{flex-basis:100%;margin-top:0}.dg-lane{display:none}.dg-cell{border-left:none;min-height:0}.dg-lanerow.is-eat>.dg-cell,.dg-cell{border-top:1px solid var(--line)}.dg-cell.is-empty{display:none}.dg-cell:before{content:attr(data-label);font-family:var(--font-mono);font-size:var(--fs-11);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-mute)}.dg-list li{grid-template-columns:52px 1fr}.dg-list-kind{display:none}}@media print{.dg-legend button,.dg-option-add,.dg-empty,.dg-open-x{display:none}.dg-headrow{position:static}.dg-cell{cursor:default}}.ts-search-btn{display:none;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:var(--surface-2);color:var(--ink-soft);cursor:pointer;flex-shrink:0}.ts-nav{overflow-x:auto;scrollbar-width:none}.ts-nav::-webkit-scrollbar{display:none}.ts-tab:focus-visible{outline-offset:-3px;border-radius:var(--r-sm)}.ts-trip-name{max-width:260px}@media (max-width: 1080px){.ts-brand-word{display:none}}@media (max-width: 760px){.ts-header{padding:0 12px!important;gap:10px!important}.ts-hide-phone,.ts-search{display:none!important}.ts-search-btn{display:flex}.ts-trip-name{max-width:44vw}.ts-trip-region{display:none}.ts-nav{padding:0 6px!important}.ts-main{padding:16px 14px 64px!important}.days-layout{grid-template-columns:minmax(0,1fr)!important;gap:14px!important}.days-rail{position:static!important}.days-rail-title,.days-rail-leghead{display:none!important}.days-rail-list{flex-direction:row!important;overflow-x:auto;gap:6px!important;padding-bottom:4px;scrollbar-width:none}.days-rail-leg{display:flex;gap:6px;margin-bottom:0!important}.days-rail-day{width:auto!important;min-width:128px;flex-shrink:0;padding:7px 10px!important;margin-bottom:0!important}.days-timeline>*{margin-left:0!important}.days-hero-pad{padding:18px!important}}.phone-only{display:none}@media (max-width: 760px){.stack-phone{grid-template-columns:minmax(0,1fr)!important}.phone-only{display:inline-flex}.browse-filter-toggle{margin-bottom:12px;padding:8px 14px;border-radius:var(--r-pill);border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);font-family:var(--font-ui);font-size:13px;cursor:pointer}.browse-rail{position:static!important}.browse-rail:not(.is-open){display:none}.detail-mosaic{grid-template-columns:minmax(0,1fr)!important;grid-template-rows:240px!important}.detail-mosaic>:not(:first-child){display:none!important}.detail-mosaic>:first-child{grid-row:auto!important;grid-column:auto!important}}@media (max-width: 760px){.res-row-main{flex-wrap:wrap;align-items:flex-start!important;gap:10px 12px!important}.res-row-text{min-width:0}.res-row-name{white-space:normal!important;overflow-wrap:anywhere}.res-row-meta{flex-wrap:wrap}.res-row-meta-text{white-space:normal!important;min-width:0;overflow-wrap:anywhere}.res-row-right{flex:1 1 100%}.res-row-right>*{text-align:left!important;max-width:none!important}.res-row-actions{padding-left:0!important}.res-rail{position:static!important}.ov-hero{order:-1;aspect-ratio:16 / 9;min-height:0}.ov-hero>*{min-height:0}.ov-masthead-text{padding:24px 20px 22px!important}.ov-title{font-size:var(--t-display-l)!important}}.mm-sheet{display:contents}.mm-sheet-bar{display:none}@media (max-width: 760px){.mm-sheet{display:flex;flex-direction:column;position:absolute;left:0;right:0;bottom:0;z-index:35;box-sizing:border-box;max-height:60vh;max-height:60dvh;padding-bottom:env(safe-area-inset-bottom);background:var(--bg, #f4efe6);border-radius:16px 16px 0 0;box-shadow:0 -8px 28px #2823192e}.mm-sheet[data-open=true]{height:60vh;height:60dvh}.mm-sheet-bar{display:flex;align-items:center;gap:8px;flex:none;padding:4px 10px 4px 4px}.mm-sheet-handle{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:5px;min-height:44px;padding:8px 10px 4px;border:none;background:transparent;color:var(--ink);cursor:pointer;text-align:left}.mm-sheet-grip{width:36px;height:4px;border-radius:2px;background:var(--ink-mute, #6f665b)}.mm-sheet-title{font-family:var(--font-display, "Instrument Serif", serif);font-size:18px;line-height:1.1}.mm-sheet-tabs{display:flex;gap:3px;padding:3px;border-radius:10px;background:var(--bg-warm, #ede6d7);flex:none}.mm-sheet-tab{padding:7px 10px;border:none;border-radius:7px;background:transparent;color:var(--ink-soft);font-family:ui-monospace,Menlo,monospace;font-size:var(--fs-11);letter-spacing:.05em;text-transform:uppercase;cursor:pointer}.mm-sheet-tab[aria-selected=true]{background:var(--ink, #2a2722);color:var(--on-ink, #f6f2ea)}.mm-panel{position:static!important;width:auto!important;max-height:none!important;flex:1 1 auto;min-height:0;box-sizing:border-box;padding:4px 12px 12px;overflow-y:auto!important;overscroll-behavior:contain;pointer-events:auto!important}.mm-sheet[data-open=false] .mm-panel,.mm-sheet[data-panel=trip] .mm-panel-widgets,.mm-sheet[data-panel=widgets] .mm-panel-trip{display:none!important}.mm-widget-card{width:100%!important;box-sizing:border-box}.mm-float{top:auto!important;bottom:0!important;left:0!important;right:0!important;width:auto!important;max-width:none!important;max-height:60vh!important;max-height:60dvh!important;transform:none!important;overflow-y:auto!important;border-radius:16px 16px 0 0!important;z-index:36!important}.mm-ribbon,.mm-hide-phone{display:none!important}.mm-dock{bottom:calc(76px + env(safe-area-inset-bottom))!important;padding:0 10px;box-sizing:border-box}.mm-dock-toast{bottom:calc(140px + env(safe-area-inset-bottom))!important}.mm-top{justify-content:space-between!important;padding:0 10px;box-sizing:border-box;gap:6px!important}.mm-top-btn{padding:0 12px!important}.mm-top-label{display:none}.mm-top-name{max-width:38vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mm-pop{position:fixed!important;top:64px!important;left:12px!important;right:12px!important;width:auto!important;max-height:calc(100vh - 140px)!important;max-height:calc(100dvh - 140px)!important;overflow-y:auto!important;transform:none!important}.mm-root .mapboxgl-ctrl-bottom-left,.mm-root .mapboxgl-ctrl-bottom-right{bottom:calc(64px + env(safe-area-inset-bottom))}}@media (max-width: 760px){.tt-stage{position:static!important;display:flex;flex-direction:column;gap:12px;width:auto!important;height:auto!important;min-height:0!important;margin:0!important;overflow:visible!important;border-radius:0!important;box-shadow:none!important}.tt-map{position:relative!important;inset:auto!important;height:56vh;min-height:320px;border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow-card)}.tt-rail,.tt-panel{position:static!important;width:auto!important;max-height:none!important;box-sizing:border-box}.tt-fab{position:static!important;align-self:flex-start}}
