/* Financial conversation: shared site typography, colors and easing. */
.minoda-thermometer{background:#f2f2f2;color:#080808;padding:clamp(36px,4.5vw,56px) 0}
.minoda-diagnostic-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(290px,.9fr);align-items:center;gap:clamp(28px,5vw,72px)}
.minoda-diagnostic-copy{max-width:580px}
.minoda-diagnostic-copy .eyebrow{margin-bottom:18px}
.minoda-diagnostic-copy h2{font-size:clamp(40px,5.2vw,72px);line-height:.98;letter-spacing:-.065em;margin:0}
.minoda-diagnostic-description{color:#555;font-size:clamp(15px,1.4vw,19px);line-height:1.55;max-width:38ch;margin:20px 0}
.minoda-diagnostic-start{gap:16px!important;border-radius:12px!important;padding:9px 12px 9px 20px!important;font-size:14px!important}
.minoda-arrow-circle{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;border:1px solid #ffffff40;border-radius:50%}
.minoda-arrow-circle svg{transition:transform 180ms var(--ease-standard)}
.minoda-diagnostic-facts{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:20px;font-size:11px;color:#666}
.minoda-diagnostic-facts span+span{position:relative}
.minoda-diagnostic-facts span+span:before{content:"";display:inline-block;width:3px;height:3px;background:#999;border-radius:50%;vertical-align:middle;margin-right:16px}
.minoda-diagnostic-disclaimer{color:#737373;font-size:11.5px;line-height:1.5;max-width:44ch;margin-top:16px}
.minoda-phone-stage{display:grid;justify-items:center;min-width:0}

/* Masked lines utility matching GSAP ScrollTrigger headlines */
.minoda-masked-line{display:block;overflow:hidden;padding-bottom:0.05em}
.minoda-masked-line>span{display:block;transform:none;will-change:transform}

/* Premium iPhone Mockup - Strict Fixed Sizing */
.minoda-chat-phone{position:relative;box-sizing:border-box!important;width:304px!important;min-width:304px!important;max-width:304px!important;height:520px!important;min-height:520px!important;max-height:520px!important;padding:8px;border:2px solid #5a5a5c;border-radius:44px;background:linear-gradient(135deg,#38383a 0%,#1c1c1e 35%,#111 65%,#3a3a3c 100%);box-shadow:0 0 0 1px rgba(255,255,255,0.12),0 0 0 3px #18181a,0 0 0 4px #444,0 18px 36px -12px rgba(0,0,0,0.5);isolation:isolate;flex-shrink:0!important}
.minoda-chat-phone:before{content:"";position:absolute;inset:2px;border:1px solid rgba(255,255,255,0.18);border-radius:40px;pointer-events:none;z-index:2}
.minoda-phone-key{position:absolute;width:3px;background:linear-gradient(90deg,#888,#222);border-radius:2px}
.minoda-phone-key-left{left:-5px;top:100px;height:32px;box-shadow:0 42px 0 #555}
.minoda-phone-key-right{right:-5px;top:140px;height:52px}
.minoda-chat-screen{position:relative;box-sizing:border-box!important;display:flex;flex-direction:column;height:100%!important;min-height:0!important;max-height:100%!important;flex:1 1 0!important;overflow:hidden!important;border-radius:34px;background:#fafafa;color:#111}
.minoda-phone-status{position:relative;flex-shrink:0;height:36px;padding:9px 18px 0;display:flex;align-items:flex-start;justify-content:space-between;color:#151515;font-size:9.5px;font-weight:600}
.minoda-dynamic-island{position:absolute;top:7px;left:50%;width:84px;height:22px;border-radius:99px;background:#050505;transform:translateX(-50%)}
.minoda-dynamic-island:after{content:"";position:absolute;right:8px;top:6px;width:9px;height:9px;border-radius:50%;background:radial-gradient(circle at 60% 40%,#343b43,#0b0e10 60%);box-shadow:0 0 0 1px #161616}
.minoda-chat-header{display:flex;align-items:center;gap:8px;flex-shrink:0;border-bottom:1px solid #e3e3e3;padding:10px 14px}
.minoda-chat-header img{width:28px;height:28px;border-radius:7px;filter:grayscale(1)}
.minoda-chat-header>div{display:grid;gap:1px}
.minoda-chat-header strong{font-size:13px;font-weight:600}
.minoda-chat-header span{font-size:9.5px;color:#737373}
.minoda-chat-online{margin-left:auto;width:6px;height:6px;border-radius:50%;background:#10b981;box-shadow:0 0 0 2px rgba(16,185,129,0.2)}
.minoda-chat-progress{padding:9px 14px 7px;flex-shrink:0;display:grid;grid-template-columns:1fr auto;gap:6px;color:#737373;font-size:9px;letter-spacing:.04em}
.minoda-chat-progress>div{grid-column:1/-1;height:2px;background:#ddd;overflow:hidden}
.minoda-chat-progress i{display:block;height:100%;width:100%;background:#111;transform:scaleX(0);transform-origin:left;transition:transform 240ms var(--ease-standard)}
.minoda-chat-log{box-sizing:border-box!important;display:flex;flex:1 1 0!important;min-height:0!important;max-height:100%!important;flex-direction:column;gap:8px;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain;padding:8px 12px 10px;scrollbar-width:thin;scrollbar-color:#ccc transparent;scroll-behavior:smooth}
.minoda-chat-message{max-width:92%;flex-shrink:0;animation:minoda-message-in 220ms var(--ease-standard) both;transition:opacity 240ms var(--ease-standard),transform 240ms var(--ease-standard)}
.minoda-chat-message.is-faded{opacity:0.38}
.minoda-chat-message.is-hidden{display:none!important}
.minoda-chat-message p{margin:0;border-radius:14px 14px 14px 4px;padding:8px 11px;background:#ededed;color:#222;font-size:11.5px;line-height:1.45;overflow-wrap:anywhere}
.minoda-chat-message.is-user{align-self:flex-end;max-width:85%}
.minoda-chat-message.is-user p{background:#111;color:#fff;border-radius:14px 14px 4px 14px}
.minoda-chat-message.is-typing p{display:flex;gap:4px;align-items:center;height:28px;width:46px}
.minoda-chat-message.is-typing i{display:block;width:4px;height:4px;border-radius:50%;background:#777;animation:minoda-typing 1s ease-in-out infinite}
.minoda-chat-message.is-typing i:nth-child(2){animation-delay:.15s}
.minoda-chat-message.is-typing i:nth-child(3){animation-delay:.3s}
.minoda-chat-controls{display:flex;flex-wrap:wrap;gap:6px;flex-shrink:0;padding:0 12px 8px}
.minoda-chat-controls:empty{display:none}
.minoda-chat-controls button,.minoda-chat-whatsapp{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;border:1px solid #ccc;border-radius:9px;background:#fff;color:#111;padding:7px 11px;font-family:inherit;font-size:11px;line-height:1.3;cursor:pointer;text-decoration:none;transition:background 180ms var(--ease-standard),border-color 180ms var(--ease-standard)}
.minoda-chat-controls button[data-chat-action="begin"]{width:100%;background:#111;color:#fff;border-color:#111;font-weight:500}
.minoda-chat-controls button[data-chat-action="begin"]:hover{background:#222}
.minoda-chat-controls button[data-chat-action="skip"]{min-height:22px;background:none;border:none;text-decoration:underline;color:#666;padding:0;font-size:10px}
.minoda-chat-controls button[data-chat-action="answer"]{flex:1;background:#fff;border-color:#bbb;font-weight:500}
.minoda-chat-controls button[data-chat-action="answer"]:first-child{background:#111;color:#fff;border-color:#111}
.minoda-chat-controls .minoda-chat-whatsapp{width:100%;background:#111;border-color:#111;color:#fff;font-weight:500}
.minoda-chat-controls .minoda-chat-whatsapp:hover{background:#222}
.minoda-chat-composer{display:flex;align-items:center;gap:8px;padding:8px 10px;flex-shrink:0;border-top:1px solid #e5e5e5;background:#fff}
.minoda-chat-composer input{min-width:0;flex:1;border:1px solid #d4d4d4;border-radius:20px;background:#fff;padding:8px 12px;color:#111;font-family:inherit;font-size:13px}
.minoda-chat-composer input::placeholder{font-size:11.5px;color:#888}
.minoda-chat-composer input:focus-visible{outline:2px solid #333;outline-offset:1px}

/* Perfect Circular Send Button - immune to global button padding/overrides */
.minoda-chat-composer button{
  box-sizing:border-box!important;
  position:static!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex-shrink:0!important;
  width:34px!important;
  height:34px!important;
  min-width:34px!important;
  min-height:34px!important;
  max-width:34px!important;
  max-height:34px!important;
  padding:0!important;
  margin:0!important;
  border:none!important;
  border-radius:50%!important;
  background:#080808!important;
  color:#ffffff!important;
  cursor:pointer!important;
  outline:none!important;
  line-height:1!important;
  transition:transform 140ms var(--ease-standard),background 140ms var(--ease-standard)!important;
}
.minoda-chat-composer button:hover{background:#242424!important;transform:scale(1.06)!important}
.minoda-chat-composer button:disabled{opacity:.35!important;cursor:wait!important;transform:none!important}
.minoda-chat-composer button svg{
  width:16px!important;
  height:16px!important;
  min-width:16px!important;
  min-height:16px!important;
  max-width:16px!important;
  max-height:16px!important;
  display:block!important;
  margin:0 auto!important;
  padding:0!important;
  flex-shrink:0!important;
  stroke:#ffffff!important;
  stroke-width:2.2!important;
  pointer-events:none!important;
  transform:none!important;
}

.minoda-chat-error{flex-shrink:0;margin:0;padding:0 12px 4px;color:#d32f2f;font-size:9.5px}
.minoda-chat-error:empty{display:none}
.minoda-chat-bottom{flex-shrink:0;display:flex;align-items:center;justify-content:center;gap:6px;min-height:18px;padding:0 8px;color:#777;font-size:8px}
.minoda-chat-bottom button{border:0;background:none;text-decoration:underline;color:#555;cursor:pointer;font-size:8.5px;padding:3px 0}
.minoda-phone-home{flex-shrink:0;width:80px;height:3.5px;border-radius:99px;background:#111;margin:6px auto 5px}
.minoda-thermometer [hidden]{display:none!important}
.minoda-phone-caption{text-align:center;color:#737373;font-size:9.5px;line-height:1.4;margin-top:14px}
.minoda-phone-caption button{display:block;margin:4px auto 0;color:inherit;border:none;background:none;text-decoration:underline;font-size:9.5px;cursor:pointer}
.minoda-thermometer button:focus-visible,.minoda-checkout a:focus-visible{outline:2px solid #888;outline-offset:4px}

/* Gestão Financeira (Checkout) */
.minoda-checkout{background:#080808;color:#f2f2f2;padding:clamp(36px,4.5vw,52px) 0}
.minoda-checkout-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(28px,5vw,72px);align-items:center}
.minoda-checkout h2{font-size:clamp(32px,4vw,52px);line-height:1.04;letter-spacing:-.055em;margin:0}
.minoda-checkout .eyebrow{color:#aaa;margin-bottom:14px}
.minoda-checkout-action p{color:#bbb;line-height:1.6;max-width:42ch;margin:0 0 18px;font-size:clamp(14px,1.2vw,16px)}
.minoda-checkout-action small{display:block;margin-top:12px;color:#888;font-size:10.5px}
.minoda-checkout .btn{gap:16px;border-radius:12px;padding:9px 12px 9px 20px;font-size:14px}
.minoda-checkout .minoda-arrow-circle{border-color:#0003}

@keyframes minoda-message-in{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
@keyframes minoda-typing{0%,60%,100%{opacity:.35;transform:none}30%{opacity:1;transform:translateY(-3px)}}
@keyframes minoda-phone-in{from{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}
.minoda-chat-phone{animation:minoda-phone-in 500ms var(--ease-standard) both}

@media(hover:hover) and (pointer:fine){
  .minoda-diagnostic-start:hover .minoda-arrow-circle svg,.minoda-checkout .btn:hover .minoda-arrow-circle svg{transform:translate(2px,-2px)}
  .minoda-chat-controls button:hover{border-color:#111}
}

@media(max-width:767px){
  .minoda-thermometer{padding:32px 0}
  .minoda-diagnostic-grid,.minoda-checkout-grid{grid-template-columns:1fr;gap:28px}
  .minoda-diagnostic-copy h2{font-size:clamp(34px,8vw,52px)}
  .minoda-diagnostic-description{margin:14px 0 16px;font-size:15px}
  .minoda-diagnostic-facts{margin-top:16px;gap:6px 12px;font-size:10px}
  .minoda-diagnostic-facts span+span:before{margin-right:12px}
  .minoda-chat-phone{width:284px!important;min-width:284px!important;max-width:284px!important;height:460px!important;min-height:460px!important;max-height:460px!important;border-radius:38px}
  .minoda-chat-phone:before{border-radius:34px}
  .minoda-chat-screen{border-radius:28px}
  .minoda-phone-stage{padding:0 4px}
  .minoda-diagnostic-start{max-width:100%;gap:12px!important}
  .minoda-checkout{padding:32px 0}
  .minoda-checkout h2{font-size:clamp(28px,7vw,42px)}
}

@media(prefers-reduced-motion:reduce){
  .minoda-chat-phone,.minoda-chat-message,.minoda-chat-message.is-typing i{animation:none;opacity:1;transform:none}
  .minoda-chat-progress i,.minoda-arrow-circle svg{transition:none}
  .minoda-phone-caption button{display:none}
  .minoda-masked-line>span{transform:none!important}
}
