:root{
  color-scheme:dark;
  --bg:#020914;--bg2:#06172e;--panel:rgba(7,24,49,.94);--glass:rgba(255,255,255,.07);
  --text:#f4f9ff;--muted:#91a8c5;--blue:#087cff;--blue2:#1150d0;--cyan:#46ddff;
  --green:#45ef9d;--danger:#ff657b;--line:rgba(116,190,255,.22);--shadow:0 30px 90px rgba(0,0,0,.48)
}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;min-height:100vh;min-height:100dvh;overflow:hidden;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--text);
background:
radial-gradient(circle at 35% 76%,rgba(24,255,181,.13),transparent 18rem),
radial-gradient(circle at 34% 42%,rgba(26,195,255,.14),transparent 26rem),
radial-gradient(circle at 72% 28%,rgba(13,91,210,.16),transparent 30rem),
linear-gradient(145deg,#071722,#03101c 58%,#020a13);
}button,input{font:inherit}.tech-grid{position:fixed;inset:0;pointer-events:none;opacity:.23;background-image:linear-gradient(rgba(64,159,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(64,159,255,.06) 1px,transparent 1px);background-size:44px 44px;mask-image:linear-gradient(to bottom,#000,transparent 88%);z-index:-4}.ambient{position:fixed;width:28rem;height:28rem;border-radius:50%;filter:blur(100px);opacity:.18;pointer-events:none;z-index:-3}.ambient-a{left:-14rem;top:22%;background:#006cff}.ambient-b{right:-14rem;bottom:5%;background:#00e5ff}
.micro-brand{position:fixed;left:max(18px,env(safe-area-inset-left));top:max(16px,env(safe-area-inset-top));display:grid;grid-template-columns:auto auto;align-items:center;gap:1px 8px;z-index:20;color:#dfeeff}.micro-brand .brand-light{grid-row:1/3;width:10px;height:10px;border-radius:50%;background:var(--green);box-shadow:0 0 18px rgba(69,239,157,.85)}.micro-brand strong{font-size:.86rem}.micro-brand span:last-child{font-size:.68rem;color:var(--muted)}
.assistant-stage{position:fixed;inset:0;display:grid;place-items:center;padding:72px 20px 58px}
.assistant-stage::before{content:"";position:absolute;inset:-10%;pointer-events:none;background:
radial-gradient(ellipse at 50% 88%,rgba(0,229,255,.16),transparent 28%),
radial-gradient(ellipse at 50% 86%,rgba(92,255,111,.08),transparent 38%),
linear-gradient(115deg,transparent 15%,rgba(0,145,255,.035) 48%,transparent 75%);
filter:blur(4px);opacity:.95}
.assistant-stage::after{content:"";position:absolute;left:50%;bottom:5%;width:min(620px,92vw);height:120px;transform:translateX(-50%);border-radius:50%;background:radial-gradient(ellipse,rgba(37,255,196,.22),rgba(0,132,255,.14) 43%,transparent 72%);filter:blur(18px);pointer-events:none}.mascot-launcher{position:relative;width:min(460px,88vw);height:min(680px,76vh);border:0;background:transparent;color:inherit;padding:0;cursor:pointer;touch-action:manipulation;filter:drop-shadow(0 30px 30px rgba(0,0,0,.35));outline:none}.launcher-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;border-radius:38px;pointer-events:none;
background:#071722;box-shadow:0 0 0 1px rgba(94,211,255,.05),0 30px 90px rgba(0,0,0,.34),0 0 75px rgba(0,167,255,.10);
filter:saturate(1.05) contrast(1.03) brightness(1.01);transition:transform .28s ease,filter .28s ease,box-shadow .28s ease}
.mascot-launcher:hover .launcher-video{transform:translateY(-5px) scale(1.008);filter:saturate(1.09) contrast(1.04) brightness(1.03);box-shadow:0 32px 100px rgba(0,0,0,.38),0 0 90px rgba(22,196,255,.17)}.floor-glow{position:absolute;left:16%;right:16%;bottom:4%;height:8%;border-radius:50%;background:radial-gradient(ellipse,rgba(69,255,186,.58),rgba(0,201,255,.30) 34%,rgba(0,104,255,.12) 58%,transparent 74%);filter:blur(8px);animation:floorPulse 2.3s ease-in-out infinite}.orbit{position:absolute;left:50%;top:52%;width:75%;aspect-ratio:1;border-radius:50%;border:1px solid rgba(56,218,255,.20);transform:translate(-50%,-50%) rotateX(68deg);pointer-events:none}.orbit-a{animation:orbitGlow 3s ease-in-out infinite}.orbit-b{width:90%;border-style:dashed;border-color:rgba(22,117,255,.18);animation:orbitGlow 3s 1.1s ease-in-out infinite}.voice-callout{position:absolute;left:50%;right:auto;top:auto;bottom:0;transform:translateX(-50%);display:flex;align-items:center;gap:10px;padding:11px 13px;border:1px solid rgba(116,211,255,.28);border-radius:18px;background:rgba(3,16,36,.78);backdrop-filter:blur(16px);box-shadow:0 14px 36px rgba(0,0,0,.28),0 0 24px rgba(0,126,255,.10);text-align:left;animation:calloutFloat 2.8s ease-in-out infinite}.voice-callout>span:nth-child(2){display:grid;gap:1px}.voice-callout strong{font-size:.82rem}.voice-callout small{font-size:.66rem;color:var(--muted)}.callout-dot{width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 12px rgba(69,239,157,.8)}.callout-mic{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:linear-gradient(145deg,var(--blue),var(--blue2))}
.panel-backdrop{position:fixed;inset:0;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;z-index:30}.assistant-panel{position:fixed;right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));width:min(410px,calc(100vw - 36px));height:min(720px,calc(100dvh - 36px));display:flex;flex-direction:column;z-index:40;border:1px solid rgba(87,195,255,.36);border-radius:28px;background:linear-gradient(165deg,rgba(7,31,67,.98),rgba(4,17,38,.97));box-shadow:var(--shadow),0 0 55px rgba(0,124,255,.17);overflow:hidden;transform:translateY(26px) scale(.94);opacity:0;pointer-events:none;transition:transform .34s cubic-bezier(.2,.82,.2,1),opacity .28s ease}.assistant-panel::before{content:"";position:absolute;inset:0 0 auto;height:150px;background:radial-gradient(circle at 18% 0,rgba(66,224,255,.18),transparent 55%);pointer-events:none}.assistant-panel.open{transform:translateY(0) scale(1);opacity:1;pointer-events:auto}.panel-header{position:relative;display:flex;justify-content:space-between;align-items:center;padding:15px 16px;background:linear-gradient(135deg,#087cff,#0a4bb8);border-bottom:1px solid rgba(255,255,255,.16)}.assistant-id{display:flex;align-items:center;gap:11px}.avatar-shell{position:relative;width:46px;height:46px;border-radius:50%;overflow:hidden;background:#052651;border:2px solid rgba(255,255,255,.52);box-shadow:0 0 22px rgba(64,221,255,.32)}.avatar-shell img,.mini-avatar img{width:100%;height:100%;object-fit:cover;mix-blend-mode:screen}.presence{position:absolute;right:1px;bottom:2px;width:10px;height:10px;border-radius:50%;background:var(--green);border:2px solid #0751bf}.assistant-id>div:last-child{display:grid;gap:1px}.assistant-id strong{font-size:1rem}.assistant-id span{font-size:.72rem;color:#d9eaff}.assistant-id b{color:#91ffcc}.panel-actions{display:flex;gap:4px}.icon-button{width:34px;height:34px;border:0;border-radius:10px;background:rgba(255,255,255,.08);color:#fff;font-size:1.35rem;cursor:pointer}.icon-button:hover{background:rgba(255,255,255,.16)}
.conversation{flex:1;min-height:0;overflow-y:auto;padding:16px 14px 10px;scrollbar-width:thin;scrollbar-color:rgba(74,176,255,.34) transparent}.message-row{display:flex;align-items:flex-end;gap:8px;margin-bottom:12px;animation:messageIn .28s ease both}.message-row.user-message{justify-content:flex-end}.mini-avatar{flex:0 0 34px;width:34px;height:34px;border-radius:50%;overflow:hidden;background:#06234b;border:1px solid rgba(102,207,255,.28)}.bubble{max-width:82%;padding:10px 12px;border-radius:17px;line-height:1.38;font-size:.84rem;box-shadow:0 8px 20px rgba(0,0,0,.12)}.assistant-bubble{border:1px solid rgba(113,191,255,.15);border-bottom-left-radius:5px;background:rgba(255,255,255,.075)}.assistant-bubble.soft{background:rgba(13,53,98,.5)}.user-bubble{border-bottom-right-radius:5px;background:linear-gradient(135deg,#147cff,#0a51c2);color:#fff}.bubble strong{display:block;margin-bottom:2px}.bubble p{margin:2px 0}.bubble small{color:#9eb7d6}.bubble-kicker{display:block;color:#75e7ff;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.execution-bubble{display:grid;gap:8px}.execution-line{display:flex;align-items:center;gap:8px}.spinner{width:16px;height:16px;border-radius:50%;border:2px solid rgba(109,217,255,.25);border-top-color:#5fe9ff;animation:spin .7s linear infinite}.progress-track{height:5px;border-radius:999px;background:rgba(255,255,255,.10);overflow:hidden}.progress-track i{display:block;width:45%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--blue),var(--cyan));animation:progressScan 1s ease-in-out infinite}.success-check{color:var(--green)}
.voice-console{padding:10px 14px 8px}.talk-btn{width:100%;min-height:76px;display:flex;align-items:center;gap:11px;padding:10px 12px;border:1px solid rgba(99,208,255,.28);border-radius:21px;background:linear-gradient(135deg,rgba(14,96,230,.9),rgba(5,45,116,.92));color:#fff;cursor:pointer;box-shadow:0 12px 28px rgba(0,91,214,.20);overflow:hidden}.mic-orb{flex:0 0 50px;width:50px;height:50px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(145deg,#1594ff,#0752c8);border:1px solid rgba(255,255,255,.26);font-size:1.45rem;box-shadow:0 0 0 7px rgba(87,211,255,.06)}.wave{flex:1;display:flex;align-items:center;justify-content:center;gap:3px;height:38px}.wave i{width:3px;height:11px;border-radius:999px;background:#83eaff;opacity:.75}.wave i:nth-child(2),.wave i:nth-child(6){height:20px}.wave i:nth-child(3),.wave i:nth-child(5){height:30px}.wave i:nth-child(4){height:38px}.voice-label{display:grid;text-align:right;gap:1px;white-space:nowrap}.voice-label strong{font-size:.76rem}.voice-label small{font-size:.62rem;color:#b9d7ff}.talk-btn.listening{border-color:#61eaff;box-shadow:0 0 34px rgba(43,190,255,.28)}.talk-btn.listening .wave i{animation:wave .55s ease-in-out infinite alternate}.talk-btn.listening .wave i:nth-child(2){animation-delay:.08s}.talk-btn.listening .wave i:nth-child(3){animation-delay:.16s}.talk-btn.listening .wave i:nth-child(4){animation-delay:.24s}.talk-btn.listening .wave i:nth-child(5){animation-delay:.16s}.talk-btn.listening .wave i:nth-child(6){animation-delay:.08s}.status{display:flex;align-items:center;gap:7px;margin-top:7px;padding:0 4px;color:var(--muted);font-size:.69rem}.status-dot{width:7px;height:7px;border-radius:50%;background:#68a7e8;box-shadow:0 0 10px rgba(104,167,232,.65)}.status.ok .status-dot{background:var(--green);box-shadow:0 0 10px rgba(69,239,157,.65)}.status.error{color:#ffb1bd}.status.error .status-dot{background:var(--danger)}
.composer{display:flex;align-items:center;gap:8px;padding:8px 14px 12px}.composer input{min-width:0;flex:1;height:46px;border:1px solid rgba(102,185,255,.20);border-radius:17px;background:rgba(255,255,255,.065);color:#fff;padding:0 15px;outline:none}.composer input::placeholder{color:#7894b6}.composer input:focus{border-color:rgba(77,214,255,.48);box-shadow:0 0 0 3px rgba(16,137,255,.08)}.send-button{flex:0 0 46px;width:46px;height:46px;border:0;border-radius:50%;background:linear-gradient(145deg,#168bff,#084fc8);color:#fff;font-size:1.1rem;cursor:pointer;box-shadow:0 8px 22px rgba(0,102,255,.3)}.result-card{margin:0 14px 8px;padding:9px 11px;border:1px solid rgba(69,239,157,.19);border-radius:14px;background:rgba(69,239,157,.065);font-size:.72rem}.result-card>div{display:flex;align-items:center;gap:6px}.result-card>div span{color:var(--green)}.result-card .weight{display:block;color:var(--muted);margin:3px 0}.result-card a{color:#73eaff;text-decoration:none;font-weight:800}.auto-open{display:flex;align-items:center;gap:7px;padding:0 16px 14px;color:#7290b3;font-size:.66rem}.auto-open input{accent-color:#1181ff}
.page-footer{position:fixed;left:18px;right:18px;bottom:max(10px,env(safe-area-inset-bottom));display:flex;justify-content:space-between;gap:14px;color:#536e91;font-size:.63rem;pointer-events:none}
@media(max-width:680px){.micro-brand{top:max(12px,env(safe-area-inset-top));left:14px}.assistant-stage{padding:56px 8px 42px}.mascot-launcher{width:96vw;height:78vh}.voice-callout{left:50%;right:auto;top:auto;bottom:1%;transform:translateX(-50%);padding:9px 10px}.assistant-panel{inset:max(10px,env(safe-area-inset-top)) 10px max(10px,env(safe-area-inset-bottom));width:auto;height:auto;border-radius:23px}.panel-backdrop{backdrop-filter:none;-webkit-backdrop-filter:none;background:transparent}.page-footer{display:none}.bubble{max-width:86%}}@media(max-width:380px){.voice-callout small{display:none}.voice-callout{top:auto;bottom:1%}.assistant-id strong{font-size:.9rem}.voice-label{display:none}.wave{justify-content:flex-end}.composer{padding-left:10px;padding-right:10px}}
@keyframes floorPulse{0%,100%{opacity:.55;transform:scaleX(.92)}50%{opacity:1;transform:scaleX(1.06)}}@keyframes orbitGlow{0%,100%{opacity:.3;filter:drop-shadow(0 0 2px #1bcfff)}50%{opacity:.75;filter:drop-shadow(0 0 9px #1bcfff)}}@keyframes calloutFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}@keyframes messageIn{from{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}@keyframes wave{from{transform:scaleY(.4);opacity:.4}to{transform:scaleY(1.25);opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes progressScan{0%{transform:translateX(-100%)}50%{transform:translateX(100%)}100%{transform:translateX(230%)}}

/* v2.4 - vídeo do mascote integrado ao ambiente */
@media (min-width:681px){
  .mascot-launcher{width:min(430px,42vw);height:min(740px,82vh)}
}
@media (max-width:680px){
  .launcher-video{border-radius:26px}
  .mascot-launcher{width:min(96vw,430px);height:min(76vh,720px)}
}
@media (prefers-reduced-motion:reduce){
  .launcher-video{transition:none}
}


/* ==========================================================
   v2.5 - AJUSTE RESPONSIVO DO VÍDEO INICIAL
   Celular / tablet / orientação retrato e paisagem
   ========================================================== */

html,
body {
  width: 100%;
  min-width: 100%;
  min-height: 100%;
}

body {
  min-height: 100vh;
  min-height: 100dvh;
}

.assistant-stage {
  box-sizing: border-box;
  min-height: 100vh;
  min-height: 100dvh;
  overflow: hidden;
}

/* O launcher passa a usar uma área vertical previsível. */
.mascot-launcher {
  box-sizing: border-box;
  overflow: visible;
}

.launcher-video {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center center;
}

/* TABLETS E TELAS INTERMEDIÁRIAS */
@media (min-width: 681px) and (max-width: 1100px) {
  .assistant-stage {
    padding:
      max(24px, env(safe-area-inset-top))
      20px
      max(28px, env(safe-area-inset-bottom));
  }

  .mascot-launcher {
    width: min(64vw, 520px);
    height: min(74dvh, 760px);
  }

  .launcher-video {
    border-radius: 30px;
  }
}

/* CELULARES EM RETRATO */
@media (max-width: 680px) {
  body {
    overflow: hidden;
  }

  .assistant-stage {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;

    padding:
      max(12px, env(safe-area-inset-top))
      10px
      max(12px, env(safe-area-inset-bottom));

    min-height: 100vh;
    min-height: 100dvh;
  }

  .mascot-launcher {
    position: relative;

    width: min(96vw, 430px);

    /* reserva espaço para o balão sem estourar a tela */
    height: min(72dvh, 660px);

    max-height: calc(
      100dvh
      - 120px
      - env(safe-area-inset-top)
      - env(safe-area-inset-bottom)
    );

    margin: 0 auto;
  }

  .launcher-video {
    width: 100%;
    height: 100%;

    object-fit: contain;
    object-position: center center;

    border-radius: 22px;

    background: transparent;

    box-shadow:
      0 22px 60px rgba(0,0,0,.32),
      0 0 48px rgba(0,178,255,.12);
  }

  /* O balão fica abaixo do vídeo e centralizado. */
  .launcher-hint {
    left: 50% !important;
    right: auto !important;

    bottom: -78px !important;

    width: min(92vw, 370px) !important;
    max-width: calc(100vw - 24px) !important;

    transform: translateX(-50%) !important;

    box-sizing: border-box;

    z-index: 10;
  }

  .launcher-hint strong {
    font-size: 15px;
  }

  .launcher-hint span {
    font-size: 12px;
  }

  .assistant-stage::after {
    bottom: 2%;
    width: 96vw;
    height: 86px;
  }
}

/* CELULARES MENORES */
@media (max-width: 420px) {
  .assistant-stage {
    padding-left: 6px;
    padding-right: 6px;
  }

  .mascot-launcher {
    width: 98vw;
    height: min(68dvh, 590px);
    max-height: calc(
      100dvh
      - 112px
      - env(safe-area-inset-top)
      - env(safe-area-inset-bottom)
    );
  }

  .launcher-video {
    border-radius: 18px;
  }

  .launcher-hint {
    bottom: -72px !important;
    width: calc(100vw - 18px) !important;
  }
}

/* CELULAR EM MODO PAISAGEM */
@media (max-height: 560px) and (orientation: landscape) {
  .assistant-stage {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;

    padding:
      max(8px, env(safe-area-inset-top))
      max(10px, env(safe-area-inset-right))
      max(8px, env(safe-area-inset-bottom))
      max(10px, env(safe-area-inset-left));
  }

  .mascot-launcher {
    width: min(48vw, 430px);
    height: min(88dvh, 500px);
    max-height: 88dvh;
  }

  .launcher-hint {
    left: calc(100% + 12px) !important;
    bottom: 18px !important;

    width: min(42vw, 330px) !important;

    transform: none !important;
  }
}

/* Evita zoom/overflow estranho em WebView Android */
@supports (-webkit-touch-callout: none) {
  .assistant-stage {
    min-height: -webkit-fill-available;
  }
}


/* ==========================================================
   v2.7 - VÍDEO FULLSCREEN EM CELULARES
   ========================================================== */
@media (max-width: 680px) {
  html, body {
    width: 100%;
    height: 100%;
    min-height: 100dvh;
    margin: 0;
    padding: 0;
    overflow: hidden;
    background: #020b14;
  }

  .assistant-stage {
    position: fixed;
    inset: 0;
    width: 100vw;
    height: 100vh;
    height: 100dvh;
    min-height: 100dvh;
    padding: 0 !important;
    margin: 0;
    display: block;
    overflow: hidden;
  }

  .assistant-stage::before,
  .assistant-stage::after {
    display: none;
  }

  .mascot-launcher {
    position: absolute;
    inset: 0;
    width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0;
    border: 0;
    border-radius: 0;
    overflow: hidden;
  }

  .launcher-video {
    position: absolute;
    inset: 0;
    width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !important;
    max-width: none;
    max-height: none;
    border-radius: 0 !important;
    object-fit: cover !important;
    object-position: center center !important;
    background: #020b14;
    box-shadow: none !important;
    transform: none !important;
  }

  .mascot-launcher:hover .launcher-video {
    transform: none !important;
  }

  /* Gradiente discreto para manter o balão legível sobre o vídeo. */
  .mascot-launcher::after {
    content: "";
    position: absolute;
    z-index: 2;
    left: 0;
    right: 0;
    bottom: 0;
    height: 32%;
    pointer-events: none;
    background: linear-gradient(to top, rgba(1,10,20,.78), rgba(1,10,20,.22) 58%, transparent);
  }

  .launcher-hint {
    position: absolute !important;
    z-index: 5 !important;
    left: 50% !important;
    right: auto !important;
    bottom: max(18px, calc(env(safe-area-inset-bottom) + 12px)) !important;
    width: calc(100vw - 28px) !important;
    max-width: 430px !important;
    transform: translateX(-50%) !important;
    margin: 0 !important;
  }
}

/* Fullscreen também em celular deitado. */
@media (max-height: 560px) and (orientation: landscape) {
  .assistant-stage,
  .mascot-launcher,
  .launcher-video {
    width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !important;
    max-width: none !important;
    max-height: none !important;
  }

  .launcher-video {
    object-fit: cover !important;
    object-position: center center !important;
  }

  .launcher-hint {
    left: 50% !important;
    right: auto !important;
    bottom: max(10px, env(safe-area-inset-bottom)) !important;
    width: min(88vw, 390px) !important;
    transform: translateX(-50%) !important;
  }
}


/* ==========================================================
   v3.0 - VÍDEO: DESKTOP PREENCHENDO A DIV + MOBILE AUTOPLAY
   ========================================================== */

/* Desktop: o vídeo ocupa 100% do quadro, sem faixas laterais. */
@media (min-width: 681px) {
  .mascot-launcher {
    overflow: hidden;
    border-radius: 38px;
  }

  .launcher-video {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    border-radius: 38px !important;
  }
}

/* Celular: ocupa toda a área disponível e permanece em cover. */
@media (max-width: 680px) {
  .launcher-video {
    width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !important;
    object-fit: cover !important;
    object-position: center center !important;
    border-radius: 0 !important;
  }
}


/* ==========================================================
   v3.1 - AJUSTE FINAL DO QUADRO DE VÍDEO
   MP4 original: 720 x 1280 (proporção 9:16)
   ========================================================== */

/* DESKTOP / NOTEBOOK
   A div passa a seguir exatamente a proporção do vídeo.
   Sem zoom, sem corte de cabeça/pés e sem "estourar" o quadro. */
@media (min-width: 681px) {
  .assistant-stage {
    padding-top: 42px !important;
    padding-bottom: 42px !important;
  }

  .mascot-launcher {
    width: auto !important;
    height: min(82vh, 760px) !important;
    aspect-ratio: 9 / 16 !important;

    max-width: calc(100vw - 64px) !important;
    max-height: calc(100vh - 84px) !important;

    overflow: visible !important;
    border-radius: 34px !important;
  }

  .launcher-video {
    position: absolute !important;
    inset: 0 !important;

    width: 100% !important;
    height: 100% !important;

    object-fit: contain !important;
    object-position: center center !important;

    border-radius: 34px !important;
    background: #06131f !important;

    transform: none !important;
  }

  .mascot-launcher:hover .launcher-video {
    transform: none !important;
  }

  .voice-callout {
    bottom: 12px !important;
  }
}

/* CELULAR
   Mantém o vídeo em tela cheia. O cover é proposital aqui,
   pois o pedido é preencher a tela inteira do dispositivo. */
@media (max-width: 680px) {
  .assistant-stage {
    position: fixed !important;
    inset: 0 !important;

    width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !important;

    padding: 0 !important;
    margin: 0 !important;

    overflow: hidden !important;
  }

  .mascot-launcher {
    position: absolute !important;
    inset: 0 !important;

    width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !important;

    max-width: none !important;
    max-height: none !important;

    margin: 0 !important;

    border-radius: 0 !important;
    overflow: hidden !important;
  }

  .launcher-video {
    position: absolute !important;
    inset: 0 !important;

    width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !important;

    object-fit: cover !important;
    object-position: center center !important;

    border-radius: 0 !important;
    background: #06131f !important;

    transform: none !important;
    box-shadow: none !important;
  }

  .voice-callout {
    left: 50% !important;
    right: auto !important;

    bottom: max(
      16px,
      calc(env(safe-area-inset-bottom) + 10px)
    ) !important;

    width: calc(100vw - 28px) !important;
    max-width: 420px !important;

    transform: translateX(-50%) !important;
  }
}


/* ==========================================================
   v3.2 - BALÃO FALE COMIGO / DESKTOP
   ========================================================== */
@media (min-width: 681px) {
  .voice-callout {
    left: 50% !important;
    right: auto !important;

    bottom: 14px !important;

    width: 320px !important;
    min-width: 320px !important;
    max-width: calc(100vw - 36px) !important;

    min-height: 70px !important;

    padding: 13px 15px !important;

    gap: 12px !important;

    box-sizing: border-box !important;

    transform: translateX(-50%) !important;

    flex-wrap: nowrap !important;
    justify-content: flex-start !important;

    border-radius: 20px !important;
  }

  .voice-callout > span:nth-child(2) {
    flex: 1 1 auto !important;
    min-width: 0 !important;

    display: flex !important;
    flex-direction: column !important;

    gap: 2px !important;
  }

  .voice-callout strong {
    display: block !important;

    font-size: 15px !important;
    line-height: 1.15 !important;

    white-space: nowrap !important;
  }

  .voice-callout small {
    display: block !important;

    font-size: 12px !important;
    line-height: 1.25 !important;

    white-space: normal !important;
  }

  .callout-dot {
    flex: 0 0 9px !important;
  }

  .callout-mic {
    flex: 0 0 38px !important;

    width: 38px !important;
    height: 38px !important;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }
}

/* Celular: balão continua adaptável sem achatamento. */
@media (max-width: 680px) {
  .voice-callout {
    min-height: 68px !important;

    padding: 12px 14px !important;

    box-sizing: border-box !important;

    flex-wrap: nowrap !important;
  }

  .voice-callout > span:nth-child(2) {
    flex: 1 1 auto !important;
    min-width: 0 !important;
  }

  .voice-callout strong {
    font-size: 14px !important;
    line-height: 1.15 !important;
  }

  .voice-callout small {
    font-size: 11px !important;
    line-height: 1.25 !important;
  }
}
