:root{
    --cpct-bg:#0e1120;
    --cpct-surface:#14182a;
    --cpct-surface-2:#1b2036;
    --cpct-text:#f7f8ff;
    --cpct-muted:#aab0c5;
    --cpct-purple:#7c4dff;
    --cpct-purple-2:#a56cff;
    --cpct-cyan:#22d3ee;
    --cpct-border:rgba(255,255,255,.11);
}
.cpct-chat{position:fixed;right:20px;bottom:20px;z-index:9999999;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--cpct-text)}
.cpct-chat[hidden]{display:none!important}
.cpct-chat__panel{width:min(390px,calc(100vw - 28px));height:min(620px,calc(100vh - 70px));display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--cpct-border);border-radius:24px;background:linear-gradient(160deg,#12172a,#0b1020);box-shadow:0 28px 90px rgba(0,0,0,.48)}
.cpct-chat__header{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border-bottom:1px solid var(--cpct-border);background:rgba(255,255,255,.025)}
.cpct-chat__identity{display:flex;align-items:center;gap:11px;min-width:0}
.cpct-chat__identity>div{display:flex;min-width:0;flex-direction:column;line-height:1.2}.cpct-chat__identity strong{font-size:15px}.cpct-chat__identity span{margin-top:4px;color:var(--cpct-muted);font-size:11.5px}.cpct-chat__identity span.is-good:before{content:"";display:inline-block;width:7px;height:7px;margin-right:6px;border-radius:50%;background:#38e68b;box-shadow:0 0 0 3px rgba(56,230,139,.12)}
.cpct-chat__mark{width:38px;height:38px;display:grid;place-items:center;flex:0 0 38px;border-radius:12px;background:linear-gradient(135deg,var(--cpct-purple),var(--cpct-cyan));color:#fff;font-size:12px;font-weight:950;letter-spacing:.04em;box-shadow:0 9px 24px rgba(124,77,255,.28)}
.cpct-chat__close{width:38px;height:38px;display:grid;place-items:center;flex:0 0 38px;padding:0;border:1px solid var(--cpct-border);border-radius:12px;background:rgba(255,255,255,.045);color:#fff;font-size:24px;line-height:1;cursor:pointer}
.cpct-chat__context{padding:9px 16px;border-bottom:1px solid rgba(255,255,255,.07);background:rgba(34,211,238,.055);color:#bdebf3;font-size:11.5px;font-weight:750}
.cpct-chat__messages{flex:1;min-height:0;overflow:auto;display:flex;flex-direction:column;gap:9px;padding:16px;scrollbar-width:thin;scrollbar-color:rgba(165,108,255,.4) transparent}
.cpct-message{display:flex;width:100%}.cpct-message--user{justify-content:flex-end}.cpct-message--operator,.cpct-message--system{justify-content:flex-start}.cpct-message__bubble{max-width:82%;padding:10px 12px;border:1px solid var(--cpct-border);border-radius:15px;background:var(--cpct-surface-2);color:var(--cpct-text);font-size:13.5px;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}.cpct-message--user .cpct-message__bubble{border-color:rgba(165,108,255,.36);border-bottom-right-radius:5px;background:linear-gradient(135deg,rgba(124,77,255,.88),rgba(165,108,255,.82));color:#fff}.cpct-message--operator .cpct-message__bubble{border-bottom-left-radius:5px}.cpct-message--system .cpct-message__bubble{max-width:92%;border-color:rgba(34,211,238,.15);background:rgba(34,211,238,.065);color:#d9f8fd;font-size:12.5px}.cpct-message__name{display:block;margin-bottom:4px;color:var(--cpct-cyan);font-size:10.5px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.cpct-chat__error{margin:0 14px 10px;padding:10px 12px;border:1px solid rgba(255,95,122,.24);border-radius:12px;background:rgba(255,95,122,.08);color:#ffc7d1;font-size:12px}.cpct-chat__error button{margin-left:6px;padding:0;border:0;background:none;color:#fff;font-weight:900;text-decoration:underline;cursor:pointer}
.cpct-chat__composer{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;padding:12px;border-top:1px solid var(--cpct-border);background:rgba(4,7,16,.55)}
.cpct-chat__composer textarea{width:100%;min-height:46px!important;max-height:120px;resize:none;margin:0!important;padding:12px 13px!important;border:1px solid var(--cpct-border)!important;border-radius:13px!important;outline:0!important;background:rgba(255,255,255,.055)!important;color:var(--cpct-text)!important;font-family:inherit!important;font-size:16px!important;line-height:1.3!important;box-shadow:none!important}.cpct-chat__composer textarea:focus{border-color:rgba(165,108,255,.72)!important;box-shadow:0 0 0 3px rgba(124,77,255,.15)!important}.cpct-chat__composer textarea::placeholder{color:rgba(247,248,255,.38)!important}
.cpct-chat__composer button{min-width:78px;min-height:46px;padding:0 14px;border:1px solid rgba(255,255,255,.12);border-radius:13px;background:linear-gradient(135deg,var(--cpct-purple),var(--cpct-purple-2));color:#fff;font-family:inherit;font-size:13px;font-weight:900;cursor:pointer;box-shadow:0 10px 26px rgba(124,77,255,.24)}.cpct-chat__composer button:disabled{opacity:.5;cursor:not-allowed}
.cpct-chat__attachment{grid-column:1/-1;display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid rgba(34,211,238,.18);border-radius:13px;background:rgba(34,211,238,.06)}
.cpct-chat__attachment[hidden]{display:none!important}
.cpct-chat__attachment img{width:46px;height:46px;flex:0 0 46px;object-fit:cover;border-radius:10px;border:1px solid var(--cpct-border);background:rgba(255,255,255,.04)}
.cpct-chat__attachment-info{display:flex;min-width:0;flex:1;flex-direction:column;gap:3px}.cpct-chat__attachment-info strong{overflow:hidden;color:var(--cpct-text);font-size:12px;text-overflow:ellipsis;white-space:nowrap}.cpct-chat__attachment-info span{color:var(--cpct-muted);font-size:11px}
.cpct-chat__composer .cpct-chat__attach{min-width:46px;width:46px;height:46px;padding:0;border-color:var(--cpct-border);background:rgba(255,255,255,.055);box-shadow:none;font-size:19px}
.cpct-chat__composer .cpct-chat__attach:hover{background:rgba(255,255,255,.1)}
.cpct-chat__composer .cpct-chat__attachment-remove{min-width:30px;width:30px;height:30px;min-height:30px;padding:0;border-color:var(--cpct-border);border-radius:9px;background:rgba(255,255,255,.06);box-shadow:none;font-size:18px;line-height:1}

.cpct-chat__reopen{position:fixed;right:20px;bottom:20px;min-height:48px;padding:0 18px;border:1px solid rgba(255,255,255,.13);border-radius:999px;background:linear-gradient(135deg,var(--cpct-purple),var(--cpct-purple-2));color:#fff;font-family:inherit;font-size:13px;font-weight:900;cursor:pointer;box-shadow:0 16px 42px rgba(0,0,0,.36)}
.cpct-chat:not(.is-open) .cpct-chat__panel{display:none}.cpct-chat.is-open .cpct-chat__reopen{display:none!important}
@media(max-width:600px){.cpct-chat{right:8px;bottom:8px;left:8px}.cpct-chat__panel{width:100%;height:min(70vh,620px);border-radius:20px}.cpct-chat__reopen{right:12px;bottom:12px}.cpct-chat__messages{padding:13px}.cpct-message__bubble{max-width:88%}.cpct-chat__composer{grid-template-columns:auto minmax(0,1fr) auto;padding:10px}.cpct-chat__composer>[data-cpct-send]{min-width:68px}.cpct-chat__composer .cpct-chat__attach{min-width:44px;width:44px}}
@media(prefers-reduced-motion:no-preference){.cpct-chat__panel{animation:cpct-in .18s ease-out}@keyframes cpct-in{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}}

/* ==========================================================
   CrazyPavos Chat v1.0.2 · conversación finalizada
   ========================================================== */
.cpct-chat__closed{
    margin:0 12px 12px;
    padding:13px 14px;
    display:flex;
    flex-direction:column;
    gap:4px;
    border:1px solid rgba(56,230,139,.22);
    border-radius:14px;
    background:rgba(56,230,139,.075);
    color:#eafff3;
}
.cpct-chat__closed[hidden]{display:none!important}
.cpct-chat__closed strong{font-size:13px;font-weight:950;color:#7cf0ad}
.cpct-chat__closed span{font-size:12px;line-height:1.45;color:#c7d9cf}
.cpct-chat.is-closed .cpct-chat__composer{display:none!important}
.cpct-chat.is-closed .cpct-chat__identity [data-cpct-status]{color:#aab0c5}
.cpct-chat.is-closed .cpct-chat__context{background:rgba(56,230,139,.045);color:#c9f7da}

/* Imágenes ya enviadas dentro del historial del chat */
.cpct-message__image-link{display:block;overflow:hidden;max-width:280px;margin:0 0 7px;border-radius:12px;background:rgba(0,0,0,.14);line-height:0}
.cpct-message__image{display:block;width:auto;max-width:100%;height:auto;max-height:300px;object-fit:contain;border-radius:12px}
.cpct-message__image-link:last-child{margin-bottom:0}
.cpct-message__image-link+.cpct-message__body{margin-top:2px}

/* ==========================================================
   CrazyPavos Chat v1.3.0 · botones reutilizables por shortcode
   ========================================================== */
.cpct-shortcode-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:46px;
    padding:11px 18px;
    border:1px solid rgba(255,255,255,.13);
    border-radius:13px;
    background:linear-gradient(135deg,var(--cpct-purple),var(--cpct-purple-2));
    color:#fff!important;
    font:900 13px/1.2 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    text-align:center;
    text-decoration:none!important;
    cursor:pointer;
    box-shadow:0 10px 26px rgba(124,77,255,.24);
    transition:transform .18s ease,box-shadow .18s ease,background .18s ease,opacity .18s ease;
}
.cpct-shortcode-button:hover:not(:disabled){
    transform:translateY(-1px);
    box-shadow:0 14px 32px rgba(124,77,255,.30);
}
.cpct-shortcode-button:focus-visible{
    outline:2px solid var(--cpct-cyan);
    outline-offset:3px;
}
.cpct-shortcode-button--secondary{
    background:rgba(255,255,255,.055);
    border-color:var(--cpct-border);
    box-shadow:none;
}
.cpct-shortcode-button:disabled,
.cpct-shortcode-button[aria-disabled="true"]{
    opacity:.48;
    cursor:not-allowed;
    transform:none;
    box-shadow:none;
}
