/* London Baby 2026 - Ask Chat complete mobile rebuild
   Purpose: restore mobile functionality and make Ask Chat quick actions match the main header buttons. */
:root{
  --lb-navy:#071326;
  --lb-muted:#667186;
  --lb-baby-gold:#c99a2e;
  --lb-glass-gold:rgba(201,154,46,.62);
  --lb-glass-bg:rgba(255,255,255,.78);
  --lb-glass-bg-strong:rgba(255,255,255,.92);
}

html body .ask-chat-backdrop:not([hidden]){
  position:fixed!important;
  inset:0!important;
  z-index:2147482500!important;
  display:block!important;
  background:
    radial-gradient(circle at 18% 0%,rgba(255,255,255,.98),transparent 40%),
    radial-gradient(circle at 86% 18%,rgba(206,226,240,.82),transparent 42%),
    linear-gradient(180deg,#f4fbff 0%,#e6f2f9 48%,#d3dfe8 100%)!important;
  overflow:hidden!important;
  -webkit-overflow-scrolling:touch!important;
  touch-action:pan-y!important;
}

html body .ask-chat-panel{
  height:var(--lb-chat-vv-height,100dvh)!important;
  min-height:var(--lb-chat-vv-height,100dvh)!important;
  max-height:var(--lb-chat-vv-height,100dvh)!important;
  width:100%!important;
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr) auto auto!important;
  background:transparent!important;
  overflow:hidden!important;
}

html body .ask-chat-header{
  position:relative!important;
  z-index:30!important;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:space-between!important;
  gap:14px!important;
  padding:calc(18px + env(safe-area-inset-top)) 28px 24px!important;
  min-height:calc(146px + env(safe-area-inset-top))!important;
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(244,250,253,.82))!important;
  border-bottom:1px solid rgba(201,154,46,.42)!important;
  box-shadow:0 12px 34px rgba(55,74,96,.08)!important;
  pointer-events:auto!important;
}

html body .ask-chat-header > div:first-child{min-width:0!important;}
html body .ask-chat-header .eyebrow{
  margin:0 0 6px!important;
  color:rgba(7,19,38,.54)!important;
  font-size:clamp(13px,3.45vw,17px)!important;
  font-weight:950!important;
  letter-spacing:.18em!important;
  line-height:1.06!important;
  text-transform:uppercase!important;
}
html body .ask-chat-header h2{
  margin:0!important;
  color:var(--lb-navy)!important;
  font-size:clamp(48px,12vw,70px)!important;
  font-weight:950!important;
  line-height:.9!important;
  letter-spacing:-.075em!important;
}
html body .ask-chat-header-actions{
  position:relative!important;
  z-index:60!important;
  display:flex!important;
  gap:14px!important;
  align-items:center!important;
  flex:0 0 auto!important;
  pointer-events:auto!important;
}
html body .ask-chat-new,
html body .ask-chat-close{
  position:relative!important;
  z-index:70!important;
  width:78px!important;
  height:78px!important;
  min-width:78px!important;
  min-height:78px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:999px!important;
  border:1.5px solid var(--lb-glass-gold)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(235,245,252,.78))!important;
  color:var(--lb-navy)!important;
  font-family:inherit!important;
  font-weight:950!important;
  box-shadow:0 14px 32px rgba(43,61,82,.12),inset 0 1px 0 rgba(255,255,255,.96)!important;
  pointer-events:auto!important;
  touch-action:manipulation!important;
  cursor:pointer!important;
  -webkit-tap-highlight-color:transparent!important;
}
html body .ask-chat-new{font-size:24px!important;}
html body .ask-chat-close{font-size:54px!important;font-weight:750!important;padding-bottom:6px!important;}
html body .ask-chat-new:active,
html body .ask-chat-close:active{transform:scale(.975)!important;}

html body .ask-chat-body{
  min-height:0!important;
  overflow-y:auto!important;
  -webkit-overflow-scrolling:touch!important;
  display:flex!important;
  flex-direction:column!important;
  gap:14px!important;
  padding:26px 28px 22px!important;
  scroll-padding-bottom:28px!important;
  overscroll-behavior:contain!important;
}
html body .ask-chat-message{
  width:fit-content!important;
  max-width:min(88%,680px)!important;
  border-radius:24px!important;
  padding:18px 20px!important;
  font-size:clamp(17px,4.2vw,24px)!important;
  font-weight:850!important;
  line-height:1.22!important;
  letter-spacing:-.02em!important;
  white-space:pre-wrap!important;
}
html body .ask-chat-message.ask-chat-assistant{
  align-self:flex-start!important;
  background:rgba(255,255,255,.86)!important;
  border:1.5px solid var(--lb-glass-gold)!important;
  color:var(--lb-navy)!important;
  box-shadow:0 16px 34px rgba(42,61,83,.10),inset 0 1px 0 rgba(255,255,255,.92)!important;
}
html body .ask-chat-message.ask-chat-user{
  align-self:flex-end!important;
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(236,245,251,.82))!important;
  border:1.5px solid var(--lb-glass-gold)!important;
  color:var(--lb-navy)!important;
  box-shadow:0 14px 30px rgba(42,61,83,.11),inset 0 1px 0 rgba(255,255,255,.92)!important;
}

/* Remove the old in-message duplicate prompt grid entirely. */
html body .ask-chat-body .ask-chat-prompts{display:none!important;}

/* Fixed four-card prompt grid, matching the main header action-button style guide. */
html body .ask-chat-prompt-dock{
  position:relative!important;
  z-index:20!important;
  width:calc(100% - 56px)!important;
  max-width:760px!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px!important;
  padding:16px 0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
html body .ask-chat-prompt-dock .ask-chat-quick-card{
  display:grid!important;
  grid-template-rows:auto auto!important;
  align-content:center!important;
  justify-items:center!important;
  gap:10px!important;
  min-height:112px!important;
  padding:16px 12px!important;
  border-radius:24px!important;
  border:1.5px solid var(--lb-glass-gold)!important;
  background:
    radial-gradient(circle at 50% 0%,rgba(255,255,255,.96),rgba(255,255,255,0) 42%),
    linear-gradient(180deg,rgba(255,255,255,.88),rgba(230,239,247,.72))!important;
  box-shadow:0 18px 36px rgba(43,61,82,.11),inset 0 1px 0 rgba(255,255,255,.96)!important;
  color:var(--lb-navy)!important;
  font-family:inherit!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  cursor:pointer!important;
  touch-action:manipulation!important;
  -webkit-tap-highlight-color:transparent!important;
}
html body .ask-chat-prompt-dock .ask-chat-quick-card:active{transform:scale(.985)!important;}
html body .ask-chat-prompt-dock .ask-chat-quick-icon{
  display:grid!important;
  place-items:center!important;
  width:42px!important;
  height:42px!important;
  border-radius:999px!important;
  background:radial-gradient(circle at 50% 28%,rgba(255,255,255,.96),rgba(230,238,246,.74))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.96),0 8px 18px rgba(43,61,82,.10)!important;
  color:var(--lb-navy)!important;
}
html body .ask-chat-prompt-dock .ask-chat-quick-icon svg{
  width:24px!important;
  height:24px!important;
  display:block!important;
  stroke:currentColor!important;
  stroke-width:2.25!important;
  fill:none!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
html body .ask-chat-prompt-dock .ask-chat-quick-label{
  display:block!important;
  color:var(--lb-navy)!important;
  font-size:clamp(12px,3.1vw,15px)!important;
  font-weight:950!important;
  letter-spacing:.055em!important;
  line-height:1.05!important;
  text-transform:uppercase!important;
  text-align:center!important;
  white-space:normal!important;
}

html body .ask-chat-form{
  position:relative!important;
  z-index:25!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:12px!important;
  width:100%!important;
  padding:14px 28px calc(14px + env(safe-area-inset-bottom))!important;
  background:linear-gradient(180deg,rgba(240,248,252,.76),rgba(230,240,247,.96))!important;
  border-top:1px solid rgba(201,154,46,.34)!important;
  box-shadow:0 -20px 40px rgba(54,72,92,.10)!important;
}
html body .ask-chat-form textarea{
  min-height:60px!important;
  max-height:112px!important;
  resize:none!important;
  border-radius:24px!important;
  border:1.5px solid var(--lb-glass-gold)!important;
  background:rgba(255,255,255,.88)!important;
  color:var(--lb-navy)!important;
  padding:15px 18px!important;
  font-family:inherit!important;
  font-size:20px!important;
  font-weight:850!important;
  line-height:1.18!important;
  outline:none!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.92),0 10px 24px rgba(43,61,82,.08)!important;
}
html body .ask-chat-form textarea::placeholder{color:rgba(7,19,38,.36)!important;}
html body .ask-chat-form button{
  min-width:92px!important;
  min-height:60px!important;
  border-radius:24px!important;
  border:1.5px solid var(--lb-glass-gold)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(237,246,252,.76))!important;
  color:var(--lb-navy)!important;
  font-family:inherit!important;
  font-size:20px!important;
  font-weight:950!important;
  box-shadow:0 10px 24px rgba(43,61,82,.10),inset 0 1px 0 rgba(255,255,255,.92)!important;
}
html body .ask-chat-form button:disabled{opacity:.58!important;}

html body .ask-chat-backdrop.keyboard-active .ask-chat-header{
  padding-top:calc(10px + env(safe-area-inset-top))!important;
  padding-bottom:12px!important;
  min-height:calc(104px + env(safe-area-inset-top))!important;
}
html body .ask-chat-backdrop.keyboard-active .ask-chat-header h2{font-size:clamp(34px,9vw,52px)!important;}
html body .ask-chat-backdrop.keyboard-active .ask-chat-header .eyebrow{font-size:12px!important;}
html body .ask-chat-backdrop.keyboard-active .ask-chat-new,
html body .ask-chat-backdrop.keyboard-active .ask-chat-close{
  width:68px!important;height:68px!important;min-width:68px!important;min-height:68px!important;
}
html body .ask-chat-backdrop.keyboard-active .ask-chat-prompt-dock{display:none!important;}
html body .ask-chat-backdrop.keyboard-active .ask-chat-body{padding-top:18px!important;padding-bottom:18px!important;}

@media (max-width:390px){
  html body .ask-chat-header{padding-left:22px!important;padding-right:22px!important;gap:10px!important;}
  html body .ask-chat-new,html body .ask-chat-close{width:70px!important;height:70px!important;min-width:70px!important;min-height:70px!important;}
  html body .ask-chat-close{font-size:48px!important;}
  html body .ask-chat-prompt-dock{width:calc(100% - 44px)!important;gap:10px!important;}
  html body .ask-chat-prompt-dock .ask-chat-quick-card{min-height:104px!important;padding:14px 8px!important;}
}
