/* Smart Menu 1.2 — Voice First customer UX */
:root{--vf-accent:#14B8A6;--vf-accent-rgb:20,184,166;--vf-safe-bottom:max(18px,env(safe-area-inset-bottom));}
body.voice-first-active{padding-bottom:max(92px,calc(74px + env(safe-area-inset-bottom)));}
body.voice-first-active [data-assistant]{display:none!important;}

/* Always-easy-to-reach microphone */
.cl-ai-fab,.vf-fab{position:fixed!important;z-index:690!important;bottom:calc(78px + var(--vf-safe-bottom))!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:8px!important;min-width:64px!important;height:64px!important;padding:0 18px!important;border:1px solid rgba(255,255,255,.30)!important;border-radius:999px!important;background:linear-gradient(145deg,var(--vf-accent),color-mix(in srgb,var(--vf-accent),#064e3b 55%))!important;color:#fff!important;box-shadow:0 16px 45px rgba(0,0,0,.34),0 0 0 6px color-mix(in srgb,var(--vf-accent),transparent 82%),0 0 30px color-mix(in srgb,var(--vf-accent),transparent 40%)!important;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);font:inherit!important;cursor:pointer;transition:transform .22s ease,box-shadow .22s ease,filter .22s ease!important;}
.cl-ai-fab:hover,.vf-fab:hover{transform:translateY(-2px) scale(1.02);filter:brightness(1.07);}
.cl-ai-fab:active,.vf-fab:active{transform:scale(.96);}
.cl-ai-fab>span,.vf-fab>span{font-size:27px;line-height:1;}
.cl-ai-fab>strong,.vf-fab>strong{font-size:13px;font-weight:850;white-space:nowrap;}
body.vf-pos-bottom-center .cl-ai-fab,body.vf-pos-bottom-center .vf-fab{left:50%!important;right:auto!important;transform:translateX(-50%);}
body.vf-pos-bottom-center .cl-ai-fab:hover,body.vf-pos-bottom-center .vf-fab:hover{transform:translateX(-50%) translateY(-2px) scale(1.02);}
body.vf-pos-bottom-center .cl-ai-fab:active,body.vf-pos-bottom-center .vf-fab:active{transform:translateX(-50%) scale(.96);}
body.vf-pos-bottom-left .cl-ai-fab,body.vf-pos-bottom-left .vf-fab{left:18px!important;right:auto!important;}
body.vf-pos-bottom-right .cl-ai-fab,body.vf-pos-bottom-right .vf-fab{right:18px!important;left:auto!important;}
body.vf-size-compact .cl-ai-fab,body.vf-size-compact .vf-fab{height:54px!important;min-width:54px!important;padding:0 14px!important;}
body.vf-size-large .cl-ai-fab,body.vf-size-large .vf-fab{height:72px!important;min-width:72px!important;padding:0 21px!important;}
.cl-inline-ai{background:color-mix(in srgb,var(--vf-accent),#07110f 30%)!important;color:#fff!important;border-color:color-mix(in srgb,var(--vf-accent),transparent 45%)!important;box-shadow:0 0 0 4px color-mix(in srgb,var(--vf-accent),transparent 88%)!important;}

/* Shared premium bottom sheet */
.cl-ai-hub,.vf-hub{position:fixed!important;inset:0!important;z-index:720!important;pointer-events:none!important;visibility:hidden;opacity:0;transition:opacity .2s ease,visibility .2s ease;}
.cl-ai-hub.is-open,.vf-hub.is-open{pointer-events:auto!important;visibility:visible;opacity:1;}
.cl-ai-backdrop,.vf-backdrop{position:absolute!important;inset:0!important;background:rgba(3,8,9,.68)!important;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);}
.cl-ai-sheet,.vf-sheet{position:absolute!important;left:50%!important;bottom:0!important;width:min(680px,100%)!important;max-height:min(86dvh,820px)!important;overflow:auto!important;transform:translate(-50%,24px)!important;opacity:.98!important;border:1px solid rgba(255,255,255,.12)!important;border-bottom:0!important;border-radius:30px 30px 0 0!important;background:linear-gradient(180deg,rgba(14,24,24,.98),rgba(5,12,12,.995))!important;color:#fff!important;box-shadow:0 -30px 90px rgba(0,0,0,.5)!important;padding:12px 18px calc(24px + env(safe-area-inset-bottom))!important;transition:transform .28s cubic-bezier(.22,1,.36,1)!important;}
.cl-ai-hub.is-open .cl-ai-sheet,.vf-hub.is-open .vf-sheet{transform:translate(-50%,0)!important;}
.vf-sheet-head{display:flex;align-items:center;justify-content:space-between;padding:4px 2px 8px;}
.vf-sheet-head div{display:grid;gap:3px}.vf-sheet-head small{color:rgba(255,255,255,.56);font-size:11px}.vf-sheet-head strong{font-size:20px}.vf-close{width:40px;height:40px;border:1px solid rgba(255,255,255,.14);border-radius:14px;background:rgba(255,255,255,.06);color:#fff;font-size:24px;cursor:pointer;}
.cl-sheet-handle,.vf-handle{width:48px;height:5px;border-radius:99px;background:rgba(255,255,255,.2);margin:2px auto 10px;}
.cl-ai-head{padding:2px 4px 10px!important}.cl-ai-head>div>span{color:var(--vf-accent)!important}.cl-ai-head h2{font-size:22px!important;margin-top:3px!important}.cl-ai-tabs{margin:4px 0 12px!important;padding:4px!important;border-radius:18px!important;background:rgba(255,255,255,.045)!important}.cl-ai-tabs button{border-radius:14px!important}.cl-ai-tabs button.is-active{background:color-mix(in srgb,var(--vf-accent),transparent 78%)!important;border-color:color-mix(in srgb,var(--vf-accent),transparent 48%)!important;}
.cl-ai-tab-icon{color:var(--vf-accent)!important;}

/* The voice experience */
[data-ai-voice],[data-basic-voice]{border:0!important;background:transparent!important;box-shadow:none!important;}
.cl-voice-intro,.voice-hero-card{position:relative!important;display:flex!important;align-items:center!important;justify-content:center!important;flex-direction:column!important;text-align:center!important;gap:12px!important;padding:16px 12px 8px!important;background:transparent!important;border:0!important;}
.cl-voice-intro>div,.voice-copy{display:grid;gap:6px;text-align:center!important;}
.cl-voice-intro h3,.voice-copy h2{font-size:24px!important;margin:0!important;color:#fff!important;}
.cl-voice-intro p,.voice-copy p{margin:0 auto!important;max-width:470px;color:rgba(255,255,255,.66)!important;line-height:1.7!important;}
.cl-voice-orb,.voice-hero-card:before{display:grid;place-items:center;width:104px;height:104px;border-radius:50%;background:radial-gradient(circle at 34% 28%,rgba(255,255,255,.30),transparent 22%),linear-gradient(145deg,color-mix(in srgb,var(--vf-accent),#fff 8%),color-mix(in srgb,var(--vf-accent),#012a27 52%));border:1px solid rgba(255,255,255,.34);color:#fff;font-size:40px;box-shadow:0 0 0 9px color-mix(in srgb,var(--vf-accent),transparent 88%),0 0 0 18px color-mix(in srgb,var(--vf-accent),transparent 94%),0 18px 60px color-mix(in srgb,var(--vf-accent),transparent 55%);animation:vfBreathe 2.4s ease-in-out infinite;}
.voice-hero-card:before{content:'🎙';}
.voice-hero-card .voice-actions{margin-top:6px;}
@keyframes vfBreathe{0%,100%{transform:scale(.97);box-shadow:0 0 0 8px color-mix(in srgb,var(--vf-accent),transparent 89%),0 0 0 17px color-mix(in srgb,var(--vf-accent),transparent 95%),0 18px 50px color-mix(in srgb,var(--vf-accent),transparent 65%)}50%{transform:scale(1.03);box-shadow:0 0 0 12px color-mix(in srgb,var(--vf-accent),transparent 86%),0 0 0 25px color-mix(in srgb,var(--vf-accent),transparent 96%),0 18px 72px color-mix(in srgb,var(--vf-accent),transparent 48%)}}
.ai-voice-state{margin:8px auto 14px!important;max-width:500px!important;border:1px solid rgba(255,255,255,.1)!important;background:rgba(255,255,255,.045)!important;border-radius:18px!important;padding:12px 14px!important;}
.ai-voice-state-dot{background:var(--vf-accent)!important;box-shadow:0 0 16px var(--vf-accent)!important;}
.ai-voice-state[data-state="listening"],.ai-voice-state[data-stage="listening"]{border-color:color-mix(in srgb,var(--vf-accent),transparent 45%)!important;background:color-mix(in srgb,var(--vf-accent),transparent 91%)!important;}
.voice-mic-button{margin:5px auto!important;min-width:178px!important;min-height:56px!important;border:1px solid color-mix(in srgb,var(--vf-accent),#fff 28%)!important;border-radius:999px!important;background:linear-gradient(145deg,var(--vf-accent),color-mix(in srgb,var(--vf-accent),#064e3b 58%))!important;color:#fff!important;box-shadow:0 14px 38px color-mix(in srgb,var(--vf-accent),transparent 68%)!important;font-weight:850!important;}
.voice-mic-button.is-listening{background:linear-gradient(145deg,#fb5b5b,#c62424)!important;border-color:#ffaaaa!important;box-shadow:0 0 0 8px rgba(239,68,68,.12),0 14px 38px rgba(239,68,68,.27)!important;}
.ai-voice-conversation{display:grid!important;gap:8px!important;margin:12px 0!important;}
.ai-voice-conversation[hidden]{display:none!important}.ai-voice-bubble{border-radius:17px!important;padding:10px 13px!important;background:rgba(255,255,255,.055)!important;border:1px solid rgba(255,255,255,.08)!important;}.ai-voice-bubble.is-assistant{border-color:color-mix(in srgb,var(--vf-accent),transparent 72%)!important;background:color-mix(in srgb,var(--vf-accent),transparent 94%)!important;}
.assistant-product-card{border-radius:18px!important;overflow:hidden!important;border:1px solid rgba(255,255,255,.1)!important;background:rgba(255,255,255,.055)!important;}
.assistant-product-actions button{background:var(--vf-accent)!important;color:#fff!important;border-radius:12px!important;}

/* Black Diamond becomes the same mobile bottom-sheet experience instead of an inline AI block. */
body.voice-first-active .bd-ai-experience{margin:0!important;padding:6px 0 0!important;background:transparent!important;border:0!important;box-shadow:none!important;}
body.voice-first-active .bd-ai-experience-head{display:none!important;}
body.voice-first-active .bd-ai-mode-tabs{margin:2px 0 12px!important;padding:4px!important;background:rgba(255,255,255,.045)!important;border-radius:18px!important;}
body.voice-first-active .bd-ai-mode-tabs button{border-radius:14px!important;}
body.voice-first-active .bd-ai-mode-tabs button.is-active{background:color-mix(in srgb,var(--vf-accent),transparent 80%)!important;border-color:color-mix(in srgb,var(--vf-accent),transparent 55%)!important;}

/* Autoplay-safe premium welcome */
.vf-welcome-unlock{position:fixed;z-index:760;left:50%;bottom:calc(148px + var(--vf-safe-bottom));width:min(92vw,440px);transform:translateX(-50%) translateY(12px);opacity:0;pointer-events:none;transition:.24s ease;display:flex;align-items:center;gap:12px;padding:12px;border:1px solid color-mix(in srgb,var(--vf-accent),transparent 45%);border-radius:20px;background:rgba(6,15,15,.94);color:#fff;box-shadow:0 20px 60px rgba(0,0,0,.42);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);}
.vf-welcome-unlock.is-visible{opacity:1;transform:translateX(-50%) translateY(0);pointer-events:auto;}
.vf-welcome-unlock .vf-welcome-icon{flex:0 0 48px;width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:color-mix(in srgb,var(--vf-accent),transparent 72%);font-size:23px;}
.vf-welcome-copy{min-width:0;flex:1;display:grid;gap:2px}.vf-welcome-copy strong{font-size:13px}.vf-welcome-copy small{color:rgba(255,255,255,.6);font-size:11px}.vf-welcome-play{border:0;border-radius:13px;background:var(--vf-accent);color:#fff;padding:10px 12px;font-weight:800;cursor:pointer;white-space:nowrap}.vf-welcome-dismiss{border:0;background:transparent;color:rgba(255,255,255,.62);font-size:22px;cursor:pointer;padding:4px;}
body.vf-welcome-speaking .cl-ai-fab,body.vf-welcome-speaking .vf-fab{animation:vfWelcomePulse 1.15s ease-in-out infinite;}
@keyframes vfWelcomePulse{0%,100%{box-shadow:0 16px 45px rgba(0,0,0,.34),0 0 0 6px color-mix(in srgb,var(--vf-accent),transparent 82%)}50%{box-shadow:0 16px 45px rgba(0,0,0,.34),0 0 0 14px color-mix(in srgb,var(--vf-accent),transparent 88%),0 0 42px var(--vf-accent)}}

/* Keep fixed cart/nav reachable; mic floats above them. */
body.voice-first-active .cl-bottom-nav{z-index:640!important;}
body.voice-first-active .cl-cart-bar,body.voice-first-active .bd-cart-fab{z-index:635!important;}

@media (max-width:720px){
  .cl-ai-sheet,.vf-sheet{border-radius:28px 28px 0 0!important;padding-left:14px!important;padding-right:14px!important;max-height:88dvh!important;}
  .cl-ai-fab,.vf-fab{bottom:calc(72px + var(--vf-safe-bottom))!important;height:60px!important;min-width:60px!important;padding:0 16px!important;}
  .cl-ai-fab>strong,.vf-fab>strong{display:none;}
  body.vf-pos-bottom-left .cl-ai-fab,body.vf-pos-bottom-left .vf-fab{left:14px!important}
  body.vf-pos-bottom-right .cl-ai-fab,body.vf-pos-bottom-right .vf-fab{right:14px!important}
  .vf-welcome-unlock{bottom:calc(140px + var(--vf-safe-bottom));}
}
@media (prefers-reduced-motion:reduce){.cl-ai-fab,.vf-fab,.cl-ai-sheet,.vf-sheet,.cl-voice-orb,.voice-hero-card:before,.vf-welcome-unlock{animation:none!important;transition:none!important;}}
