@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.start{inset-inline-start:var(--spacing)}.\!end{inset-inline-end:var(--spacing)!important}.end{inset-inline-end:var(--spacing)}.isolate{isolation:isolate}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.hidden{display:none}.inline{display:inline}.table{display:table}.resize{resize:both}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;top:0;left:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:0 0}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{-webkit-transform-origin:0 0;width:1600px;height:1600px}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{width:auto;padding:0;max-width:none!important;max-height:none!important}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:#33b5e566}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{box-sizing:border-box;z-index:800;width:0;height:0}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{z-index:800;pointer-events:visiblePainted;pointer-events:auto;position:relative}.leaflet-top,.leaflet-bottom{z-index:1000;pointer-events:none;position:absolute}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{outline-offset:1px;background:#ddd}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{background:#ffffff80;border:2px dotted #38f}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:.75rem;line-height:1.5}.leaflet-bar{border-radius:4px;box-shadow:0 1px 5px #000000a6}.leaflet-bar a{text-align:center;color:#000;background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;text-decoration:none;display:block}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom:none;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.leaflet-bar a.leaflet-disabled{cursor:default;color:#bbb;background-color:#f4f4f4}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-right-radius:2px;border-bottom-left-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{text-indent:1px;font:700 18px Lucida Console,Monaco,monospace}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{background:#fff;border-radius:5px;box-shadow:0 1px 5px #0006}.leaflet-control-layers-toggle{background-image:url(../media/layers.20bhq2yj4r-o7.png);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(../media/layers-2x.0smrnln2b1gpy.png);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{color:#333;background:#fff;padding:6px 10px 6px 6px}.leaflet-control-layers-scrollbar{padding-right:5px;overflow:hidden scroll}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{font-size:1.08333em;display:block}.leaflet-control-layers-separator{border-top:1px solid #ddd;height:0;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(../media/marker-icon.38p7fa7moljse.png)}.leaflet-container .leaflet-control-attribution{background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{color:#333;padding:0 5px;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{width:1em;height:.6669em;vertical-align:baseline!important;display:inline!important}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{white-space:nowrap;box-sizing:border-box;text-shadow:1px 1px #fff;background:#fffc;border:2px solid #777;border-top:none;padding:2px 5px 1px;line-height:1.1}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{background-clip:padding-box;border:2px solid #0003}.leaflet-popup{text-align:center;margin-bottom:20px;position:absolute}.leaflet-popup-content-wrapper{text-align:left;border-radius:12px;padding:1px}.leaflet-popup-content{min-height:1px;margin:13px 24px 13px 20px;font-size:1.08333em;line-height:1.3}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{pointer-events:none;width:40px;height:20px;margin-top:-1px;margin-left:-20px;position:absolute;left:50%;overflow:hidden}.leaflet-popup-tip{pointer-events:auto;width:17px;height:17px;margin:-10px auto 0;padding:1px;transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{color:#333;background:#fff;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{text-align:center;color:#757575;background:0 0;border:none;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;text-decoration:none;position:absolute;top:0;right:0}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";width:24px;filter:progid:DXImageTransform.Microsoft.Matrix(M11=.707107, M12=.707107, M21=-.707107, M22=.707107);margin:0 auto}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{color:#222;white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none;background-color:#fff;border:1px solid #fff;border-radius:3px;padding:6px;position:absolute;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{pointer-events:none;content:"";background:0 0;border:6px solid #0000;position:absolute}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{margin-left:-6px;left:50%}.leaflet-tooltip-top:before{border-top-color:#fff;margin-bottom:-12px;bottom:0}.leaflet-tooltip-bottom:before{border-bottom-color:#fff;margin-top:-12px;margin-left:-6px;top:0}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{margin-top:-6px;top:50%}.leaflet-tooltip-left:before{border-left-color:#fff;margin-right:-12px;right:0}.leaflet-tooltip-right:before{border-right-color:#fff;margin-left:-12px;left:0}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.leaflet-tooltip .map-popover-photo{width:100%;margin:0 0 10px}.leaflet-tooltip .map-popover-photo img{object-fit:cover;border-radius:7px;width:100%;height:140px;display:block}.leaflet-tooltip .map-popover-photo figcaption{color:#d9d4ea;white-space:normal;margin-top:5px;font:10px/1.4 Arial,sans-serif}.leaflet-tooltip .map-popover-photo a{color:inherit;text-underline-offset:2px;text-decoration:underline}.leaflet-tooltip:has(.map-popover-photo){white-space:normal;width:min(350px,100vw - 32px);max-width:calc(100vw - 32px)}:is(.leaflet-tooltip:has(.map-popover-photo) .route-tooltip,.leaflet-tooltip:has(.map-popover-photo) .place-tooltip){width:100%;min-width:0}@media (max-width:640px){.leaflet-tooltip .map-popover-photo img{height:110px}.leaflet-tooltip:has(.map-popover-photo):before{display:none}}:root{--ink:#22235f;--purple:#7a4d9f;--pink:#eb68a0;--rose-text:#a73568;--mint:#a8dacd;--mint-text:#216657;--paper:#f2ebe3;--cream:#fffaf3;--surface:#fffdf9;--surface-soft:#ebe6e0;--surface-tint:#edf3ef;--text-secondary:#5f5663;--text-muted:#756b77;--line:#22235f2b;--line-strong:#22235f3d;--map-turquoise:#20b8b0;--map-coral:#db466f;--map-plum:#6b2f63;--map-sage:#5f9674;--map-peach:#f4b179;--map-gold:#ffd269;--shadow-base:0 2px 8px #22235f14;--shadow-float:0 12px 32px #22235f29;--shadow-modal:0 24px 70px #16133147;--shadow:var(--shadow-float)}*{box-sizing:border-box}html,body{min-height:100%;margin:0}body{background:var(--paper);color:var(--ink);font-family:var(--font-geist-sans),Arial,sans-serif}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.app-shell{--topbar-h:56px;--rail-w:188px;background:var(--paper);min-height:100vh;overflow:hidden}.topbar{height:var(--topbar-h);color:#fff;z-index:1000;background:radial-gradient(circle at 14% -80%,#ffffff1f,#0000 25%),repeating-linear-gradient(97deg,#0000 0 3px,#ffffff05 4px),radial-gradient(circle at 50% -120%,#3c336f 0,#22235f 58%,#171842 100%);border-bottom:1px solid #a8dacd38;grid-template-columns:minmax(210px,1fr) auto minmax(290px,1fr);align-items:center;gap:12px;padding:0 14px;display:grid;position:relative;box-shadow:0 5px 18px #0708212e}.brand-lockup{color:#fff;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:0;display:flex}.brand-lockup>span:last-child{flex-direction:column;display:flex}.brand-lockup small{color:var(--mint);font:750 9px/1 var(--font-geist-mono),monospace;letter-spacing:.13em;text-transform:uppercase;margin-bottom:3px}.brand-lockup strong{letter-spacing:-.035em;font:600 16px/1.05 Georgia,serif}.brand-photo{width:40px;height:40px;box-shadow:0 0 0 2px var(--pink),0 4px 12px #0708214d;background:#d9d4cf;border:0;border-radius:50%;flex:none;display:block;position:relative;overflow:hidden}.brand-photo img{object-fit:cover;object-position:48% 45%;filter:contrast(1.08)}.view-nav{background:#ffffff14;border:1px solid #a8dacd47;border-radius:99px;gap:3px;padding:4px;display:flex}.topbar .view-nav{position:absolute;left:50%;transform:translate(-50%)}.view-nav button{color:#d4cedb;cursor:pointer;background:0 0;border:0;border-radius:99px;min-width:78px;height:34px;padding:0 13px;font-size:11px;font-weight:750}.view-nav button.active{background:var(--pink);color:var(--ink);box-shadow:0 5px 14px #07082147}.view-nav span{min-width:17px;height:17px;color:var(--mint);background:#a8dacd29;border-radius:99px;place-items:center;margin-left:5px;font-size:8px;display:inline-grid}.top-actions{grid-column:3;justify-content:flex-end;align-items:center;gap:13px;display:flex}.trip-summary{align-items:center;gap:16px;display:flex}.trip-summary span{color:#ffffff94;text-transform:uppercase;letter-spacing:.08em;flex-direction:column;font-size:8px;display:flex}.trip-summary strong{color:#fff;font:800 14px/1 var(--font-geist-mono),monospace}.privacy-button{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #a8dacd47;border-radius:99px;align-items:center;gap:7px;height:38px;padding:0 12px;display:flex}.top-actions div.privacy-button{cursor:default}.privacy-button span{color:var(--pink);font-size:10px}.privacy-button em{white-space:nowrap;font-size:9px;font-style:normal;font-weight:800}.travel-mode-button{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #a8dacd47;border-radius:99px;align-items:center;gap:7px;min-height:42px;padding:0 12px;display:flex}.travel-mode-button span{color:var(--pink);font-size:15px;line-height:1}.travel-mode-button em{white-space:nowrap;font-size:9px;font-style:normal;font-weight:800}.recommend-button{min-height:42px;color:var(--purple);cursor:pointer;background:#a8dacd38;border:1px solid #7a4d9f40;border-radius:99px;align-items:center;gap:7px;padding:0 12px;display:flex}.recommend-button span{color:var(--pink);font-size:15px;line-height:1}.recommend-button em{white-space:nowrap;font-size:9px;font-style:normal;font-weight:800}.today-status{color:#fff;white-space:nowrap;background:#a8dacd29;border:1px solid #a8dacd47;border-radius:99px;align-items:center;gap:7px;min-width:0;height:34px;padding:0 10px;display:flex}.today-status>span{color:var(--pink);font-size:12px;line-height:1}.today-status em{text-overflow:ellipsis;max-width:190px;font-size:9px;font-style:normal;font-weight:750;overflow:hidden}.today-status b{color:var(--mint);font-size:9px}.atlas-layout{height:calc(100dvh - var(--topbar-h));grid-template-columns:var(--rail-w) minmax(0,1fr);display:grid}.route-rail{z-index:700;color:#fff;background:radial-gradient(circle at 12% 7%,#ffffff1c,#0000 23%),repeating-linear-gradient(97deg,#0000 0 3px,#ffffff05 4px),radial-gradient(circle at 50% -20%,#3c336f 0,#22235f 48%,#171842 100%);border-right:1px solid #a8dacd38;grid-template-rows:auto minmax(0,1fr) auto;height:100%;min-height:0;padding:10px 8px 8px;display:grid;position:relative;overflow:hidden}.rail-heading p{color:var(--mint);font:800 9px/1 var(--font-geist-mono),monospace;letter-spacing:.13em;text-transform:uppercase;margin:0 0 4px}.rail-heading h2{margin:0;font:600 18px/1.2 Georgia,serif}.rail-heading span{color:#fff9;margin-top:4px;font-size:8px;display:block}.stop-list{grid-template-rows:repeat(9,minmax(38px,1fr));align-content:stretch;min-height:0;margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.stop-list li{min-height:0;position:relative}.stop-list li:not(:last-child):after{content:"";z-index:0;background:#a8dacd38;width:1px;position:absolute;top:calc(50% + 17px);bottom:calc(17px - 50%);left:19px}.stop-list button{z-index:1;color:#fff;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:10px;grid-template-columns:24px 1fr 10px;align-items:center;gap:5px;width:100%;height:100%;min-height:0;padding:4px 6px;transition:all .18s;display:grid;position:relative}.stop-list button:hover{background:#a8dacd1f;transform:translate(2px)}.stop-list button.active{background:var(--pink);color:var(--ink);box-shadow:0 8px 20px #07082147}.stop-number{color:var(--mint);font:800 8px/1 var(--font-geist-mono),monospace}.active .stop-number{color:var(--ink)}.stop-copy strong{font-size:11px;display:block}.stop-copy small{color:#ffffff94;margin-top:3px;font-size:8px;display:block}.active .stop-copy small{color:#4a3b60}.stop-arrow{color:var(--pink);font-size:17px}.active .stop-arrow{color:var(--ink)}.rail-flights{border-top:1px solid #a8dacd38;gap:8px;margin-top:auto;padding:12px 7px 2px;display:grid}.rail-flights>p{color:var(--mint);font:800 8px/1 var(--font-geist-mono),monospace;letter-spacing:.12em;text-transform:uppercase;margin:0}.rail-flight-item{min-width:0}.rail-flight-summary{color:#fff;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:auto minmax(0,1fr);gap:3px 7px;width:100%;min-width:0;padding:0;display:grid}.rail-flight-summary>span{color:var(--pink);font:800 8px/1.2 var(--font-geist-mono),monospace;letter-spacing:.05em;text-transform:uppercase}.rail-flight-summary>b{text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:9px;line-height:1.2;overflow:hidden}.rail-flight-summary>small{color:#ffffff94;grid-column:1/-1;font-size:8px;line-height:1.3}.rail-flight-popover{z-index:1200;border:1px solid var(--line-strong);background:var(--surface);width:min(390px,100% - 28px);max-height:calc(100% - 28px);box-shadow:var(--shadow-modal);border-radius:14px;padding:14px;position:absolute;bottom:14px;left:14px;overflow-y:auto}.rail-flight-popover header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:10px;display:flex}.rail-flight-popover header>div{gap:4px;display:grid}.rail-flight-popover header>button{width:28px;height:28px;color:var(--ink);cursor:pointer;background:#22235f14;border:0;border-radius:50%;flex:none;font-size:18px}.rail-flight-popover header small{color:var(--pink-dark);font:850 8px/1 var(--font-geist-mono),monospace;letter-spacing:.08em;text-transform:uppercase}.rail-flight-popover header strong{color:var(--ink);font:700 20px/1.1 Georgia,serif}.rail-flight-popover header span{color:#625965;font-size:9px;line-height:1.4}.rail-flight-popover>p{color:#6c6270;font:800 8px/1.2 var(--font-geist-mono),monospace;text-transform:uppercase;background:#a8dacd40;border-radius:8px;justify-content:space-between;gap:12px;margin:10px 0 0;padding:9px 10px;display:flex}.rail-flight-popover>p b{color:var(--ink)}.main-stage{min-width:0;position:relative;overflow:hidden}.map-stage{background:#c8d9d0;transition:opacity .2s;position:absolute;inset:0;overflow:hidden}.view-planner .map-stage,.view-journal .map-stage{opacity:0;pointer-events:none}.map-canvas{background:#c8d9d0;position:absolute;inset:0}.map-canvas .leaflet-tile-pane{transition:filter .28s}.map-canvas .regional-tiles{opacity:1;filter:saturate(1.18)contrast(1.16)brightness(.82)}.map-canvas .imagery-tiles{filter:saturate(1.2)contrast(1.08)brightness(.96)}.map-canvas .driving-road-tiles{filter:saturate(.82)contrast(1.04)brightness(1.03)}.map-canvas .leaflet-tile{image-rendering:auto;will-change:transform}.map-wash{z-index:300;pointer-events:none;background:linear-gradient(#1235381f,#12353829),radial-gradient(circle at 50% 42%,#0000 55%,#233c3433 100%);position:absolute;inset:0;box-shadow:inset 0 0 52px #1d332c33}.map-loading{z-index:465;opacity:0;visibility:hidden;pointer-events:none;color:#fff;text-align:center;background:linear-gradient(115deg,#22235fad,#48366885);place-content:center;gap:7px;transition:opacity .18s,visibility 0s linear .18s;display:grid;position:absolute;inset:0;overflow:hidden}.map-loading.is-loading{opacity:1;visibility:visible;transition:opacity .14s}.map-loading strong{letter-spacing:-.025em;font:600 19px/1.1 Georgia,serif}.map-loading small{color:var(--mint);font:800 8px/1 var(--font-geist-mono),monospace;letter-spacing:.11em;text-transform:uppercase}.map-loader-flight{width:100%;height:32px;position:absolute;top:calc(50% - 50px);left:0}.map-loader-flight:before{content:"";border-top:1px dashed #a8dacd6b;width:100%;position:absolute;top:16px;left:0}.map-loader-flight span{z-index:2;color:var(--pink);filter:drop-shadow(0 5px 8px #07082159);will-change:transform;font-size:26px;line-height:1;animation:1.35s cubic-bezier(.45,.05,.55,.95) infinite mapPlaneCross;position:absolute;top:0;left:0;transform:translate(-42px)rotate(7deg)}.map-loader-flight i{opacity:.7;background:linear-gradient(90deg,transparent,var(--mint));will-change:transform;border-radius:99px;width:54px;height:5px;animation:1.35s cubic-bezier(.45,.05,.55,.95) infinite mapContrailCross;position:absolute;top:13px;left:0}@keyframes mapPlaneCross{0%{transform:translate(-42px,2px)rotate(7deg)}50%{transform:translate(calc(50vw - 13px),-4px)rotate(1deg)}to{transform:translate(calc(100vw + 42px),2px)rotate(7deg)}}@keyframes mapContrailCross{0%{transform:translate(-98px,3px)}50%{transform:translate(calc(50vw - 69px),-3px)}to{transform:translate(calc(100vw - 14px),3px)}}.leaflet-control-attribution{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);border-radius:5px 0 0;max-width:min(520px,70vw);color:#4f5d55!important;background:#fffaf3b8!important;padding:2px 5px!important;font-size:8px!important;line-height:1.2!important}.leaflet-control-zoom{overflow:hidden;border:1px solid #22235f2e!important;border-radius:9px!important;box-shadow:0 6px 18px #22235f24!important}.leaflet-control-zoom a{width:28px!important;height:28px!important;color:var(--ink)!important;font-size:18px!important;line-height:28px!important}.trip-country-label-shell{pointer-events:none;background:0 0;border:0;overflow:visible!important}.trip-country-label{color:#30443957;letter-spacing:.24em;text-align:center;text-transform:uppercase;text-shadow:0 1px #fffaf3cc;width:120px;font:750 12px/1 Georgia,serif;display:block}.journey-marker-shell,.waypoint-marker-shell,.city-feature-shell,.planner-map-marker-shell{background:0 0;border:0;overflow:visible!important}.journey-marker{color:#fff;width:32px;height:32px;display:block;position:relative}.journey-medallion{z-index:2;background:#315d50;border:3px solid #fff5df;border-radius:50%;place-items:center;transition:transform .18s,box-shadow .18s;display:grid;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #c89f5b,0 4px 10px #23362e3d}.journey-medallion b{font:850 10px/1 var(--font-geist-mono),monospace}.journey-label{z-index:1;color:#233b33;pointer-events:none;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#fffaebd6;border:1px solid #3d52472e;border-radius:5px;gap:2px;width:max-content;max-width:138px;padding:4px 6px;display:grid;position:absolute;box-shadow:0 2px 7px #2c3f351f}.journey-label:before{content:"";background:#374d429e;width:13px;height:1px;position:absolute;top:11px}.journey-label strong{font:700 12px/1.05 Georgia,serif}.journey-label small{color:#53685d;font:750 7px/1.1 var(--font-geist-mono),monospace;letter-spacing:.03em;text-transform:uppercase}.label-right .journey-label{text-align:left;top:6px;left:43px}.label-right .journey-label:before{right:calc(100% + 3px)}.label-left .journey-label{text-align:right;top:6px;right:43px}.label-left .journey-label:before{left:calc(100% + 3px)}.label-upper-right .journey-label{text-align:left;bottom:25px;left:40px}.label-upper-right .journey-label:before{transform-origin:100%;top:calc(100% + 4px);right:calc(100% + 3px);transform:rotate(-25deg)}.label-upper-left .journey-label{text-align:right;bottom:25px;right:40px}.label-upper-left .journey-label:before{transform-origin:0;top:calc(100% + 4px);left:calc(100% + 3px);transform:rotate(25deg)}.label-lower-right .journey-label{text-align:left;top:27px;left:40px}.label-lower-right .journey-label:before{transform-origin:100%;top:-4px;right:calc(100% + 3px);transform:rotate(25deg)}.label-lower-left .journey-label{text-align:right;top:27px;right:40px}.label-lower-left .journey-label:before{transform-origin:0;top:-4px;left:calc(100% + 3px);transform:rotate(-25deg)}.journey-marker-shell.is-selected{z-index:900!important}.journey-marker-shell.is-selected .journey-medallion{background:#704566;transform:scale(1.12);box-shadow:0 0 0 3px #c89f5b94,0 7px 16px #45253f4d}.journey-marker-shell:focus-visible{outline:none}.journey-marker-shell:focus-visible .journey-medallion,.waypoint-marker-shell:focus-visible .waypoint-marker b{outline-offset:3px;outline:3px solid #0d7388}.regional-overview .journey-marker-shell.dense-label .journey-label,.regional-overview .journey-label.dense-label{max-width:104px;padding:4px 6px}.regional-overview .journey-marker-shell.dense-label .journey-label strong,.regional-overview .journey-label.dense-label strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.regional-overview .journey-marker-shell.dense-label .journey-label small,.regional-overview .journey-label.dense-label small{display:none}.regional-overview .journey-marker-shell.dense-label.is-selected .journey-label,.regional-overview .journey-marker-shell.dense-label:focus-visible .journey-label{z-index:2;background:#fffaebf5;max-width:138px}.regional-overview .journey-marker-shell.dense-label.is-selected .journey-label strong,.regional-overview .journey-marker-shell.dense-label:focus-visible .journey-label strong{text-overflow:clip;overflow:visible}.regional-overview .journey-marker-shell.dense-label.is-selected .journey-label small,.regional-overview .journey-marker-shell.dense-label:focus-visible .journey-label small{display:block}.city-feature{filter:drop-shadow(0 5px 9px #121f1d61);place-items:center;width:36px;height:36px;display:grid}.city-feature>b{color:#fff8df;background:#315d50;border:3px solid #f8edcf;border-radius:50% 50% 44% 56%;place-items:center;width:36px;height:36px;font:800 16px/1 Georgia,serif;display:grid;box-shadow:inset 0 0 0 2px #ffffff26}.city-feature.kind-hotel>b{background:#2d5e73}.city-feature.kind-booked>b{color:#ffe0ab;background:#72496e}.city-feature.kind-harbor>b{background:#236c79}.city-feature.kind-nature>b{background:#4d713f}.planner-map-marker{color:#fff;background:#246b79;border:3px solid #fff0df;border-radius:50%;place-items:center;width:32px;height:32px;display:grid;position:relative;box-shadow:0 4px #174f5a,0 7px 15px #22235f3d}.planner-map-marker b{font:900 10px/1 var(--font-geist-mono),monospace}.planner-map-marker.kind-restaurant{background:#9e3564;box-shadow:0 4px #702345,0 7px 15px #22235f3d}.planner-map-marker.kind-mixed{background:#6b4a93;box-shadow:0 4px #4e356f,0 7px 15px #22235f3d}.planner-map-marker.booked{border-color:#a8dacd}.planner-map-marker.booked:before{content:"✓";color:#174f5a;width:15px;height:15px;font:900 8px/1 var(--font-geist-mono),monospace;background:#a8dacd;border:2px solid #fff0df;border-radius:50%;place-items:center;display:grid;position:absolute;bottom:-8px;right:-8px;box-shadow:0 2px 5px #22235f38}.planner-map-marker.recommended:after{content:"★";color:#6b2f63;background:#ffe09c;border:2px solid #fff0df;border-radius:50%;place-items:center;width:15px;height:15px;font:900 8px/1 Georgia,serif;display:grid;position:absolute;top:-8px;right:-8px;box-shadow:0 2px 5px #22235f38}.map-canvas.city-mode+.map-wash{opacity:.08;box-shadow:inset 0 0 42px #5122491a}.map-canvas.city-mode~.place-card{width:225px;padding:16px}.waypoint-marker{width:22px;height:22px;display:block;position:relative}.waypoint-marker b{color:#fff;background:#9a4f2e;border:2px solid #fff5df;border-radius:7px;place-items:center;width:22px;height:22px;font:800 10px/1 Georgia,serif;display:grid;transform:rotate(45deg);box-shadow:0 3px 8px #412b1f3d}.waypoint-marker b:first-letter{transform:rotate(-45deg)}.waypoint-label{color:#384e43;text-shadow:0 1px #fffaf3f2;pointer-events:none;width:max-content;max-width:150px;font:700 9px/1.1 Georgia,serif;position:absolute;top:4px;left:31px}.regional-overview .waypoint-label{display:none}.regional-distant .waypoint-marker{opacity:.9;transform-origin:50%;transform:scale(.78)}.map-legend{z-index:470;color:#43584d;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#fffaf3e0;border:1px solid #374d4233;border-radius:11px;grid-template-columns:repeat(2,auto);gap:7px 14px;padding:11px 13px;display:grid;position:absolute;bottom:28px;right:58px;box-shadow:0 8px 24px #2b3d3421}.map-legend strong{color:#263e34;grid-column:1/-1;font:700 13px/1 Georgia,serif}.map-legend span{white-space:nowrap;align-items:center;gap:6px;font-size:7px;font-weight:750;display:flex}.map-legend i{flex:none;width:16px;height:8px;font-style:normal;display:inline-block}.legend-stay{background:#315d50;border:2px solid #fff5df;border-radius:50%;box-shadow:0 0 0 1px #c89f5b;width:11px!important;height:11px!important}.legend-drive{border-top:5px solid #c93668;box-shadow:0 -2px #fffaf0;height:7px!important}.legend-ferry{border-top:3px dotted #256f79}.legend-waypoint{color:#9a4f2e;text-align:center;font-size:12px;line-height:1;height:auto!important}.route-line-driving,.city-driving-line{filter:drop-shadow(0 1px 2px #22235f6b);transition:stroke .15s,stroke-width .15s}.transit-hit-area:focus{outline:none;opacity:.28!important;stroke:#0d7388!important}.city-driving-mode .imagery-tiles{filter:saturate(.92)contrast(1.12)brightness(.72)}.driving-endpoint,.driving-detour-marker{width:max-content;max-width:220px;color:var(--ink);filter:drop-shadow(0 5px 9px #121f1d52);isolation:isolate;align-items:center;gap:7px;display:flex}.driving-endpoint.label-left{flex-direction:row-reverse;transform:translate(calc(31px - 100%))}.driving-endpoint>b,.driving-detour-marker>b{z-index:2;background:var(--ink);color:#fff;width:31px;height:31px;font:900 10px/1 var(--font-geist-mono),monospace;border:3px solid #fff7e9;border-radius:50%;flex:none;place-items:center;display:grid;position:relative;box-shadow:0 0 0 2px #ef628f}.driving-endpoint>span,.driving-detour-marker>span{z-index:1;background:#fffaf3f0;border:1px solid #22235f33;border-radius:7px;gap:2px;min-width:0;padding:5px 8px;display:grid;position:relative;box-shadow:0 5px 15px #22235f29}.driving-endpoint>span{pointer-events:none}.driving-endpoint small,.driving-detour-marker small{color:#5b5872;text-overflow:ellipsis;white-space:nowrap;font-size:8px;font-weight:750;line-height:1.2;overflow:hidden}.driving-endpoint strong,.driving-detour-marker strong{text-overflow:ellipsis;white-space:nowrap;font:750 11px/1.15 Georgia,serif;overflow:hidden}.driving-detour-marker>b{color:#9f2452;background:#fffaf3;border-radius:8px;box-shadow:0 0 0 2px #ef628f}.driving-detour-marker>span{opacity:0;border-color:#c9366859;transition:opacity .15s,transform .15s;transform:translate(-4px)}.driving-detour-shell:hover .driving-detour-marker>span,.driving-detour-shell:focus .driving-detour-marker>span,.driving-detour-shell:focus-visible .driving-detour-marker>span{opacity:1;transform:translate(0)}.leaflet-tooltip{background:var(--ink)!important;color:#fff!important;border:0!important;border-radius:11px!important;box-shadow:0 12px 30px #22235f40!important}.leaflet-tooltip-top:before{border-top-color:var(--ink)!important}.leaflet-tooltip-bottom:before{border-bottom-color:var(--ink)!important}.leaflet-tooltip-left:before{border-left-color:var(--ink)!important}.leaflet-tooltip-right:before{border-right-color:var(--ink)!important}.place-tooltip small,.route-tooltip small{color:var(--mint);font:750 8px/1 var(--font-geist-mono),monospace;text-transform:uppercase;margin-bottom:5px;display:block}.place-tooltip strong,.route-tooltip strong{margin-bottom:4px;font:600 15px/1.15 Georgia,serif;display:block}.place-tooltip span,.route-tooltip span{color:#eee4f0;font-size:9px;display:block}.place-tooltip p{color:#d5ced9;white-space:normal;max-width:220px;margin:7px 0 0;font-size:8px;line-height:1.4}.city-tooltip{width:min(280px,100vw - 48px)}.city-tooltip>span{white-space:normal}.place-tooltip .place-rating{color:#ffe09c;border-top:1px solid #ffffff29;padding-top:7px;font-weight:800}.route-tooltip .route-via{color:#ffe09c;white-space:normal;margin-top:6px;font-weight:750}.route-tooltip em{color:var(--pink);font:750 8px/1 var(--font-geist-mono),monospace;margin-top:6px;font-style:normal;display:block}.route-tooltip p{color:#d5ced9;white-space:normal;max-width:220px;margin:7px 0 0;font-size:8px;line-height:1.4}.city-map-actions{z-index:470;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffaf3e0;border:1px solid #22235f24;border-radius:99px;gap:3px;padding:3px;display:flex;position:absolute;top:14px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #22235f24}.city-map-actions button{min-height:40px;color:var(--ink);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:99px;padding:0 14px;font-size:12px;font-weight:850}.city-map-actions button.active{background:var(--ink);color:#fff}.city-driving-panel{z-index:470;width:min(390px,100% - 32px);max-height:calc(100% - 100px);color:var(--ink);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffaf3f5;border:1px solid #22235f33;border-radius:14px;position:absolute;top:68px;left:16px;overflow:auto;box-shadow:0 12px 32px #22235f33}.city-driving-routes{background:#22235f0f;border-bottom:1px solid #22235f21;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:3px;padding:4px;display:grid}.city-driving-routes button{color:#56536e;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:9px;gap:3px;min-width:0;padding:9px 10px;display:grid}.city-driving-routes button:hover{background:#ffffff9e}.city-driving-routes button.active{color:var(--ink);background:#fff;box-shadow:0 2px 8px #22235f1f}.city-driving-routes small{color:#a91f52;font:850 7px/1 var(--font-geist-mono),monospace;letter-spacing:.08em;text-transform:uppercase}.city-driving-routes strong{text-overflow:ellipsis;white-space:nowrap;font-size:11px;line-height:1.2;overflow:hidden}.city-driving-routes button>span{font-size:8px;font-weight:700;line-height:1.25}.city-driving-baseline{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.city-driving-baseline>span{background:#f4efe8;border:1px solid #22235f1f;border-radius:8px;min-width:0;padding:8px}.city-driving-baseline small,.city-driving-baseline strong{display:block}.city-driving-baseline small{color:#666276;text-transform:uppercase;margin-bottom:4px;font-size:7px;font-weight:800;line-height:1.15}.city-driving-baseline button{color:#753b95;cursor:pointer;background:0 0;border:0;grid-column:1/-1;justify-self:start;padding:2px 0;font-size:9px;font-weight:850}.city-driving-detours{border-top:1px solid #22235f21;margin-top:10px;padding-top:9px}.city-driving-detours>p{justify-content:space-between;align-items:baseline;gap:8px;margin:0 0 7px;display:flex}.city-driving-detours>p b{color:#a91f52;font:850 8px/1 var(--font-geist-mono),monospace;letter-spacing:.06em;text-transform:uppercase}.city-driving-detours>p span{color:#696579;text-align:right;font-size:7px;font-weight:700}.city-driving-detours ol{gap:4px;margin:0;padding:0;list-style:none;display:grid}.city-driving-detours a{min-width:0;color:var(--ink);background:#fff;border:1px solid #22235f1f;border-radius:8px;grid-template-columns:22px minmax(0,1fr) 14px;align-items:center;gap:7px;padding:6px 7px;text-decoration:none;display:grid}.city-driving-detours a:hover{background:#fff7f7;border-color:#c93668}.city-driving-detours a>b{color:#9f2452;width:22px;height:22px;font:900 8px/1 var(--font-geist-mono),monospace;background:#fbe1ea;border-radius:6px;place-items:center;display:grid}.city-driving-detours a span{gap:2px;min-width:0;display:grid}.city-driving-detours a strong,.city-driving-detours a small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.city-driving-detours a strong{font-size:9px}.city-driving-detours a small{color:#666276;font-size:7px;font-weight:700}.city-driving-detours a i{color:#753b95;font-size:10px;font-style:normal}.city-driving-empty{color:#5d596d;margin:0;padding:14px;font-size:11px;font-weight:700}.city-plan-filters{z-index:470;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffaf3e0;border:1px solid #22235f24;border-radius:99px;gap:3px;padding:3px;display:flex;position:absolute;top:60px;left:50%;transform:translate(-50%);box-shadow:0 6px 18px #22235f1f}.city-plan-filters button{min-height:34px;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:99px;padding:0 12px;font-size:11px;font-weight:850}.city-plan-filters button.active{background:var(--ink);color:#fff}.map-plan-panel{z-index:1100;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffaf3f5;border:1px solid #22235f2e;border-radius:18px;flex-direction:column;width:min(440px,100% - 36px);display:flex;position:absolute;top:108px;bottom:18px;right:18px;overflow:hidden;box-shadow:0 18px 50px #22235f3d}.map-plan-panel>header{background:var(--ink);color:#fff;flex:none;justify-content:space-between;align-items:center;gap:14px;padding:15px 17px;display:flex}.map-plan-panel>header small{color:var(--mint);font:800 8px/1 var(--font-geist-mono),monospace;letter-spacing:.12em;text-transform:uppercase;margin-bottom:4px;display:block}.map-plan-panel>header h2{letter-spacing:-.035em;margin:0;font:500 23px/1 Georgia,serif}.map-plan-panel>header button{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff2e;border-radius:50%;flex:none;width:34px;height:34px;font-size:18px}.map-plan-cards{overscroll-behavior:contain;scrollbar-gutter:stable;touch-action:pan-y;min-height:0;padding:13px 13px calc(24px + env(safe-area-inset-bottom));flex:auto;grid-auto-rows:max-content;align-content:start;gap:12px;display:grid;overflow:hidden auto}.map-plan-cards:focus-visible{outline:3px solid var(--focus-ring);outline-offset:-4px}.map-plan-cards .activity-card,.map-plan-cards .restaurant-card-wrap{width:100%}.place-card{z-index:460;color:#fff;width:225px;box-shadow:var(--shadow);-webkit-backdrop-filter:blur(13px)saturate(1.12);backdrop-filter:blur(13px)saturate(1.12);background:linear-gradient(145deg,#22235fd1,#452b67c7);border:1px solid #fff3;border-radius:16px 16px 16px 5px;padding:16px;position:absolute;top:20px;right:22px}.mobile-city-card{z-index:460;color:#fff;width:min(300px,100vw - 44px);box-shadow:var(--shadow-float);-webkit-backdrop-filter:blur(13px)saturate(1.12);backdrop-filter:blur(13px)saturate(1.12);background:#22235ff0;border:1px solid #ffffff4d;border-radius:16px 16px 16px 5px;position:absolute;top:20px;right:22px;overflow:hidden}.mobile-city-card-header{grid-template-columns:minmax(0,1fr) 36px;align-items:stretch;display:grid}.mobile-city-card-toggle{color:#fff;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:34px minmax(0,1fr) 18px;align-items:center;gap:9px;min-width:0;min-height:76px;padding:11px 8px 11px 12px;display:grid}.mobile-city-card-number{color:#fff;width:34px;height:34px;font:800 11px/1 var(--font-geist-mono),monospace;background:#315d50;border:2px solid #fff5df;border-radius:50%;place-items:center;display:grid}.mobile-city-card-toggle small,.mobile-city-card-toggle strong,.mobile-city-card-toggle em{min-width:0;display:block}.mobile-city-card-toggle small{color:var(--mint);font:800 9px/1.2 var(--font-geist-mono),monospace;letter-spacing:.08em;text-transform:uppercase}.mobile-city-card-toggle strong{letter-spacing:-.035em;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font:600 21px/1 Georgia,serif;overflow:hidden}.mobile-city-card-toggle em{color:#ffffffc2;margin-top:4px;font-size:11px;font-style:normal}.mobile-city-card-toggle>i{color:var(--pink);text-align:center;font-size:21px;font-style:normal;transition:transform .18s}.mobile-city-card.expanded .mobile-city-card-toggle>i{transform:rotate(90deg)}.mobile-city-card-close{color:#fff;cursor:pointer;background:#ffffff14;border:0;border-radius:50%;align-self:start;width:36px;min-height:44px;margin:8px 8px 0 0;font-size:19px}.mobile-city-card-details{border-top:1px solid #ffffff21;gap:6px;padding:0 11px 11px;display:grid}.mobile-city-card-details>button{color:#fff;text-align:left;cursor:pointer;background:#ffffff14;border:1px solid #ffffff26;border-radius:9px;justify-content:space-between;align-items:center;gap:10px;min-height:42px;padding:8px 10px;display:flex}.mobile-city-card-details>button span{font-size:12px;font-weight:800}.mobile-city-card-details>button b{color:var(--mint);text-align:right;text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.mobile-city-map-button{background:var(--pink);width:calc(100% - 22px);min-height:44px;color:var(--ink);cursor:pointer;border:0;border-radius:99px;justify-content:center;align-items:center;gap:6px;margin:0 11px 8px;font-size:12px;font-weight:850;display:flex}.mobile-city-map-button span{color:var(--ink);font-size:15px}.place-card.card-left{left:26px;right:auto}.place-card:after{content:"";pointer-events:none;border:1px solid #a8dacd2e;border-radius:11px 11px 11px 3px;position:absolute;inset:5px}.place-kicker{color:var(--mint);font:800 8px/1 var(--font-geist-mono),monospace;text-transform:uppercase;letter-spacing:.13em;justify-content:space-between;align-items:center;display:flex}.place-kicker button{z-index:2;color:#fff;cursor:pointer;background:#ffffff14;border:0;border-radius:50%;width:24px;height:24px;position:relative}.place-card h2{letter-spacing:-.04em;margin:6px 0 1px;font:500 24px/1 Georgia,serif}.place-dates{color:#ffffffa8;margin:0;font-size:10px}.stay-metrics{background:#a8dacd12;border:1px solid #a8dacd33;border-radius:9px;grid-template-columns:1fr 1fr;margin:12px 0 9px;display:grid}.stay-metrics div+div{border-left:1px solid #a8dacd33}.stay-metrics strong{color:var(--pink);font:800 14px/1 var(--font-geist-mono),monospace;margin-right:4px}.stay-metrics span{text-transform:uppercase;font-size:8px;font-weight:800}.hotel-row{z-index:2;color:#fff;text-align:left;cursor:pointer;background:0 0;border:0;border-top:1px solid #ffffff1a;grid-template-columns:28px 1fr 14px;align-items:center;gap:7px;width:100%;padding:8px 0;display:grid;position:relative}.hotel-icon{background:var(--mint);width:28px;height:28px;color:var(--ink);border-radius:50%;place-items:center;display:grid}.hotel-row small{color:var(--mint);text-transform:uppercase;letter-spacing:.09em;margin-bottom:2px;font-size:7px;display:block}.hotel-row strong{font-size:10px;display:block}.hotel-row i{color:var(--pink);font-size:20px;font-style:normal}.place-plan-summary{z-index:2;grid-template-columns:1fr 1fr;gap:5px;margin:2px 0 7px;display:grid;position:relative}.place-plan-summary button{color:#fff;text-align:left;cursor:pointer;background:#ffffff12;border:1px solid #ffffff24;border-radius:8px;grid-template-columns:auto 1fr;align-items:center;gap:5px;min-width:0;padding:6px;display:grid}.place-plan-summary b{color:var(--pink);font:800 13px/1 var(--font-geist-mono),monospace}.place-plan-summary .confirmed b{color:var(--mint)}.place-plan-summary span,.place-plan-summary small{min-width:0;display:block}.place-plan-summary span{font-size:9px;font-weight:800}.place-plan-summary small{color:#ffffff94;text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:7px;font-weight:650;overflow:hidden}.explore-button{z-index:2;background:var(--pink);width:100%;color:var(--ink);cursor:pointer;border:0;border-radius:99px;padding:10px 12px;font-size:9px;font-weight:850;position:relative}.explore-button span{margin-left:6px}.city-button{z-index:2;background:var(--purple);color:#fff;cursor:pointer;border:1px solid #ffffff4d;border-radius:99px;width:100%;min-height:36px;margin:2px 0 6px;padding:7px 9px;font-size:9px;font-weight:800;transition:background .16s,box-shadow .16s,transform .16s;position:relative;box-shadow:0 7px 18px #22235f3d}.city-button:hover{background:#8b5ab0;transform:translateY(-1px);box-shadow:0 9px 22px #22235f4d}.city-button:active{transform:translateY(0)}.city-button span{color:var(--mint);margin-left:5px;font-size:15px}.workspace-view{z-index:600;color:#fff;background:radial-gradient(circle at 16% -8%,#7a4d9f94,#0000 34%),radial-gradient(circle at 86% 18%,#a8dacd1a,#0000 28%),repeating-linear-gradient(97deg,#0000 0 3px,#ffffff05 4px),linear-gradient(155deg,#22235f 0%,#171842 72%,#12132f 100%);padding:30px clamp(24px,4vw,58px) 70px;position:absolute;inset:0;overflow:auto}.workspace-view:before{content:"";z-index:-1;opacity:.28;pointer-events:none;background-image:radial-gradient(circle at 1px 1px,#ffffff14 1px,#0000 0);background-size:22px 22px;position:fixed;inset:80px 0 0 256px}.workspace-header{border-bottom:1px solid #a8dacd3d;justify-content:space-between;align-items:flex-end;gap:25px;max-width:1200px;margin:0 auto 22px;padding-bottom:20px;display:flex}.workspace-header p{color:var(--mint);font:800 9px/1 var(--font-geist-mono),monospace;text-transform:uppercase;letter-spacing:.13em;margin:0 0 5px}.workspace-header h2{letter-spacing:-.045em;margin:0;font:500 clamp(27px,3vw,42px)/1 Georgia,serif}.workspace-header>div>span{color:#ffffffb3;margin-top:8px;font-size:11px;display:block}.workspace-stats{gap:9px;display:flex}.workspace-stats>span,.workspace-stats>button{color:#ffffffb8;text-align:left;text-transform:uppercase;background:#ffffff14;border:1px solid #a8dacd47;border-radius:11px;min-width:86px;padding:10px 12px;font-size:8px;box-shadow:0 9px 24px #07082138}.workspace-stats>button{cursor:pointer;transition:border-color .16s,background .16s,transform .16s}.workspace-stats>button.active{border-color:var(--pink);background:var(--pink);color:var(--ink);box-shadow:0 7px 18px #07082147}.workspace-stats b{color:var(--pink);font:800 18px/1 var(--font-geist-mono),monospace;margin-bottom:3px;display:block}.workspace-stats .view-plans-map{background:var(--pink);min-width:104px;color:var(--ink);text-align:center;border-color:#eb68a0a8;place-items:center;font-weight:900;display:grid}.workspace-stats .view-plans-map:hover{background:#f38ab6;border-color:#fff}.plan-results{gap:24px;max-width:1200px;margin:0 auto;display:grid}.plan-result-group{gap:12px;padding-top:4px;display:grid}.plan-result-group>header{border-bottom:1px solid #a8dacd3d;align-items:baseline;gap:9px;padding-bottom:9px;display:flex}.plan-result-group>header span{color:var(--mint);font:800 9px/1 var(--font-geist-mono),monospace;text-transform:uppercase;letter-spacing:.11em}.plan-result-group>header h3{margin:0;font:600 20px/1 Georgia,serif}.plan-result-group .activity-grid,.plan-result-group .restaurant-grid{width:100%;max-width:none;margin:0}.plans-empty{background:var(--surface);color:var(--text-secondary);text-align:center;border:1px dashed #7a4d9f4d;border-radius:18px;padding:48px 24px}.plans-empty>span{color:var(--pink);font-size:28px}.plans-empty h3{color:var(--ink);margin:8px 0 5px;font:600 22px/1 Georgia,serif}.plans-empty p{margin:0;font-size:12px}.kind-tabs{gap:7px;max-width:1200px;margin:0 auto 18px;display:flex}.kind-tabs button{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #a8dacd47;border-radius:99px;padding:9px 14px;font-size:9px;font-weight:800;box-shadow:0 8px 20px #07082133}.kind-tabs button.active{border-color:var(--pink);background:var(--pink);color:var(--ink)}.kind-tabs button.active span{color:var(--ink)}.kind-tabs span{color:var(--pink);margin-left:5px}.planner-toolbar{justify-content:space-between;align-items:flex-start;gap:12px;max-width:1200px;margin:0 auto 18px;display:flex}.planner-toolbar .kind-tabs{margin:0}.owner-plan-actions{gap:7px;display:flex}.owner-plan-actions button{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #a8dacd47;border-radius:99px;min-height:38px;padding:0 13px;font-size:11px;font-weight:800;box-shadow:0 8px 20px #07082133}.owner-plan-actions button:disabled{opacity:.45;cursor:not-allowed}.owner-plan-actions .ai-import-button{background:var(--ink);color:#fff;border-color:#7a4d9f59}.planner-status{max-width:1200px;color:var(--purple);margin:-8px auto 14px;font-size:11px}.recommendation-review{gap:28px;max-width:1200px;margin:0 auto;display:grid}.recommendation-review-group{gap:13px;display:grid}.recommendation-review-group>header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding-bottom:10px;display:flex}.recommendation-review-group>header p{color:var(--purple);font:800 9px/1 var(--font-geist-mono),monospace;letter-spacing:.1em;text-transform:uppercase;margin:0 0 4px}.recommendation-review-group>header h3{margin:0;font:600 22px/1 Georgia,serif}.recommendation-review-group>header>span{background:var(--ink);min-width:32px;height:32px;color:var(--mint);font:800 11px/1 var(--font-geist-mono),monospace;border-radius:50%;place-items:center;display:grid}.recommendation-review-group.reviewed>header>span{color:var(--purple);background:#7a4d9f1f}.recommendation-review-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.recommendation-review-card{border:1px solid var(--line-strong);background:linear-gradient(145deg,var(--surface),#a8dacd1f);min-height:230px;box-shadow:var(--shadow-base);border-radius:15px;flex-direction:column;padding:18px;display:flex}.recommendation-review-card.accepted{background:linear-gradient(145deg,var(--surface),#a8dacd38);border-color:#5f967473}.recommendation-review-card.dismissed{opacity:.66;background:var(--surface-soft)}.recommendation-card-topline{justify-content:space-between;align-items:center;gap:10px;display:flex}.recommendation-card-topline span{color:var(--rose-text);font:850 8px/1 var(--font-geist-mono),monospace;letter-spacing:.08em;text-transform:uppercase;background:#eb68a026;border-radius:99px;padding:6px 9px}.recommendation-card-topline b{color:var(--purple);font-size:10px}.recommendation-review-card h4{margin:13px 0 7px;font:600 22px/1.08 Georgia,serif}.recommendation-review-card>p{color:var(--text-secondary);margin:0;font-size:12px;line-height:1.5}.recommendation-review-card>small{color:var(--text-muted);margin-top:12px;font-size:9px;display:block}.recommendation-review-card>a{width:max-content;color:var(--purple);margin-top:9px;font-size:10px;font-weight:800;text-decoration:none}.recommendation-review-card footer{justify-content:flex-end;gap:7px;margin-top:auto;padding-top:16px;display:flex}.recommendation-review-card footer button{border:1px solid var(--line);background:var(--surface);min-height:36px;color:var(--purple);cursor:pointer;border-radius:99px;padding:0 13px;font-size:10px;font-weight:800}.recommendation-review-card footer button.keep{border-color:var(--mint);background:var(--mint);color:var(--ink)}.recommendation-empty{padding:34px 20px}.add-activity-form{border:1px solid var(--line-strong);background:var(--surface);max-width:1200px;box-shadow:var(--shadow-base);border-radius:17px;margin:0 auto 20px;padding:20px}.add-activity-form>header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:17px;display:flex}.add-activity-form header small{color:var(--purple);font:800 10px/1 var(--font-geist-mono),monospace;text-transform:uppercase;letter-spacing:.1em}.add-activity-form header h3{margin:5px 0 4px;font:600 23px/1.1 Georgia,serif}.add-activity-form header p{color:#766e78;margin:0;font-size:12px}.add-activity-form header>button{border:1px solid var(--line);background:var(--surface);width:36px;height:36px;color:var(--ink);cursor:pointer;border-radius:50%;font-size:18px}.add-activity-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.add-activity-fields label{color:#766e78;text-transform:uppercase;letter-spacing:.06em;gap:6px;font-size:10px;font-weight:800;display:grid}.add-activity-fields label.wide{grid-column:1/-1}.add-activity-fields input,.add-activity-fields textarea{border:1px solid var(--line);width:100%;min-height:42px;color:var(--ink);font:500 13px/1.4 var(--font-geist-sans),sans-serif;background:#fff;border-radius:9px;outline:none;padding:10px 12px}.add-activity-fields textarea{resize:vertical;min-height:78px}.add-activity-fields input:focus,.add-activity-fields textarea:focus{border-color:var(--purple);box-shadow:0 0 0 3px #7a4d9f1a}.add-activity-form footer{justify-content:flex-end;align-items:center;gap:8px;margin-top:16px;display:flex}.add-activity-form footer span{color:var(--purple);margin-right:auto;font-size:11px}.add-activity-form footer button{border:1px solid var(--line);background:var(--surface);min-height:40px;color:var(--ink);cursor:pointer;border-radius:99px;padding:0 14px;font-size:11px;font-weight:800}.add-activity-form footer button[type=submit]{border-color:var(--pink);background:var(--pink)}.quick-add-form{max-width:760px}.quick-kind-picker{gap:8px;margin:0 0 14px;display:flex}.quick-kind-picker button{border:1px solid var(--line);color:#655a67;min-height:38px;font:800 11px/1 var(--font-geist-sans),sans-serif;cursor:pointer;background:#ffffffb3;border-radius:999px;padding:0 13px}.quick-kind-picker button.active{border-color:var(--purple);background:var(--purple);color:var(--mint);box-shadow:0 5px 14px #22235f29}.quick-add-basics{background:#ffffff73;border:1px solid #7a4d9f2b;border-radius:12px;padding:14px}.quick-add-details{border-top:1px solid #7a4d9f29;margin-top:12px}.quick-add-details>summary{color:var(--purple);cursor:pointer;padding:13px 2px 3px;font-size:12px;font-weight:800}.quick-add-details[open]>summary{margin-bottom:12px}.quick-booked-toggle{color:#514957;cursor:pointer;align-items:center;gap:8px;margin-top:14px;font-size:12px;font-weight:750;display:flex}.quick-booked-toggle input{width:16px;height:16px;accent-color:var(--purple)}.plan-import-backdrop{z-index:1700;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#1613318c;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.plan-import-dialog{background:var(--paper);width:min(780px,100%);max-height:calc(100dvh - 40px);box-shadow:var(--shadow-modal);border:1px solid #ffffff59;border-radius:20px;flex-direction:column;animation:.18s ease-out modalIn;display:flex;overflow:hidden}.plan-import-header{background:linear-gradient(135deg,var(--ink),#3f397b);color:#fff;flex:none;justify-content:space-between;align-items:flex-start;gap:24px;padding:23px 25px 20px;display:flex}.plan-import-header small{color:var(--mint);font:800 9px/1 var(--font-geist-mono),monospace;text-transform:uppercase;letter-spacing:.13em}.plan-import-header h2{letter-spacing:-.03em;margin:6px 0;font:500 29px/1 Georgia,serif}.plan-import-header p{color:#ffffffb8;max-width:600px;margin:0;font-size:11px;line-height:1.5}.plan-import-header>button{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #ffffff2e;border-radius:50%;flex:none;width:38px;height:38px;font-size:20px}.plan-import-source,.plan-import-review{min-height:0;padding:22px 25px 24px;overflow:auto}.plan-import-file{background:var(--surface-tint);min-height:150px;color:var(--ink);cursor:pointer;text-align:center;border:1px dashed #7a4d9f6b;border-radius:15px;align-content:center;place-items:center;gap:5px;padding:20px;display:grid}.plan-import-file>span{color:var(--pink);font-size:31px;line-height:1}.plan-import-file strong{font:600 18px/1.2 Georgia,serif}.plan-import-file small{color:#817786;font-size:10px}.plan-import-file input{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.plan-import-or{color:#948995;text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:12px;margin:16px 0;font-size:9px;font-weight:800;display:flex}.plan-import-or:before,.plan-import-or:after{content:"";background:var(--line);flex:1;height:1px}.plan-import-email{color:#766e78;text-transform:uppercase;letter-spacing:.07em;gap:7px;font-size:9px;font-weight:800;display:grid}.plan-import-email textarea{resize:vertical;min-height:116px}.plan-import-alert{color:#6f2a4a;background:#b1306812;border:1px solid #b130683d;border-radius:11px;grid-template-columns:30px 1fr;gap:10px;margin-top:14px;padding:12px 14px;display:grid}.plan-import-alert>span{width:30px;height:30px;font:800 13px/1 var(--font-geist-mono),monospace;background:#b1306821;border-radius:50%;place-items:center;display:grid}.plan-import-alert strong{margin:1px 0 3px;font:700 13px/1.2 Georgia,serif;display:block}.plan-import-alert p{margin:0;font-size:10px;line-height:1.45}.plan-import-alert small{color:inherit;font:700 8px/1.3 var(--font-geist-mono),monospace;text-transform:uppercase;letter-spacing:.06em;margin-top:6px;display:block}.plan-import-alert.is-credits{color:#77511d;background:#ecb14921;border-color:#c282244d}.plan-import-alert.is-credits>span{background:#c282242e}.plan-import-source textarea,.plan-import-fields input,.plan-import-fields textarea,.plan-import-fields select{border:1px solid var(--line);width:100%;min-height:42px;color:var(--ink);font:500 12px/1.4 var(--font-geist-sans),sans-serif;background:#fff;border-radius:9px;outline:none;padding:10px 12px}.plan-import-source textarea:focus,.plan-import-fields input:focus,.plan-import-fields textarea:focus,.plan-import-fields select:focus{border-color:var(--purple);box-shadow:0 0 0 3px #7a4d9f1a}.plan-import-source footer,.plan-import-review footer{justify-content:flex-end;align-items:center;gap:8px;margin-top:18px;display:flex}.plan-import-source footer>span,.plan-import-review footer>span{color:var(--purple);flex:1;font-size:10px;line-height:1.4}.plan-import-source footer button,.plan-import-review footer button{border:1px solid var(--line);background:var(--surface);min-height:40px;color:var(--ink);cursor:pointer;border-radius:99px;padding:0 15px;font-size:10px;font-weight:800}.plan-import-source footer button.plan-import-primary,.plan-import-review footer button.plan-import-primary{border-color:var(--pink);background:var(--pink)}.plan-import-source button:disabled,.plan-import-review button:disabled,.plan-import-header button:disabled{opacity:.55;cursor:wait}.plan-import-detected{color:var(--purple);background:#a8dacd33;border-radius:10px;align-items:center;gap:10px;margin-bottom:16px;padding:10px 12px;font-size:10px;display:flex}.plan-import-detected span{font:800 8px/1 var(--font-geist-mono),monospace;text-transform:uppercase;letter-spacing:.1em}.plan-import-detected button{color:var(--purple);cursor:pointer;background:0 0;border:0;margin-left:auto;padding:0;font-size:9px;font-weight:800;text-decoration:underline}.plan-import-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.plan-import-fields label{color:#766e78;text-transform:uppercase;letter-spacing:.06em;align-content:start;gap:6px;font-size:9px;font-weight:800;display:grid}.plan-import-fields label.wide{grid-column:1/-1}.plan-import-fields textarea{resize:vertical;min-height:76px}.plan-import-privacy{color:#6e6370;background:#7a4d9f14;border-radius:9px;margin:15px 0 0;padding:10px 12px;font-size:10px;line-height:1.45}.activity-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;max-width:1200px;margin:0 auto;display:grid}.activity-card{border:1px solid var(--line-strong);background:var(--surface);min-height:252px;color:var(--ink);box-shadow:var(--shadow-base);border-radius:16px;flex-direction:column;padding:20px;display:flex;position:relative;overflow:hidden}.activity-card.early-start{border-color:var(--line-strong);background:var(--surface-soft)}.activity-card.dismissed{opacity:.58;filter:saturate(.55)}.activity-card.featured:after{content:"✦";color:#eb68a01a;font-size:88px;position:absolute;top:-20px;right:-5px}.activity-topline{z-index:1;color:var(--purple);font:800 8px/1 var(--font-geist-mono),monospace;text-transform:uppercase;letter-spacing:.11em;flex-wrap:wrap;align-items:center;gap:6px;display:flex;position:relative}.activity-topline>span:first-child{margin-right:auto}.activity-topline b{background:var(--pink);min-height:24px;color:var(--ink);letter-spacing:.12em;border:1px solid #22235f1f;border-radius:99px;align-items:center;padding:6px 10px;font-size:10px;font-weight:900;line-height:1;display:inline-flex;box-shadow:0 2px 8px #22235f14}.activity-topline .plan-status,.restaurant-copy .plan-status{color:#5f5966;background:#eee9e2}.activity-topline .plan-status.confirmed,.restaurant-copy .plan-status.confirmed{background:var(--mint);color:#173f38}.activity-topline .source-pick{color:#6b2f63;background:#fff0ba}.activity-card h3{z-index:1;letter-spacing:-.025em;margin:10px 0 7px;font:600 20px/1.08 Georgia,serif;position:relative}.activity-card>p{z-index:1;color:var(--text-secondary);margin:0;font-size:10px;line-height:1.5;position:relative}.activity-facts{color:var(--text-muted);gap:16px;margin:14px 0 8px;font-size:8px;display:flex}.activity-facts span{flex-direction:column;display:flex}.activity-facts b{color:var(--ink);font:800 10px/1.2 var(--font-geist-mono),monospace;margin-bottom:2px}.fit-label.best-fit{color:#174f43;background:#d9f1e9;border-color:#86c7b6}.fit-label.good-fit{color:#4f3672;background:#eee6f7;border-color:#b8a3d4}.fit-label.early-start{color:#70432f;background:#f8e8dc;border-color:#d6a98f}.review-signal{color:#62518e;align-items:baseline;gap:7px;width:max-content;max-width:100%;margin:0 0 9px;text-decoration:none;display:flex}.review-signal b{font:800 10px/1 var(--font-geist-mono),monospace;flex:none}.review-signal span{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.activity-card .timing-note{border-top:1px solid var(--line);min-height:27px;color:var(--text-secondary);padding-top:8px;font-size:8px}.private-plan-note{background:#a8dacd33;border-radius:9px;padding:10px;margin:8px 0 0!important}.private-plan-note b{color:var(--purple);text-transform:uppercase;margin-bottom:3px;font-size:9px;display:block}.plan-confirmation{border:1px dashed #7a4d9f4d;border-radius:9px;justify-content:space-between;align-items:center;gap:10px;margin-top:8px;padding:9px 10px;display:flex}.plan-confirmation>small{color:var(--purple);text-transform:uppercase;font-size:9px;font-weight:800}.activity-actions{grid-template-columns:1fr auto;align-items:end;gap:10px;margin-top:auto;padding-top:10px;display:grid}.couple-ratings{gap:7px;display:grid}.score-control small{color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;margin-bottom:4px;font-size:7px;display:block}.score-control div{gap:2px;display:flex}.score-control button{color:#c2b8c3;cursor:pointer;background:0 0;border:0;width:20px;height:20px;padding:0;font-size:11px}.score-control button.scored{color:var(--pink)}.book-toggle{border:1px solid var(--line-strong);background:var(--surface);height:29px;color:var(--ink);cursor:pointer;border-radius:99px;align-items:center;gap:5px;padding:0 10px;font-size:8px;font-weight:800;display:flex}.book-toggle span{color:var(--pink)}.book-toggle.booked{border-color:var(--mint);background:var(--mint)}.book-toggle.booked span{color:var(--ink)}.dismiss-toggle{color:#8b7784;cursor:pointer;background:0 0;border:0;grid-column:1/-1;justify-self:start;padding:5px 0;font-size:10px;font-weight:750;text-decoration:underline}.family-booked{background:var(--mint);width:max-content;color:var(--ink);border-radius:99px;grid-column:1/-1;padding:6px 9px;font-size:10px;font-weight:800}.activity-actions>a{color:var(--purple);grid-column:1/-1;font-size:8px;font-weight:800;text-decoration:none}.restaurant-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;max-width:1100px;margin:0 auto;display:grid}.restaurant-card-wrap{border:1px solid var(--line-strong);background:var(--surface);min-width:0;color:var(--ink);box-shadow:var(--shadow-base);border-radius:13px;transition:border-color .18s,transform .18s;position:relative;overflow:hidden}.restaurant-card-wrap.dismissed{opacity:.58;filter:saturate(.55)}.restaurant-card-wrap:focus-within{border-color:#7a4d9f59;transform:translateY(-2px)}.restaurant-card-wrap:has(.restaurant-card:hover){border-color:#7a4d9f59;transform:translateY(-2px)}.restaurant-card{width:100%;min-height:116px;color:inherit;text-align:left;cursor:pointer;box-shadow:none;background:0 0;border:0;border-radius:0;grid-template-columns:44px 1fr 20px;align-items:center;gap:12px;padding:14px;display:grid}.restaurant-monogram{background:var(--purple);width:44px;height:44px;color:var(--mint);border-radius:50% 50% 47% 53%;place-items:center;font:500 20px/1 Georgia,serif;display:grid}.restaurant-copy{min-width:0;display:block}.restaurant-copy small{color:var(--pink);font:800 7px/1 var(--font-geist-mono),monospace;text-transform:uppercase;margin-bottom:3px;display:block}.restaurant-copy small.source-pick{color:#9e3564}.restaurant-copy small.plan-status{border-radius:99px;width:max-content;padding:4px 7px}.restaurant-copy strong{font:600 16px/1.1 Georgia,serif;display:block}.restaurant-copy em{color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:8px;font-style:normal;line-height:1.4;display:block;overflow:hidden}.restaurant-meta,.restaurant-ratings{flex-wrap:wrap;align-items:center;gap:5px;margin-top:7px;display:flex}.restaurant-meta>span{color:#4f3672;background:#7a4d9f17;border-radius:99px;padding:4px 7px;font-size:10px;font-weight:750;line-height:1.2}.restaurant-meta>.restaurant-price{color:#285e52;font-family:var(--font-geist-mono),monospace;letter-spacing:.06em;background:#a8dacd3d;font-weight:900}.restaurant-ratings>span{color:#6e6470;align-items:baseline;gap:4px;font-size:10px;line-height:1.2;display:inline-flex}.restaurant-ratings b{color:var(--ink);font-size:11px}.restaurant-ratings .google-rating b{color:#9b5a1e}.restaurant-arrow{color:var(--pink);font-size:21px}.restaurant-preferences{border-top:1px solid var(--line);background:var(--surface-tint);margin:0;padding:11px 14px 12px}.restaurant-dismiss{z-index:2;background:var(--surface);color:var(--text-muted);cursor:pointer;border:0;border-radius:99px;padding:4px 7px;font-size:9px;font-weight:800;text-decoration:underline;position:absolute;top:8px;right:39px}.upload-card{background:var(--surface);max-width:1000px;color:var(--ink);border:1px dashed #a8dacd94;border-radius:16px;grid-template-columns:54px 1fr auto;align-items:center;gap:14px;margin:0 auto 22px;padding:20px;display:grid;box-shadow:0 14px 34px #0708213d}.upload-symbol{background:var(--ink);width:52px;height:52px;color:var(--pink);border-radius:50%;place-items:center;font-size:25px;display:grid}.upload-card h3{margin:0 0 3px;font:600 18px/1.1 Georgia,serif}.upload-card p{color:var(--text-secondary);margin:0;font-size:8px}.file-picker{background:var(--purple);color:#fff;cursor:pointer;border-radius:99px;padding:9px 13px;font-size:8px;font-weight:800}.file-picker input{display:none}.caption-input{border:1px solid var(--line);width:100%;height:36px;color:var(--ink);background:#fff;border-radius:9px;outline:none;grid-column:2;padding:0 12px;font-size:9px}.caption-input:focus{border-color:var(--purple)}.upload-button{background:var(--pink);height:36px;color:var(--ink);cursor:pointer;border:0;border-radius:99px;padding:0 14px;font-size:8px;font-weight:850}.upload-status{color:var(--purple);grid-column:2/-1;font-size:8px}.photo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;max-width:1100px;margin:0 auto;display:grid}.photo-grid figure{border:1px solid var(--line-strong);background:var(--surface);color:var(--ink);box-shadow:var(--shadow-base);border-radius:15px;margin:0;overflow:hidden}.photo-grid img{aspect-ratio:4/3;object-fit:cover;width:100%;display:block}.photo-grid figcaption{justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;display:flex}.photo-grid figcaption span{flex-direction:column;min-width:0;display:flex}.photo-grid figcaption strong{text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.photo-grid figcaption small{color:#8a7e88;margin-top:2px;font-size:7px}.photo-grid figcaption button{width:24px;height:24px;color:var(--purple);cursor:pointer;background:#eb68a01f;border:0;border-radius:50%}.empty-journal{color:var(--ink);text-align:center;background:#fffdf9f5;border:1px solid #a8dacd61;border-radius:16px;grid-column:1/-1;padding:60px 20px;box-shadow:0 16px 38px #0708213d}.empty-journal span{color:var(--pink);font-size:24px}.empty-journal h3{margin:10px 0 5px;font:600 21px/1.1 Georgia,serif}.empty-journal p{color:var(--text-secondary);margin:0;font-size:9px}.sheet-backdrop,.modal-backdrop{z-index:1500;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#1613316b;justify-content:flex-end;display:flex;position:fixed;inset:0}.detail-sheet{background:var(--paper);flex-direction:column;width:min(620px,100%);height:100%;animation:.24s ease-out slideIn;display:flex;box-shadow:-25px 0 70px #22235f40}@keyframes slideIn{0%{opacity:.5;transform:translate(35px)}to{opacity:1;transform:translate(0)}}.detail-sheet>header,.info-modal>header{background:var(--ink);color:#fff;justify-content:space-between;align-items:center;padding:24px 26px 18px;display:flex}.detail-sheet header p,.info-modal header p{color:var(--mint);font:800 8px/1 var(--font-geist-mono),monospace;text-transform:uppercase;letter-spacing:.13em;margin:0 0 5px}.detail-sheet header h2,.info-modal header h2{letter-spacing:-.035em;margin:0;font:500 30px/1 Georgia,serif}.detail-sheet header button,.info-modal header button{color:#fff;cursor:pointer;background:#ffffff12;border:1px solid #ffffff24;border-radius:50%;width:32px;height:32px;font-size:18px}.detail-sheet>nav{border-bottom:1px solid var(--line);background:var(--surface);grid-template-columns:repeat(3,1fr);display:grid}.detail-sheet>nav button{color:#766b78;cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;padding:12px;font-size:9px;font-weight:800}.detail-sheet>nav button.active{border-bottom-color:var(--pink);color:var(--ink)}.detail-sheet>nav span{color:var(--purple)}.sheet-content{flex:1;padding:20px 24px 45px;overflow:auto}.sheet-activities{gap:12px;display:grid}.activity-card.compact{min-height:245px;box-shadow:none}.sheet-restaurants{gap:9px;display:grid}.sheet-group-title{color:var(--mint-text);background:#a8dacd3d;border-radius:10px;justify-content:space-between;align-items:center;gap:12px;margin:10px 0 0;padding:10px 12px;font-size:12px;font-weight:850;display:flex}.sheet-group-title:first-child{margin-top:0}.sheet-group-title.potential{color:var(--rose-text);background:#eb68a01c;margin-top:18px}.sheet-group-title b{background:var(--surface);min-width:25px;color:var(--ink);font:800 10px/1 var(--font-geist-mono),monospace;text-align:center;border-radius:99px;padding:4px 7px}.sheet-empty{color:#7c717c;text-align:center;border:1px dashed #7a4d9f40;border-radius:10px;margin:0;padding:18px;font-size:12px}.recommendation-sources{color:#625965;background:#a8dacd29;border:1px solid #7a4d9f2e;border-radius:12px;margin-top:4px;padding:14px 16px}.recommendation-sources summary{color:var(--ink);cursor:pointer;justify-content:space-between;align-items:center;gap:12px;font-size:12px;font-weight:800;display:flex}.recommendation-sources summary span{background:var(--mint);min-width:24px;color:var(--purple);font:800 10px/1 var(--font-geist-mono),monospace;text-align:center;border-radius:99px;padding:4px 7px}.recommendation-sources>p{margin:10px 0 0;font-size:11px;line-height:1.45}.recommendation-sources ul{border-top:1px solid #7a4d9f24;gap:10px;margin:12px 0 0;padding:12px 0 0;list-style:none;display:grid}.recommendation-sources li{gap:3px;display:grid}.recommendation-sources li span{font-size:11px;line-height:1.45}.recommendation-sources a{color:var(--purple);font-size:10px;font-weight:800;text-decoration:none}.hotel-details{max-width:500px;margin:0 auto}.hotel-title{background:linear-gradient(145deg,var(--purple),var(--ink));color:#fff;border-radius:14px;align-items:center;gap:12px;padding:17px;display:flex}.hotel-title>span{background:var(--mint);width:43px;height:43px;color:var(--ink);border-radius:50%;place-items:center;font-size:19px;display:grid}.hotel-title small{color:var(--mint);text-transform:uppercase;font-size:8px}.hotel-title h3{margin:3px 0 0;font:500 23px/1 Georgia,serif}.hotel-details dl,.modal-list{border-top:1px solid var(--line);margin:14px 0}.hotel-details dl>div,.modal-list>div{border-bottom:1px solid var(--line);grid-template-columns:120px 1fr;gap:13px;padding:11px 2px;display:grid}.hotel-details dt,.modal-list dt{color:#827783;font:800 8px/1.4 var(--font-geist-mono),monospace;text-transform:uppercase}.hotel-details dd,.modal-list dd{margin:0;font-size:10px;line-height:1.5}.hotel-details a{color:var(--purple)}.hotel-details dd em{color:#8b7e8a;font-size:9px}.visible-confirmation{flex-wrap:wrap;align-items:center;gap:5px;max-width:100%;display:inline-flex}.confirmation-code{overflow-wrap:anywhere;max-width:100%;color:var(--ink);font:800 9px/1.25 var(--font-geist-mono),monospace;letter-spacing:.04em;background:#a8dacd4d;border-radius:5px;padding:5px 8px}.copy-code{color:var(--purple);cursor:pointer;background:0 0;border:0;padding:4px 6px;font-size:8px;font-weight:800}.arrival-box,.weather-box,.fact-callout{background:#a8dacd42;border-radius:12px;gap:12px;margin:13px 0;padding:14px;display:flex}.arrival-box>span,.fact-callout>span{color:var(--pink);font-size:17px}.arrival-box b,.weather-box b,.fact-callout b{color:var(--purple);text-transform:uppercase;letter-spacing:.09em;margin-bottom:4px;font-size:8px;display:block}.arrival-box p,.weather-box p,.fact-callout p{color:#625965;margin:0;font-size:9px;line-height:1.55}.weather-box{background:#eb68a01c;display:block}.hotel-notes{color:#776c78;padding:0 3px;font-size:9px;line-height:1.55}.modal-link{background:var(--pink);border-radius:99px;margin-top:5px;padding:10px 14px;font-size:9px;font-weight:850;text-decoration:none;display:inline-block;color:var(--ink)!important}.modal-backdrop{z-index:1600;justify-content:center;align-items:center;padding:20px}.info-modal{background:var(--paper);width:min(500px,100%);max-height:min(680px,100vh - 40px);box-shadow:var(--shadow-modal);border-radius:18px;flex-direction:column;animation:.18s ease-out modalIn;display:flex;overflow:hidden}@keyframes modalIn{0%{opacity:.4;transform:translateY(12px)scale(.98)}to{opacity:1;transform:none}}.info-modal>header{padding:20px 22px}.info-modal header h2{font-size:26px}.modal-content{overscroll-behavior:contain;min-height:0;padding:22px;overflow:auto}.modal-lead{color:#5f5661;margin:0 0 14px;font:500 16px/1.45 Georgia,serif}.recommendation-modal{width:min(620px,100%)}.recommendation-form{display:grid}.recommendation-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.recommendation-fields label{color:#766e78;letter-spacing:.06em;text-transform:uppercase;gap:6px;font-size:9px;font-weight:800;display:grid}.recommendation-fields label.wide{grid-column:1/-1}.recommendation-fields input,.recommendation-fields select,.recommendation-fields textarea{border:1px solid var(--line);width:100%;min-height:43px;color:var(--ink);font:500 12px/1.4 var(--font-geist-sans),sans-serif;background:#fff;border-radius:9px;outline:none;padding:10px 12px}.recommendation-fields textarea{resize:vertical;min-height:96px}.recommendation-fields input:focus,.recommendation-fields select:focus,.recommendation-fields textarea:focus{border-color:var(--purple);box-shadow:0 0 0 3px #7a4d9f1a}.recommendation-form footer{justify-content:flex-end;align-items:center;gap:12px;margin-top:18px;display:flex}.recommendation-form footer span{color:var(--purple);flex:1;font-size:10px;line-height:1.4}.recommendation-form footer button{background:var(--pink);min-height:42px;color:var(--ink);cursor:pointer;border:0;border-radius:99px;padding:0 16px;font-size:11px;font-weight:850}.booking-modal{width:min(640px,100%)}.booking-form>p{color:#645b66;margin:0 0 17px;font-size:12px;line-height:1.55}.booking-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.booking-fields label{color:#766e78;letter-spacing:.06em;text-transform:uppercase;gap:6px;font-size:9px;font-weight:800;display:grid}.booking-fields label.wide{grid-column:1/-1}.booking-fields input{border:1px solid var(--line);width:100%;min-height:43px;color:var(--ink);font:500 12px/1.4 var(--font-geist-sans),sans-serif;background:#fff;border-radius:9px;outline:none;padding:10px 12px}.booking-fields input:focus{border-color:var(--purple);box-shadow:0 0 0 3px #7a4d9f1a}.booking-file{background:#7a4d9f0d;border:1px dashed #7a4d9f61;border-radius:11px;padding:13px}.booking-file input{text-transform:none;background:0 0;border:0;border-radius:0;min-height:auto;padding:0;font-size:11px}.booking-file small{color:#8a7f8c;letter-spacing:0;text-transform:none;font-size:9px;font-weight:600}.existing-confirmation{color:var(--purple);margin-top:13px;font-size:10px;font-weight:800;display:inline-block}.booking-form footer{justify-content:flex-end;align-items:center;gap:8px;margin-top:18px;display:flex}.booking-form footer>span{color:var(--purple);flex:1;font-size:10px;line-height:1.4}.booking-form footer button{border:1px solid var(--line);min-height:40px;color:var(--ink);cursor:pointer;background:#fff;border-radius:99px;padding:0 14px;font-size:10px;font-weight:850}.booking-form footer button[type=submit]{border-color:var(--pink);background:var(--pink)}.booking-form footer .unbook-button{color:#963653;border-color:#a2385b40}.booking-form footer button:disabled{opacity:.55;cursor:not-allowed}.booking-summary{background:#a8dacd1f;border:1px solid #a8dacd7a;border-radius:10px;gap:7px;margin:10px 13px 13px;padding:11px 12px;display:grid}.activity-card>.booking-summary{margin:10px 0 0}.booking-summary>div{grid-template-columns:78px 1fr;gap:8px;display:grid}.booking-summary dt{color:#7a7080;font:800 8px/1.35 var(--font-geist-mono),monospace;letter-spacing:.06em;text-transform:uppercase}.booking-summary dd{overflow-wrap:anywhere;min-width:0;color:var(--ink);margin:0;font-size:10px;font-weight:700;line-height:1.35}.booking-summary a{color:var(--purple)}.restaurant-card-actions{justify-content:space-between;align-items:center;gap:10px;padding:0 13px 13px;display:flex}.restaurant-profile{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:0 0 7px;display:grid}.restaurant-profile>span{border:1px solid var(--line);background:var(--surface);border-radius:10px;min-width:0;padding:11px 9px}.restaurant-profile small,.restaurant-profile b{display:block}.restaurant-profile small{color:#827783;font:800 9px/1 var(--font-geist-mono),monospace;text-transform:uppercase;letter-spacing:.08em;margin-bottom:5px}.restaurant-profile b{overflow-wrap:anywhere;color:var(--ink);font-size:12px;line-height:1.25}.restaurant-profile .rating-unavailable b{color:#817783;font-size:10px}.ratings-note{color:#8a7e88;margin:0 0 14px;font-size:10px;line-height:1.4}.fact-callout{align-items:flex-start}.fact-callout p{flex:1}.transit-metrics{grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:16px;display:grid}.transit-metrics span{border:1px solid var(--line);color:#847985;text-transform:uppercase;border-radius:9px;padding:10px;font-size:7px}.transit-metrics b{color:var(--ink);font:800 10px/1.15 var(--font-geist-mono),monospace;text-transform:none;margin-bottom:4px;display:block}.route-plan{background:linear-gradient(145deg,#a8dacd33,#fffaf3e0);border:1px solid #0d738838;border-radius:14px;margin:0 0 18px;padding:16px}.route-plan>header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.route-plan>header span{color:#0b697c;font:850 9px/1 var(--font-geist-mono),monospace;letter-spacing:.12em;text-transform:uppercase;margin-bottom:4px;display:block}.route-plan>header h3{color:var(--ink);margin:0;font:700 19px/1.1 Georgia,serif}.route-confidence{color:#174f47;font:850 9px/1 var(--font-geist-mono),monospace;text-transform:uppercase;background:#d7f0e9;border-radius:99px;flex:none;padding:6px 8px}.route-confidence.trafficsensitive{color:#714d09;background:#fff0ca}.route-confidence.weatherdependent{color:#7b3529;background:#f4dfda}.route-plan-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:0 0 12px;display:grid}.route-plan-facts>div{background:#ffffffb8;border:1px solid #22235f1a;border-radius:9px;min-width:0;padding:10px}.route-plan-facts dt{color:var(--text-secondary);font:800 8px/1 var(--font-geist-mono),monospace;letter-spacing:.06em;text-transform:uppercase}.route-plan-facts dd{color:var(--ink);margin:5px 0 0;font-size:11px;font-weight:800;line-height:1.35}.route-road-list{background:#ffffffb8;border-left:4px solid #0d7388;border-radius:0 9px 9px 0;align-items:flex-start;gap:9px;padding:11px 12px;display:flex}.route-road-list>span{color:#0d7388;font-size:17px;line-height:1}.route-road-list p{color:#5f5863;margin:0;font-size:12px;line-height:1.5}.route-road-list b{color:var(--ink);margin-bottom:2px;font-size:10px;display:block}.route-timing,.route-caution{color:#5f5863;margin:10px 1px 0;font-size:11px;line-height:1.5}.route-timing b,.route-caution b{color:var(--ink)}.route-map-links{flex-wrap:wrap;gap:7px;margin-top:12px;display:flex}.route-map-links .modal-link{margin:0}.route-map-links .modal-link.secondary{background:#ffffffb8;border:1px solid #22235f29;color:var(--purple)!important}.route-checked{color:#746b76;margin-top:9px;font-size:9px;line-height:1.4;display:block}.route-options,.route-detours{border-top:1px solid #22235f1f;margin-top:12px}.route-options>summary,.route-detours>summary{min-height:42px;color:var(--purple);cursor:pointer;justify-content:space-between;align-items:center;gap:12px;font-size:11px;font-weight:850;list-style:none;display:flex}.route-options>summary::-webkit-details-marker{display:none}.route-detours>summary::-webkit-details-marker{display:none}.route-options>summary:after,.route-detours>summary:after{content:"+";color:#0d7388;font-size:20px;font-weight:700}.route-options[open]>summary:after,.route-detours[open]>summary:after{content:"−"}.route-options>div,.route-detours>div{gap:8px;padding-bottom:2px;display:grid}.route-options article,.route-detours article{background:#ffffffc7;border:1px solid #22235f1f;border-radius:10px;padding:12px}.route-options article>header,.route-detours article>header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.route-options article>header strong,.route-detours article>header strong{color:var(--ink);font:700 15px/1.2 Georgia,serif}.route-options article>header span,.route-detours article>header span{color:#285b52;font:850 8px/1 var(--font-geist-mono),monospace;text-transform:uppercase;background:#a8dacd59;border-radius:99px;margin-top:5px;padding:4px 6px;display:inline-flex}.route-options article>header+b,.route-detours article>header>b{color:#0d697a;font:850 10px/1.35 var(--font-geist-mono),monospace}.route-options article p,.route-detours article p{color:#5f5863;margin:8px 0 0;font-size:11px;line-height:1.45}.route-options article small{color:#746b76;margin-top:7px;font-size:10px;line-height:1.45;display:block}.route-options article>div{flex-wrap:wrap;gap:12px;margin-top:9px;display:flex}.route-options article a,.route-detours article a{color:var(--purple);font-size:10px;font-weight:850;text-decoration:none}.route-detours article dl{grid-template-columns:85px 1fr;gap:6px 10px;margin:9px 0 0;display:grid}.route-detours article dl>div{display:contents}.route-detours article dt{color:var(--text-secondary);font:800 8px/1.4 var(--font-geist-mono),monospace;text-transform:uppercase}.route-detours article dd{color:var(--ink);margin:0;font-size:10px;font-weight:700;line-height:1.4}.route-detours article footer{flex-wrap:wrap;gap:14px;margin-top:10px;display:flex}.detour-comparison{background:#f7f3ec;border:1px solid #22235f24;border-radius:10px;gap:10px;margin:12px 0;padding:12px;display:grid}.detour-comparison-heading{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.detour-comparison-heading span{color:#285b52;font:850 11px/1.2 var(--font-geist-mono),monospace;text-transform:uppercase;background:#e4efe9;border-radius:99px;padding:5px 7px}.detour-comparison-heading strong{color:#0d697a;text-align:right;max-width:220px;font-size:15px;line-height:1.35}.detour-comparison dl{grid-template-columns:minmax(110px,.45fr) minmax(0,1fr);gap:8px 12px;margin:0;display:grid}.detour-comparison dl>div{display:contents}.route-detours .detour-comparison dt,.detour-comparison dt{color:#625e70;font:800 12px/1.45 var(--font-geist-mono),monospace;text-transform:uppercase}.route-detours .detour-comparison dd,.detour-comparison dd{color:var(--ink);margin:0;font-size:14px;font-weight:700;line-height:1.45}.detour-comparison>small{color:#625e70;font-size:12px;line-height:1.45}@media (max-width:820px){.route-plan{padding:13px}.route-plan>header{flex-direction:column;align-items:flex-start}.route-plan-facts{grid-template-columns:1fr}.route-plan-facts>div{padding:9px 10px}.route-map-links{flex-direction:column;align-items:stretch}.route-map-links .modal-link{justify-content:center;width:100%}.route-options article>header,.route-detours article>header{flex-direction:column}.route-detours article dl{grid-template-columns:70px 1fr}.detour-comparison-heading{display:grid}.detour-comparison-heading strong{text-align:left;max-width:none}.detour-comparison dl{grid-template-columns:1fr;gap:3px}.detour-comparison dl>div{gap:2px;padding-bottom:7px;display:grid}.pit-stop-actions{flex-direction:column;align-items:stretch}.pit-stop-actions .modal-link{justify-content:center;width:100%}}.transit-stops{gap:0;margin:0 0 18px;padding:0;list-style:none;display:grid}.transit-stops li{grid-template-columns:30px 1fr;gap:10px;padding:0 0 14px;display:grid;position:relative}.transit-stops li:not(:last-child):after{content:"";background:var(--mint);width:2px;position:absolute;top:28px;bottom:0;left:14px}.transit-stops li>b{z-index:1;color:#fff;width:29px;height:29px;font:850 10px/1 var(--font-geist-mono),monospace;background:#b56a2f;border:2px solid #fff0cc;border-radius:50%;place-items:center;display:grid;position:relative}.transit-stops li>button{border:1px solid var(--line);background:var(--surface);width:100%;color:inherit;text-align:left;cursor:pointer;border-radius:10px;padding:9px 11px;transition:border-color .16s,box-shadow .16s,transform .16s}.transit-stops li>button:hover,.transit-stops li>button:focus-visible{border-color:#7a4d9f6b;transform:translateY(-1px);box-shadow:0 7px 18px #22235f1a}.transit-stops strong,.transit-stops span,.transit-stops small,.transit-stops i{display:block}.transit-stops strong{color:var(--ink);font:700 15px/1.15 Georgia,serif}.transit-stops span{color:#72496e;margin-top:4px;font-size:11px;font-weight:800}.transit-stops small{color:#6b626d;margin-top:4px;font-size:10px;line-height:1.35}.transit-stops i{color:var(--purple);margin-top:7px;font-size:9px;font-style:normal;font-weight:850}.pit-stop-tip{margin:0 0 14px}.pit-stop-facts{margin-bottom:12px}.pit-stop-actions{justify-content:space-between;align-items:center;gap:8px;display:flex}.pit-stop-actions .modal-link{cursor:pointer;border:0;margin-top:0;font-family:inherit}.pit-stop-actions .modal-link.secondary{border:1px solid var(--line);background:var(--surface);color:var(--purple)!important}.travel-mode-modal{--travel-inline:22px;width:min(620px,100%);max-height:min(820px,100dvh - 24px)}.travel-mode-modal .modal-content{padding:0}.travel-mode-intro{padding:22px var(--travel-inline) 18px;color:#625965;margin:0;font:500 15px/1.45 Georgia,serif}.travel-mode-list{display:grid}.travel-day{gap:8px;display:grid}.travel-day>h3{z-index:4;padding:10px var(--travel-inline);background:var(--ink);color:var(--mint);font:850 10px/1 var(--font-geist-mono),monospace;letter-spacing:.12em;text-transform:uppercase;border-radius:0;margin:0;position:sticky;top:0;box-shadow:0 3px 10px #16133129}.travel-day>div{padding:0 var(--travel-inline) 18px;gap:8px;display:grid}.travel-entry{border:1px solid var(--line-strong);border-left:4px solid var(--purple);background:var(--surface);box-shadow:var(--shadow-base);border-radius:11px;padding:13px}.travel-entry.kind-activity{border-left-color:var(--map-sage)}.travel-entry-heading{align-items:flex-start;gap:10px;display:flex}.travel-entry-heading>.travel-kind-badge{min-width:82px;color:var(--purple);text-align:center;background:#7a4d9f1a;border-radius:99px;flex:none;justify-content:center;align-items:center;gap:5px;padding:5px 8px;display:inline-flex}.travel-kind-badge i{font:13px/1 Georgia,serif}.travel-kind-badge b{font:850 7px/1 var(--font-geist-mono),monospace;text-transform:uppercase}.travel-entry-heading h4{color:var(--ink);margin:0;font:700 18px/1.1 Georgia,serif}.travel-entry-heading small{color:#7a6f7d;margin-top:4px;font-size:9px;display:block}.travel-entry>p{color:#625965;margin:10px 0 7px;font-size:10px;line-height:1.45}.travel-facts{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:7px;margin:10px 0;display:grid}.travel-facts>div{background:#22235f0b;border-radius:8px;min-width:0;padding:8px 9px}.travel-facts dt{color:#7a6f7d;font:800 7px/1 var(--font-geist-mono),monospace;letter-spacing:.08em;text-transform:uppercase}.travel-facts dd{color:var(--ink);margin:4px 0 0;font-size:10px;font-weight:750;line-height:1.35}.flight-details{margin:10px 0;position:relative}.flight-details summary{color:var(--ink);cursor:pointer;background:#eb68a014;border:1px solid #eb68a052;border-radius:9px;justify-content:space-between;align-items:center;gap:12px;padding:9px 11px;font-size:9px;font-weight:800;list-style:none;display:flex}.flight-details summary::-webkit-details-marker{display:none}.flight-details summary:after{content:"+";color:var(--pink-dark);margin-left:auto;font-size:15px;line-height:1}.flight-details[open] summary:after{content:"−"}.flight-details summary span{color:#7a6f7d;font-size:8px;font-weight:650}.flight-leg-list{gap:8px;padding-top:8px;display:grid}.flight-leg{border:1px solid var(--line);background:var(--surface);border-radius:9px;padding:10px}.flight-leg-heading{align-items:baseline;gap:8px;margin-bottom:8px;display:flex}.flight-leg-heading strong{color:var(--ink);font:800 13px/1 var(--font-geist-mono),monospace}.flight-leg-heading span{color:#625965;font-size:10px;font-weight:750}.flight-leg dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:0 0 9px;display:grid}.flight-leg dl>div{min-width:0}.flight-leg dt{color:#7a6f7d;font:800 7px/1 var(--font-geist-mono),monospace;letter-spacing:.06em;text-transform:uppercase}.flight-leg dd{color:var(--ink);margin:3px 0 0;font-size:9px;font-weight:700;line-height:1.35}.flight-leg>a{color:var(--purple);font-size:9px;font-weight:800;text-decoration:none}@media (hover:hover) and (pointer:fine){.flight-details:not([open]):hover .flight-leg-list,.flight-details:not([open]):focus-within .flight-leg-list{z-index:8;background:var(--surface);border:1px solid #22235f24;border-radius:10px;padding:8px;display:grid;position:absolute;left:0;right:0;box-shadow:0 14px 35px #22235f33}.flight-details:not([open]) .flight-leg-list{display:none}}.travel-entry>a{color:var(--purple);font-size:9px;font-weight:750;line-height:1.4;text-decoration:none;display:block}.travel-vendor-links{flex-wrap:wrap;gap:6px;margin-top:9px;display:flex}.travel-vendor-links a,.travel-vendor-links button{min-height:30px;color:var(--purple);cursor:pointer;background:0 0;border:1px solid #7a4d9f2e;border-radius:99px;align-items:center;padding:0 10px;font-family:inherit;font-size:8px;font-weight:850;text-decoration:none;display:inline-flex}.travel-confirmation{background:#a8dacd40;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;margin-top:10px;padding:8px 9px;display:grid}.travel-confirmation span{color:#6c6270;font:800 7px/1 var(--font-geist-mono),monospace;text-transform:uppercase}.travel-confirmation code{min-width:0;color:var(--ink);font:850 10px/1.2 var(--font-geist-mono),monospace;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.travel-confirmation button{background:var(--purple);color:#fff;cursor:pointer;border:0;border-radius:99px;min-height:28px;padding:0 9px;font-size:8px;font-weight:850}.workspace-view .owner-plan-actions .ai-import-button{background:#3c336f;border-color:#a8dacd47}.workspace-view .planner-status{color:var(--mint)}.workspace-view .recommendation-review-group>header{border-color:#a8dacd3d}.workspace-view .recommendation-review-group>header p{color:var(--mint)}.workspace-view .recommendation-review-group>header>span{background:var(--pink);color:var(--ink)}.workspace-view .recommendation-review-group.reviewed>header>span{color:var(--mint);background:#a8dacd2e}.workspace-view .recommendation-review-card{color:var(--ink)}button:focus-visible,a:focus-visible,input:focus-visible{outline-offset:3px;outline:3px solid #0d7388}.view-nav button{min-height:40px;font-size:13px}.view-nav span{min-width:20px;height:20px;font-size:10px}.trip-summary span{font-size:10px;line-height:1.25}.privacy-button{min-height:42px}.privacy-button em,.rail-heading p{font-size:11px}.place-tooltip,.route-tooltip{min-width:205px;padding:6px 4px}.route-tooltip p{max-width:270px;font-size:11px}.stay-metrics span,.hotel-row small{font-size:8px}.place-plan-summary button,.explore-button{min-height:36px}.workspace-header p,.activity-topline{font-size:10px}.workspace-header>div>span{font-size:13px;line-height:1.45}.workspace-stats>span,.workspace-stats>button,.kind-tabs button{font-size:11px}.activity-card>p{font-size:13px}.activity-facts,.activity-card .timing-note{font-size:11px;line-height:1.45}.activity-facts b,.review-signal b{font-size:12px}.score-control small{font-size:10px}.book-toggle{min-height:38px;font-size:11px}.activity-actions>a{padding:6px 0;font-size:11px}.restaurant-copy small{font-size:10px}.restaurant-copy em,.upload-card p,.file-picker,.upload-button,.upload-status{font-size:11px}.file-picker,.upload-button{min-height:40px}.upload-button:disabled{opacity:.65;cursor:wait}.file-picker:has(input:disabled){opacity:.65;cursor:wait}.caption-input{height:42px;font-size:13px}.photo-grid figcaption small{font-size:10px}.empty-journal p{font-size:12px}.detail-sheet header p,.info-modal header p{font-size:10px}.detail-sheet header button,.info-modal header button{width:40px;height:40px}.hotel-title small,.hotel-details dt,.modal-list dt{font-size:10px}.hotel-details dd,.modal-list dd{font-size:13px}.hotel-details dd em{font-size:12px}.confirmation-code,.copy-code{min-height:32px;font-size:11px}.arrival-box p,.weather-box p,.fact-callout p,.hotel-notes{font-size:12px}.modal-link{min-height:42px;font-size:12px}.transit-metrics span{font-size:10px}.transit-metrics b{font-size:13px}.view-nav span,.workspace-stats b,.kind-tabs span{color:var(--rose-text)}.activity-card,.restaurant-card-wrap,.photo-grid figure{box-shadow:var(--shadow-base)}.place-card{box-shadow:var(--shadow-float)}.detail-sheet{box-shadow:-18px 0 56px #1613313d}.activity-card>p,.workspace-header>div>span,.hotel-details dd,.modal-list dd{font-size:14px}.activity-location small,.activity-location em,.activity-facts,.activity-card .timing-note,.review-signal span,.upload-card p,.photo-grid figcaption small{font-size:12px;line-height:1.45}.kind-tabs button,.book-toggle,.activity-actions a,.detail-sheet>nav button,.modal-link{font-size:13px}.activity-grid{align-items:start;gap:10px}.activity-card.featured:after{font-size:58px;top:-14px;right:-4px}.activity-topline{align-items:center;font-size:9px}.activity-topline b{min-height:22px;padding:5px 8px;font-size:9px}.activity-location{border-left:3px solid var(--mint);background:var(--surface-tint);border-radius:0 7px 7px 0;flex-wrap:wrap;align-items:baseline;gap:3px 8px;margin-top:9px;padding:7px 9px;display:flex}.activity-location b{color:var(--ink);font-size:12px;line-height:1.3}.activity-location small,.activity-location em{color:var(--text-secondary);font-size:10px;font-style:normal;line-height:1.35}.activity-location em{color:#62518e}.activity-location.is-unmapped{background:#f4b17921;border-left-color:#c18b58}.activity-location.is-unmapped b{color:#715137}.activity-location.is-unmapped small,.activity-location.is-unmapped em{color:#7b674f}.activity-facts span{flex-direction:row;align-items:baseline;gap:4px}.activity-facts b{margin:0;font-size:11px}.review-signal{margin:0 0 7px}.review-signal b{font-size:11px}.review-signal span{font-size:10px}.activity-card .timing-note{min-height:0;margin-top:2px;padding-top:7px;font-size:10px;line-height:1.4}.activity-actions{margin-top:8px;padding-top:0;display:block}.activity-primary-actions{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:10px;display:flex}.couple-ratings{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:224px}.score-control small{margin-bottom:2px;font-size:9px}.score-control div{gap:0}.score-control button{width:22px;height:22px;font-size:12px}.activity-secondary-actions{justify-content:space-between;align-items:center;gap:12px;margin-top:6px;display:flex}.dismiss-toggle{padding:3px 0;font-size:10px}.activity-actions a{color:var(--purple);padding:3px 0;font-size:10px;font-weight:800;text-decoration:none}.trip-summary{gap:13px}.trip-summary span{font-size:9px}.trip-summary strong{font-size:14px}.privacy-button,.travel-mode-button{height:34px;min-height:34px;padding:0 10px}.privacy-button em{font-size:10px}.stop-list button{min-height:40px}.stop-copy strong{font-size:13px}.stop-copy small{font-size:9px;line-height:1.2}@media (max-width:1360px){.trip-summary,.today-status em{display:none}}@media (max-width:1100px){.app-shell{--rail-w:176px}.topbar{grid-template-columns:1fr auto 1fr}.workspace-view:before{left:var(--rail-w)}.activity-grid{grid-template-columns:1fr}}@media (min-width:821px) and (max-width:1180px){.trip-summary{display:none}}@media (max-width:820px){.map-legend{display:none}.city-map-actions{scrollbar-width:none;justify-content:flex-start;overflow-x:auto}.city-map-actions::-webkit-scrollbar{display:none}.city-driving-panel{top:60px}.journey-label{display:none}.journey-marker-shell.is-selected .journey-label,.journey-marker-shell:focus-visible .journey-label{display:grid}.app-shell{--topbar-h:52px;--rail-w:0px}.topbar{height:var(--topbar-h);grid-template-columns:1fr auto;padding:0 12px}.brand-lockup strong{font-size:16px}.brand-photo{width:38px;height:38px}.topbar .view-nav{z-index:1300;left:50%;bottom:calc(10px + env(safe-area-inset-bottom));background:#22235f;border-color:#a8dacd47;min-height:48px;position:fixed;transform:translate(-50%);box-shadow:0 12px 30px #07082152}.top-actions{grid-column:2;justify-self:end;gap:6px}.today-status{border-radius:12px;justify-content:center;width:38px;min-width:38px;height:38px;padding:0}.today-status>span{font-size:15px}.today-status em,.today-status b{display:none}.travel-mode-button{color:#fff;cursor:pointer;background:#ffffff14;border:1px solid #a8dacd47;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:1px;width:43px;height:38px;min-height:38px;padding:0;display:flex}.travel-mode-button span{color:var(--pink);font-size:16px;line-height:1}.travel-mode-button em{font:800 6px/1 var(--font-geist-mono),monospace;letter-spacing:-.02em;text-transform:uppercase;font-style:normal}.recommend-button{border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:1px;width:43px;height:40px;min-height:40px;padding:0;display:flex}.recommend-button span{font-size:16px}.recommend-button em{font:800 6px/1 var(--font-geist-mono),monospace;letter-spacing:-.02em;text-transform:uppercase;font-style:normal}.privacy-button em{display:none}.privacy-button{justify-content:center;width:38px;height:38px;min-height:38px;padding:0}.atlas-layout{height:calc(100dvh - var(--topbar-h));grid-template-rows:auto minmax(0,1fr);grid-template-columns:1fr;min-height:0}.view-atlas .main-stage{grid-row:1/-1;min-height:0}.view-atlas.city-mode .route-rail{display:none}.route-rail{z-index:800;left:10px;right:10px;top:calc(var(--topbar-h) + 10px);overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:none;width:auto;height:auto;max-height:none;box-shadow:var(--shadow-float);border:0;border-radius:14px;padding:8px;display:block;position:fixed;overflow-x:auto}.route-rail::-webkit-scrollbar{display:none}.rail-heading{display:none}.rail-flights{border-top:1px solid #a8dacd38;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin-top:6px;padding:17px 0 0;display:grid;position:relative}.rail-flights>p{font-size:7px;position:absolute;top:5px;left:3px}.rail-flight-item{background:#ffffff14;border:1px solid #a8dacd38;border-radius:8px;min-width:0;padding:6px 7px}.rail-flight-summary>span{font-size:7px}.rail-flight-summary>b{white-space:normal;font-size:8px}.rail-flight-summary>small{text-overflow:ellipsis;white-space:nowrap;font-size:7px;line-height:1.2;overflow:hidden}.rail-flight-popover{right:10px;bottom:calc(68px + env(safe-area-inset-bottom));width:auto;max-height:calc(100% - 88px);left:10px}.stop-list li:not(:last-child):after{display:none}.stop-list{gap:4px;display:flex;overflow-y:hidden}.stop-list li{scroll-snap-align:start;flex:none}.stop-list button{width:152px;padding:6px}.view-planner,.view-journal{overflow:hidden}.view-planner .route-rail,.view-journal .route-rail{width:auto;min-width:0;max-height:none;box-shadow:none;border-radius:0;grid-row:1;gap:4px;padding:8px;display:flex;position:relative;inset:auto;overflow-x:auto}.view-planner .stop-list,.view-journal .stop-list{gap:4px;display:flex}.view-planner .stop-list button,.view-journal .stop-list button{width:145px}.view-planner .rail-flights,.view-journal .rail-flights{flex:0 0 300px;margin-top:0}.view-planner .main-stage,.view-journal .main-stage{grid-row:2;min-height:0;position:relative;inset:auto;overflow:hidden}.view-planner .map-stage,.view-journal .map-stage{display:none}.workspace-view{padding:24px 16px calc(88px + env(safe-area-inset-bottom))}.workspace-view:before{display:none}.workspace-header{flex-direction:column;align-items:flex-start}.planner-toolbar{flex-direction:column;align-items:stretch}.owner-plan-actions{justify-content:space-between}.plan-import-fields{grid-template-columns:1fr}.plan-import-fields label.wide{grid-column:auto}.add-activity-fields{grid-template-columns:1fr}.add-activity-fields label.wide{grid-column:auto}.restaurant-grid,.photo-grid,.recommendation-review-grid{grid-template-columns:1fr}.place-card{top:auto;right:12px;bottom:calc(76px + env(safe-area-inset-bottom));width:min(225px,100vw - 24px);padding:16px}.place-card.card-left{left:auto;right:12px}.place-card h2{font-size:23px}.mobile-city-card{top:auto;right:12px;bottom:calc(76px + env(safe-area-inset-bottom));width:min(300px,100vw - 24px)}.city-map-actions{max-width:calc(100vw - 20px);top:10px}.city-plan-filters{white-space:nowrap;scrollbar-width:none;max-width:calc(100vw - 20px);top:60px;overflow-x:auto}.city-plan-filters::-webkit-scrollbar{display:none}.map-plan-panel{top:auto;right:10px;bottom:calc(70px + env(safe-area-inset-bottom));width:auto;max-height:min(58dvh,560px);left:10px}.regional-overview .waypoint-marker-shell{display:none}.leaflet-bottom.leaflet-right{right:10px;bottom:calc(70px + env(safe-area-inset-bottom))}.leaflet-control-attribution{max-width:calc(100vw - 24px);font-size:8px!important}.upload-card{grid-template-columns:45px 1fr}.upload-symbol{width:44px;height:44px}.file-picker{text-align:center;grid-column:1}.caption-input,.upload-button{grid-column:2}.transit-metrics{grid-template-columns:1fr}.planner-toolbar .kind-tabs{width:100%}.planner-toolbar .kind-tabs button,.activity-edit{min-height:44px}}.city-tooltip{width:min(560px,100vw - 48px);max-width:calc(100vw - 48px)}.city-tooltip strong{white-space:normal}@media (max-width:520px){.brand-lockup small{display:none}.brand-lockup strong{font-size:15px}.route-rail{width:auto;max-height:none}.stop-list button{grid-template-columns:24px 1fr}.stop-arrow{display:none}.stop-copy small{color:#625a65;font-size:10px}.place-card{width:min(225px,100vw - 84px);padding:14px;left:auto;right:72px}.mobile-city-card{right:max(68px,calc(56px + env(safe-area-inset-right)));width:min(290px,calc(100vw - 80px - env(safe-area-inset-left) - env(safe-area-inset-right)))}.place-card h2{font-size:22px}.place-card .stay-metrics,.place-card .hotel-row{display:none}.place-card .city-button{margin-top:12px}.map-canvas.city-mode~.place-card{max-height:calc(100% - 170px);overflow:auto}.map-canvas.city-mode~.place-card .stay-metrics,.map-canvas.city-mode~.place-card .hotel-row,.map-canvas.city-mode~.place-card .place-plan-summary{display:grid}.leaflet-control-zoom{display:none}.workspace-header h2{font-size:28px}.workspace-stats{width:100%}.workspace-stats>span,.workspace-stats>button{flex:1}.activity-card{padding:17px}.visible-confirmation{flex-direction:column;align-items:flex-start}.confirmation-code{width:100%}.activity-topline b{letter-spacing:.1em;min-height:26px;padding:7px 10px;font-size:10px}.activity-actions{grid-template-columns:1fr}.book-toggle{width:max-content}.add-activity-form{padding:16px}.add-activity-form footer{flex-direction:column;align-items:stretch}.add-activity-form footer span{margin:0 0 4px}.add-activity-form footer button{width:100%}.plan-import-backdrop{padding:0}.plan-import-dialog{border:0;border-radius:0;width:100%;height:100dvh;max-height:100dvh}.plan-import-header{padding:18px}.plan-import-header h2{font-size:25px}.plan-import-source,.plan-import-review{padding:18px 16px calc(24px + env(safe-area-inset-bottom))}.plan-import-source footer,.plan-import-review footer{flex-direction:column;align-items:stretch}.plan-import-source footer>span,.plan-import-review footer>span{margin-bottom:4px}.plan-import-source footer button,.plan-import-review footer button{width:100%}.upload-card{flex-direction:column;align-items:flex-start;display:flex}.caption-input,.upload-button,.file-picker{width:100%}.detail-sheet>header,.info-modal>header{padding:19px}.travel-mode-modal{--travel-inline:16px;width:min(620px,100vw - 20px);max-height:calc(100dvh - 20px)}.recommendation-fields{grid-template-columns:1fr}.recommendation-fields label.wide{grid-column:auto}.recommendation-form footer{flex-direction:column;align-items:stretch}.recommendation-form footer button{width:100%}.booking-fields{grid-template-columns:1fr}.booking-fields label.wide{grid-column:auto}.booking-form footer{flex-direction:column;align-items:stretch}.booking-form footer>span{min-height:0}.booking-form footer button{width:100%}.sheet-content{padding:16px 15px 40px}.restaurant-profile{grid-template-columns:repeat(2,minmax(0,1fr))}.hotel-details dl>div,.modal-list>div{grid-template-columns:94px 1fr}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.map-loader-flight span{left:50%;transform:translate(-50%)!important}.map-loader-flight i{display:none}}:root{--text-muted:#6e6370;--pink-dark:#a73568;--focus-ring:#0d7388;--focus-ring-dark:#fffaf3}.sr-only{clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.skip-link{z-index:2200;top:max(8px,env(safe-area-inset-top));left:max(12px,env(safe-area-inset-left));background:var(--surface);min-height:44px;color:var(--ink);box-shadow:var(--shadow-modal);border-radius:10px;align-items:center;padding:0 16px;font-size:14px;font-weight:850;text-decoration:none;display:flex;position:fixed;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}button,input,select,textarea{font:inherit}button{min-height:44px}select,input,textarea{font-size:14px}select,input:not([type=file]),textarea{min-height:44px}textarea{line-height:1.5}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}.topbar button:focus-visible,.route-rail button:focus-visible,.place-card button:focus-visible,.workspace-stats button:focus-visible,.kind-tabs button:focus-visible,.owner-plan-actions button:focus-visible,.context-suggest:focus-visible,.map-plan-panel>header button:focus-visible,.detail-sheet>header button:focus-visible,.info-modal>header button:focus-visible,.plan-import-header>button:focus-visible,.map-loading button:focus-visible{outline-color:var(--focus-ring-dark)}.file-picker,.plan-import-file{position:relative}.file-picker input,.plan-import-file input{clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;display:block!important;position:absolute!important;overflow:hidden!important}:is(.file-picker:has(input:focus-visible),.plan-import-file:has(input:focus-visible),.booking-file:has(input:focus-visible)){outline:3px solid var(--focus-ring);outline-offset:3px}.app-shell{--topbar-h:calc(64px + env(safe-area-inset-top));--rail-w:216px}.topbar{height:var(--topbar-h);padding:env(safe-area-inset-top) max(16px,env(safe-area-inset-right)) 0 max(16px,env(safe-area-inset-left));grid-template-columns:minmax(190px,1fr) auto minmax(190px,1fr);gap:16px}.topbar .view-nav{justify-self:center;position:static;left:auto;transform:none}.view-nav{gap:4px;min-width:0}.topbar .view-nav button{min-width:72px;height:44px;min-height:44px;padding:0 13px;font-size:13px}.topbar .view-nav span{min-width:20px;height:20px;color:var(--mint);font-size:12px}.brand-lockup,.brand-lockup>span:last-child{min-width:0}.brand-lockup small{font-size:10px}.brand-lockup strong{text-overflow:ellipsis;white-space:nowrap;font-size:17px;overflow:hidden}.top-actions{gap:8px;min-width:0}.privacy-button,.recommend-button,.today-status,.role-badge{height:44px;min-height:44px;padding:0 13px}.privacy-button em,.recommend-button em,.today-status em,.role-badge em,.role-badge{font-size:12px;line-height:1.2}.recommend-button{background:var(--mint);color:var(--ink);border-color:#ffffff73}.recommend-button span{color:var(--ink)}.role-badge{color:#fff;white-space:nowrap;background:#ffffff14;border:1px solid #a8dacd47;border-radius:99px;align-items:center;gap:7px;font-weight:800;display:flex}.role-badge span,.role-badge.is-loading{color:var(--mint)}.role-badge.is-error{color:#ffe09c;border-color:#ffd2698c}.mobile-route-toggle{display:none}.route-rail{display:block}.route-options{grid-template-rows:auto minmax(0,1fr) auto;height:100%;min-height:0;display:grid;overflow:hidden}.rail-heading{padding:2px 8px 10px}.rail-heading p{font-size:12px}.rail-heading h2{font-size:20px}.rail-heading span{font-size:12px;line-height:1.35}.stop-list{grid-template-rows:repeat(9,minmax(44px,1fr))}.stop-list button{min-height:44px;padding:6px 8px}.stop-number{font-size:12px}.stop-copy strong{font-size:14px;line-height:1.2}.stop-copy small{color:#ffffffb8;font-size:12px;line-height:1.3}.rail-flight-summary{min-height:44px;padding:5px 0}.rail-flight-summary>span{font-size:12px}.rail-flight-summary>b{font-size:12px;line-height:1.3}.rail-flight-summary>small{color:#ffffffb8;font-size:12px}.rail-flight-popover header small{font-size:12px}.rail-flight-popover header span{font-size:13px}.rail-flight-popover>p{font-size:12px}.rail-flight-popover header>button,.map-plan-panel>header button,.place-kicker button,.photo-grid figcaption button,.detail-sheet header button,.info-modal header button,.plan-import-header>button,.add-activity-form header>button{width:44px;min-width:44px;height:44px}.leaflet-control-zoom{display:block}.leaflet-control-zoom a:focus-visible{outline-offset:-4px}.map-stage:has(.map-plan-panel) .leaflet-bottom.leaflet-right{right:calc(min(440px,100% - 36px) + 30px)}.leaflet-control-attribution{font-size:10px!important;line-height:1.35!important}.journey-marker-shell,.waypoint-marker-shell,.city-feature-shell,.planner-map-marker-shell{place-items:center;display:grid!important}.journey-marker-shell:focus-visible,.waypoint-marker-shell:focus-visible,.city-feature-shell:focus-visible,.planner-map-marker-shell:focus-visible{outline:none}.journey-marker-shell:focus-visible .journey-medallion,.waypoint-marker-shell:focus-visible .waypoint-marker b,.city-feature-shell:focus-visible .city-feature>b,.planner-map-marker-shell:focus-visible .planner-map-marker{outline:4px solid var(--focus-ring);outline-offset:3px}.transit-hit-area{cursor:pointer}.transit-hit-area:focus{outline:none;opacity:.62!important;stroke:var(--focus-ring)!important;stroke-width:10px!important}.trip-country-label{color:#304439;letter-spacing:.14em;text-shadow:none;background:#fffaf3e0;border-radius:6px;padding:4px 7px;font-size:12px}.waypoint-label{color:#304439;max-width:170px;text-shadow:none;background:#fffaf3f0;border-radius:5px;padding:4px 6px;font-size:12px;line-height:1.25;top:10px;left:34px}.place-tooltip small,.route-tooltip small{font-size:12px}.place-tooltip strong,.route-tooltip strong{font-size:18px}.place-tooltip span,.route-tooltip span{font-size:13px;line-height:1.4}.place-tooltip p,.route-tooltip p{font-size:12px;line-height:1.45}.route-tooltip em{font-size:12px}.map-legend{color:#304439;grid-template-columns:none;gap:0;padding:0;display:block;bottom:24px;right:64px;overflow:hidden}.map-legend summary{color:#263e34;cursor:pointer;min-height:44px;font:800 13px/1.2 var(--font-geist-sans),sans-serif;justify-content:space-between;align-items:center;gap:16px;padding:0 14px;list-style:none;display:flex}.map-legend summary::-webkit-details-marker{display:none}.map-legend summary:after{content:"+";font-size:18px}.map-legend[open] summary:after{content:"−"}.map-legend>div{border-top:1px solid #374d4229;grid-template-columns:repeat(2,auto);gap:9px 15px;padding:0 14px 13px;display:grid}.map-legend:not([open])>div{display:none}.map-legend>div>strong{grid-column:1/-1;padding-top:12px;font:700 14px/1.2 Georgia,serif}.map-legend>div>span{white-space:nowrap;align-items:center;gap:7px;font-size:12px;font-weight:750;display:flex}.map-loading.has-error{pointer-events:auto;background:#22235fe6}.map-loading button{border:2px solid var(--mint);background:var(--mint);color:var(--ink);cursor:pointer;border-radius:99px;margin:10px auto 0;padding:0 18px;font-weight:850}.city-map-actions button,.city-plan-filters button{min-height:44px;font-size:13px}.place-card{background:#22235ff0;border-color:#ffffff57;width:min(310px,100% - 44px);padding:20px}.place-kicker{font-size:12px}.place-card h2{margin-top:8px;font-size:28px;line-height:1.05}.hotel-row{grid-template-columns:34px 1fr 18px;gap:9px;min-height:52px;padding:8px 0}.hotel-row strong{font-size:13px;line-height:1.25}.place-plan-summary{grid-template-columns:1fr;gap:6px;margin:4px 0 9px}.place-plan-summary button>span:first-child{color:var(--pink);text-align:center;font-size:18px}.place-plan-summary button>span:nth-child(2){min-width:0}.place-plan-summary button b{color:#fff;font:850 13px/1.2 var(--font-geist-sans),sans-serif;display:block}.place-plan-summary button small{color:#ffffffbd;white-space:normal;margin-top:3px;font-size:12px;line-height:1.25}.place-plan-summary button i{color:var(--mint);font-size:18px;font-style:normal}.workspace-header{align-items:flex-start;margin-bottom:20px}.workspace-header p{font-size:12px}.workspace-header>div>span{max-width:720px;font-size:14px;line-height:1.5}.planner-toolbar{flex-wrap:wrap;align-items:flex-start}.planner-toolbar-actions{flex-wrap:wrap;flex:420px;justify-content:flex-end;align-items:flex-start;gap:8px;min-width:0;display:flex}.kind-tabs{flex-wrap:wrap;flex:320px;min-width:0}.kind-tabs button,.owner-plan-actions button,.context-suggest{min-height:44px;padding:0 15px;font-size:13px}.kind-tabs span,.workspace-stats b{color:var(--mint)}.workspace-stats{flex-wrap:wrap;min-width:0}.workspace-stats>span,.workspace-stats>button{min-width:96px;min-height:44px;padding:9px 12px;font-size:12px;line-height:1.25}.workspace-stats .view-plans-map{min-width:110px}.owner-plan-actions{flex-wrap:wrap;min-width:0}.context-suggest{border:1px solid var(--mint);background:var(--mint);color:var(--ink);cursor:pointer;border-radius:99px;font-weight:850}.activity-grid,.restaurant-grid{gap:16px}.activity-card,.activity-card.compact{border-radius:15px;padding:18px}.activity-card.dismissed,.restaurant-card-wrap.dismissed,.recommendation-review-card.dismissed{opacity:1;filter:none;background:var(--surface-soft);border-style:dashed}.activity-topline{font-size:12px;line-height:1.25}.activity-topline b{letter-spacing:.06em;min-height:28px;padding:6px 9px;font-size:12px}.activity-facts{margin:11px 0 6px;font-size:12px}.plan-card-details{border-top:1px solid var(--line);margin-top:8px}.plan-card-details>summary{min-height:44px;color:var(--purple);cursor:pointer;justify-content:space-between;align-items:center;gap:12px;font-size:13px;font-weight:850;list-style:none;display:flex}.plan-card-details>summary::-webkit-details-marker{display:none}.plan-card-details>summary:after{content:"+";font-size:18px;font-weight:700}.plan-card-details[open]>summary:after{content:"−"}.plan-card-details>div{gap:10px;padding:2px 0 10px;display:grid}.plan-card-details:not([open])>div{display:none}.plan-card-details>div>p{color:var(--text-secondary);margin:0;font-size:14px;line-height:1.5}.plan-card-details>div>p>b{color:var(--ink);text-transform:uppercase;letter-spacing:.06em;margin-bottom:3px;font-size:12px;display:block}.review-signal{align-items:center;min-height:44px;margin:0}.activity-card .timing-note{border:0;min-height:0;padding-top:0;font-size:14px}.review-signal:hover{color:var(--pink-dark)}.activity-primary-actions{align-items:flex-end}.couple-ratings{min-width:min(100%,260px);border:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 10px;min-inline-size:0;margin:0;padding:0;display:grid}.couple-ratings legend{width:100%;color:var(--ink);grid-column:1/-1;justify-content:space-between;gap:10px;margin-bottom:1px;font-size:12px;font-weight:850;display:flex}.couple-ratings legend span{color:var(--text-muted);font-size:12px;font-weight:700}.score-control{min-width:0;color:var(--text-secondary);gap:4px;font-size:12px;font-weight:800;display:grid}.score-control>span{font-size:12px}.score-control select{border:1px solid var(--line-strong);background:var(--surface);width:100%;min-height:44px;color:var(--ink);border-radius:9px;padding:0 32px 0 10px;font-size:13px;font-weight:750}.book-toggle{height:auto;min-height:44px;padding:0 13px;font-size:13px}.dismiss-toggle,.activity-secondary-actions a{align-items:center;min-height:44px;padding:0 4px;font-size:12px;display:inline-flex}.restaurant-card-wrap{border-radius:15px;overflow:visible}.restaurant-card{grid-template-columns:48px minmax(0,1fr) 22px;min-height:128px;padding:16px}.restaurant-monogram{background:var(--purple);color:#fff;width:48px;height:48px}.restaurant-copy small{color:var(--pink-dark);font-size:12px;line-height:1.25}.restaurant-copy strong{font-size:19px}.restaurant-arrow{color:var(--pink-dark)}.restaurant-meta>span,.restaurant-ratings>span{font-size:12px}.restaurant-preferences{padding:14px 16px}.restaurant-card-actions{border-top:1px solid var(--line);align-items:stretch;padding:12px 16px 16px}.restaurant-dismiss{border:1px solid var(--line);background:var(--surface);min-height:44px;color:var(--text-secondary);padding:0 12px;font-size:12px;position:static}.book-toggle:not(.booked) span{color:var(--pink-dark)}.add-activity-form header small,.add-activity-fields label,.plan-import-email,.plan-import-fields label,.recommendation-fields label,.booking-fields label{color:var(--text-secondary);font-size:12px;line-height:1.35}.add-activity-fields input,.add-activity-fields textarea,.plan-import-source textarea,.plan-import-fields input,.plan-import-fields textarea,.plan-import-fields select,.recommendation-fields input,.recommendation-fields select,.recommendation-fields textarea,.booking-fields input{min-height:44px;font-size:14px}.booking-file input{width:100%;min-height:44px;font-size:12px}.add-activity-fields textarea,.plan-import-fields textarea,.recommendation-fields textarea{min-height:104px}.add-activity-form header p,.plan-import-header p,.booking-form>p{font-size:14px;line-height:1.55}.add-activity-form footer span,.plan-import-source footer>span,.plan-import-review footer>span,.recommendation-form footer span,.booking-form footer>span,.planner-status,.upload-status{color:var(--text-secondary);font-size:12px;line-height:1.45}.add-activity-form footer button,.plan-import-source footer button,.plan-import-review footer button,.recommendation-form footer button,.booking-form footer button{min-height:44px;font-size:13px}.plan-import-file small,.plan-import-or,.plan-import-alert p,.plan-import-alert small,.plan-import-privacy,.booking-file small{color:var(--text-secondary);font-size:12px;line-height:1.45}.plan-import-detected,.plan-import-detected span{font-size:12px}.plan-import-detected button{font-size:13px}.file-picker{justify-content:center;align-items:center;min-height:44px;padding:0 15px;font-size:13px;display:inline-flex}.caption-input,.upload-button{height:44px;min-height:44px;font-size:14px}.caption-field{min-width:0;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;grid-column:2;gap:6px;font-size:12px;font-weight:800;line-height:1.35;display:grid}.caption-field .caption-input{grid-column:auto;width:100%}.upload-card p,.empty-journal p{font-size:14px;line-height:1.5}.photo-grid figcaption strong{font-size:14px}.photo-grid figcaption small{color:var(--text-muted);font-size:12px}.info-modal{max-height:min(820px,100dvh - 40px)}.detail-sheet>header,.info-modal>header{padding-top:calc(20px + env(safe-area-inset-top));padding-right:max(22px,env(safe-area-inset-right));padding-left:max(22px,env(safe-area-inset-left))}.detail-sheet header p,.info-modal header p{font-size:12px;line-height:1.3}.detail-sheet>nav button{min-height:48px;font-size:13px}.sheet-content{padding-bottom:calc(45px + env(safe-area-inset-bottom))}.modal-content{padding-right:max(22px,env(safe-area-inset-right));padding-bottom:max(22px,env(safe-area-inset-bottom));padding-left:max(22px,env(safe-area-inset-left))}.modal-lead{font-size:17px}.hotel-details dt,.modal-list dt,.restaurant-profile small,.transit-metrics span{color:var(--text-secondary);font-size:12px}.hotel-title small{color:var(--cream);font-size:12px;font-weight:800}.hotel-details dd,.modal-list dd,.restaurant-profile b,.transit-metrics b{font-size:14px}.hotel-details dd em,.ratings-note,.booking-file small{color:var(--text-secondary);font-size:12px}.feature-rating-link{color:var(--ink);flex-wrap:wrap;align-items:baseline;gap:4px 8px;text-decoration:none;display:flex}.feature-rating-link b{color:#9b5a1e;font-size:16px}.feature-rating-link:hover,.feature-rating-link:focus-visible{color:var(--pink-dark);text-underline-offset:3px;text-decoration:underline}.feature-rating-note{color:var(--text-secondary);margin-top:4px;font-size:12px;display:block}.arrival-box b,.weather-box b,.fact-callout b{font-size:12px}.arrival-box p,.weather-box p,.fact-callout p,.hotel-notes{font-size:14px;line-height:1.55}.modal-link{align-items:center;min-height:44px;font-size:13px;display:inline-flex}.recommendation-sources summary{min-height:44px;font-size:13px}.recommendation-sources summary span{background:var(--mint);color:var(--ink);font-size:12px}.recommendation-sources>p,.recommendation-sources li span{font-size:14px}.recommendation-sources a{align-items:center;min-height:44px;font-size:12px;display:inline-flex}.booking-summary dt,.restaurant-profile small{color:var(--text-secondary);font-size:12px}.booking-summary dd,.restaurant-profile b{font-size:14px}.plan-confirmation>small,.private-plan-note b{font-size:12px}.sheet-empty,.plans-empty p,.recommendation-review-card>p{font-size:14px;line-height:1.5}.recommendation-review-card>small,.recommendation-review-card>a,.recommendation-review-card footer button{font-size:12px}.recommendation-review-card>a{align-items:center;min-height:44px;display:inline-flex}.transit-stops span,.transit-stops i{font-size:12px}.transit-stops small{font-size:14px;line-height:1.45}.visible-confirmation{align-items:stretch}.confirmation-code,.copy-code{align-items:center;min-height:44px;font-size:12px;display:inline-flex}.travel-mode-intro{font-size:17px}.travel-day>h3,.travel-kind-badge b,.travel-facts dt,.flight-leg dt,.travel-confirmation>span,.travel-entry-heading small,.flight-details summary,.flight-details summary span,.flight-leg-heading span,.flight-leg dd,.flight-leg>a,.travel-entry>a,.travel-vendor-links a,.travel-vendor-links button,.travel-confirmation code{font-size:12px}.travel-entry>p,.travel-facts dd{font-size:14px;line-height:1.5}.flight-details summary,.travel-vendor-links a,.travel-vendor-links button{min-height:44px}.travel-confirmation button{min-height:44px;font-size:12px}@media (max-width:1100px) and (min-width:821px){.app-shell{--rail-w:200px}.topbar{grid-template-columns:minmax(160px,1fr) auto minmax(120px,1fr);gap:10px}.brand-lockup small{display:none}.brand-lockup strong{font-size:15px}.topbar .view-nav button{min-width:64px;padding:0 10px}.privacy-button em{display:none}.privacy-button{justify-content:center;width:44px;padding:0}}@media (max-width:820px){.app-shell{--topbar-h:calc(60px + env(safe-area-inset-top));--rail-w:0px}.topbar{height:var(--topbar-h);padding:env(safe-area-inset-top) max(12px,env(safe-area-inset-right)) 0 max(12px,env(safe-area-inset-left));grid-template-columns:minmax(0,1fr) auto;gap:8px}.brand-photo{width:44px;height:44px}.topbar .view-nav{z-index:1300;left:50%;bottom:calc(10px + env(safe-area-inset-bottom));width:min(420px,calc(100vw - 24px - env(safe-area-inset-left) - env(safe-area-inset-right)));min-height:52px;padding:4px;display:flex;position:fixed;transform:translate(-50%)}.topbar .view-nav button{flex:1 1 0;min-width:0;height:44px;min-height:44px;padding:0 7px;font-size:12px}.top-actions{gap:6px}.today-status,.privacy-button{justify-content:center;width:44px;min-width:44px;padding:0}.role-badge{justify-content:center;width:auto;min-width:72px;padding:0 9px}.today-status b,.privacy-button em{display:none}.recommend-button{width:auto;min-width:72px;height:44px;min-height:44px;padding:0 9px}.recommend-button em{font-size:12px}.role-badge.is-loading,.role-badge.is-error{white-space:normal;text-align:center;width:auto;max-width:108px;padding:0 8px;font-size:12px}.route-rail{z-index:900;top:calc(var(--topbar-h) + 10px);left:max(10px,env(safe-area-inset-left));right:max(10px,env(safe-area-inset-right));width:auto;height:auto;box-shadow:none;background:0 0;border:0;border-radius:14px;padding:0;display:block;position:fixed;overflow:visible}.mobile-route-toggle{color:#fff;width:100%;min-height:54px;box-shadow:var(--shadow-float);cursor:pointer;text-align:left;background:#22235f;border:1px solid #a8dacd47;border-radius:14px;justify-content:space-between;align-items:center;gap:14px;padding:8px 13px;display:flex}.mobile-route-toggle>span{gap:3px;min-width:0;display:grid}.mobile-route-toggle>span:last-child{text-align:right;grid-template-columns:auto 24px;align-items:center}.mobile-route-toggle small{color:var(--mint);font-size:12px;line-height:1.2}.mobile-route-toggle strong{text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.mobile-route-toggle i{color:var(--pink);text-align:center;font-size:20px;font-style:normal}.route-options{z-index:2;height:auto;max-height:min(62dvh,560px);box-shadow:var(--shadow-modal);background:#22235f;border:1px solid #a8dacd47;border-radius:14px;grid-template-rows:minmax(0,1fr);padding:10px;display:none;position:absolute;top:calc(100% + 7px);left:0;right:0;overflow:hidden}.route-options.open{display:grid}.route-options .rail-heading{display:none}.route-options .stop-list{grid-template-rows:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;min-height:0;display:grid;overflow:auto}.route-options .stop-list li{min-width:0}.route-options .stop-list button{grid-template-columns:24px minmax(0,1fr);width:100%;height:auto;min-height:52px;padding:7px 8px}.route-options .stop-copy small{white-space:normal;font-size:12px}.route-options .stop-arrow,.route-options .rail-flights{display:none}.route-options .rail-flights>p{font-size:10px;top:7px}.route-options .rail-flight-item{padding:6px 8px}.route-options .rail-flight-summary>span,.route-options .rail-flight-summary>small{font-size:10px}.route-options .rail-flight-summary>b{font-size:11px}.view-planner .route-rail,.view-journal .route-rail{width:auto;max-height:none;padding:8px max(12px,env(safe-area-inset-right)) 8px max(12px,env(safe-area-inset-left));background:#171842;border-radius:0;grid-row:1;display:block;position:relative;inset:auto}.view-planner .main-stage,.view-journal .main-stage{grid-row:2}.workspace-view{padding:26px max(16px,env(safe-area-inset-right)) calc(96px + env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}.workspace-header{gap:18px}.planner-toolbar,.planner-toolbar-actions{width:100%}.kind-tabs,.planner-toolbar-actions{flex:none}.kind-tabs{grid-template-columns:repeat(auto-fit,minmax(132px,1fr));width:100%;display:grid}.kind-tabs button{min-width:0;height:auto;min-height:44px}.planner-toolbar-actions{grid-template-columns:1fr;display:grid}.workspace-stats{grid-template-columns:repeat(auto-fit,minmax(92px,1fr));width:100%;display:grid}.workspace-stats>span,.workspace-stats>button,.workspace-stats .view-plans-map{min-width:0}.owner-plan-actions{grid-template-columns:repeat(auto-fit,minmax(132px,1fr));display:grid}.context-suggest{width:100%}.map-legend{top:74px;bottom:auto;right:auto;left:max(10px,env(safe-area-inset-left));display:block}.map-legend>div{grid-template-columns:1fr}.leaflet-bottom.leaflet-right{right:max(10px,env(safe-area-inset-right));bottom:calc(78px + env(safe-area-inset-bottom))}.city-map-actions{border-radius:14px;grid-template-columns:repeat(3,minmax(0,1fr));max-width:none;display:grid;top:10px;left:10px;right:10px;transform:none}.city-map-actions button{white-space:normal;min-width:0;padding:0 8px}.city-plan-filters{max-width:calc(100vw - 20px);top:112px}.place-card{right:70px;bottom:calc(82px + env(safe-area-inset-bottom));width:min(300px,100vw - 82px)}.place-card.card-left{left:auto;right:70px}.map-plan-panel{bottom:calc(78px + env(safe-area-inset-bottom))}.map-stage:has(.map-plan-panel) .leaflet-control-zoom{display:none}.activity-grid,.restaurant-grid,.photo-grid,.recommendation-review-grid{grid-template-columns:1fr}.activity-card,.activity-card.compact{padding:17px}.activity-primary-actions{flex-direction:column;align-items:stretch}.couple-ratings{width:100%}.book-toggle{justify-content:center;width:100%}.restaurant-card-actions{flex-wrap:wrap}.restaurant-card-actions>button{flex:150px}.upload-card{grid-template-columns:44px minmax(0,1fr)}.upload-card .file-picker,.upload-card .caption-field,.upload-card .upload-button{grid-column:1/-1;width:100%}.modal-backdrop,.plan-import-backdrop{padding:max(10px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left))}.info-modal{max-height:calc(100dvh - 20px - env(safe-area-inset-top) - env(safe-area-inset-bottom))}.sheet-content{padding-bottom:calc(48px + env(safe-area-inset-bottom))}}@media (max-width:520px){.brand-lockup strong{max-width:128px;font-size:15px}.route-options .stop-list{grid-template-columns:1fr}.route-options{max-height:min(68dvh,580px)}.workspace-header h2{font-size:30px}.kind-tabs{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.kind-tabs button{padding:0 7px;font-size:11px}.owner-plan-actions,.workspace-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.workspace-stats>:only-child{grid-column:1/-1}.place-card{right:max(68px,calc(56px + env(safe-area-inset-right)));width:min(290px,calc(100vw - 80px - env(safe-area-inset-left) - env(safe-area-inset-right)));padding:16px}.place-card.card-left{right:max(68px,calc(56px + env(safe-area-inset-right)))}.place-card h2{font-size:25px}.place-plan-summary{display:grid}.leaflet-control-zoom{display:block}.upload-card{align-items:stretch}.file-picker,.caption-field,.caption-input,.upload-button{width:100%}.travel-entry-heading{flex-wrap:wrap}.flight-leg dl{grid-template-columns:repeat(2,minmax(0,1fr))}.travel-confirmation{grid-template-columns:1fr}.travel-confirmation .visible-confirmation{width:100%}.recommendation-form footer,.booking-form footer,.add-activity-form footer,.plan-import-source footer,.plan-import-review footer{flex-direction:column;align-items:stretch}.recommendation-form footer button,.booking-form footer button,.add-activity-form footer button,.plan-import-source footer button,.plan-import-review footer button{width:100%}.hotel-details dl>div,.modal-list>div{grid-template-columns:minmax(88px,34%) minmax(0,1fr)}.plan-import-backdrop{padding:0}.plan-import-dialog{height:100dvh;max-height:100dvh}.plan-import-header{padding-top:calc(18px + env(safe-area-inset-top));padding-right:max(18px,env(safe-area-inset-right));padding-left:max(18px,env(safe-area-inset-left))}}@media (max-width:360px){.brand-lockup>span:last-child{display:none}.topbar .view-nav{width:calc(100vw - 16px - env(safe-area-inset-left) - env(safe-area-inset-right))}.topbar .view-nav button{padding:0 4px;font-size:12px}.recommend-button{min-width:64px}.flight-leg dl,.restaurant-profile{grid-template-columns:1fr}.place-card{width:calc(100vw - 80px - env(safe-area-inset-left) - env(safe-area-inset-right))}}.view-nav{background:#ffffff0f;border-color:#a8dacd3d;border-radius:10px;gap:2px;padding:3px}.topbar .view-nav{padding:3px}.view-nav button,.topbar .view-nav button{color:#ffffffbd;letter-spacing:-.01em;min-width:68px;height:40px;min-height:40px;box-shadow:none;border-radius:7px;padding:0 12px;font-size:12px;font-weight:780}.view-nav button:hover{color:#fff;background:#ffffff14}.view-nav button.active{color:#fff;box-shadow:none;background:#ffffff21;position:relative}.view-nav button.active:after{content:"";background:var(--pink);border-radius:2px;height:2px;position:absolute;bottom:5px;left:12px;right:12px}.view-nav span,.topbar .view-nav span{min-width:17px;height:17px;color:var(--mint);background:#a8dacd29;border-radius:5px;margin-left:4px;font-size:9px}.privacy-button{height:36px;min-height:36px;box-shadow:none;background:0 0;border-color:#a8dacd4d;border-radius:8px;gap:6px;padding:0 10px}.privacy-button:hover{background:#ffffff14}.privacy-button.on{background:#a8dacd21}.privacy-button span{font-size:9px}.privacy-button em{letter-spacing:.005em;font-size:10px}.city-map-actions,.city-plan-filters{background:#fffdf9ed;border-color:#22235f29;border-radius:10px;gap:2px;padding:3px;box-shadow:0 6px 18px #22235f1f}.city-map-actions button,.city-plan-filters button{color:#4c496d;border-radius:7px;min-height:36px;padding:0 11px;font-size:11px;font-weight:780}.city-map-actions button:hover,.city-plan-filters button:hover{background:#22235f12}.city-map-actions button.active,.city-plan-filters button.active{background:var(--ink);color:#fff;box-shadow:none}.kind-tabs{border:1px solid var(--line);background:#fffdf9c7;border-radius:10px;gap:2px;padding:3px}.kind-tabs button{color:#5d586b;background:0 0;border:0;border-radius:7px;min-height:36px;padding:0 11px;font-size:11px;font-weight:780}.kind-tabs button.active{background:var(--ink);color:#fff;border:0}.workspace-stats{background:#ffffff0f;border:1px solid #a8dacd3d;border-radius:10px;gap:5px;padding:3px}.workspace-stats>span,.workspace-stats>button,.workspace-stats .view-plans-map{color:#ffffffc2;min-width:0;min-height:38px;box-shadow:none;text-align:left;text-transform:none;background:0 0;border-color:#a8dacd3d;border-radius:7px;align-items:center;gap:6px;padding:0 10px;font-size:11px;font-weight:780;line-height:1;display:inline-flex}.workspace-stats>button:hover{background:#ffffff14;border-color:#a8dacd66;transform:none}.workspace-stats b{color:var(--mint);margin:0;font-size:16px;display:inline}.workspace-stats>button.active{color:#fff;box-shadow:none;background:#ffffff21;border-color:#0000}.workspace-stats>button.active b{color:var(--mint)}.workspace-stats .view-plans-map{color:#fff;text-align:center;background:#ffffff1a;border-color:#a8dacd57;font-weight:780}.workspace-stats .view-plans-map:hover{border-color:var(--mint);background:#ffffff24}.owner-plan-actions{gap:5px}.owner-plan-actions button,.kind-tabs button,.context-suggest{min-height:38px;box-shadow:none;border-radius:8px;padding:0 11px;font-size:11px}.owner-plan-actions button{background:#ffffff0f;border-color:#a8dacd47}.owner-plan-actions .add-plan-button{border-color:var(--pink);box-shadow:none;border-radius:8px}.owner-plan-actions .ai-import-button{box-shadow:none;border-radius:8px}.photo-bucket-field{min-width:0;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;grid-column:2;gap:6px;font-size:12px;font-weight:800;line-height:1.35;display:grid}.photo-bucket-field select{border:1px solid var(--line);width:100%;min-height:44px;color:var(--ink);font:inherit;text-transform:none;letter-spacing:normal;background:#fff;border-radius:8px;padding:0 11px}@media (max-width:820px){.topbar .view-nav{border-radius:12px;min-height:50px}.topbar .view-nav button{height:44px;min-height:44px;padding:0 7px}.privacy-button{border-radius:9px;width:40px;height:40px;min-height:40px}.city-map-actions{border-radius:10px}.city-map-actions button,.city-plan-filters button{min-height:40px;font-size:12px}.workspace-stats>span,.workspace-stats>button,.workspace-stats .view-plans-map,.owner-plan-actions button,.kind-tabs button,.context-suggest{min-height:44px}.photo-bucket-field{grid-column:1/-1;width:100%}}@media (max-width:520px){.city-map-actions{top:10px}.city-plan-filters{top:104px}.city-driving-panel{width:calc(100vw - 20px);max-height:min(42vh,330px);top:104px;left:10px}.city-driving-routes{grid-template-columns:repeat(2,minmax(0,1fr))}.city-driving-baseline{grid-template-columns:1fr}.city-driving-baseline button{grid-column:1}.driving-endpoint>span,.driving-detour-marker>span{max-width:150px}}@media (prefers-contrast:more){:root{--line:#22235f5c;--line-strong:#22235f8a}.activity-card,.restaurant-card-wrap,.upload-card,.place-card,.map-plan-panel,.info-modal,.plan-import-dialog{border-width:2px}.workspace-view,.topbar,.route-rail{background-color:#171842;background-image:none}.journey-label,.waypoint-label,.trip-country-label,.map-legend{-webkit-backdrop-filter:none;backdrop-filter:none;background:#fffaf3}.view-nav button.active,.kind-tabs button.active,.workspace-stats>button.active,.city-map-actions button.active,.city-plan-filters button.active{outline-offset:-4px;outline:2px solid}}@media (forced-colors:active){*{box-shadow:none!important;text-shadow:none!important}.leaflet-tile{forced-color-adjust:none}button,.file-picker,summary,input,select,textarea,.modal-link{border:1px solid buttontext!important}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid highlight!important}[aria-pressed=true],[aria-current],.active{outline-offset:-4px;outline:2px solid highlight!important}.journey-medallion,.waypoint-marker b,.city-feature>b,.planner-map-marker,.legend-stay{color:canvastext!important;background:canvas!important;border:2px solid buttontext!important}.transit-hit-area:focus{opacity:1!important;stroke:highlight!important}.legend-drive,.legend-ferry{border-color:canvastext!important}.activity-card.dismissed,.restaurant-card-wrap.dismissed,.recommendation-review-card.dismissed{border-style:dashed!important}.map-legend,.place-card,.route-options,.mobile-route-toggle{color:canvastext;background:canvas;border:1px solid buttontext}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.stop-list button:hover,.workspace-stats>button:hover,.restaurant-card-wrap:focus-within,.city-button:hover,.transit-stops li>button:hover,.transit-stops li>button:focus-visible{transform:none!important}.restaurant-card-wrap:has(.restaurant-card:hover){transform:none!important}}:root{--coastal-navy:#0a014f;--coastal-slate:#283d3b;--coastal-teal:#1b998b;--coastal-salmon:#eb9486;--coastal-ice:#e1ebed;--coastal-mist:#f4f8f8;--coastal-glow:#81c5cf3d;--coastal-night:radial-gradient(ellipse at 14% -44%,#1b998b57,transparent 39%), radial-gradient(ellipse at 91% 114%,#eb948624,transparent 42%), repeating-linear-gradient(105deg,#e1ebed08 0 1px,transparent 1px 5px), linear-gradient(126deg,#0a014f 0%,#11194f 52%,#283d3b 150%);--ink:var(--coastal-navy);--purple:var(--coastal-teal);--pink:var(--coastal-salmon);--rose-text:#a64f63;--mint:#a8ded8;--mint-text:#126d65;--paper:var(--coastal-ice);--cream:var(--coastal-mist);--surface:#edf3f3;--surface-soft:#d7e2e4;--surface-tint:#d8edf0;--text-secondary:#405154;--text-muted:#57686b;--line:#0a014f29;--line-strong:#0a014f47;--map-turquoise:var(--coastal-teal);--map-coral:var(--coastal-salmon);--map-plum:var(--coastal-navy);--map-sage:#4d837d;--map-peach:var(--coastal-salmon);--map-gold:#e3b66e;--shadow-base:0 4px 14px #0a014f24,0 1px 0 #ffffffa3 inset;--shadow-float:0 16px 38px #050b2f3d,0 0 28px #6ec1cc1a;--shadow-modal:0 28px 80px #050b2f70,0 0 44px #6ec1cc2e}body{background:var(--coastal-ice)}.topbar,.route-rail,.mobile-route-toggle,.route-options{background:var(--coastal-night)}.topbar{border-bottom-color:#a8ded84d;box-shadow:0 7px 24px #050b2f4d,0 0 28px #1b998b14}.route-rail{border-right-color:#a8ded847}.mobile-route-toggle,.route-options{border-color:#a8ded84d}.stop-list li:not(:last-child):after{background:#a8ded847}.stop-list button:hover{background:#1b998b2e}.stop-list button.active{color:var(--coastal-navy);background:linear-gradient(135deg,#eb9486,#edaa9d);box-shadow:0 10px 24px #050b2f52,0 0 18px #eb94862e}.stop-arrow,.mobile-route-toggle i{color:var(--coastal-salmon)}.view-nav{background:#e1ebed12;border-color:#a8ded84d}.view-nav button:hover{background:#1b998b29}.view-nav button.active{background:#1b998b38}.view-nav button.active:after{background:var(--coastal-teal);box-shadow:0 0 9px #1b998be6}.view-nav span,.topbar .view-nav span{color:var(--mint);background:#a8ded826}.map-canvas{background:#b7d7dc}.map-canvas .regional-tiles{filter:saturate(1.1)contrast(1.08)brightness(.91)}.map-wash{background:linear-gradient(#0a014f09,#1b3d3b1c),radial-gradient(at 52% 44%,#0000 50%,#0a014f1f 100%);box-shadow:inset 0 0 52px #0a014f21,inset 0 0 110px #1b998b12}.journey-medallion{border-color:var(--coastal-ice);background:var(--coastal-teal);box-shadow:inset 0 0 0 1px #ffffff8f,0 5px 14px #050b2f4d,0 0 13px #1b998b33}.journey-marker-shell.is-selected .journey-medallion{background:var(--coastal-salmon);color:var(--coastal-navy);box-shadow:0 0 0 3px #e1ebedc2,0 8px 20px #050b2f57,0 0 22px #eb948670}.journey-label{color:#173e3c;background:#e1ebedeb;border-color:#0a014f2e;box-shadow:0 4px 13px #050b2f33,0 0 16px #81c5cf1f}.journey-label:before{background:#283d3bad}.journey-label small{color:#4d6664}.city-map-actions,.city-plan-filters,.kind-tabs{background:#e1ebedeb;border-color:#0a014f2e;box-shadow:0 8px 23px #050b2f2e,0 0 20px #81c5cf1a}.city-map-actions button,.city-plan-filters button,.kind-tabs button{color:#334c4d}.city-map-actions button:hover,.city-plan-filters button:hover,.kind-tabs button:hover{background:#1b998b1f}.city-map-actions button.active,.city-plan-filters button.active,.kind-tabs button.active{background:var(--coastal-teal);color:#fff;box-shadow:0 4px 12px #1b998b47}.place-card,.map-plan-panel,.info-modal,.detail-sheet{box-shadow:var(--shadow-modal);background:linear-gradient(145deg,#e1ebedf5,#cfe8edeb);border-color:#e1ebed75}.map-plan-panel>header,.detail-sheet>header,.info-modal>header{background:radial-gradient(circle at 86% -24%,#1b998b57,transparent 43%), linear-gradient(125deg,var(--coastal-navy),#172054 62%,var(--coastal-slate) 156%)}.detail-sheet>nav{background:#f4f8f8e0}.workspace-view{background:radial-gradient(at 16% -10%,#1b998b5e,#0000 37%),radial-gradient(at 86% 20%,#81c5cf33,#0000 31%),radial-gradient(at 55% 112%,#eb948624,#0000 43%),repeating-linear-gradient(106deg,#e1ebed07 0 1px,#0000 1px 6px),linear-gradient(145deg,#0a014f 0%,#141d50 52%,#283d3b 150%)}.workspace-view:before{opacity:.35;background-image:radial-gradient(circle at 1px 1px,#e1ebed17 1px,#0000 1.15px)}.workspace-header{border-bottom-color:#a8ded84d}.workspace-header p,.workspace-view .planner-status{color:#a8ded8}.activity-card,.restaurant-card-wrap,.upload-card,.photo-grid figure,.empty-journal,.travel-entry{box-shadow:var(--shadow-base),0 0 22px #81c5cf17;background:linear-gradient(145deg,#f4f8f8fa,#e1ebedf5);border-color:#e1ebed85}.activity-card.featured{background:linear-gradient(145deg,#f7f3f2,#f6e3e0);border-color:#eb9486b8}.activity-card.custom{background:linear-gradient(145deg,#f0f8f7,#dceff0);border-color:#1b998b8f}.activity-card.featured:after{color:#eb94862e}.restaurant-card-wrap:focus-within{border-color:#1b998ba8;box-shadow:0 10px 24px #050b2f33,0 0 23px #1b998b1f}.restaurant-card-wrap:has(.restaurant-card:hover){border-color:#1b998ba8;box-shadow:0 10px 24px #050b2f33,0 0 23px #1b998b1f}.upload-card{border-color:#a8ded8b3}.empty-journal{background:linear-gradient(145deg,#f4f8f8f5,#e1ebedf0)}.travel-day>h3{background:linear-gradient(105deg,var(--coastal-navy),#1b2557 68%,var(--coastal-slate));color:#a8ded8;box-shadow:0 4px 14px #050b2f3d}.travel-entry{border-left-color:var(--coastal-teal)}.travel-entry.kind-flight{border-left-color:var(--coastal-salmon)}.travel-entry.kind-transit{border-left-color:var(--coastal-teal)}.travel-entry.kind-restaurant{border-left-color:#c07152}.travel-entry-heading>.travel-kind-badge{color:#126d65;background:#1b998b1f}.travel-entry.kind-flight .travel-kind-badge{color:#a04d5d;background:#eb94862e}.travel-checklist{color:var(--ink);background:#1b998b14;border:1px solid #1b998b47;border-radius:10px;margin:12px 0 0;padding:11px 12px}.travel-checklist>b{color:#126d65;text-transform:uppercase;letter-spacing:.08em;font-size:11px;display:block}.travel-checklist ul{gap:5px;margin:8px 0 0;padding-left:18px;display:grid}.travel-checklist li{color:var(--text-secondary);font-size:12px;line-height:1.35}.rental-car-details{gap:12px;margin-top:12px;display:grid}.workspace-stats{background:#e1ebed12;border-color:#a8ded84d}.workspace-stats>span,.workspace-stats>button,.workspace-stats .view-plans-map,.owner-plan-actions button{background:#e1ebed12;border-color:#a8ded857}.workspace-stats b{color:#a8ded8}.workspace-stats>button.active{background:#1b998b42}.workspace-stats .view-plans-map:hover,.owner-plan-actions button:hover{border-color:var(--coastal-teal);background:#1b998b29}.owner-plan-actions .add-plan-button{border-color:var(--coastal-salmon);background:var(--coastal-salmon);color:var(--coastal-navy)}.workspace-view .owner-plan-actions .ai-import-button{background:#1b998b38}.photo-bucket-field select,.caption-input{background:var(--coastal-mist)}@media (prefers-contrast:more){.workspace-view,.topbar,.route-rail,.mobile-route-toggle,.route-options{background-color:var(--coastal-navy);background-image:none}.journey-label,.waypoint-label,.trip-country-label,.map-legend{background:var(--coastal-ice)}}.place-card{width:min(264px,100% - 44px);padding:17px}.place-card h2{margin-top:6px;font-size:24px}.place-dates{font-size:12px}.stay-metrics{margin:11px 0 8px}.stay-metrics div{padding:7px 8px}.stay-metrics span{font-size:10px}.hotel-row{grid-template-columns:30px 1fr 16px;gap:8px;min-height:46px}.hotel-icon{width:30px;height:30px}.hotel-row small{font-size:10px}.hotel-row strong{font-size:12px}.place-plan-summary{gap:5px;margin:3px 0 8px}.place-plan-summary button{grid-template-columns:24px minmax(0,1fr) 12px;gap:7px;min-height:48px;padding:7px 8px}.place-plan-summary button>span:first-child{font-size:16px}.place-plan-summary button b{font-size:12px}.place-plan-summary button small{font-size:10px}.city-button,.explore-button{min-height:40px;font-size:12px}.upload-card{grid-template-columns:44px minmax(0,1fr) auto;grid-template-areas:"symbol copy copy""symbol bucket picker""symbol caption upload";align-items:end;gap:10px 12px;max-width:780px;padding:16px}.upload-symbol{grid-area:symbol;width:44px;height:44px;font-size:22px}.upload-card>div:not(.upload-symbol){grid-area:copy}.upload-card h3{font-size:17px}.upload-card p{font-size:12px;line-height:1.35}.photo-bucket-field,.caption-field{min-width:0;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.06em;gap:5px;font-size:10px;font-weight:800;line-height:1.2;display:grid}.photo-bucket-field{grid-area:bucket}.caption-field{grid-area:caption}.photo-bucket-field select,.caption-input{border:1px solid var(--line-strong);background:var(--coastal-mist);width:100%;height:38px;min-height:38px;color:var(--ink);font:600 12px/1.2 var(--font-geist-sans),sans-serif;text-transform:none;letter-spacing:normal;border-radius:8px;padding:0 10px}.file-picker{background:var(--coastal-teal);white-space:nowrap;grid-area:picker;justify-content:center;align-items:center;min-height:38px;padding:0 13px;font-size:12px;display:inline-flex}.upload-button{white-space:nowrap;grid-area:upload;height:38px;min-height:38px;padding:0 14px;font-size:12px}.upload-status{grid-column:2/-1;font-size:12px}.add-activity-form{max-width:900px;box-shadow:var(--shadow-base),0 0 22px #81c5cf17;background:linear-gradient(145deg,#f4f8f8fa,#e1ebedf5);border-color:#e1ebed85;padding:16px}.add-activity-form>header{background:linear-gradient(125deg,var(--coastal-navy),#172054 62%,var(--coastal-slate) 156%);color:#fff;border-radius:16px 16px 0 0;margin:-16px -16px 14px;padding:16px}.add-activity-form header small{color:#a8ded8}.add-activity-form header h3{color:#fff;margin:4px 0 3px;font-size:21px}.add-activity-form header p{color:#e1ebedd6;font-size:12px}.add-activity-form header>button{color:#fff;background:#e1ebed1a;border-color:#e1ebed40}.add-activity-fields{gap:10px}.add-activity-fields label{color:var(--text-secondary);font-size:10px}.add-activity-fields input,.add-activity-fields textarea{border-color:var(--line-strong);background:var(--coastal-mist);min-height:40px;padding:9px 10px;font-size:12px}.add-activity-fields textarea{min-height:86px}.plan-import-dialog{background:linear-gradient(145deg,#e1ebedfa,#cfe8edf0);border-color:#e1ebed75;width:min(680px,100% - 40px)}.plan-import-header{background:linear-gradient(125deg,var(--coastal-navy),#172054 62%,var(--coastal-slate) 156%);gap:16px;padding:18px 20px 16px}.plan-import-header h2{margin:4px 0;font-size:25px}.plan-import-header p{color:#e1ebedd6;font-size:12px}.plan-import-source,.plan-import-review{padding:16px 20px 18px}.plan-import-file{background:#1b998b14;border-color:#1b998b8c;min-height:112px;padding:14px}.plan-import-file>span{color:var(--coastal-teal);font-size:26px}.plan-import-file strong{font-size:16px}.plan-import-email,.plan-import-fields label{color:var(--text-secondary);font-size:10px}.plan-import-source textarea,.plan-import-fields input,.plan-import-fields textarea,.plan-import-fields select{border-color:var(--line-strong);background:var(--coastal-mist);min-height:40px;color:var(--ink);padding:8px 10px;font-size:12px}.plan-import-fields{gap:10px}.plan-import-fields textarea{min-height:84px}.plan-import-privacy{color:#285d59;background:#1b998b1a;font-size:11px}@media (max-width:820px){.upload-card{grid-template-columns:44px minmax(0,1fr);grid-template-areas:"symbol copy""bucket bucket""picker picker""caption caption""upload upload"}.file-picker,.upload-button{width:100%}.place-card{width:min(264px,100% - 84px)}}@media (max-width:520px){.place-card{width:min(264px,100vw - 80px);padding:15px}.add-activity-form{padding:14px}.add-activity-form>header{margin:-14px -14px 13px;padding:14px}.plan-import-dialog{width:100%}}.place-card{color:var(--coastal-navy)}.place-card:after{border-color:#0a014f1a}.place-kicker{color:#126d65}.place-kicker button{color:var(--coastal-navy);background:#0a014f12}.place-card h2{color:var(--coastal-navy)}.place-dates{color:var(--text-secondary)}.stay-metrics{background:#1b998b13;border-color:#0a014f24}.stay-metrics div+div{border-left-color:#0a014f24}.stay-metrics strong{color:#c7655c}.stay-metrics span{color:var(--coastal-navy)}.hotel-row{color:var(--coastal-navy);border-top-color:#0a014f1f}.hotel-icon{color:var(--coastal-navy);background:#a8ded8}.hotel-row small{color:#126d65}.hotel-row strong{color:var(--coastal-navy)}.hotel-row i{color:var(--coastal-salmon)}.place-plan-summary button{color:var(--coastal-navy);background:#f4f8f8a8;border-color:#0a014f24}.place-plan-summary button.confirmed{background:#1b998b1a;border-color:#1b998b61}.place-plan-summary button>span:first-child{color:var(--coastal-salmon)}.place-plan-summary button b{color:var(--coastal-navy)}.place-plan-summary button small{color:var(--text-secondary)}.place-plan-summary button i{color:var(--coastal-teal)}.activity-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:none}.activity-card,.activity-card.compact{border-radius:12px;min-height:0;padding:13px}.activity-card.featured:after{content:none}.activity-topline{gap:5px;font-size:10px}.activity-topline b{letter-spacing:.05em;min-height:22px;box-shadow:none;border-radius:7px;padding:4px 7px;font-size:9px}.activity-card h3{margin:7px 0 4px;font-size:19px;line-height:1.08}.activity-card>p{font-size:12px;line-height:1.4}.activity-location{margin-top:8px;padding:7px 8px}.activity-location b{font-size:11px}.activity-location small,.activity-location em{font-size:10px;line-height:1.3}.activity-facts{gap:11px;margin:7px 0 4px;font-size:10px}.activity-facts b{font-size:11px}.plan-card-details{margin-top:5px}.plan-card-details>summary{min-height:36px;font-size:11px}.plan-card-details>summary:after{content:"⌄";color:var(--coastal-teal);font-size:16px;font-weight:600}.plan-card-details[open]>summary:after{transform:rotate(180deg)}.plan-card-details>div{gap:6px;padding:0 0 7px}.plan-card-details>div>p,.activity-card .timing-note{font-size:11px;line-height:1.35}.plan-card-details>div>p>b{margin-bottom:2px;font-size:9px}.review-signal{min-height:36px}.review-signal b,.review-signal span{font-size:10px}.activity-actions{margin-top:7px}.activity-primary-actions{gap:8px}.couple-ratings{flex:212px;gap:5px 8px;min-width:0}.couple-ratings legend,.couple-ratings legend span,.score-control,.score-control>span{font-size:10px}.score-control{gap:3px}.score-control select{border-radius:7px;min-height:36px;padding:0 25px 0 8px;font-size:11px}.book-toggle{border-radius:7px;height:36px;min-height:36px;padding:0 9px;font-size:11px}.activity-secondary-actions{margin-top:5px}.dismiss-toggle,.activity-secondary-actions a{min-height:30px;font-size:10px}@media (max-width:1280px){.activity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:820px){.activity-grid{grid-template-columns:1fr}.score-control select,.book-toggle,.dismiss-toggle,.activity-secondary-actions a{min-height:44px}}.planner-toolbar .kind-tabs{width:max-content;max-width:100%;box-shadow:none;background:#050b2f85;border-color:#a8ded875;flex:0 auto;margin:0;padding:3px}.planner-toolbar .kind-tabs button{color:#e3f2ef;min-width:0;min-height:38px;padding:0 12px;font-size:11px}.planner-toolbar .kind-tabs button:hover{color:#fff;background:#a8ded829}.planner-toolbar .kind-tabs button.active{background:var(--coastal-teal);color:#fff;box-shadow:0 2px 8px #050b2f47}.planner-toolbar .kind-tabs span{color:inherit}.activity-edit{min-height:30px;color:var(--coastal-teal);cursor:pointer;background:0 0;border:0;padding:0 4px;font-size:10px;font-weight:800}.activity-edit:hover{color:var(--pink);text-decoration:underline}@media (max-width:820px){.planner-toolbar .kind-tabs{width:100%}.planner-toolbar .kind-tabs button,.activity-edit{min-height:44px}}.city-guide-navigation{z-index:480;color:#22235f;background:#fffdf9;border:1px solid #ccd5d4;border-radius:12px;max-width:760px;margin:auto;padding:10px 14px;position:absolute;top:12px;left:16px;right:16px;box-shadow:0 5px 20px #11132c30}.city-guide-heading{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.city-guide-heading label{align-items:center;gap:8px;font-size:13px;font-weight:700;display:flex}.city-guide-heading select{color:#22235f;background:#fff;border:1px solid #9399ac;border-radius:6px;max-width:220px;min-height:44px;padding:6px;font-size:17px}.city-guide-heading>span{font-size:14px}.city-guide-navigation button,.city-content-filters button,.driving-presentation button{color:#22235f;cursor:pointer;background:0 0;border:0;border-radius:6px;min-height:44px;padding:8px 12px;font-size:14px;font-weight:700}.city-guide-navigation .city-map-actions{max-width:none;box-shadow:none;background:#eef2f1;margin-top:8px;display:flex;position:static;transform:none}.city-guide-navigation .city-map-actions button{flex:1;font-size:14px}.city-guide-navigation button[aria-pressed=true],.city-content-filters button[aria-pressed=true],.driving-presentation button[aria-pressed=true]{color:#fff;background:#155b56}.city-step-navigation{justify-content:space-between;display:flex}.city-step-navigation button:disabled{opacity:.4;cursor:default}.city-content-filters{z-index:475;background:#fffdf9;border-radius:8px;max-width:calc(100% - 20px);display:flex;position:absolute;top:190px;left:50%;transform:translate(-50%)}.city-discovery{z-index:470;color:#22235f;background:#fffdf9;border-radius:8px;max-width:calc(100% - 32px);position:absolute;top:16px;left:16px;box-shadow:0 5px 20px #11132c30}.city-discovery summary{cursor:pointer;min-height:44px;padding:12px 14px;font-size:14px;font-weight:700}.city-discovery nav{border-top:1px solid var(--line);max-height:min(360px,50dvh);padding:4px;display:grid;overflow-y:auto}.city-discovery button{min-height:44px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:5px;padding:8px 12px;font-size:14px}.city-discovery button:hover{background:#edf3ef}.city-discovery summary:focus-visible,.city-discovery button:focus-visible{outline-offset:2px;outline:3px solid #147d83}.map-canvas.city-mode~.place-card{width:min(330px,100% - 32px);max-height:calc(100% - 215px);padding:18px;top:195px;overflow:auto}.city-overview{gap:11px;display:grid}.city-overview .place-kicker{margin-bottom:-5px}.city-overview-eyebrow{color:#126d65;letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:12px;font-weight:850}.city-overview h2{margin:0}.city-overview .place-dates{margin:-6px 0 1px;font-size:12px;line-height:1.4}.overview-stay,.overview-journey{z-index:2;width:100%;min-height:54px;color:var(--coastal-navy);text-align:left;cursor:pointer;background:#f4f8f8b8;border:1px solid #0a014f24;border-radius:10px;grid-template-columns:34px minmax(0,1fr) 16px;align-items:center;gap:9px;padding:9px 10px;display:grid;position:relative}.overview-stay>span:nth-child(2),.overview-journey>span{min-width:0}.overview-stay small,.overview-journey small{color:#126d65;text-transform:uppercase;letter-spacing:.05em;margin-bottom:3px;font-size:11px;font-weight:800;display:block}.overview-stay strong,.overview-journey strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1.25;display:block;overflow:hidden}.overview-stay i,.overview-journey i{color:var(--coastal-teal);font-size:20px;font-style:normal}.overview-confirmed{z-index:2;background:#1b998b12;border:1px solid #1b998b40;border-radius:10px;padding:10px;position:relative}.overview-confirmed>div{justify-content:space-between;align-items:center;gap:10px;display:flex}.overview-confirmed h3{margin:0;font-size:13px}.overview-confirmed>div>span{color:#fff;text-align:center;background:#155b56;border-radius:99px;min-width:24px;padding:3px 7px;font-size:11px;font-weight:800}.overview-confirmed ul{gap:7px;margin:9px 0 0;padding:0;list-style:none;display:grid}.overview-confirmed li{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;display:grid}.overview-confirmed li strong,.overview-confirmed li small{display:block}.overview-confirmed li strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.25;overflow:hidden}.overview-confirmed li small{color:var(--text-secondary);margin-top:2px;font-size:11px}.overview-confirmed>p{color:var(--text-secondary);margin:8px 0 0;font-size:12px}.status-chip{color:#5f5966;white-space:nowrap;background:#eee9e2;border-radius:99px;align-items:center;min-height:24px;padding:4px 7px;font-size:10px;font-weight:850;line-height:1;display:inline-flex}.status-chip.confirmed{color:#173f38;background:#a8ded8}.overview-journey{grid-template-columns:minmax(0,1fr) 16px}.overview-journey em{color:var(--text-secondary);margin-top:3px;font-size:11px;font-style:normal;display:block}.overview-journey.is-final{cursor:default}.overview-actions{z-index:2;grid-template-columns:1fr 1fr;gap:7px;display:grid;position:relative}.overview-actions button{min-width:0;min-height:48px;color:var(--coastal-navy);text-align:left;cursor:pointer;background:#fff;border:1px solid #0a014f24;border-radius:9px;padding:8px 9px}.overview-actions span,.overview-actions small{display:block}.overview-actions span{font-size:12px;font-weight:850}.overview-actions small{color:var(--text-secondary);margin-top:3px;font-size:11px;line-height:1.25}.city-driving-panel{width:min(410px,100% - 32px);max-height:calc(100% - 220px);top:195px}.city-driving-routes small{font-size:12px;line-height:1.3}.city-driving-routes strong{white-space:normal;font-size:15px}.city-driving-routes button{min-height:64px}.city-driving-baseline,.city-driving-baseline>span{display:block}.city-driving-baseline small{font-size:12px;line-height:1.4}.city-driving-baseline details{margin-top:10px;font-size:14px;line-height:1.5}.city-driving-baseline summary{cursor:pointer;padding:10px 0}.city-driving-detours>p{display:grid}.city-driving-detours>p b{font-size:13px;line-height:1.4}.city-driving-detours>p span{text-align:left;font-size:13px;line-height:1.4}.city-driving-detours li>button{color:#22235f;text-align:left;cursor:pointer;background:#fff;border:1px solid #b9bbc7;border-radius:8px;align-items:flex-start;gap:10px;width:100%;padding:12px;display:flex}.city-driving-detours li>button>b{text-align:center;background:#fbe1ea;border-radius:5px;flex:none;width:24px;height:24px}.city-driving-detours li>button>span{flex:1;gap:6px;display:grid}.city-driving-detours small{color:#514d63;font-size:14px;line-height:1.4}.city-driving-detours i{font-style:normal}.planned-driving-stops h3{font-size:15px}.planned-driving-stops button{text-align:left;color:#22235f;cursor:pointer;background:#edf6f0;border:1px solid #9abbb1;border-radius:8px;gap:6px;width:100%;margin-bottom:6px;padding:12px;font-size:14px;display:grid}.driving-presentation{display:none}.driving-endpoint strong,.driving-detour-marker strong{font-size:14px}.driving-endpoint small,.driving-detour-marker small{font-size:12px}.driving-detour-marker small{display:none}@media (max-width:820px){.city-guide-navigation{padding:8px;top:8px;left:8px;right:8px}.city-guide-heading{gap:6px}.city-guide-heading>span{display:none}.city-guide-heading label{flex:1}.city-guide-heading select{width:100%;min-width:0;font-size:16px}.city-guide-heading label{font-size:0}.city-guide-navigation .city-map-actions button{padding:8px 6px;font-size:14px}.city-guide-navigation .city-map-actions{display:flex}.city-step-navigation button{font-size:13px}.city-content-filters{flex-wrap:wrap;width:calc(100% - 16px);top:172px}.city-content-filters button{flex:1;padding:8px}.map-plan-panel{top:270px}.map-canvas.city-mode~.place-card{width:auto;max-height:calc(100% - 190px);top:174px;left:8px;right:8px}.city-driving-panel{width:calc(100% - 16px);max-height:calc(100% - 190px);top:174px;left:8px}.driving-presentation{padding:4px;display:flex}.driving-presentation button{flex:1}.city-driving-panel.presentation-map .city-driving-comparison,.city-driving-panel.presentation-map .city-driving-routes,.driving-detour-marker>span{display:none}.driving-endpoint>span{max-width:130px}.driving-presentation{z-index:2;background:#fffdf9;border-bottom:1px solid #ccd5d4;position:sticky;top:0}:is(.driving-list-open .leaflet-control-container,.map-stage:has(.city-overview) .leaflet-control-zoom){visibility:hidden}.city-discovery{top:12px;left:8px}.view-atlas .route-rail{display:none}.view-atlas .map-legend{top:12px;left:auto;right:8px}}.city-guide-navigation{background:var(--coastal-mist);width:min(570px,100% - 24px);color:var(--coastal-navy);border-radius:10px;margin:0;padding:6px 8px;top:8px;left:12px;right:auto}.city-guide-heading{flex-wrap:nowrap;gap:8px}.city-guide-heading>span{white-space:nowrap;font-size:11px}.city-guide-heading label{gap:5px;font-size:12px}.city-guide-heading select{max-width:160px;min-height:32px;padding:4px 7px;font-size:14px}.city-guide-navigation button,.city-content-filters button,.driving-presentation button{min-height:32px;padding:5px 8px;font-size:12px}.city-guide-navigation .city-map-actions{margin-top:5px;padding:2px}.city-guide-navigation .city-map-actions button{min-height:30px;padding:4px 7px;font-size:12px}.city-driving-panel{top:var(--map-navigation-bottom,100px);width:min(310px,100% - 24px);max-height:calc(100% - var(--map-navigation-bottom,100px) - 12px);background:var(--coastal-mist);border-radius:10px;left:12px}.city-driving-routes{grid-template-columns:repeat(2,minmax(0,1fr));padding:3px}.city-driving-routes button{border-radius:6px;gap:3px;min-height:46px;padding:6px 7px}.city-driving-routes small{letter-spacing:.04em;font-size:9px}.city-driving-routes strong{font-size:12px}.city-driving-comparison{padding:8px}.city-driving-baseline>span{background:var(--coastal-ice);padding:7px 8px}.city-driving-baseline small{margin-bottom:2px;font-size:10px}.city-driving-baseline strong{font-size:13px;line-height:1.35}.city-driving-baseline details{margin-top:5px;font-size:12px}.city-driving-baseline summary{padding:6px 0}.city-driving-baseline button{min-height:30px;font-size:12px}.city-driving-detours{margin-top:7px;padding-top:7px}.city-driving-detours li>button,.planned-driving-stops button{gap:4px;padding:8px;font-size:12px}.city-driving-detours li>button>span{gap:3px}.city-driving-detours strong{font-size:13px}.city-driving-detours small,.city-driving-detours>p b,.city-driving-detours>p span{font-size:11px;line-height:1.35}.planned-driving-stops h3{margin:10px 0 5px;font-size:12px}.city-driving-comparison>p{margin:8px 0 0;font-size:11px;line-height:1.4}.city-content-filters{top:var(--map-navigation-bottom,100px);background:var(--coastal-mist);padding:3px;left:12px;transform:none}.map-plan-panel{top:calc(var(--map-navigation-bottom,100px) + 44px)}.map-canvas.city-mode~.place-card{top:var(--map-navigation-bottom,100px);width:min(290px,100% - 24px);max-height:calc(100% - var(--map-navigation-bottom,100px) - 12px);padding:12px}.city-overview{gap:8px}.overview-stay,.overview-journey{gap:6px;min-height:44px;padding:7px 8px}.overview-confirmed{padding:8px}.overview-actions button{min-height:40px;padding:6px 8px}.leaflet-control-zoom a{width:26px!important;height:26px!important;font-size:17px!important;line-height:26px!important}.leaflet-control-zoom{border-radius:7px!important}.driving-endpoint strong{font-size:12px}.driving-endpoint small{font-size:9px}.driving-endpoint>span{background:#f4f8f8f5;gap:1px;padding:4px 6px;box-shadow:0 2px 6px #0a014f20}.map-label-connectors{z-index:590;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:hidden}.map-label-connectors line{stroke:#405b59;stroke-width:1px;stroke-opacity:.7}.map-label-connectors circle{fill:#edf3f3;stroke:#283d3b;stroke-width:1.5px}.city-mode .map-label-connectors line{stroke:#edf3f3;stroke-width:1.5px;stroke-opacity:.9}.city-driving-mode .map-label-connectors line{stroke:#405b59;stroke-width:1px}.regional-overview .journey-marker-shell.dense-label .journey-label{max-width:150px}.map-managed-label:before{display:none}.leaflet-zoom-anim .map-managed-label{opacity:0}@media (max-width:820px){.city-guide-navigation{width:auto;left:8px;right:8px}.city-guide-heading select{max-width:none;min-height:36px;font-size:16px}.city-guide-navigation button{min-height:36px}.city-guide-navigation .city-map-actions button{min-height:36px;font-size:12px}.city-driving-panel{width:calc(100% - 16px);max-height:min(52dvh,calc(100% - var(--map-navigation-bottom,112px) - 12px));left:8px}.driving-presentation{background:var(--coastal-mist);padding:2px}.driving-presentation button{min-height:36px}.city-content-filters{width:calc(100% - 16px);left:8px}.city-content-filters button{min-height:36px;padding:5px}.map-plan-panel{top:calc(var(--map-navigation-bottom,112px) + 86px)}.map-canvas.city-mode~.place-card{width:auto;max-height:calc(100% - var(--map-navigation-bottom,112px) - 12px);left:8px;right:8px}}@media (pointer:coarse){.leaflet-control-zoom a{width:32px!important;height:32px!important;line-height:32px!important}}.crystal-pick{color:#a83661;align-items:center;gap:5px;font-size:12px;font-weight:700;display:inline-flex}.crystal-pick .ui-icon{fill:currentColor;width:13px;height:13px}.planner-map-marker .marker-status.is-recommended.crystal-pick{color:#9e2853;background:#ffe3ed}.marker-status.crystal-pick svg{fill:currentColor}.venue-review-preview{color:var(--text-muted);margin-top:6px;font-size:12px;display:block}.venue-review{border:1px solid var(--line);background:var(--surface);border-radius:12px;margin:20px 0;padding:16px}.venue-review h3{margin:0 0 8px;font-size:15px}.venue-review p{margin:0 0 10px;font-size:14px;line-height:1.6}.venue-review a{color:var(--purple);overflow-wrap:anywhere;font-size:13px;font-weight:700}.venue-review small,.venue-location-note{color:var(--text-muted);margin-top:8px;font-size:12px;line-height:1.5;display:block}.venue-research-note{color:var(--text-muted);border-left:3px solid #b76c87;padding-left:12px;font-size:13px;line-height:1.6}.venue-map-actions{flex-wrap:wrap}.venue-map-actions .modal-link{cursor:pointer;text-align:center;border:0}.venue-map-actions .modal-link.secondary{border:1px solid var(--line);background:var(--surface);color:var(--purple)}.planner-map-marker.recommended:after,.planner-map-marker.booked:before{content:none}.leaflet-tooltip.map-aware-tooltip{box-sizing:border-box;white-space:normal;overscroll-behavior:contain;overflow:auto}.leaflet-tooltip.map-aware-tooltip:before{display:none}.leaflet-tooltip.map-aware-tooltip .place-tooltip,.leaflet-tooltip.map-aware-tooltip .route-tooltip{overflow-wrap:anywhere;width:100%;min-width:0;max-width:100%}.planner-map-marker.kind-nightlife{background:#574092}.account-menu{justify-self:start;min-width:0;position:relative}.account-options{z-index:1400;border:1px solid var(--line);background:var(--surface);width:210px;max-width:calc(100vw - 28px);color:var(--ink);box-shadow:var(--shadow-float);border-radius:12px;padding:6px;position:absolute;top:calc(100% + 12px);left:0}.account-options button{width:100%;min-height:44px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:9px;padding:10px 12px;font-size:14px;display:flex}.account-options button:hover,.account-options button:focus-visible{background:var(--surface-soft)}.account-options button:disabled{opacity:.6;cursor:wait}.account-options p{color:var(--rose-text);margin:6px;font-size:13px;line-height:1.4}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
