/* ===== Assistente virtual Sotrel ===== */
.sa-launcher{position:fixed;right:18px;bottom:88px;z-index:1100;width:58px;height:58px;border-radius:50%;border:0;cursor:pointer;background:var(--red,#C8102E);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 20px -6px rgba(0,0,0,.45);transition:transform .2s,background .2s}
.sa-launcher:hover{transform:scale(1.07);background:var(--red-dark,#9E0C24)}
.sa-launcher svg{width:28px;height:28px}
.sa-launcher.active{background:var(--ink,#16181B)}
.sa-launcher.active svg{width:22px;height:22px}
.sa-launcher::after{content:"";position:absolute;inset:-4px;border-radius:50%;border:2px solid var(--red,#C8102E);opacity:0;animation:sa-pulse 2.6s ease-out 3s 3}
@keyframes sa-pulse{0%{opacity:.7;transform:scale(.9)}100%{opacity:0;transform:scale(1.35)}}

.sa-teaser{position:fixed;right:88px;bottom:96px;z-index:1099;max-width:250px;background:#fff;color:var(--text,#3B3F45);font-size:14px;line-height:1.45;padding:12px 16px;border-radius:12px 12px 2px 12px;box-shadow:0 10px 30px -10px rgba(0,0,0,.35);border:1px solid var(--line,#E4E2DE);cursor:pointer;opacity:0;transform:translateY(8px);pointer-events:none;transition:opacity .3s,transform .3s}
.sa-teaser strong{color:var(--ink,#16181B)}
.sa-teaser.show{opacity:1;transform:none;pointer-events:auto}

.sa-panel{position:fixed;right:18px;bottom:158px;z-index:1100;width:380px;height:min(600px,calc(100vh - 190px));background:#fff;border-radius:16px;box-shadow:0 24px 60px -20px rgba(0,0,0,.45);border:1px solid var(--line,#E4E2DE);display:flex;flex-direction:column;overflow:hidden;opacity:0;transform:translateY(14px) scale(.98);transform-origin:bottom right;transition:opacity .22s,transform .22s;font-family:"Karla",system-ui,sans-serif}
.sa-panel.open{opacity:1;transform:none}
.sa-panel[hidden]{display:none}

.sa-head{display:flex;align-items:center;gap:12px;padding:14px 12px 14px 16px;background:var(--ink,#16181B);color:#fff;border-bottom:4px solid var(--red,#C8102E)}
.sa-avatar{flex:none;width:40px;height:40px;border-radius:50%;background:var(--red,#C8102E);color:#fff;display:flex;align-items:center;justify-content:center;font-family:"Oswald",sans-serif;font-size:20px;font-weight:700}
.sa-title{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.25}
.sa-title strong{font-family:"Oswald",sans-serif;font-weight:600;font-size:17px;letter-spacing:.4px}
.sa-title span{font-size:12.5px;color:rgba(255,255,255,.7);display:flex;align-items:center;gap:6px}
.sa-title i{width:8px;height:8px;border-radius:50%;background:#2ECC71;display:inline-block}
.sa-icon-btn{flex:none;width:36px;height:36px;border:0;border-radius:8px;background:transparent;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}
.sa-icon-btn:hover{background:rgba(255,255,255,.12)}
.sa-icon-btn svg{width:18px;height:18px}

.sa-body{flex:1;overflow-y:auto;padding:18px 14px 10px;background:var(--stone,#F4F3F1);display:flex;flex-direction:column;gap:10px;scroll-behavior:smooth}
.sa-msg{max-width:86%;padding:10px 14px;border-radius:14px;font-size:14.5px;line-height:1.5;word-wrap:break-word;animation:sa-in .25s ease}
@keyframes sa-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.sa-bot{align-self:flex-start;background:#fff;color:var(--text,#3B3F45);border:1px solid var(--line,#E4E2DE);border-bottom-left-radius:4px}
.sa-bot a{color:var(--red,#C8102E);font-weight:700}
.sa-bot ul{margin:6px 0 0 18px}
.sa-bot li{margin:2px 0}
.sa-user{align-self:flex-end;background:var(--red,#C8102E);color:#fff;border-bottom-right-radius:4px}
.sa-opt{color:var(--muted,#6B7078);font-size:12.5px}
.sa-typing{display:flex;gap:4px;padding:14px 16px}
.sa-typing span{width:7px;height:7px;border-radius:50%;background:#B9BCC1;animation:sa-dot 1s infinite}
.sa-typing span:nth-child(2){animation-delay:.15s}.sa-typing span:nth-child(3){animation-delay:.3s}
@keyframes sa-dot{0%,60%,100%{transform:none;opacity:.5}30%{transform:translateY(-4px);opacity:1}}

.sa-choices{display:flex;flex-wrap:wrap;gap:8px;padding:2px 0 4px}
.sa-chip{font:inherit;font-size:14px;font-weight:700;color:var(--red,#C8102E);background:#fff;border:1.5px solid var(--red,#C8102E);border-radius:999px;padding:8px 14px;cursor:pointer;text-align:left;line-height:1.3;transition:background .15s,color .15s}
.sa-chip:hover,.sa-chip:focus-visible{background:var(--red,#C8102E);color:#fff}
.sa-chip-primary{background:var(--red,#C8102E);color:#fff}
.sa-chip-primary:hover{background:var(--red-dark,#9E0C24);border-color:var(--red-dark,#9E0C24)}
.sa-menu,.sa-faq{flex-direction:column;align-items:stretch}
.sa-menu .sa-chip{display:flex;align-items:center;gap:12px;border-radius:10px;padding:13px 16px;font-family:"Oswald",sans-serif;font-weight:500;font-size:15.5px;letter-spacing:.5px;text-transform:uppercase;border-width:1px;border-color:var(--line,#E4E2DE);color:var(--ink,#16181B);position:relative;overflow:hidden}
.sa-menu .sa-chip::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:var(--red,#C8102E)}
.sa-menu .sa-chip b{font-size:18px;width:24px;text-align:center}
.sa-menu .sa-chip:hover{background:var(--ink,#16181B);color:#fff;border-color:var(--ink,#16181B)}
.sa-faq .sa-chip{border-radius:10px;font-weight:500;color:var(--ink-2,#2A2D31);border-color:var(--line,#E4E2DE);border-width:1px}
.sa-faq .sa-chip:hover{background:#fff;color:var(--red,#C8102E);border-color:var(--red,#C8102E)}
.sa-faq .sa-chip-primary{color:#fff;border-color:var(--red,#C8102E)}
.sa-faq .sa-chip-primary:hover{background:var(--red-dark,#9E0C24);color:#fff}

.sa-summary{min-width:230px}
.sa-summary > strong{display:block;font-family:"Oswald",sans-serif;font-size:15px;letter-spacing:.8px;text-transform:uppercase;color:var(--red,#C8102E);border-bottom:1px solid var(--line,#E4E2DE);padding-bottom:6px;margin-bottom:6px}
.sa-summary dl{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;font-size:13.5px}
.sa-summary dt{font-weight:700;color:var(--ink,#16181B)}
.sa-summary dd{margin:0;white-space:pre-wrap}

.sa-input{display:flex;align-items:flex-end;gap:8px;padding:10px 12px;border-top:1px solid var(--line,#E4E2DE);background:#fff}
.sa-input textarea{flex:1;resize:none;font:inherit;font-size:15px;line-height:1.4;padding:10px 12px;border:1px solid #CFCCC6;border-radius:10px;max-height:110px;color:var(--ink,#16181B);background:#fff}
.sa-input textarea:focus{outline:none;border-color:var(--red,#C8102E);box-shadow:0 0 0 3px rgba(200,16,46,.15)}
.sa-send{flex:none;width:44px;height:44px;border:0;border-radius:10px;background:var(--red,#C8102E);color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}
.sa-send:hover{background:var(--red-dark,#9E0C24)}
.sa-send svg{width:20px;height:20px}

@media (max-width:640px){
  .sa-panel{inset:0;width:auto;height:auto;border-radius:0;border:0}
  .sa-launcher.active{display:none}
  html.sa-lock,html.sa-lock body{overflow:hidden}
  .sa-teaser{right:84px;bottom:92px;max-width:210px}
  .sa-msg{max-width:90%}
}
@media (prefers-reduced-motion:reduce){.sa-launcher::after{animation:none}.sa-msg{animation:none}}
