/* OLEA 6.4.0 | OLI AI Personal Host */
#oli.oli3d .oli-bubble.oli-ai-panel{
  width:min(390px,calc(100vw - 24px))!important;
  max-height:min(72dvh,680px)!important;
  padding:0!important;
  overflow:hidden!important;
  border:1px solid rgba(211,169,75,.38)!important;
  background:linear-gradient(180deg,rgba(10,24,34,.985),rgba(6,17,25,.99))!important;
  box-shadow:0 24px 80px rgba(0,0,0,.48),inset 0 1px 0 rgba(255,255,255,.025)!important;
}
#oli .oli-ai-shell{display:flex;flex-direction:column;min-height:420px;max-height:min(72dvh,680px)}
#oli .oli-ai-head{padding:20px 48px 14px 20px;border-bottom:1px solid rgba(255,255,255,.08);position:relative}
#oli .oli-ai-kicker{display:flex;align-items:center;gap:8px;font-size:11px;letter-spacing:.17em;text-transform:uppercase;color:#d8ae56;font-weight:700}
#oli .oli-ai-dot{width:7px;height:7px;border-radius:50%;background:#75c98c;box-shadow:0 0 12px rgba(117,201,140,.45)}
#oli .oli-ai-head h3{margin:5px 0 4px;font-size:24px;line-height:1.08;color:#f5efe5;font-family:Georgia,serif;font-weight:500}
#oli .oli-ai-sub{font-size:13px;line-height:1.45;color:rgba(226,232,235,.72)}
#oli.oli3d .oli-ai-panel .oli-close{position:absolute!important;top:10px!important;right:10px!important;margin:0!important;background:transparent!important;border:1px solid rgba(255,255,255,.12)!important;color:#e8dfd0!important;border-radius:50%!important;width:32px!important;height:32px!important;font-size:22px!important;line-height:1!important}
#oli .oli-ai-quick{padding:13px 14px 4px;display:flex;gap:7px;overflow-x:auto;scrollbar-width:none}
#oli .oli-ai-quick::-webkit-scrollbar{display:none}
#oli .oli-ai-chip{flex:0 0 auto;border:1px solid rgba(211,169,75,.28);background:rgba(211,169,75,.07);color:#eadfc8;border-radius:999px;padding:8px 11px;font-size:12px;cursor:pointer;white-space:nowrap;transition:.18s ease}
#oli .oli-ai-chip:hover{background:rgba(211,169,75,.14);border-color:rgba(211,169,75,.5)}
#oli .oli-ai-log{padding:12px 14px 8px;display:flex;flex-direction:column;gap:10px;overflow-y:auto;min-height:170px;max-height:340px;scroll-behavior:smooth}
#oli .oli-ai-msg{max-width:88%;padding:10px 12px;border-radius:14px;font-size:13.5px;line-height:1.5;white-space:pre-wrap;word-wrap:break-word}
#oli .oli-ai-msg.user{align-self:flex-end;background:linear-gradient(135deg,#d2a247,#e1bf72);color:#15202a;border-bottom-right-radius:4px;font-weight:600}
#oli .oli-ai-msg.assistant{align-self:flex-start;background:rgba(255,255,255,.055);color:#edf0f1;border:1px solid rgba(255,255,255,.075);border-bottom-left-radius:4px}
#oli .oli-ai-msg.system{align-self:center;background:transparent;color:rgba(225,232,235,.55);font-size:11.5px;text-align:center;padding:4px 10px}
#oli .oli-ai-thinking{display:inline-flex;gap:4px;align-items:center;height:15px}
#oli .oli-ai-thinking i{width:5px;height:5px;border-radius:50%;background:#d6ae5a;animation:oliAiDot 1.1s infinite ease-in-out}
#oli .oli-ai-thinking i:nth-child(2){animation-delay:.15s}#oli .oli-ai-thinking i:nth-child(3){animation-delay:.3s}
@keyframes oliAiDot{0%,70%,100%{opacity:.25;transform:translateY(0)}35%{opacity:1;transform:translateY(-3px)}}
#oli .oli-ai-compose{padding:10px 14px 13px;border-top:1px solid rgba(255,255,255,.075);background:rgba(0,0,0,.08)}
#oli .oli-ai-form{display:flex;align-items:flex-end;gap:7px}
#oli .oli-ai-input{resize:none;flex:1;min-height:42px;max-height:104px;border:1px solid rgba(255,255,255,.12);background:rgba(1,10,16,.74);color:#f2f2ef;border-radius:12px;padding:11px 12px;font:inherit;font-size:13.5px;line-height:1.4;outline:none}
#oli .oli-ai-input:focus{border-color:rgba(211,169,75,.58);box-shadow:0 0 0 2px rgba(211,169,75,.08)}
#oli .oli-ai-send{width:42px;height:42px;flex:0 0 42px;border:0;border-radius:12px;background:linear-gradient(135deg,#c99736,#e4c475);color:#101a22;font-size:18px;font-weight:900;cursor:pointer}
#oli .oli-ai-send:disabled{opacity:.45;cursor:wait}
#oli .oli-ai-foot{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:8px;font-size:10.5px;color:rgba(218,225,229,.48)}
#oli .oli-ai-foot-actions{display:flex;gap:10px}
#oli .oli-ai-foot a,#oli .oli-ai-foot button{border:0;background:none;padding:0;color:#d7b76f;font:inherit;cursor:pointer;text-decoration:none}
#oli .oli-ai-error{color:#f2b2a8!important}


/* =============================================================
   OLEA V6.4.8 — CLEAN MOBILE PORTAL CHAT
   Native scroll only. No touch/pointer interception.
   ============================================================= */
.oli-ai-suggest-toggle{display:none}

@media (pointer:coarse){
  body.oli-ai-chat-open{overflow:hidden!important}
  body > .oli-ai-panel.oli-ai-mobile-portal{
    position:fixed!important;
    z-index:220!important;
    left:12px!important;
    right:12px!important;
    top:calc(env(safe-area-inset-top,0px) + 8px)!important;
    bottom:calc(env(safe-area-inset-bottom,0px) + 102px)!important;
    width:auto!important;
    max-width:none!important;
    max-height:none!important;
    padding:0!important;
    display:none;
    overflow:hidden!important;
    border:1px solid rgba(211,169,75,.42)!important;
    border-radius:18px!important;
    background:linear-gradient(180deg,rgba(8,23,33,.985),rgba(5,16,24,.995))!important;
    color:#edf0f1!important;
    box-shadow:0 24px 80px rgba(0,0,0,.58),inset 0 1px 0 rgba(255,255,255,.025)!important;
    font-family:inherit!important;
    touch-action:auto!important;
  }
  body > .oli-ai-panel.oli-ai-mobile-portal.is-open{display:block!important}
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-shell{
    display:flex!important;
    flex-direction:column!important;
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    overflow:hidden!important;
  }
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-head{
    flex:0 0 auto!important;
    padding:16px 16px 12px!important;
    border-bottom:1px solid rgba(255,255,255,.08)!important;
    background:transparent!important;
  }
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-kicker{display:flex!important;align-items:center!important;gap:8px!important;font-size:11px!important;letter-spacing:.17em!important;text-transform:uppercase!important;color:#d8ae56!important;font-weight:700!important}
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-dot{width:7px!important;height:7px!important;border-radius:50%!important;background:#75c98c!important;box-shadow:0 0 12px rgba(117,201,140,.45)!important}
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-head h3{margin:5px 0 4px!important;font:500 27px/1.08 Georgia,serif!important;color:#f5efe5!important}
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-sub{font-size:13px!important;line-height:1.45!important;color:rgba(226,232,235,.72)!important}

  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-body{
    flex:1 1 auto!important;
    min-height:0!important;
    display:flex!important;
    flex-direction:column!important;
    overflow:hidden!important;
    touch-action:auto!important;
  }
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-suggest-toggle{
    display:none;
    flex:0 0 auto!important;
    align-self:flex-start!important;
    margin:10px 12px 0!important;
    padding:8px 12px!important;
    border:1px solid rgba(211,169,75,.35)!important;
    border-radius:999px!important;
    background:rgba(211,169,75,.07)!important;
    color:#d7b76f!important;
    font:600 12px/1.2 inherit!important;
  }
  body > .oli-ai-panel.oli-ai-mobile-portal.oli-ai-engaged .oli-ai-suggest-toggle{display:inline-flex!important}
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-quick{
    flex:0 0 auto!important;
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:7px!important;
    padding:11px 12px 7px!important;
    overflow:visible!important;
  }
  body > .oli-ai-panel.oli-ai-mobile-portal.oli-ai-engaged:not(.show-suggestions) .oli-ai-quick{display:none!important}
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-chip{
    min-height:48px!important;
    padding:9px 10px!important;
    border:1px solid rgba(211,169,75,.32)!important;
    border-radius:14px!important;
    background:rgba(211,169,75,.075)!important;
    color:#eadfc8!important;
    white-space:normal!important;
    text-align:left!important;
    font:500 12.5px/1.25 inherit!important;
    appearance:none!important;-webkit-appearance:none!important;
  }
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-log{
    flex:1 1 auto!important;
    min-height:0!important;
    max-height:none!important;
    height:auto!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior-y:contain!important;
    touch-action:pan-y!important;
    scroll-behavior:auto!important;
    display:flex!important;
    flex-direction:column!important;
    gap:10px!important;
    padding:10px 12px 12px!important;
  }
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-log *{touch-action:auto!important}
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-msg{max-width:92%!important;padding:10px 12px!important;border-radius:14px!important;font-size:14.5px!important;line-height:1.5!important;white-space:pre-wrap!important;overflow-wrap:anywhere!important}
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-msg.user{align-self:flex-end!important;background:linear-gradient(135deg,#d2a247,#e1bf72)!important;color:#15202a!important;border:0!important;border-bottom-right-radius:4px!important;font-weight:600!important}
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-msg.assistant{align-self:flex-start!important;background:rgba(255,255,255,.055)!important;color:#edf0f1!important;border:1px solid rgba(255,255,255,.075)!important;border-bottom-left-radius:4px!important}
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-msg.system{align-self:center!important;background:transparent!important;color:rgba(225,232,235,.55)!important;font-size:11.5px!important;text-align:center!important;padding:4px 10px!important}

  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-compose{
    flex:0 0 auto!important;
    padding:10px 12px 12px!important;
    border-top:1px solid rgba(255,255,255,.08)!important;
    background:linear-gradient(180deg,rgba(6,17,25,.97),rgba(6,17,25,.995))!important;
  }
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-form{display:flex!important;align-items:flex-end!important;gap:8px!important}
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-input{flex:1 1 auto!important;width:auto!important;min-height:46px!important;max-height:104px!important;resize:none!important;border:1px solid rgba(255,255,255,.14)!important;background:rgba(1,10,16,.78)!important;color:#f2f2ef!important;border-radius:13px!important;padding:11px 12px!important;font:inherit!important;font-size:16px!important;line-height:1.35!important;outline:none!important;appearance:none!important;-webkit-appearance:none!important}
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-input:focus{border-color:rgba(211,169,75,.62)!important;box-shadow:0 0 0 2px rgba(211,169,75,.08)!important}
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-send{width:50px!important;height:50px!important;flex:0 0 50px!important;border:0!important;border-radius:13px!important;background:linear-gradient(135deg,#c99736,#e4c475)!important;color:#101a22!important;font-size:20px!important;font-weight:900!important;appearance:none!important;-webkit-appearance:none!important}
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-foot{display:flex!important;justify-content:space-between!important;align-items:flex-start!important;gap:8px!important;margin-top:8px!important;font-size:10.5px!important;line-height:1.35!important;color:rgba(218,225,229,.52)!important}
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-foot-actions{display:flex!important;gap:12px!important;flex:0 0 auto!important}
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-foot a,
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-foot button{border:0!important;background:none!important;padding:0!important;color:#d7b76f!important;font:inherit!important;text-decoration:none!important;appearance:none!important;-webkit-appearance:none!important}
}

@media (pointer:coarse) and (orientation:landscape){
  body > .oli-ai-panel.oli-ai-mobile-portal{left:8px!important;right:112px!important;top:6px!important;bottom:6px!important;border-radius:14px!important}
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-head{padding:8px 12px 6px!important}
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-head h3{font-size:21px!important;margin:2px 0!important}
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-sub{font-size:11px!important}
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-quick{gap:5px!important;padding:6px 9px 5px!important}
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-chip{min-height:34px!important;font-size:10.8px!important;padding:6px 8px!important}
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-msg{font-size:12.5px!important;line-height:1.4!important}
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-log{padding:6px 9px 8px!important;gap:7px!important}
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-compose{padding:6px 9px!important}
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-input{min-height:40px!important;font-size:15px!important;padding:8px 10px!important}
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-send{width:40px!important;height:40px!important;flex-basis:40px!important}
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-foot{font-size:9.5px!important;margin-top:5px!important}
}

/* =============================================================
   OLEA V6.4.14 — LIVE THINKING INDICATOR FIX
   Visual only. No event / scroll / click logic changes.
   ============================================================= */
#oli .oli-ai-thinking-msg,
body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-thinking-msg{
  width:max-content!important;
  min-width:62px!important;
  padding:13px 16px!important;
}
#oli .oli-ai-thinking,
body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-thinking{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  min-height:18px!important;
}
#oli .oli-ai-thinking i,
body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-thinking i{
  display:block!important;
  width:9px!important;
  height:9px!important;
  flex:0 0 9px!important;
  border-radius:50%!important;
  background:#81888d!important;
  opacity:.45!important;
  transform:translateY(0) scale(.9);
  box-shadow:0 0 0 rgba(215,183,111,0);
  animation:oliAiThinkingPulse 1.05s infinite ease-in-out!important;
}
#oli .oli-ai-thinking i:nth-child(2),
body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-thinking i:nth-child(2){animation-delay:.14s!important}
#oli .oli-ai-thinking i:nth-child(3),
body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-thinking i:nth-child(3){animation-delay:.28s!important}
@keyframes oliAiThinkingPulse{
  0%,72%,100%{opacity:.34;transform:translateY(0) scale(.88);background:#737b81;box-shadow:0 0 0 rgba(215,183,111,0)}
  34%{opacity:1;transform:translateY(-2px) scale(1.16);background:#d7b76f;box-shadow:0 0 10px rgba(215,183,111,.22)}
}
@media (prefers-reduced-motion:reduce){
  #oli .oli-ai-thinking i,
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-thinking i{animation:none!important;opacity:.8!important;transform:none!important}
}


/* OLEA V7.0 — transparent analytics retention note */
.oli-ai-privacy{font-size:10px;line-height:1.35;color:rgba(219,211,194,.48);margin-top:6px;text-align:left}
@media(max-width:740px){.oli-ai-privacy{font-size:9px;margin-top:4px;color:rgba(219,211,194,.44)}}


/* =============================================================
   OLEA V7.0.1 — ACTION BUTTON VISUAL POLISH
   Styles contextual OLI actions consistently with the OLEA UI.
   Visual only: no action/click logic changes.
   ============================================================= */
#oli .oli-ai-actions,
body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:12px;
  padding-top:11px;
  border-top:1px solid rgba(255,255,255,.075);
}
#oli .oli-ai-action,
body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-action{
  appearance:none;
  -webkit-appearance:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:40px;
  max-width:100%;
  padding:9px 14px;
  margin:0;
  border:1px solid rgba(211,169,75,.50);
  border-radius:999px;
  background:linear-gradient(180deg,rgba(211,169,75,.11),rgba(211,169,75,.055));
  color:#eadfc8;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
  font:600 12.5px/1.2 inherit;
  letter-spacing:.005em;
  text-align:center;
  text-decoration:none;
  cursor:pointer;
  white-space:normal;
  transition:background .18s ease,border-color .18s ease,transform .18s ease,color .18s ease;
}
#oli .oli-ai-action > span:first-child,
body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-action > span:first-child{
  min-width:0;
  overflow-wrap:anywhere;
}
#oli .oli-ai-action > span:last-child,
body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-action > span:last-child{
  flex:0 0 auto;
  color:#d7b76f;
  font-size:12px;
  opacity:.88;
}
#oli .oli-ai-action:hover,
body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-action:hover{
  background:rgba(211,169,75,.16);
  border-color:rgba(224,190,111,.72);
  color:#fff7e8;
}
#oli .oli-ai-action:active,
body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-action:active{
  transform:translateY(1px);
}
#oli .oli-ai-action.is-primary,
body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-action.is-primary{
  border-color:rgba(218,178,86,.68);
  background:linear-gradient(135deg,rgba(201,151,54,.20),rgba(228,196,117,.09));
  color:#f2e7cf;
}
#oli .oli-ai-action[data-action="whatsapp"],
body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-action[data-action="whatsapp"]{
  border-color:rgba(211,169,75,.50);
  background:linear-gradient(180deg,rgba(211,169,75,.10),rgba(211,169,75,.05));
  color:#eadfc8;
}
@media (pointer:coarse){
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-actions{
    gap:7px!important;
    margin-top:10px!important;
    padding-top:10px!important;
  }
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-action{
    min-height:42px!important;
    padding:9px 13px!important;
    font-size:12.5px!important;
  }
}
@media (pointer:coarse) and (orientation:landscape){
  body > .oli-ai-panel.oli-ai-mobile-portal .oli-ai-action{
    min-height:36px!important;
    padding:7px 11px!important;
    font-size:11.5px!important;
  }
}
