.ai-widget { position: fixed; right: 22px; bottom: 22px; z-index: 9999; font-family: inherit; }
.ai-launcher { width: 60px; height: 60px; border-radius: 999px; border: 1px solid var(--border); background: var(--accent); color: #fff; font-weight: 800; box-shadow: var(--shadow-soft); cursor: pointer; }
.ai-panel { position: absolute; right: 0; bottom: 74px; width: min(380px, calc(100vw - 32px)); height: 520px; border-radius: 24px; background: var(--surface-strong); border: 1px solid var(--border); box-shadow: var(--shadow); backdrop-filter: blur(22px); overflow: hidden; color: var(--text); }
.ai-header { display: flex; justify-content: space-between; align-items: center; padding: 16px 18px; border-bottom: 1px solid var(--border); }
.ai-close { background: transparent; border: 0; color: var(--text); font-size: 24px; cursor: pointer; }
.ai-messages { height: 390px; overflow: auto; padding: 16px; display: flex; flex-direction: column; gap: 10px; }
.ai-msg { padding: 11px 13px; border-radius: 16px; max-width: 86%; font-size: .92rem; line-height: 1.45; }
.ai-msg-user { align-self: flex-end; background: var(--accent); color: #fff; }
.ai-msg-assistant { align-self: flex-start; background: rgba(255,255,255,.08); border: 1px solid var(--border); }
.ai-form { display: flex; gap: 8px; padding: 12px; border-top: 1px solid var(--border); }
.ai-input { min-height: 44px; }
.ai-form button { border: 0; border-radius: 999px; padding: 0 16px; background: var(--accent); color: #fff; font-weight: 700; }
.ai-date-picker {
    display: grid;
    gap: 10px;
    padding: 14px;
    margin: 10px 0;
    border-radius: 16px;
    background: rgba(255,255,255,0.08);
    border: 1px solid rgba(167,139,250,0.24);
}

    .ai-date-picker label {
        font-size: .75rem;
        opacity: .75;
    }

    .ai-date-picker input {
        min-height: 42px;
        border-radius: 10px;
        padding: 0 10px;
    }

    .ai-date-picker button {
        min-height: 42px;
        border-radius: 999px;
        border: none;
        background: linear-gradient(135deg, #8b5cf6, #4f46e5);
        color: #fff;
        font-weight: 700;
    }