/* ══════════════════════════════════════════════════════════════
   PsicoCitas - Widget del bot de voz
   Flotante, abrible/cerrable. No interfiere con el layout del sitio.
   ══════════════════════════════════════════════════════════════ */
.pcbot-launcher{
    position:fixed;right:22px;bottom:22px;width:62px;height:62px;border-radius:50%;border:0;
    background:linear-gradient(135deg,var(--primary,#2563eb),#60a5fa);color:#fff;font-size:1.55rem;
    cursor:pointer;z-index:9999;display:flex;align-items:center;justify-content:center;
    box-shadow:0 16px 34px -8px rgba(37,99,235,.6);
    transition:transform .18s ease,opacity .18s ease;
}
.pcbot-launcher:hover{transform:scale(1.07)}
.pcbot-launcher::after{
    content:"";position:absolute;inset:0;border-radius:50%;
    box-shadow:0 0 0 0 rgba(37,99,235,.45);animation:pcbot-ring 2.4s infinite;
}
@keyframes pcbot-ring{0%{box-shadow:0 0 0 0 rgba(37,99,235,.4)}70%{box-shadow:0 0 0 16px rgba(37,99,235,0)}100%{box-shadow:0 0 0 0 rgba(37,99,235,0)}}
.pcbot-launcher.pcbot-hidden{opacity:0;pointer-events:none;transform:scale(.6)}

/* Burbuja de saludo */
.pcbot-teaser{
    position:fixed;right:98px;bottom:36px;max-width:264px;background:#fff;border:1px solid #e2e8f0;
    border-radius:14px;padding:.7rem 1.4rem .7rem .85rem;font-size:.82rem;line-height:1.45;color:#1e293b;
    font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
    box-shadow:0 16px 34px -14px rgba(15,23,42,.45);z-index:9999;cursor:pointer;
    opacity:0;transform:translateY(8px);transition:.25s;pointer-events:none;
}
.pcbot-teaser.pcbot-show{opacity:1;transform:translateY(0);pointer-events:auto}
.pcbot-teaser::after{
    content:"";position:absolute;right:-7px;bottom:18px;width:14px;height:14px;background:#fff;
    border-right:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;transform:rotate(-45deg);
}
.pcbot-teaser b{color:var(--primary,#2563eb)}
.pcbot-teaser-close{
    position:absolute;top:-9px;right:-9px;width:22px;height:22px;border-radius:50%;border:1px solid #e2e8f0;
    background:#fff;cursor:pointer;font-size:.68rem;color:#64748b;display:flex;align-items:center;
    justify-content:center;line-height:1;
}
.pcbot-teaser-close:hover{color:var(--primary,#2563eb);border-color:var(--primary,#2563eb)}

/* Panel */
.pcbot-widget{
    position:fixed;right:22px;bottom:22px;width:380px;max-width:calc(100vw - 32px);
    max-height:min(670px,calc(100vh - 40px));display:flex;flex-direction:column;
    background:#fff;border:1px solid #e2e8f0;border-radius:18px;
    box-shadow:0 24px 60px -18px rgba(15,23,42,.5);z-index:9998;overflow:hidden;
    font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;color:#0f172a;
    transform:translateY(16px) scale(.97);opacity:0;pointer-events:none;
    transition:transform .22s ease,opacity .22s ease;
}
.pcbot-widget.pcbot-open{transform:translateY(0) scale(1);opacity:1;pointer-events:auto}

.pcbot-head{
    display:flex;align-items:center;gap:.8rem;padding:1rem 1.15rem;border-bottom:1px solid #e2e8f0;
    background:linear-gradient(180deg,#fff,#f8fafc);
}
.pcbot-avatar{
    width:42px;height:42px;border-radius:50%;flex:0 0 auto;color:#fff;font-weight:700;
    background:linear-gradient(135deg,var(--primary,#2563eb),#60a5fa);
    display:flex;align-items:center;justify-content:center;font-family:Outfit,Inter,sans-serif;
}
.pcbot-head-info{flex:1;min-width:0}
.pcbot-head-info b{font-size:.95rem;display:block}
.pcbot-head-info span{font-size:.75rem;color:#64748b;display:flex;align-items:center;gap:.35rem}
.pcbot-dot{width:8px;height:8px;border-radius:50%;background:#16a34a;display:inline-block;box-shadow:0 0 0 3px #dcfce7}
.pcbot-close{
    width:32px;height:32px;flex:0 0 auto;border-radius:9px;border:1px solid #e2e8f0;background:#fff;
    cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.95rem;color:#64748b;
}
.pcbot-close:hover{border-color:var(--primary,#2563eb);color:var(--primary,#2563eb);background:#eff6ff}

.pcbot-body{
    flex:1;min-height:260px;overflow-y:auto;padding:1.15rem;
    background:radial-gradient(circle at 100% 0,#f8fbff,transparent 40%);
}
.pcbot-msg{display:flex;max-width:92%;margin-bottom:.9rem}
.pcbot-msg.pcbot-user{margin-left:auto;justify-content:flex-end}
.pcbot-bubble{padding:.7rem .95rem;border-radius:16px;font-size:.9rem;line-height:1.5;white-space:pre-line}
.pcbot-bot .pcbot-bubble{background:#f1f5f9;border:1px solid #e9eef5;border-top-left-radius:5px}
.pcbot-user .pcbot-bubble{background:var(--primary,#2563eb);color:#fff;border-top-right-radius:5px}
.pcbot-bot.pcbot-blocked .pcbot-bubble{background:#fef2f2;border-color:#fecaca;color:#991b1b}
.pcbot-bot.pcbot-none .pcbot-bubble{background:#fffbeb;border-color:#fde68a;color:#92400e}
.pcbot-typing .pcbot-bubble{display:flex;gap:4px;align-items:center}
.pcbot-typing i{width:6px;height:6px;border-radius:50%;background:#94a3b8;display:inline-block;animation:pcbot-bounce 1s infinite}
.pcbot-typing i:nth-child(2){animation-delay:.15s}
.pcbot-typing i:nth-child(3){animation-delay:.3s}
@keyframes pcbot-bounce{0%,60%,100%{transform:translateY(0);opacity:.5}30%{transform:translateY(-4px);opacity:1}}
.pcbot-meta{font-size:.68rem;color:#64748b;margin-top:.3rem;display:flex;gap:.6rem;align-items:center;flex-wrap:wrap}
.pcbot-mini{border:0;background:transparent;color:var(--primary,#2563eb);cursor:pointer;font-size:.7rem;font-weight:600;padding:0}
.pcbot-mini:hover{text-decoration:underline}

.pcbot-suggest{display:flex;gap:.4rem;flex-wrap:wrap;padding:.6rem 1.15rem 0}
.pcbot-chip{
    border:1px solid #e2e8f0;background:#fff;border-radius:999px;padding:.32rem .7rem;font-size:.75rem;
    color:#334155;cursor:pointer;
}
.pcbot-chip:hover{border-color:var(--primary,#2563eb);color:var(--primary,#2563eb);background:#eff6ff}

.pcbot-foot{border-top:1px solid #e2e8f0;padding:.7rem .8rem;display:flex;gap:.55rem;align-items:center;background:#fff}
.pcbot-input{
    flex:1;border:1px solid #e2e8f0;border-radius:12px;padding:.68rem .85rem;font-size:.88rem;
    font-family:inherit;outline:none;color:#0f172a;
}
.pcbot-input:focus{border-color:var(--primary,#2563eb);box-shadow:0 0 0 3px #dbeafe}
.pcbot-icon{
    width:42px;height:42px;flex:0 0 auto;border-radius:12px;border:1px solid #e2e8f0;background:#fff;
    cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.05rem;
}
.pcbot-icon:hover{border-color:var(--primary,#2563eb);background:#eff6ff}
.pcbot-icon.pcbot-send{background:var(--primary,#2563eb);border-color:var(--primary,#2563eb);color:#fff}
.pcbot-icon.pcbot-send:hover{background:#1d4ed8}
.pcbot-icon.pcbot-listening{background:#fee2e2;border-color:#fca5a5;animation:pcbot-pulse 1.1s infinite}
@keyframes pcbot-pulse{0%,100%{box-shadow:0 0 0 0 rgba(220,38,38,.35)}50%{box-shadow:0 0 0 8px rgba(220,38,38,0)}}
.pcbot-hint{font-size:.72rem;color:#64748b;text-align:center;padding:.15rem 0 .5rem}

@media(max-width:480px){
    .pcbot-widget{right:10px;bottom:10px;width:calc(100vw - 20px)}
    .pcbot-launcher{right:16px;bottom:16px}
    .pcbot-teaser{right:80px;bottom:30px;max-width:200px}
}
