@import"https://fonts.googleapis.com/css2?family=Inconsolata:wght@200..900&display=swap";:root{--zen-primary: #FFF4DF;--zen-primary-light: #FFFBF4;--zen-primary-dark: #F5E6D3;--zen-gold: #D4A574;--zen-bronze: #B08D57;--zen-copper: #C9A878;--zen-dark: #8B6F47;--zen-charcoal: #2C3E50;--zen-ash: #5D6D7E;--zen-smoke: #85929E;--zen-cloud: #BDC3C7;--zen-pearl: #ECF0F1;--bp-mobile-sm: 320px;--bp-mobile: 375px;--bp-mobile-lg: 425px;--bp-tablet: 768px;--bp-laptop: 1024px;--bp-desktop: 1280px;--bp-desktop-lg: 1440px;--bp-fhd: 1920px;--bp-qhd: 2560px;--bp-uhd: 3840px;--bp-ultrawide: 3440px;--bp-4k-ultrawide: 5120px;--space-base: clamp(4px, .5vw, 8px);--spacing-xs: calc(var(--space-base) * 1);--spacing-sm: calc(var(--space-base) * 2);--spacing-md: calc(var(--space-base) * 3);--spacing-lg: calc(var(--space-base) * 4);--spacing-xl: calc(var(--space-base) * 5);--spacing-2xl: calc(var(--space-base) * 6);--spacing-3xl: calc(var(--space-base) * 8);--font-size-xs: clamp(.75rem, .7rem + .25vw, .875rem);--font-size-sm: clamp(.8125rem, .75rem + .3vw, .9375rem);--font-size-md: clamp(.875rem, .8rem + .4vw, 1rem);--font-size-lg: clamp(.9375rem, .85rem + .45vw, 1.125rem);--font-size-xl: clamp(1rem, .9rem + .5vw, 1.25rem);--font-size-2xl: clamp(1.125rem, 1rem + .6vw, 1.5rem);--font-size-3xl: clamp(1.25rem, 1.1rem + .75vw, 1.875rem);--font-weight-light: 300;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.2;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--panel-chat-min: 320px;--panel-chat-default: clamp(320px, 25vw, 450px);--panel-chat-max: 500px;--panel-map-min: 400px;--panel-map-default: minmax(400px, 1fr);--panel-itinerary-min: 350px;--panel-itinerary-default: clamp(350px, 25vw, 500px);--panel-itinerary-max: 600px;--radius-xs: 4px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 20px;--radius-round: 9999px;--shadow-xs: 0 1px 2px rgba(212, 165, 116, .03);--shadow-sm: 0 2px 4px rgba(212, 165, 116, .05);--shadow-md: 0 4px 8px rgba(212, 165, 116, .08);--shadow-lg: 0 8px 16px rgba(212, 165, 116, .12);--shadow-xl: 0 12px 24px rgba(212, 165, 116, .15);--shadow-2xl: 0 16px 32px rgba(212, 165, 116, .18);--shadow-lift: light-dark( 0 4px 12px rgba(0,0,0,.1), 0 6px 20px rgba(0,0,0,.2) );--z-page: 0;--z-content: 10;--z-sticky: 100;--z-header: 200;--z-dropdown: 1000;--z-popover: 1000;--z-modal: 10000;--z-overlay: 11000;--z-notification: 12000;--z-tooltip: 13000;--transition-fast: .15s ease;--transition-normal: .3s ease;--transition-slow: .5s ease;--transition-smooth: all .3s cubic-bezier(.4, 0, .2, 1);--transition-bounce: all .5s cubic-bezier(.68, -.55, .265, 1.55);--border-width: 1px;--border-width-thick: 2px;--border-light: 1px solid rgba(212, 165, 116, .15);--border-medium: 1px solid rgba(212, 165, 116, .25);--border-strong: 1px solid var(--zen-gold);--aspect-square: 1;--aspect-video: 16 / 9;--aspect-ultrawide: 21 / 9;--aspect-portrait: 3 / 4;--aspect-landscape: 4 / 3;--container-xs: 480px;--container-sm: 640px;--container-md: 768px;--container-lg: 1024px;--container-xl: 1280px;--container-2xl: 1536px;--container-3xl: 1920px;--container-4xl: 2560px;--container-ultrawide: 3440px}@media(min-width:768px){:root{--space-base: 5px}}@media(min-width:1280px){:root{--space-base: 6px}}@media(min-width:1920px){:root{--space-base: 7px}}@media(min-width:2560px){:root{--space-base: 8px}}@media(min-aspect-ratio:21/9){:root{--panel-chat-default: min(380px, 20vw);--panel-itinerary-default: min(420px, 20vw)}}@media(min-width:5120px)and (min-aspect-ratio:21/9){:root{--space-base: 10px;--panel-chat-default: 500px;--panel-itinerary-default: 550px}}:root[data-theme=dark],:root[data-ui-theme=dark]{--shadow-sm: 0 2px 4px rgba(0, 0, 0, .2);--shadow-md: 0 4px 8px rgba(0, 0, 0, .3);--shadow-lg: 0 8px 16px rgba(0, 0, 0, .4);--shadow-xl: 0 12px 24px rgba(0, 0, 0, .5)}@media(min-resolution:2dppx){:root{--border-width: .5px}}:root{--color-text-secondary: var(--color-text2);--color-primary-hover: var(--zen-bronze);--color-error: var(--color-error-bg);--color-success: #10b981;--color-warning: #f59e0b;--font-family-main: "Inter", "SF Pro Display", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-family-mono: "Inconsolata", "Monaco", "Consolas", "Courier New", monospace;--font-size-xs: var(--font-size-xs);--font-size-sm: var(--font-size-sm);--font-size-base: var(--font-size-md);--font-size-lg: var(--font-size-lg);--font-size-xl: var(--font-size-xl);--font-size-xxl: var(--font-size-2xl);--border-radius-sm: var(--radius-sm);--border-radius-md: var(--radius-md);--border-radius-lg: var(--radius-lg);--border-width: var(--border-width);--z-index-base: var(--z-content);--z-index-dropdown: var(--z-dropdown);--z-index-overlay: var(--z-overlay);--z-index-modal: var(--z-modal);--z-index-tooltip: var(--z-tooltip);--transition-fast: var(--transition-fast);--transition-base: var(--transition-normal);--transition-slow: var(--transition-slow);--chat-bg-user: rgba(255, 244, 223, .3);--chat-bg-assistant: rgba(255, 255, 255, .6);--chat-bg-error: rgba(255, 51, 38, .1);--map-height: 100%;--map-min-height: 400px;--spacing-xxl: var(--spacing-3xl)}*{box-sizing:border-box;margin:0;padding:0}html{height:100%;display:flex;font-family:var(--font-family-main);font-size:16px;line-height:1.5}body{display:flex;flex-direction:column;flex:1;margin:0;overflow:hidden;background:linear-gradient(135deg,#fffbf4,#fff,#fff4df);background-attachment:fixed;color:var(--color-text);font-family:Inter,SF Pro Display,-apple-system,BlinkMacSystemFont,sans-serif;font-weight:300;letter-spacing:.01em;transition:background-color var(--transition-normal),color var(--transition-normal);position:relative}body:before{content:"";position:fixed;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle at 20% 20%,rgba(212,165,116,.1) 0%,transparent 50%),radial-gradient(circle at 80% 60%,rgba(245,230,211,.15) 0%,transparent 50%),radial-gradient(circle at 40% 80%,rgba(201,168,120,.08) 0%,transparent 50%);animation:zen-float 20s ease-in-out infinite;pointer-events:none;z-index:0}#root{height:100vh;overflow:hidden;display:flex}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:#80808080;border-radius:6px;transition:background var(--transition-fast)}::-webkit-scrollbar-thumb:hover{background:#808080b3}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-corner{background:transparent}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}::selection{background-color:var(--color-accent);color:var(--color-accent-text)}.hidden{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.app-layout{display:grid;height:100vh;width:100%;overflow:hidden;grid-template-columns:minmax(var(--panel-chat-min),var(--panel-chat-default)) minmax(var(--panel-map-min),1fr) minmax(var(--panel-itinerary-min),var(--panel-itinerary-default));grid-template-rows:1fr;gap:0}@media(max-width:767px){.app-layout{grid-template-columns:1fr;grid-template-rows:auto 1fr auto;height:100vh}.chat-sidebar{height:40vh;min-height:300px;order:1}.main-container{height:auto;flex:1;order:2}.itinerary-sidebar{height:30vh;min-height:250px;order:3}.resize-handle{display:none!important}}@media(min-width:768px)and (max-width:1023px){.app-layout{grid-template-columns:minmax(280px,35%) minmax(400px,1fr);grid-template-rows:1fr}.itinerary-sidebar{position:fixed;right:0;top:0;height:100vh;width:min(400px,50vw);transform:translate(100%);transition:transform .3s ease;z-index:var(--z-overlay)}.itinerary-sidebar.active{transform:translate(0)}}@media(min-width:1024px)and (max-width:1279px){.app-layout{grid-template-columns:minmax(300px,30%) minmax(400px,1fr) minmax(320px,28%)}}@media(min-width:1280px)and (max-width:1439px){.app-layout{grid-template-columns:minmax(340px,28%) minmax(450px,1fr) minmax(360px,26%)}}@media(min-width:1440px)and (max-width:1919px){.app-layout{grid-template-columns:minmax(380px,26%) minmax(500px,1fr) minmax(400px,25%)}}@media(min-width:1920px)and (max-width:2559px){.app-layout{grid-template-columns:minmax(420px,24%) minmax(600px,1fr) minmax(440px,23%)}}@media(min-width:2560px)and (max-width:3439px){.app-layout{grid-template-columns:minmax(480px,22%) minmax(700px,1fr) minmax(500px,22%)}}@media(min-width:3440px){.app-layout{grid-template-columns:minmax(500px,20%) minmax(800px,1fr) minmax(550px,20%)}.chat-sidebar{max-width:600px}.itinerary-sidebar{max-width:650px}}@media(min-aspect-ratio:21/9){.app-layout{grid-template-columns:minmax(380px,18%) minmax(600px,1fr) minmax(420px,18%)}.chat-sidebar,.itinerary-sidebar{max-width:500px}@media(min-width:3440px){.app-layout{padding:0 2vw}}}@media(min-aspect-ratio:32/9){.app-layout{grid-template-columns:minmax(400px,15%) minmax(800px,1fr) minmax(450px,15%);max-width:5120px;margin:0 auto}}.chat-sidebar{container-type:inline-size;container-name:chat}@container chat (max-width: 350px){.chat-message{font-size:var(--font-size-sm);padding:var(--spacing-xs) var(--spacing-sm)}.chat-input{font-size:var(--font-size-sm);min-height:36px}}.main-container{container-type:size;container-name:map}@container map (max-width: 500px){.map-controls{scale:.9}}@container map (min-width: 1200px){.map-controls{scale:1.1}}.itinerary-sidebar{container-type:inline-size;container-name:itinerary}@container itinerary (max-width: 400px){.activity-card{padding:var(--spacing-sm);font-size:var(--font-size-sm)}.trip-context-grid{grid-template-columns:1fr}}@media(min-resolution:2dppx){.panel-border{border-width:.5px}.card{box-shadow:0 .5px 1px #0000000d,0 2px 4px #0000000d,0 4px 8px #0000000d}}@media(min-resolution:3dppx){*{-webkit-font-smoothing:subpixel-antialiased;-moz-osx-font-smoothing:auto}}@media(orientation:portrait){.app-layout{grid-template-columns:1fr;grid-template-rows:auto 1fr auto}}@media(orientation:landscape)and (max-height:500px){.app-layout{grid-template-rows:1fr}.header{height:40px}.chat-input-container{max-height:60px}}@media print{.app-layout{display:block}.chat-sidebar,.map-container{display:none}.itinerary-sidebar{width:100%;max-width:100%;background:#fff;color:#000}}.mobile-only,.tablet-only,.desktop-only{display:none}@media(max-width:767px){.mobile-only{display:block}.tablet-up,.desktop-up{display:none}}@media(min-width:768px)and (max-width:1023px){.tablet-only{display:block}.mobile-only,.desktop-only{display:none}}@media(min-width:1024px){.desktop-only{display:block}.mobile-only,.tablet-only{display:none}}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.truncate-2{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.p-responsive{padding:clamp(var(--spacing-sm),2vw,var(--spacing-xl))}.m-responsive{margin:clamp(var(--spacing-sm),2vw,var(--spacing-xl))}.text-responsive{font-size:clamp(var(--font-size-sm),1.5vw,var(--font-size-lg))}:root{--color-bg: #ffffff;--color-bg2: #f9fafb;--color-bg3: #f9fafb;--color-text: #0f172a;--color-text2: #6b7280;--color-text3: #6b7280;--color-primary: #f97316;--color-primary-text: #ffffff;--color-accent: var(--zen-gold);--color-accent2: #444;--color-accent-disabled: #aaa;--color-accent-text: #ffffff;--color-border: #e5e7eb;--color-sidebar-border: #e5e7eb;--color-inv-bg: #0f172a;--color-inv-text: #ffffff;--color-inv-bg2: #333;--color-inv-text2: #ccc;--color-error-bg: #ff3326;--color-error-text: #000;--code-bg: #222;--code-text: #ccc;--shadow-lift: 0 4px 12px rgba(0,0,0,.1)}:root[data-theme=dark],:root[data-ui-theme=dark]{--color-bg: #0f172a;--color-bg2: #1e293b;--color-bg3: #1e293b;--color-text: #f1f5f9;--color-text2: #94a3b8;--color-text3: #94a3b8;--color-primary: #fb923c;--color-primary-text: #ffffff;--color-accent: var(--zen-copper);--color-accent2: #ccc;--color-accent-disabled: #666;--color-accent-text: #ffffff;--color-border: #334155;--color-sidebar-border: #334155;--color-inv-bg: #ffffff;--color-inv-text: #0f172a;--color-inv-bg2: #aaa;--color-inv-text2: #222;--code-bg: #1e293b;--code-text: #f1f5f9;--shadow-lift: 0 6px 20px rgba(0,0,0,.2)}:root[data-theme=dark] body,:root[data-ui-theme=dark] body{background:linear-gradient(135deg,#0f172a,#1e293b,#0f172a)}:root[data-theme=dark] body:before,:root[data-ui-theme=dark] body:before{background:radial-gradient(circle at 20% 20%,rgba(251,146,60,.05) 0%,transparent 50%),radial-gradient(circle at 80% 60%,rgba(201,168,120,.03) 0%,transparent 50%),radial-gradient(circle at 40% 80%,rgba(212,165,116,.04) 0%,transparent 50%)}:root[data-theme=dark] ::-webkit-scrollbar-thumb,:root[data-ui-theme=dark] ::-webkit-scrollbar-thumb{background:#828282b3}@keyframes zen-float{0%,to{transform:translate(0) scale(1) rotate(0);opacity:.6}33%{transform:translate(-20px,-30px) scale(1.1) rotate(120deg);opacity:.8}66%{transform:translate(30px,-10px) scale(.9) rotate(240deg);opacity:.7}}@keyframes fadeInScaleUp{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.02);opacity:.9}}@keyframes smoothPulse{0%,to{opacity:.6}50%{opacity:1}}@keyframes rotating{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes dotPulse{0%,80%,to{transform:scale(0);opacity:.5}40%{transform:scale(1);opacity:1}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{transform:translate(-100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes scaleIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}@keyframes bounce{0%,to{transform:translateY(0)}40%{transform:translateY(-3px)}60%{transform:translateY(-1px)}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-2px)}20%,40%,60%,80%{transform:translate(2px)}}@keyframes wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(3deg)}75%{transform:rotate(-3deg)}}@keyframes typing{0%{transform:translateY(0);opacity:.4}28%{transform:translateY(-10px);opacity:1}44%{transform:translateY(0);opacity:.4}}@keyframes blink{0%,50%{opacity:1}51%,to{opacity:0}}.rotating{animation:rotating 1s linear infinite}.loading-dots span{animation:dotPulse 1.4s infinite ease-in-out both}.loading-dots span:nth-child(1){animation-delay:-.32s}.loading-dots span:nth-child(2){animation-delay:-.16s}.skeleton-loading{background:linear-gradient(90deg,#fff0,#fff3,#fff0);background-size:200% 100%;animation:shimmer 1.5s ease-in-out infinite}.fade-in{animation:fadeIn .3s ease-out}.fade-in-scale{animation:fadeInScaleUp .3s ease-out}.slide-in-left{animation:slideInLeft .3s ease-out}.slide-in-right{animation:slideInRight .3s ease-out}.slide-up{animation:slideUp .3s ease-out}.scale-in{animation:scaleIn .3s ease-out}.pulse{animation:pulse 2s ease-in-out infinite}.smooth-pulse{animation:smoothPulse 2s ease-in-out infinite}.bounce-hover:hover{animation:bounce .5s ease}.shake-error{animation:shake .5s ease}.wiggle-attention{animation:wiggle .5s ease}.typing-indicator span{animation:typing 1.4s infinite}.typing-indicator span:nth-child(2){animation-delay:.15s}.typing-indicator span:nth-child(3){animation-delay:.3s}.cursor-blink{animation:blink 1s step-end infinite}.zen-float-bg{animation:zen-float 20s ease-in-out infinite}.animate-slow{animation-duration:.5s!important}.animate-fast{animation-duration:.15s!important}.animate-delay-sm{animation-delay:.1s}.animate-delay-md{animation-delay:.3s}.animate-delay-lg{animation-delay:.5s}@keyframes zen-breathe{0%,to{box-shadow:0 2px 8px #b4a38814,0 1px 3px #8b6f470f}50%{box-shadow:0 3px 10px #b4a3881f,0 2px 4px #8b6f4714}}.zen-assistant-breathe{animation:zen-breathe 4s ease-in-out infinite}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.zen-float-bg,.zen-assistant-breathe{animation:none}}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#fff;background:#1c1b1b}.hljs-subst{color:#fff}.hljs-comment{color:#999}.hljs-keyword,.hljs-selector-tag,.hljs-meta .hljs-keyword,.hljs-doctag,.hljs-section,.hljs-attr{color:#88aece}.hljs-attribute{color:#c59bc1}.hljs-name,.hljs-type,.hljs-number,.hljs-selector-id,.hljs-quote,.hljs-template-tag{color:#f08d49}.hljs-selector-class{color:#88aece}.hljs-string,.hljs-regexp,.hljs-symbol,.hljs-variable,.hljs-template-variable,.hljs-link,.hljs-selector-attr{color:#b5bd68}.hljs-meta,.hljs-selector-pseudo{color:#88aece}.hljs-built_in,.hljs-title,.hljs-literal{color:#f08d49}.hljs-bullet,.hljs-code{color:#ccc}.hljs-meta .hljs-string{color:#b5bd68}.hljs-deletion{color:#de7176}.hljs-addition{color:#76c490}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}body,body *{-webkit-touch-callout:text;-webkit-user-select:text;-khtml-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}chat-message,chat-message *,.chat-messages,.chat-messages *,.message,.message *,.content,.content *{-webkit-user-select:text!important;-moz-user-select:text!important;-ms-user-select:text!important;user-select:text!important;cursor:text!important}button,button *,.button,.button *,summary,summary *,input[type=button],input[type=submit],.no-select{-webkit-user-select:none!important;-moz-user-select:none!important;-ms-user-select:none!important;user-select:none!important;cursor:pointer!important}::selection{background-color:#6496ff4d;color:inherit}::-moz-selection{background-color:#6496ff4d;color:inherit}::-webkit-selection{background-color:#6496ff4d;color:inherit}textarea{border:none;overflow:auto;outline:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none;resize:none;flex:1;min-height:30px;height:100px;width:100%}@media(max-width:900px){.desktop-only{display:none!important}}@media(min-width:901px){.mobile-only{display:none!important}}.glass-panel{background:#fff9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(212,165,116,.2);box-shadow:0 8px 32px #0000000f}:root[data-theme=dark] .glass-panel,:root[data-ui-theme=dark] .glass-panel{background:#1e293bb3;border:1px solid rgba(251,146,60,.1);box-shadow:0 8px 32px #0003}.chat-sidebar{background:#fff9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-right:1px solid rgba(212,165,116,.2);box-shadow:0 8px 32px #0000000f}.itinerary-sidebar{background:#fff9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-left:1px solid rgba(212,165,116,.2);box-shadow:0 8px 32px #0000000f}.main-container{background:#ffffff1a;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.activity-card,.trip-context-card{background:#fffc;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(212,165,116,.15);box-shadow:var(--shadow-md);transition:all .3s ease}.activity-card:hover,.trip-context-card:hover{background:#ffffffe6;box-shadow:var(--shadow-lg);transform:translateY(-2px)}.chat-message{background:#fff4df4d;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border:1px solid rgba(212,165,116,.1);border-radius:var(--radius-lg);padding:var(--spacing-md);margin:var(--spacing-sm) 0}.chat-message.assistant{background:#fff9}.chat-message.user{background:#fff4df66;border-color:#d4a57433}.chat-input,.form-input{background:#ffffffb3;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(212,165,116,.2);transition:all .3s ease}.chat-input:focus,.form-input:focus{background:#ffffffe6;border-color:var(--zen-gold);box-shadow:0 0 0 3px #d4a5741a}.btn-glass{background:#d4a5741a;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(212,165,116,.3);color:var(--zen-dark);transition:all .3s ease}.btn-glass:hover{background:#d4a57433;border-color:var(--zen-gold);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-glass:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.modal-backdrop{background:#fff6;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px)}.modal-content{background:#fffffff2;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(212,165,116,.2);box-shadow:var(--shadow-xl)}:root[data-theme=dark] .chat-sidebar,:root[data-theme=dark] .itinerary-sidebar,:root[data-ui-theme=dark] .chat-sidebar,:root[data-ui-theme=dark] .itinerary-sidebar{background:#1e293bb3;border-color:#fb923c1a}:root[data-theme=dark] .main-container,:root[data-ui-theme=dark] .main-container{background:#0f172a1a}:root[data-theme=dark] .activity-card,:root[data-theme=dark] .trip-context-card,:root[data-ui-theme=dark] .activity-card,:root[data-ui-theme=dark] .trip-context-card{background:#1e293bcc;border-color:#fb923c1a}:root[data-theme=dark] .chat-message,:root[data-ui-theme=dark] .chat-message{background:#1e293b99;border-color:#fb923c1a}:root[data-theme=dark] .chat-message.user,:root[data-ui-theme=dark] .chat-message.user{background:#fb923c1a;border-color:#fb923c33}:root[data-theme=dark] .chat-input,:root[data-theme=dark] .form-input,:root[data-ui-theme=dark] .chat-input,:root[data-ui-theme=dark] .form-input{background:#1e293bb3;border-color:#fb923c1a}:root[data-theme=dark] .chat-input:focus,:root[data-theme=dark] .form-input:focus,:root[data-ui-theme=dark] .chat-input:focus,:root[data-ui-theme=dark] .form-input:focus{background:#1e293be6;border-color:var(--zen-copper);box-shadow:0 0 0 3px #fb923c1a}:root[data-theme=dark] .btn-glass,:root[data-ui-theme=dark] .btn-glass{background:#fb923c1a;border-color:#fb923c4d;color:var(--color-text)}:root[data-theme=dark] .btn-glass:hover,:root[data-ui-theme=dark] .btn-glass:hover{background:#fb923c33;border-color:var(--zen-copper)}:root[data-theme=dark] .modal-backdrop,:root[data-ui-theme=dark] .modal-backdrop{background:#0f172a99}:root[data-theme=dark] .modal-content,:root[data-ui-theme=dark] .modal-content{background:#1e293bf2;border-color:#fb923c33}.playground{border-top:1px solid var(--color-sidebar-border);height:100vh;overflow:hidden;display:flex;flex-direction:row;flex:1}.sidebar{display:flex;flex-direction:column;flex:0 0 300px;overflow:hidden;border-right:1px solid var(--color-sidebar-border, #ddd)}.selector{display:flex;flex-direction:row;flex:0;padding:0 1em;border-bottom:1px solid var(--color-sidebar-border, #ddd)}.selector button{display:flex;gap:5px;border:none;outline:none;cursor:pointer;padding:14px 16px;transition:.3s;border-bottom:4px solid transparent;background:transparent;align-items:center;justify-content:center;align-content:center;flex-wrap:nowrap;flex-direction:row;color:var(--color-text)}.selector button:hover{background-color:var(--color-bg2);color:var(--color-text2)}.selected-tab,.selector button.active{background:transparent;border-bottom:4px solid var(--color-accent, #000)!important}.tabcontent{display:none}.showtab{display:flex!important}.toolbar{height:80px;display:flex;flex-direction:row;justify-content:center;border-top:1px solid var(--color-sidebar-border, #ddd)}.toolbar button{border:none;outline:none;cursor:pointer;padding:10px 5px 6px;transition:.3s;background:transparent;color:var(--color-accent)}.toolbar button:hover{background-color:transparent;color:var(--color-accent2)}.toolbar button.disabled{color:var(--color-accent-disabled)}#reloadCode{margin-right:25px}#clear{margin-left:25px}@media only screen and (max-width:900px){.selector{display:none}.playground{flex-direction:column-reverse}.toolbar{border-bottom:1px solid var(--color-sidebar-border, #ddd)}}#chat{flex:1;flex-direction:column;overflow:hidden}.chat-messages{flex:1;overflow:auto;display:flex;flex-direction:column;gap:1.25em;padding:1.5em 8px 8px;scroll-behavior:smooth}.chat-messages *{overflow-anchor:none}#chatStatus{background:var(--color-bg2, #f0f0f0);padding:.5em;display:flex;align-items:center;justify-content:flex-start;align-content:center;flex-direction:row;flex-wrap:wrap;font-weight:700}#chatStatus svg{margin-right:10px}#inputArea{display:flex;padding:15px;border-top:1px solid var(--color-sidebar-border);height:80px}#messageInput{flex-grow:1;padding:10px 10px 10px 16px;border:1px solid #ccc;border-radius:14px;margin-right:10px;font-size:1em;background:var(--color-bg2);color:var(--color-text2)}#messageInput:focus{outline:1px solid var(--color-accent, inherit)}#sendButton{padding:8px 6px 8px 10px;height:50px;background-color:var(--color-accent, inherit);color:var(--color-accent-text, inherit);border:none;border-radius:100px;cursor:pointer;font-size:1em;transition:background-color .2s;display:flex;aspect-ratio:1;align-content:center;align-items:center;justify-content:center}#sendButton:hover{background-color:var(--color-accent2, #ddd)}#sendButton.disabled{background-color:var(--color-accent-disabled, #ccc);cursor:not-allowed}#anchor{overflow-anchor:auto;padding-top:45px}#appMessages{display:flex;position:absolute;bottom:70px;width:100%;flex-direction:column-reverse;flex-wrap:nowrap;align-content:center;align-items:center}@media only screen and (max-width:900px){#chat{display:flex!important}}.turn{display:flex;flex-direction:column;gap:8px;padding:10px 15px;border-radius:18px;max-width:85%;word-wrap:break-word;line-height:1.5}.turn .thinking{font-style:normal;background:var(--color-bg3);color:var(--color-text3);border-radius:10px;padding:.75em;margin-top:6px}.turn .thinking p{margin:.75rem 0}.role-user{background-color:var(--color-accent);color:var(--color-accent-text);align-self:flex-end;border-bottom-right-radius:4px}.role-user details{display:none}.role-assistant{background:linear-gradient(135deg,var(--zen-primary-light) 0%,var(--zen-primary) 30%,var(--zen-pearl) 100%);background-color:var(--color-bg2);box-shadow:0 2px 8px #b4a38814,0 1px 3px #8b6f470f;border:1px solid rgba(212,165,116,.12);color:var(--zen-charcoal, var(--color-text2));align-self:flex-start;border-bottom-left-radius:4px;transition:all .3s ease-in-out;position:relative}.role-assistant:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,rgba(255,255,255,.15) 0%,transparent 50%);border-radius:inherit;pointer-events:none;opacity:.3}.role-assistant:hover{box-shadow:0 4px 12px #b4a3881f,0 2px 6px #8b6f4714;transform:translateY(-1px)}.role-system-ask{background-color:transparent;color:var(--color-text2);border:1px solid var(--color-text2, #333);align-self:flex-end;border-bottom-right-radius:4px}.role-system-ask details{display:none}.role-error{background-color:var(--color-error-bg);color:var(--color-error-text);align-self:flex-start;border-bottom-left-radius:4px}.role-error details{display:none}.turn>p{font-size:1rem;margin-bottom:1.3rem}.turn>p:nth-last-child(1){margin-bottom:0}.turn li{margin-left:1rem;margin-bottom:.5rem}.turn li:nth-last-child(1){margin-bottom:0}.turn pre,.turn code{background-color:var(--code-bg);box-sizing:content-box;color:var(--code-text);border-radius:4px;padding:0 5px;outline:3px solid var(--code-bg);outline-offset:-1px;font-family:Inconsolata,Courier New,monospace}.turn pre{overflow:auto;border-radius:10px;padding:15px;margin-top:.5em}.turn button{background:var(--color-accent);color:var(--color-accent-text);box-shadow:none;border:none;border-radius:16px;padding:8px;cursor:pointer;transition:.3s}.turn button:hover{background-color:var(--color-accent2)}.turn button.disabled{color:var(--color-accent-disabled)}#editor{position:relative;overflow:auto;background-color:#1c1b1b;flex-direction:column;flex:1}#editor header{flex:0}#editor .code-container{width:max-content;position:relative}#editor .code-syntax,#editor .code-editor{flex:1 1 100%;white-space:pre;font-family:monospace;font-feature-settings:normal;font-kerning:auto;font-optical-sizing:auto;font-palette:normal;font-size:14px;font-size-adjust:none;font-stretch:100%;font-style:normal;font-synthesis-small-caps:auto;font-synthesis-style:auto;font-synthesis-weight:auto;font-variant-alternates:normal;font-variant-caps:normal;font-variant-east-asian:normal;font-variant-emoji:normal;font-variant-ligatures:normal;font-variant-numeric:normal;font-variant-position:normal;font-variation-settings:normal;font-weight:400;-webkit-font-smoothing:auto}#editor .code-syntax{pointer-events:none}#editor .code-editor{background:transparent;color:transparent;caret-color:var(--code-text);display:flex;position:absolute;top:0;left:0;flex:1;overflow:hidden;width:-webkit-fill-available;height:-webkit-fill-available}#editor textarea{font:monospace;background-color:var(--code-editor-bg);color:var(--code-editor-text);padding:14px;position:absolute;top:0;left:0}@media only screen and (max-width:900px){#editor{display:none!important}}.main-container{display:flex;flex:1;flex-direction:column}main{display:flex;align-items:center;justify-content:center;flex:1}.preview-iframe{width:100%;height:100%;border:0;outline:0;box-shadow:none;margin:0;padding:0;background-color:transparent;display:flex;flex:1}canvas{width:100%!important;height:100%!important;object-fit:contain}.button-label{position:relative}.button-tooltip{position:relative;top:-85px;height:0;width:0;pointer-events:none;cursor:default;overflow:visible;transition:.2s;opacity:0}.button-tooltip p{background:var(--color-inv-bg);color:var(--color-inv-text);border-radius:4px;padding:5px 8px;font-size:16px;width:max-content;transform:translate(calc(-50% + 20px));outline:1px solid rgba(255,255,255,.5)}.show-tooltip{opacity:1}.pac-container{background:#fffffffa!important;backdrop-filter:blur(20px)!important;-webkit-backdrop-filter:blur(20px)!important;border:1px solid rgba(212,165,116,.2)!important;border-radius:12px!important;box-shadow:0 8px 24px #0000001f,0 2px 8px #d4a57414!important;margin-top:8px!important;font-family:Inter,SF Pro Display,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif!important;overflow:hidden!important;z-index:10000!important;visibility:visible!important}.pac-container:after{display:none!important}.pac-item{padding:12px 16px!important;border-bottom:1px solid rgba(212,165,116,.1)!important;cursor:pointer!important;transition:all .2s cubic-bezier(.4,0,.2,1)!important;font-size:14px!important;line-height:1.5!important;color:var(--zen-charcoal, #2C3E50)!important}.pac-item:last-child{border-bottom:none!important}.pac-item:hover{background:#d4a57414!important}.pac-item-selected,.pac-item-selected:hover{background:#d4a57426!important}.pac-icon{width:18px!important;height:18px!important;margin-right:12px!important;margin-top:6px!important;background-size:18px 18px!important;opacity:.7!important}.pac-icon-marker{background-position:-1px -161px!important}.pac-item-query{color:var(--zen-dark, #8B6F47)!important;font-weight:500!important;font-size:14px!important}.pac-matched{font-weight:600!important;color:var(--zen-bronze, #B08D57)!important}.pac-item>span:last-child{color:var(--zen-ash, #5D6D7E)!important;font-size:13px!important}.pac-item>span:last-child span{color:var(--zen-smoke, #85929E)!important}@media(max-width:768px){.pac-container{border-radius:8px!important;margin-top:4px!important}.pac-item{padding:10px 12px!important;font-size:13px!important}.pac-icon{width:16px!important;height:16px!important;background-size:16px 16px!important}}@media(min-width:1920px){.pac-container{border-radius:14px!important}.pac-item{padding:14px 18px!important;font-size:15px!important}.pac-item-query{font-size:15px!important}}@media(min-width:3840px){.pac-container{border-radius:16px!important;border-width:2px!important}.pac-item{padding:16px 20px!important;font-size:16px!important}.pac-icon{width:20px!important;height:20px!important;background-size:20px 20px!important}.pac-item-query{font-size:16px!important}}:root[data-theme=dark] .pac-container,:root[data-ui-theme=dark] .pac-container{background:#2c3e50fa!important;border-color:#d4a5744d!important;box-shadow:0 8px 24px #0000004d,0 2px 8px #d4a5741a!important}:root[data-theme=dark] .pac-item,:root[data-ui-theme=dark] .pac-item{color:#fff4df!important;border-color:#d4a57426!important}:root[data-theme=dark] .pac-item:hover,:root[data-ui-theme=dark] .pac-item:hover{background:#d4a5741f!important}:root[data-theme=dark] .pac-item-selected,:root[data-theme=dark] .pac-item-selected:hover,:root[data-ui-theme=dark] .pac-item-selected,:root[data-ui-theme=dark] .pac-item-selected:hover{background:#d4a57433!important}:root[data-theme=dark] .pac-item-query,:root[data-ui-theme=dark] .pac-item-query{color:var(--zen-gold, #D4A574)!important}:root[data-theme=dark] .pac-matched,:root[data-ui-theme=dark] .pac-matched{color:var(--zen-copper, #C9A878)!important}:root[data-theme=dark] .pac-item>span:last-child,:root[data-ui-theme=dark] .pac-item>span:last-child{color:#fff4dfb3!important}:root[data-theme=dark] .pac-icon,:root[data-ui-theme=dark] .pac-icon{opacity:.6!important;filter:brightness(1.2)!important}@media(prefers-contrast:high){.pac-container{border-width:2px!important;border-color:var(--zen-bronze, #B08D57)!important}.pac-item{border-bottom-width:2px!important}.pac-item-query{font-weight:600!important}}@media(prefers-reduced-motion:reduce){.pac-item{transition:none!important}}.pac-container.pac-loading{position:relative}.pac-container.pac-loading:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent 0%,var(--zen-gold, #D4A574) 50%,transparent 100%);animation:pac-loading-shimmer 1.5s ease-in-out infinite}@keyframes pac-loading-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.pac-container.pac-error{background:#ff33260d!important;border-color:#ff33264d!important}.pac-container.pac-error .pac-item{color:#ff3326cc!important}@media print{.pac-container{display:none!important}}@keyframes placeholderFadeIn{0%{opacity:0;transform:translateY(-50%) translate(5px)}to{opacity:1;transform:translateY(-50%) translate(0)}}chat-input .placeholder-container{animation:placeholderFadeIn .3s ease-out;transition:opacity .2s ease-out}chat-input .placeholder-text{color:var(--color-text-secondary, #6b7280);font-style:italic;letter-spacing:.01em}chat-input .placeholder-hint{background:linear-gradient(135deg,var(--color-primary-light, #f97316) 0%,var(--color-accent, #D4A574) 100%);color:#fff;font-size:10px;padding:3px 8px;border-radius:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;box-shadow:0 2px 4px #0000001a;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:.9}50%{transform:scale(1.05);opacity:1}}chat-input .input-wrapper:focus-within .placeholder-container{opacity:.5}chat-input .input-wrapper:has(input:not(:placeholder-shown)) .placeholder-container{display:none}chat-input app-button[variant=icon]{transition:all .2s cubic-bezier(.4,0,.2,1)}chat-input app-button[variant=icon]:not([disabled]):hover{transform:translateY(-1px);filter:drop-shadow(0 4px 8px rgba(249,115,22,.3))}chat-input:has(.placeholder-container:not(:empty)) app-button[variant=icon]{background:linear-gradient(135deg,var(--color-primary, #f97316) 0%,var(--color-accent, #D4A574) 100%);color:#fff}chat-input *{transition-property:opacity,transform,background-color,border-color;transition-duration:.2s;transition-timing-function:ease-out}.gm-style-iw{padding:0!important;overflow:visible!important;max-width:none!important}.gm-style-iw-c{padding:0!important;overflow:visible!important;box-shadow:0 2px 7px 1px #0000004d!important;border-radius:8px!important;max-width:none!important}.gm-style-iw-d{overflow:visible!important;max-height:none!important;max-width:none!important}.gm-style-iw-t:after{display:none!important}.gm-style-iw button[aria-label=Close]{display:none!important}.zen-marker-label.glassy-label{background:#ffffffd9!important;background-image:linear-gradient(135deg,#ffffffe6,#fffc,#f5f5f5d9)!important;backdrop-filter:blur(10px)!important;-webkit-backdrop-filter:blur(10px)!important;border:1px solid rgba(255,255,255,.8)!important;outline:1px solid rgba(255,255,255,.4)!important;border-radius:4px!important;padding:3px 8px!important;margin-top:3px!important;text-shadow:0 0 2px #fff,0 0 2px #fff,0 0 2px #fff,0 0 2px #fff!important;color:#1a1a1a!important;font-weight:600!important;box-shadow:0 1px 4px #0000001a,0 2px 8px #0000000d!important}.gm-style .zen-marker-label.glassy-label,.gm-style div[style*="position: absolute"] .zen-marker-label.glassy-label{background:#ffffffd9!important;border:1px solid rgba(255,255,255,.8)!important;padding:3px 8px!important;border-radius:4px!important;text-shadow:0 0 2px #fff,0 0 2px #fff,0 0 2px #fff,0 0 2px #fff!important}div.zen-marker-label.glassy-label{background:#ffffffd9!important;border:1px solid rgba(255,255,255,.8)!important;padding:3px 8px!important;border-radius:4px!important;text-shadow:0 0 2px #fff,0 0 2px #fff!important}[class~=zen-marker-label][class~=glassy-label]{background:#ffffffd9!important;border:1px solid rgba(255,255,255,.8)!important;padding:3px 8px!important;border-radius:4px!important}.gm-style .zen-marker-label{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif!important;letter-spacing:.01em!important;user-select:none!important;-webkit-user-select:none!important}.zen-marker-label.glassy-label,.zen-marker-label.glassy-label:hover,.zen-marker-label.glassy-label:focus{background:#ffffffd9!important;border:1px solid rgba(255,255,255,.8)!important}@keyframes label-fade-in{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:translateY(0)}}.zen-marker-label.glassy-label{animation:label-fade-in .3s ease-out!important}@media(max-width:768px){.zen-marker-label.glassy-label{font-size:10px!important;padding:2px 6px!important}}@media(-webkit-min-device-pixel-ratio:2),(min-resolution:192dpi){.zen-marker-label.glassy-label{font-weight:500!important;-webkit-font-smoothing:antialiased!important;-moz-osx-font-smoothing:grayscale!important}}.zen-marker-label{position:relative!important}
