.cw-ai-float {
    position: fixed;
    right: 20px;
    bottom: 86px;
    z-index: 10030;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 13px 16px;
    border: 0;
    border-radius: 18px;
    background: linear-gradient(135deg,#00E676,#00E5FF 58%,#FFD700);
    color: #07100d;
    text-decoration: none;
    font-weight: 950;
    font-size: .78rem;
    letter-spacing: .8px;
    text-transform: uppercase;
    box-shadow: 0 18px 44px rgba(0,230,118,.34);
    cursor: pointer;
}
.cw-ai-float i { font-size: .9rem; }
.cw-ai-panel {
    position: fixed;
    right: 18px;
    bottom: 146px;
    z-index: 10040;
    width: min(410px, calc(100vw - 24px));
    max-height: min(690px, calc(100vh - 170px));
    display: none;
    grid-template-rows: auto auto minmax(170px, 1fr) auto;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 24px;
    background:
        radial-gradient(circle at 0 0, rgba(0,230,118,.24), transparent 30%),
        radial-gradient(circle at 100% 15%, rgba(0,229,255,.20), transparent 34%),
        rgba(9,12,20,.96);
    box-shadow: 0 26px 80px rgba(0,0,0,.52), inset 0 1px 0 rgba(255,255,255,.08);
    color: #f5fff9;
    text-align: left;
    font-family: Verdana, Geneva, sans-serif;
}
.cw-ai-panel.open { display: grid; }
.cw-ai-head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 38px;
    gap: 12px;
    align-items: center;
    padding: 16px 16px 13px;
    border-bottom: 1px solid rgba(255,255,255,.10);
}
.cw-ai-kicker {
    color: #00E5FF;
    font-size: .67rem;
    font-weight: 950;
    letter-spacing: 1.7px;
    text-transform: uppercase;
}
.cw-ai-title {
    margin: 4px 0 0;
    color: #fff;
    font-size: 1rem;
    line-height: 1.2;
    font-weight: 950;
}
.cw-ai-subtitle {
    margin: 6px 0 0;
    color: rgba(255,255,255,.66);
    font-size: .72rem;
    line-height: 1.38;
    font-weight: 700;
}
.cw-ai-close {
    width: 38px;
    height: 38px;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 13px;
    background: rgba(255,255,255,.08);
    color: #fff;
    font-size: 1.35rem;
    cursor: pointer;
}
.cw-ai-messages {
    display: flex;
    flex-direction: column;
    gap: 10px;
    overflow-y: auto;
    padding: 14px;
}
.cw-ai-gate {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 9px;
    padding: 13px 14px;
    border-bottom: 1px solid rgba(255,255,255,.10);
    background: rgba(0,0,0,.16);
}
.cw-ai-gate label {
    display: grid;
    gap: 5px;
    color: rgba(255,255,255,.72);
    font-size: .64rem;
    font-weight: 950;
    letter-spacing: 1.1px;
    text-transform: uppercase;
}
.cw-ai-gate label:first-child,
.cw-ai-start,
.cw-ai-note { grid-column: 1 / -1; }
.cw-ai-gate input {
    min-width: 0;
    width: 100%;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 13px;
    background: rgba(255,255,255,.08);
    color: #fff;
    padding: 10px 11px;
    font-size: .82rem;
    text-transform: none;
    letter-spacing: 0;
}
.cw-ai-gate input:focus { outline: 2px solid rgba(0,229,255,.34); border-color: rgba(0,229,255,.68); }
.cw-ai-start {
    border: 0;
    border-radius: 13px;
    background: linear-gradient(135deg,#FFD700,#00E676 58%,#00E5FF);
    color: #06120b;
    padding: 11px;
    font-size: .78rem;
    font-weight: 950;
    cursor: pointer;
    text-transform: uppercase;
}
.cw-ai-note {
    min-height: 18px;
    color: #FFD700;
    font-size: .72rem;
    line-height: 1.35;
}
.cw-ai-note.error { color: #ff8b8b; }
.cw-ai-chatbox {
    opacity: .58;
    pointer-events: none;
}
.cw-ai-panel.registered .cw-ai-gate { display: none; }
.cw-ai-panel.registered .cw-ai-chatbox {
    opacity: 1;
    pointer-events: auto;
}
.cw-ai-msg {
    max-width: 88%;
    padding: 11px 12px;
    border-radius: 16px;
    font-size: .82rem;
    line-height: 1.45;
    white-space: pre-line;
}
.cw-ai-msg.bot {
    align-self: flex-start;
    background: rgba(255,255,255,.095);
    border: 1px solid rgba(255,255,255,.10);
    color: rgba(255,255,255,.86);
}
.cw-ai-msg.user {
    align-self: flex-end;
    background: linear-gradient(135deg,#00E676,#00E5FF);
    color: #06120b;
    font-weight: 850;
}
.cw-ai-chips {
    display: flex;
    gap: 8px;
    overflow-x: auto;
    padding: 0 14px 12px;
}
.cw-ai-chip {
    flex: 0 0 auto;
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 999px;
    background: rgba(255,255,255,.08);
    color: rgba(255,255,255,.82);
    padding: 8px 10px;
    font-size: .68rem;
    font-weight: 900;
    text-transform: uppercase;
    cursor: pointer;
}
.cw-ai-form {
    display: grid;
    grid-template-columns: minmax(0,1fr) 44px;
    gap: 9px;
    padding: 13px;
    border-top: 1px solid rgba(255,255,255,.10);
    background: rgba(0,0,0,.18);
}
.cw-ai-input {
    width: 100%;
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 15px;
    background: rgba(255,255,255,.08);
    color: #fff;
    padding: 12px 13px;
    font-size: .88rem;
}
.cw-ai-input:disabled {
    opacity: .58;
    cursor: not-allowed;
}
.cw-ai-input:focus { outline: 2px solid rgba(0,229,255,.38); border-color: rgba(0,229,255,.7); }
.cw-ai-send {
    border: 0;
    border-radius: 15px;
    background: linear-gradient(135deg,#FFD700,#00E676);
    color: #06120b;
    font-weight: 950;
    cursor: pointer;
}
@media(max-width:620px) {
    .cw-ai-float { right: 12px; bottom: 78px; padding: 12px 13px; font-size: .7rem; }
    .cw-ai-panel {
        right: 10px;
        bottom: 132px;
        width: calc(100vw - 20px);
        max-height: calc(100vh - 148px);
        border-radius: 20px;
    }
    .cw-ai-gate { grid-template-columns: 1fr; }
}
