/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */
@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-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--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-outline-style:solid;--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;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-ease: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-serif:ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--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{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.h-5{height:calc(var(--spacing) * 5)}.w-5{width:calc(var(--spacing) * 5)}.flex-shrink,.shrink{flex-shrink:1}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.rounded{border-radius:.25rem}.border{border-style:var(--tw-border-style);border-width:1px}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.underline{text-decoration-line:underline}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.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)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);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,)}.drop-shadow{--tw-drop-shadow-size:drop-shadow(0 1px 2px var(--tw-drop-shadow-color,#0000001a)) drop-shadow(0 1px 1px var(--tw-drop-shadow-color,#0000000f));--tw-drop-shadow:drop-shadow(0 1px 2px #0000001a) drop-shadow(0 1px 1px #0000000f);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,)}.grayscale{--tw-grayscale:grayscale(100%);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,)}.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,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-out{--tw-ease:var(--ease-out);transition-timing-function:var(--ease-out)}}html,body,#root{width:100%;height:100%;margin:0;padding:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@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-outline-style{syntax:"*";inherits:false;initial-value:solid}@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}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}.planner-root *{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}.planner-root{background:#f0ebe3;justify-content:center;height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;display:flex;overflow:hidden}.planner-root .phone{background:#faf8f3;border-radius:40px;flex-shrink:0;width:393px;max-width:393px;height:852px;max-height:852px;position:relative;overflow:hidden;box-shadow:0 0 40px #0000001a}@media (height<=900px){.planner-root .phone{transform:scale(calc(min(1, (100vh - 32px) / 852)));transform-origin:top}}.planner-root .header{z-index:100;background:linear-gradient(#faf8f3f7 75%,#0000);justify-content:space-between;align-items:flex-start;gap:10px;padding:50px 16px 10px;display:flex;position:absolute;top:0;left:0;right:0}.planner-root .header-main{flex:1;min-width:0}.planner-root .header-title{color:#2d3436;font-size:20px;font-weight:700}.planner-root .header-sub{color:#b2bec3;margin-bottom:2px;font-size:12px}.planner-root .header-right{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:6px;display:flex}.planner-root .weather{color:#636e72;background:#fffc;border-radius:20px;padding:6px 12px;font-size:13px}.planner-root .agent-bubble{display:none}.planner-root .agent-bubble--loading .agent-bubble-text{color:#95a5a6}.planner-root .agent-bubble-avatar{flex-shrink:0;font-size:20px;line-height:1}.planner-root .agent-bubble-text{color:#4a5560;margin:0;font-size:12px;font-weight:500;line-height:1.5}.planner-root .share-consensus-bar{display:none}.planner-root .share-consensus-copy{flex-direction:column;gap:2px;min-width:0;display:flex}.planner-root .share-consensus-eyebrow{color:#b07a3a;letter-spacing:.06em;text-transform:uppercase;font-size:10px;font-weight:700}.planner-root .share-consensus-title{color:#5d4030;font-size:12px;font-weight:700;line-height:1.3}.planner-root .share-consensus-cta{color:#7a4a12;cursor:pointer;background:linear-gradient(#fff 0%,#fcefd9 100%);border:none;border-radius:12px;flex-shrink:0;padding:9px 12px;font-size:12px;font-weight:700;box-shadow:0 3px 10px #b4783c33}.planner-root .share-consensus-cta:disabled{opacity:.65;cursor:wait}.planner-root .share-consensus-cta:active:not(:disabled){transform:scale(.97)}.planner-root .share-invite-sheet{z-index:200;background:#fff;border-radius:24px 24px 0 0;max-height:78%;padding:8px 20px 28px;transition:transform .35s cubic-bezier(.32,.72,0,1);position:absolute;bottom:0;left:0;right:0;overflow-y:auto;transform:translateY(100%);box-shadow:0 -8px 32px #0000001f}.planner-root .share-invite-sheet.open{transform:translateY(0)}.planner-root .share-invite-header{margin-bottom:12px}.planner-root .share-invite-title{color:#2d3436;margin:0;font-size:18px;font-weight:700}.planner-root .share-invite-sub{color:#636e72;margin:4px 0 0;font-size:12px}.planner-root .share-invite-tabs{gap:8px;margin-bottom:14px;display:flex}.planner-root .share-invite-tab{color:#636e72;cursor:pointer;background:#f8f9fa;border:1px solid #e9ecef;border-radius:12px;flex:1;padding:10px 8px;font-size:12px;font-weight:600}.planner-root .share-invite-tab.active{color:#6b4423;background:linear-gradient(#fff8ee 0%,#f9d8b1 100%);border-color:#f9d8b1}.planner-root .share-invite-loading{text-align:center;color:#95a5a6;padding:24px;font-size:13px}.planner-root .share-invite-card{background:linear-gradient(160deg,#faf8f3 0%,#f5ebe0 100%);border:1px solid #f9d8b1b3;border-radius:16px;margin-bottom:14px;padding:14px}.planner-root .share-invite-card-badge{color:#b07a3a;margin-bottom:8px;font-size:10px;font-weight:700}.planner-root .share-invite-card-body{color:#2d3436;margin:0 0 10px;font-size:14px;font-weight:600;line-height:1.55}.planner-root .share-invite-route{color:#6b4423;background:#ffffffa6;border-radius:10px;margin-bottom:10px;padding:8px 10px;font-size:11px;font-weight:700}.planner-root .share-invite-stops{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.planner-root .share-invite-stops li{background:#ffffff8c;border-radius:8px;gap:8px;padding:6px 8px;font-size:12px;display:flex}.planner-root .share-invite-stop-time{color:#868e96;flex-shrink:0;font-weight:600}.planner-root .share-invite-stop-name{color:#2d3436;font-weight:600}.planner-root .share-invite-hint{color:#868e96;margin:10px 0 0;font-size:10px}.planner-root .share-invite-actions{gap:10px;display:flex}.planner-root .share-invite-share-btn{color:#2d4a3a;background:linear-gradient(#dce8e0 0%,#b8d4c4 100%);border:1px solid #9fc4ad;flex:1.3;font-weight:700}.planner-root .share-invite-save-btn{flex:.9;font-size:12px}.planner-root .share-invite-share-hint{color:#3d6b4a;background:#3d6b4a1a;border-radius:10px;margin:0 0 10px;padding:8px 10px;font-size:12px;line-height:1.45}.share-trip-card{background:linear-gradient(155deg,#f7fbf8 0%,#eef6f0 45%,#faf6ee 100%);border:1px solid #9fc4ad8c;border-radius:18px;margin-bottom:14px;padding:16px 16px 14px;position:relative;overflow:hidden;box-shadow:0 8px 28px #2d4a3a1a}.share-trip-card__glow{pointer-events:none;background:radial-gradient(circle,#f9d8b173,#0000 70%);border-radius:50%;width:140px;height:140px;position:absolute;top:-40px;right:-30px}.share-trip-card__head{margin-bottom:12px;position:relative}.share-trip-card__badge{letter-spacing:.02em;color:#6b4423;background:#f9d8b173;border-radius:999px;padding:3px 8px;font-size:10px;font-weight:800;display:inline-block}.share-trip-card__audience{float:right;color:#3d6b4a;font-size:10px;font-weight:700}.share-trip-card__title{color:#1e3328;clear:both;margin:10px 0 6px;font-size:18px;font-weight:800;line-height:1.25}.share-trip-card__tagline{color:#4a5f55;margin:0;font-size:13px;font-weight:600;line-height:1.5}.share-trip-card__route{background:#ffffffb8;border:1px solid #9fc4ad59;border-radius:12px;align-items:flex-start;gap:8px;margin-bottom:12px;padding:10px 12px;display:flex}.share-trip-card__route-icon{flex-shrink:0;font-size:16px}.share-trip-card__route p{color:#2d4a3a;margin:0;font-size:12px;font-weight:700;line-height:1.45}.share-trip-card__timeline{flex-direction:column;gap:0;margin:0;padding:0 0 0 6px;list-style:none;display:flex}.share-trip-card__timeline li{gap:10px;padding:8px 0 8px 4px;display:flex;position:relative}.share-trip-card__timeline li:not(:last-child):after{content:"";background:linear-gradient(#9fc4ad,#9fc4ad33);width:2px;position:absolute;top:26px;bottom:-4px;left:9px}.share-trip-card__dot{z-index:1;background:#3d6b4a;border-radius:50%;flex-shrink:0;width:12px;height:12px;margin-top:4px;box-shadow:0 0 0 3px #3d6b4a33}.share-trip-card__stop{background:#ffffffa6;border-radius:10px;flex:1;min-width:0;padding:8px 10px}.share-trip-card__stop time{color:#7a8f84;margin-bottom:2px;font-size:11px;font-weight:700;display:block}.share-trip-card__stop strong{color:#1e3328;word-break:break-word;font-size:14px;font-weight:800;line-height:1.3;display:block}.share-trip-card__foot{color:#7a8f84;border-top:1px dashed #9fc4ad80;flex-direction:column;gap:4px;margin-top:12px;padding-top:10px;font-size:10px;display:flex}.share-trip-card__foot em{color:#3d6b4a;font-style:normal;font-weight:700}.planner-root .phone--planned .map-scroll{padding-top:168px}.planner-root .map-scroll{width:100%;height:100%;padding-top:100px;padding-bottom:152px;position:relative;overflow:hidden auto}.planner-root .map-bg{background:linear-gradient(#e8f4f8 0%,#f0f7e6 30%,#faf8f3 60%,#e8f4e8 100%);width:100%;position:relative}.planner-root .road-svg{pointer-events:none;z-index:1;width:100%;height:100%;position:absolute;top:0;left:0}.planner-root .road-path{fill:none;stroke:#d4d0c8;stroke-width:24px;stroke-linecap:round;stroke-dasharray:2000;stroke-dashoffset:2000px}.planner-root .road-path.animate{animation:2.5s ease-out forwards roadGrow}@keyframes roadGrow{to{stroke-dashoffset:0}}.planner-root .node{z-index:10;cursor:pointer;flex-direction:column;align-items:center;width:100px;margin-left:-50px;transition:transform .3s cubic-bezier(.34,1.56,.64,1);display:flex;position:relative}.planner-root .node:active{transform:scale(.92)}.planner-root .node-pop{opacity:0;animation:.6s cubic-bezier(.34,1.56,.64,1) forwards nodePop}@keyframes nodePop{0%{opacity:0;transform:translateY(30px)scale(.6)}60%{transform:translateY(-8px)scale(1.05)}to{opacity:1;transform:translateY(0)scale(1)}}.planner-root .signboard{flex-direction:column;align-items:center;width:80px;height:90px;display:flex;position:relative}.planner-root .sign-wood{z-index:2;background:linear-gradient(135deg,#e6b89c 0%,#d4a373 100%);border:3px solid #bc8a5f;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;width:72px;height:78px;display:flex;position:relative;box-shadow:0 4px 12px #00000026,inset 0 2px 4px #ffffff4d}.planner-root .sign-stick{z-index:1;background:#a67c52;border-radius:0 0 4px 4px;width:8px;height:18px;margin-top:-5px}.planner-root .node-emoji{filter:drop-shadow(0 2px 4px #0000001a);font-size:36px;line-height:1}.planner-root .node-time{color:#fff;white-space:nowrap;background:#0000004d;border-radius:8px;margin-top:4px;padding:2px 6px;font-size:10px;font-weight:600}.planner-root .node-name{color:#2d3436;text-shadow:0 1px 2px #fffc;text-align:center;text-overflow:ellipsis;white-space:nowrap;max-width:90px;margin-top:4px;font-size:12px;font-weight:600;overflow:hidden}.planner-root .node--pending{opacity:.94}.planner-root .node--pending .sign-wood{-webkit-backdrop-filter:blur(12px);background:#ffffff61;border:1px solid #ffffffb8;box-shadow:0 4px 18px #ffffff73,inset 0 1px #fff9}.planner-root .node-time--pending{color:#8f5a24;white-space:normal;text-align:center;background:#fde6c88c;max-width:64px;padding:3px 5px;font-size:8px;line-height:1.25}.planner-root .node--confirmed .sign-wood{background:#ffffff9e;border:1px solid #87a38273;box-shadow:0 3px 12px #87a38226,inset 0 1px #ffffffb3}.planner-root .node-lock-stamp{z-index:4;color:#fff;letter-spacing:.02em;background:#87a382;border-radius:6px;padding:3px 6px;font-size:8px;font-weight:800;animation:.5s cubic-bezier(.34,1.56,.64,1) forwards stampLand;position:absolute;top:2px;right:-6px;transform:rotate(10deg);box-shadow:0 2px 6px #87a38273}@keyframes stampLand{0%{opacity:0;transform:rotate(24deg)scale(1.8)}to{opacity:1;transform:rotate(10deg)scale(1)}}.planner-root .node--stamp-play .signboard{animation:.65s cubic-bezier(.34,1.56,.64,1) nodeStampFlip}@keyframes nodeStampFlip{0%{transform:perspective(520px)rotateY(0)translateY(0)}35%{transform:perspective(520px)rotateY(-14deg)translateY(-12px)scale(1.06)}65%{transform:perspective(520px)rotateY(10deg)translateY(-5px)scale(1.02)}to{transform:perspective(520px)rotateY(0)translateY(0)}}.planner-root .node--loading .sign-wood{background:#ffffffbf;border:3px dashed #b2bec3;animation:1.5s ease-in-out infinite signPulse}.planner-root .node--loading .node-image{opacity:.45;filter:grayscale(.6)}.planner-root .node--error .sign-wood{background:linear-gradient(135deg,#f5d4ce 0%,#e8b8b0 100%);border:3px solid #e08a7a}@keyframes signPulse{0%,to{opacity:.65}50%{opacity:1}}.planner-root .node-badge{z-index:5;position:absolute;top:-4px;right:4px}.planner-root .node-badge--check{color:#fff;background:#6aab7a;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:12px;font-weight:700;display:flex;box-shadow:0 2px 6px #6aab7a59}.planner-root .node-badge--spin{border:2px solid #b2bec380;border-top-color:#95a5a6;border-radius:50%;width:22px;height:22px;animation:.9s linear infinite spin}@keyframes pulse{0%,to{opacity:.5}50%{opacity:1}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.planner-root .transit-connector{z-index:4;pointer-events:none;transform-origin:0;opacity:0;background:repeating-linear-gradient(90deg,#c4b098d9 0 7px,#0000 7px 12px);height:3px;animation:.4s forwards fadeIn;position:absolute}.planner-root .transit-clasp{z-index:6;opacity:0;max-width:148px;animation:.45s forwards fadeIn;position:absolute;transform:translate(-50%,-50%)}.planner-root .transit-clasp-card{background:#fffffff0;border:1px solid #f9d8b1e6;border-radius:12px;align-items:center;gap:6px;padding:6px 9px;display:flex;box-shadow:0 4px 14px #785a321f}.planner-root .transit-clasp-icon{object-fit:contain;flex-shrink:0;width:28px;height:28px}.planner-root .transit-clasp-copy{flex-direction:column;gap:2px;min-width:0;display:flex}.planner-root .transit-clasp-route{color:#5d4a38;text-overflow:ellipsis;white-space:nowrap;max-width:108px;font-size:9px;font-weight:700;line-height:1.2;overflow:hidden}.planner-root .transit-clasp-meta{color:#8b7355;font-size:9px;font-weight:600}.planner-root .detail-transit{align-items:center;gap:8px;display:flex}.planner-root .detail-transit-icon{object-fit:contain;width:28px;height:28px}@keyframes fadeIn{to{opacity:1}}.planner-root .bottom-dock{z-index:100;pointer-events:none;flex-direction:column;gap:8px;padding:0 14px 20px;display:flex;position:absolute;bottom:0;left:0;right:0}.planner-root .bottom-dock>*{pointer-events:auto}.planner-root .bottom-status-bar{-webkit-backdrop-filter:blur(16px);text-align:center;background:#ffffffb8;border:1px solid #ffffffd9;border-radius:14px;width:100%;padding:10px 14px;box-shadow:0 4px 16px #7882781a}.planner-root .bottom-status-text{color:#5d6b63;font-size:12px;font-weight:600;line-height:1.4}.planner-root .bottom-status-bar--action{color:#6b4423;cursor:pointer;background:0 0;border:none;width:100%;padding:0;font-size:13px;font-weight:700;line-height:1.4}.planner-root .bottom-status-bar--action:disabled{opacity:.5;cursor:not-allowed}.planner-root .voice-bar{z-index:1;-webkit-backdrop-filter:blur(20px);background:#ffffffe0;border:1px solid #ffffffe6;border-radius:22px;align-items:center;gap:10px;padding:10px 14px;display:flex;position:relative;bottom:auto;left:auto;right:auto;box-shadow:0 6px 24px #646e641a}.planner-root .mic-btn{color:#5a7d52;cursor:pointer;background:linear-gradient(#fff 0%,#eef5eb 100%);border:1px solid #87a38240;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;font-size:18px;transition:transform .2s;display:flex;position:relative;box-shadow:0 3px 10px #87a38238}.planner-root .mic-btn:active{transform:scale(.9)}.planner-root .mic-btn.listening{background:linear-gradient(#eef5eb 0%,#dce8d8 100%)}.planner-root .mic-btn.listening:after{content:"";border:2px solid #87a38273;border-radius:50%;width:100%;height:100%;animation:1.5s infinite ripple;position:absolute}@keyframes ripple{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.6)}}.planner-root .text-input{color:#2d3436;background:0 0;border:none;outline:none;flex:1;font-size:15px}.planner-root .send-btn{color:#3d5a4c;cursor:pointer;background:linear-gradient(#c5d9ce 0%,#a8c4b6 100%);border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:16px;display:flex}.planner-root .overlay{z-index:150;opacity:0;pointer-events:none;background:#00000059;transition:opacity .3s;position:absolute;inset:0}.planner-root .overlay.show{opacity:1;pointer-events:auto}.planner-root .detail-panel{z-index:200;background:#fff;border-radius:24px 24px 0 0;max-height:60vh;padding:20px 24px 30px;transition:transform .4s cubic-bezier(.32,.72,0,1);position:absolute;bottom:0;left:0;right:0;overflow-y:auto;transform:translateY(110%);box-shadow:0 -8px 40px #00000026}.planner-root .detail-panel.open{transform:translateY(0)}.planner-root .detail-panel--closing{transition:transform .45s cubic-bezier(.32,.72,0,1);transform:translateY(110%)}.planner-root .panel-handle{background:#dfe6e9;border-radius:3px;width:40px;height:5px;margin:0 auto 16px}.planner-root .detail-header{justify-content:space-between;align-items:flex-start;margin-bottom:12px;display:flex}.planner-root .detail-title{color:#2d3436;font-size:20px;font-weight:700}.planner-root .detail-rating{color:#856404;background:#fff3cd;border-radius:12px;align-items:center;gap:4px;padding:4px 10px;font-size:13px;font-weight:600;display:flex}.planner-root .detail-agent-voice{-webkit-backdrop-filter:blur(12px);background:#ffffff8c;border:1px solid #fffc;border-radius:14px;margin-bottom:12px;padding:10px 12px;box-shadow:0 3px 12px #78828c14}.planner-root .detail-agent-voice-label{color:#7a8a94;letter-spacing:.04em;margin-bottom:4px;font-size:10px;font-weight:700;display:block}.planner-root .detail-agent-voice-text{color:#4a5560;margin:0;font-size:13px;font-weight:500;line-height:1.5}.planner-root .detail-time-row{flex-direction:column;gap:8px;display:flex}.planner-root .inventory-badge{border-radius:20px;align-self:flex-start;align-items:center;gap:4px;padding:5px 10px;font-size:11px;font-weight:700;display:inline-flex}.planner-root .inventory-badge--green{color:#2d6a3e;background:#c8e6d0a6}.planner-root .inventory-badge--yellow{color:#8f5a24;background:#ffecc8bf}.planner-root .inventory-badge--red{color:#b84a3a;background:#ffdcd7d9}.planner-root .inventory-badge--pulse{animation:2s ease-in-out infinite inventoryPulse}.planner-root .inventory-badge--checking{opacity:.75}@keyframes inventoryPulse{0%,to{box-shadow:0 0 #6aab7a40}50%{box-shadow:0 0 0 5px #6aab7a00}}.planner-root .detail-alert{color:#c62828;font-size:13px;font-weight:600}.planner-root .detail-tags{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.planner-root .tag{color:#495057;background:#f1f3f5;border-radius:14px;padding:5px 10px;font-size:12px}.planner-root .tag.green{color:#2e7d32;background:#e8f5e9}.planner-root .tag.red{color:#c62828;background:#ffebee}.planner-root .detail-info{color:#636e72;flex-direction:column;gap:8px;margin-bottom:18px;font-size:14px;display:flex}.planner-root .detail-actions{flex-wrap:wrap;gap:10px;display:flex}.planner-root .btn{cursor:pointer;border:none;border-radius:16px;flex:1;padding:14px;font-size:15px;font-weight:600;transition:all .2s}.planner-root .btn-primary{color:#fff;background:linear-gradient(135deg,#ff7675 0%,#d63031 100%);box-shadow:0 4px 12px #d6303140}.planner-root .btn-confirm-stamp--squish{animation:.38s cubic-bezier(.34,1.56,.64,1) confirmSquish}@keyframes confirmSquish{0%{transform:scale(1)}32%{transform:scale(.9,1.08)}58%{transform:scale(1.06,.94)}to{transform:scale(1)}}.planner-root .btn-secondary{color:#495057;background:#f1f3f5}.planner-root .btn-amber{color:#7a4a12;background:linear-gradient(#fff8ee 0%,#f9d8b1 100%);border:1px solid #e8c49acc;font-weight:600;box-shadow:0 2px 8px #f9d8b140}.planner-root .btn-delete{color:#636e72;background:#f1f3f5;justify-content:center;align-items:center;gap:4px;display:inline-flex}.planner-root .btn-delete-icon{filter:drop-shadow(0 1px 2px #00000026)}.planner-root .btn:active{transform:scale(.96)}.planner-root .detail-consensus{border-top:1px dashed #00000014;margin-top:16px;padding-top:14px}.planner-root .detail-consensus-head{flex-direction:column;gap:2px;margin-bottom:10px;display:flex}.planner-root .detail-consensus-eyebrow{color:#b07a3a;letter-spacing:.05em;font-size:10px;font-weight:700}.planner-root .detail-consensus-hint{color:#636e72;font-size:12px;font-weight:600}.planner-root .detail-consensus-actions{gap:10px;display:flex}.planner-root .consensus-btn{color:#495057;cursor:pointer;background:#fafbfc;border:1px solid #e9ecef;border-radius:14px;flex:1;padding:11px 10px;font-size:13px;font-weight:600;transition:all .2s}.planner-root .consensus-btn--approve.active{color:#2d6a3e;background:linear-gradient(#f0faf2 0%,#d4edda 100%);border-color:#a8d4b4}.planner-root .consensus-btn--reject.active{color:#7a4a12;background:linear-gradient(#fff8ee 0%,#fcefd9 100%);border-color:#f9d8b1}.planner-root .detail-consensus-snippet{color:#4a5560;background:#fff9;border:1px solid #f9d8b180;border-radius:10px;margin:10px 0 0;padding:8px 10px;font-size:12px;line-height:1.45}.planner-root .log-panel{color:#0f8;z-index:90;background:#000000bf;border-radius:10px;width:180px;max-height:200px;padding:10px;font-family:monospace;font-size:10px;line-height:1.6;position:absolute;top:100px;right:10px;overflow-y:auto}.planner-root .mode-badge{color:#856404;background:#fff3cd;border-radius:10px;padding:2px 8px;font-size:10px;font-weight:600;display:inline-block}.planner-root .scenario-chip{color:#636e72;margin-top:4px;font-size:11px}.planner-root .map-bg--assets{background:0 0}.planner-root .map-bg-layer{z-index:0;position:absolute;inset:0;overflow:hidden}.planner-root .map-bg-image{object-fit:cover;object-position:top center;width:100%;height:100%;display:block}.planner-root .map-road-video{object-fit:cover;object-position:top center;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.planner-root .map-nodes-layer{z-index:10;position:absolute;inset:0}.planner-root .map-node-anchor{width:0;height:0;position:absolute}.planner-root .sign-wood--image{padding:6px 6px 4px;position:relative;overflow:visible}.planner-root .node-time--above{z-index:6;flex-shrink:0;margin-bottom:4px;position:relative}.planner-root .node-image{object-fit:contain;filter:drop-shadow(0 2px 4px #0000001f);width:56px;height:56px;display:block}.planner-root .execute-fab-wrap{z-index:95;flex-direction:column;align-items:center;gap:6px;max-width:calc(100% - 24px);display:flex;position:absolute;bottom:92px;left:50%;transform:translate(-50%)}.planner-root .execute-progress-hint{color:#5a646ed9;-webkit-backdrop-filter:blur(8px);letter-spacing:.02em;background:#ffffff73;border-radius:12px;padding:4px 12px;font-size:11px;font-weight:600;animation:.4s hintFadeIn}@keyframes hintFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.planner-root .execute-fab{z-index:95;letter-spacing:.02em;cursor:pointer;text-align:center;border-radius:22px;max-width:calc(100% - 32px);padding:13px 20px;font-size:13px;font-weight:700;line-height:1.35;transition:background .2s,box-shadow .2s,color .2s;position:relative;bottom:auto;left:auto;transform:none}.planner-root .execute-fab--armed{color:#6b4423;background:linear-gradient(#fcefd9 0%,#f9d8b1 55%,#f0c896 100%);border:1px solid #e8c49a;box-shadow:0 6px 22px #f9d8b18c,inset 0 0 0 1px #ffffff80}.planner-root .execute-fab--armed:active:not(:disabled){background:linear-gradient(#f9d8b1 0%,#e8c080 100%);transform:scale(.97)}.planner-root .execute-fab--shield{animation:2.2s ease-in-out infinite shieldGlow}@keyframes shieldGlow{0%,to{box-shadow:0 6px 22px #f9d8b18c,0 0 #f9d8b159}50%{box-shadow:0 8px 28px #f9d8b1a6,0 0 0 6px #f9d8b11f}}.planner-root .execute-fab--locked{color:#868e96;box-shadow:none;cursor:not-allowed;background:linear-gradient(#f1f3f5 0%,#e9ecef 100%);border:1px solid #dee2e6}.planner-root .execute-fab:disabled{opacity:1;cursor:not-allowed}.planner-root .detail-status-banner{color:#8f5a24;background:#fde6c88c;border:1px solid #f9d8b1cc;border-radius:12px;margin:0 16px 12px;padding:10px 12px;font-size:12px;font-weight:600;line-height:1.45}.planner-root .detail-status-banner--ok{color:#3d6b4a;background:#c8e6d08c;border-color:#a8d4b4d9}.planner-root .node-edit-row{gap:8px;margin-bottom:14px;display:flex}.planner-root .node-edit-input{border:1px solid #dfe6e9;border-radius:12px;outline:none;flex:1;padding:10px 12px;font-size:14px}.planner-root .btn-sm{flex:none;padding:10px 14px}.v3-root .v3-phone{background:var(--v2-bg);border-radius:40px;flex-direction:column;width:393px;height:852px;max-height:852px;display:flex;position:relative;overflow:hidden;box-shadow:0 0 40px #00000014}@media (height<=900px){.v3-root .v3-phone{transform:scale(calc(min(1, (100vh - 32px) / 852)));transform-origin:top}}.v3-current-bar{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--v2-border);background:#ffffffc7;border-radius:14px;flex-shrink:0;align-items:stretch;gap:10px;margin:0 12px 8px;padding:10px 12px;display:flex}.v3-current-bar-accent{background:linear-gradient(180deg, var(--v2-sage), #6b9a72);border-radius:2px;flex-shrink:0;width:3px}.v3-current-bar-body{flex-direction:column;gap:2px;min-width:0;display:flex}.v3-current-label{color:var(--v2-sage);letter-spacing:.02em;font-size:10px;font-weight:700}.v3-current-title{color:var(--v2-text);white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:600;overflow:hidden}.v3-current-meta{color:var(--v2-sub);font-size:10px}.v3-workspace{flex:1;gap:8px;min-height:0;padding:0 8px 8px;display:flex;position:relative}.v3-workspace--map-full{gap:0;padding:0 0 4px}.v3-workspace--map-full .v3-spatial-map{border-left:none;border-right:none;border-radius:0;flex:1}.v3-map-phase-float{z-index:20;pointer-events:none;position:absolute;top:44px;left:8px;right:8px}.v3-map-phase-float .v3-current-bar{pointer-events:auto;margin:0;box-shadow:0 8px 24px #0000001a}.v3-journey{scrollbar-width:none;flex-direction:column;flex-shrink:0;gap:8px;width:28%;padding-right:2px;display:flex;overflow-y:auto}.v3-journey::-webkit-scrollbar{display:none}.v3-phase{border:1px solid var(--v2-border);cursor:pointer;background:#ffffffa6;border-radius:14px;padding:10px 10px 8px;transition:border-color .2s,box-shadow .2s}.v3-phase--current{background:#ffffffe0;border-color:#87a38273;box-shadow:0 4px 16px #87a3821f}.v3-phase-head{align-items:center;gap:6px;margin-bottom:2px;display:flex}.v3-phase-num{color:var(--v2-sub);text-transform:uppercase;letter-spacing:.04em;font-size:9px;font-weight:800}.v3-phase-intent{color:var(--v2-sage);font-size:9px;font-weight:600}.v3-phase-time{color:var(--v2-sub);margin-bottom:4px;font-size:10px;font-weight:600}.v3-phase-title{margin:0 0 4px;font-size:13px;font-weight:700;line-height:1.25}.v3-phase-inventory{color:var(--v2-blue);margin-bottom:4px;font-size:9px;font-weight:600}.v3-phase-summary{color:var(--v2-sub);margin:0 0 8px;font-size:10px;line-height:1.35}.v3-phase-foot{justify-content:space-between;align-items:center;gap:6px;display:flex}.v3-phase-badge{color:var(--v2-sub);background:#0000000a;border-radius:8px;padding:3px 7px;font-size:9px;font-weight:700}.v3-phase-badge--locked{background:var(--v2-sage-dim);color:#3d6b4a}.v3-phase-badge--pending{color:#6b4423;background:#f9d8b173}.v3-phase-badge--executing{color:var(--v2-blue);background:#4a7ba71f}.v3-phase-confirm{background:var(--v2-sage-dim);color:#3d6b4a;cursor:pointer;border:none;border-radius:8px;padding:4px 10px;font-size:10px;font-weight:700}.v3-spatial-map{border:1px solid var(--v2-border);background:#e8e8e3;border-radius:14px;flex-direction:column;flex:1;min-width:0;display:flex;position:relative;overflow:hidden}.v3-spatial-map--expanded{border-radius:0}.v3-spatial-toolbar{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--v2-border);z-index:5;background:#ffffffd1;flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;padding:6px 8px;display:flex}.v3-map-expand-btn{background:linear-gradient(180deg, #fff, var(--v2-sage-dim));color:#3d6b4a;cursor:pointer;border:1px solid #87a38259;border-radius:10px;align-items:center;gap:4px;padding:5px 10px;font-size:11px;font-weight:700;display:inline-flex;box-shadow:0 2px 8px #87a38226}.v3-map-expand-icon{font-size:13px;line-height:1}.v3-map-toolbar-hint{color:var(--v2-sub);white-space:nowrap;text-overflow:ellipsis;font-size:9px;font-weight:600;overflow:hidden}.v3-spatial-scroll{scrollbar-width:none;-webkit-overflow-scrolling:touch;flex:1;min-height:0;overflow:hidden auto}.v3-spatial-scroll::-webkit-scrollbar{display:none}.v3-spatial-map--compact .v3-spatial-map-inner{transform-origin:top;width:138.9%;margin-left:-19.45%;transform:scale(.72)}.v3-spatial-map--compact .v3-map-node-anchor .node{width:88px;margin-left:-44px}.v3-spatial-map--compact .signboard{width:72px;height:82px}.v3-spatial-map--compact .sign-wood{width:64px;height:70px}.v3-spatial-map--compact .node-image{width:48px;height:48px}.v3-spatial-map--expanded .v3-spatial-map-inner{width:100%;margin-left:0;overflow:visible;transform:none}.v3-spatial-map--expanded .v3-spatial-bg{object-fit:contain;object-position:center 38%;transform-origin:50% 40%;transform:scale(1.12)}.v3-spatial-map--expanded .map-nodes-layer{overflow:visible}.v3-spatial-map--expanded .v3-map-node-anchor .node{width:118px;margin-left:-59px}.v3-spatial-map--expanded .signboard{width:98px;height:110px}.v3-spatial-map--expanded .sign-wood{width:90px;height:94px;overflow:visible}.v3-spatial-map--expanded .node-image{transform-origin:bottom;width:74px;height:74px;transform:translateY(-5px)scale(1.1)}.v3-map-transit-paths{z-index:5;pointer-events:none;position:absolute;inset:0;overflow:visible}.v3-map-transit-path{fill:none;stroke:#c4b098bf;stroke-width:2px;stroke-dasharray:6 5;stroke-linecap:round}.v3-map-transit-pin{z-index:7;pointer-events:none;flex-direction:column;align-items:center;gap:2px;display:flex;position:absolute}.v3-map-transit-pin--minimal{gap:2px;transform:translate(-50%,-58%)}.v3-map-transit-pin--minimal .v3-map-transit-pin-icon{object-fit:contain;filter:drop-shadow(0 1px 3px #50463733);flex-shrink:0;width:28px;height:28px}.v3-map-transit-pin--minimal .v3-map-transit-pin-caption{color:#5d4a38;text-align:center;white-space:nowrap;text-shadow:0 1px 2px #ffffffe6;font-size:9px;font-weight:700;line-height:1.2}.v3-map-transit-pin--minimal.v3-map-transit-pin--fullscreen .v3-map-transit-pin-icon{width:32px;height:32px}.v3-map-transit-pin--minimal.v3-map-transit-pin--fullscreen .v3-map-transit-pin-caption{font-size:10px}.v3-map-node-anchor{z-index:8}.v3-map-node-anchor--endpoint{z-index:10}.v3-map-node-anchor--stop{z-index:9}.v3-map-node-anchor--focus{z-index:20}.v3-map-node-anchor--focus .node{filter:drop-shadow(0 0 12px #87a38273)}.v3-map-node-anchor--draggable .node{cursor:grab}.v3-spatial-map--dragging .v3-map-node-anchor--draggable .node{cursor:grabbing;opacity:.92}.v3-spatial-map--dragging .v3-map-node-anchor--draggable:active .node{transform:scale(1.04)}.v3-spatial-map--recalc .v3-spatial-bg{filter:saturate(.25)blur(1px);opacity:.5}.v3-recalc-banner{z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);color:var(--v2-blue);white-space:nowrap;background:#ffffffeb;border-radius:20px;align-items:center;gap:6px;padding:6px 12px;font-size:10px;font-weight:600;display:flex;position:absolute;top:8px;left:50%;transform:translate(-50%);box-shadow:0 4px 16px #00000014}.v3-recalc-dot{background:var(--v2-blue);border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite v3RecalcPulse}@keyframes v3RecalcPulse{50%{opacity:.3;transform:scale(.8)}}.v3-spatial-map-inner{width:100%;position:relative}.v3-spatial-bg{object-fit:cover;filter:saturate(.72)contrast(1.02);width:100%;height:100%;transition:filter .4s,opacity .4s;position:absolute;inset:0}.v3-spatial-svg{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.v3-spatial-path--guide{stroke:#87a38224;stroke-width:16px;stroke-linecap:round;stroke-linejoin:round;fill:none}.v3-spatial-path{stroke:#87a3826b;stroke-width:3px;fill:none;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none}.v3-spatial-path--active{stroke:#5a8f6aeb;stroke-width:4.5px;filter:drop-shadow(0 0 6px #87a38273);animation:none}.v3-node-pin{cursor:pointer;z-index:2;background:0 0;border:none;width:22px;height:22px;padding:0;position:absolute;transform:translate(-50%,-50%)}.v3-node-pin-core{border:2px solid var(--v2-sage);background:#fffffff2;border-radius:50%;width:12px;height:12px;margin:5px auto;transition:transform .15s;display:block;box-shadow:0 2px 8px #0000001f}.v3-node-pin--focus .v3-node-pin-core{background:var(--v2-sage);border-color:#fff;width:14px;height:14px;margin:4px auto;box-shadow:0 0 0 3px #87a38240}.v3-node-pin--draggable .v3-node-pin-core{cursor:grab}.v3-node-pin--draggable:active .v3-node-pin-core{cursor:grabbing;transform:scale(1.15)}.v3-node-pin-label{color:var(--v2-sage);white-space:nowrap;text-overflow:ellipsis;background:#ffffffe6;border-radius:6px;max-width:90px;margin-top:2px;padding:2px 6px;font-size:8px;font-weight:700;position:absolute;top:100%;left:50%;overflow:hidden;transform:translate(-50%)}.map-nodes-layer--spatial .v3-interest-pin{width:26px;min-width:26px;height:26px;color:var(--v2-blue);cursor:pointer;z-index:3;background:#ffffffe0;border:1px solid #4a7ba759;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:transform .15s,background .15s,box-shadow .15s,width .15s;display:inline-flex;position:absolute;transform:translate(-50%,-50%);box-shadow:0 1px 6px #4a7ba71a}.v3-interest-pin-dot{font-size:13px;font-weight:700;line-height:1}.v3-interest-pin-name{max-width:80px;color:var(--v2-blue);text-overflow:ellipsis;white-space:nowrap;pointer-events:none;background:#fffffff2;border-radius:6px;padding:2px 6px;font-size:9px;font-weight:700;display:none;position:absolute;top:calc(100% + 4px);left:50%;overflow:hidden;transform:translate(-50%);box-shadow:0 2px 8px #00000014}.v3-interest-pin:hover,.v3-interest-pin:focus-visible,.v3-interest-pin--hover,.v3-interest-pin--active{z-index:4;background:#fffffffa;transform:translate(-50%,-50%)scale(1.05);box-shadow:0 3px 10px #4a7ba72e}.v3-interest-pin:hover .v3-interest-pin-name,.v3-interest-pin:focus-visible .v3-interest-pin-name,.v3-interest-pin--hover .v3-interest-pin-name,.v3-interest-pin--active .v3-interest-pin-name{display:block}.v3-spatial-map--expanded .v3-recalc-banner{top:52px}.v3-map-hint{color:var(--v2-sub);text-align:center;background:#fff9;flex-shrink:0;margin:0;padding:6px 8px;font-size:9px;font-weight:600}.v3-phase-strip{scrollbar-width:none;border-top:1px solid var(--v2-border);background:linear-gradient(#f5f5f0d9,#f5f5f0fa);flex-shrink:0;gap:6px;padding:8px 8px 4px;display:flex;overflow-x:auto}.v3-phase-strip::-webkit-scrollbar{display:none}.v3-phase-pill{border:1px solid var(--v2-border);cursor:pointer;background:#ffffffbf;border-radius:20px;flex-shrink:0;align-items:center;gap:4px;max-width:120px;padding:6px 10px;transition:border-color .2s,box-shadow .2s,background .2s;display:inline-flex}.v3-phase-pill--current{background:#fffffff2;border-color:#87a38280;box-shadow:0 2px 10px #87a3822e}.v3-phase-pill--locked{opacity:.85}.v3-phase-pill-num{color:var(--v2-sub);white-space:nowrap;font-size:8px;font-weight:800}.v3-phase-pill--current .v3-phase-pill-num{color:var(--v2-sage)}.v3-phase-pill-title{color:var(--v2-text);white-space:nowrap;text-overflow:ellipsis;font-size:10px;font-weight:700;overflow:hidden}.v3-phase-pill-check{color:var(--v2-sage);font-size:9px;font-weight:800}.v3-phase-pill-dot{background:#e6a23c;border-radius:50%;flex-shrink:0;width:5px;height:5px}.v3-map-ghost{z-index:14;pointer-events:none;animation:2s ease-in-out infinite v3GhostPulse}@keyframes v3GhostPulse{50%{opacity:.72}}.v3-map-ghost-card{flex-direction:column;align-items:center;width:100px;margin-left:-50px;display:flex}.v3-map-ghost-sign{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff73;border:2px dashed #4a7ba7a6;border-radius:14px;justify-content:center;align-items:center;width:72px;height:78px;padding:6px;display:flex;position:relative;box-shadow:0 8px 24px #4a7ba733}.v3-map-ghost-image{object-fit:contain;opacity:.85;filter:drop-shadow(0 2px 6px #4a7ba740);width:52px;height:52px}.v3-map-ghost-badge{background:var(--v2-blue);color:#fff;border-radius:8px;padding:2px 6px;font-size:8px;font-weight:800;position:absolute;top:-6px;right:-6px}.v3-map-ghost-stick{background:#a67c5280;border-radius:0 0 4px 4px;width:8px;height:14px;margin-top:-4px}.v3-map-ghost-name{color:var(--v2-blue);text-align:center;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 1px 2px #ffffffe6;max-width:96px;margin-top:4px;font-size:11px;font-weight:700;overflow:hidden}.v3-interest-pin--active{border-color:var(--v2-blue);background:#4a7ba71f;box-shadow:0 0 0 2px #4a7ba72e}.v3-map-node-anchor--endpoint .sign-wood{box-shadow:0 0 0 2px #87a38259,0 6px 16px #0000001a}.v3-collab{border:1px solid var(--v2-border);background:#fff9;border-radius:12px;flex-shrink:0;align-items:center;gap:8px;margin:0 12px 8px;padding:8px 10px;display:flex}.v3-collab-avatars{align-items:center;display:flex}.v3-collab-avatar{border:2px solid var(--v2-bg);background:#fff;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;margin-left:-6px;font-size:12px;display:flex}.v3-collab-avatar:first-child{margin-left:0}.v3-collab-feed{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.v3-collab-row{flex-direction:column;gap:1px;display:flex}.v3-collab-msg{color:var(--v2-sub);white-space:nowrap;text-overflow:ellipsis;font-size:10px;line-height:1.3;overflow:hidden}.v3-collab-row--agent .v3-collab-msg{color:var(--v2-sage)}.v3-collab-res{color:var(--v2-sage);font-size:9px;font-weight:600}.v3-collab-share{background:var(--v2-amber);color:#6b4423;cursor:pointer;border:1px solid #f9d8b1b3;border-radius:8px;flex-shrink:0;padding:5px 8px;font-size:10px;font-weight:700}.v3-insert-sheet{z-index:300;-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);background:#fffffff5;border-radius:20px 20px 0 0;padding:12px 16px 24px;transition:transform .3s;position:absolute;bottom:0;left:0;right:0;transform:translateY(100%)}.v3-insert-sheet.open{transform:translateY(0)}.v3-insert-title{margin:8px 0 4px;font-size:13px;font-weight:700}.v3-insert-poi{color:var(--v2-text);margin:0 0 10px;font-size:18px;font-weight:700}.v3-insert-facts{color:var(--v2-sub);margin:0 0 10px;padding-left:18px;font-size:12px;line-height:1.6}.v3-insert-warn{color:#b45309;font-weight:600}.v3-insert-between{color:var(--v2-text,#333);margin:0 0 8px;font-size:12px;font-weight:600}.v3-insert-hint{color:var(--v2-sub,#888);margin:0 0 12px;font-size:11px;line-height:1.4}.v3-insert-replace{color:var(--v2-sub);margin:0 0 12px;font-size:11px}.v3-insert-actions{gap:8px;display:flex}.v3-insert-actions .btn{flex:1}.v3-empty{flex-direction:column;flex:1;display:flex}.v3-phone .detail-panel,.v3-phone .share-invite-sheet,.v3-phone .v3-insert-sheet{z-index:300}.v3-phone .overlay{z-index:250}.v3-root .v2-dock,.v3-root .v2-status-header,.v3-root .v2-exec-panel{flex-shrink:0}.v4-root{--v4-bg:#fdf8f2;--v4-surface:#ffffffe6;--v4-text:#1c1c1e;--v4-sub:#8e8e93;--v4-sage:#4e9a62;--v4-sage-dim:#e6f5ec;--v4-amber:#f9d8b1;--v4-blue:#4a7ba7;--v4-border:#00000012;--v4-radius:20px;--v4-orange:#ff6b35;--v4-orange-dark:#e8541a;--v4-orange-dim:#fff1ea;min-height:100vh;color:var(--v4-text);background:#e8dfd0;justify-content:center;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,sans-serif;display:flex}.v4-root.planner-root .phone{display:none}.v4-phone{background:var(--v4-bg);border-radius:40px;flex-direction:column;width:393px;height:852px;max-height:852px;display:flex;position:relative;overflow:hidden;box-shadow:0 0 40px #00000014}.v4-universal-back{z-index:260;border:1px solid var(--v4-border);min-height:34px;color:var(--v4-sub);cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:none;background:#ffffffc7;border-radius:999px;align-items:center;gap:2px;padding:0 12px 0 8px;font-size:12px;font-weight:600;line-height:1;transition:background .15s,color .15s,border-color .15s;display:inline-flex;position:absolute;top:12px;left:20px}.v4-universal-back-icon{color:var(--v4-orange);margin-top:-1px;font-size:18px;font-weight:500;line-height:1}.v4-universal-back:hover{background:var(--v4-orange-dim);color:var(--v4-orange-dark);border-color:#ff6b3538}.v4-universal-back:hover .v4-universal-back-icon{color:var(--v4-orange-dark)}.v4-universal-back:active{transform:scale(.97)}.v4-phone--map-open{overflow:hidden}.v4-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;scrollbar-width:none;flex:1;min-height:0;overflow:hidden auto}.v4-scroll::-webkit-scrollbar{display:none}.v4-section{margin-bottom:16px;padding:0 20px}.v4-section-title{color:var(--v4-text);letter-spacing:-.02em;margin:0 0 10px;font-size:13px;font-weight:700}.v4-section-title--inline{margin:0}.v4-proposal-list-wrap{width:100%}.v4-proposal-list-header{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.v4-list-mode-btn{border:1px solid var(--v4-border);color:var(--v4-sub);cursor:pointer;background:#ffffffbf;border-radius:999px;padding:4px 10px;font-size:10px;font-weight:700;transition:background .15s,color .15s,border-color .15s}.v4-list-mode-btn--active{background:var(--v4-orange-dim);color:var(--v4-orange-dark);border-color:#ff6b354d}.v4-map-section{margin-bottom:20px}.v4-map-overlay{z-index:200;background:var(--v4-bg);border-radius:40px;flex-direction:column;display:flex;position:absolute;inset:0;overflow:hidden}.v4-map-overlay .v3-spatial-map{border:none;border-radius:0;flex:1;height:100%;min-height:0}.v4-map-overlay .v3-spatial-toolbar{background:#ffffffeb;padding-top:48px}.v4-map-overlay:before{content:"";pointer-events:none;z-index:199;background:linear-gradient(#0000 0% 14%,#0000 72%,#f5f5f073 100%);position:absolute;inset:0}.v4-intent-screen{background:radial-gradient(at 60% 0,#ff8c422e,#0000 40%),radial-gradient(at 20% 80%,#5fc4751a,#0000 35%),linear-gradient(#fdf8f2fc,#ebe4daf7);flex-direction:column;flex:1;min-height:0;display:flex;position:relative;overflow:hidden}.v4-intent-scroll-content{scrollbar-width:none;flex:1;min-height:0;padding:52px 20px 180px;overflow-y:auto}.v4-intent-scroll-content::-webkit-scrollbar{display:none}.v4-intent-hero{margin-bottom:18px}.v4-intent-hero h1{letter-spacing:-.01em;margin:0;font-size:27px;line-height:1.2}.v4-intent-hero p:last-child{max-width:315px;color:var(--v4-sub);margin:10px 0 0;font-size:13px;line-height:1.55}.v4-intent-card{border:1px solid var(--v4-border);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#ffffffd1;border-radius:20px;margin-bottom:12px;padding:12px 12px 10px;box-shadow:0 10px 28px #21211c0f}.v4-intent-mic-chip{color:#fff;cursor:pointer;-webkit-user-select:none;user-select:none;touch-action:manipulation;background:linear-gradient(135deg,#2d2520,#433830);border:0;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;gap:10px;width:100%;min-height:50px;padding:13px 18px;font-size:14px;font-weight:800;transition:transform .12s;display:flex;box-shadow:0 10px 24px #3c281438}.v4-intent-mic-chip:disabled{cursor:not-allowed;opacity:.6}.v4-intent-mic-chip--pressed{transform:scale(.98)}.v4-intent-mic-chip--listening{background:linear-gradient(145deg,#5f8d62,#87a382);animation:1.05s ease-in-out infinite v4MicPulse}.v4-intent-mic-chip--transcribing{background:linear-gradient(145deg,#356b8c,#4a7ba7)}.v4-intent-mic-chip--canceling{background:linear-gradient(145deg,#8f3e3e,#b85151)}.v4-intent-mic-chip-icon{background:#ffffff29;border-radius:50%;place-items:center;width:24px;height:24px;font-size:13px;display:grid}@keyframes v4MicPulse{0%,to{box-shadow:0 18px 36px #5f8d623d,0 0 #87a3824d}50%{box-shadow:0 18px 36px #5f8d623d,0 0 0 14px #87a38200}}.v4-intent-label,.v4-intent-card-head span{color:var(--v4-text);font-size:12px;font-weight:800;display:block}.v4-intent-card textarea{box-sizing:border-box;resize:none;width:100%;color:var(--v4-text);font:inherit;background:#f5f5f0db;border:1px solid #0000000f;border-radius:16px;outline:none;margin-top:10px;padding:12px;font-size:13px;line-height:1.55}.v4-intent-card textarea:focus{border-color:#ff6b3573;box-shadow:0 0 0 4px #ff6b351a}.v4-intent-card-head{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:8px;padding:0 2px;display:flex}.v4-intent-card-head small{color:var(--v4-sub);font-size:10px;font-weight:600}.v4-intent-budget{background:#f9d8b138;border:1px solid #c282362e;border-radius:16px;align-items:flex-start;gap:12px;margin-bottom:10px;padding:12px 14px;display:flex}.v4-intent-budget--active{background:#f9d8b161;border-color:#c2823659;box-shadow:0 4px 14px #c282361a}.v4-intent-budget--low.v4-intent-budget--active{background:#e8f0ebf2;border-color:#87a38259}.v4-intent-budget--high.v4-intent-budget--active{background:#ebf2faf2;border-color:#4a7ba74d}.v4-intent-budget-icon{color:#9a6a2b;background:#ffffffd9;border-radius:12px;flex-shrink:0;place-items:center;width:36px;height:36px;font-size:16px;font-weight:800;display:grid}.v4-intent-budget--active .v4-intent-budget-icon{background:#fff}.v4-intent-budget:not(.v4-intent-budget--active){padding:10px 12px}.v4-intent-budget:not(.v4-intent-budget--active) .v4-intent-budget-icon{width:32px;height:32px;font-size:14px}.v4-intent-budget:not(.v4-intent-budget--active) .v4-intent-budget-value{color:var(--v4-sub);font-size:15px}.v4-intent-budget-body{flex:1;min-width:0}.v4-intent-budget-label{color:#9a6a2b;letter-spacing:.02em;margin-bottom:2px;font-size:10px;font-weight:800;display:block}.v4-intent-budget-value{letter-spacing:-.02em;color:var(--v4-text);font-size:18px;font-weight:800;line-height:1.2;display:block}.v4-intent-budget-hint{color:var(--v4-sub);margin-top:4px;font-size:10px;line-height:1.35;display:block}.v4-intent-understanding{grid-template-columns:1fr 1fr;gap:8px;display:grid}.v4-intent-understanding div{background:#f5f5f0c7;border:1px solid #0000000a;border-radius:15px;min-height:52px;padding:10px}.v4-intent-understanding div:last-child:nth-child(odd){grid-column:1/-1}.v4-intent-understanding div.is-active{background:var(--v4-orange-dim);border-color:#ff6b3538}.v4-intent-understanding span{color:var(--v4-sub);margin-bottom:6px;font-size:10px;font-weight:800;display:block}.v4-intent-understanding strong{color:var(--v4-text);font-size:12px;line-height:1.35;display:block}.v4-intent-budget--editable{transition:border-color .15s,box-shadow .15s}.v4-intent-budget--open{border-color:#ff6b3559;box-shadow:0 6px 18px #ff6b351f}.v4-intent-understanding--editable label,.v4-intent-understanding--editable .v4-iu-cell{background:#f5f5f0c7;border:1px solid #0000000a;border-radius:15px;min-height:52px;padding:10px;transition:background .15s,border-color .15s,box-shadow .15s;display:block}.v4-intent-understanding--editable label{cursor:text}.v4-intent-understanding--editable .v4-iu-cell{cursor:pointer}.v4-intent-understanding--editable label.is-active,.v4-intent-understanding--editable .v4-iu-cell.is-active{background:var(--v4-orange-dim);border-color:#ff6b352e}.v4-intent-understanding--editable .v4-iu-cell--open{background:#ff6b351c;border-color:#ff6b3552;box-shadow:inset 0 0 0 1px #ff6b3514}.v4-intent-understanding--editable label:has(:focus){background:#ff6b351c;border-color:#ff6b3552;box-shadow:inset 0 0 0 1px #ff6b3514}.v4-intent-understanding--editable label>span:first-child,.v4-iu-cell-label{color:var(--v4-sub);margin-bottom:6px;font-size:10px;font-weight:800;display:block}.v4-iu-full{grid-column:1/-1}.v4-iu-value{box-sizing:border-box;width:100%;color:var(--v4-text);background:0 0;border:none;margin:0;padding:0;font-family:inherit;font-size:12px;font-weight:700;line-height:1.35;display:block}.v4-iu-value::placeholder{color:#968c7d8c;font-weight:500}.v4-iu-value:focus{color:var(--v4-orange-dark);outline:none}.v4-iu-value:disabled{cursor:not-allowed;opacity:.55}.v4-iu-row{align-items:baseline;gap:3px;display:flex}.v4-iu-num{text-align:left;flex:none;width:2rem}.v4-iu-unit{color:var(--v4-sub);flex-shrink:0;font-size:11px;font-weight:700}.v4-iu-picker{width:100%;position:relative}.v4-iu-picker-trigger{text-align:left;cursor:pointer;width:100%;color:inherit;background:0 0;border:none;justify-content:space-between;align-items:center;gap:6px;margin:0;padding:0;font-family:inherit;display:flex}.v4-iu-picker-trigger:disabled{cursor:not-allowed;opacity:.55}.v4-iu-picker-trigger:focus-visible{outline-offset:2px;border-radius:6px;outline:2px solid #ff6b3573}.v4-iu-picker-value{flex:1;min-width:0;font-weight:700;line-height:1.35}.v4-iu-picker--budget .v4-iu-picker-value{letter-spacing:-.02em;font-size:18px;font-weight:800;line-height:1.2}.v4-iu-picker--cell .v4-iu-picker-value{font-size:12px}.v4-iu-picker-chevron{background:#ffffffbf;border:1px solid #0000000f;border-radius:50%;flex-shrink:0;width:16px;height:16px;position:relative}.v4-iu-picker-chevron:after{content:"";border-top:4px solid #9a6a2b;border-left:3.5px solid #0000;border-right:3.5px solid #0000;width:0;height:0;transition:transform .15s;position:absolute;top:46%;left:50%;transform:translate(-50%,-50%)}.v4-iu-picker.is-open .v4-iu-picker-chevron:after{border-top-color:var(--v4-orange);transform:translate(-50%,-50%)rotate(180deg)}.v4-iu-picker-panel{border-top:1px dashed #ff6b3533;flex-wrap:wrap;gap:6px;margin-top:8px;padding-top:8px;animation:.16s ease-out v4-iu-panel-in;display:flex}.v4-iu-picker--budget .v4-iu-picker-panel{margin-top:10px;padding-top:10px}@keyframes v4-iu-panel-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.v4-iu-picker-chip{color:#5c5854;cursor:pointer;background:#ffffffeb;border:1px solid #00000014;border-radius:999px;margin:0;padding:5px 11px;font-family:inherit;font-size:11px;font-weight:600;line-height:1.3;transition:background .12s,color .12s,border-color .12s,box-shadow .12s}.v4-iu-picker--budget .v4-iu-picker-chip{padding:6px 12px;font-size:12px}.v4-iu-picker-chip:hover{background:var(--v4-orange-dim);color:var(--v4-orange-dark);border-color:#ff6b3547}.v4-iu-picker-chip.is-selected{background:linear-gradient(135deg, var(--v4-orange) 0%, var(--v4-orange-dark) 100%);color:#fff;border-color:#0000;box-shadow:0 3px 10px #ff6b3547}.v4-iu-picker-chip.is-selected:hover{color:#fff}.v4-iu-picker-chip:focus-visible{outline-offset:2px;outline:2px solid #ff6b3580}.v4-intent-vague-hint{color:#9a5a10;background:#d3781e14;border:1px solid #d3781e33;border-radius:12px;align-items:flex-start;gap:8px;margin-top:10px;padding:9px 12px;font-size:12px;line-height:1.5;display:flex}.v4-intent-vague-hint span:first-child{flex-shrink:0;font-size:14px}.v4-intent-trust-card{background:#4a7ba714;border:1px solid #4a7ba729;border-radius:18px;margin-bottom:12px;padding:12px}.v4-intent-trust-card strong{color:var(--v4-blue);margin-bottom:5px;font-size:12px;display:block}.v4-intent-trust-card p{color:var(--v4-sub);margin:0;font-size:11px;line-height:1.5}.v4-intent-examples{margin-bottom:14px}.v4-intent-examples p{color:var(--v4-sub);margin:2px 0 8px;font-size:11px;font-weight:800}.v4-intent-examples div{flex-direction:column;gap:8px;display:flex}.v4-intent-examples button{color:var(--v4-orange-dark);text-align:left;cursor:pointer;background:#ffffff9e;border:1px solid #ff6b3538;border-radius:14px;padding:10px 12px;font-size:11px;font-weight:700;line-height:1.45;transition:background .15s}.v4-intent-generate{color:#fff;cursor:pointer;letter-spacing:-.01em;background:linear-gradient(135deg,#ff8c42,#ff5722);border:0;border-radius:999px;width:100%;padding:15px 16px;font-size:15px;font-weight:800;transition:transform .12s,box-shadow .12s;box-shadow:0 10px 28px #ff57224d}.v4-intent-generate:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 14px 34px #ff572261}.v4-intent-generate:active:not(:disabled){transform:scale(.98)}.v4-intent-generate:disabled{cursor:not-allowed;box-shadow:none;background:#1c1c1e38}.v4-intent-dock{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px));background:#f5f5f0f5;border-top:1px solid #0000000f;flex-direction:column;gap:8px;transition:transform .22s;display:flex}.v4-intent-dock p{color:var(--v4-sub);margin:0;font-size:11px}.v4-intent-dock-main-row{align-items:center;gap:8px;display:flex;position:relative}.v4-intent-cancel-toast{color:#fff;letter-spacing:.01em;pointer-events:none;background:#1c1c1ee0;border-radius:12px;align-items:center;gap:8px;padding:7px 11px;font-size:11px;font-weight:700;animation:.2s v4CancelToastIn;display:flex;position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%);box-shadow:0 10px 24px #0003}.v4-intent-cancel-toast strong{font-variant-numeric:tabular-nums;background:#ffffff2e;border-radius:999px;padding:3px 6px;font-size:11px;line-height:1}.v4-intent-cancel-toast.is-canceling{background:#b85151f2}@keyframes v4CancelToastIn{0%{opacity:0;transform:translate(-50%)translateY(5px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.v4-intent-dock-main-row textarea{box-sizing:border-box;min-width:0;color:var(--v4-text);font:inherit;resize:none;background:#ffffffe6;border:1px solid #00000014;border-radius:999px;outline:none;flex:1;min-height:50px;max-height:50px;padding:13px 14px;font-size:13px;line-height:1.2;overflow:hidden}.v4-intent-dock-main-row textarea:focus{border-color:#ff6b3573;box-shadow:0 0 0 4px #ff6b351a}.v4-intent-screen--keyboard{--v4-keyboard-total:268px}.v4-intent-screen--keyboard .v4-intent-dock{transform:translateY(calc(-1 * var(--v4-keyboard-total)));z-index:251}.v4-intent-screen--keyboard .v4-intent-scroll-content{padding-bottom:calc(180px + var(--v4-keyboard-total,268px))}.v4-ios-keyboard{--v4-keyboard-total:268px;z-index:250;flex-direction:column;animation:.28s cubic-bezier(.22,1,.36,1) v4KeyboardIn;display:flex;position:absolute;bottom:0;left:0;right:0}@keyframes v4KeyboardIn{0%{opacity:.6;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.v4-ios-keyboard-toolbar{background:#d1d5db;border-top:1px solid #0000001f;justify-content:flex-end;padding:6px 10px;display:flex}.v4-ios-keyboard-done{color:#007aff;cursor:pointer;background:0 0;border:0;padding:4px 8px;font-size:16px;font-weight:600}.v4-ios-keyboard-body{background:#d1d5db;flex-direction:column;gap:7px;padding:8px 4px 6px;display:flex}.v4-ios-keyboard-row{justify-content:center;gap:6px;padding:0 2px;display:flex}.v4-ios-keyboard-row:nth-child(2){padding:0 14px}.v4-ios-key{color:#1c1c1e;-webkit-user-select:none;user-select:none;background:linear-gradient(#fff 0%,#f2f2f7 100%);border-radius:5px;flex:1;place-items:center;max-width:34px;min-height:42px;font-size:17px;font-weight:500;display:grid;box-shadow:0 1px #00000059,inset 0 1px #ffffffe6}.v4-ios-key--func{color:#1c1c1e;background:linear-gradient(#adb3bc 0%,#8e949e 100%);flex:1.2;max-width:44px;font-size:14px}.v4-ios-key--wide{flex:1.4;max-width:48px}.v4-ios-keyboard-row--bottom .v4-ios-key--space{max-width:none;color:var(--v4-sub);flex:4;font-size:14px}.v4-ios-keyboard-row--bottom .v4-ios-key--return{color:#fff;background:linear-gradient(#4a7ba7 0%,#3a6a96 100%);flex:1.6;max-width:72px;font-size:14px;font-weight:700}.v4-ios-keyboard-safe{background:#d1d5db;flex-shrink:0;height:28px}.v4-ios-keyboard-safe:after{content:"";background:#00000047;border-radius:3px;width:134px;height:5px;margin:10px auto 0;display:block}.v4-intent-dock-main-row .v4-intent-mic-chip{width:auto;min-width:120px;padding:0 14px}@media (height<=900px){.v4-phone{transform:scale(calc(min(1, (100vh - 32px) / 852)));transform-origin:top}}.v4-plan-header{background:linear-gradient(#fdf8f2fc,#fdf8f2e6);border-bottom:1px solid #0000000d;padding:56px 20px 20px}.v4-scene-understood{color:var(--v4-orange);letter-spacing:.02em;margin:0 0 8px;font-size:11px;font-weight:600;line-height:1.4}.v4-scene-meta{color:var(--v4-sub);margin:0 0 12px;font-size:13px;font-weight:500;line-height:1.5}.v4-plan-chip--auto{background:var(--v4-orange-dim);color:var(--v4-orange-dark);border-color:#ff6b3540}.v4-proposal-verified{background:#4a7ba714;border:1px solid #4a7ba726;border-radius:12px;margin-bottom:8px;padding:8px 10px}.v4-proposal-verified-label{color:var(--v4-blue);margin:0 0 4px;font-size:9px;font-weight:800}.v4-proposal-verified ul{color:var(--v4-text);margin:0;padding:0;font-size:10px;line-height:1.45;list-style:none}.v4-proposal-commerce{background:#f9d8b138;border:1px solid #c2823629;border-radius:12px;margin-bottom:8px;padding:9px 10px}.v4-proposal-commerce-label{color:#9a6a2b;margin:0 0 6px;font-size:9px;font-weight:800}.v4-proposal-commerce div{flex-wrap:wrap;gap:5px;display:flex}.v4-proposal-commerce span{color:var(--v4-text);background:#ffffffb8;border:1px solid #c282361a;border-radius:999px;padding:4px 7px;font-size:10px;font-weight:650}.v4-map-overlay .v4-plan-diff{z-index:220;margin:0;position:absolute;top:100px;left:12px;right:12px;box-shadow:0 8px 24px #0000001f}.v4-plan-eyebrow{color:var(--v4-sub);margin:0 0 10px;font-size:12px;font-weight:500;line-height:1.4}.v4-plan-title-row{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.v4-plan-title{letter-spacing:-.01em;flex:1;min-width:0;margin:0;font-size:21px;font-weight:700;line-height:1.3}.v4-plan-share{background:var(--v4-orange-dim);color:var(--v4-orange-dark);cursor:pointer;white-space:nowrap;border:1px solid #ff6b3538;border-radius:999px;flex-shrink:0;padding:8px 14px;font-size:12px;font-weight:600;transition:background .15s,border-color .15s,transform .12s}.v4-plan-share:hover{background:#ff6b352e;border-color:#ff6b3559}.v4-plan-share:active{transform:scale(.98)}.v4-plan-header-body{flex-direction:column;gap:0;display:flex}.v4-plan-stats{border:1px solid var(--v4-border);background:#ffffffb8;border-radius:14px;flex-wrap:wrap;gap:6px;margin:0 0 12px;padding:10px 12px;display:flex}.v4-plan-stat{color:var(--v4-text);font-variant-numeric:tabular-nums;white-space:nowrap;background:#f5f5f0e6;border-radius:999px;align-items:center;padding:4px 10px;font-size:12px;font-weight:500;line-height:1.3;display:inline-flex}.v4-plan-stat-dot{display:none}.v4-plan-chips{flex-wrap:wrap;gap:8px;margin:0 0 10px;display:flex}.v4-plan-chip{color:#5c5854;background:#ffffffe6;border:1px solid #00000014;border-radius:999px;padding:5px 10px;font-size:11px;font-weight:600;line-height:1.3}.v4-plan-summary{color:var(--v4-sub);margin:0;font-size:12px;line-height:1.55}.v4-plan-diff{background:#4a7ba71a;border:1px solid #4a7ba733;border-radius:14px;align-items:flex-start;gap:10px;margin:12px 12px 0;padding:10px 12px;animation:.35s v4DiffIn;display:flex}@keyframes v4DiffIn{0%{opacity:0;transform:translateY(-6px)}}.v4-plan-diff-icon{color:var(--v4-blue);margin-top:2px;font-size:14px;line-height:1}.v4-plan-diff-title{color:var(--v4-blue);margin:0;font-size:11px;font-weight:800}.v4-plan-diff-body{color:var(--v4-text);margin:2px 0 0;font-size:11px;line-height:1.4}.v4-proposal-list{flex-direction:column;gap:12px;width:100%;display:flex}.v4-proposal-card{border-radius:var(--v4-radius);background:var(--v4-surface);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:none;transition:box-shadow .2s,transform .15s;overflow:hidden;box-shadow:0 2px 12px #00000012,0 1px 3px #0000000d}.v4-proposal-card--focus{box-shadow:0 6px 20px #4e9a6224,0 2px 6px #0000000f}.v4-proposal-card--pending{border-left:3px solid var(--v4-orange);background:#fffcf9fa}.v4-proposal-card--locked{background:#e6f5ecbf;border-left:3px solid #4e9a62}.v4-proposal-card--locked .v4-proposal-visual{border-color:#87a38259}.v4-proposal-card--unavailable{background:#fff6f6fa;border-left:3px solid #c84848bf}.v4-proposal-card--unavailable .v4-proposal-visual{background:#fffafaf2;border-color:#c8484840}.v4-proposal-card--unavailable .v4-proposal-poi{color:#9a4040}.v4-proposal-summary{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:flex-start;gap:10px;padding:12px 12px 10px;display:flex}.v4-proposal-visual{border:1px solid var(--v4-border);background:#ffffffe6;border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex;overflow:hidden}.v4-proposal-visual img{object-fit:contain;width:40px;height:40px}.v4-proposal-summary-body{flex:1;min-width:0}.v4-proposal-summary-top{justify-content:space-between;align-items:center;gap:8px;margin-bottom:2px;display:flex}.v4-proposal-phase{color:var(--v4-orange);background:var(--v4-orange-dim);letter-spacing:.02em;white-space:nowrap;border-radius:999px;padding:3px 8px;font-size:10px;font-weight:700;display:inline-block}.v4-proposal-phase-time{color:var(--v4-sub);font-variant-numeric:tabular-nums;margin:0 0 6px;font-size:11px;font-weight:500;line-height:1.45}.v4-proposal-status-badge{white-space:nowrap;border-radius:999px;padding:1px 6px;font-size:9px;font-weight:700}.v4-proposal-status-badge--locked{background:var(--v4-sage-dim);color:#2e7a43}.v4-proposal-status-badge--pending{background:var(--v4-orange-dim);color:var(--v4-orange-dark);border:1px solid #ff6b3538}.v4-proposal-status-badge--warn{color:#b85151;background:#dc50501a}.v4-proposal-poi{letter-spacing:-.01em;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 6px;font-size:16px;font-weight:700;line-height:1.3;display:-webkit-box;overflow:hidden}.v4-proposal-commute{flex-wrap:wrap;gap:4px;margin:3px 0 2px;display:flex}.v4-proposal-commute-tag{color:#3d6b4a;background:#3d6b4a1a;border-radius:999px;align-items:center;gap:2px;padding:2px 7px;font-size:10px;font-weight:700;line-height:1.4;display:inline-flex}.v4-proposal-commute-tag--wait{color:#b36020;background:#d3781e1a}.v4-proposal-summary-hint{color:var(--v4-sub);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:11px;line-height:1.45;display:-webkit-box;overflow:hidden}.v4-proposal-expand-btn{width:26px;height:26px;color:var(--v4-sub);cursor:pointer;background:#ff6b3514;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;line-height:1;transition:transform .2s,background .2s;display:flex;transform:rotate(90deg)}.v4-proposal-expand-btn--open{color:var(--v4-orange);background:#ff6b3524;transform:rotate(-90deg)}.v4-proposal-detail{border-top:1px solid var(--v4-border);padding:4px 12px 10px;animation:.18s ease-out v4DetailSlide}@keyframes v4DetailSlide{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.v4-proposal-detail-block{border:1px solid var(--v4-border);background:#f5f5f0bf;border-radius:12px;margin-bottom:8px;padding:10px 12px}.v4-proposal-detail-block--commerce{background:#fffcf9e6}.v4-proposal-detail-label{color:var(--v4-sub);margin:0 0 6px;font-size:11px;font-weight:600;line-height:1.3}.v4-proposal-detail-body{color:var(--v4-text);margin:0;font-size:12px;font-weight:400;line-height:1.55}.v4-proposal-detail-list{color:var(--v4-text);margin:0;padding:0 0 0 14px;font-size:12px;line-height:1.55}.v4-proposal-detail-list li{margin-bottom:2px}.v4-proposal-detail-list li:last-child{margin-bottom:0}.v4-proposal-rationale{background:#4e9a6212;border-radius:10px;margin-bottom:8px;padding:7px 10px}.v4-proposal-rationale-label{color:#4e9a62;margin:0 0 4px;font-size:9px;font-weight:800}.v4-proposal-rationale ul{color:var(--v4-sub);margin:0;padding:0;font-size:10px;line-height:1.5;list-style:none}.v4-proposal-foot{border-top:1px solid var(--v4-border);justify-content:space-between;align-items:center;gap:8px;padding:10px 12px 12px;display:flex}.v4-proposal-actions{gap:6px;display:flex}.v4-proposal-action{border:1px solid var(--v4-border);color:var(--v4-text);cursor:pointer;background:#ffffffe6;border-radius:10px;padding:6px 10px;font-size:11px;font-weight:600;transition:background .15s}.v4-proposal-action:active{background:#87a3821a}.v4-proposal-confirm{color:#fff;cursor:pointer;white-space:nowrap;background:linear-gradient(135deg,#5fc475,#3d9e54);border:none;border-radius:999px;padding:7px 16px;font-size:11px;font-weight:800;transition:transform .12s,box-shadow .12s;box-shadow:0 4px 12px #3d9e5447}.v4-proposal-confirm:active{transform:scale(.96);box-shadow:0 2px 6px #3d9e5433}.v4-proposal-locked{color:#4e9a62;font-size:10px;font-weight:700}.v4-proposal-status{color:var(--v4-sub);font-size:10px;font-weight:600}.v4-feedback{border:1px solid var(--v4-border);background:#ffffffb8;border-radius:14px;margin:0 12px 12px;padding:10px 10px 6px}.v4-feedback-head{margin-bottom:6px}.v4-feedback-title{color:var(--v4-text);align-items:center;gap:6px;margin:0;font-size:12px;font-weight:700;display:flex}.v4-feedback-count{background:var(--v4-orange-dim);min-width:18px;height:18px;color:var(--v4-orange-dark);border-radius:999px;justify-content:center;align-items:center;padding:0 5px;font-size:10px;font-weight:800;display:inline-flex}.v4-feedback-list{margin:0;padding:0;list-style:none}.v4-feedback-item{border-top:1px solid #0000000d;align-items:center;gap:8px;padding:8px 0;display:flex}.v4-feedback-item:first-child{border-top:none;padding-top:4px}.v4-feedback-avatar{flex-shrink:0;font-size:20px;line-height:1}.v4-feedback-main{flex:1;min-width:0}.v4-feedback-msg{color:var(--v4-text);margin:0;font-size:12px;line-height:1.35}.v4-feedback-who{margin-right:6px;font-weight:700}.v4-feedback-stop{color:var(--v4-sub);margin-top:2px;font-size:10px;display:block}.v4-feedback-stop:before{content:"↳ ";opacity:.5}.v4-feedback-ops{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:2px;display:flex}.v4-feedback-cta{color:#fff;cursor:pointer;white-space:nowrap;background:linear-gradient(135deg,#5fc475,#3d9e54);border:none;border-radius:999px;padding:5px 12px;font-size:11px;font-weight:800;box-shadow:0 3px 8px #3d9e543d}.v4-feedback-skip{color:var(--v4-sub);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0;font-size:10px;font-weight:600;text-decoration:underline}.v4-exec-summary{border:1px solid var(--v4-border);background:#fff9;border-radius:12px;margin:0 12px 12px;padding:8px 10px}.v4-exec-line{color:var(--v4-sub);text-align:center;margin:0;font-size:10px;font-weight:600}.v4-exec-safe-note{color:var(--v4-blue);text-align:center;background:#4a7ba714;border-radius:999px;margin:5px 0 0;padding:6px 8px;font-size:10px;font-weight:700}.v4-exec-cta{color:#fff;cursor:pointer;letter-spacing:-.01em;background:linear-gradient(135deg,#ff8c42,#ff5722);border:none;border-radius:999px;width:100%;margin-top:8px;padding:12px 14px;font-size:13px;font-weight:800;transition:transform .12s,box-shadow .12s;box-shadow:0 8px 22px #ff572247}.v4-exec-cta:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 12px 28px #ff57225c}.v4-exec-cta:active:not(:disabled){transform:scale(.98)}.v4-exec-cta:disabled{opacity:.5;box-shadow:none}.v4-exec-cta--tracker{color:#fff;background:linear-gradient(135deg,#5fc475,#3d9e54);box-shadow:0 8px 22px #3d9e543d}.v4-phone .v4-sheet-overlay{z-index:420;border-radius:0 0 40px 40px;justify-content:center;align-items:flex-end;display:flex;position:absolute;inset:0;overflow:hidden}.v4-sheet-backdrop{cursor:pointer;background:#00000059;border:none;position:absolute;inset:0}.v4-sheet-handle{background:#0000001f;border-radius:2px;flex-shrink:0;width:36px;height:4px;margin:8px auto 4px}.v4-phone .v4-sheet{z-index:1;background:var(--v4-bg);box-sizing:border-box;border-radius:20px 20px 0 0;flex-direction:column;width:100%;max-width:100%;min-height:0;max-height:78%;animation:.32s ease-out v4SheetUp;display:flex;position:relative;overflow:hidden;box-shadow:0 -8px 32px #0000001f}@keyframes v4SheetUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.v4-preflight-head,.v4-tracker-head{border-bottom:1px solid var(--v4-border);padding:16px 16px 8px}.v4-preflight-head h2,.v4-tracker-head h2{color:var(--v4-text);margin:0;font-size:16px;font-weight:800}.v4-preflight-head p,.v4-tracker-head p{color:var(--v4-sub);margin:4px 0 0;font-size:11px}.v4-preflight-guard,.v4-tracker-guard{flex-wrap:wrap;flex-shrink:0;gap:6px;padding:10px 12px 4px;display:flex}.v4-preflight-guard span,.v4-tracker-guard span{background:var(--v4-orange-dim);color:var(--v4-orange-dark);border-radius:999px;padding:5px 8px;font-size:10px;font-weight:800}.v4-preflight-body,.v4-tracker-body{-webkit-overflow-scrolling:touch;flex:1;padding:8px 12px 12px;overflow-y:auto}.v4-preflight-group,.v4-tracker-group{margin-bottom:12px}.v4-preflight-group h3,.v4-tracker-group h3{color:var(--v4-sub);text-transform:uppercase;letter-spacing:.04em;margin:0 0 6px;font-size:10px;font-weight:700}.v4-preflight-group ul,.v4-tracker-group ul{margin:0;padding:0;list-style:none}.v4-preflight-item{border:1px solid var(--v4-border);cursor:pointer;background:#ffffffbf;border-radius:12px;align-items:flex-start;gap:8px;padding:10px;display:flex}.v4-preflight-group li{margin-bottom:6px}.v4-preflight-item--off .v4-preflight-item{opacity:.55}.v4-preflight-icon{flex-shrink:0;font-size:18px;line-height:1}.v4-preflight-main{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.v4-preflight-main strong{color:var(--v4-text);font-size:12px;font-weight:700}.v4-preflight-detail{color:var(--v4-sub);font-size:10px}.v4-preflight-rationale{color:#8f7a5a;font-size:9px;font-weight:600}.v4-preflight-price{color:var(--v4-text);flex-shrink:0;font-size:11px;font-weight:700}.v4-preflight-price--free{color:var(--v4-sage)}.v4-preflight-head,.v4-tracker-head,.v4-review-head,.v4-inventory-head{flex-shrink:0}.v4-preflight-foot,.v4-tracker-foot{padding:12px 16px max(16px, env(safe-area-inset-bottom,12px));border-top:1px solid var(--v4-border);background:#fffffff5;flex-shrink:0}.v4-preflight-summary{text-align:center;color:var(--v4-sub);margin:0 0 8px;font-size:11px;font-weight:600}.v4-preflight-cta,.v4-tracker-start,.v4-tracker-close:not(.v4-tracker-close--secondary){color:#fff;cursor:pointer;background:linear-gradient(135deg,#ff8c42,#ff5722);border:none;border-radius:999px;width:100%;padding:13px;font-size:13px;font-weight:800;transition:transform .12s;box-shadow:0 8px 22px #ff572242}.v4-tracker-start{margin-bottom:6px}.v4-preflight-cta:active,.v4-tracker-start:active,.v4-tracker-close:not(.v4-tracker-close--secondary):active{transform:scale(.98)}.v4-tracker-close--secondary{width:100%;color:var(--v4-sub);cursor:pointer;box-shadow:none;background:0 0;border:none;border-radius:999px;margin-top:0;padding:8px;font-size:12px;font-weight:600}.v4-preflight-secondary{width:100%;color:var(--v4-sub);cursor:pointer;background:0 0;border:none;margin-top:6px;padding:8px;font-size:11px;font-weight:600}.v4-tracker-item{border:1px solid var(--v4-border);background:#fffc;border-radius:12px;margin-bottom:6px;padding:10px}.v4-tracker-item--done{border-color:#4e9a6266}.v4-tracker-item--fallback_proposed{background:#fff8ebf2;border-color:#f9b46499}.v4-tracker-item-head{align-items:flex-start;gap:8px;display:flex}.v4-tracker-item-head>div{flex:1;min-width:0}.v4-tracker-item-head strong{font-size:11px;font-weight:700;display:block}.v4-tracker-item-head span{color:var(--v4-sub);font-size:9px}.v4-tracker-status{color:#4e9a62;flex-shrink:0;font-size:9px;font-weight:700}.v4-tracker-progress{background:#0000000f;border-radius:2px;height:4px;margin-top:8px;overflow:hidden}.v4-tracker-progress-fill{background:linear-gradient(90deg,#ff8c42,#ff5722);border-radius:2px;height:100%;transition:width .4s}.v4-tracker-order{color:var(--v4-sub);margin:6px 0 0;font-size:9px}.v4-tracker-fallback{background:#fff0dccc;border-radius:8px;margin-top:8px;padding:8px}.v4-tracker-fallback-warn{color:#b45309;margin:0 0 4px;font-size:10px;font-weight:700}.v4-tracker-fallback p{color:var(--v4-text);margin:0 0 6px;font-size:10px}.v4-tracker-fallback-actions{gap:6px;display:flex}.v4-tracker-fallback-actions button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#5fc475,#3d9e54);border:none;border-radius:8px;flex:1;padding:6px 8px;font-size:10px;font-weight:700}.v4-tracker-ghost{color:var(--v4-sub)!important;background:#fffc!important}.v4-tracker-done-hint{text-align:center;color:#4e9a62;margin:0 0 8px;font-size:10px;font-weight:600}.v4-tracker-cancel{background:#eef5ffe6;border:1px dashed #78a0c873;border-radius:10px;margin-top:8px;padding:8px 10px}.v4-tracker-cancel-top{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.v4-tracker-cancel-label{color:#3d5a7a;font-size:10px;font-weight:700}.v4-tracker-cancel-timer{font-variant-numeric:tabular-nums;color:#2563eb;letter-spacing:.04em;font-size:14px;font-weight:800}.v4-tracker-cancel-btn{color:#3d5a7a;cursor:pointer;background:#fff;border:1px solid #78a0c859;border-radius:8px;width:100%;padding:6px 10px;font-size:10px;font-weight:700}.v4-tracker-cancel-btn:active{transform:scale(.98)}.v4-addon-chips{background:#eef5ffb3;border:1px dashed #78a0c859;border-radius:10px;flex-wrap:wrap;align-items:center;gap:6px;margin:0 12px 8px;padding:6px 8px;display:flex}.v4-addon-chips-label{color:#5a7d9a;font-size:9px;font-weight:700}.v4-addon-chip{color:#3d5a7a;cursor:pointer;background:#fff;border:1px solid #78a0c84d;border-radius:8px;padding:3px 8px;font-size:10px;font-weight:600}.v4-dock{padding:0 12px 28px}.v4-root .voice-bar{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffffe0;border:1px solid #ffffffe6;border-radius:22px;margin:0;padding:10px 12px;position:relative;bottom:auto;box-shadow:0 4px 20px #0000000f}.v4-root .mic-btn{color:var(--v4-orange-dark);background:linear-gradient(135deg,#fff6f0,#ffe8d8);border:1px solid #ff6b3538}.v4-root .send-btn{color:#fff;background:linear-gradient(135deg,#ff8c42,#ff5722);border:none;box-shadow:0 4px 10px #ff572247}.v4-scroll--planning{pointer-events:none}.v4-plan-generating{margin-top:4px}.v4-plan-generating-inner{background:#ff6b3514;border:1px solid #ff6b3529;border-radius:14px;align-items:center;gap:8px;padding:10px 12px;display:flex}.v4-plan-generating-inner p{color:var(--v4-sub);margin:0;font-size:12px;font-weight:600}.v4-plan-generating-dot{background:var(--v4-orange);border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite v4-plan-dot}.v4-plan-generating-dot:nth-child(2){animation-delay:.15s}.v4-plan-generating-dot:nth-child(3){animation-delay:.3s}@keyframes v4-plan-dot{0%,80%,to{opacity:.35;transform:scale(.85)}40%{opacity:1;transform:scale(1)}}.v4-plan-skeleton-list{flex-direction:column;gap:10px;margin-top:12px;display:flex}.v4-plan-skeleton-card{background:linear-gradient(90deg,#f5f5f0e6 0%,#fffffff2 50%,#f5f5f0e6 100%) 0 0/200% 100%;border:1px solid #0000000a;border-radius:18px;height:118px;animation:1.4s ease-in-out infinite v4-plan-skeleton-shimmer}@keyframes v4-plan-skeleton-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.v4-loading{flex:1}.v4-phone .detail-panel,.v4-phone .share-invite-sheet,.v4-phone .v3-insert-sheet{z-index:400}.v4-phone .overlay{z-index:350;position:absolute;inset:0}.v4-phone .detail-panel{max-height:72%;padding:12px 16px max(20px, env(safe-area-inset-bottom,16px));box-sizing:border-box}.v4-phone .share-invite-sheet{box-sizing:border-box;max-height:78%}.v4-phone .dp2{background:var(--v4-bg);max-height:72vh;padding:16px 18px 28px}.dp2-header{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:10px;display:flex}.dp2-header-main{flex:1;min-width:0}.dp2-name{letter-spacing:-.02em;color:var(--v4-text);margin-bottom:4px;font-size:18px;font-weight:700;display:block}.dp2-meta{color:var(--v4-sub);flex-wrap:wrap;gap:8px;font-size:11px;font-weight:600;display:flex}.dp2-rating{color:#856404;background:#ffdc7847;border-radius:999px;padding:2px 7px;font-weight:700}.dp2-transit{color:var(--v4-sub);background:#0000000a;border-radius:10px;align-items:center;gap:6px;margin-bottom:10px;padding:6px 10px;font-size:11px;font-weight:600;display:flex}.dp2-transit-icon{font-size:13px}.dp2-voice{background:var(--v4-orange-dim);border-left:2.5px solid var(--v4-orange);border-radius:14px;margin-bottom:12px;padding:10px 12px}.dp2-voice-label{color:var(--v4-orange-dark);letter-spacing:.04em;margin-bottom:4px;font-size:9px;font-weight:800;display:block}.dp2-voice-text{color:var(--v4-text);margin:0;font-size:13px;font-weight:500;line-height:1.55}.dp2-alert{color:#b85151;background:#dc505014;border:1px solid #dc505033;border-radius:10px;margin-bottom:10px;padding:8px 12px;font-size:12px;font-weight:600}.dp2-alert--warn{color:#b45309;background:#f59e0b1a;border-color:#f59e0b47}.dp2-edit{margin-bottom:14px}.dp2-edit-label{color:var(--v4-sub);letter-spacing:.02em;margin-bottom:6px;font-size:10px;font-weight:700;display:block}.dp2-edit-row{gap:8px;display:flex}.dp2-edit-input{border:1.5px solid var(--v4-border);color:var(--v4-text);background:#ffffffe6;border-radius:14px;outline:none;flex:1;padding:11px 14px;font-size:14px;transition:border-color .15s,box-shadow .15s}.dp2-edit-input:focus{border-color:#ff6b358c;box-shadow:0 0 0 3px #ff6b351a}.dp2-edit-send{color:#fff;cursor:pointer;background:linear-gradient(135deg,#ff8c42,#ff5722);border:none;border-radius:14px;flex-shrink:0;width:44px;height:44px;font-size:18px;font-weight:700;transition:opacity .15s,transform .12s;box-shadow:0 4px 12px #ff572247}.dp2-edit-send:active:not(:disabled){transform:scale(.95)}.dp2-edit-send:disabled{opacity:.35;cursor:default}.dp2-actions{flex-wrap:wrap;gap:7px;margin-bottom:14px;display:flex}.dp2-btn{cursor:pointer;border:1px solid var(--v4-border);min-width:0;color:var(--v4-text);text-align:center;background:#ffffffd9;border-radius:12px;flex:1;padding:9px 10px;font-size:13px;font-weight:700;transition:background .15s}.dp2-btn--del{color:#b85151;border-color:#b8515133}.dp2-btn--confirm{color:#fff;background:linear-gradient(135deg,#5fc475,#3d9e54);border-color:#0000;flex:2;box-shadow:0 4px 12px #3d9e543d}.dp2-btn--squish{transform:scale(.94)}.dp2-btn--book{background:var(--v4-blue-dim,#4a7ba71f);color:#2d5a8e;border-color:#4a7ba740;flex:2}.dp2-consensus{border-top:1px solid var(--v4-border);padding-top:12px}.dp2-consensus-label{color:var(--v4-sub);margin-bottom:8px;font-size:10px;font-weight:700;display:block}.dp2-consensus-btns{gap:8px;display:flex}.v4-map-hero,.v4-map-hero .v4-section-title{margin-bottom:8px}.v4-root .v3-spatial-map--preview{border-radius:var(--v4-radius);border:1px solid var(--v4-border);flex:none;width:100%;height:auto;position:relative;overflow:hidden;box-shadow:0 4px 20px #0000000f}.v4-root .v3-spatial-map--preview .v3-map-hint{background:#ffffffe6;flex-shrink:0;margin:0;padding:8px;font-size:10px}.v4-root .v3-spatial-map--preview .v3-spatial-toolbar{z-index:2;background:#ffffffe6}.v4-root .v3-spatial-map--preview .v3-spatial-scroll{flex-shrink:0;height:300px;position:relative;overflow:hidden}.v4-root .v3-spatial-map--preview .v3-spatial-map-inner{width:100%;position:relative}.v4-root .v3-spatial-map--preview .v3-spatial-bg{object-fit:cover;object-position:center 6%;filter:saturate(.9)contrast(1.02);width:100%;height:100%;position:absolute;inset:0}.v4-root .v3-spatial-map--preview .map-nodes-layer{position:absolute;inset:0}.v4-root .v3-spatial-map--preview .v3-map-transit-pin--minimal{transform:translate(-50%,-56%)}.v4-root .v3-spatial-map--preview .v3-map-transit-pin--minimal .v3-map-transit-pin-icon{width:24px;height:24px}.v4-root .v3-spatial-map--preview .v3-map-transit-pin--minimal .v3-map-transit-pin-caption{font-size:8px}.v4-root .v3-spatial-map--preview .v3-map-transit-path{stroke-width:2.25px;stroke-dasharray:5 4}.v4-root .v3-map-node-anchor--preview .node{transform-origin:bottom;width:84px;margin-left:-42px;transform:scale(.96)}.v4-root .v3-map-node-anchor--preview .signboard{width:64px;height:auto}.v4-root .v3-map-node-anchor--preview .sign-wood{border-radius:13px;width:60px;height:60px;padding:5px}.v4-root .v3-map-node-anchor--preview .sign-stick{display:none}.v4-root .v3-map-node-anchor--preview .node-image{width:44px;height:44px;transform:none}.v4-root .v3-map-node-anchor--preview .node-time--above{text-overflow:ellipsis;white-space:nowrap;max-width:80px;margin-bottom:3px;padding:3px 6px;font-size:9px;overflow:hidden}.v4-root .v3-map-node-anchor--preview.v3-map-node-anchor--endpoint{z-index:12}.v4-root .v3-map-node-anchor--preview .node-name{max-width:76px;margin-top:4px;font-size:10px}.v4-root .v3-map-node-anchor--preview .node-lock-stamp{padding:2px 4px;font-size:7px;top:-2px;right:-4px}.v4-root .v3-map-node-anchor--preview .node-map-chip{display:none}.v4-root .v3-spatial-map--preview .v3-interest-pin{width:20px;min-width:20px;height:20px}.v4-root .v3-spatial-map--preview .v3-interest-pin-dot{font-size:11px}.v4-root .v3-spatial-map--preview .v3-interest-pin-name{display:none}.v4-root .v3-spatial-preview-tap{cursor:pointer;z-index:5;background:0 0;border:none;height:300px;position:absolute;top:44px;left:0;right:0}.v4-root .v3-spatial-map--fullscreen{border-radius:0;flex-direction:column;height:100%;display:flex}.v4-root .v3-spatial-map--fullscreen .v3-spatial-scroll{-webkit-overflow-scrolling:touch;flex:1;min-height:0;overflow:hidden auto}.v4-root .v3-spatial-map--fullscreen .v3-spatial-map-inner{width:100%;margin-left:0;overflow:visible;transform:none}.v4-root .v3-spatial-map--fullscreen .v3-spatial-bg{object-fit:cover;object-position:center top;filter:saturate(.92)contrast(1.03)brightness(1.02);transform:none}.v4-map-overlay .v3-spatial-scroll{scroll-padding-top:12px}.v4-root .v3-spatial-map--fullscreen .v3-spatial-map-inner:after{content:"";pointer-events:none;background:radial-gradient(80% 60% at 50% 45%,#0000 40%,#0000000f 100%);position:absolute;inset:0}.v4-root .v3-spatial-map--fullscreen .map-nodes-layer{overflow:visible}.v4-root .v3-spatial-map--fullscreen .v3-spatial-path--guide{stroke:#87a38229;stroke-width:18px}.v4-root .v3-spatial-map--fullscreen .v3-spatial-path{stroke:#87a3827a;stroke-width:3.25px;stroke-dasharray:none}.v4-root .v3-spatial-map--fullscreen .v3-spatial-path--active{stroke:#4a7ba7e0;stroke-width:4.75px;filter:drop-shadow(0 1px 6px #4a7ba759)}.v4-root .v3-spatial-map--fullscreen .v3-map-node-anchor .node{width:92px;margin-left:-46px}.v4-root .v3-spatial-map--fullscreen .signboard{flex-direction:column;align-items:center;width:72px;height:auto;display:flex}.v4-root .v3-spatial-map--fullscreen .sign-wood{background:#fffffff0;border:1px solid #ffffffd9;border-radius:15px;width:68px;height:68px;padding:6px;overflow:visible;box-shadow:0 6px 16px #0000001a,inset 0 1px #ffffffe6}.v4-root .v3-spatial-map--fullscreen .node--pending .sign-wood{background:#ffffffd1;border:1px dashed #c2823673}.v4-root .v3-spatial-map--fullscreen .node--pending .node-time--pending{color:#9a6a2b;background:#f9d8b173}.v4-root .v3-spatial-map--fullscreen .node--confirmed .sign-wood{background:#e8f0ebf2;border-color:#3d6b4a8c}.v4-root .v3-spatial-map--fullscreen .node--error .sign-wood{background:#fff2f2f5;border-color:#c84848a6;box-shadow:0 4px 14px #c848481f}.v4-root .v3-spatial-map--fullscreen .node--error .node-time--above{color:#b85151;background:#ffdcdce6}.v4-root .v3-spatial-map--preview .node--pending .sign-wood{border:1px dashed #c2823666}.v4-root .v3-spatial-map--preview .node--confirmed .sign-wood{background:#e8f0ebeb;border-color:#3d6b4a80}.v4-root .v3-spatial-map--preview .node--error .sign-wood{background:#fff2f2f2;border-color:#c8484899}.v4-root .v3-spatial-map--fullscreen .sign-stick{display:none}.v4-root .v3-spatial-map--fullscreen .sign-wood--image{justify-content:center;align-items:center;padding:0;display:flex}.v4-root .v3-spatial-map--fullscreen .node-image{filter:drop-shadow(0 1px 3px #00000014);width:50px;height:50px;transform:none}.v4-root .v3-spatial-map--fullscreen .node-time--above{color:#fff;white-space:nowrap;text-overflow:ellipsis;z-index:8;background:#1c1c1ee0;border-radius:999px;width:max-content;max-width:96px;margin:0 auto 6px;padding:4px 8px;font-size:10px;font-weight:700;display:block;position:relative;top:auto;left:auto;overflow:hidden;transform:none;box-shadow:0 2px 8px #0000001f}.v4-root .v3-spatial-map--fullscreen .node-time--pending{background:#9a6a2be6;max-width:none;font-size:9px}.v4-root .v3-spatial-map--fullscreen .node-name{max-width:84px;color:var(--v4-text);text-shadow:0 1px #ffffffe6;margin-top:5px;font-size:11px;font-weight:700;line-height:1.2}.v4-root .v3-spatial-map--fullscreen .node-lock-stamp{border-radius:4px;padding:2px 5px;font-size:7px;top:-4px;right:-8px;transform:rotate(8deg)}.v4-root .v3-spatial-map--fullscreen .node-map-chip{text-overflow:ellipsis;white-space:nowrap;background:#ffffffe6;border:1px solid #0000000f;border-radius:999px;max-width:76px;margin-top:3px;padding:2px 6px;font-size:8px;font-weight:700;line-height:1.3;overflow:hidden}.v4-root .v3-spatial-map--fullscreen .node-map-chip--green{color:#4e9a62}.v4-root .v3-spatial-map--fullscreen .node-map-chip--yellow{color:var(--v4-orange-dark)}.v4-root .v3-spatial-map--fullscreen .node-map-chip--red{color:#b85151}.v4-root .v3-spatial-map--fullscreen .v3-map-node-anchor--focus .node{filter:drop-shadow(0 4px 14px #4a7ba738);transform:translateY(-2px)}.v4-root .v3-spatial-map--fullscreen .v3-map-node-anchor--focus .sign-wood{box-shadow:0 0 0 3px #4a7ba747,0 8px 20px #0000001f}.v4-root .v3-spatial-map--fullscreen .v3-map-node-anchor--focus .node-image{transform:none}.v4-root .v3-spatial-map--fullscreen .v3-interest-pin{width:24px;min-width:24px;height:24px}.v4-root .v3-spatial-map--fullscreen .v3-interest-pin-name{max-width:64px;font-size:8px}.v4-root .v3-spatial-map--fullscreen .v3-map-node-anchor--endpoint{z-index:18}.v4-root .v3-spatial-map--fullscreen .v3-map-node-anchor--endpoint .sign-wood{box-shadow:0 0 0 2px #87a38273,0 8px 20px #00000024}.v4-root .v3-spatial-map--fullscreen .v3-map-node-anchor--endpoint .node-time--above{background:#3d6b4aeb;font-weight:800}.v4-root .v3-spatial-map--fullscreen .v3-map-node-anchor--endpoint .node-name{font-weight:800}.v4-root .v3-spatial-map--preview .v3-spatial-scroll{padding-top:4px}.v4-root .v3-spatial-map--fullscreen .v3-phase-strip{gap:5px;padding:6px 10px 4px}.v4-root .v3-spatial-map--fullscreen .v3-phase-pill{max-width:108px;padding:5px 9px}.v4-root .v3-spatial-map--fullscreen .v3-phase-pill-title{font-size:9px}.v4-root .v3-spatial-map--fullscreen .v3-map-hint{background:#ffffffbf;padding:5px 8px 4px;font-size:9px}.v3-map-edit-dock{border-top:1px solid var(--v4-border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff5;flex-shrink:0;padding:10px 12px;box-shadow:0 -8px 24px #0000000f}.v3-map-edit-main{flex-direction:column;gap:2px;min-width:0;display:flex}.v3-map-edit-eyebrow{color:var(--v4-orange);font-size:10px;font-weight:800}.v3-map-edit-main strong{color:var(--v4-text);white-space:nowrap;text-overflow:ellipsis;font-size:15px;overflow:hidden}.v3-map-edit-main span:last-child{color:var(--v4-sub);white-space:nowrap;text-overflow:ellipsis;font-size:10px;line-height:1.35;overflow:hidden}.v3-map-edit-actions{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:9px;display:grid}.v3-map-edit-actions button{border:1px solid var(--v4-border);color:var(--v4-text);cursor:pointer;background:#ffffffdb;border-radius:12px;padding:9px 4px;font-size:11px;font-weight:800}.v3-map-edit-actions .v3-map-edit-primary{color:#fff;background:linear-gradient(135deg,#ff8c42,#ff5722);border-color:#0000;box-shadow:0 4px 10px #ff572242}.v4-alerts-section{margin-bottom:10px}.v4-exception-bar{border-radius:var(--v4-radius);border:1px solid var(--v4-border);background:#ffffffeb;padding:10px 12px}.v4-exception-bar--delivery{background:#fff8ebf2;border-color:#f9b46480}.v4-exception-bar--weather{background:#ebf2fae6;border-color:#4a7ba759}.v4-exception-bar-kind{color:var(--v4-sub);margin-right:6px;font-size:9px;font-weight:800}.v4-exception-bar-main strong{margin:2px 0;font-size:13px;display:block}.v4-exception-bar-main p{color:var(--v4-sub);margin:0;font-size:11px}.v4-exception-bar-impacts{flex-wrap:wrap;gap:4px;margin-top:6px;display:flex}.v4-exception-bar-impacts span{background:#0000000a;border-radius:999px;padding:2px 6px;font-size:9px}.v4-exception-bar-actions{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.v4-exception-bar-btn{border:1px solid var(--v4-border);cursor:pointer;background:#fff;border-radius:10px;padding:6px 10px;font-size:10px;font-weight:700}.v4-exception-bar-btn--primary{background:var(--v4-orange-dim);color:var(--v4-orange-dark);border-color:#ff6b354d}.v4-share-hint{color:var(--v4-sub);border:1px solid var(--v4-border);text-align:center;background:#ffffffb8;border-radius:12px;margin:0 20px 12px;padding:10px 12px;font-size:11px;line-height:1.45}.v4-share-pending{background:linear-gradient(135deg,#ffd1662e,#ff9f431f);border:1px solid #ff9f4340;border-radius:14px;align-items:center;gap:12px;margin:0 16px 12px;padding:12px 14px;display:flex}.v4-share-pending-avatars{gap:-4px;display:flex}.v4-share-pending-avatars span{margin-left:-4px;font-size:20px}.v4-share-pending-copy{flex:1;min-width:0}.v4-share-pending-copy strong{color:#1a1a1a;font-size:13px;display:block}.v4-share-pending-copy p{color:#666;margin:2px 0 0;font-size:11px}.v4-share-pending-spinner{border:2px solid #ff9f4340;border-top-color:#ff9f43;border-radius:50%;flex-shrink:0;width:18px;height:18px;animation:.8s linear infinite v4-spin}@keyframes v4-spin{to{transform:rotate(360deg)}}.v4-exception-bar--schedule{border-left-color:#f59e0b}.share-invite-waiting{color:var(--v4-orange-dark);background:var(--v4-orange-dim);text-align:center;border-radius:10px;margin:0 0 10px;padding:8px 10px;font-size:11px}.v4-proposal-status-badge--btn{cursor:pointer;border:none}.v4-transit-segment{margin:2px 0 6px 8px;padding:4px 0 4px 28px;position:relative}.v4-transit-line{background:#ff6b3538;width:2px;position:absolute;top:0;bottom:0;left:11px}.v4-transit-body{border:1px dashed var(--v4-border);background:#ffffffa6;border-radius:10px;align-items:center;gap:8px;padding:6px 8px;display:flex}.v4-transit-icon{object-fit:contain;width:22px;height:22px}.v4-transit-route{white-space:nowrap;text-overflow:ellipsis;font-size:10px;font-weight:700;display:block;overflow:hidden}.v4-transit-meta{color:var(--v4-sub);font-size:9px}.v4-transit-ride-btn{color:#2d5a8e;cursor:pointer;background:#4a7ba726;border:none;border-radius:8px;flex-shrink:0;padding:5px 8px;font-size:9px;font-weight:700}.v4-review-head{border-bottom:1px solid var(--v4-border);padding:4px 16px 10px}.v4-review-head h2{margin:0 0 6px;font-size:16px;font-weight:800}.v4-review-head p{color:var(--v4-sub);margin:0;font-size:11px;line-height:1.4}.v4-review-body{-webkit-overflow-scrolling:touch;flex:1;min-height:0;padding:8px 16px;overflow-y:auto}.v4-review-stops{margin:0;padding:0;list-style:none}.v4-review-stop{border-bottom:1px solid var(--v4-border);padding:8px 0}.v4-review-transit{color:var(--v4-sub);margin-bottom:4px;font-size:10px}.v4-review-stop-main{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.v4-review-stop-time{color:var(--v4-sub);font-size:10px}.v4-review-stop-status{border-radius:999px;padding:2px 6px;font-size:9px;font-weight:700}.v4-review-stop-status--locked{background:var(--v4-sage-dim);color:#3d6b4a}.v4-review-stop-status--error{color:#b85151;background:#dc50501f}.v4-review-foot{padding:12px 16px max(16px, env(safe-area-inset-bottom,12px));border-top:1px solid var(--v4-border);background:#fffffff5;flex-shrink:0}.v4-review-foot p{color:var(--v4-sub);text-align:center;margin:0 0 10px;font-size:11px}.v4-review-primary{box-sizing:border-box;color:#fff;cursor:pointer;background:linear-gradient(135deg,#ff8c42,#ff5722);border:none;border-radius:999px;width:100%;max-width:100%;margin-bottom:8px;padding:13px;font-size:14px;font-weight:800;transition:transform .12s;box-shadow:0 8px 22px #ff572247}.v4-review-primary:active{transform:scale(.98)}.v4-review-secondary{box-sizing:border-box;border:1px solid var(--v4-border);cursor:pointer;background:0 0;border-radius:12px;width:100%;max-width:100%;padding:10px;font-size:12px}.v4-inventory-sheet{max-height:72%}.v4-inventory-head{padding:4px 16px 12px}.v4-inventory-head .v4-inventory-eyebrow{color:var(--v4-orange-dark);font-size:10px;font-weight:800}.v4-inventory-head h2{word-break:break-word;margin:6px 0 4px;font-size:15px;line-height:1.3}.v4-inventory-impacts{color:var(--v4-sub);margin:0 0 14px;padding-left:18px;font-size:12px;line-height:1.5}.v4-inventory-body{flex:1;min-height:0;padding:0 16px 8px;overflow-y:auto}.v4-inventory-actions{padding:8px 16px max(16px, env(safe-area-inset-bottom,12px));border-top:1px solid var(--v4-border);background:#fffffff5;flex-direction:column;flex-shrink:0;gap:8px;display:flex}.v4-inventory-btn{box-sizing:border-box;border:1px solid var(--v4-border);cursor:pointer;background:#fff;border-radius:12px;width:100%;padding:11px;font-size:13px;font-weight:700}.v4-inventory-btn--primary{color:#fff;background:linear-gradient(135deg,#ff8c42,#ff5722);border-color:#0000}.v4-time-adjust-head .v4-time-adjust-eyebrow{color:var(--v4-sub)}.v4-time-adjust-time-input{background:var(--v4-bg);color:var(--v4-text);font-variant-numeric:tabular-nums}button.v4-time-adjust-nudge:hover{background:var(--accent-info-bg,#eef1fb)}button.v4-time-adjust-preset{background:var(--surface-subtle,#f7f5f2);color:var(--v4-sub)}.v4-transit-icon{object-fit:contain;opacity:.6;width:20px;height:20px}.v4-transit-copy{flex:1;min-width:0}.v4-preflight-cta,.v4-tracker-close{box-sizing:border-box;max-width:100%}.v4-time-adjust-sheet{max-height:78%}.v4-time-adjust-head{padding:4px 16px 8px}.v4-time-adjust-head .v4-time-adjust-eyebrow{color:var(--v4-orange-dark);font-size:10px;font-weight:800}.v4-time-adjust-head h2{margin:6px 0 4px;font-size:16px;line-height:1.3}.v4-time-adjust-current,.v4-time-adjust-detail{color:var(--v4-sub);margin:0;font-size:12px;line-height:1.45}.v4-time-adjust-detail{margin-top:4px}.v4-time-adjust-body{flex:1;padding:0 16px 12px;overflow-y:auto}.v4-time-adjust-block{margin-bottom:18px}.v4-time-adjust-label{color:var(--v4-ink);margin-bottom:8px;font-size:12px;font-weight:700;display:block}.v4-time-adjust-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.v4-time-adjust-time-input{box-sizing:border-box;border:1px solid var(--v4-border);border-radius:10px;flex:1;min-width:120px;padding:10px 12px;font-size:15px}button.v4-time-adjust-nudge{border:1px solid var(--v4-border);cursor:pointer;background:#fff;border-radius:10px;flex:none;padding:10px 12px;font-size:12px;font-weight:700}.v4-time-adjust-hint{color:var(--v4-sub);margin:8px 0 0;font-size:11px;line-height:1.45}.v4-time-adjust-duration-row{justify-content:center;align-items:center;gap:16px;margin-bottom:10px;display:flex}button.v4-time-adjust-step{border:1px solid var(--v4-border);cursor:pointer;background:#fff;border-radius:12px;width:44px;height:44px;font-size:18px;font-weight:700}.v4-time-adjust-duration-value{text-align:center;min-width:88px;color:var(--v4-text);font-size:18px;font-weight:800}.v4-time-adjust-presets{flex-wrap:wrap;gap:8px;display:flex}button.v4-time-adjust-preset{border:1px solid var(--v4-border);cursor:pointer;background:#fff;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:700}button.v4-time-adjust-preset--active{background:var(--v4-orange-dim);color:var(--v4-orange-dark);border-color:#ff6b354d}.v4-time-adjust-preview{background:var(--surface-subtle,#f7f5f2);color:var(--v4-sub);border-radius:10px;margin:0;padding:10px 12px;font-size:13px}.v4-time-adjust-actions{padding:8px 16px max(16px, env(safe-area-inset-bottom,12px));border-top:1px solid var(--v4-border);background:#fffffff5;gap:10px;display:flex}.v4-time-adjust-btn{border:1px solid var(--v4-border);cursor:pointer;background:#fff;border-radius:12px;flex:1;padding:11px;font-size:13px;font-weight:700}.v4-time-adjust-btn--ghost{color:var(--v4-sub)}.v4-time-adjust-btn--primary{color:#fff;background:linear-gradient(135deg,#5fc475,#3d9e54);border-color:#0000;box-shadow:0 4px 10px #3d9e5438}.v4-site-link{z-index:260;border:1px solid var(--v4-border);min-height:34px;color:var(--v4-sub);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffc7;border-radius:999px;align-items:center;padding:0 14px;font-size:12px;font-weight:600;text-decoration:none;transition:background .15s,color .15s,border-color .15s;display:inline-flex;position:absolute;top:12px;right:20px}.v4-site-link:hover{background:var(--v4-orange-dim);color:var(--v4-orange-dark);border-color:#ff6b3538}.landing-root{--landing-bg:#fdf8f2;--landing-bg-alt:#f5ede3;--landing-surface:#fff;--landing-text:#1c1c1e;--landing-sub:#6b6b70;--landing-sage:#4e9a62;--landing-sage-dim:#e6f5ec;--landing-orange:#ff6b35;--landing-orange-dark:#e8541a;--landing-orange-dim:#fff1ea;--landing-amber:#f9d8b1;--landing-border:#00000014;--landing-radius:20px;--landing-max:1120px;background:var(--landing-bg);min-height:100vh;color:var(--landing-text);-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif}.landing-nav{z-index:50;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--landing-border);background:#fdf8f2d1;position:sticky;top:0}.landing-nav-inner{max-width:var(--landing-max);justify-content:space-between;align-items:center;gap:16px;margin:0 auto;padding:14px 24px;display:flex}.landing-logo{letter-spacing:-.02em;color:inherit;align-items:center;gap:10px;font-size:15px;font-weight:700;text-decoration:none;display:flex}.landing-logo-mark{background:linear-gradient(135deg, var(--landing-orange) 0%, #ffb347 100%);color:#fff;border-radius:12px;place-items:center;width:34px;height:34px;font-size:16px;display:grid;box-shadow:0 6px 18px #ff6b3547}.landing-nav-links{align-items:center;gap:28px;display:none}@media (width>=768px){.landing-nav-links{display:flex}}.landing-nav-links a{color:var(--landing-sub);font-size:14px;font-weight:500;text-decoration:none;transition:color .15s}.landing-nav-links a:hover{color:var(--landing-text)}.landing-btn{cursor:pointer;border:none;border-radius:999px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:0 22px;font-size:14px;font-weight:600;text-decoration:none;transition:transform .15s,box-shadow .15s,background .15s;display:inline-flex}.landing-btn:active{transform:scale(.98)}.landing-btn-primary{background:var(--landing-orange);color:#fff;box-shadow:0 8px 24px #ff6b3552}.landing-btn-primary:hover{background:var(--landing-orange-dark)}.landing-btn-secondary{background:var(--landing-surface);color:var(--landing-text);border:1px solid var(--landing-border)}.landing-btn-secondary:hover{background:var(--landing-orange-dim);border-color:#ff6b3533}.landing-section{max-width:var(--landing-max);margin:0 auto;padding:72px 24px}.landing-hero{align-items:center;gap:48px;padding-top:48px;padding-bottom:88px;display:grid}@media (width>=960px){.landing-hero{grid-template-columns:1fr 380px;gap:64px;padding-top:72px}}.landing-badge{background:var(--landing-sage-dim);color:var(--landing-sage);border-radius:999px;align-items:center;gap:8px;margin-bottom:20px;padding:6px 14px;font-size:12px;font-weight:600;display:inline-flex}.landing-badge-dot{background:var(--landing-sage);border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite landing-pulse}@keyframes landing-pulse{0%,to{opacity:1}50%{opacity:.4}}.landing-hero h1{letter-spacing:-.03em;margin:0 0 20px;font-size:clamp(32px,5vw,48px);font-weight:800;line-height:1.15}.landing-hero h1 em{color:var(--landing-orange);font-style:normal}.landing-hero-lead{color:var(--landing-sub);max-width:520px;margin:0 0 32px;font-size:17px;line-height:1.65}.landing-hero-actions{flex-wrap:wrap;gap:12px;margin-bottom:36px;display:flex}.landing-stats{flex-wrap:wrap;gap:28px;display:flex}.landing-stat strong{letter-spacing:-.02em;font-size:22px;font-weight:700;display:block}.landing-stat span{color:var(--landing-sub);font-size:13px}.landing-phone-wrap{justify-self:center;position:relative}.landing-phone-glow{pointer-events:none;background:radial-gradient(circle,#ff6b352e 0%,#0000 70%);position:absolute;inset:-20%}.landing-phone{aspect-ratio:393/852;background:var(--landing-bg);border:6px solid #2c2c2e;border-radius:40px;flex-direction:column;width:min(320px,100%);display:flex;position:relative;overflow:hidden;box-shadow:0 40px 80px #00000024,inset 0 0 0 1px #fff6}.landing-phone-notch{flex-shrink:0;justify-content:center;height:28px;padding-top:8px;display:flex}.landing-phone-notch span{background:#2c2c2e;border-radius:0 0 14px 14px;width:88px;height:22px}.landing-phone-body{flex-direction:column;flex:1;gap:10px;padding:12px 16px 20px;display:flex;overflow:hidden}.landing-mock-bubble{background:var(--landing-orange);color:#fff;border-radius:18px 18px 4px;align-self:flex-end;max-width:85%;padding:10px 14px;font-size:11px;line-height:1.45}.landing-mock-card{border:1px solid var(--landing-border);background:#ffffffeb;border-radius:16px;padding:12px}.landing-mock-card-title{align-items:center;gap:6px;margin-bottom:8px;font-size:11px;font-weight:700;display:flex}.landing-mock-card-title:before{content:"";background:var(--landing-sage);border-radius:50%;width:8px;height:8px}.landing-mock-row{border-top:1px solid var(--landing-border);align-items:center;gap:8px;padding:8px 0;font-size:10px;display:flex}.landing-mock-time{color:var(--landing-orange);min-width:36px;font-weight:700}.landing-mock-cta{background:var(--landing-sage);color:#fff;text-align:center;border-radius:999px;margin-top:auto;padding:12px;font-size:12px;font-weight:600}.landing-section-head{text-align:center;max-width:640px;margin:0 auto 48px}.landing-section-head h2{letter-spacing:-.02em;margin:0 0 12px;font-size:clamp(26px,4vw,34px);font-weight:800}.landing-section-head p{color:var(--landing-sub);margin:0;font-size:16px;line-height:1.6}.landing-features{gap:20px;display:grid}@media (width>=640px){.landing-features{grid-template-columns:repeat(2,1fr)}}@media (width>=960px){.landing-features{grid-template-columns:repeat(3,1fr)}}.landing-feature{background:var(--landing-surface);border:1px solid var(--landing-border);border-radius:var(--landing-radius);padding:24px;transition:border-color .2s,box-shadow .2s}.landing-feature:hover{border-color:#ff6b3540;box-shadow:0 12px 32px #0000000d}.landing-feature-icon{border-radius:14px;place-items:center;width:44px;height:44px;margin-bottom:16px;font-size:20px;display:grid}.landing-feature-icon--orange{background:var(--landing-orange-dim)}.landing-feature-icon--sage{background:var(--landing-sage-dim)}.landing-feature-icon--amber{background:#f9d8b18c}.landing-feature h3{margin:0 0 8px;font-size:16px;font-weight:700}.landing-feature p{color:var(--landing-sub);margin:0;font-size:14px;line-height:1.6}.landing-flow{background:var(--landing-bg-alt);border-top:1px solid var(--landing-border);border-bottom:1px solid var(--landing-border)}.landing-steps{counter-reset:step;gap:24px;display:grid}@media (width>=768px){.landing-steps{grid-template-columns:repeat(4,1fr);gap:16px}}.landing-step{background:var(--landing-surface);border:1px solid var(--landing-border);border-radius:var(--landing-radius);counter-increment:step;padding:24px 20px;position:relative}.landing-step:before{content:counter(step, decimal-leading-zero);color:var(--landing-orange);opacity:.35;letter-spacing:-.03em;margin-bottom:12px;font-size:28px;font-weight:800;display:block}.landing-step h3{margin:0 0 8px;font-size:15px;font-weight:700}.landing-step p{color:var(--landing-sub);margin:0;font-size:13px;line-height:1.55}.landing-scenarios{gap:20px;display:grid}@media (width>=768px){.landing-scenarios{grid-template-columns:repeat(2,1fr)}}.landing-scenario{border-radius:var(--landing-radius);border:1px solid var(--landing-border);background:linear-gradient(145deg, #fff 0%, var(--landing-orange-dim) 100%);padding:28px}.landing-scenario-tag{color:var(--landing-orange-dark);background:#fffc;border-radius:999px;margin-bottom:12px;padding:4px 10px;font-size:11px;font-weight:700;display:inline-block}.landing-scenario h3{margin:0 0 8px;font-size:18px;font-weight:700}.landing-scenario p{color:var(--landing-sub);margin:0 0 16px;font-size:14px;line-height:1.55}.landing-scenario-quote{border-left:3px solid var(--landing-orange);color:var(--landing-text);background:#ffffffbf;border-radius:14px;padding:14px 16px;font-size:13px;line-height:1.6}.landing-cta-band{max-width:calc(var(--landing-max) - 48px);background:linear-gradient(135deg, var(--landing-orange) 0%, #ff8f5a 100%);color:#fff;text-align:center;border-radius:28px;margin:0 auto 72px;padding:48px 32px;box-shadow:0 24px 48px #ff6b3559}.landing-cta-band h2{letter-spacing:-.02em;margin:0 0 12px;font-size:clamp(24px,4vw,32px);font-weight:800}.landing-cta-band p{opacity:.92;max-width:480px;margin:0 auto 28px;font-size:16px;line-height:1.6}.landing-cta-band .landing-btn-primary{color:var(--landing-orange-dark);background:#fff;box-shadow:0 8px 24px #0000001f}.landing-cta-band .landing-btn-primary:hover{background:#fff8f5}.landing-footer{border-top:1px solid var(--landing-border);max-width:var(--landing-max);color:var(--landing-sub);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:0 auto;padding:32px 24px 48px;font-size:13px;display:flex}.landing-footer a{color:var(--landing-sub);text-decoration:none}.landing-footer a:hover{color:var(--landing-orange)}.landing-footer-links{gap:20px;display:flex}
