/* Gippi 5.1 — glass, conversation and mascot motion. Everything stays inside the dock. */
.gip-smartdock.gippi-conversation {
  --gippi-ink:#173e42; --gippi-muted:#526d71; --gippi-teal:#086970;
  --gippi-line:rgba(35,105,108,.15); --gippi-paper:rgba(255,255,255,.91);
  --gippi-shadow:0 24px 70px rgba(17,58,64,.2),0 4px 14px rgba(17,58,64,.08);
  font-family:inherit; color:var(--gippi-ink); bottom:max(18px,env(safe-area-inset-bottom));
}
.gippi-conversation [hidden] { display:none!important; }
.gippi-conversation .gip-assistant__mascot { display:none!important; }
.gippi-conversation .gip-smartdock__panel { width:min(466px,calc(100vw - 36px)); max-height:calc(100dvh - 112px); bottom:calc(100% + 14px); }
.gippi-conversation .gip-assistant {
  display:flex!important; flex-direction:column; min-height:350px; max-height:min(750px,calc(100dvh - 112px))!important;
  overflow:hidden; border:1px solid rgba(255,255,255,.95); border-radius:28px;
  background:radial-gradient(ellipse at 100% 0%,rgba(241,214,228,.65),transparent 48%),radial-gradient(ellipse at 0% 90%,rgba(196,232,222,.6),transparent 54%),rgba(244,251,250,.91);
  backdrop-filter:blur(26px) saturate(145%); -webkit-backdrop-filter:blur(26px) saturate(145%); box-shadow:var(--gippi-shadow),inset 0 1px 0 #fff;
}
.gippi-conversation .gip-assistant__header {
  display:flex; align-items:center; flex:0 0 auto; padding:12px 18px!important; gap:12px;
  color:var(--gippi-ink); background:linear-gradient(120deg,rgba(255,255,255,.83),rgba(255,255,255,.35));
  border-bottom:1px solid rgba(255,255,255,.8);
}
.gippi-conversation .gip-assistant__header > div:not(.gippi-header-avatar) { flex:1; min-width:0; }
.gippi-conversation .gip-assistant__eyebrow { font-size:10px; font-weight:700; letter-spacing:.065em; line-height:1.3; opacity:1; color:var(--gippi-teal); text-transform:uppercase; }
.gippi-conversation .gip-assistant__title { margin:1px 0 4px; max-width:none; font-size:24px; font-weight:800; letter-spacing:-.025em; line-height:1.1; }
.gippi-conversation .gippi-presence { color:var(--gippi-muted); font-size:10px; line-height:1.4; }
.gippi-conversation .gippi-presence::before { content:''; display:inline-block; width:5px; height:5px; margin-right:5px; border-radius:50%; background:#27966d; vertical-align:1px; }
.gippi-conversation .gip-assistant__close { flex:0 0 36px; width:36px; height:36px; font-size:26px; color:var(--gippi-ink)!important; background:rgba(255,255,255,.63); border:1px solid rgba(255,255,255,.95); box-shadow:0 2px 8px rgba(30,79,80,.04); }
.gippi-conversation .gip-assistant__close:hover { background:#fff; transform:rotate(8deg); }
.gippi-conversation .gippi-avatar,
.gippi-conversation .gippi-header-avatar,
.gip-smartdock.gippi-conversation .gip-smartdock__assistant-avatar {
  position:relative; display:block; flex:0 0 auto; width:36px; height:36px; min-width:36px; overflow:hidden;
  border-radius:50%; border:1px solid rgba(255,255,255,.98); background:linear-gradient(135deg,#e3f6e6,#d7efe8 55%,#f5e2d5);
  box-shadow:0 3px 10px rgba(27,96,85,.12),inset 0 1px 0 #fff;
}
.gippi-conversation .gippi-header-avatar { width:52px; height:52px; min-width:52px; border-width:2px; }
.gippi-conversation .gippi-avatar img,
.gippi-conversation .gippi-header-avatar img,
.gip-smartdock.gippi-conversation .gip-smartdock__assistant-avatar img { position:absolute; width:240%; height:auto; max-width:none; left:-55%; top:-8%; pointer-events:none; transform-origin:45% 30%; }
.gippi-conversation .gip-assistant__body { flex:1 1 auto!important; min-height:0; padding:18px!important; max-height:none!important; overflow-y:auto!important; overscroll-behavior:contain; scrollbar-gutter:stable; scrollbar-width:thin; scrollbar-color:rgba(69,128,124,.26) transparent; background:transparent; color:var(--gippi-ink); }
.gippi-conversation .gippi-toolbar { display:flex; flex:0 0 auto; align-items:center; flex-wrap:wrap; justify-content:space-between; gap:0 10px; padding:1px 18px; border-bottom:1px solid var(--gippi-line); background:rgba(255,255,255,.36); }
.gippi-conversation .gippi-text-button { display:inline-flex; align-items:center; gap:5px; min-height:40px; padding:7px 2px; border:0; border-radius:7px; background:transparent; color:var(--gippi-teal)!important; font:inherit; font-size:11px; font-weight:650; line-height:1.4; text-align:left; cursor:pointer; box-shadow:none; }
.gippi-conversation .gippi-text-button:hover { color:#164a4e!important; text-decoration:underline; text-underline-offset:4px; }
.gippi-conversation .gippi-welcome { display:grid; grid-template-columns:minmax(0,1fr) 128px; align-items:center; gap:6px; margin:0 0 14px; padding:3px 0; color:var(--gippi-ink); }
.gippi-conversation .gippi-welcome-copy { grid-column:1; grid-row:1; min-width:0; z-index:1; }
.gippi-conversation .gippi-welcome-copy p { margin:0 0 8px; font-size:12px; line-height:1.55; color:var(--gippi-muted); }
.gippi-conversation .gippi-welcome-copy p:first-child { font-size:12px; font-weight:650; color:var(--gippi-teal); }
.gippi-conversation .gippi-welcome-title { margin:0 0 8px; font:inherit; font-size:23px; line-height:1.2; letter-spacing:-.025em; font-weight:750; color:var(--gippi-ink); }
.gippi-conversation .gippi-welcome-question { display:none; }
.gippi-conversation .gippi-welcome-scene { grid-column:2; grid-row:1; position:relative; display:flex; align-items:center; justify-content:center; height:132px; isolation:isolate; pointer-events:none; }
.gippi-conversation .gippi-welcome-scene::before { content:''; position:absolute; inset:16px -1px 11px; z-index:-1; border:1px solid rgba(255,255,255,.9); border-radius:46% 54% 55% 45%; background:radial-gradient(circle at 30% 22%,#fff8dc,rgba(184,228,209,.64) 65%,rgba(172,219,218,.25)); box-shadow:inset 0 1px 16px rgba(255,255,255,.6),0 12px 28px rgba(53,135,117,.09); transform:rotate(-7deg); }
.gippi-conversation .gippi-welcome-mascot { display:block; width:auto; height:128px; max-width:100%; object-fit:contain; position:relative; filter:drop-shadow(0 7px 4px rgba(38,85,68,.13)); transform-origin:50% 85%; }
.gippi-conversation .gippi-welcome-scene::after { content:'✦'; position:absolute; right:0; top:16px; color:#b47827; font-size:18px; transform:rotate(12deg); }
.gippi-conversation .gippi-welcome-scene > span { position:absolute; width:5px; height:5px; border-radius:50%; background:#72b4ad; bottom:20px; left:7px; }
.gippi-conversation.has-chat-started .gippi-welcome { display:none; }
.gippi-conversation .gippi-log { display:flex; flex-direction:column; gap:18px; }
.gippi-conversation .gippi-turn { display:flex; align-items:flex-start; gap:9px; min-width:0; max-width:100%; }
.gippi-conversation .gippi-turn > .gippi-avatar { margin-top:21px; }
.gippi-conversation .gippi-turn-content { flex:1; min-width:0; }
.gippi-conversation .gippi-author { display:block; margin:0 0 5px 2px; color:var(--gippi-muted); font-size:10px; line-height:1.5; font-weight:650; }
.gippi-conversation .gippi-turn--user { max-width:86%; align-self:flex-end; }
.gippi-conversation .gippi-turn--user .gippi-author { text-align:right; margin-right:3px; }
.gippi-conversation .gippi-bubble { padding:13px 15px; border:1px solid rgba(255,255,255,.95); border-radius:5px 19px 19px; background:var(--gippi-paper); color:var(--gippi-ink); box-shadow:0 3px 12px rgba(26,78,77,.055),inset 0 1px 0 #fff; font-size:14px; font-weight:400; line-height:1.65; white-space:pre-wrap; overflow-wrap:anywhere; }
.gippi-conversation .gippi-turn--user .gippi-bubble { border-color:rgba(255,255,255,.24); border-radius:19px 5px 19px 19px; background:linear-gradient(125deg,#126f75,#235b65); color:#fff; box-shadow:0 4px 13px rgba(26,84,87,.17),inset 0 1px 0 rgba(255,255,255,.16); }
.gippi-conversation .gippi-sources { display:grid; gap:8px; margin:9px 0 0; }
.gippi-conversation .gippi-source { display:flex; flex-direction:column; gap:5px; position:relative; padding:12px 14px; border:1px solid rgba(141,188,175,.6); border-radius:14px; background:linear-gradient(130deg,rgba(255,255,255,.96),rgba(231,246,239,.85)); color:var(--gippi-ink)!important; text-decoration:none!important; overflow-wrap:anywhere; box-shadow:0 3px 10px rgba(31,93,81,.04); transition:transform .18s,border-color .18s,background .18s; }
.gippi-conversation .gippi-source:hover { transform:translateY(-2px); border-color:#4a9e93; background:#fff; }
.gippi-conversation .gippi-source-caption { color:#526e68; font-size:10px; font-weight:650; line-height:1.4; letter-spacing:.025em; }
.gippi-conversation .gippi-source-title { font-size:13px; font-weight:750; line-height:1.45; }
.gippi-conversation .gippi-source-more { color:var(--gippi-teal); font-size:10px; line-height:1.4; font-weight:650; }
.gippi-conversation .gippi-actions { display:flex; flex-direction:column; gap:3px; margin-top:7px; }
.gippi-conversation .gippi-actions a { display:inline-flex; align-items:center; min-height:40px; padding:7px 3px; color:var(--gippi-teal)!important; font-size:12px; font-weight:650; line-height:1.45; text-decoration:underline; text-underline-offset:3px; overflow-wrap:anywhere; }
.gippi-conversation .gippi-suggestions { display:flex; flex-wrap:wrap; gap:8px; margin-top:14px; }
.gippi-conversation .gippi-suggestion { display:inline-flex; align-items:center; gap:8px; max-width:100%; min-height:44px; padding:10px 12px; border:1px solid rgba(128,176,171,.48); border-radius:15px; background:rgba(255,255,255,.7); color:var(--gippi-teal)!important; font:inherit; font-size:12px; font-weight:600; line-height:1.4; text-align:left; white-space:normal; overflow-wrap:anywhere; box-shadow:inset 0 1px 0 #fff,0 3px 7px rgba(21,75,73,.03); cursor:pointer; transition:transform .18s,background .18s,border-color .18s; }
.gippi-conversation .gippi-suggestion:hover { background:#fff; border-color:#5eaaa0; transform:translateY(-2px); }
.gippi-conversation:not(.has-chat-started) .gippi-suggestions { display:grid; grid-template-columns:1fr; gap:7px; margin-top:0; }
.gippi-conversation:not(.has-chat-started) .gippi-suggestion { width:100%; justify-content:flex-start; padding:8px 12px; }
.gippi-conversation:not(.has-chat-started) .gip-assistant__body { padding:14px!important; }
.gippi-conversation:not(.has-chat-started) .gippi-welcome { margin-bottom:6px; padding:0; }
.gippi-conversation .gippi-suggestion-arrow { display:none; }
.gippi-conversation:not(.has-chat-started) .gippi-suggestion-arrow { display:inline; margin-left:auto; font-size:15px; color:#6c938d; }
.gippi-conversation .gippi-suggestion-icon { display:inline-flex; align-items:center; justify-content:center; flex:0 0 27px; width:27px; height:27px; border-radius:9px; background:rgba(222,240,231,.7); font-size:17px; line-height:1; }
.gippi-conversation .gippi-request-status { margin-top:14px; color:var(--gippi-muted); font-size:12px; line-height:1.5; }
.gippi-conversation .gippi-request-status:empty { display:none; }
.gippi-conversation .gippi-typing { display:flex; gap:9px; align-items:center; }
.gippi-conversation .gippi-typing .gippi-avatar { width:36px; height:36px; }
.gippi-conversation .gippi-typing .gippi-avatar img { width:210%; left:-55%; top:-15%; }
.gippi-conversation .gippi-typing-content { display:flex; align-items:center; flex-wrap:wrap; gap:8px; padding:11px 14px; border:1px solid rgba(255,255,255,.95); border-radius:5px 16px 16px; background:rgba(255,255,255,.83); box-shadow:0 2px 8px rgba(23,75,72,.05); font-size:11px; }
.gippi-conversation .gippi-typing-dots { display:inline-flex; gap:4px; }
.gippi-conversation .gippi-typing-dots > span { width:4px; height:4px; border-radius:50%; background:#377d75; animation:gippiDot 1s ease-in-out 4; }
.gippi-conversation .gippi-typing-dots > span:nth-child(2) { animation-delay:.12s; }
.gippi-conversation .gippi-typing-dots > span:nth-child(3) { animation-delay:.24s; }
.gippi-conversation .gippi-notice { margin:8px 2px 0; color:var(--gippi-muted); font-size:10px; line-height:1.5; }
.gippi-conversation .gippi-error { margin-top:12px; padding:12px; border:1px solid #dcc59f; border-radius:13px; background:rgba(255,249,237,.95); color:#664d24; font-size:13px; line-height:1.5; }
.gippi-conversation .gippi-error p { margin:0 0 9px; }
.gippi-conversation .gippi-persistence-note { margin:15px 0 0; color:var(--gippi-muted); font-size:9px; line-height:1.5; text-align:center; }
.gippi-conversation:not(.has-chat-started) .gippi-persistence-note { display:none; }
.gippi-conversation .gip-assistant__composer { flex:0 0 auto; padding:12px 16px 8px!important; border-top:1px solid rgba(255,255,255,.9)!important; background:rgba(255,255,255,.62)!important; box-shadow:0 -5px 18px rgba(41,97,89,.035)!important; }
.gippi-conversation .gip-assistant__composer label { display:block; margin:0 0 7px; color:var(--gippi-muted); font-size:10px; font-weight:650; letter-spacing:.055em; line-height:1.4; }
.gippi-conversation .gip-assistant__search-row { display:flex; align-items:flex-end; gap:8px; }
.gippi-conversation .gippi-input { display:block; flex:1 1 auto; width:100%; min-width:0; min-height:51px; max-height:130px; margin:0; padding:10px 12px; border:1px solid rgba(85,146,143,.35); border-radius:16px; background:rgba(255,255,255,.87); color:var(--gippi-ink)!important; font:inherit; font-size:16px; line-height:1.45; resize:vertical; box-shadow:inset 0 2px 5px rgba(20,71,74,.025); }
.gippi-conversation .gippi-input::placeholder { color:#668083; opacity:1; }
.gippi-conversation .gip-assistant__search-row .gippi-send { flex:0 0 auto; min-width:72px; height:46px!important; margin:0; padding:0 11px; border:1px solid rgba(255,255,255,.25); border-radius:15px!important; background:linear-gradient(135deg,#0a7376,#215e66); color:#fff!important; font:inherit; font-size:11px; font-weight:700; box-shadow:0 4px 9px rgba(27,98,99,.15); cursor:pointer; }
.gippi-conversation .gippi-send:hover { filter:brightness(1.1); }
.gippi-conversation .gip-assistant__hint { margin-top:6px; color:var(--gippi-muted); font-size:9px; line-height:1.5; }
.gippi-conversation .gip-assistant__footer { flex:0 0 auto; padding:5px 16px 10px; border:0; background:rgba(255,255,255,.62); color:var(--gippi-muted); font-size:9px; line-height:1.5; text-align:center; }
.gippi-conversation .gippi-summary { font-size:13px; line-height:1.6; }
.gippi-conversation .gippi-summary h3 { margin:12px 0; color:var(--gippi-ink); font:inherit; font-size:23px; font-weight:750; letter-spacing:-.025em; line-height:1.25; }
.gippi-conversation .gippi-summary p { margin:0 0 14px; }
.gippi-conversation .gippi-summary label { display:block; margin-bottom:6px; font-size:12px; font-weight:700; }
.gippi-conversation .gippi-summary-text { display:block; width:100%; min-height:170px; max-height:360px; padding:13px; border:1px solid #a6c5c8; border-radius:16px; background:rgba(255,255,255,.88); color:var(--gippi-ink); font:inherit; font-size:16px; line-height:1.55; resize:vertical; }
.gippi-conversation .gippi-summary-controls { display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin:12px 0; }
.gippi-conversation .gippi-secondary-button { display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:9px 13px; border:1px solid #086b70; border-radius:13px; background:#086b70; color:#fff!important; font:inherit; font-size:12px; font-weight:650; line-height:1.4; cursor:pointer; box-shadow:0 4px 10px rgba(28,93,92,.1); }
.gippi-conversation .gippi-contact-link { display:inline-flex; align-items:center; min-height:44px; color:var(--gippi-teal)!important; font-size:12px; font-weight:650; text-decoration:underline; text-underline-offset:3px; }
.gippi-conversation .gippi-copy-status { color:var(--gippi-teal); font-size:12px; }
.gippi-conversation button:disabled { opacity:.6; cursor:wait; }
.gippi-conversation textarea[readonly] { background:#eff5f3; }
/* The navigation hub has one main action and three quiet utility controls. */
.gip-smartdock.gippi-conversation .gip-smartdock__bar { display:flex; align-items:center; gap:5px; padding:7px; border:1px solid rgba(255,255,255,.9); border-radius:25px; background:linear-gradient(125deg,rgba(255,255,255,.84),rgba(233,246,240,.76) 55%,rgba(248,232,222,.78)); backdrop-filter:blur(24px) saturate(145%); -webkit-backdrop-filter:blur(24px) saturate(145%); box-shadow:0 9px 32px rgba(19,73,67,.18),inset 0 1px 0 rgba(255,255,255,.9); }
.gip-smartdock.gippi-conversation .gip-smartdock__btn { width:44px; height:46px; min-width:44px; border-radius:17px; border:1px solid transparent; background:transparent; color:#325d60!important; box-shadow:none; transition:transform .18s,background .18s; }
.gip-smartdock.gippi-conversation .gip-smartdock__btn svg { width:21px; height:21px; animation:none!important; }
.gip-smartdock.gippi-conversation .gip-smartdock__btn::before { display:none!important; }
.gip-smartdock.gippi-conversation .gip-smartdock__btn:hover { background:rgba(255,255,255,.8); border-color:rgba(255,255,255,.95); transform:translateY(-2px); }
.gip-smartdock.gippi-conversation .gip-smartdock__btn--assistant { display:inline-flex; align-items:center; width:auto!important; min-width:157px!important; height:50px; padding:0 15px 0 6px!important; gap:9px!important; overflow:visible; border-radius:19px; border:1px solid rgba(255,255,255,.9)!important; background:linear-gradient(130deg,rgba(209,237,217,.95),rgba(255,237,207,.95))!important; color:var(--gippi-ink)!important; box-shadow:0 3px 10px rgba(82,120,87,.12),inset 0 1px 0 #fff!important; }
.gip-smartdock.gippi-conversation .gip-smartdock__btn--assistant:hover { background:linear-gradient(130deg,#d7f3df,#fff1d4)!important; box-shadow:0 5px 14px rgba(53,100,81,.16)!important; }
.gip-smartdock.gippi-conversation .gip-smartdock__btn--assistant[aria-expanded=true] { border-color:rgba(16,117,106,.55)!important; box-shadow:inset 0 0 0 1px rgba(16,117,106,.09),0 2px 10px rgba(42,111,94,.12)!important; }
.gip-smartdock.gippi-conversation .gip-smartdock__assistant-avatar { width:40px; height:40px; min-width:40px; margin:0; }
.gip-smartdock.gippi-conversation .gip-smartdock__btn--assistant .gippi-hub-copy { display:flex!important; flex-direction:column; align-items:flex-start; gap:3px; color:var(--gippi-ink)!important; line-height:1.1; font-size:14px!important; font-weight:750!important; white-space:nowrap; }
.gip-smartdock.gippi-conversation .gippi-hub-copy > * { color:inherit!important; font-family:inherit; }
.gip-smartdock.gippi-conversation .gippi-hub-copy > small { font-size:9px!important; font-weight:550!important; line-height:1.15; letter-spacing:0; }
.gip-smartdock.gippi-conversation .gippi-hub-copy > span { font-size:14px!important; font-weight:750!important; line-height:1.1; }
.gip-smartdock.gippi-conversation button:focus-visible,
.gip-smartdock.gippi-conversation a:focus-visible,
.gip-smartdock.gippi-conversation textarea:focus-visible { outline:3px solid #cb8c28!important; outline-offset:3px; box-shadow:none!important; }
/* Finite gestures: no distracting motion running indefinitely over site content. */
.gippi-conversation.is-open:not(.has-chat-started) .gippi-welcome-mascot { animation:gippiHello 2.2s ease-in-out 1; }
.gippi-conversation .gippi-turn.is-new { animation:gippiArrive .32s ease-out 1; }
.gippi-conversation.is-replying .gippi-turn--assistant.is-new .gippi-avatar img { animation:gippiNod 1.1s ease-in-out 2; }
.gippi-conversation.is-thinking .gippi-typing .gippi-avatar img { animation:gippiThink 1.8s ease-in-out 2; }
.gippi-conversation .gip-smartdock__btn--assistant:hover .gip-smartdock__assistant-avatar img { animation:gippiNod 1s ease-in-out 1; }
.gippi-conversation:not(.is-open) .gip-smartdock__panel *,
.gippi-conversation.is-page-hidden *, .gippi-conversation.is-page-hidden *::before, .gippi-conversation.is-page-hidden *::after { animation-play-state:paused!important; }
@keyframes gippiHello { 0%,100% { transform:translateY(0) rotate(0); } 20% { transform:translateY(-5px) rotate(-5deg); } 40% { transform:translateY(-2px) rotate(4deg); } 62% { transform:translateY(-4px) rotate(-2deg); } 82% { transform:translateY(0) rotate(1deg); } }
@keyframes gippiNod { 0%,100% { transform:rotate(0); } 35% { transform:rotate(-5deg) translateY(-1px); } 65% { transform:rotate(3deg); } }
@keyframes gippiThink { 0%,100% { transform:rotate(0); } 50% { transform:rotate(-4deg) translateY(1px); } }
@keyframes gippiArrive { from { opacity:0; transform:translateY(7px); } to { opacity:1; transform:translateY(0); } }
@keyframes gippiDot { 0%,70%,100% { opacity:.4; transform:translateY(0); } 35% { opacity:1; transform:translateY(-3px); } }
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))) { .gippi-conversation .gip-assistant { background:#edf6f2; } .gip-smartdock.gippi-conversation .gip-smartdock__bar { background:#eef5f0; } }
@media(max-width:767px) {
  .gip-smartdock.gippi-conversation { left:max(10px,env(safe-area-inset-left)); right:max(10px,env(safe-area-inset-right)); bottom:max(12px,env(safe-area-inset-bottom)); display:flex; justify-content:flex-end; pointer-events:none; --gippi-mobile-panel-height:calc(100dvh - 102px - env(safe-area-inset-bottom) - env(safe-area-inset-top)); }
  .gippi-conversation .gip-smartdock__bar { width:max-content; max-width:100%; pointer-events:auto; }
  .gippi-conversation .gip-smartdock__panel { left:0; right:0; width:auto; max-width:100%; max-height:var(--gippi-mobile-panel-height); bottom:calc(100% + 10px); }
  .gippi-conversation .gip-assistant { max-height:var(--gippi-mobile-panel-height)!important; min-height:0; border-radius:23px; }
  .gippi-conversation .gip-assistant__header { padding:12px 13px!important; gap:10px; }
  .gippi-conversation .gip-assistant__title { font-size:22px; }
  .gippi-conversation .gippi-header-avatar { width:46px; height:46px; min-width:46px; }
  .gippi-conversation .gip-assistant__body { padding:14px!important; }
  .gippi-conversation .gippi-toolbar { padding:1px 13px; }
  .gippi-conversation .gippi-welcome { grid-template-columns:minmax(0,1fr) 102px; gap:4px; margin-bottom:12px; }
  .gippi-conversation .gippi-welcome-scene { height:139px; }
  .gippi-conversation .gippi-welcome-mascot { height:132px; }
  .gippi-conversation .gippi-welcome-title { font-size:21px; }
  .gippi-conversation .gippi-welcome-copy p { font-size:11px; }
  .gippi-conversation .gip-assistant__composer { padding:10px 12px 7px!important; }
  .gippi-conversation .gip-assistant__footer { padding:4px 12px 9px; }
  .gippi-conversation .gippi-bubble { padding:11px 12px; font-size:13px; }
  .gippi-conversation .gippi-turn { gap:7px; }
  .gippi-conversation .gippi-turn > .gippi-avatar { width:30px; height:30px; min-width:30px; }
  .gip-smartdock.gippi-conversation .gip-smartdock__bar { padding:6px; gap:3px; }
  .gip-smartdock.gippi-conversation .gip-smartdock__btn { height:44px; }
  .gip-smartdock.gippi-conversation .gip-smartdock__btn--assistant { min-width:137px!important; height:46px; padding:0 11px 0 5px!important; gap:7px!important; }
  .gip-smartdock.gippi-conversation .gip-smartdock__assistant-avatar { width:36px; height:36px; min-width:36px; }
}
@media(max-width:350px) {
  .gippi-conversation .gippi-welcome { grid-template-columns:minmax(0,1fr) 88px; }
  .gippi-conversation .gippi-welcome-title { font-size:19px; }
  .gippi-conversation .gippi-welcome-scene { height:128px; }
  .gippi-conversation .gippi-welcome-mascot { height:121px; }
  .gippi-conversation .gip-assistant__eyebrow { font-size:9px; }
  .gippi-conversation .gippi-presence { font-size:9px; }
  .gippi-conversation .gippi-turn > .gippi-avatar { width:28px; height:28px; min-width:28px; }
  .gippi-conversation .gip-assistant__search-row .gippi-send { min-width:60px; padding:0 8px; font-size:10px; }
  .gip-smartdock.gippi-conversation .gippi-hub-copy > small { font-size:8px!important; }
  .gip-smartdock.gippi-conversation .gip-smartdock__btn--assistant { min-width:126px!important; }
}
@media(max-height:600px) {
  .gippi-conversation .gip-assistant { min-height:0; }
  .gippi-conversation .gip-assistant__header { padding:8px 12px!important; }
  .gippi-conversation .gippi-header-avatar { width:38px; height:38px; min-width:38px; }
  .gippi-conversation .gip-assistant__title { font-size:19px; }
  .gippi-conversation .gip-assistant__footer, .gippi-conversation .gip-assistant__hint { display:none; }
  .gippi-conversation .gippi-welcome-scene { height:110px; }
  .gippi-conversation .gippi-welcome-mascot { height:106px; }
}
@media(prefers-reduced-motion:reduce) {
  .gippi-conversation *, .gippi-conversation *::before, .gippi-conversation *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
}
.gippi-conversation .gippi-welcome-scene > .gippi-welcome-halo { display:none; }
.gippi-conversation .gippi-welcome-scene > .gippi-spark { width:auto; height:auto; background:none; border-radius:0; color:#5c9c92; font-size:13px; line-height:1; }
.gippi-conversation .gippi-welcome-scene > .gippi-spark--one { top:17px; left:3px; bottom:auto; transform:rotate(-12deg); }
.gippi-conversation .gippi-welcome-scene > .gippi-spark--two { bottom:18px; right:0; left:auto; color:#b68940; }
.gippi-conversation .gippi-welcome-scene > .gippi-spark--three { display:none; }

/* Above the consent launcher; the consent dialog (1000001) keeps priority. */
.gip-smartdock.gippi-conversation.is-open { z-index:1000000; }
