.demo-rec-guide{position:fixed;top:50%;left:50%;width:500px;height:500px;transform:translate(-50%,-50%);border:2px dashed rgba(255,0,0,.6);border-radius:8px;pointer-events:none;z-index:9999;box-shadow:0 0 0 4000px #00000040}.demo-root{--demo-bubble-max: 88%;--demo-font-size: 15px;--glass-assistant: rgba(255, 255, 255, .1);--glass-user: rgba(255, 255, 255, .06);--glass-blur: 20px;--glass-border-assistant: rgba(255, 255, 255, .15);--glass-border-user: rgba(255, 255, 255, .1);--glass-shadow: 0 4px 24px rgba(0, 0, 0, .12);--glass-card: rgba(255, 255, 255, .1);width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:transparent;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:var(--demo-font-size);color:#fff;-webkit-font-smoothing:antialiased;overflow:hidden}.demo-root.fullpage{position:fixed;inset:0}.demo-root.bg-demo{background:linear-gradient(135deg,#0d0d1a,#121a2e 40%,#1a1a2e)}.demo-root.bg-white{background:#fff;color:#1a1a1a}.demo-root.bg-green{background:#0f0!important}.demo-root.embed .demo-stage{max-width:none;padding:20px 12px}.demo-stage{width:100%;max-width:420px;height:480px;overflow-y:auto;overflow-x:hidden;position:relative;padding:20px 16px;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,black 15%,black 100%);mask-image:linear-gradient(to bottom,transparent 0%,black 15%,black 100%);scrollbar-width:none;-ms-overflow-style:none}.demo-stage::-webkit-scrollbar{width:0;height:0}.demo-scroll-track{min-height:100%;display:flex;flex-direction:column;justify-content:flex-start;gap:10px;opacity:1;transition:opacity .52s ease-out}.demo-scroll-top-spacer{flex-shrink:0;pointer-events:none}.demo-scroll-track.fading-out{opacity:0}.demo-msg{max-width:var(--demo-bubble-max);flex-shrink:0;animation:demo-fade-in .36s ease-out both}@keyframes demo-fade-in{0%{opacity:0}to{opacity:1}}.demo-msg-user{align-self:flex-end}.demo-msg-assistant{align-self:flex-start}.demo-bubble{padding:14px 16px 12px;border-radius:14px;line-height:1.55;backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur))}.demo-msg-assistant .demo-bubble{background:var(--glass-assistant);color:#ffffffeb;border:1px solid var(--glass-border-assistant);border-bottom-left-radius:4px;box-shadow:var(--glass-shadow)}.demo-msg-user .demo-bubble{background:var(--glass-user);color:#ffffffe0;border:1px solid var(--glass-border-user);border-bottom-right-radius:4px;box-shadow:var(--glass-shadow)}.demo-name{font-size:12px;font-weight:600;letter-spacing:.02em;margin-bottom:4px;display:flex;align-items:center;gap:6px}.demo-msg-assistant .demo-name{color:#ffffff80}.demo-msg-user .demo-name{color:#ffffff73;justify-content:flex-end}.demo-name-icon{width:18px;height:18px;border-radius:9999px;display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-weight:700}.demo-msg-assistant .demo-name-icon{background:#ffffff14;color:#ffffff80}.demo-msg-user .demo-name-icon{background:#ffffff1f;color:#fff9}.demo-bubble-text{margin-top:2px}.demo-msg:has(.demo-rich-content){width:var(--demo-bubble-max)}.demo-rich-content{margin-top:8px}.mini-carousel{--carousel-shell-height: 274px;border-radius:12px;overflow:hidden;backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));background:var(--glass-card);border:1px solid var(--glass-border-assistant);box-shadow:var(--glass-shadow);padding:4px 0;min-height:var(--carousel-shell-height)}.mini-carousel-loading{height:var(--carousel-shell-height);padding:8px 10px;display:flex;flex-direction:column;gap:8px}.mini-carousel-loading-viewport,.mini-carousel-loading-caption,.mini-carousel-loading-dots{background:linear-gradient(90deg,#ffffff14 25%,#ffffff2e 37%,#ffffff14 63%);background-size:300% 100%;animation:demo-skeleton-shimmer 1.1s linear infinite;border-radius:10px}.mini-carousel-loading-viewport{height:214px}.mini-carousel-loading-caption{height:14px}.mini-carousel-loading-dots{align-self:center;width:70px;height:10px;border-radius:9999px}@keyframes demo-skeleton-shimmer{0%{background-position:100% 0}to{background-position:0 0}}.carousel-viewport-wrapper{position:relative;width:100%;height:240px;overflow:hidden;transform-style:flat}.carousel-viewport{position:absolute;inset:0;z-index:0;transform-style:preserve-3d;display:flex;align-items:center;justify-content:center;perspective:660px}.carousel-slide{position:absolute;width:175px;height:232px;transition:all .6s cubic-bezier(.4,0,.2,1);display:block}.carousel-slide-inner{width:100%;height:100%;background:transparent;border-radius:10px;overflow:hidden;filter:drop-shadow(-4px 2px 8px rgba(0,0,0,.18)) drop-shadow(-2px 1px 3px rgba(0,0,0,.12))}.carousel-slide-img{width:100%;height:100%;object-fit:cover;display:block}.carousel-nav-area{position:absolute;top:0;bottom:0;width:28%;z-index:10;cursor:pointer;display:flex;align-items:center}.carousel-nav-left{left:0;justify-content:flex-start;padding-left:6px}.carousel-nav-right{right:0;justify-content:flex-end;padding-right:6px}.carousel-nav-arrow{width:32px;height:32px;padding:6px;border-radius:50%;background:#ffffff40;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.35);box-shadow:0 2px 10px #00000026,inset 0 1px 1px #fff3;color:#fff;stroke:#fff;transition:all .25s ease;box-sizing:border-box}.carousel-nav-area:hover .carousel-nav-arrow{background:#ffffff59;border-color:#ffffff80;transform:scale(1.08)}.carousel-caption{padding:4px 14px 2px;display:flex;align-items:baseline;justify-content:space-between;gap:6px}.carousel-caption-name{font-size:11px;font-weight:500;color:#ffffffbf;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.carousel-caption-price{font-size:11px;font-weight:600;color:#ffffff73;white-space:nowrap}.carousel-dots{display:flex;justify-content:center;align-items:center;gap:5px;margin:4px auto;padding:4px 10px;background:#ffffff26;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.25);border-radius:14px;width:fit-content;box-shadow:0 2px 8px #0000000f}.carousel-dot{width:6px;height:6px;border-radius:50%;background:#fff6;transition:all .3s ease}.carousel-dot.active{width:18px;border-radius:3px;background:#fff;box-shadow:0 1px 4px #0000001f}.demo-root.demo-mobile{--demo-font-size: 13px;--demo-bubble-max: 92%;align-items:flex-start}.demo-root.demo-mobile .demo-stage{max-width:340px;height:360px;padding:12px 10px}.demo-root.demo-mobile.embed .demo-stage{padding:12px 8px}.demo-root.demo-mobile .demo-bubble{padding:10px 12px 8px;border-radius:10px}.demo-root.demo-mobile .demo-name{font-size:10px;gap:4px;margin-bottom:2px}.demo-root.demo-mobile .demo-name-icon{width:15px;height:15px;font-size:8px}.demo-root.demo-mobile .carousel-viewport-wrapper{height:180px}.demo-root.demo-mobile .mini-carousel{--carousel-shell-height: 212px}.demo-root.demo-mobile .mini-carousel-loading-viewport{height:154px}.demo-root.demo-mobile .carousel-slide{width:130px;height:172px}.demo-root.demo-mobile .carousel-nav-arrow{width:26px;height:26px;padding:4px}.demo-root.demo-mobile .carousel-caption{padding:3px 10px 1px}.demo-root.demo-mobile .carousel-caption-name,.demo-root.demo-mobile .carousel-caption-price{font-size:10px}.demo-root.demo-mobile .carousel-dots{gap:4px;padding:3px 8px;margin:3px auto}.demo-root.demo-mobile .carousel-dot{width:5px;height:5px}.demo-root.demo-mobile .carousel-dot.active{width:14px}:root,:host{--color-primary: #1a1a1a;--color-primary-hover: #333333;--color-primary-light: #4a4a4a;--color-accent: #c45d3a;--color-accent-hover: #a84d2e;--color-accent-light: #f5ebe7;--color-success: #4a7c59;--color-success-light: #e8f0ea;--color-warning: #d4a84b;--color-warning-light: #fdf6e7;--color-white: #ffffff;--color-cream: #faf9f7;--color-sand: #f5f3f0;--color-stone: #e8e6e3;--color-gray-300: #d1cfc9;--color-gray-400: #a8a5a0;--color-gray-500: #7a7874;--color-gray-600: #5c5a57;--color-black: #0d0d0d;--font-display: Georgia, "Times New Roman", serif;--font-body: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: ui-monospace, "SF Mono", Menlo, Monaco, monospace;--text-xs: .64em;--text-sm: .8em;--text-base: 1em;--text-lg: 1.25em;--text-xl: 1.563em;--text-2xl: 1.953em;--text-3xl: 2.441em;--text-4xl: 3.052em;--font-light: 300;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--leading-tight: 1.2;--leading-snug: 1.375;--leading-normal: 1.5;--leading-relaxed: 1.625;--tracking-tight: -.025em;--tracking-normal: 0;--tracking-wide: .05em;--tracking-wider: .1em;--space-1: .25em;--space-2: .5em;--space-3: .75em;--space-4: 1em;--space-5: 1.25em;--space-6: 1.5em;--space-8: 2em;--space-10: 2.5em;--space-12: 3em;--space-16: 4em;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 24px;--radius-full: 9999px;--border-width: 1px;--border-color: var(--color-stone);--border-color-hover: var(--color-gray-400);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .04);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .06);--shadow-md: 0 4px 12px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .1);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .12);--shadow-elevated: 0 12px 32px rgba(0, 0, 0, .14);--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease;--transition-bounce: .3s cubic-bezier(.34, 1.56, .64, 1);--z-base: 0;--z-dropdown: 100;--z-sticky: 200;--z-modal: 300;--z-tooltip: 400}.ui-component{font-family:var(--font-body);font-size:var(--text-base)!important;line-height:var(--leading-normal)!important;color:var(--color-primary)!important;-webkit-font-smoothing:antialiased!important;-moz-osx-font-smoothing:grayscale!important}.ui-component *,.ui-component *:before,.ui-component *:after{box-sizing:border-box!important;margin:0!important;padding:0!important}.message-skin-analyses,.message-routines{margin-top:.5em}.message{display:flex;gap:var(--space-3, .75em);max-width:85%;animation:message-fade-in .3s ease;box-sizing:border-box}@keyframes message-fade-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message-user{align-self:flex-end;flex-direction:row-reverse}.message-user-images{display:flex;gap:6px;margin-bottom:6px;justify-content:flex-end}.message-user-image{max-width:180px;max-height:180px;border-radius:12px;object-fit:cover}.message-user-image-placeholder{width:48px;height:48px;border-radius:12px;background:var(--color-sand, #f5f3f0);display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary, #6b6b6b)}.message-assistant{align-self:flex-start}.message-avatar{flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--color-sand, #f5f3f0);border-radius:var(--radius-full, 9999px);color:var(--color-gray-600, #5c5a57)}.message-avatar-user{background:var(--color-accent-light, #f5ebe7);color:var(--color-accent, #c45d3a)}.message-avatar-j{font-family:Georgia,Times New Roman,serif;font-size:18px;font-weight:600;font-style:italic;color:var(--color-gray-600, #5c5a57);line-height:1}@media(max-width:768px){.message-avatar{display:none}.message:has(.message-recommendations){max-width:100%}.message:has(.message-recommendations) .message-text{max-width:85%}}.message:has(.message-recommendations){width:max(85%,450px)}.message:has(.message-recommendations) .message-content{flex:1}.message-content{display:flex;flex-direction:column;gap:var(--space-3, .75em);min-width:0}.message-text{padding:var(--space-3, .75em) var(--space-4, 1em);border-radius:var(--radius-lg, 12px);line-height:var(--leading-relaxed, 1.625);font-size:var(--text-base, 1em);width:fit-content;max-width:100%}.message-user .message-text{background:var(--color-accent, #c45d3a);color:var(--color-white, #ffffff);border-bottom-right-radius:var(--radius-sm, 4px);align-self:flex-end}.message-assistant .message-text{background:var(--color-sand, #f5f3f0);color:var(--color-primary, #1a1a1a);border-bottom-left-radius:var(--radius-sm, 4px);align-self:flex-start}.message-text--prior-step{opacity:.45;border-left:2px solid #ccc;padding-left:12px;margin-bottom:4px}.message-text p{margin:0}.message-text p+p{margin-top:var(--space-2, .5em)}.message-text strong{font-weight:600}.message-text em{font-style:italic}.message-text code{background:#0000000f;padding:.1em .4em;border-radius:var(--radius-sm, 4px);font-family:var(--font-mono, monospace);font-size:.9em}.message-user .message-text code{background:#fff3}.message-text ul,.message-text ol{margin:var(--space-2, .5em) 0;padding-left:var(--space-4, 1em)}.message-text li{margin:var(--space-1, .25em) 0}.message-text a{color:inherit;text-decoration:underline}.message-text h1,.message-text h2,.message-text h3,.message-text h4{margin:var(--space-3, .75em) 0 var(--space-2, .5em) 0;font-weight:600}.message-text h1:first-child,.message-text h2:first-child,.message-text h3:first-child,.message-text h4:first-child{margin-top:0}.message-recommendations{display:flex;flex-direction:column;gap:var(--space-4, 1em);width:100%}.message-recommendations>*{width:100%}.message-recommendations .rec-wrapper{margin:0}.message-choices{display:flex;flex-direction:column;gap:var(--space-3, .75em);width:100%}.choice-selector{background:var(--color-sand, #f5f3f0);border-radius:var(--radius-lg, 12px);padding:var(--space-4, 1em);transition:opacity .3s ease}.choice-selector.choice-submitted{opacity:.7}.choice-prompt{margin:0 0 var(--space-3, .75em) 0;font-weight:500;color:var(--color-primary, #1a1a1a);font-size:var(--text-base, 1em)}.choice-options{display:flex;flex-wrap:wrap;gap:var(--space-2, .5em)}.choice-layout-buttons .choice-option{flex:1 1 auto;min-width:100px}.choice-layout-chips .choice-option{flex:0 0 auto}.choice-layout-list{flex-direction:column}.choice-layout-list .choice-option{width:100%}.choice-option{display:flex;align-items:center;gap:var(--space-2, .5em);padding:var(--space-2, .5em) var(--space-3, .75em);background:var(--color-white, #ffffff);border:2px solid var(--color-gray-200, #e5e3e0);border-radius:var(--radius-md, 8px);cursor:pointer;transition:all .2s ease;font-family:inherit;font-size:var(--text-sm, .875em);color:var(--color-primary, #1a1a1a)}.choice-option:hover:not(:disabled){border-color:var(--color-accent, #c45d3a);background:var(--color-accent-light, #f5ebe7)}.choice-option.selected{border-color:var(--color-accent, #c45d3a);background:var(--color-accent, #c45d3a);color:var(--color-white, #ffffff)}.choice-option:disabled{cursor:default}.choice-icon{font-size:1.25em}.choice-label{font-weight:500}.choice-description{font-size:var(--text-xs, .75em);opacity:.7;margin-left:auto}.choice-actions{display:flex;gap:var(--space-2, .5em);margin-top:var(--space-3, .75em)}.choice-submit{padding:var(--space-2, .5em) var(--space-4, 1em);background:var(--color-accent, #c45d3a);color:var(--color-white, #ffffff);border:none;border-radius:var(--radius-md, 8px);cursor:pointer;font-weight:500;font-family:inherit;transition:background .2s ease}.choice-submit:hover:not(:disabled){background:var(--color-accent-dark, #a84d2f)}.choice-submit:disabled{opacity:.5;cursor:not-allowed}.choice-skip{padding:var(--space-2, .5em) var(--space-3, .75em);background:transparent;color:var(--color-gray-500, #71706d);border:none;cursor:pointer;font-size:var(--text-sm, .875em);font-family:inherit;margin-top:var(--space-2, .5em)}.choice-skip:hover{color:var(--color-primary, #1a1a1a);text-decoration:underline}.message-cart-action{display:flex;flex-direction:column;gap:var(--space-2, .5em);margin-top:var(--space-2, .5em)}.cart-action-loading{display:flex;align-items:center;gap:var(--space-2, .5em);padding:var(--space-3, .75em) var(--space-4, 1em);background:var(--color-sand, #f5f3f0);border-radius:var(--radius-md, 8px);font-size:var(--text-sm, .875em);color:var(--color-gray-600, #5c5a57)}.cart-action-spinner{width:16px;height:16px;border:2px solid var(--color-stone, #e5e2dd);border-top-color:var(--color-accent, #c45d3a);border-radius:50%;animation:cart-spinner .8s linear infinite}@keyframes cart-spinner{to{transform:rotate(360deg)}}.cart-loading-indicator{display:flex;align-items:center;gap:8px;padding:12px 0;font-size:.85em;color:var(--color-gray-600, #5c5a57)}.cart-action-button{display:flex;align-items:center;justify-content:center;gap:var(--space-2, .5em);padding:var(--space-3, .75em) var(--space-4, 1em);background:var(--color-primary, #1a1a1a);color:var(--color-white, #ffffff);border:none;border-radius:var(--radius-md, 8px);cursor:pointer;font-family:inherit;font-size:var(--text-sm, .875em);font-weight:500;transition:all .2s ease;width:fit-content}.cart-action-button:hover{background:var(--color-gray-800, #2d2d2d);transform:translateY(-1px)}.cart-action-button:active{transform:translateY(0)}.cart-confirmation{display:flex;flex-direction:column;border-radius:var(--radius-lg, 12px);border-bottom-right-radius:var(--radius-sm, 4px);max-width:280px;animation:cart-confirm-pop .3s ease;overflow:hidden}.cart-confirmation-top{display:flex;align-items:flex-start;gap:.625em;padding:.75em .875em .625em}.cart-confirmation.cart-success{background:linear-gradient(135deg,#e8f5e9,#f1f8e9);border:1px solid #c8e6c9}.cart-confirmation.cart-error{background:linear-gradient(135deg,#ffebee,#fce4ec);border:1px solid #ffcdd2;flex-direction:row;align-items:flex-start;gap:.625em;padding:.75em .875em}@keyframes cart-confirm-pop{0%{opacity:0;transform:scale(.95) translateY(5px)}to{opacity:1;transform:scale(1) translateY(0)}}.cart-confirmation-icon{flex-shrink:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;background:#4caf50;border-radius:var(--radius-full, 9999px);color:#fff;margin-top:1px}.cart-confirmation-icon.cart-error-icon{background:#ef5350}.cart-confirmation-details{display:flex;flex-direction:column;gap:2px;min-width:0}.cart-confirmation-label{font-size:var(--text-xs, .75em);font-weight:600;color:#2e7d32;text-transform:uppercase;letter-spacing:.02em}.cart-confirmation-label.cart-error-label{color:#c62828}.cart-confirmation-product{font-size:var(--text-sm, .875em);font-weight:500;color:var(--color-primary, #1a1a1a);line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.cart-confirmation-variants{font-size:var(--text-xs, .75em);color:var(--color-gray-600, #5c5a57);margin-top:2px}.cart-confirmation-view-cart{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;font-size:var(--text-sm, .875em);font-weight:600;color:#2e7d32;background:#2e7d320f;border:none;border-top:1px solid rgba(46,125,50,.1);padding:9px 1em;cursor:pointer;font-family:inherit;transition:background .15s ease}.cart-confirmation-view-cart:hover{background:#2e7d3221}.cart-confirmation-arrow{display:inline-block;transition:transform .15s ease}.cart-confirmation-view-cart:hover .cart-confirmation-arrow{transform:translate(2px)}.cart-confirmation-error-message{font-size:var(--text-xs, .75em);color:#c62828;margin-top:2px;line-height:1.3}
