:root {
  --sj-pink: #ff7493;
  --sj-blue: #5aa1d4;
  --sj-dark: #07090d;
  --sj-dark-2: #10141c;
  --sj-white: #ffffff;
  --sj-ink: #111827;
  --sj-muted: #697386;
  --sj-light: #f6f8fb;
  --sj-soft-blue: #eef7fd;
  --sj-border: rgba(17, 24, 39, .09);
  --shadow: 0 25px 70px rgba(14, 22, 36, .13);
}

html { scroll-behavior: smooth; }
body {
  font-family: 'Montserrat', sans-serif;
  color: var(--sj-ink);
  background: #fff;
  overflow-x: hidden;
}
body, p, li, button, input, textarea { font-size: 1rem; }
::selection { background: var(--sj-pink); color: #fff; }
img { max-width: 100%; }
a { text-decoration: none; }

h1, h2, h3, h4 { letter-spacing: -.035em; font-weight: 600; }
/*h1 { font-size: clamp(2.7rem, 6vw, 5.65rem); line-height: .98; color: #fff; }*/
h2 { font-size: clamp(2.1rem, 4vw, 4rem); line-height: 1.04; }
h3 { font-size: 1.25rem; }
.section-pad { padding: 110px 0; position: relative; }
.eyebrow { font-size: .76rem; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; color: #ff7493;}
.text-pink { color: var(--sj-pink) !important; }
.text-blue { color: var(--sj-blue) !important; }
.lead-muted { color: var(--sj-muted); font-size: 1.08rem; line-height: 1.8; }
.section-heading { max-width: 820px; margin: 0 auto; }
.section-heading > p { color: var(--sj-muted); max-width: 690px; margin: 1rem auto 0; line-height: 1.75; }

#mainNav { transition: .3s ease; padding: 20px 0; z-index: 1030; }
#mainNav.scrolled { background: rgba(7,9,13,.92); backdrop-filter: blur(16px); padding: 10px 0; box-shadow: 0 10px 35px rgba(0,0,0,.18); }
.navbar-brand img { width: 210px; height: auto; }
.navbar .nav-link { color: rgba(255,255,255,1); font-weight: 600; font-size: .9rem; padding: .7rem .8rem !important; }
.navbar .nav-link:hover, .navbar .nav-link.active { color: #fff; }
.navbar-toggler { border-color: rgba(255,255,255,.2); }
.navbar-toggler-icon { filter: invert(1); }

.btn { border-radius: 999px; font-weight: 700; padding: .85rem 1.25rem; transition: transform .25s ease, box-shadow .25s ease, background .25s ease; }
.btn:hover { transform: translateY(-2px); }
.btn-brand { background: var(--sj-pink); border-color: var(--sj-pink); color: #FFF; box-shadow: 0 12px 35px rgba(255,116,147,.24); }
.btn-brand:hover, .btn-brand:focus { background: #ff89a4; border-color: #ff89a4; color: #0b0d11; box-shadow: 0 16px 40px rgba(255,116,147,.32); }
.btn-outline-light { border-color: rgba(255,255,255,.25); }

.hero-section { min-height: 100vh; background: radial-gradient(circle at 80% 20%, rgba(90,161,212,.10), transparent 35%), var(--sj-dark); overflow: hidden; position: relative; }
.hero-section::before {
  content:""; position:absolute; inset:0; opacity:.22;
  background-image: linear-gradient(rgba(90,161,212,.12) 1px, transparent 1px), linear-gradient(90deg, rgba(90,161,212,.12) 1px, transparent 1px);
  background-size: 54px 54px; mask-image: linear-gradient(to bottom, black, transparent 86%);
}
.hero-section h1 { font-size: clamp(2.25rem, 4.8vw, 4.5rem); line-height: .98; color: #fff; }
.hero-copy { color: rgba(255,255,255,.68); font-size: 1.12rem; line-height: 1.8; max-width: 680px; }
.microcopy { color: rgba(255,255,255,.56); font-size: .88rem; }
.hero-orb, .contact-orb { position:absolute; border-radius: 42% 58% 60% 40% / 45% 48% 52% 55%; filter: blur(.1px); opacity:.8; }
.orb-pink { width: 280px; height: 280px; background: linear-gradient(135deg,var(--sj-pink),#c83f77); right:-110px; top:10%; animation: drift 10s ease-in-out infinite; }
.orb-blue { width: 210px; height:210px; background: linear-gradient(145deg,var(--sj-blue),#315c86); left:-80px; bottom:7%; animation: drift 12s ease-in-out infinite reverse; }
@keyframes drift { 0%,100%{transform:translate(0,0) rotate(0)} 50%{transform:translate(14px,-18px) rotate(8deg)} }

.dashboard-shell { background: rgba(255,255,255,.055); border:1px solid rgba(255,255,255,.12); border-radius: 28px; backdrop-filter: blur(18px); box-shadow: 0 40px 90px rgba(0,0,0,.42); overflow:hidden; color: #FFF !important; }
.dashboard-topbar { height:48px; border-bottom:1px solid rgba(255,255,255,.08); display:flex; align-items:center; justify-content:space-between; padding:0 18px; color: #FFF !important; }
.dot { width:8px; height:8px; border-radius:50%; display:inline-block; color: #FFF !important; }.dot.pink{background:var(--sj-pink);color: #FFF !important;}.dot.blue{background:var(--sj-blue);color: #FFF !important;}.dot.white{background:#fff}
.mock-welcome { background:linear-gradient(135deg, rgba(90,161,212,.16), rgba(255,116,147,.12)); padding:22px; border-radius:18px; color:#fff; border:1px solid rgba(255,255,255,.08); }
.mock-welcome span { display:block; font-size:.72rem; color:rgba(255,255,255,1); text-transform:uppercase; letter-spacing:.12em; margin-bottom:7px; }.mock-welcome strong{font-size:1.15rem}
.metric-card, .chart-card, .ai-card { background:rgba(255,255,255,.065); border:1px solid rgba(255,255,255,.08); border-radius:18px; padding:18px; color:#fff; }
.metric-card small { color:rgba(255,255,255,1); display:block; margin-bottom:8px; font-size:.68rem; }.metric-card strong{font-size:1.65rem}.trend{display:block;font-size:.62rem;color:rgba(255,255,255,.45);margin-top:3px}.trend.positive{color:#86d6b0}
.badge-soft { background:rgba(90,161,212,.14); color:#9fd4f6; border:1px solid rgba(90,161,212,.26); padding:5px 9px; border-radius:999px; font-size:.62rem; }
.bars { height:130px; display:flex; align-items:flex-end; gap:9px; }.bars span{flex:1; border-radius:8px 8px 3px 3px; background:linear-gradient(to top,var(--sj-blue),var(--sj-pink)); opacity:.9; animation:barPulse 3.3s ease-in-out infinite alternate}.bars span:nth-child(2n){animation-delay:.35s}.bars span:nth-child(3n){animation-delay:.7s}@keyframes barPulse{from{filter:brightness(.8); transform:scaleY(.94); transform-origin:bottom}to{filter:brightness(1.15); transform:scaleY(1)}}
.ai-card small {color:rgba(255,255,255,.5);display:block;margin:9px 0 4px}.ai-card strong{font-size:.87rem;line-height:1.5;display:block}.ai-icon{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;background:rgba(255,116,147,.16);color:var(--sj-pink)}.ai-response{font-size:.72rem;background:rgba(255,255,255,.06);padding:10px;border-radius:10px;color:rgba(255,255,255,.66);line-height:1.45}
.floating-card { animation: floatCard 7s ease-in-out infinite; } @keyframes floatCard{0%,100%{transform:translateY(0) rotate(.2deg)}50%{transform:translateY(-12px) rotate(-.3deg)}}

.bg-light { background: var(--sj-light) !important; }
.benefit-card { height:100%; padding:30px; background:#fff; border:1px solid var(--sj-border); border-radius:22px; transition:.3s ease; }
.benefit-card:hover { transform:translateY(-7px); box-shadow:var(--shadow); }
.benefit-card i { width:48px;height:48px;border-radius:15px;background:#fff0f4;color:var(--sj-pink);display:grid;place-items:center;font-size:1.3rem;margin-bottom:24px; }
.benefit-card h3{font-size:1.1rem}.benefit-card p{color:var(--sj-muted);font-size:.92rem;line-height:1.65;margin:0}

.solutions-section { background:#fff; }
.solution-card { position:relative; min-height:360px; height:100%; padding:32px; background:#fff; border:1px solid var(--sj-border); border-radius:26px; overflow:hidden; transition:.35s ease; }
.solution-card:hover { transform:translateY(-8px); box-shadow:var(--shadow); border-color:transparent; }
.solution-icon { width:54px;height:54px;border-radius:17px;background:#fff0f4;color:var(--sj-pink);display:grid;place-items:center;font-size:1.45rem;margin-bottom:48px; }.solution-icon.blue{background:#edf6fd;color:var(--sj-blue)}
.solution-number { position:absolute; right:28px; top:27px; font-weight:800; color:#c7ced8; font-size:.75rem; }
.solution-card h3 { font-size:1.45rem; margin-bottom:13px; }.solution-card p{color:var(--sj-muted);line-height:1.7;font-size:.93rem}.chips{display:flex;gap:7px;flex-wrap:wrap;margin-top:24px}.chips span{font-size:.68rem;padding:7px 10px;border-radius:999px;background:var(--sj-light);color:#5e6675;font-weight:700}
.photo-card { color:#fff; background-size:cover; background-position:center; border:0; }.photo-card h3,.photo-card p,.photo-card .solution-number{color:#fff}.photo-card p{color:rgba(255,255,255,.78)}.photo-card .solution-icon{background:rgba(7,9,13,.68);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(8px)}.inventory-card{background-image:url('../img/inventory.jpg')}.ecommerce-card{background-image:url('../img/ecommerce.jpg')}.photo-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(7,9,13,.96),rgba(7,9,13,.18) 70%)}.solution-card-content{position:relative;z-index:2}.custom-card{background:linear-gradient(135deg,#0e1520,#0a0d13);color:#fff;border:0}.custom-card p{color:rgba(255,255,255,.62)}.custom-card .solution-number{color:rgba(255,255,255,.35)}.text-link{color:var(--sj-pink);font-weight:800;font-size:.85rem}
.mini-calendar { display:grid;grid-template-columns:repeat(7,1fr);gap:7px;margin-top:26px }.mini-calendar span{aspect-ratio:1;border-radius:9px;background:#f3f5f8}.mini-calendar span.active{background:var(--sj-pink)}.mini-calendar span.active.blue{background:var(--sj-blue)}

.ai-section { background:var(--sj-dark); color:#fff; }
.ai-section h2 { color:#fff; }.ai-grid{position:absolute;inset:0;opacity:.14;background-image:radial-gradient(rgba(90,161,212,.7) 1px, transparent 1px);background-size:24px 24px;mask-image:linear-gradient(90deg,transparent,black 50%,transparent)}
.ai-feature{display:flex;gap:13px;padding:16px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:rgba(255,255,255,.035);height:100%}.ai-feature i{color:var(--sj-blue);font-size:1.15rem}.ai-feature strong{font-size:.82rem;display:block}.ai-feature small{display:block;color:rgba(255,255,255,.46);font-size:.7rem;line-height:1.5;margin-top:4px}
.ai-demo-panel{background:#101722;border:1px solid rgba(255,255,255,.1);border-radius:28px;padding:25px;box-shadow:0 35px 90px rgba(0,0,0,.4);position:relative}.ai-demo-panel:after{content:"";position:absolute;width:110px;height:110px;background:var(--sj-pink);filter:blur(80px);opacity:.25;right:-20px;bottom:10px}.demo-panel-head{display:flex;justify-content:space-between;color:#fff;font-weight:700;font-size:.86rem;border-bottom:1px solid rgba(255,255,255,.08);padding-bottom:17px;margin-bottom:20px}.status-dot{font-size:.68rem;color:#83d6b0}.status-dot:before{content:"";width:7px;height:7px;background:#83d6b0;border-radius:50%;display:inline-block;margin-right:6px}.chat-bubble{max-width:88%;padding:14px 16px;border-radius:17px;font-size:.82rem;line-height:1.6;margin:12px 0}.chat-bubble.user{background:#1c2635;margin-left:auto;color:#fff;border-bottom-right-radius:5px}.chat-bubble.bot{background:linear-gradient(135deg,rgba(90,161,212,.18),rgba(255,116,147,.12));color:rgba(255,255,255,.82);border:1px solid rgba(90,161,212,.18);border-bottom-left-radius:5px}.bot-label{font-size:.6rem;background:var(--sj-blue);color:#08111c;border-radius:6px;padding:3px 6px;font-weight:800;margin-right:7px}.suggested-action{display:flex;align-items:center;justify-content:space-between;padding:15px;border-radius:15px;background:#f7f9fc;color:#111827;margin:18px 0}.suggested-action small{display:block;color:#778090;font-size:.63rem}.suggested-action strong{font-size:.82rem}.suggested-action button{width:38px;height:38px;border-radius:50%;border:0;background:var(--sj-pink);color:#111827}.data-row{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;align-items:center;border-top:1px solid rgba(255,255,255,.07);padding:12px 2px;color:rgba(255,255,255,.64);font-size:.73rem}.danger-pill,.warning-pill{padding:5px 7px;border-radius:8px;font-size:.62rem}.danger-pill{background:rgba(255,116,147,.14);color:#ff9eb3}.warning-pill{background:rgba(255,198,103,.14);color:#ffd28d}

.before-after { background:#fff; }
.comparison-wrap{display:grid;grid-template-columns:1fr auto 1fr;align-items:stretch;gap:24px}.comparison-side{border-radius:26px;padding:34px;min-height:310px}.before-side{background:#f8f9fb;border:1px solid var(--sj-border)}.after-side{background:#0c1118;color:#fff}.comparison-label{font-size:.7rem;font-weight:800;letter-spacing:.16em}.before-side .comparison-label{color:#9aa2af}.after-side .comparison-label{color:var(--sj-blue)}.clean-list{list-style:none;padding:0;margin:28px 0 0}.clean-list li{display:flex;gap:12px;align-items:flex-start;padding:12px 0;border-bottom:1px solid rgba(128,137,151,.12);font-size:.9rem}.before-side li{color:#6f7887}.before-side li i{color:#a6adb7}.after-side li{color:rgba(255,255,255,.75)}.after-side li i{color:var(--sj-pink)}.comparison-arrow{display:grid;place-items:center}.comparison-arrow i{width:48px;height:48px;border-radius:50%;background:var(--sj-pink);display:grid;place-items:center;color:#111;font-size:1.1rem}

.bg-soft-blue{background:var(--sj-soft-blue)}
.process-line{display:grid;grid-template-columns:repeat(5,1fr);position:relative;gap:20px}.process-line:before{content:"";position:absolute;left:5%;right:5%;top:25px;border-top:1px dashed rgba(90,161,212,.4)}.process-step{position:relative;padding-top:70px}.process-step>span{position:absolute;top:0;left:0;width:50px;height:50px;border-radius:16px;background:#fff;color:var(--sj-blue);display:grid;place-items:center;font-weight:800;font-size:.75rem;box-shadow:0 12px 30px rgba(90,161,212,.15);border:1px solid rgba(90,161,212,.2)}.process-step h3{font-size:1rem}.process-step p{color:var(--sj-muted);font-size:.82rem;line-height:1.6;margin:0}

.use-cases{background:#fff}.case-card{height:100%;min-height:330px;padding:30px;border-radius:25px;background:linear-gradient(145deg,#f8fafc,#fff);border:1px solid var(--sj-border);position:relative;overflow:hidden;transition:.3s}.case-card:hover{transform:translateY(-7px);box-shadow:var(--shadow)}.case-card>span{font-size:.7rem;text-transform:uppercase;letter-spacing:.12em;color:var(--sj-blue);font-weight:800}.case-card h3{font-size:1.55rem;margin-top:55px;max-width:260px}.case-card p{color:var(--sj-muted);font-size:.88rem;line-height:1.65;max-width:280px}.case-card>i{position:absolute;right:-10px;bottom:-20px;font-size:7.5rem;color:rgba(255,116,147,.11)}

.about-section{background:#f7f8fa}.about-photo-wrap{position:relative;border-radius:30px;overflow:hidden;box-shadow:var(--shadow)}.about-photo-wrap img{width:100%;height:560px;object-fit:cover;display:block}.photo-badge{position:absolute;left:24px;bottom:24px;background:rgba(7,9,13,.88);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.12);color:#fff;border-radius:18px;padding:15px 18px}.photo-badge strong{display:block}.photo-badge span{display:block;color:rgba(255,255,255,.5);font-size:.7rem;margin-top:3px}.values{display:grid;gap:13px}.values>div{display:grid;grid-template-columns:44px 1fr;column-gap:12px;padding:16px 0;border-bottom:1px solid var(--sj-border)}.values span{grid-row:1/3;width:38px;height:38px;border-radius:12px;background:#fff0f4;color:var(--sj-pink);display:grid;place-items:center;font-weight:800;font-size:.67rem}.values strong{font-size:.9rem}.values small{color:var(--sj-muted);font-size:.75rem;margin-top:3px}

.faq-section{background:#fff}.smart-accordion .accordion-item{border:0;border-bottom:1px solid var(--sj-border)}.smart-accordion .accordion-button{font-weight:700;color:#111827;padding:22px 0;background:transparent;box-shadow:none}.smart-accordion .accordion-button:not(.collapsed){color:var(--sj-pink)}.smart-accordion .accordion-body{padding:0 0 22px;color:var(--sj-muted);line-height:1.7;font-size:.9rem}

.contact-section{background:var(--sj-dark);color:#fff;overflow:hidden}.contact-section h2{color:#fff}.contact-orb.orb-pink{right:-130px;top:-70px}.contact-orb.orb-blue{left:-120px;bottom:-100px}.contact-highlight{display:flex;gap:14px;align-items:flex-start}.contact-highlight i{width:48px;height:48px;display:grid;place-items:center;border-radius:15px;background:rgba(255,116,147,.14);color:var(--sj-pink);font-size:1.2rem}.contact-highlight strong{display:block;font-size:.9rem}.contact-highlight span{display:block;color:rgba(255,255,255,.48);font-size:.76rem;margin-top:4px;line-height:1.5}.contact-card{background:#fff;color:#111827;padding:32px;border-radius:28px;box-shadow:0 38px 90px rgba(0,0,0,.35)}.contact-card .form-label{font-size:.72rem;font-weight:800;color:#536071}.contact-card .form-control{border:1px solid #e2e6ec;border-radius:13px;padding:.9rem 1rem;font-size:.9rem;background:#fafbfc}.contact-card .form-control:focus{border-color:var(--sj-blue);box-shadow:0 0 0 .22rem rgba(90,161,212,.12);background:#fff}.form-message{font-size:.78rem;margin-top:6px;min-height:20px}.form-message.success{color:#2c8a62}.form-message.error{color:#c24a61}

.site-footer{background:#030507;color:#fff;padding:65px 0 25px}.footer-logo{width:220px;margin-bottom:20px}.site-footer p{color:rgba(255,255,255,.47);font-size:.82rem;line-height:1.6;max-width:380px}.footer-location{font-size:.76rem;color:rgba(255,255,255,.6)}.site-footer strong{font-size:.75rem;display:block;margin-bottom:15px}.site-footer a{display:block;color:rgba(255,255,255,.5);font-size:.78rem;margin-bottom:9px}.site-footer a:hover{color:var(--sj-pink)}.footer-quote{color:rgba(255,255,255,.7)!important}.footer-bottom{border-top:1px solid rgba(255,255,255,.08);margin-top:45px;padding-top:22px;display:flex;justify-content:space-between;gap:20px;color:rgba(255,255,255,.34);font-size:.68rem}

.back-to-top{position:fixed;right:24px;bottom:24px;width:46px;height:46px;border:0;border-radius:50%;background:var(--sj-pink);color:#111;z-index:1050;box-shadow:0 15px 35px rgba(0,0,0,.2);opacity:0;visibility:hidden;transform:translateY(10px);transition:.25s}.back-to-top.show{opacity:1;visibility:visible;transform:none}

.reveal-up,.reveal-left,.reveal-right{opacity:0;transition:opacity .75s ease, transform .75s cubic-bezier(.2,.7,.2,1)}.reveal-up{transform:translateY(36px)}.reveal-left{transform:translateX(-34px)}.reveal-right{transform:translateX(34px)}.revealed{opacity:1;transform:none}

@media (max-width: 991.98px){
  .section-pad{padding:85px 0}.navbar-brand img{width:180px}#mainNav{background:rgba(7,9,13,.95);padding:12px 0}.navbar-collapse{padding:18px 0}.hero-section .min-vh-100{padding-top:130px!important;padding-bottom:80px!important}.dashboard-shell{max-width:720px;margin:0 auto}.process-line{grid-template-columns:1fr 1fr}.process-line:before{display:none}.process-step{padding-top:62px}.about-photo-wrap img{height:460px}
}
@media (max-width: 767.98px){
  h1{font-size:clamp(2.55rem,14vw,4.2rem)}h2{font-size:clamp(2rem,9vw,3.2rem)}.section-pad{padding:72px 0}.hero-copy{font-size:1rem}.dashboard-shell .row>.col-4{width:33.333%}.metric-card{padding:13px}.metric-card strong{font-size:1.2rem}.comparison-wrap{grid-template-columns:1fr}.comparison-arrow{transform:rotate(90deg)}.process-line{grid-template-columns:1fr}.process-step{padding-left:66px;padding-top:3px;min-height:105px}.process-step>span{left:0;top:0}.about-photo-wrap img{height:390px}.footer-bottom{flex-direction:column}.contact-card{padding:23px}.solution-card{min-height:330px}
}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.floating-card,.hero-orb{animation:none}.reveal-up,.reveal-left,.reveal-right{opacity:1;transform:none;transition:none}.bars span{animation:none}}

    /* ============================================================
       CHATBOT WIDGET  –  Pega este bloque <style> en tu <head>
       ============================================================ */
 
    /* ── Variables de marca ── */
    :root {
      --sj-primary:   #1A1A2E;   /* Azul muy oscuro */
      --sj-accent:    #E94560;   /* Rojo/magenta vibrante */
      --sj-accent2:   #0F3460;   /* Azul medio */
      --sj-surface:   #ff7493;   /* Fondo burbujas bot */
      --sj-light:     #F5F5F5;   /* Texto claro */
      --sj-muted:     #9CA3AF;   /* Texto secundario */
      --sj-radius:    16px;
      --sj-font:      'Segoe UI', system-ui, sans-serif;
    }
 
    /* ── Botón flotante ── */
    #sj-chat-btn {
      position: fixed;
      bottom: 90px;
      right: 28px;
      z-index: 9998;
      width: 46px;
      height: 46px;
      border-radius: 50%;
      background: #ff7493;
      border: none;
      cursor: pointer;
      box-shadow: 0 4px 24px rgba(233,69,96,.45);
      display: flex;
      align-items: center;
      justify-content: center;
      transition: transform .2s, box-shadow .2s;
    }
    #sj-chat-btn:hover {
      transform: scale(1.08);
      box-shadow: 0 6px 32px rgba(233,69,96,.6);
    }
    #sj-chat-btn svg { width: 28px; height: 28px; fill: #fff; }
 
    /* ── Ventana del chat ── */
    #sj-chat-window {
      position: fixed;
      bottom: 100px;
      right: 28px;
      z-index: 9999;
      width: 370px;
      max-width: calc(100vw - 40px);
      height: 540px;
      max-height: calc(100vh - 130px);
      background: var(--sj-primary);
      border-radius: var(--sj-radius);
      box-shadow: 0 12px 48px rgba(0,0,0,.55);
      display: flex;
      flex-direction: column;
      font-family: var(--sj-font);
      overflow: hidden;
      transform: scale(.92) translateY(12px);
      opacity: 0;
      pointer-events: none;
      transition: transform .22s cubic-bezier(.34,1.56,.64,1), opacity .18s;
    }
    #sj-chat-window.open {
      transform: scale(1) translateY(0);
      opacity: 1;
      pointer-events: all;
    }
 
    /* ── Header ── */
    #sj-chat-header {
      background: #ff7493;
      padding: 14px 18px;
      display: flex;
      align-items: center;
      gap: 12px;
      flex-shrink: 0;
    }
    .sj-avatar {
      width: 38px; height: 38px;
      border-radius: 50%;
      background: rgba(255,255,255,.18);
      display: flex; align-items: center; justify-content: center;
      font-size: 20px;
      flex-shrink: 0;
    }
    .sj-header-info { flex: 1; }
    .sj-header-name {
      font-size: 15px; font-weight: 700;
      color: #fff; line-height: 1.2;
    }
    .sj-header-status {
      font-size: 11px; color: rgba(255,255,255,.75);
      display: flex; align-items: center; gap: 5px;
    }
    .sj-dot {
      width: 7px; height: 7px; border-radius: 50%;
      background: #4ade80; display: inline-block;
    }
    #sj-close-btn {
      background: none; border: none;
      color: rgba(255,255,255,.8); cursor: pointer;
      font-size: 22px; line-height: 1;
      padding: 2px 6px; border-radius: 6px;
      transition: background .15s;
    }
    #sj-close-btn:hover { background: rgba(255,255,255,.15); }
 
    /* ── Mensajes ── */
    #sj-messages {
      flex: 1;
      overflow-y: auto;
      padding: 18px 14px;
      display: flex;
      flex-direction: column;
      gap: 10px;
      scroll-behavior: smooth;
    }
    #sj-messages::-webkit-scrollbar { width: 4px; }
    #sj-messages::-webkit-scrollbar-track { background: transparent; }
    #sj-messages::-webkit-scrollbar-thumb { background: rgba(255,255,255,.15); border-radius: 2px; }
 
    .sj-msg {
      display: flex;
      gap: 8px;
      align-items: flex-end;
      animation: sj-pop .18s ease;
    }
    @keyframes sj-pop {
      from { opacity:0; transform:translateY(6px); }
      to   { opacity:1; transform:translateY(0); }
    }
    .sj-msg.user { flex-direction: row-reverse; }
 
    .sj-bubble {
      max-width: 78%;
      padding: 10px 14px;
      border-radius: 14px;
      font-size: 14px;
      line-height: 1.5;
      word-break: break-word;
    }
    .sj-msg.bot  .sj-bubble {
      background: var(--sj-surface);
      color: var(--sj-light);
      border-bottom-left-radius: 4px;
    }
    .sj-msg.user .sj-bubble {
      background: #5aa1d4;
      color: #fff;
      border-bottom-right-radius: 4px;
    }
    .sj-msg-avatar {
      width: 28px; height: 28px; border-radius: 50%;
      background: var(--sj-surface);
      display: flex; align-items: center; justify-content: center;
      font-size: 14px; flex-shrink: 0;
    }
    .sj-msg.user .sj-msg-avatar {
      background: linear-gradient(135deg,var(--sj-accent),var(--sj-accent2));
    }
 
    /* Typing indicator */
    .sj-typing { display: flex; gap: 5px; padding: 6px 4px; }
    .sj-typing span {
      width: 7px; height: 7px; border-radius: 50%;
      background: var(--sj-muted);
      animation: sj-bounce .9s infinite;
    }
    .sj-typing span:nth-child(2) { animation-delay:.15s; }
    .sj-typing span:nth-child(3) { animation-delay:.3s; }
    @keyframes sj-bounce {
      0%,60%,100% { transform: translateY(0); }
      30%          { transform: translateY(-5px); }
    }
 
    /* Quick replies */
    .sj-quick-replies {
      display: flex; flex-wrap: wrap; gap: 6px;
      padding: 0 14px 10px;
    }
    .sj-qr {
      background: transparent;
      border: 1px solid rgba(233,69,96,.5);
      color: var(--sj-accent);
      border-radius: 20px;
      padding: 5px 12px;
      font-size: 12.5px;
      cursor: pointer;
      transition: background .15s, color .15s;
      font-family: var(--sj-font);
    }
    .sj-qr:hover { background: var(--sj-accent); color: #fff; }
 
    /* ── Input ── */
    #sj-input-row {
      display: flex;
      gap: 8px;
      padding: 12px 14px;
      background: rgba(255,255,255,.05);
      border-top: 1px solid rgba(255,255,255,.08);
      flex-shrink: 0;
    }
    #sj-input {
      flex: 1;
      background: rgba(255,255,255,.08);
      border: 1px solid rgba(255,255,255,.12);
      border-radius: 24px;
      color: var(--sj-light);
      font-size: 14px;
      padding: 9px 16px;
      outline: none;
      font-family: var(--sj-font);
      resize: none;
      transition: border .15s;
    }
    #sj-input::placeholder { color: var(--sj-muted); }
    #sj-input:focus { border-color: var(--sj-accent); }
    #sj-send {
      width: 40px; height: 40px; flex-shrink: 0;
      border-radius: 50%;
      background: linear-gradient(135deg, var(--sj-accent), var(--sj-accent2));
      border: none; cursor: pointer;
      display: flex; align-items: center; justify-content: center;
      transition: transform .15s, opacity .15s;
    }
    #sj-send:hover { transform: scale(1.08); }
    #sj-send:disabled { opacity: .4; cursor: default; transform: none; }
    #sj-send svg { width: 18px; height: 18px; fill: #fff; }
 
    /* ── Footer ── */
    #sj-chat-footer {
      text-align: center;
      font-size: 10.5px;
      color: var(--sj-muted);
      padding: 6px 0 10px;
      flex-shrink: 0;
    }

