:root{--bg:#fff;--surface:#fff;--surface-alt:#f5f5f7;--text:#111;--ink:#141416;--text-soft:#6e6e73;--line:#ececec;--accent:#111;--yellow:#ffc60a;--yellow-soft:#fff6da;--green:#34c759;--red:#ff3b30;--blue-ink:#1b2b3a;--blue-primary:#2f6fed;--shadow:0 8px 24px #00000024;--shadow-soft:0 1px 2px #0000000d, 0 6px 18px #00000012;--shadow-lift:0 2px 4px #0000000d, 0 12px 32px #0000001a, 0 24px 64px #00000014;--radius:20px;--radius-chip:999px;--font-body:var(--font-sans), -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", Roboto, "Helvetica Neue", sans-serif;--font-ui:-apple-system, BlinkMacSystemFont, "SF Pro Text", "SF Pro Display", "SF Pro", "Segoe UI", Roboto, "Helvetica Neue", sans-serif}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{font-family:var(--font-body);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}h1,h2,h3{letter-spacing:-.03em;font-weight:800}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}.add-videos textarea{background:var(--surface-alt);width:100%;font:inherit;font-size:var(--fs-body);color:var(--text);resize:vertical;border:1px solid #d9d9de;border-radius:14px;outline:none;padding:14px 16px;transition:border-color .15s,background .15s}.add-videos textarea:focus{border-color:var(--text);background:var(--surface)}.landing,.sky-page{min-height:100vh;color:var(--blue-ink);background:linear-gradient(#e8f4fa 0%,#c8e5f4 16%,#a3d5ee 44%,#97cfeb 70%,#b4dcf1 100%);position:relative}.landing:after,.sky-page:after{content:"";z-index:0;pointer-events:none;opacity:.9;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:180px 180px;position:fixed;inset:0}.landing>*,.sky-page>*{z-index:1;position:relative}.landing>.cloud-layer,.sky-page>.cloud-layer{z-index:0;pointer-events:none;position:absolute;inset:0;overflow:hidden}.cloud{background:radial-gradient(closest-side,#ffffffe6 0%,#fff6 52%,#fff0 100%);border-radius:50%;position:absolute}.cloud.c1{width:64vw;height:480px;animation:38s ease-in-out infinite alternate cloud-drift-a;top:1%;left:-14%}.cloud.c2{opacity:.85;width:52vw;height:440px;animation:48s ease-in-out infinite alternate cloud-drift-b;top:16%;right:-16%}.cloud.c3{opacity:.7;width:58vw;height:500px;animation:58s ease-in-out infinite alternate-reverse cloud-drift-a;top:42%;left:6%}@keyframes cloud-drift-a{0%{transform:translate(-10%)}to{transform:translate(22%,4%)}}@keyframes cloud-drift-b{0%{transform:translate(10%,3%)}to{transform:translate(-20%,-3%)}}@media (prefers-reduced-motion:reduce){.cloud{animation:none}}.top-nav{z-index:30;justify-content:space-between;align-items:center;padding:20px 38px;display:flex}.brand{letter-spacing:-.03em;color:#10222f;align-items:center;gap:7px;font-size:21px;font-weight:800;display:inline-flex}.logo-mark{flex:none;transform:translateY(-1px)}.brand-dot{color:var(--yellow)}.nav-pill{color:var(--ink);border-radius:var(--radius-chip);background:#fffc;border:1px solid #1b2b3a1f;padding:9px 18px;font-size:13.5px;font-weight:600;transition:background .15s,box-shadow .15s}.nav-pill:hover{box-shadow:var(--shadow-soft);background:#fff}.hero{text-align:center;z-index:5;flex-direction:column;align-items:center;max-width:1000px;margin:0 auto;padding:48px 24px 72px;display:flex}.stat-chip{color:#33475a;background:#ffffffd9;border:1px solid #14324614;border-radius:10px;align-items:center;gap:9px;margin-bottom:30px;padding:8px 14px;font-size:13.5px;display:inline-flex;box-shadow:0 1px 2px #1432460d}.stat-chip strong{color:#10222f;font-weight:700}.stat-dot{background:var(--blue-primary);border-radius:2px;width:7px;height:7px}.hero h1{letter-spacing:-.035em;color:#17232e;font-size:clamp(44px,5.6vw,72px);font-weight:600;line-height:1.05}.hero-sub{color:#3d5266;max-width:680px;margin-top:22px;font-size:clamp(15px,1.4vw,16.5px);font-weight:450;line-height:1.6}@keyframes rise-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.rise{animation:.7s cubic-bezier(.16,1,.3,1) both rise-in}.rise.r1{animation-delay:80ms}.rise.r2{animation-delay:.2s}@media (prefers-reduced-motion:reduce){.rise{animation:none}}.search-bar{text-align:left;z-index:20;background:#fff;border:1px solid #1432461a;border-radius:16px;align-items:stretch;width:min(860px,100%);margin-top:34px;padding:7px;display:flex;position:relative;box-shadow:0 1px 2px #1432460f,0 10px 30px #1432461f}.search-bar.pulse:after{content:"";border:2px solid var(--blue-primary);opacity:0;pointer-events:none;border-radius:19px;animation:1.15s ease-out .35s 2 bar-pulse;position:absolute;inset:-3px}@keyframes bar-pulse{0%{opacity:.85;transform:scale(1)}to{opacity:0;transform:scale(1.03)}}@media (prefers-reduced-motion:reduce){.search-bar.pulse:after{animation:none}}.sb-field{flex-direction:column;justify-content:center;gap:3px;min-width:0;padding:7px 16px;display:flex}.sb-field.grow{flex:1}.sb-field label{text-transform:uppercase;letter-spacing:.09em;color:#7b8a98;font-size:10px;font-weight:700}.sb-field input{font:inherit;color:#17232e;background:0 0;border:none;outline:none;width:100%;padding:0;font-size:14px}.sb-field input::placeholder{color:#9fadba}.sb-field input[type=date]{width:118px;font-size:13px}.sb-divider{background:#e7edf2;flex-shrink:0;align-self:center;width:1px;height:30px}.sb-cta{white-space:nowrap;background:var(--blue-primary);color:#fff;letter-spacing:-.01em;border:none;border-radius:11px;flex-shrink:0;align-self:center;padding:13px 24px;font-size:14.5px;font-weight:600;transition:background .15s,transform .12s;box-shadow:0 1px 2px #14324633}.sb-cta:hover{background:#245cd6;transform:scale(1.02)}.sb-cta:disabled{opacity:.55;cursor:default;transform:none}.dp{flex-direction:column;gap:3px;min-width:0;display:flex;position:relative}.dp-label{text-transform:uppercase;letter-spacing:.09em;color:#7b8a98;font-size:10px;font-weight:700}.dp-trigger{font:inherit;color:#17232e;text-align:left;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:none;outline:none;width:118px;padding:0;font-size:13px;overflow:hidden}.dp-trigger.placeholder{color:#9fadba}.dp-trigger:disabled{cursor:default;opacity:.55}.dp-pop{z-index:40;cursor:default;background:#fff;border:1px solid #1432461a;border-radius:16px;width:268px;padding:14px;animation:.16s cubic-bezier(.16,1,.3,1) both dp-in;position:absolute;top:calc(100% + 24px);left:-14px;box-shadow:0 2px 6px #14324614,0 18px 44px #14324633}.dp-pop.up{top:auto;bottom:calc(100% + 24px)}@keyframes dp-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.dp-head{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.dp-month{letter-spacing:-.01em;color:#17232e;font-size:14px;font-weight:700}.dp-nav{gap:4px;display:flex}.dp-nav button{color:#4a5a68;cursor:pointer;background:#fff;border:1px solid #e7edf2;border-radius:9px;place-items:center;width:28px;height:28px;transition:background .14s,border-color .14s,color .14s;display:grid}.dp-nav button:hover{color:var(--blue-primary);background:#f4f8fb;border-color:#d7e1ea}.dp-weekdays{grid-template-columns:repeat(7,1fr);margin-bottom:4px;display:grid}.dp-weekdays span{text-align:center;text-transform:uppercase;letter-spacing:.04em;color:#9fadba;padding:4px 0;font-size:10px;font-weight:700}.dp-grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.dp-cell{aspect-ratio:1;font:inherit;color:#2b3a47;cursor:pointer;background:0 0;border:none;border-radius:9px;place-items:center;font-size:13px;transition:background .12s,color .12s;display:grid}.dp-cell.empty{cursor:default}.dp-cell:not(.empty):not(:disabled):not(.selected):hover{color:var(--blue-primary);background:#eef5fd}.dp-cell.today:not(.selected){font-weight:600;box-shadow:inset 0 0 0 1.5px #cfe0f6}.dp-cell.selected{background:var(--blue-primary);color:#fff;font-weight:600;box-shadow:0 2px 6px #2f6fed59}.dp-cell.in-range{color:var(--blue-primary);background:#eef5fd;border-radius:6px}.dp-cell.selected:hover{color:#fff;background:#245cd6}.dp-cell:disabled{color:#cdd7e0;cursor:default}.dp-foot{border-top:1px solid #eef2f6;justify-content:space-between;align-items:center;margin-top:12px;padding-top:12px;display:flex}.dp-foot button{font:inherit;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:5px 10px;font-size:12.5px;font-weight:600;transition:background .12s,color .12s}.dp-clear{color:#7b8a98}.dp-clear:hover{color:#4a5a68;background:#f4f8fb}.dp-today{color:var(--blue-primary)}.dp-today:hover{background:#eef5fd}.dp-today:disabled{color:#cdd7e0;cursor:default;background:0 0}.dp-backdrop{z-index:200;background:#0c16206b;animation:.18s both dp-fade;position:fixed;inset:0}.dp-sheet{z-index:201;padding:8px 18px calc(14px + env(safe-area-inset-bottom));cursor:default;background:#fff;border-radius:22px 22px 0 0;animation:.24s cubic-bezier(.16,1,.3,1) both dp-slide-up;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -6px 40px #14324642}.dp-sheet-inner{max-width:420px;margin:0 auto}.dp-grab{background:#14324629;border-radius:999px;width:38px;height:4px;margin:0 auto 12px;display:block}.dp-sheet .dp-month{font-size:17px}.dp-sheet .dp-nav button{border-radius:12px;width:40px;height:40px}.dp-sheet .dp-weekdays span{padding:6px 0;font-size:11px}.dp-sheet .dp-grid{gap:3px}.dp-sheet .dp-cell{border-radius:12px;font-size:16px}.dp-sheet .dp-cell:not(.empty):not(:disabled):active{color:var(--blue-primary);background:#eef5fd}.dp-sheet .dp-cell.selected:active{color:#fff;background:#245cd6}.dp-sheet .dp-foot{margin-top:14px;padding-top:14px}.dp-sheet .dp-foot button{padding:9px 14px;font-size:15px}@keyframes dp-fade{0%{opacity:0}to{opacity:1}}@keyframes dp-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.dp-backdrop,.dp-sheet{animation:none}}.hero-error{color:#c22a1e;background:#fffc;border-radius:10px;margin-top:14px;padding:7px 14px;font-size:13px;font-weight:600}.hero-fineprint{color:#5d7386;margin-top:16px;font-size:13px;font-style:italic}.browser-frame{background:#f8fbfdeb;border:1px solid #14324614;border-radius:22px;width:min(1280px,100% - 40px);margin:0 auto;overflow:hidden;box-shadow:0 2px 6px #1432460f,0 24px 70px #1432462e}.chrome{grid-template-columns:1fr minmax(0,460px) 1fr;align-items:center;padding:13px 18px;display:grid}.chrome-dots{gap:7px;display:flex}.chrome-dots span{background:#d3dde6;border-radius:50%;width:11px;height:11px}.chrome-url{color:#7b8a98;background:#e9eff4;border-radius:999px;justify-content:center;align-items:center;gap:7px;padding:7px 16px;font-size:12.5px;font-weight:500;display:flex}.chrome-url svg{opacity:.7}.app-body{background:#fff;border:1px solid #eaf0f5;border-radius:14px;grid-template-columns:230px 1fr;margin:0 10px 10px;display:grid;overflow:hidden}.rail{border-right:1px solid #eef2f6;min-width:0;height:0;min-height:100%;padding:16px 12px;overflow-y:auto}.rail-label{text-transform:uppercase;letter-spacing:.08em;color:#93a3b1;margin-bottom:10px;padding:0 12px;font-size:11px;font-weight:700}.rail-row{align-items:center;gap:2px;margin:3px 0;display:flex}.rail-name{color:#3d5266;text-align:left;background:0 0;border:none;border-radius:9px;flex:1;align-items:center;gap:9px;min-width:0;padding:8px 12px;font-size:13.5px;font-weight:500;line-height:1.3;transition:background .12s,color .12s;display:flex}.rail-name svg{opacity:.65;flex-shrink:0}.rail-text{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.rail-name:hover{color:#17232e;background:#f1f6fa}.rail-row.on .rail-name{background:var(--blue-primary);color:#fff;font-weight:600}.rail-row.on .rail-name svg{opacity:1}.rail-status{border-radius:50%;flex-shrink:0;width:9px;height:9px}.rail-status.processing{background:var(--yellow)}.rail-status.error{background:var(--red)}.rail-del{color:#9db4c4;opacity:0;background:0 0;border:none;border-radius:50%;flex-shrink:0;width:24px;height:24px;font-size:17px;line-height:1;transition:opacity .12s,background .12s,color .12s}.rail-row:hover .rail-del{opacity:1}.rail-del:hover{color:var(--red);background:#fdeceb}.trip-preview{aspect-ratio:1600/1000;background:#fff;width:100%;position:relative;overflow:hidden}.trip-preview iframe{transform-origin:0 0;border:0;display:block}.rail-open{color:#9db4c4;opacity:0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:24px;height:24px;transition:opacity .12s,background .12s,color .12s;display:flex}.rail-row:hover .rail-open,.rail-row.on .rail-open,.rail-open:focus-visible{opacity:1}.rail-open:hover{color:var(--blue-primary);background:#e8f0fe}@media (max-width:940px){.trip-preview iframe{pointer-events:none}.hero{padding:48px 20px 72px}.search-bar{flex-direction:column;align-items:stretch;gap:4px;padding:12px}.sb-divider{align-self:auto;width:100%;height:1px}.sb-field input[type=date],.dp-trigger{width:100%}.dp-pop{width:auto;left:0;right:0}.sb-cta{align-self:stretch;margin-top:6px;padding:14px}.app-body{grid-template-columns:1fr}.rail{border-bottom:1px solid #eef2f6;border-right:none;flex-wrap:wrap;align-items:center;gap:2px 4px;padding:12px;display:flex}.rail-label{width:100%;margin-bottom:6px}.rail-name{padding:6px 10px;font-size:12.5px}}.landing-footer{text-align:center;padding:90px 24px 52px}.foot-brand{letter-spacing:-.03em;color:#10222f;align-items:center;gap:8px;font-size:26px;font-weight:800;display:inline-flex}.foot-tagline{color:#33475a;margin-top:8px;font-size:14px}.foot-note{color:#59748a;margin-top:20px;font-size:12px}.btn-primary{background:var(--accent);color:#fff;border-radius:var(--radius-chip);border:none;margin-top:16px;padding:14px 28px;font-size:15px;font-weight:700;transition:transform .12s,opacity .15s}.btn-primary:hover{transform:scale(1.03)}.btn-primary:disabled{opacity:.4;cursor:default;transform:none}.avatar-stack img{object-fit:cover;background:var(--surface-alt);border:2px solid #fff;border-radius:50%;width:30px;height:30px;margin-left:-8px}.export-btn{color:var(--text-soft);border:1px solid var(--line);border-radius:var(--radius-chip);cursor:pointer;background:#fff;padding:6px 14px;font-size:13px;font-weight:600;transition:background .12s,color .12s}.export-btn:hover{background:var(--surface-alt);color:var(--text)}.upload-page{flex-direction:column;gap:16px;max-width:640px;margin:0 auto;padding:48px 24px 80px;display:flex}.upload-page h1{letter-spacing:-.03em;font-size:32px;font-weight:800}.upload-sub{color:var(--text-soft);font-size:15px;line-height:1.55}.upload-drop{border:2px dashed var(--line);color:var(--text-soft);cursor:pointer;border-radius:16px;justify-content:center;align-items:center;padding:28px;font-weight:600;transition:border-color .12s,background .12s;display:flex}.upload-drop:hover{border-color:var(--text-soft);background:var(--surface-alt)}.upload-drop input{display:none}.upload-text{border:1px solid var(--line);resize:vertical;border-radius:14px;min-height:160px;padding:14px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}.upload-msg.error{color:var(--red);font-size:14px}.trip-page{flex-direction:column;height:100vh;display:flex;overflow:hidden}.trip-header,.left-side,.right-side,.sheet{--fs-title:24px;--fs-body:14px;--fs-support:13px;--fs-label:12px;--fs-icon-nav:14px;--fs-icon-card:20px;--lh-body:1.6;--lh-support:1.5;--fw-regular:400;--fw-medium:500;--ls-ui:-.15px;--ls-label:var(--ls-ui);--text:#292929;--text-soft:#5d5d5d;--text-mute:#9e9e9e;--ink:#292929;font-family:var(--font-ui);font-weight:var(--fw-regular);letter-spacing:var(--ls-ui);color:var(--text)}.trip-header :is(h1,h2,h3),.left-side :is(h1,h2,h3),.right-side :is(h1,h2,h3),.sheet :is(h1,h2,h3){font-weight:var(--fw-medium);letter-spacing:var(--ls-ui)}.trip-header :is(button,input,textarea,select),.left-side :is(button,input,textarea,select),.right-side :is(button,input,textarea,select),.sheet :is(button,input,textarea,select){letter-spacing:var(--ls-ui)}.trip-header{z-index:1500;background:var(--surface);border-bottom:1px solid var(--line);flex-shrink:0;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;height:60px;padding:0 20px;display:grid;position:relative}.trip-header-name{min-width:0;font-size:var(--fs-title);font-weight:var(--fw-medium);color:var(--text);align-items:center;gap:6px;margin:0;display:flex}.trip-flag{font-size:var(--fs-icon-card);flex-shrink:0;line-height:1}.th-name .trip-flag{font-size:var(--fs-icon-nav)}.trip-name-text{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.trip-name-text.editable{cursor:text;border-radius:6px;margin:-2px -6px;padding:2px 6px;transition:background .12s}.trip-name-text.editable:hover,.trip-name-text.editable:focus-visible{background:var(--surface-alt)}.trip-name-input{border:1px solid var(--line);background:var(--surface);min-width:60px;max-width:100%;font:inherit;color:inherit;border-radius:6px;outline:none;margin:-2px -7px;padding:2px 6px;transition:border-color .15s}.trip-name-input:focus{border-color:var(--text)}.trip-name-sizer{visibility:hidden;pointer-events:none;white-space:pre;padding:0 14px;position:absolute}.trip-facets{justify-self:center;align-items:center;gap:8px;display:flex;position:relative}.trip-header-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.facet-pill{border:1px solid var(--line);border-radius:var(--radius-chip);background:var(--surface);height:34px;font-size:var(--fs-support);font-weight:var(--fw-medium);color:var(--text-mute);cursor:pointer;align-items:center;gap:7px;padding:0 14px;transition:border-color .15s,color .15s,background .15s;display:inline-flex}.facet-pill.set{color:var(--text)}.facet-pill:hover{background:var(--surface-alt);border-color:#dcdcdc}.facet-pill.open{border-color:var(--text);background:var(--surface);box-shadow:0 1px 2px #10111a0f,0 6px 16px #10111a1f}.facet-icon{color:var(--text-mute);flex-shrink:0;display:flex}.facet-pill.set .facet-icon{color:var(--text-soft)}.facet-value{text-overflow:ellipsis;white-space:nowrap;max-width:190px;overflow:hidden}.facet-anchor{z-index:60;pointer-events:none;transition:transform .42s cubic-bezier(.32,.72,0,1),width .42s cubic-bezier(.32,.72,0,1),height .42s cubic-bezier(.32,.72,0,1);position:absolute;top:calc(100% + 10px);left:0}.facet-anchor[data-mode=enter]{transition:none}.facet-pop{background:var(--surface);cursor:default;transform-origin:top;border:1px solid #1432461a;border-radius:16px;width:100%;height:100%;transition:opacity .2s,transform .24s cubic-bezier(.16,1,.3,1);overflow:hidden;box-shadow:0 2px 6px #14324614,0 18px 44px #14324633}.facet-pop[data-state=closed]{opacity:0;pointer-events:none;transform:translateY(-6px)scale(.97)}.facet-pop[data-state=open]{opacity:1;pointer-events:auto;transform:none}.facet-pop-inner{flex-direction:column;gap:10px;width:max-content;min-width:248px;max-width:340px;padding:14px;animation:.3s cubic-bezier(.16,1,.3,1) both facet-content-in;display:flex;position:absolute;top:0;left:0}.facet-pop-inner[data-facet=dates]{min-width:300px}@keyframes facet-content-in{0%{opacity:0;transform:translateY(6px)}40%{opacity:.4}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.facet-anchor,.facet-pop{transition:none}.facet-pop-inner{animation:none}}.facet-pop-label{font-size:var(--fs-label);font-weight:var(--fw-medium);color:var(--text-soft)}.facet-pop-foot{border-top:1px solid var(--line);justify-content:space-between;align-items:center;padding-top:10px;display:flex}.facet-pop-foot button{font-size:var(--fs-support);font-weight:var(--fw-medium);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:5px 10px;transition:background .12s,color .12s}.facet-clear{color:var(--text-soft)}.facet-clear:hover{background:var(--surface-alt);color:var(--text)}.facet-done{color:var(--blue-primary)}.facet-done:hover{background:#eef5fd}.facet-range{grid-template-columns:1fr 1fr;gap:6px;display:grid}.facet-end{border:1px solid var(--line);background:var(--surface);text-align:left;cursor:pointer;border-radius:12px;flex-direction:column;gap:1px;padding:7px 11px;transition:border-color .15s,background .15s;display:flex}.facet-end:hover{border-color:#dcdcdc}.facet-end.armed{border-color:var(--text)}.facet-end-label{font-size:var(--fs-label);color:var(--text-mute)}.facet-end-value{font-size:var(--fs-support);font-weight:var(--fw-medium);color:var(--text)}.facet-end-value.empty{font-weight:var(--fw-regular);color:var(--text-mute)}.trip-header .dp-month{font-size:var(--fs-body);font-weight:var(--fw-medium);letter-spacing:var(--ls-ui)}.trip-header .dp-weekdays span{font-size:var(--fs-label);font-weight:var(--fw-medium);letter-spacing:var(--ls-ui);color:var(--text-mute)}.trip-header :where(.dp-cell){font-size:var(--fs-support);color:var(--text)}.trip-header .dp-cell:disabled{color:var(--text-mute)}.trip-header .dp-cell.selected,.trip-header .dp-cell.today{font-weight:var(--fw-medium)}.trip-header .dp-foot button{font-size:var(--fs-support);font-weight:var(--fw-medium)}.facet-input{border:1px solid var(--line);background:var(--surface);height:36px;font:inherit;font-size:var(--fs-body);color:var(--text);border-radius:10px;outline:none;padding:0 12px;transition:border-color .15s}.facet-input:focus{border-color:var(--text)}.facet-input::placeholder{color:var(--text-mute)}.facet-ideas{flex-wrap:wrap;gap:6px;display:flex}.facet-idea{border:1px solid var(--line);background:var(--surface);border-radius:var(--radius-chip);font-size:var(--fs-support);color:var(--text-soft);cursor:pointer;padding:5px 11px;transition:background .12s,border-color .12s,color .12s}.facet-idea:hover{color:var(--text);border-color:#dcdcdc}.facet-idea.on{background:var(--ink);border-color:var(--ink);color:#fff}.facet-options{flex-direction:column;gap:2px;display:flex}.facet-option{font-size:var(--fs-support);color:var(--text);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:10px;align-items:center;gap:9px;padding:8px 10px;transition:background .12s;display:flex}.facet-option:hover{background:var(--surface-alt)}.facet-option.on{background:var(--surface-alt);font-weight:var(--fw-medium)}.trip-header .share-btn{border-radius:var(--radius-chip);border-color:var(--line);height:34px;font-size:var(--fs-support);font-weight:var(--fw-medium);color:var(--text);padding:0 14px}.pill-thumbs{flex-shrink:0;display:flex}.pill-thumbs img{object-fit:cover;background:var(--surface-alt);border:1.5px solid #fff;border-radius:6px;width:38px;height:25px;margin-left:-10px}.pill-thumbs img:first-child{margin-left:0}.pill-chevron{flex-shrink:0;font-size:12px;transition:transform .3s cubic-bezier(.32,.72,.25,1)}.pill-chevron.open{transform:rotate(180deg)}.videos-panel{contain:inline-size;opacity:0;grid-template-rows:0fr;transition:grid-template-rows .4s cubic-bezier(.32,.72,.25,1),opacity .22s;display:grid}.videos-panel-clip{min-height:0;overflow:hidden}.videos-panel-body{text-align:left;max-height:min(56vh,500px);padding:6px 14px 16px;transition:transform .4s cubic-bezier(.32,.72,.25,1);overflow-y:auto;transform:translateY(-8px)}.videos-panel .video-strip{margin-bottom:12px}.videos-panel .video-chip{box-shadow:none}.map-search{z-index:1000;flex-direction:column;gap:8px;width:min(360px,100% - 28px);display:flex;position:absolute;top:14px;left:14px}.ms-box{-webkit-backdrop-filter:blur(16px)saturate(180%);border-radius:var(--radius-chip);background:#ffffffd9;border:1px solid #fff9;align-items:center;gap:8px;padding:9px 12px;transition:box-shadow .15s,background .15s;display:flex;box-shadow:0 1px 2px #10111a0f,0 4px 14px #10111a1a}.ms-box:focus-within{background:#fffffff5;box-shadow:0 2px 6px #10111a14,0 8px 22px #10111a24}.ms-icon{color:var(--text-soft);flex-shrink:0}.ms-input{min-width:0;font:inherit;color:var(--text);background:0 0;border:none;outline:none;flex:1;font-size:13.5px;font-weight:500}.ms-input::placeholder{color:var(--text-soft);font-weight:500}.ms-clear{width:20px;height:20px;color:var(--text-soft);cursor:pointer;background:#10111a14;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;transition:background .15s,color .15s;display:inline-flex}.ms-clear:hover{color:var(--text);background:#10111a29}.ms-results{-webkit-backdrop-filter:blur(16px)saturate(180%);background:#fffffff7;border:1px solid #fff9;border-radius:16px;max-height:min(60vh,440px);padding:6px;overflow-y:auto;box-shadow:0 2px 6px #10111a14,0 12px 30px #10111a29}.ms-result{text-align:left;cursor:pointer;background:0 0;border:none;border-radius:10px;align-items:center;gap:10px;width:100%;padding:8px 10px;transition:background .12s;display:flex}.ms-result:hover{background:#10111a0d}.ms-result-emoji{flex-shrink:0;font-size:16px;line-height:1}.ms-result-text{flex-direction:column;gap:1px;min-width:0;display:flex}.ms-result-name{color:var(--text);white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:600;overflow:hidden}.ms-result-sub{color:var(--text-soft);white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;font-weight:500;overflow:hidden}.ms-result.pinned .ms-result-sub{text-transform:capitalize}.ms-empty{color:var(--text-soft);padding:12px 10px;font-size:13px}.ms-group{letter-spacing:.04em;text-transform:uppercase;color:var(--text-soft);padding:8px 10px 4px;font-size:10.5px;font-weight:700}.ms-group:not(:first-child){border-top:1px solid var(--line);margin-top:4px}.ms-pin-tag{opacity:.9;flex-shrink:0;margin-left:auto;font-size:13px;line-height:1}.ms-geo-icon{width:18px;color:var(--text-soft);justify-content:center;align-items:center;display:inline-flex}.map-progress{z-index:1000;-webkit-backdrop-filter:blur(16px)saturate(180%);border-radius:var(--radius-chip);color:#6b5200;white-space:nowrap;text-overflow:ellipsis;background:#ffffffd1;border:1px solid #fff9;max-width:calc(100% - 32px);padding:8px 16px;font-size:13px;font-weight:600;position:absolute;bottom:16px;left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 1px 2px #10111a0f,0 6px 18px #10111a1f}.trip-body{flex:1;min-height:0;display:flex}.content-panel{background:var(--bg);flex:1;min-width:0;height:100%;padding:24px 24px 56px 32px;overflow-y:auto}.progress-banner{background:var(--yellow-soft);border:1px solid var(--yellow);color:#6b5200;border-radius:14px;margin-bottom:16px;padding:12px 14px;font-size:13px;line-height:1.5}.video-strip{flex-direction:column;gap:8px;margin-bottom:20px;display:flex}.video-chip{border:1px solid var(--line);background:var(--surface);font-size:var(--fs-support);box-shadow:var(--shadow-soft);border-radius:14px;align-items:center;gap:10px;padding:8px 10px;display:flex}.video-chip.interactive{cursor:pointer;transition:border-color .12s,background .12s}.video-chip.interactive:hover{border-color:var(--text);background:var(--surface-alt)}.video-chip.pinned{border-color:var(--text);background:var(--yellow-soft)}.video-chip img.thumb{object-fit:cover;background:var(--surface-alt);border-radius:8px;width:52px;height:32px}.video-chip .vmeta{flex:1;min-width:0}.video-chip .vtitle{font-weight:var(--fw-medium);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.video-chip .vchannel{color:var(--text-soft);white-space:nowrap;text-overflow:ellipsis;margin-top:1px;font-size:12px;overflow:hidden}.video-chip .vstatus{font-size:14px}.add-videos textarea{min-height:60px}.btn-secondary{background:var(--accent);color:#fff;border-radius:var(--radius-chip);border:none;margin-top:8px;padding:10px 18px;font-size:13px;font-weight:700;transition:transform .12s,opacity .15s}.btn-secondary:hover{transform:scale(1.03)}.btn-secondary:disabled{opacity:.4;cursor:default;transform:none}.pins-view{padding:16px 16px 0}.stay-strip{background:var(--surface-alt);border-radius:var(--radius-card,14px);margin:10px 0;padding:12px 14px}.stay-strip-head{font-size:var(--fs-label);font-weight:var(--fw-medium);color:var(--text-soft);text-transform:uppercase;letter-spacing:.04em;margin-bottom:8px}.stay-row{align-items:flex-start;gap:9px;display:flex}.stay-row+.stay-row{border-top:1px solid #1b2b3a12;margin-top:9px;padding-top:9px}.stay-index,.stayplan-n{background:var(--ink);color:#fff;width:18px;height:18px;font-size:11px;font-weight:var(--fw-medium);border-radius:50%;flex:none;justify-content:center;align-items:center;margin-top:1px;display:inline-flex}.stay-body{min-width:0}.stay-area{font-size:13px;font-weight:var(--fw-medium);color:var(--ink)}.stay-nights{color:var(--text-soft);margin-left:7px;font-weight:400}.stay-why{color:#3d5266;margin-top:2px;font-size:12.5px;line-height:1.5}.stayplan{border-radius:var(--radius-card,14px);box-shadow:var(--shadow-soft);background:#fff;margin:0 0 14px;overflow:hidden}.stayplan-toggle{text-align:left;cursor:pointer;width:100%;color:var(--ink);background:0 0;border:none;align-items:center;gap:9px;padding:12px 14px;display:flex}.stayplan-title{font-size:var(--fs-support);font-weight:var(--fw-medium)}.stayplan-sub{font-size:var(--fs-label);color:var(--text-soft);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.stayplan-caret{color:var(--text-soft);margin-left:auto;font-size:11px}.stayplan-body{opacity:0;max-height:0;transition:max-height .32s cubic-bezier(.32,.72,.25,1),opacity .2s,padding .32s cubic-bezier(.32,.72,.25,1);overflow:hidden}.stayplan.open .stayplan-body{opacity:1;max-height:2000px;padding:2px 14px 13px}.stayplan-base+.stayplan-base{border-top:1px solid #1b2b3a14;margin-top:13px;padding-top:13px}.stayplan-base-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.stayplan-area{font-size:13px;font-weight:var(--fw-medium);color:var(--ink)}.stayplan-meta{font-size:var(--fs-label);color:var(--text-soft)}.stayplan-why{color:#3d5266;margin:5px 0 0;font-size:12.5px;line-height:1.55}.stayplan-warn{background:var(--yellow-soft,#fdf6e3);color:#6b5518;border-radius:9px;margin:6px 0 0;padding:7px 10px;font-size:12.5px;line-height:1.5}.stayplan-picks{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.stayplan-pick{font-size:var(--fs-label);font-weight:var(--fw-medium);color:var(--ink);cursor:pointer;background:#f1f3f6;border:none;border-radius:999px;align-items:center;gap:5px;padding:5px 10px;transition:background .15s;display:inline-flex}.stayplan-pick:hover{background:#e6e9ee}.stayplan-pick-n{opacity:.5;font-variant-numeric:tabular-nums}.briefing{border-radius:var(--radius-card,14px);box-shadow:var(--shadow-soft);background:#fff;margin-bottom:16px;overflow:hidden}.briefing-toggle{text-align:left;cursor:pointer;width:100%;color:var(--ink);background:0 0;border:none;align-items:center;gap:10px;padding:13px 15px;display:flex}.briefing-title{font-size:var(--fs-support);font-weight:var(--fw-medium)}.briefing-sub{font-size:var(--fs-label);color:var(--text-soft);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.briefing-chevron{opacity:.6;flex:none;margin-left:auto;transition:transform .24s cubic-bezier(.32,.72,.25,1)}.briefing.open .briefing-chevron{transform:rotate(180deg)}.briefing-body{opacity:0;max-height:0;transition:max-height .34s cubic-bezier(.32,.72,.25,1),opacity .22s,padding .34s cubic-bezier(.32,.72,.25,1);overflow:hidden}.briefing.open .briefing-body{opacity:1;max-height:4000px;padding:2px 15px 14px}.briefing-item+.briefing-item{border-top:1px solid #1b2b3a14;margin-top:16px;padding-top:16px}.briefing-item-head{align-items:center;gap:8px;display:flex}.briefing-emoji{font-size:14px;line-height:1}.briefing-label{font-size:var(--fs-support);font-weight:var(--fw-medium);color:var(--ink);margin:0}.briefing-points{flex-direction:column;gap:7px;margin:7px 0 0;padding:0;list-style:none;display:flex}.briefing-points li{color:#3d5266;padding-left:15px;font-size:13px;line-height:1.55;position:relative}.briefing-points li:before{content:"";background:#1b2b3a4d;border-radius:50%;width:4px;height:4px;position:absolute;top:8px;left:3px}.briefing-sources{flex-wrap:wrap;gap:6px;margin-top:9px;display:flex}.briefing-source{max-width:190px;font-size:var(--fs-label);font-weight:var(--fw-medium);color:var(--text-soft);background:#f1f3f6;border-radius:999px;align-items:center;gap:5px;padding:4px 9px 4px 5px;text-decoration:none;transition:background .15s,color .15s;display:inline-flex}.briefing-source:hover{color:var(--ink);background:#e6e9ee}.briefing-source img{object-fit:cover;border-radius:50%;flex:none;width:16px;height:16px}.briefing-source span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.briefing-foot{font-size:var(--fs-label);color:var(--text-soft);margin:16px 0 0;line-height:1.5}.pins-filters{margin-bottom:16px}.pf-toggle{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-chip);font-size:var(--fs-support);font-weight:var(--fw-medium);color:var(--text);cursor:pointer;align-items:center;gap:7px;padding:7px 13px;transition:background .15s,border-color .15s,color .15s,box-shadow .15s;display:inline-flex}.pf-toggle:hover{border-color:var(--ink)}.pf-toggle.active{background:var(--ink);border-color:var(--ink);color:#fff;box-shadow:0 2px 8px #10111a38}.pf-funnel{opacity:.85}.pf-count{min-width:16px;height:16px;font-size:var(--fs-label);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums;background:#ffffff47;border-radius:8px;justify-content:center;align-items:center;padding:0 4px;display:inline-flex}.pf-chevron{opacity:.7;transition:transform .24s cubic-bezier(.32,.72,.25,1)}.pins-filters.open .pf-chevron{transform:rotate(180deg)}.pf-tray{opacity:0;flex-wrap:wrap;gap:7px;max-height:0;transition:max-height .3s cubic-bezier(.32,.72,.25,1),opacity .2s,transform .26s cubic-bezier(.32,.72,.25,1),margin-top .3s cubic-bezier(.32,.72,.25,1);display:flex;overflow:hidden;transform:translateY(-4px)}.pins-filters.open .pf-tray{opacity:1;max-height:320px;margin-top:10px;transform:translateY(0)}.pf-chip,.pf-clear{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-chip);font-size:var(--fs-support);font-weight:var(--fw-medium);color:var(--text);cursor:pointer;white-space:nowrap;align-items:center;gap:5px;padding:6px 12px;transition:background .15s,border-color .15s,color .15s,box-shadow .15s;display:inline-flex}.pf-chip{text-transform:capitalize}.pf-chip:hover,.pf-clear:hover{border-color:var(--ink)}.pf-chip.on{background:var(--ink);border-color:var(--ink);color:#fff;box-shadow:0 2px 8px #10111a38}.pf-emoji{font-size:var(--fs-label)}.pf-n{font-weight:var(--fw-medium);opacity:.55;font-variant-numeric:tabular-nums}.pf-chip.on .pf-n{opacity:.7}.pf-clear{color:var(--text-soft)}.spot-grid{grid-template-columns:repeat(3,1fr);gap:24px 16px;display:grid}@media (max-width:1280px){.spot-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:900px){.spot-grid{grid-template-columns:1fr}}.spot-tile{text-align:left;color:var(--text);background:0 0;border:none;border-radius:18px;flex-direction:column;min-width:0;display:flex;position:relative}.spot-tile .tile-photo{aspect-ratio:4/3;background:var(--surface-alt);touch-action:pan-y;border-radius:16px;width:100%;transition:box-shadow .15s;position:relative;overflow:hidden}.spot-tile:hover .tile-photo{box-shadow:var(--shadow)}.spot-tile.selected .tile-photo{outline:3px solid var(--text);outline-offset:-3px}.spot-tile .tile-photo img{object-fit:cover;width:100%;height:100%;transition:transform .2s;display:block}.spot-tile:hover .tile-photo img{transform:scale(1.04)}.tile-photo-fallback{justify-content:center;align-items:center;width:100%;height:100%;font-size:42px;display:flex}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{background:linear-gradient(100deg, var(--surface-alt) 40%, #ececf0 50%, var(--surface-alt) 60%);background-size:200% 100%;animation:1.4s linear infinite shimmer}@media (prefers-reduced-motion:reduce){.skeleton{animation:none}}.tile-photo-loading{background:linear-gradient(100deg, var(--surface-alt) 40%, #ececf0 50%, var(--surface-alt) 60%);background-size:200% 100%;width:100%;height:100%;animation:1.1s linear infinite shimmer}.car-shimmer{background:linear-gradient(100deg, var(--surface-alt) 40%, #ececf0 50%, var(--surface-alt) 60%);background-size:200% 100%;animation:1.1s linear infinite shimmer;position:absolute;inset:0}.sk-facet{border-radius:var(--radius-chip);height:34px}.sk-pill-videos{border-radius:999px;width:96px;height:15px;margin:9px 16px}.sk-export{border-radius:var(--radius-chip);justify-self:end;width:78px;height:32px}.skeleton-tile{pointer-events:none}.skeleton-tile .tile-photo{border:none}.sk-line{border-radius:6px;height:12px;margin-top:8px}.sk-line.title{width:62%;height:14px;margin-top:12px}.sk-line.sub{width:44%}.sk-line.desc{width:86%}.map-frame.skeleton{border:1px solid var(--line)}.car-arrow{width:30px;height:30px;box-shadow:var(--shadow-soft);color:var(--text);opacity:0;z-index:2;cursor:pointer;background:#fffffff2;border-radius:50%;justify-content:center;align-items:center;transition:opacity .15s,transform .1s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.car-arrow.left{left:10px}.car-arrow.right{right:10px}.spot-tile:hover .car-arrow{opacity:1}.car-arrow:hover{transform:translateY(-50%)scale(1.1)}.car-dots{z-index:2;gap:5px;display:flex;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}.car-dots .dot{background:#ffffff8c;border-radius:50%;width:6px;height:6px;box-shadow:0 0 2px #00000040}.car-dots .dot.on{background:#fff}.spot-tile .tile-meta{min-width:0;margin-top:10px}.spot-tile .tile-name{font-weight:var(--fw-medium);font-size:var(--fs-body);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.spot-tile .tile-sub{color:var(--text-soft);font-size:var(--fs-support);margin-top:2px}.spot-tile .tile-desc{color:var(--text-soft);font-size:var(--fs-support);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin-top:6px;line-height:1.45;display:-webkit-box;overflow:hidden}.spot-tile .avatar-stack{margin-top:8px;display:flex}.empty-area{text-align:center;color:var(--text-soft);font-size:var(--fs-body);border:1px dashed #d9d9de;border-radius:18px;padding:40px 24px}.map-side{background:var(--bg);width:42%;min-width:380px;height:100%;padding:24px 28px 28px 6px}.map-frame{border:1px solid var(--line);width:100%;height:100%;box-shadow:var(--shadow-soft);border-radius:24px;position:relative;overflow:hidden}.map-frame .leaflet-container{width:100%;height:100%;font:inherit;background:var(--surface-alt)}.leaflet-top.leaflet-right .leaflet-control{margin:16px 16px 0 0}.map-frame .leaflet-control-zoom.leaflet-bar{box-shadow:var(--shadow);border:none;border-radius:12px;overflow:hidden}.map-frame .leaflet-control-zoom.leaflet-bar a{color:#222;background:#fff;border:none;width:40px;height:40px;font-size:18px;font-weight:600;line-height:40px;transition:background .12s}.map-frame .leaflet-control-zoom a:hover{background:var(--surface-alt);color:var(--text)}.map-frame .leaflet-control-zoom a.leaflet-control-zoom-in{border-bottom:1px solid var(--line);border-radius:12px 12px 0 0}.map-frame .leaflet-control-zoom a.leaflet-control-zoom-out{border-radius:0 0 12px 12px}.map-frame .leaflet-control-zoom a.leaflet-disabled{color:#c7c7cc;background:#fff}.pin-pill{border-radius:var(--radius-chip);letter-spacing:-.01em;color:var(--text);box-shadow:var(--shadow);white-space:nowrap;transform-origin:bottom;background:#fff;border:.5px solid #0000000f;align-items:center;padding:6px 9px;font-size:13px;font-weight:700;transition:transform .1s;display:inline-flex}.pin-emoji{line-height:1}.pin-pill.covered{background:#f2f8f2;border-color:#2d7a3e47}.pin-check{color:#2d7a3e;margin-left:3px;font-size:11px;font-weight:800;line-height:1}.pin-pill.selected .pin-check,.pin-pill.highlight .pin-check{color:#00000080}.pin-name{opacity:0;max-width:0;margin:0;transition:max-width .14s,opacity .14s,margin .14s;overflow:hidden}.pin-count{opacity:.6;margin-left:4px}.leaflet-marker-icon:hover .pin-name,.pin-pill.selected .pin-name,.pin-pill.highlight .pin-name{opacity:1;max-width:220px;margin:0 1px 0 5px}.leaflet-marker-icon:hover .pin-pill{transform:scale(1.08)}.leaflet-marker-icon:hover{z-index:10000!important}.pin-pill.selected{background:var(--yellow);color:#111;border-color:#0000001f}.pin-pill.highlight{background:var(--yellow);color:#111;border-color:#0000001f;transform:scale(1.08)}.pin-pill.dimmed{opacity:.3}.pin-pill.search-match{border-color:var(--ink);animation:1.4s ease-in-out infinite search-pulse;box-shadow:0 0 0 3px #10111a24,0 4px 14px #10111a33}@keyframes search-pulse{0%,to{box-shadow:0 0 0 3px #10111a24,0 4px 14px #10111a33}50%{box-shadow:0 0 0 6px #10111a14,0 4px 16px #10111a42}}@media (prefers-reduced-motion:reduce){.pin-pill.search-match{animation:none}}.search-pin{white-space:nowrap;align-items:center;gap:6px;display:flex;transform:translate(-50%,-50%)}.search-pin-dot{background:#e0483d;border:2.5px solid #fff;border-radius:50%;flex-shrink:0;width:14px;height:14px;box-shadow:0 2px 6px #10111a59}.search-pin-label{color:var(--text);background:#fffffff2;border-radius:8px;padding:3px 8px;font-size:12px;font-weight:600;box-shadow:0 1px 2px #10111a1a,0 4px 12px #10111a24}.spot-card{background:var(--surface);position:relative}.spot-card .card-body{padding:18px 22px 36px}.spot-card .close{width:32px;height:32px;box-shadow:var(--shadow-soft);color:var(--text);z-index:2;background:#fffffff2;border:none;border-radius:50%;place-items:center;transition:transform .12s;display:grid;position:absolute;top:28px;right:28px}.spot-card .close:hover{transform:scale(1.08)}.spot-card .card-photo{background:var(--surface-alt);touch-action:pan-y;border-radius:20px;height:240px;margin:16px 16px 0;position:relative;overflow:hidden;box-shadow:0 2px 6px #10111a0f,0 12px 28px #10111a17}.spot-card:hover .car-arrow{opacity:1}.spot-card .card-photo img{object-fit:cover;width:100%;height:100%;display:block}.spot-card .photo-credit{font-size:var(--fs-label);font-weight:var(--fw-medium);color:#fff;border-radius:var(--radius-chip);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#00000080;align-items:center;gap:6px;max-width:75%;padding:4px 10px;display:inline-flex;position:absolute;bottom:8px;left:10px}.spot-card .photo-credit svg{flex-shrink:0}.spot-card .photo-credit span{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.gmaps-btn{border-radius:var(--radius-chip);font-size:var(--fs-support);font-weight:var(--fw-medium);color:var(--text);background:var(--surface);border:1px solid #10111a1a;align-items:center;gap:7px;margin-top:12px;padding:9px 15px;transition:border-color .15s,box-shadow .15s,transform .15s;display:inline-flex;box-shadow:0 1px 2px #10111a0a}.gmaps-btn:hover{border-color:#10111a38;transform:translateY(-1px);box-shadow:0 3px 10px #10111a14}.gmaps-btn svg{color:var(--text-soft)}.know-section{background:var(--surface);border:1px solid #10111a0f;border-radius:16px;margin-top:14px;padding:13px 15px;box-shadow:0 1px 2px #10111a0a,0 5px 14px #10111a0d}.know-label{font-size:var(--fs-label);font-weight:var(--fw-medium);text-transform:uppercase;letter-spacing:var(--ls-label);color:var(--text-soft);margin-bottom:8px}.know-item{font-size:var(--fs-body);line-height:var(--lh-body);color:var(--text);align-items:baseline;gap:10px;padding:3px 0;display:flex}.know-item .know-icon{background:var(--text-soft);border-radius:50%;flex-shrink:0;width:5px;height:5px;margin-top:8px}.spot-card h2{font-size:var(--fs-title);font-weight:var(--fw-medium);margin:0;line-height:1.25}.spot-card .desc{font-size:var(--fs-body);line-height:var(--lh-body);color:var(--text-soft)}.spot-card .rec-label{border-top:1px solid var(--line);font-size:var(--fs-label);font-weight:var(--fw-medium);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--text-soft);margin-top:18px;padding-top:16px}.creator-row{border-radius:14px;align-items:center;gap:10px;margin:6px -10px 0;padding:9px 10px;transition:background .12s;display:flex}.creator-row:hover{background:var(--surface-alt)}.creator-row img{object-fit:cover;background:var(--surface-alt);border-radius:50%;flex-shrink:0;width:38px;height:38px}.creator-row .cmeta{flex:1;min-width:0}.creator-row .cname{font-weight:var(--fw-medium);font-size:var(--fs-body)}.creator-row .cquote{color:var(--text-soft);font-size:var(--fs-support);line-height:var(--lh-support);-webkit-line-clamp:6;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.creator-row .play{background:var(--text);color:#fff;font-size:var(--fs-label);font-weight:var(--fw-medium);border-radius:var(--radius-chip);white-space:nowrap;align-items:center;gap:5px;padding:5px 10px;display:inline-flex}@keyframes spin{to{transform:rotate(360deg)}}.building-page{flex-direction:column;display:flex}.building-center{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;width:100%;padding:8px 24px 64px;display:flex}.building-title{letter-spacing:-.03em;color:#17232e;max-width:680px;font-size:clamp(28px,3.4vw,40px);font-weight:600;line-height:1.1}.building-sub{color:#3d5266;max-width:520px;margin-top:12px;font-size:15.5px;line-height:1.6}.building-sub+.nav-pill{margin-top:22px}.building-actions{align-items:center;gap:10px;margin-top:22px;display:flex}.nav-pill.primary{color:#fff;background:var(--ink);border-color:#0000}.nav-pill.primary:hover{background:#0f1b26}.nav-pill.primary:disabled{opacity:.6;cursor:default}.flight-scene{color:#10222f4d;width:340px;max-width:100%;height:120px;margin-bottom:4px;position:relative}.scene-pin{transform-box:fill-box;transform-origin:50% 100%;opacity:0;transform:scale(0)}.scene-pin.p1{animation:7s linear infinite pin-pop-1}.scene-pin.p2{animation:7s linear infinite pin-pop-2}.scene-pin.p3{animation:7s linear infinite pin-pop-3}@keyframes pin-pop-1{0%,27%{opacity:0;transform:scale(0)}32%{opacity:1;transform:scale(1.18)}35%{transform:scale(1)}93%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.5)}}@keyframes pin-pop-2{0%,47%{opacity:0;transform:scale(0)}52%{opacity:1;transform:scale(1.18)}55%{transform:scale(1)}93%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.5)}}@keyframes pin-pop-3{0%,67%{opacity:0;transform:scale(0)}72%{opacity:1;transform:scale(1.18)}75%{transform:scale(1)}93%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.5)}}.scene-plane{display:none}@supports (offset-path:path("M0 0 L10 10")){.scene-plane{offset-path:path("M20 104 C 100 16, 240 16, 320 104");offset-rotate:auto;filter:drop-shadow(0 4px 8px #10222f33);animation:7s linear infinite plane-fly;display:block;position:absolute;top:0;left:0}}@keyframes plane-fly{0%{offset-distance:0%;opacity:0}6%{opacity:1}94%{opacity:1}to{offset-distance:100%;opacity:0}}@media (prefers-reduced-motion:reduce){.scene-plane{display:none}.scene-pin{opacity:1;animation:none;transform:scale(1)}}.building-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);text-align:left;background:#ffffffd1;border:1px solid #14324614;border-radius:22px;width:min(560px,100%);margin-top:30px;padding:22px 24px;box-shadow:0 1px 2px #1432460f,0 14px 40px #14324624}.bstep{gap:14px;display:flex}.bstep-rail{flex-direction:column;flex-shrink:0;align-items:center;display:flex}.bstep-icon{border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:12.5px;font-weight:700;display:flex}.bstep.done .bstep-icon{color:#178a45;background:#ddf3e6}.bstep.active .bstep-icon{background:var(--blue-primary);color:#fff}.bstep.todo .bstep-icon{color:#7b8a98;background:#14324612}.bstep-line{background:#1432461a;border-radius:1px;flex:1;width:2px;min-height:16px;margin:4px 0}.bstep.done .bstep-line{background:#b9e6ca}.bstep-body{flex:1;min-width:0;padding-bottom:18px}.bstep:last-child .bstep-body{padding-bottom:0}.bstep-title{letter-spacing:-.01em;color:#17232e;align-items:center;gap:8px;font-size:15px;font-weight:700;display:flex}.bstep.todo .bstep-title{color:#6b7d8d}.bstep-next{text-transform:uppercase;letter-spacing:.07em;color:#8296a7;border-radius:var(--radius-chip);background:#1432460f;padding:3px 8px;font-size:10px;font-weight:700}.bstep-desc{color:#4c6275;margin-top:3px;font-size:13.5px;line-height:1.55}.bstep.todo .bstep-desc{color:#7f92a2}.bstep-live{color:#2456bd;background:#2f6fed17;border-radius:9px;margin-top:9px;padding:6px 10px;font-size:12.5px;font-weight:600;display:inline-block}.bstep-elapsed{font-variant-numeric:tabular-nums;opacity:.72;border-left:1px solid #2456bd38;margin-left:7px;padding-left:7px;font-weight:500}.bstep-pulse{background:#fff;border-radius:50%;width:8px;height:8px;position:relative}.bstep-pulse:after{content:"";border:2px solid #ffffffbf;border-radius:50%;animation:1.6s ease-out infinite pulse-ring;position:absolute;inset:-6px}@keyframes pulse-ring{0%{opacity:1;transform:scale(.4)}to{opacity:0;transform:scale(1.1)}}@media (prefers-reduced-motion:reduce){.bstep-pulse:after{opacity:.6;animation:none}}.bstep-meter{align-items:center;gap:10px;margin-top:10px;display:flex}.bstep-bar{border-radius:var(--radius-chip);background:#14324614;flex:1;height:6px;overflow:hidden}.bstep-bar-fill{border-radius:var(--radius-chip);background:linear-gradient(90deg, #6b98f4, var(--blue-primary));height:100%;transition:width .5s}.bstep-bar-label{color:#5d7386;white-space:nowrap;font-size:12px;font-weight:600}.building-videos{text-align:left;flex-direction:column;gap:8px;width:min(560px,100%);margin-top:20px;display:flex}.bvideos-label{text-transform:uppercase;letter-spacing:.08em;color:#52697d;margin:2px 2px 0;font-size:11px;font-weight:800}.bvideo{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffad;border:1px solid #14324612;border-radius:14px;align-items:center;gap:12px;padding:8px 12px 8px 8px;display:flex}.bvideo-thumb{object-fit:cover;background:#14324614;border-radius:8px;flex-shrink:0;width:58px;height:36px}.bvideo-meta{flex:1;min-width:0}.bvideo-title{color:#17232e;white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.bvideo-sub{color:#5d7386;white-space:nowrap;text-overflow:ellipsis;margin-top:1px;font-size:12px;overflow:hidden}.bvideo-status{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;display:flex}.bvideo-status.done{color:#178a45;background:#ddf3e6}.bvideo-status.error{color:var(--red);background:#fdeceb;font-size:12px;font-weight:800}.bvideo-spin{border:2px solid #14324624;border-top-color:var(--blue-primary);border-radius:50%;width:14px;height:14px;animation:.9s linear infinite spin}.bvideo-queued{background:#14324629;border-radius:50%;width:8px;height:8px}.building-hint{color:#51687c;margin-top:24px;font-size:12.5px;font-style:italic}.trip-body{position:relative}.left-side{background:var(--surface);border-right:1px solid var(--line);flex-direction:column;flex-shrink:0;width:clamp(340px,23vw,480px);min-width:320px;height:100%;display:flex}.left-side .planner-panel{border-right:none;flex:1;width:auto;min-width:0;max-width:none;min-height:0}.planner-panel{background:var(--surface);flex-direction:column;display:flex}.planner-reopen{border:1px solid var(--line);background:var(--surface);height:46px;font-size:var(--fs-support);font-weight:var(--fw-medium);color:var(--text);cursor:pointer;border-radius:14px;margin:14px;transition:border-color .15s}.planner-reopen:hover{border-color:var(--ink)}.right-side{background:var(--surface);border-left:1px solid var(--line);flex-grow:0;flex-shrink:0;width:480px;height:100%;overflow-y:auto}.map-side{background:var(--bg);flex:1;width:auto;min-width:0;padding:18px}.rail-resizer{cursor:col-resize;touch-action:none;z-index:5;flex:none;justify-content:center;align-self:stretch;align-items:center;width:12px;margin:0 -6px;display:flex}.rail-resizer-grip{background:#10111a24;border-radius:4px;width:4px;height:40px;transition:background .15s,height .15s}.rail-resizer:hover .rail-resizer-grip,.rail-resizer.resizing .rail-resizer-grip{background:var(--ink);height:64px}.trip-page.resizing{-webkit-user-select:none;user-select:none;cursor:col-resize}.trip-page.resizing .map-side{pointer-events:none}@media (max-width:1360px){.left-side{width:300px;min-width:280px}.right-side{width:400px;min-width:360px}.right-side .spot-grid{grid-template-columns:1fr}}.planner-scroll{flex-direction:column;flex:1;gap:16px;padding:18px 18px 12px;display:flex;overflow:hidden auto}.ci{flex-direction:column;gap:12px;display:flex}.ci-title{font-size:var(--fs-title);font-weight:var(--fw-medium);color:var(--text);margin:2px 0 0;line-height:1.25}.ci-strip{padding:6px 0 2px;display:flex}.ci-strip img{object-fit:cover;background:var(--surface-alt);border:3px solid #fff;border-radius:10px;width:58px;height:74px;margin-right:-10px;box-shadow:0 6px 16px #14324629}.ci-strip img:nth-child(odd){transform:rotate(-4deg)}.ci-strip img:nth-child(2n){transform:rotate(3deg)}.ci-turn{flex-direction:column;gap:10px;display:flex}.ci-q{font-size:var(--fs-body);color:var(--text);line-height:1.6}.ci-a{background:var(--ink);color:#fff;max-width:86%;font-size:var(--fs-support);border-radius:18px 18px 6px;align-self:flex-end;padding:10px 15px;line-height:1.5}.ci-chips{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.suggestion-chip.on{background:var(--ink);border-color:var(--ink);color:#fff}.ci-done{background:var(--ink);color:#fff;font-size:var(--fs-support);font-weight:var(--fw-medium);cursor:pointer;border:none;border-radius:999px;padding:8px 14px}.ci-skip{font-size:var(--fs-support);color:var(--text-soft);cursor:pointer;background:0 0;border:none;padding:8px 10px}.ci-hint{font-size:var(--fs-label);color:var(--text-soft)}.planner-scroll>.pm{min-width:0}.planner-intro p{font-size:var(--fs-body);color:var(--text-soft);margin:4px 2px 10px;line-height:1.5}.planner-suggestions{flex-wrap:wrap;gap:8px;display:flex}.suggestion-chip{border:1px solid var(--line);border-radius:var(--radius-chip);background:var(--surface);cursor:pointer;font-size:var(--fs-support);color:var(--text);padding:7px 12px;transition:border-color .15s}.suggestion-chip:hover{border-color:var(--ink)}.planner-nudge{text-align:center;flex-direction:column;align-items:center;padding:22px 6px 6px;display:flex}.nudge-stack{width:100%;height:182px;margin-bottom:20px;position:relative}.nudge-card{object-fit:cover;background:var(--surface-alt);width:116px;height:146px;transform:translate(calc(-50% + var(--tx,0px)), calc(-50% + var(--ty,0px))) rotate(var(--rot,0deg));border:5px solid #fff;border-radius:16px;animation:.6s cubic-bezier(.16,1,.3,1) both nudge-settle;position:absolute;top:50%;left:50%;box-shadow:0 2px 4px #14324614,0 16px 36px #1432462e}.nudge-card.left{--tx:-62px;--ty:-7px;--rot:-9deg;animation-delay:50ms}.nudge-card.right{--tx:62px;--ty:5px;--rot:8deg;animation-delay:.13s}.nudge-card.front{--tx:0px;--rot:-2deg;width:128px;height:160px;animation-delay:.22s}@keyframes nudge-settle{0%{opacity:0;transform:translate(calc(-50% + var(--tx,0px)), calc(-50% + var(--ty,0px) + 20px)) rotate(0deg)}to{opacity:1;transform:translate(calc(-50% + var(--tx,0px)), calc(-50% + var(--ty,0px))) rotate(var(--rot,0deg))}}.nudge-title{font-size:var(--fs-title);font-weight:var(--fw-medium);color:var(--text);margin-bottom:8px}.nudge-title em{font-weight:var(--fw-medium)}.nudge-sub{font-size:var(--fs-support);color:var(--text-soft);max-width:290px;margin-bottom:18px;line-height:1.55}.nudge-cta{background:var(--blue-primary);color:#fff;width:min(100%,250px);font-size:var(--fs-body);font-weight:var(--fw-medium);border-radius:999px;justify-content:center;align-items:center;padding:13px 22px;transition:background .15s,transform .12s;display:inline-flex;box-shadow:0 1px 2px #14324633,0 10px 24px #2f6fed4d}.nudge-cta:hover{background:#245cd6;transform:scale(1.02)}.nudge-alt{font-size:var(--fs-support);color:var(--text-soft);background:0 0;border:none;border-radius:8px;margin-top:12px;padding:5px 8px;transition:color .15s}.nudge-alt:hover{color:var(--text)}@media (prefers-reduced-motion:reduce){.nudge-card{animation:none}}.pm{flex-direction:column;gap:6px;display:flex}.pm-user{align-items:flex-end}.pm-user .pm-text{background:var(--ink);color:#fff;max-width:86%;font-size:var(--fs-body);white-space:pre-wrap;overflow-wrap:anywhere;border-radius:18px 18px 6px;padding:10px 15px;line-height:1.5}.pm-assistant .pm-text{color:var(--text);max-width:100%;font-size:var(--fs-body);overflow-wrap:anywhere;line-height:1.65}.pm-assistant .pm-text strong{font-weight:var(--fw-medium)}.pm-text p,.pm-text ul,.pm-text ol{margin:0 0 .7em}.pm-text>:last-child{margin-bottom:0}.pm-text ul,.pm-text ol{padding-left:1.4em}.pm-text li{margin-bottom:.3em}.pm-text li:last-child{margin-bottom:0}.pm-h{color:var(--text);letter-spacing:var(--ls-ui)}.pm-h1{font-size:var(--fs-title);font-weight:var(--fw-medium);margin:.2em 0 .55em;line-height:1.25}.pm-h2{font-size:var(--fs-body);font-weight:var(--fw-medium);margin:.9em 0 .4em}.pm-h:first-child{margin-top:0}.pm-rule{border:none;border-top:1px solid var(--line);margin:1.1em 0}.pin-strip{grid-template-columns:repeat(3,1fr);gap:6px;margin:0 0 .8em;display:grid}.pin-shot{background:var(--surface-alt);aspect-ratio:1;cursor:pointer;border:none;border-radius:10px;padding:0;transition:transform .15s,box-shadow .15s;position:relative;overflow:hidden}.pin-shot img{object-fit:cover;width:100%;height:100%;display:block}.pin-shot:hover{transform:translateY(-1px);box-shadow:0 4px 14px #10111a29}.pin-more{border-radius:var(--radius-chip);color:#fff;min-width:26px;height:20px;font-size:var(--fs-label);font-weight:var(--fw-medium);background:#10111ab8;place-items:center;padding:0 6px;display:grid;position:absolute;bottom:6px;right:6px}.pm-landed{font-size:var(--fs-label);font-weight:var(--fw-medium);color:var(--text-soft);text-align:center;justify-content:center;align-items:center;gap:8px;margin:6px 0;display:flex}.pm-landed:before,.pm-landed:after{content:"";background:#1b2b3a1a;flex:1;height:1px}.pm-landed-dot{background:#2f9e63;border-radius:50%;flex:none;width:6px;height:6px}.pm-tool{font-size:var(--fs-support);font-weight:var(--fw-medium);color:var(--text-soft);background:var(--surface-alt);border:1px solid var(--line);border-radius:var(--radius-chip);align-items:center;gap:7px;width:fit-content;padding:6px 12px;display:inline-flex}.pm-tool.working{animation:1.4s ease-in-out infinite pm-pulse}.pm-tool.error{color:var(--red);background:#fff5f4;border-color:#f3d6d3}.pm-event{background:var(--surface-alt);border:1px solid var(--line);border-radius:14px;align-items:flex-start;gap:10px;width:fit-content;max-width:100%;margin:6px 0;padding:11px 14px;display:flex}.pm-event-icon{background:var(--green);color:#fff;width:20px;height:20px;font-size:var(--fs-label);font-weight:var(--fw-medium);text-align:center;border-radius:50%;flex:none;margin-top:1px;line-height:20px}.pm-event-body{min-width:0}.pm-event-title{font-size:var(--fs-support);font-weight:var(--fw-medium);color:var(--text);line-height:1.35}.pm-event-meta{font-size:var(--fs-support);color:var(--text-soft);margin-top:2px;line-height:1.45}.pm-event-btn{text-align:left;font:inherit;transition:border-color .18s,background .18s}.pm-event-btn:hover{background:var(--surface);border-color:#d8d8dd}.pm-event-badge{border-radius:var(--radius-chip);background:var(--ink);color:#fff;font-size:10.5px;font-weight:var(--fw-medium);vertical-align:1px;white-space:nowrap;margin-left:7px;padding:1px 7px}@keyframes pm-pulse{0%,to{opacity:1}50%{opacity:.55}}.pm-qa{background:var(--surface);border:1px solid var(--line);border-radius:14px;margin:6px 0;padding:14px}.pm-qa-progress{font-size:var(--fs-label);font-weight:var(--fw-medium);text-transform:uppercase;color:var(--text-soft);margin-bottom:8px}.pm-qa-prompt{font-size:var(--fs-body);font-weight:var(--fw-medium);color:var(--text);margin-bottom:12px;line-height:1.35}.pm-qa-options{flex-wrap:wrap;gap:8px;margin-bottom:10px;display:flex}.pm-qa-chip{border:1px solid var(--line);border-radius:var(--radius-chip);background:var(--surface);cursor:pointer;font-size:var(--fs-support);color:var(--text);padding:8px 14px;transition:border-color .15s,background .15s,color .15s}.pm-qa-chip:hover{border-color:var(--ink)}.pm-qa-chip.on{background:var(--ink);border-color:var(--ink);color:#fff}.pm-qa-other{box-sizing:border-box;border:1px solid var(--line);width:100%;font-size:var(--fs-support);color:var(--text);background:var(--surface);border-radius:10px;margin-bottom:10px;padding:9px 12px}.pm-qa-other:focus{border-color:var(--ink);outline:none}.pm-qa-nav{justify-content:space-between;align-items:center;margin-top:4px;display:flex}.pm-qa-arrow{border:1px solid var(--line);background:var(--surface);width:34px;height:34px;color:var(--text);font-size:var(--fs-icon-nav);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;line-height:1;transition:border-color .15s,background .15s,color .15s,opacity .15s;display:inline-flex}.pm-qa-arrow:hover:not(:disabled){border-color:var(--ink)}.pm-qa-arrow:disabled{opacity:.3;cursor:default}.pm-qa-arrow.next{background:var(--ink);border-color:var(--ink);color:#fff}.pm-qa-arrow.next:hover{opacity:.88}.pm-qa-next{background:var(--ink);color:#fff;font-size:var(--fs-support);font-weight:var(--fw-medium);cursor:pointer;border:none;border-radius:999px;padding:9px 18px;transition:opacity .15s}.pm-qa-next:hover{opacity:.88}.pm-qa.done{padding:12px 14px}.pm-qa-answered{border-top:1px solid var(--line);flex-direction:column;gap:1px;padding:5px 0;display:flex}.pm-qa-answered:first-child{border-top:none}.pm-qa-q{font-size:var(--fs-label);color:var(--text-soft)}.pm-qa-a{font-size:var(--fs-support);color:var(--text);font-weight:var(--fw-medium)}.pm-typing{background:var(--surface-alt);border-radius:16px 16px 16px 4px;gap:4px;width:fit-content;padding:12px 14px;display:inline-flex}.pm-typing span{background:#b6b6bb;border-radius:50%;width:6px;height:6px;animation:1.2s infinite pm-bounce}.pm-typing span:nth-child(2){animation-delay:.15s}.pm-typing span:nth-child(3){animation-delay:.3s}@keyframes pm-bounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-4px)}}.pm-reasoning{font-size:var(--fs-support);color:var(--text-soft);border-left:2px solid var(--line);max-width:94%;padding:2px 4px 2px 12px;line-height:1.55}.pm-reasoning-label{font-weight:var(--fw-medium);cursor:pointer;list-style:none}.pm-reasoning summary.pm-reasoning-label::-webkit-details-marker{display:none}.pm-reasoning-text{white-space:pre-wrap;overflow-wrap:anywhere;max-height:180px;margin-top:6px;font-style:italic;overflow-y:auto}.pm-reasoning.streaming .pm-reasoning-label{animation:1.4s ease-in-out infinite pm-pulse}.pm-status{font-size:var(--fs-support);color:var(--text-soft);padding:2px 4px 0}.pm-elapsed{opacity:.6;font-variant-numeric:tabular-nums}.pm-problem{font-size:var(--fs-support);color:#8a2f2f;background:#fdf0f0;border:1px solid #ecc8c8;border-radius:12px;flex-direction:column;gap:8px;padding:11px 13px;line-height:1.45;display:flex}.pm-retry{background:var(--surface);color:#8a2f2f;border-radius:var(--radius-chip);font-size:var(--fs-support);font-weight:var(--fw-medium);cursor:pointer;border:1px solid #d9a8a8;align-self:flex-start;padding:6px 13px}.pm-retry:hover{border-color:#8a2f2f}.planner-inputrow{align-items:flex-end;gap:8px;padding:10px 14px 16px;display:flex}.planner-inputrow textarea{min-width:0;font-size:var(--fs-body);color:var(--text);resize:none;background:var(--surface);border:1px solid #10111a14;border-radius:22px;outline:none;flex:1;max-height:132px;padding:12px 17px;font-family:inherit;line-height:1.5;transition:border-color .15s,box-shadow .15s;overflow-y:auto;box-shadow:0 1px 2px #10111a0a,0 6px 18px #10111a0f}.planner-inputrow textarea:focus{border-color:#10111a38;box-shadow:0 1px 2px #10111a0d,0 8px 22px #10111a17}.planner-inputrow button{background:var(--ink);color:#fff;width:40px;height:40px;font-size:var(--fs-icon-card);cursor:pointer;box-shadow:var(--shadow-soft);border:none;border-radius:50%;flex-shrink:0;transition:opacity .15s,transform .15s}.planner-inputrow button:not(:disabled):hover{transform:scale(1.05)}.planner-inputrow button:disabled{opacity:.25;cursor:default}.day-pin{color:#fff;cursor:pointer;white-space:nowrap;border:2px solid #fff;border-radius:999px;align-items:center;width:max-content;min-width:26px;height:26px;font-size:13px;font-weight:700;display:inline-flex;box-shadow:0 1px 5px #00000059}.day-pin-n{text-align:center;flex-shrink:0;width:22px}.day-pin-name{padding-right:8px;font-size:12px;font-weight:600;display:none}.day-pin:hover .day-pin-name{display:inline}.stay-pin{background:var(--surface);border:2px solid var(--ink);width:30px;height:30px;box-shadow:var(--shadow-soft);border-radius:50%;justify-content:center;align-items:center;font-size:15px;display:flex}.pin-pill.plan-hidden{display:none}.pin-star{margin-right:2px;font-size:10px}.day-brief{z-index:1000;background:var(--surface);border:1px solid var(--line);width:min(330px,70%);max-height:calc(100% - 84px);box-shadow:var(--shadow);border-radius:16px;padding:14px 16px 16px;position:absolute;top:60px;left:14px;overflow-y:auto}.db-head{align-items:center;gap:8px;display:flex}.db-head .dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}.db-title{flex:1;font-size:14.5px;font-weight:700}.db-date{color:var(--text-soft);font-weight:500}.db-head .close{cursor:pointer;color:var(--text-soft);background:0 0;border:none;padding:4px;font-size:12px}.db-theme{color:var(--text);margin-top:2px;font-size:13px}.db-span{color:var(--text);background:var(--surface-alt);border-radius:8px;width:fit-content;margin-top:8px;padding:5px 9px;font-size:12.5px;font-weight:600}.db-untimed{color:#6b5200;background:var(--yellow-soft);border:1px solid var(--yellow);border-radius:8px;margin-top:8px;padding:7px 10px;font-size:12px;line-height:1.45}.db-rationale{color:var(--text-soft);margin:8px 0 2px;font-size:12.5px;line-height:1.5}.db-timeline{flex-direction:column;margin-top:8px;display:flex}.db-row{text-align:left;cursor:pointer;width:100%;font:inherit;background:0 0;border:none;border-radius:8px;align-items:baseline;gap:8px;padding:5px 2px;display:flex}.db-row:hover{background:var(--surface-alt)}.db-time{font-variant-numeric:tabular-nums;color:var(--text);flex-shrink:0;width:42px;font-size:12px;font-weight:700}.db-name{color:var(--text);flex:1;font-size:13px}.db-dur{color:var(--text-soft);flex-shrink:0;font-size:11.5px}.db-note{color:var(--text-soft);padding:0 2px 2px 52px;font-size:11.5px;line-height:1.4}.db-gap{color:var(--text-soft);opacity:.8;padding:1px 2px 1px 52px;font-size:11px}.plan-why{background:var(--surface);border:1px solid #10111a0f;border-radius:16px;margin-top:14px;padding:13px 15px;box-shadow:0 1px 2px #10111a0a,0 5px 14px #10111a0d}.plan-why-label{font-size:var(--fs-label);font-weight:var(--fw-medium);text-transform:uppercase;letter-spacing:var(--ls-label);color:var(--text-soft);align-items:center;gap:8px;margin-bottom:8px;display:flex}.plan-why-label .dot{background:var(--ink);border-radius:50%;flex-shrink:0;width:8px;height:8px}.plan-why-text{font-size:var(--fs-body);line-height:var(--lh-body);color:var(--text);margin:0}.plan-why-note{font-size:var(--fs-support);line-height:var(--lh-support);color:var(--text-soft);margin:8px 0 0}.plan-why-note .tip-tag{font-size:var(--fs-label);font-weight:var(--fw-medium);letter-spacing:var(--ls-label);text-transform:uppercase;margin-right:7px}.card-title-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.card-title-row h2{margin:0}.must-star{background:var(--surface);border-radius:var(--radius-chip);font-size:var(--fs-support);font-weight:var(--fw-medium);color:var(--text);cursor:pointer;white-space:nowrap;border:1px solid #10111a1a;flex-shrink:0;align-items:center;gap:6px;padding:6px 12px;transition:border-color .15s,background .15s,box-shadow .15s,transform .15s;display:inline-flex;box-shadow:0 1px 2px #10111a0a}.must-star svg{color:var(--text-soft);flex-shrink:0}.must-star.on svg{color:var(--yellow)}.must-star.on svg path{fill:currentColor}.must-star:hover{border-color:#10111a38;transform:translateY(-1px);box-shadow:0 3px 10px #10111a14}.must-star.on{background:var(--yellow-soft);border-color:var(--yellow)}.planner-mustsee-bar{font-size:var(--fs-support);font-weight:var(--fw-medium);color:#6b5200;background:linear-gradient(#fffaef 0%,#fff4d6 100%);border-top:1px solid #ffc60a47;justify-content:space-between;align-items:center;gap:8px;padding:10px 16px;display:flex}.planner-mustsee-bar button{background:var(--surface);color:#6b5200;border-radius:var(--radius-chip);font-size:var(--fs-label);font-weight:var(--fw-medium);cursor:pointer;border:1px solid #ffc60a8c;padding:6px 13px;transition:border-color .15s,box-shadow .15s,transform .15s;box-shadow:0 1px 2px #6b520014}.planner-mustsee-bar button:not(:disabled):hover{border-color:var(--yellow);transform:translateY(-1px);box-shadow:0 3px 10px #ffc60a47}.planner-mustsee-bar button:disabled{opacity:.5;cursor:default}.trip-head{border-bottom:1px solid var(--line);padding:16px 18px 14px}.th-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.th-id{min-width:0}.th-name{min-width:0;font-size:var(--fs-body);font-weight:var(--fw-medium);color:var(--text);align-items:center;gap:5px;margin:0;display:flex}.th-meta{font-size:var(--fs-label);color:var(--text-soft);white-space:nowrap;text-overflow:ellipsis;margin-top:3px;overflow:hidden}.th-videos{border:1px solid var(--line);background:var(--surface);border-radius:var(--radius-chip);cursor:pointer;box-shadow:var(--shadow-soft);flex-shrink:0;align-items:center;gap:7px;padding:6px 11px;transition:border-color .15s;display:inline-flex}.th-videos:hover,.th-videos.open{border-color:var(--ink)}.th-videos-n{font-size:var(--fs-label);font-weight:var(--fw-medium);color:var(--text)}.trip-head.open .videos-panel{opacity:1;grid-template-rows:1fr}.trip-head.open .videos-panel-body{transform:translateY(0)}.trip-head .videos-panel-body{max-height:38vh;padding:12px 2px 4px}.videos-note{font-size:var(--fs-support);line-height:var(--lh-support);color:var(--text-soft);padding:8px 4px 2px}.right-side .spot-grid{grid-template-columns:repeat(2,1fr);gap:18px 12px;padding:0 0 48px}.right-side .spot-tile .tile-name{font-size:var(--fs-support)}.right-side .spot-tile .tile-sub{font-size:var(--fs-label)}.right-side .empty-area{padding:48px 24px}.approx-note{font-size:var(--fs-support);color:var(--text-soft)}.spot-meta{font-size:var(--fs-label);font-weight:var(--fw-medium);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--text-soft);margin:4px 0 12px}.spot-pop .leaflet-popup-content-wrapper{box-shadow:var(--shadow);border-radius:16px;padding:0;overflow:hidden}.spot-pop .leaflet-popup-content{font:inherit;margin:0;width:210px!important}.spot-pop-inner img{object-fit:cover;width:100%;height:118px;display:block}.spot-pop-meta{padding:10px 13px 12px}.spot-pop-meta .spn{color:var(--text);font-size:13.5px;font-weight:700;line-height:1.3}.spot-pop-meta .sps{color:var(--text-soft);margin-top:2px;font-size:11.5px}.rail-tabs{z-index:10;background:var(--surface);flex-direction:column;align-items:stretch;gap:10px;padding:14px 16px 12px;display:flex;position:sticky;top:0}.rail-seg{background:var(--surface-alt);border-radius:11px;grid-template-columns:1fr 1fr;align-self:flex-start;gap:0;padding:3px;display:inline-grid;position:relative;box-shadow:inset 0 1px 2px #0000000f}.rail-seg-thumb{background:var(--surface);will-change:transform;border-radius:8px;width:calc(50% - 3px);height:calc(100% - 6px);transition:transform .32s cubic-bezier(.32,.72,0,1);position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #00000014,0 3px 8px #00000017}.rail-seg[data-active=pins] .rail-seg-thumb{transform:translate(100%)}.rail-tab{z-index:1;color:var(--text-soft);font-size:var(--fs-support);font-weight:var(--fw-medium);white-space:nowrap;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:6px 14px;transition:color .2s;position:relative}.rail-tab:hover{color:var(--text)}.rail-tab.on{color:var(--ink)}.plan-tabs{min-width:0}.plan-tabs-strip{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;margin:-2px;padding:2px;display:flex}.plan-tab-wrap{flex:none;position:relative}.plan-tab{border-radius:var(--radius-chip);background:var(--surface-alt);max-width:100%;color:var(--text-soft);font-size:var(--fs-label);font-weight:var(--fw-medium);white-space:nowrap;border:none;align-items:center;gap:6px;padding:5px 11px 5px 5px;transition:background .18s,color .18s;display:flex}.plan-tab:hover{color:var(--text);background:#ebebef}.plan-tab.on,.plan-tab.on:hover{background:var(--ink);color:#fff}.plan-tab-n{background:var(--surface);width:18px;height:18px;color:var(--ink);font-size:11px;font-weight:var(--fw-medium);border-radius:50%;flex:none;place-items:center;display:grid}.plan-tab.on .plan-tab-n{color:#fff;background:#ffffff38}.plan-tab-title{text-overflow:ellipsis;overflow:hidden}.plan-tab-days{opacity:.6;font-variant-numeric:tabular-nums}.plan-tab-x{width:18px;height:18px;box-shadow:0 0 0 2px var(--surface);background:var(--ink);color:#fff;opacity:0;border:none;border-radius:50%;place-items:center;transition:opacity .15s,transform .15s;display:grid;position:absolute;top:-4px;right:-4px;transform:scale(.8)}.plan-tab-x svg{width:8px;height:8px}.plan-tab-wrap:hover .plan-tab-x,.plan-tab-x:focus-visible{opacity:1;transform:scale(1)}.plan-tab.confirming{background:var(--surface-alt);color:var(--text);flex:none;gap:4px;padding:5px 6px 5px 11px}.plan-confirm{border-radius:var(--radius-chip);font-size:11px;font-weight:var(--fw-medium);border:none;padding:3px 9px}.plan-confirm.yes{background:var(--red);color:#fff}.plan-confirm.no{background:var(--surface);color:var(--text-soft)}.plan-tab.add{flex:none;justify-content:center;width:28px;max-width:none;padding:5px 0;font-size:15px;line-height:1}.ov-head-actions{align-items:center;gap:8px;display:flex}.plan-compare{border-radius:var(--radius-chip);color:var(--text-soft);font-size:var(--fs-label);font-weight:var(--fw-medium);white-space:nowrap;background:0 0;border:none;flex:none;padding:6px 11px;transition:background .18s,color .18s}.plan-compare:hover{background:var(--surface-alt);color:var(--text)}.plan-compare.on{background:var(--ink);color:#fff}.plan-compare-view{padding:18px 16px 48px}.cmp-card{background:var(--surface);box-shadow:var(--shadow-soft);border-radius:16px;margin-bottom:12px;padding:14px}.cmp-card.on{box-shadow:0 0 0 1.5px var(--ink), var(--shadow-soft)}.cmp-head{align-items:flex-start;gap:10px;display:flex}.cmp-n{background:var(--ink);color:#fff;width:24px;height:24px;font-size:var(--fs-label);font-weight:var(--fw-medium);border-radius:50%;flex:none;place-items:center;display:grid}.cmp-titles{min-width:0}.cmp-title{font-size:var(--fs-body);font-weight:var(--fw-medium);color:var(--text)}.cmp-meta{font-size:var(--fs-label);color:var(--text-soft);margin-top:1px}.cmp-days{flex-direction:column;gap:6px;margin:12px 0 0;padding:0;list-style:none;display:flex}.cmp-days li{font-size:var(--fs-support);color:var(--text);align-items:center;gap:8px;display:flex}.cmp-day-n{color:#fff;width:18px;height:18px;font-size:11px;font-weight:var(--fw-medium);border-radius:5px;flex:none;place-items:center;display:grid}.cmp-day-theme{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cmp-only{border-top:1px solid var(--line);font-size:var(--fs-label);line-height:var(--lh-support);margin-top:12px;padding-top:10px}.cmp-only-label{color:var(--text-mute);display:block}.cmp-only-list{color:var(--text)}.cmp-show{background:var(--ink);color:#fff;width:100%;font-size:var(--fs-support);font-weight:var(--fw-medium);border:none;border-radius:10px;margin-top:12px;padding:8px}.cmp-show:disabled{background:var(--surface-alt);color:var(--text-mute);cursor:default}.spot-plans{flex-wrap:wrap;align-items:center;gap:6px;margin-top:10px;display:flex}.spot-plans-label{font-size:var(--fs-label);color:var(--text-mute)}.spot-plan-chip{border-radius:var(--radius-chip);background:var(--surface-alt);color:var(--text-soft);font-size:var(--fs-label);font-weight:var(--fw-medium);border:none;padding:4px 10px}.spot-plan-chip:hover{color:var(--text);background:#ebebef}.overview{padding:18px 16px 48px}.ov-head{justify-content:space-between;align-items:baseline;margin-bottom:16px;padding:0 2px;display:flex}.ov-head h3{font-size:var(--fs-title);font-weight:var(--fw-medium);color:var(--text);margin:0}.ov-places{font-size:var(--fs-label);color:var(--text-soft);font-weight:var(--fw-medium)}.ov-item{gap:12px;display:flex}.ov-marker{flex-shrink:0;justify-content:center;width:28px;display:flex;position:relative}.ov-dot{background:var(--ink);color:#fff;width:26px;height:26px;font-size:var(--fs-label);font-weight:var(--fw-medium);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-top:10px;display:flex}.ov-line{background:#e4e6e9;border-radius:2px;width:2px;position:absolute;top:42px;bottom:2px}.ov-card{background:var(--surface);border:none;border-radius:22px;flex:1;min-width:0;margin-bottom:18px;transition:box-shadow .15s;overflow:hidden;box-shadow:0 1px 2px #10111a0a,0 8px 24px #10111a0f}.ov-card:hover{box-shadow:0 2px 4px #10111a0d,0 12px 32px #10111a17}.ov-card.open{box-shadow:0 0 0 1.5px var(--ink), 0 8px 24px #10111a14}.ov-card-main{text-align:left;cursor:pointer;width:100%;font:inherit;background:0 0;border:none;padding:0;display:block}.ov-cover{object-fit:cover;background:#f2f3f5;width:100%;height:148px;display:block}.ov-card-text{padding:14px 16px 16px}.ov-day-badge{font-size:var(--fs-label);font-weight:var(--fw-medium);color:var(--text);background:var(--surface);white-space:nowrap;border:1px solid #eef0f2;border-radius:999px;padding:5px 13px;display:inline-block;box-shadow:0 1px 2px #10111a0a}.ov-title{font-size:var(--fs-body);font-weight:var(--fw-medium);color:var(--text);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:10px;line-height:1.35;display:-webkit-box;overflow:hidden}.ov-desc{font-size:var(--fs-support);color:var(--text-mute);white-space:nowrap;text-overflow:ellipsis;max-width:100%;margin-top:4px;line-height:1.5;overflow:hidden}.ov-chips{flex-wrap:wrap;gap:6px;margin-top:12px;display:flex}.ov-chip{font-size:var(--fs-label);font-weight:var(--fw-medium);color:var(--text);white-space:nowrap;text-transform:capitalize;background:#f2f3f5;border:none;border-radius:999px;align-items:center;gap:6px;padding:7px 12px;display:inline-flex}.ov-photo{object-fit:cover;background:#f2f3f5;border-radius:14px;flex-shrink:0;align-self:stretch;width:40%;min-width:108px;max-width:150px;height:auto;min-height:118px}.ov-stops{padding:8px 18px 16px;position:relative}.ov-stops:before{content:"";background:#f0f1f3;height:1px;position:absolute;top:0;left:18px;right:18px}.ov-span{font-size:var(--fs-label);font-weight:var(--fw-medium);color:var(--text-soft);align-items:baseline;gap:8px;padding:10px 0 8px;display:flex}.ov-span-sep{color:var(--text-mute)}.ov-stop:not(:last-child){border-bottom:1px solid #f4f5f6}.ov-stop-row{text-align:left;cursor:pointer;width:100%;font:inherit;background:0 0;border:none;align-items:baseline;gap:10px;padding:10px 0;display:flex}.ov-stop-row:hover .ov-stop-name{text-underline-offset:3px;text-decoration:underline}.ov-stop-time{width:46px;font-size:var(--fs-label);font-weight:var(--fw-medium);font-variant-numeric:tabular-nums;color:var(--text);flex-shrink:0}.ov-stop-name{min-width:0;font-size:var(--fs-body);font-weight:var(--fw-medium);color:var(--text);flex:1;line-height:1.4}.ov-stop-dur{font-size:var(--fs-label);font-weight:var(--fw-medium);color:var(--text-mute);flex-shrink:0}.ov-stop-note{font-size:var(--fs-support);color:var(--text-mute);padding:0 0 10px 56px;line-height:1.5}.ov-stop-gap{font-size:var(--fs-label);font-weight:var(--fw-medium);color:var(--text-mute);padding:2px 0 10px 56px}.ov-empty{text-align:center;flex-direction:column;align-items:center;padding:72px 32px;display:flex}.ov-empty-icon{font-size:var(--fs-title);margin-bottom:14px}.ov-empty h3{font-size:var(--fs-title);font-weight:var(--fw-medium);color:var(--text);margin:0 0 8px}.ov-empty p{font-size:var(--fs-support);color:var(--text-soft);max-width:280px;margin:0 0 20px;line-height:1.65}.ov-empty-cta{background:var(--ink);color:#fff;font-size:var(--fs-support);font-weight:var(--fw-medium);cursor:pointer;border:none;border-radius:999px;padding:12px 22px;transition:transform .15s;box-shadow:0 8px 20px #10111a2e}.ov-empty-cta:hover{transform:scale(1.04)}.trip-body{background:var(--surface)}.left-side{overflow:hidden}.map-side{background:0 0;padding:0}.map-frame{box-shadow:none;border:none;border-radius:0}.suggestion-chip{font-weight:var(--fw-medium);background:#ffffffe6;border:1px solid #10111a12;padding:9px 15px;transition:background .15s,border-color .15s,box-shadow .15s,transform .15s;box-shadow:0 1px 2px #10111a0a}.suggestion-chip:hover{background:#fff;border-color:#10111a29;transform:translateY(-1px);box-shadow:0 3px 10px #10111a14}.ov-day-badge{align-items:center;gap:7px;display:inline-flex}.ov-day-badge .dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.ov-rationale{font-size:var(--fs-support);color:var(--text-soft);margin:2px 0 6px;line-height:1.6}.ov-rationale-teaser{margin:12px 0 0}.ov-untimed{font-size:var(--fs-support);color:#6b5200;background:var(--yellow-soft);border:1px solid var(--yellow);border-radius:10px;margin:8px 0;padding:8px 11px;line-height:1.5}.day-brief{z-index:1000;width:min(340px,72%);max-height:calc(100% - 84px);margin-bottom:0;padding:0;position:absolute;top:60px;left:14px;overflow:hidden auto;box-shadow:0 2px 4px #10111a0d,0 16px 40px #10111a24}.ov-brief-close{z-index:2;color:#fff;width:28px;height:28px;font-size:var(--fs-label);cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#14161e80;border:none;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:10px;right:10px}.ov-brief-close:hover{background:#14161eb8}.ov-expand{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .38s cubic-bezier(.32,.72,.25,1),opacity .22s;display:grid}.ov-expand.open{opacity:1;grid-template-rows:1fr;transition:grid-template-rows .38s cubic-bezier(.32,.72,.25,1),opacity .28s 80ms}.ov-expand-clip{min-height:0;overflow:hidden}.stat-sep{background:#14324624;width:1px;height:14px}.profile{position:relative}.profile-chip{background:#ffffffd9;border:1px solid #1b2b3a24;border-radius:50%;align-items:center;padding:3px;transition:box-shadow .15s,background .15s;display:flex}.profile-chip:hover{box-shadow:var(--shadow-soft);background:#fff}.profile-avatar{object-fit:cover;border-radius:50%;width:30px;height:30px}.profile-initial{background:var(--blue-primary);color:#fff;justify-content:center;align-items:center;font-size:14px;font-weight:600;display:flex}.profile-pop{z-index:60;background:#fff;border:1px solid #1432461a;border-radius:12px;min-width:210px;padding:6px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 1px 2px #1432460f,0 12px 32px #14324629}.profile-who{border-bottom:1px solid #eef2f6;padding:9px 12px 10px}.profile-name{color:#17232e;font-size:14px;font-weight:600}.profile-email{color:#64798d;text-overflow:ellipsis;white-space:nowrap;margin-top:1px;font-size:12px;overflow:hidden}.profile-signout{text-align:left;color:#17232e;background:0 0;border:none;border-radius:8px;width:100%;margin-top:4px;padding:8px 12px;font-size:13px;font-weight:500;transition:background .12s;display:block}.profile-signout:hover{background:#f2f5f8}.confirm-backdrop{z-index:100;background:#101e2a59;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.confirm-card{background:#fff;border-radius:16px;width:min(400px,100%);padding:22px;animation:.2s cubic-bezier(.16,1,.3,1) confirm-in;box-shadow:0 24px 70px #101e2a4d}@keyframes confirm-in{0%{opacity:0;transform:translateY(8px)scale(.98)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.confirm-card{animation:none}}.confirm-card h3{letter-spacing:-.01em;color:#17232e;overflow-wrap:break-word;font-size:16px;font-weight:600}.confirm-card p{color:#64798d;margin:8px 0 18px;font-size:13.5px;line-height:1.55}.confirm-actions{justify-content:flex-end;gap:10px;display:flex}.confirm-cancel,.confirm-delete{border:none;border-radius:12px;padding:9px 16px;font-size:13.5px;font-weight:600;transition:background .12s}.confirm-cancel{color:#17232e;background:#f2f5f8}.confirm-cancel:hover{background:#e8edf2}.confirm-delete{color:#fff;background:#d8544e}.confirm-delete:hover{background:#c4423c}.share-trip{align-self:center;margin-left:auto;position:relative}.share-btn{color:var(--ink,#17232e);white-space:nowrap;background:#fff;border:1px solid #14324624;border-radius:12px;align-items:center;gap:7px;padding:7px 13px;font-size:12.5px;font-weight:600;transition:background .12s,box-shadow .12s;display:inline-flex}.share-btn:hover{box-shadow:0 1px 2px #14324614}.share-btn:disabled{opacity:.6}.share-btn.shared{color:#2c7a4b;background:#f2faf5;border-color:#2c7a4b4d}.share-pop{z-index:60;background:#fff;border:1px solid #1432461a;border-radius:14px;width:320px;padding:14px;animation:.18s cubic-bezier(.16,1,.3,1) confirm-in;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 1px 2px #1432460f,0 12px 32px #14324629}@media (prefers-reduced-motion:reduce){.share-pop{animation:none}}.share-pop-title{color:#17232e;font-size:14px;font-weight:650}.share-pop-sub{color:#64798d;margin:4px 0 12px;font-size:12.5px;line-height:1.5}.share-pop-row{gap:8px;display:flex}.share-pop-row input{min-width:0;font:inherit;color:#17232e;background:#f7fafc;border:1px solid #e2e9ef;border-radius:10px;outline:none;flex:1;padding:8px 11px;font-size:12.5px}.share-pop-copy{background:var(--blue-primary);color:#fff;border:none;border-radius:10px;flex-shrink:0;padding:8px 14px;font-size:12.5px;font-weight:600;transition:background .12s}.share-pop-copy:hover{background:#245cd6}.trip-feedback{align-self:center;position:relative}.trip-header-actions .share-trip,.sheet-share .share-trip{margin-left:0}.fb-btn{color:var(--text-soft,#64798d)}.fb-btn.on{color:var(--ink,#17232e);background:#f1f3f6}.fb-pop{z-index:60;background:#fff;border:1px solid #1432461a;border-radius:14px;width:380px;max-width:calc(100vw - 24px);padding:14px;animation:.18s cubic-bezier(.16,1,.3,1) confirm-in;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 1px 2px #1432460f,0 12px 32px #14324629}@media (prefers-reduced-motion:reduce){.fb-pop{animation:none}}.fb-tabs{background:#f1f3f6;border-radius:10px;gap:2px;margin-bottom:12px;padding:2px;display:flex}.fb-tab{font-size:12.5px;font-weight:var(--fw-medium,500);color:var(--text-soft,#64798d);background:0 0;border:none;border-radius:8px;flex:1;padding:6px 10px;transition:background .12s,color .12s}.fb-tab.on{color:var(--ink,#17232e);background:#fff;box-shadow:0 1px 2px #14324614}.fb-pop-title{color:#17232e;font-size:14px;font-weight:650}.fb-pop-sub{color:#64798d;margin:4px 0 12px;font-size:12.5px;line-height:1.5}.fb-label{font-size:var(--fs-label,11.5px);font-weight:var(--fw-medium,500);color:#64798d;margin-bottom:5px;display:block}.fb-box{box-sizing:border-box;width:100%;font:inherit;color:#17232e;resize:vertical;background:#f7fafc;border:1px solid #e2e9ef;border-radius:10px;outline:none;padding:9px 11px;font-size:12.5px;line-height:1.55;transition:border-color .12s,background .12s}.fb-box:focus{border-color:var(--blue-primary,#2f6bea);background:#fff}.fb-who{box-sizing:border-box;width:100%;font:inherit;color:#17232e;background:#f7fafc;border:1px solid #e2e9ef;border-radius:10px;outline:none;padding:8px 11px;font-size:12.5px}.fb-who:focus{border-color:var(--blue-primary,#2f6bea);background:#fff}.fb-box+.fb-label{margin-top:11px}.fb-error{color:#c4423c;margin:9px 0 0;font-size:12px;line-height:1.45}.fb-actions{justify-content:flex-end;margin-top:12px;display:flex}.fb-send{background:var(--blue-primary,#2f6bea);color:#fff;border:none;border-radius:10px;align-items:center;gap:7px;padding:8px 14px;font-size:12.5px;font-weight:600;transition:background .12s,opacity .12s;display:inline-flex}.fb-send:hover:not(:disabled){background:#245cd6}.fb-send:disabled{opacity:.45;cursor:default}.fb-kbd{opacity:.7;font-size:11px}.fb-done{padding:6px 0 2px}.fb-again{font-size:12.5px;font-weight:var(--fw-medium,500);color:var(--ink,#17232e);background:#fff;border:1px solid #14324624;border-radius:10px;padding:7px 12px}@media (max-width:900px){.trip-page:not(.mobile) .left-side,.trip-page:not(.mobile) .right-side,.trip-page:not(.mobile) .rail-resizer{display:none}}.trip-page.mobile{height:100dvh;position:relative}.trip-page.mobile .m-map{position:absolute;inset:0}.trip-page.mobile .map-frame{height:100%;box-shadow:none;border-radius:0}.trip-page.mobile .leaflet-control-zoom,.m-back{display:none}.trip-page.mobile .m-back{top:calc(14px + env(safe-area-inset-top));z-index:1000;background:var(--surface);width:44px;height:44px;color:var(--text);border-radius:50%;place-items:center;display:grid;position:absolute;left:14px;box-shadow:0 1px 2px #10111a0f,0 6px 18px #10111a24}.trip-page.mobile .map-search{top:calc(14px + env(safe-area-inset-top));width:calc(100% - 82px);left:68px}.trip-page.mobile .ms-box{background:var(--surface);-webkit-backdrop-filter:none;border:none;height:44px;padding:0 16px;box-shadow:0 1px 2px #10111a0f,0 6px 18px #10111a24}.sheet{z-index:1200;background:var(--surface);border-radius:20px 20px 0 0;flex-direction:column;height:50dvh;transition:height .34s cubic-bezier(.32,.72,.25,1);display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 12px #10111a14,0 -12px 40px #10111a2e}.sheet.dragging{transition:none}@media (prefers-reduced-motion:reduce){.sheet{transition:none}}.sheet-drag{touch-action:none;cursor:grab;-webkit-user-select:none;user-select:none;flex-shrink:0;padding:8px 14px 10px}.sheet-grip{background:#10111a2e;border-radius:2px;width:40px;height:4px;margin:0 auto 10px}.sheet-tabs{gap:6px;display:flex}.sheet-tab{font-size:var(--fs-support);font-weight:var(--fw-medium);color:var(--text-soft);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:7px 13px;transition:background .18s,color .18s}.sheet-tab.on{background:var(--surface-alt);color:var(--text);font-weight:var(--fw-medium)}.sheet-body{flex-direction:column;flex:1;min-height:0;display:flex}.sheet-panel{flex:1;min-height:0}.sheet-panel.scroll{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding-bottom:env(safe-area-inset-bottom);overflow-y:auto}.sheet-panel.agent{flex-direction:column;display:flex;overflow:hidden}.sheet-panel.agent .planner-panel{border-right:none;flex:1;width:auto;min-width:0;max-width:none;min-height:0}.sheet-panel.agent .planner-inputrow{padding-bottom:calc(12px + env(safe-area-inset-bottom))}.sheet-panel[hidden]{display:none}.sheet-share{justify-content:flex-end;gap:8px;padding:12px 16px 0;display:flex}.sheet-share .share-pop,.sheet-share .fb-pop{right:0}.sheet textarea,.sheet input[type=text],.trip-page.mobile .ms-input{font-size:16px}.sheet .trip-head{padding:10px 16px}.sheet .th-meta{font-size:var(--fs-label);margin-top:1px}.sheet .th-videos{background:var(--surface-alt);box-shadow:none;border:none;padding:4px 9px}.sheet .planner-scroll{gap:14px;padding:14px 16px 10px}.sheet .planner-nudge{padding:10px 4px 2px}.sheet .nudge-stack{height:128px;margin-bottom:12px}.sheet .nudge-card{border-width:4px;border-radius:12px;width:88px;height:112px}.sheet .nudge-card.front{width:98px;height:124px}.sheet .nudge-title{font-size:var(--fs-title);margin-bottom:5px}.sheet .nudge-sub{font-size:var(--fs-support);margin-bottom:12px}.sheet .nudge-cta{width:auto;font-size:var(--fs-support);padding:10px 22px}.sheet .pins-view{padding:12px 16px 28px}.sheet .spot-grid{grid-template-columns:repeat(2,1fr);gap:18px 12px}.sheet .spot-tile .tile-photo{aspect-ratio:1;border-radius:14px}.sheet .spot-tile .tile-meta{margin-top:7px}.sheet .spot-tile .tile-name{font-size:var(--fs-support)}.sheet .spot-tile .tile-sub{font-size:var(--fs-label)}.sheet .pins-filters{margin-bottom:12px}.sheet .briefing{background:var(--surface-alt);box-shadow:none;margin-bottom:12px}.sheet .briefing-toggle{padding:11px 13px}.sheet .briefing.open .briefing-body{padding:2px 13px 12px}.sheet .briefing-sub{flex-basis:100%;order:3;margin-top:-2px}.sheet .briefing-toggle{flex-wrap:wrap}.sheet .briefing-chevron{order:2}.sheet .pf-toggle{background:var(--surface-alt);font-size:var(--fs-label);border:none;padding:7px 12px}.sheet .spot-card .card-photo{height:200px;box-shadow:none;border-radius:18px;margin:12px 16px 0}.sheet .spot-card .close{top:22px;right:26px}.sheet .spot-card .card-body{padding:14px 16px 32px}.title-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.gmaps-icon,.sheet .gmaps-btn{display:none}.sheet .gmaps-icon{background:var(--surface-alt);width:34px;height:34px;color:var(--text);border-radius:8px;place-items:center;display:grid}.sheet .must-star{background:var(--surface-alt);width:34px;height:34px;box-shadow:none;border:none;border-radius:8px;justify-content:center;padding:0}.sheet .must-star .must-star-label{display:none}.sheet .must-star svg{transition:color .15s,transform .15s}.sheet .must-star.on{background:var(--surface-alt);border:none}.sheet .must-star.on svg{color:var(--yellow);transform:scale(1.18)}.sheet .know-section,.sheet .plan-why{box-shadow:none;background:var(--surface-alt);border:none;border-radius:14px}.sheet .overview,.sheet .plan-compare-view{padding:12px 16px 40px}.sheet .ov-head{margin-bottom:12px}.sheet .plan-tabs{z-index:6;background:var(--surface);padding:10px 16px;position:sticky;top:0}.sheet .plan-tab{padding:7px 13px 7px 6px}.sheet .plan-tab-wrap.on .plan-tab-x{opacity:1;transform:scale(1)}.sheet .plan-tab-wrap:not(.on) .plan-tab-x{display:none}.sheet .ov-card,.sheet .ov-card:hover,.sheet .ov-card.open{background:var(--surface);border-radius:18px;margin-bottom:14px;overflow:hidden;box-shadow:0 1px 2px #10111a0d,0 6px 18px #10111a0f}.sheet .ov-card-main{align-items:center;gap:12px;padding:12px;display:flex}.sheet .ov-cover{border-radius:12px;flex-shrink:0;order:2;width:92px;height:92px}.sheet .ov-card-text{flex:1;order:1;min-width:0;padding:0}.sheet .ov-day-badge{box-shadow:none;font-size:var(--fs-label);font-weight:var(--fw-medium);text-transform:uppercase;color:var(--text-soft);background:0 0;border:none;border-radius:0;padding:0}.sheet .ov-title{margin-top:5px}.sheet .ov-marker,.sheet .ov-chips{display:none}.sheet .ov-stops{padding:8px 14px 14px}.sheet .ov-stops:before{left:14px;right:14px}.sheet .ov-rationale-teaser{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:6px;display:-webkit-box;overflow:hidden}.sheet .planner-nudge{text-align:left;align-items:flex-start;padding:6px 2px 2px}.sheet .nudge-stack{order:1;height:auto;margin:2px 0 14px;display:flex}.sheet .nudge-card{border-width:3px;border-radius:10px;width:58px;height:74px;margin-right:-10px;animation:none;position:static}.sheet .nudge-card.left{transform:rotate(-4deg)}.sheet .nudge-card.right{transform:rotate(3deg)}.sheet .nudge-card.front{width:58px;height:74px;transform:rotate(-2deg)}.sheet .nudge-title{font-size:var(--fs-title);line-height:1.25}.sheet .nudge-cta{width:auto;font-size:var(--fs-support);order:2;padding:10px 20px}.sheet .nudge-alt{order:3}.tile-star{display:none}.sheet .tile-star{z-index:1;width:28px;height:28px;color:var(--text-soft);background:#fffffff2;border-radius:8px;place-items:center;display:grid;position:absolute;top:8px;right:8px;box-shadow:0 1px 3px #10111a26}.sheet .tile-star svg{transition:color .15s,transform .15s}.sheet .tile-star.on svg{color:var(--yellow);transform:scale(1.15)}.sheet .tile-star.on svg path{fill:currentColor}.m-landing{min-height:100dvh;color:var(--blue-ink);background:linear-gradient(#e8f4fa 0%,#cde7f4 20%,#b3dcf0 46%,#d8ebf5 72%,#f7fbfd 90%,#fff 100%);position:relative;overflow:hidden}.m-landing:after{content:"";pointer-events:none;opacity:.7;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-size:180px 180px;position:absolute;inset:0}.m-landing>*{z-index:1;position:relative}.ml-base .ml-signin,.ml-base .ml-trips-btn,.ml-base .ml-box,.m-landing .profile-chip,.ml-close,.ml-new{-webkit-backdrop-filter:blur(20px)saturate(160%);backdrop-filter:blur(20px)saturate(160%);background:linear-gradient(165deg,#ffffff9e,#ffffff57);border:1px solid #ffffffa6;box-shadow:inset 0 1px #ffffffd9,0 1px 2px #1b2b3a0d,0 10px 30px #1b2b3a1a}.ml-base{min-height:100dvh;padding:calc(18px + env(safe-area-inset-top)) 22px calc(22px + env(safe-area-inset-bottom));flex-direction:column;transition:opacity .35s,transform .45s cubic-bezier(.4,0,.2,1),filter .35s;display:flex}.m-landing.trips-open .ml-base{opacity:0;filter:blur(3px);pointer-events:none;transform:scale(.985)}.ml-top{justify-content:space-between;align-items:center;min-height:44px;display:flex}.ml-signin{width:42px;height:42px;color:var(--blue-ink);cursor:pointer;border-radius:50%;place-items:center;display:grid}.m-landing .profile-chip{border-radius:50%;padding:3px}.m-landing .profile-pop{left:auto;right:0}.ml-trips-btn{cursor:pointer;font:inherit;color:var(--blue-ink);border-radius:999px;align-items:center;gap:9px;padding:6px 13px 6px 7px;transition:transform .25s cubic-bezier(.4,0,.2,1);display:inline-flex}.ml-trips-btn:active{transform:scale(.97)}.ml-covers{display:flex}.ml-covers img{object-fit:cover;background:var(--surface-alt);border:1.5px solid #ffffffe6;border-radius:50%;width:26px;height:26px;margin-right:-9px}.ml-covers img:last-child{margin-right:0}.ml-trips-label{letter-spacing:-.01em;font-size:13px;font-weight:600}.ml-trips-n{color:#5b6b7a;margin-left:1px;font-weight:500}.ml-hero{text-align:center;flex-direction:column;align-items:center;margin-top:clamp(28px,7dvh,64px);display:flex}.ml-brand{margin-bottom:clamp(20px,4dvh,34px)}.ml-stat{color:#33475a;background:#ffffffd9;border:1px solid #14324614;border-radius:10px;align-items:center;gap:8px;padding:8px 14px;font-size:12.5px;font-weight:500;display:inline-flex;box-shadow:0 1px 2px #1432460d}.ml-stat-dot{background:var(--blue-primary);border-radius:2px;width:7px;height:7px}.ml-stat strong{color:var(--blue-ink);font-weight:700}.ml-stat-sep{background:#1432462e;width:1px;height:12px}.ml-hero h1{letter-spacing:-.035em;color:#16232f;max-width:320px;margin-top:20px;font-size:clamp(27px,7.6vw,31px);font-weight:750;line-height:1.14}.ml-yt{color:#c8352c}.ml-sub{color:#55606e;max-width:300px;margin-top:12px;font-size:13.5px;font-weight:450;line-height:1.6}.ml-box{border-radius:22px;margin-top:clamp(22px,4.5dvh,38px);padding:4px 0 10px}.ml-row{align-items:center;gap:14px;height:57px;padding:0 20px;display:flex}.ml-row+.ml-row{border-top:1px solid #14324614}.ml-k{letter-spacing:-.01em;color:#16232f;flex-shrink:0;width:74px;font-size:14px;font-weight:600}.ml-row input{min-width:0;font:inherit;color:#16232f;background:0 0;border:none;outline:none;flex:1;font-size:16px;font-weight:450}.ml-row input::placeholder{color:#8695a4}.ml-dates{flex:1;align-items:center;gap:8px;min-width:0;display:flex}.ml-dates .dp{flex:1;min-width:0}.ml-dates .dp-label{display:none}.ml-dates .dp-trigger{width:100%;font:inherit;color:#16232f;text-align:left;cursor:pointer;background:0 0;border:none;padding:6px 0;font-size:15px;font-weight:450}.ml-dates .dp-trigger.placeholder{color:#8695a4}.ml-dates-sep{color:#b3bec9;flex-shrink:0}.ml-error{color:var(--red);margin:8px 20px 0;font-size:12.5px}.ml-cta{color:#fff;width:calc(100% - 20px);font:inherit;letter-spacing:-.01em;cursor:pointer;background:linear-gradient(#262a31,#141416 60%);border:none;border-radius:15px;margin:10px auto 0;padding:15px;font-size:15px;font-weight:600;transition:transform .2s,opacity .2s;display:block;box-shadow:inset 0 1px #ffffff24,0 8px 22px #10111a47}.ml-cta:active{transform:scale(.99)}.ml-cta:disabled{opacity:.65}.ml-fine{text-align:center;color:#7b8b9a;margin-top:14px;font-size:11.5px;font-weight:450}.ml-trips{z-index:2;padding:calc(18px + env(safe-area-inset-top)) 22px calc(22px + env(safe-area-inset-bottom));opacity:0;pointer-events:none;flex-direction:column;transition:opacity .3s;display:flex;position:absolute;inset:0}.m-landing.trips-open .ml-trips{opacity:1;pointer-events:auto}.ml-trips-head{flex-shrink:0;justify-content:space-between;align-items:flex-start;display:flex}.ml-trips-head h2{letter-spacing:-.025em;color:#16232f;font-size:22px;font-weight:700}.ml-trips-meta{color:#5b6b7a;margin-top:3px;font-size:12.5px;font-weight:450}.ml-close{color:#16232f;cursor:pointer;border-radius:50%;place-items:center;width:42px;height:42px;display:grid}.ml-cards{overscroll-behavior:contain;flex:1;grid-template-columns:1fr 1fr;align-content:start;gap:20px 12px;min-height:0;margin-top:16px;padding-bottom:8px;display:grid;overflow-y:auto}.ml-card{color:inherit;min-width:0;text-decoration:none}.ml-card-photo{aspect-ratio:1;background:var(--surface-alt);border-radius:16px;display:block;position:relative;overflow:hidden;box-shadow:0 1px 2px #1b2b3a14,0 8px 20px #1b2b3a1a}.ml-card-photo img{object-fit:cover;width:100%;height:100%;display:block}.ml-card-blank{background:linear-gradient(160deg,#dbe7f0,#c5d8e6);position:absolute;inset:0}.ml-card-badge{color:#16232f;background:#fffffff0;border-radius:999px;align-items:center;gap:6px;padding:5px 11px;font-size:11px;font-weight:650;display:inline-flex;position:absolute;top:10px;left:10px;box-shadow:0 1px 4px #1b2b3a2e}.ml-card-name{letter-spacing:-.01em;color:#16232f;white-space:nowrap;text-overflow:ellipsis;margin-top:9px;font-size:13.5px;font-weight:650;display:block;overflow:hidden}.ml-card-sub{color:#5b6b7a;margin-top:2px;font-size:11.5px;font-weight:450;display:block}.ml-building{background:#e8a13c;border-radius:50%;width:6px;height:6px;animation:1.4s ease-in-out infinite ml-pulse}@keyframes ml-pulse{50%{opacity:.35}}.ml-new{font:inherit;color:var(--blue-ink);cursor:pointer;border-radius:16px;grid-column:1/-1;padding:14px;font-size:13.5px;font-weight:600}.ml-card,.ml-new{opacity:0;transform:translateY(22px)}.m-landing.trips-open .ml-card,.m-landing.trips-open .ml-new{animation:.5s cubic-bezier(.19,1,.22,1) forwards ml-flow}@keyframes ml-flow{to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.ml-base,.ml-trips{transition:none}.m-landing.trips-open .ml-card,.m-landing.trips-open .ml-new{opacity:1;animation:none;transform:none}.ml-building{animation:none}}.rail-note{border-radius:var(--radius-card,14px);box-shadow:var(--shadow-soft);color:#3d5266;background:#fff;margin:0 0 12px;padding:12px 14px;font-size:13px;line-height:1.55}.rail-note-body strong{color:var(--ink);font-weight:600}.rail-note-actions{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.rail-note-btn{color:var(--ink);cursor:pointer;background:#f1f3f6;border:none;border-radius:999px;padding:6px 12px;font-size:12.5px;font-weight:600;transition:background .15s}.rail-note-btn:hover{background:#e6e9ee}.ov-leftovers{border-top:1px solid #1b2b3a17;margin-top:18px;padding-top:4px}.ov-leftovers-head{cursor:pointer;color:#5b6b7b;background:0 0;border:none;justify-content:space-between;align-items:center;width:100%;padding:12px 2px 8px;font-size:13px;font-weight:600;display:flex}.ov-leftovers-caret{color:#93a3b3;font-size:11px}.ov-leftovers-list{flex-direction:column;gap:4px;display:flex}.ov-leftover{background:#fff;border-radius:10px;align-items:center;gap:8px;padding:8px 10px;display:flex}.ov-leftover-main{text-align:left;cursor:pointer;background:0 0;border:none;flex-direction:column;flex:1;gap:2px;min-width:0;padding:0;display:flex}.ov-leftover-name{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:13.5px;font-weight:500;overflow:hidden}.ov-leftover-meta{color:#8a99a8;font-size:11.5px}.ov-leftover-add{color:var(--ink);cursor:pointer;opacity:0;background:#f1f3f6;border:none;border-radius:999px;flex:none;padding:5px 10px;font-size:12px;font-weight:600;transition:opacity .15s,background .15s}.ov-leftover:hover .ov-leftover-add,.ov-leftover-add:focus-visible{opacity:1}@media (hover:none){.ov-leftover-add{opacity:1}}.ov-leftovers-more{color:#5b6b7b;cursor:pointer;background:0 0;border:none;margin-top:6px;padding:4px 2px;font-size:12.5px;font-weight:600}.planner-inputrow.answering textarea{background:#f7f9fc}.planner-inputrow.answering:before{content:"Answering the question above";letter-spacing:.01em;color:#8a99a8;font-size:11px;font-weight:600;position:absolute;top:-18px;left:14px}.planner-inputrow{position:relative}
