PluginProbe
MxChat – AI Chatbot & Content Generation for WordPress / 3.1.7
MxChat – AI Chatbot & Content Generation for WordPress v3.1.7
3.2.21 3.2.20 3.2.19 3.2.18 3.2.17 3.2.16 3.2.15 3.2.14 3.2.12 3.2.13 3.2.11 3.2.10 3.2.9 3.2.8 3.2.7 3.2.6 3.2.5 3.2.4 3.2.3 3.2.2 3.2.1 2.0.3 2.0.4 2.0.5 2.0.6 All 152 releases
← All changes | css/admin-style.css +3678 -11 2.0.53.1.7 View file →
@@ -4,13 +4,33 @@
4 4
5 5 #system_prompt_instructions {
6 6 transition: height 0.3s ease;
7 7 }
8 +.red-warning {
9 + color: red;
10 +}
8 11
9 12 .mxchat-form-intent {
10 13 background-color: rgba(240, 240, 245, 0.5);
11 14 }
15 +/* Style the Add Ons submenu item with subtle gradient */
16 +#adminmenu a[href="admin.php?page=mxchat-addons"] {
17 + position: relative;
18 + border-left: 3px solid #fa73e6;
19 + font-weight: 600;
20 + background-color: rgba(120, 115, 245, 0.08) !important;
21 +}
12 22
23 +/* Make the text stand out a bit more when active */
24 +#adminmenu .current a[href="admin.php?page=mxchat-addons"] {
25 + color: white !important;
26 +}
27 +
28 +/* Add hover effect with smooth transition */
29 +#adminmenu a[href="admin.php?page=mxchat-addons"]:hover {
30 + background-color: rgba(120, 115, 245, 0.12) !important;
31 + color: white !important;
32 +}
13 33 .mxchat-badge {
14 34 display: inline-block;
15 35 padding: 2px 8px;
16 36 border-radius: 12px;
@@ -71,19 +91,8 @@
71 91 border-bottom: 1px solid #fff;
72 92 color: #000;
73 93 }
74 94
75 -/* Tab Content */
76 -.mxchat-tab-content {
77 - display: none;
78 - padding: 25px;
79 - background: white;
80 - border: 1px solid #ddd;
81 - border-radius: 10px;
82 - box-shadow: 0 2px 15px rgba(0,0,0,0.05);
83 - animation: fadeIn 0.3s ease-in-out;
84 -}
85 -
86 95 #default-db.mxchat-tab-content, #pinecone-db.mxchat-tab-content {
87 96 border: none;
88 97 box-shadow: none;
89 98 padding: 0px;
@@ -253,12 +262,31 @@
253 262 }
254 263
255 264 /* Mobile Responsiveness */
256 265 @media screen and (max-width: 782px) {
266 + .mxchat-pro-notification ul {
267 + padding-left: 1.2em; /* Add left padding so bullets appear nicely */
268 + margin: 0.5em 0;
269 + text-align: left;
270 + list-style: disc; /* or 'none' if you don’t want bullets */
271 + }
272 +
273 + .mxchat-pro-notification ul li {
274 + text-align: left;
275 + margin-bottom: 0.3em;
276 + }
277 +
278 + .mxchat-pro-content p {
279 + text-align: left;
280 + }
257 281 .mxchat-knowledge-controls {
258 282 flex-direction: column;
259 283 }
260 284
285 + .mxchat-addon-notice-buttons {
286 + flex-direction: column;
287 + }
288 +
261 289 .mxchat-grid-container {
262 290 display: grid;
263 291 /* Add these properties */
264 292 max-width: 100%; /* Constrain to parent width */
@@ -2812,6 +2840,3645 @@
2812 2840 }
2813 2841 }
2814 2842
2815 2843
2844 +.video-tutorials-section {
2845 + max-width: 1200px;
2846 + margin: 0 auto;
2847 + padding: 0;
2848 +}
2816 2849
2850 +.section-intro {
2851 + text-align: center;
2852 + margin-bottom: 2rem;
2853 + font-size: 1.1rem;
2854 +}
2817 2855
2856 +.tutorial-grid {
2857 + display: grid;
2858 + grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
2859 + gap: 2rem;
2860 + margin-bottom: 3rem;
2861 +}
2862 +
2863 +.tutorial-item {
2864 + border: 1px solid #e0e0e0;
2865 + border-radius: 8px;
2866 + padding: 1.5rem;
2867 + box-shadow: 0 2px 5px rgba(0,0,0,0.05);
2868 + transition: transform 0.3s ease, box-shadow 0.3s ease;
2869 + background-color: #fff;
2870 +}
2871 +
2872 +.tutorial-item:hover {
2873 + transform: translateY(-5px);
2874 + box-shadow: 0 5px 15px rgba(0,0,0,0.1);
2875 +}
2876 +
2877 +.tutorial-item h3 {
2878 + margin-top: 0;
2879 + font-size: 1.2rem;
2880 + color: #333;
2881 + border-bottom: 2px solid #f0f0f0;
2882 + padding-bottom: 0.75rem;
2883 + margin-bottom: 1rem;
2884 +}
2885 +
2886 +.video-description p {
2887 + margin-bottom: 1rem;
2888 + color: #555;
2889 +}
2890 +
2891 +.video-description small {
2892 + color: #888;
2893 + font-style: italic;
2894 +}
2895 +
2896 +.video-link {
2897 + display: inline-flex;
2898 + align-items: center;
2899 + text-decoration: none;
2900 + color: #0073aa;
2901 + font-weight: 500;
2902 + margin-top: 0.5rem;
2903 + padding: 0.5rem 1rem;
2904 + border-radius: 4px;
2905 + background-color: #f7f7f7;
2906 + transition: background-color 0.2s ease;
2907 +}
2908 +
2909 +.video-link:hover {
2910 + background-color: #e6f3fa;
2911 + color: #004d74;
2912 +}
2913 +
2914 +.video-icon {
2915 + margin-right: 0.5rem;
2916 + display: inline-flex;
2917 + color: #e62117;
2918 +}
2919 +
2920 +.support-section {
2921 + margin-top: 3rem;
2922 + padding-top: 2rem;
2923 + border-top: 1px solid #e0e0e0;
2924 + text-align: center;
2925 +}
2926 +
2927 +.support-content {
2928 + max-width: 800px;
2929 + margin: 0 auto;
2930 + background-color: #f9f9f9;
2931 + padding: 2rem;
2932 + border-radius: 8px;
2933 +}
2934 +
2935 +.support-content p {
2936 + margin-bottom: 1rem;
2937 + font-size: 1.1rem;
2938 + line-height: 1.6;
2939 +}
2940 +
2941 +.support-content a {
2942 + color: #0073aa;
2943 + font-weight: 500;
2944 + text-decoration: none;
2945 + padding: 0.2rem 0.4rem;
2946 + border-radius: 3px;
2947 + transition: background-color 0.2s;
2948 +}
2949 +
2950 +.support-content a:hover {
2951 + background-color: #e6f3fa;
2952 + text-decoration: underline;
2953 +}
2954 +
2955 +.api-info-item h4 {
2956 + margin-top: 0;
2957 + color: #333;
2958 + margin-bottom: 1rem;
2959 +}
2960 +
2961 +@media (max-width: 768px) {
2962 + .tutorial-grid {
2963 + grid-template-columns: 1fr;
2964 + }
2965 +
2966 + .tutorial-item {
2967 + padding: 1rem;
2968 + }
2969 +
2970 + .support-content {
2971 + padding: 1.5rem;
2972 + }
2973 +}
2974 +
2975 +/* Additional CSS for the main admin page */
2976 +
2977 +/* Pro and Add-on notice messages */
2978 +.mxchat-pro-notice,
2979 +.mxchat-addon-notice {
2980 + margin: 0;
2981 + line-height: 1.6;
2982 + color: #333;
2983 +}
2984 +
2985 +.mxchat-pro-notice a,
2986 +.mxchat-addon-notice a {
2987 + text-decoration: none;
2988 + font-weight: 600;
2989 + transition: color 0.2s ease;
2990 +}
2991 +
2992 +.mxchat-pro-notice a:hover,
2993 +.mxchat-addon-notice a:hover {
2994 + text-decoration: underline;
2995 + color: #fff;
2996 +}
2997 +
2998 +/* Tutorial Grid & Items */
2999 +.tutorial-grid {
3000 + display: grid;
3001 + grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
3002 + gap: 24px;
3003 + margin-top: 20px;
3004 +}
3005 +
3006 +.tutorial-item {
3007 + background: #f8f9ff;
3008 + border-radius: 12px;
3009 + padding: 24px;
3010 + transition: all 0.3s ease;
3011 + border: 1px solid rgba(120, 115, 245, 0.1);
3012 +}
3013 +
3014 +.tutorial-item:hover {
3015 + transform: translateY(-3px);
3016 + box-shadow: 0 6px 20px rgba(120, 115, 245, 0.12);
3017 +}
3018 +
3019 +.tutorial-item h3 {
3020 + margin-top: 0;
3021 + margin-bottom: 16px;
3022 + color: #333;
3023 + font-size: 1.2rem;
3024 +}
3025 +
3026 +.video-description p {
3027 + color: #666;
3028 + font-size: 0.95rem;
3029 + margin-bottom: 16px;
3030 +}
3031 +
3032 +.video-description small {
3033 + color: #888;
3034 + font-size: 0.85rem;
3035 + font-style: italic;
3036 +}
3037 +
3038 +.video-link {
3039 + display: inline-flex;
3040 + align-items: center;
3041 + gap: 8px;
3042 + padding: 8px 16px;
3043 + background: white;
3044 + border-radius: 8px;
3045 + text-decoration: none;
3046 + color: #7873f5;
3047 + font-weight: 600;
3048 + font-size: 0.9rem;
3049 + border: 1px solid rgba(120, 115, 245, 0.2);
3050 + transition: all 0.2s ease;
3051 +}
3052 +
3053 +.video-link:hover {
3054 + background: #eef0ff;
3055 + color: #fa73e6;
3056 +}
3057 +
3058 +.video-icon {
3059 + display: flex;
3060 + align-items: center;
3061 + justify-content: center;
3062 +}
3063 +
3064 +/* Support Section */
3065 +.support-section {
3066 + margin-top: 40px;
3067 + padding: 24px;
3068 + background: #f8f9ff;
3069 + border-radius: 12px;
3070 + border: 1px solid rgba(120, 115, 245, 0.1);
3071 +}
3072 +
3073 +.support-section h3 {
3074 + margin-top: 0;
3075 + color: #333;
3076 +}
3077 +
3078 +.support-content p {
3079 + color: #666;
3080 + margin-bottom: 12px;
3081 +}
3082 +
3083 +.support-content a {
3084 + color: #7873f5;
3085 + text-decoration: none;
3086 + font-weight: 600;
3087 +}
3088 +
3089 +.support-content a:hover {
3090 + color: #fa73e6;
3091 + text-decoration: underline;
3092 +}
3093 +
3094 +/* Updated tab navigation */
3095 +.mxchat-tabs {
3096 + display: flex;
3097 + gap: 2px;
3098 + margin-bottom: 20px;
3099 + border-bottom: 1px solid rgba(120, 115, 245, 0.1);
3100 +}
3101 +
3102 +.mxchat-tab-button {
3103 + padding: 12px 24px;
3104 + background: none;
3105 + border: none;
3106 + border-bottom: 2px solid transparent;
3107 + color: #666;
3108 + cursor: pointer;
3109 + font-size: 14px;
3110 + transition: all 0.2s ease;
3111 +}
3112 +
3113 +.mxchat-tab-button:hover {
3114 + color: #7873f5;
3115 +}
3116 +
3117 +.mxchat-tab-button.active {
3118 + color: #7873f5;
3119 + border-bottom-color: #7873f5;
3120 +}
3121 +
3122 +/* Tab content */
3123 +.mxchat-tab-content {
3124 + display: none;
3125 +}
3126 +
3127 +.mxchat-tab-content.active {
3128 + display: block;
3129 +}
3130 +
3131 +
3132 +
3133 +
3134 +/* Pro Notification Styling */
3135 +.mxchat-pro-card {
3136 + background: linear-gradient(90deg, #f8f9ff 0%, #f0f4ff 100%);
3137 + border-left: 4px solid #6366f1;
3138 + border-radius: 8px;
3139 + box-shadow: 0 2px 10px rgba(99, 102, 241, 0.1);
3140 + margin-bottom: 25px;
3141 + overflow: hidden;
3142 +}
3143 +
3144 +.mxchat-pro-notification {
3145 + display: flex;
3146 + flex-direction: row;
3147 + align-items: center;
3148 + justify-content: space-between;
3149 + padding: 20px 24px;
3150 +}
3151 +
3152 +@media (max-width: 768px) {
3153 + .mxchat-pro-notification {
3154 + flex-direction: column;
3155 + text-align: center;
3156 + gap: 15px;
3157 + }
3158 +}
3159 +
3160 +.mxchat-pro-content {
3161 + flex: 1;
3162 + padding-right: 10px;
3163 +}
3164 +
3165 +.mxchat-pro-content h3 {
3166 + margin-top: 0;
3167 + margin-bottom: 8px;
3168 + font-size: 18px;
3169 + color: #4338ca;
3170 + font-weight: 600;
3171 +}
3172 +
3173 +.mxchat-pro-content p {
3174 + margin: 0;
3175 + color: #4b5563;
3176 + font-size: 14px;
3177 + line-height: 1.5;
3178 +}
3179 +
3180 +.mxchat-pro-cta {
3181 + display: flex;
3182 + flex-direction: column;
3183 + gap: 8px;
3184 + min-width: 180px;
3185 +}
3186 +
3187 +.mxchat-button {
3188 + display: inline-block;
3189 + background: linear-gradient(90deg, #6366f1 0%, #8b5cf6 100%);
3190 + color: white !important;
3191 + font-weight: 600;
3192 + padding: 10px 20px;
3193 + border-radius: 6px;
3194 + text-decoration: none !important;
3195 + text-align: center;
3196 + transition: all 0.2s ease;
3197 + box-shadow: 0 2px 6px rgba(99, 102, 241, 0.3);
3198 +}
3199 +
3200 +.mxchat-button:hover {
3201 + transform: translateY(-2px);
3202 + box-shadow: 0 4px 12px rgba(99, 102, 241, 0.4);
3203 +}
3204 +
3205 +.mxchat-link {
3206 + color: #6366f1 !important;
3207 + text-decoration: none !important;
3208 + text-align: center;
3209 + font-size: 14px;
3210 + padding: 4px;
3211 +}
3212 +
3213 +.mxchat-link:hover {
3214 + text-decoration: underline !important;
3215 +}
3216 +
3217 +
3218 +
3219 +
3220 +
3221 +
3222 +
3223 +/* API Key field styles */
3224 +.api-key-wrapper {
3225 + margin-bottom: 15px;
3226 + padding: 15px;
3227 + border-radius: 5px;
3228 + border-left: 4px solid #2271b1;
3229 + background-color: #f0f6fc;
3230 + transition: all 0.3s ease;
3231 + position: relative;
3232 +}
3233 +
3234 +/* API Key save indicator positioning */
3235 +.api-key-wrapper .feedback-container {
3236 + position: relative;
3237 + display: inline-flex;
3238 + vertical-align: middle;
3239 + margin-left: 10px;
3240 + right: auto;
3241 + top: auto;
3242 + transform: none;
3243 +}
3244 +
3245 +/* Generic field wrapper for save indicator positioning */
3246 +.mxchat-field-wrapper {
3247 + position: relative;
3248 + display: inline-block;
3249 +}
3250 +
3251 +.mxchat-field-wrapper .feedback-container {
3252 + position: relative;
3253 + display: inline-flex;
3254 + vertical-align: middle;
3255 + margin-left: 10px;
3256 + right: auto;
3257 + top: auto;
3258 + transform: none;
3259 +}
3260 +
3261 +/* Row-level visibility handling */
3262 +tr.mxchat-setting-row {
3263 + display: table-row;
3264 + transition: all 0.3s ease;
3265 +}
3266 +
3267 +tr.mxchat-setting-row.highlighted {
3268 + animation: highlight-row 1.5s ease;
3269 +}
3270 +
3271 +.api-key-wrapper input[type="password"] {
3272 + margin-right: 10px;
3273 +}
3274 +
3275 +.api-key-wrapper button {
3276 + background: #f6f7f7;
3277 + border: 1px solid #c3c4c7;
3278 + color: #50575e;
3279 + cursor: pointer;
3280 + border-radius: 3px;
3281 + padding: 0 10px;
3282 + height: 30px;
3283 + line-height: 28px;
3284 + font-size: 13px;
3285 +}
3286 +
3287 +.api-key-wrapper button:hover {
3288 + background: #f0f0f1;
3289 +}
3290 +
3291 +.api-key-notice {
3292 + margin-top: 8px !important;
3293 + color: #1e1e1e;
3294 + font-style: italic;
3295 +}
3296 +
3297 +@keyframes highlight-field {
3298 + 0% {
3299 + background-color: #e5f5fa;
3300 + }
3301 + 50% {
3302 + background-color: #c7e8f3;
3303 + }
3304 + 100% {
3305 + background-color: #f0f6fc;
3306 + }
3307 +}
3308 +
3309 +@keyframes highlight-row {
3310 + 0% { background-color: transparent; }
3311 + 50% { background-color: #e5f5fa; }
3312 + 100% { background-color: transparent; }
3313 +}
3314 +
3315 +/* Customize the look based on provider */
3316 +.api-key-wrapper[data-provider="openai"] {
3317 + border-left-color: #10a37f;
3318 +}
3319 +
3320 +.api-key-wrapper[data-provider="xai"] {
3321 + border-left-color: #0077e6;
3322 +}
3323 +
3324 +.api-key-wrapper[data-provider="claude"] {
3325 + border-left-color: #a065d5;
3326 +}
3327 +
3328 +.api-key-wrapper[data-provider="deepseek"] {
3329 + border-left-color: #3b7fc4;
3330 +}
3331 +
3332 +.api-key-wrapper[data-provider="voyage"] {
3333 + border-left-color: #ff6b00;
3334 +}
3335 +
3336 +
3337 +
3338 +
3339 +
3340 +
3341 +
3342 +
3343 +
3344 +
3345 +
3346 +
3347 +
3348 +
3349 +
3350 +
3351 +/* Add-on styling */
3352 +.mxchat-addon-badge {
3353 + display: inline-block;
3354 + background: linear-gradient(135deg, #FF8C00, #FFA500);
3355 + color: white;
3356 + font-size: 10px;
3357 + padding: 2px 6px;
3358 + border-radius: 10px;
3359 + margin-top: 5px;
3360 + font-weight: 600;
3361 + margin-left: 6px;
3362 +}
3363 +
3364 +.mxchat-addon-info {
3365 + font-size: 11px;
3366 + color: #666;
3367 + margin-top: 8px;
3368 + background: rgba(255, 140, 0, 0.1);
3369 + padding: 4px 8px;
3370 + border-radius: 4px;
3371 + display: inline-block;
3372 +}
3373 +
3374 +.mxchat-action-type-card.not-installed {
3375 + opacity: 0.8;
3376 + border-style: dashed;
3377 + background: rgba(255, 255, 255, 0.8);
3378 +}
3379 +
3380 +.mxchat-action-type-card.not-installed:hover {
3381 + opacity: 1;
3382 + border-color: #FF8C00;
3383 + box-shadow: 0 4px 12px rgba(255, 140, 0, 0.1);
3384 +}
3385 +
3386 +.mxchat-action-type-card.mxchat-promo-card {
3387 + cursor: default;
3388 + opacity: 0.7;
3389 + border-style: dashed;
3390 + background: rgba(255, 255, 255, 0.6);
3391 +}
3392 +
3393 +.mxchat-action-type-card.mxchat-promo-card:hover {
3394 + cursor: pointer;
3395 + opacity: 0.9;
3396 + border-color: #FF8C00;
3397 +}
3398 +
3399 +.mxchat-addon-info a {
3400 + color: #FF8C00;
3401 + text-decoration: none;
3402 + font-weight: 600;
3403 +}
3404 +
3405 +.mxchat-addon-info a:hover {
3406 + text-decoration: underline;
3407 +}
3408 +
3409 +/* Add-on Notice */
3410 +.mxchat-addon-notice {
3411 + position: fixed;
3412 + top: 0;
3413 + left: 0;
3414 + width: 100%;
3415 + height: 100%;
3416 + background: rgba(0, 0, 0, 0.5);
3417 + z-index: 100003;
3418 + display: flex;
3419 + align-items: center;
3420 + justify-content: center;
3421 + opacity: 0;
3422 + visibility: hidden;
3423 + transition: opacity 0.3s ease, visibility 0.3s ease;
3424 +}
3425 +
3426 +.mxchat-addon-notice.active {
3427 + opacity: 1;
3428 + visibility: visible;
3429 +}
3430 +
3431 +.mxchat-addon-notice-content {
3432 + background: white;
3433 + padding: 30px;
3434 + border-radius: 16px;
3435 + max-width: 400px;
3436 + text-align: center;
3437 + box-shadow: 0 8px 30px rgba(0, 0, 0, 0.2);
3438 + transform: translateY(-20px);
3439 + transition: transform 0.3s ease;
3440 +}
3441 +
3442 +.mxchat-addon-notice.active .mxchat-addon-notice-content {
3443 + transform: translateY(0);
3444 +}
3445 +
3446 +.mxchat-addon-notice-icon {
3447 + font-size: 36px;
3448 + margin-bottom: 15px;
3449 + display: block;
3450 +}
3451 +
3452 +.mxchat-addon-notice h3 {
3453 + margin: 0 0 10px 0;
3454 + font-size: 20px;
3455 + background: linear-gradient(135deg, #FF8C00, #FFA500);
3456 + -webkit-background-clip: text;
3457 + background-clip: text;
3458 + -webkit-text-fill-color: transparent;
3459 + display: inline-block;
3460 +}
3461 +
3462 +.mxchat-addon-notice p {
3463 + margin: 0 0 20px 0;
3464 + color: #666;
3465 +}
3466 +
3467 +.mxchat-addon-notice-buttons {
3468 + display: flex;
3469 + gap: 10px;
3470 + justify-content: center;
3471 +}
3472 +
3473 +
3474 +
3475 +
3476 +
3477 +/* CSS for the custom post types accordion */
3478 +.mxchat-settings-accordion {
3479 + margin: 15px 0;
3480 + border-radius: 4px;
3481 + overflow: hidden;
3482 + border: 1px solid #e0e0e5;
3483 +}
3484 +
3485 +.mxchat-accordion-header {
3486 + border-bottom: none;
3487 +}
3488 +
3489 +.mxchat-accordion-button {
3490 + background-color: #f7f7f9;
3491 + border: none;
3492 + color: #444;
3493 + cursor: pointer;
3494 + font-size: 15px;
3495 + font-weight: 500;
3496 + padding: 14px 20px;
3497 + text-align: left;
3498 + transition: all 0.2s ease;
3499 + width: 100%;
3500 + display: flex;
3501 + justify-content: space-between;
3502 + align-items: center;
3503 + outline: none;
3504 +}
3505 +
3506 +.mxchat-accordion-button:hover {
3507 + background-color: #f0f0f5;
3508 +}
3509 +
3510 +.mxchat-accordion-icon {
3511 + font-size: 12px;
3512 + color: #666;
3513 + transition: transform 0.3s ease;
3514 +}
3515 +
3516 +.mxchat-accordion-content {
3517 + border-top: 1px solid #e0e0e5;
3518 + transition: all 0.3s ease;
3519 +}
3520 +
3521 +.mxchat-accordion-inner {
3522 + padding: 16px 20px;
3523 + background-color: #fff;
3524 +}
3525 +
3526 +/* Make the custom post types look nicer */
3527 +.mxchat-custom-post-types {
3528 + display: grid;
3529 + grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
3530 + gap: 10px;
3531 + margin-top: 10px;
3532 +}
3533 +
3534 +.mxchat-description {
3535 + margin-bottom: 15px;
3536 + color: #666;
3537 +}
3538 +
3539 +.mxchat-empty-notice {
3540 + color: #888;
3541 + font-style: italic;
3542 +}
3543 +
3544 +
3545 +
3546 +/* Model Selector Button Styles */
3547 +.mxchat-model-selector-wrapper {
3548 + width: 100%;
3549 + position: relative;
3550 +}
3551 +
3552 +.mxchat-model-selector-display {
3553 + display: flex;
3554 + justify-content: space-between;
3555 + align-items: center;
3556 + padding: 8px 12px;
3557 + background-color: #fff;
3558 + border: 1px solid #8c8f94;
3559 + border-radius: 4px;
3560 + cursor: pointer;
3561 + min-height: 30px;
3562 + line-height: 1.4;
3563 + box-sizing: border-box;
3564 + transition: border-color 0.2s;
3565 +}
3566 +
3567 +.mxchat-model-selector-display:hover {
3568 + border-color: #2271b1;
3569 +}
3570 +
3571 +.mxchat-model-selected-name {
3572 + white-space: nowrap;
3573 + overflow: hidden;
3574 + text-overflow: ellipsis;
3575 + flex: 1;
3576 +}
3577 +
3578 +.mxchat-model-selector-arrow {
3579 + margin-left: 8px;
3580 + font-size: 10px;
3581 + color: #555;
3582 +}
3583 +
3584 +/* Provider-specific border colors */
3585 +.mxchat-model-provider-gemini {
3586 + border-left: 3px solid #4285F4;
3587 +}
3588 +
3589 +.mxchat-model-provider-openai {
3590 + border-left: 3px solid #10A37F;
3591 +}
3592 +
3593 +.mxchat-model-provider-claude {
3594 + border-left: 3px solid #965de9;
3595 +}
3596 +
3597 +.mxchat-model-provider-xai {
3598 + border-left: 3px solid #000000;
3599 +}
3600 +
3601 +.mxchat-model-provider-deepseek {
3602 + border-left: 3px solid #0066cc;
3603 +}
3604 +
3605 +/* Modal Styles */
3606 +.mxchat-model-selector-modal {
3607 + display: none;
3608 + position: fixed;
3609 + z-index: 9999;
3610 + left: 0;
3611 + top: 0;
3612 + width: 100%;
3613 + height: 100%;
3614 + overflow: auto;
3615 + background-color: rgba(0, 0, 0, 0.5);
3616 +}
3617 +
3618 +.mxchat-model-selector-modal .mxchat-model-selector-modal-content {
3619 + background-color: #fff;
3620 + margin: 5% auto;
3621 + border-radius: 8px;
3622 + box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
3623 + width: 80%;
3624 + max-width: 800px;
3625 + animation: mxchatModalFade 0.3s;
3626 +}
3627 +
3628 +@keyframes mxchatModalFade {
3629 + from {opacity: 0; transform: translateY(-20px);}
3630 + to {opacity: 1; transform: translateY(0);}
3631 +}
3632 +
3633 +.mxchat-model-selector-modal .mxchat-model-selector-modal-header {
3634 + display: flex;
3635 + justify-content: space-between;
3636 + align-items: center;
3637 + padding: 16px 24px;
3638 + border-bottom: 1px solid #eee;
3639 +}
3640 +
3641 +.mxchat-model-selector-modal .mxchat-model-selector-modal-header h3 {
3642 + margin: 0;
3643 + color: #6750A4;
3644 + font-size: 20px;
3645 +}
3646 +
3647 +.mxchat-model-selector-modal .mxchat-model-selector-modal-close {
3648 + font-size: 24px;
3649 + cursor: pointer;
3650 + color: #888;
3651 +}
3652 +
3653 +.mxchat-model-selector-modal .mxchat-model-selector-modal-close:hover {
3654 + color: #333;
3655 +}
3656 +
3657 +.mxchat-model-selector-modal .mxchat-model-selector-modal-body {
3658 + padding: 24px;
3659 + max-height: 60vh;
3660 + overflow-y: auto;
3661 +}
3662 +
3663 +.mxchat-model-selector-modal .mxchat-model-selector-modal-footer {
3664 + padding: 16px 24px;
3665 + border-top: 1px solid #eee;
3666 + text-align: right;
3667 +}
3668 +
3669 +/* Search and Category Styles */
3670 +.mxchat-model-selector-modal .mxchat-model-selector-search-container {
3671 + margin-bottom: 20px;
3672 +}
3673 +
3674 +.mxchat-model-selector-modal .mxchat-model-search-input {
3675 + width: 100%;
3676 + padding: 10px 15px;
3677 + border: 1px solid #ddd;
3678 + border-radius: 4px;
3679 + font-size: 16px;
3680 +}
3681 +
3682 +.mxchat-model-selector-modal .mxchat-model-selector-categories {
3683 + display: flex;
3684 + flex-wrap: wrap;
3685 + gap: 8px;
3686 + margin-bottom: 20px;
3687 +}
3688 +
3689 +.mxchat-model-selector-modal .mxchat-model-category-btn {
3690 + background-color: #f5f5f5;
3691 + border: 1px solid #ddd;
3692 + padding: 8px 16px;
3693 + border-radius: 20px;
3694 + cursor: pointer;
3695 + transition: all 0.2s;
3696 +}
3697 +
3698 +.mxchat-model-selector-modal .mxchat-model-category-btn.active {
3699 + background-color: #6750A4;
3700 + color: white;
3701 + border-color: #6750A4;
3702 +}
3703 +
3704 +/* Model Grid Styles */
3705 +.mxchat-model-selector-modal .mxchat-model-selector-grid {
3706 + display: grid;
3707 + grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
3708 + gap: 16px;
3709 +}
3710 +
3711 +.mxchat-model-selector-modal .mxchat-model-selector-card,
3712 +.mxchat-model-selector-modal .mxchat-openrouter-card {
3713 + display: flex;
3714 + border: 1px solid #ddd;
3715 + border-radius: 8px;
3716 + padding: 16px;
3717 + cursor: pointer;
3718 + transition: all 0.2s;
3719 + position: relative;
3720 +}
3721 +
3722 +.mxchat-model-selector-modal .mxchat-model-selector-card:hover,
3723 +.mxchat-model-selector-modal .mxchat-openrouter-card:hover {
3724 + border-color: #6750A4;
3725 + box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
3726 +}
3727 +
3728 +.mxchat-model-selector-modal .mxchat-model-selector-card.mxchat-model-selected,
3729 +.mxchat-model-selector-modal .mxchat-openrouter-card.mxchat-model-selected {
3730 + border-color: #6750A4;
3731 + background-color: rgba(103, 80, 164, 0.05);
3732 +}
3733 +
3734 +/* Provider-specific styles for cards */
3735 +.mxchat-model-selector-modal .mxchat-model-selector-card.mxchat-model-provider-gemini {
3736 + border-left: 4px solid #4285F4;
3737 +}
3738 +
3739 +.mxchat-model-selector-modal .mxchat-model-selector-card.mxchat-model-provider-openai {
3740 + border-left: 4px solid #10A37F;
3741 +}
3742 +
3743 +.mxchat-model-selector-modal .mxchat-model-selector-card.mxchat-model-provider-claude {
3744 + border-left: 4px solid #965de9;
3745 +}
3746 +
3747 +.mxchat-model-selector-modal .mxchat-model-selector-card.mxchat-model-provider-xai {
3748 + border-left: 4px solid #000000;
3749 +}
3750 +
3751 +.mxchat-model-selector-modal .mxchat-model-selector-card.mxchat-model-provider-deepseek {
3752 + border-left: 4px solid #0066cc;
3753 +}
3754 +
3755 +.mxchat-model-selector-modal .mxchat-model-selector-icon {
3756 + margin-right: 12px;
3757 + font-size: 24px;
3758 + display: flex;
3759 + align-items: center;
3760 + width: 25px;
3761 + height: 45px;
3762 +}
3763 +
3764 +.mxchat-model-selector-modal .mxchat-model-icon-gemini {
3765 + color: #4285F4;
3766 +}
3767 +
3768 +.mxchat-model-selector-modal .mxchat-model-icon-openai {
3769 + color: #10A37F;
3770 +}
3771 +
3772 +.mxchat-model-selector-modal .mxchat-model-icon-claude {
3773 + color: #965de9;
3774 +}
3775 +
3776 +.mxchat-model-selector-modal .mxchat-model-icon-xai {
3777 + color: #000000;
3778 +}
3779 +
3780 +.mxchat-model-selector-modal .mxchat-model-icon-deepseek {
3781 + color: #0066cc;
3782 +}
3783 +
3784 +.mxchat-model-selector-modal .mxchat-model-selector-info {
3785 + flex: 1;
3786 +}
3787 +
3788 +.mxchat-model-selector-modal .mxchat-model-selector-title {
3789 + margin: 0 0 6px 0;
3790 + font-size: 16px;
3791 +}
3792 +
3793 +.mxchat-model-selector-modal .mxchat-model-selector-description {
3794 + margin: 0;
3795 + font-size: 14px;
3796 + color: #666;
3797 +}
3798 +
3799 +.mxchat-model-selector-modal .mxchat-model-selector-checkmark {
3800 + position: absolute;
3801 + top: 8px;
3802 + right: 8px;
3803 + width: 20px;
3804 + height: 20px;
3805 + background-color: #6750A4;
3806 + color: white;
3807 + border-radius: 50%;
3808 + display: flex;
3809 + align-items: center;
3810 + justify-content: center;
3811 + font-size: 12px;
3812 +}
3813 +
3814 +/* Media queries for responsive design */
3815 +@media screen and (max-width: 782px) {
3816 + .mxchat-model-selector-modal .mxchat-model-selector-modal-content {
3817 + width: 95%;
3818 + margin: 10% auto;
3819 + }
3820 +
3821 + .mxchat-model-selector-modal .mxchat-model-selector-grid {
3822 + grid-template-columns: 1fr;
3823 + }
3824 +
3825 + .mxchat-model-selector-modal .mxchat-model-selector-categories {
3826 + overflow-x: auto;
3827 + padding-bottom: 10px;
3828 + }
3829 +}
3830 +
3831 +
3832 +/* Improved styling for the model selector button */
3833 +#mxchat_model_selector_btn.mxchat-model-selector-btn {
3834 + width: 100%;
3835 + max-width: 400px;
3836 + text-align: left;
3837 + padding: 8px 12px;
3838 + height: auto;
3839 + min-height: 36px;
3840 + background-color: #fff;
3841 + color: #2c3338;
3842 + border: 1px solid #8c8f94;
3843 + border-radius: 4px;
3844 + box-shadow: 0 1px 2px rgba(0, 0, 0, 0.07);
3845 + position: relative;
3846 + font-weight: normal;
3847 + transition: all 0.2s ease;
3848 + display: flex;
3849 + align-items: center;
3850 + justify-content: space-between;
3851 +}
3852 +
3853 +#mxchat_model_selector_btn.mxchat-model-selector-btn:after {
3854 + content: "\f140";
3855 + font-family: dashicons;
3856 + position: absolute;
3857 + right: 10px;
3858 + font-size: 20px;
3859 + color: #666;
3860 +}
3861 +
3862 +#mxchat_model_selector_btn.mxchat-model-selector-btn:hover {
3863 + border-color: #2271b1;
3864 + color: #2271b1;
3865 +}
3866 +
3867 +#mxchat_model_selector_btn.mxchat-model-selector-btn:focus {
3868 + box-shadow: 0 0 0 1px #2271b1;
3869 + outline: none;
3870 +}
3871 +
3872 +/* Embedding Model Selector - completely separate styling to avoid conflicts */
3873 +.mxchat-embedding-model-selector-btn {
3874 + width: 100%;
3875 + max-width: 400px;
3876 + text-align: left;
3877 + padding: 8px 12px;
3878 + height: auto;
3879 + min-height: 36px;
3880 + background-color: #fff;
3881 + color: #2c3338;
3882 + border: 1px solid #8c8f94;
3883 + border-radius: 4px;
3884 + box-shadow: 0 1px 2px rgba(0, 0, 0, 0.07);
3885 + position: relative;
3886 + font-weight: normal;
3887 + transition: all 0.2s ease;
3888 + display: flex;
3889 + align-items: center;
3890 + justify-content: space-between;
3891 +}
3892 +
3893 +.mxchat-embedding-model-selector-btn:after {
3894 + content: "\f140";
3895 + font-family: dashicons;
3896 + position: absolute;
3897 + right: 10px;
3898 + font-size: 20px;
3899 + color: #666;
3900 +}
3901 +
3902 +.mxchat-embedding-model-selector-btn:hover {
3903 + border-color: #2271b1;
3904 + color: #2271b1;
3905 +}
3906 +
3907 +.mxchat-embedding-model-selector-btn:focus {
3908 + box-shadow: 0 0 0 1px #2271b1;
3909 + outline: none;
3910 +}
3911 +
3912 +/* Modal Styles */
3913 +.mxchat-embedding-model-selector-modal {
3914 + display: none;
3915 + position: fixed;
3916 + z-index: 9999;
3917 + left: 0;
3918 + top: 0;
3919 + width: 100%;
3920 + height: 100%;
3921 + overflow: auto;
3922 + background-color: rgba(0, 0, 0, 0.5);
3923 +}
3924 +
3925 +.mxchat-embedding-model-selector-modal-content {
3926 + background-color: #fff;
3927 + margin: 5% auto;
3928 + border-radius: 8px;
3929 + box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
3930 + width: 80%;
3931 + max-width: 800px;
3932 + animation: mxchatEmbeddingModalFade 0.3s;
3933 +}
3934 +
3935 +@keyframes mxchatEmbeddingModalFade {
3936 + from {opacity: 0; transform: translateY(-20px);}
3937 + to {opacity: 1; transform: translateY(0);}
3938 +}
3939 +
3940 +.mxchat-embedding-model-selector-modal-header {
3941 + display: flex;
3942 + justify-content: space-between;
3943 + align-items: center;
3944 + padding: 16px 24px;
3945 + border-bottom: 1px solid #eee;
3946 +}
3947 +
3948 +.mxchat-embedding-model-selector-modal-header h3 {
3949 + margin: 0;
3950 + color: #6750A4;
3951 + font-size: 20px;
3952 +}
3953 +
3954 +.mxchat-embedding-model-selector-modal-close {
3955 + font-size: 24px;
3956 + cursor: pointer;
3957 + color: #888;
3958 +}
3959 +
3960 +.mxchat-embedding-model-selector-modal-close:hover {
3961 + color: #333;
3962 +}
3963 +
3964 +.mxchat-embedding-model-selector-modal-body {
3965 + padding: 24px;
3966 + max-height: 60vh;
3967 + overflow-y: auto;
3968 +}
3969 +
3970 +.mxchat-embedding-model-selector-modal-footer {
3971 + padding: 16px 24px;
3972 + border-top: 1px solid #eee;
3973 + text-align: right;
3974 +}
3975 +
3976 +/* Search and Category Styles */
3977 +.mxchat-embedding-model-selector-search-container {
3978 + margin-bottom: 20px;
3979 +}
3980 +
3981 +.mxchat-embedding-model-search-input {
3982 + width: 100%;
3983 + padding: 10px 15px;
3984 + border: 1px solid #ddd;
3985 + border-radius: 4px;
3986 + font-size: 16px;
3987 +}
3988 +
3989 +.mxchat-embedding-model-selector-categories {
3990 + display: flex;
3991 + flex-wrap: wrap;
3992 + gap: 8px;
3993 + margin-bottom: 20px;
3994 +}
3995 +
3996 +.mxchat-embedding-model-category-btn {
3997 + background-color: #f5f5f5;
3998 + border: 1px solid #ddd;
3999 + padding: 8px 16px;
4000 + border-radius: 20px;
4001 + cursor: pointer;
4002 + transition: all 0.2s;
4003 +}
4004 +
4005 +.mxchat-embedding-model-category-btn.active {
4006 + background-color: #6750A4;
4007 + color: white;
4008 + border-color: #6750A4;
4009 +}
4010 +
4011 +/* Model Grid Styles */
4012 +.mxchat-embedding-model-selector-grid {
4013 + display: grid;
4014 + grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
4015 + gap: 16px;
4016 +}
4017 +
4018 +.mxchat-embedding-model-selector-card {
4019 + display: flex;
4020 + border: 1px solid #ddd;
4021 + border-radius: 8px;
4022 + padding: 16px;
4023 + cursor: pointer;
4024 + transition: all 0.2s;
4025 + position: relative;
4026 +}
4027 +
4028 +.mxchat-embedding-model-selector-card:hover {
4029 + border-color: #6750A4;
4030 + box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
4031 +}
4032 +
4033 +.mxchat-embedding-model-selector-card.mxchat-embedding-model-selected {
4034 + border-color: #6750A4;
4035 + background-color: rgba(103, 80, 164, 0.05);
4036 +}
4037 +
4038 +/* Provider-specific styles */
4039 +.mxchat-embedding-model-provider-openai {
4040 + border-left: 4px solid #10A37F;
4041 +}
4042 +
4043 +.mxchat-embedding-model-provider-voyage {
4044 + border-left: 4px solid #0055D4;
4045 +}
4046 +
4047 +/* Provider-specific border color for Gemini */
4048 +.mxchat-embedding-model-provider-gemini {
4049 + border-left: 4px solid #4285F4;
4050 +}
4051 +
4052 +/* Icon color for Gemini */
4053 +.mxchat-embedding-model-icon-gemini {
4054 + color: #4285F4;
4055 +}
4056 +
4057 +.mxchat-embedding-model-selector-icon {
4058 + margin-right: 12px;
4059 + font-size: 24px;
4060 + display: flex;
4061 + align-items: center;
4062 + width: 25px;
4063 + height: 45px;
4064 +}
4065 +
4066 +.mxchat-embedding-model-icon-openai {
4067 + color: #10A37F;
4068 +}
4069 +
4070 +.mxchat-embedding-model-icon-voyage {
4071 + color: #0055D4;
4072 +}
4073 +
4074 +.mxchat-embedding-model-selector-info {
4075 + flex: 1;
4076 +}
4077 +
4078 +.mxchat-embedding-model-selector-title {
4079 + margin: 0 0 6px 0;
4080 + font-size: 16px;
4081 +}
4082 +
4083 +.mxchat-embedding-model-selector-description {
4084 + margin: 0;
4085 + font-size: 14px;
4086 + color: #666;
4087 +}
4088 +
4089 +.mxchat-embedding-model-selector-checkmark {
4090 + position: absolute;
4091 + top: 8px;
4092 + right: 8px;
4093 + width: 20px;
4094 + height: 20px;
4095 + background-color: #6750A4;
4096 + color: white;
4097 + border-radius: 50%;
4098 + display: flex;
4099 + align-items: center;
4100 + justify-content: center;
4101 + font-size: 12px;
4102 +}
4103 +
4104 +/* Media queries for responsive design */
4105 +@media screen and (max-width: 782px) {
4106 + .mxchat-embedding-model-selector-modal-content {
4107 + width: 95%;
4108 + margin: 10% auto;
4109 + }
4110 +
4111 + .mxchat-embedding-model-selector-grid {
4112 + grid-template-columns: 1fr;
4113 + }
4114 +
4115 + .mxchat-embedding-model-selector-categories {
4116 + overflow-x: auto;
4117 + padding-bottom: 10px;
4118 + }
4119 +}
4120 +
4121 +
4122 +/* Embedding Model Selector Button Styles */
4123 +#mxchat_embedding_model_selector_btn.mxchat-embedding-model-selector-btn {
4124 + width: 100%;
4125 + max-width: 400px;
4126 + text-align: left;
4127 + padding: 8px 12px;
4128 + height: auto;
4129 + min-height: 36px;
4130 + background-color: #fff;
4131 + color: #2c3338;
4132 + border: 1px solid #8c8f94;
4133 + border-radius: 4px;
4134 + box-shadow: 0 1px 2px rgba(0, 0, 0, 0.07);
4135 + position: relative;
4136 + font-weight: normal;
4137 + transition: all 0.2s ease;
4138 + display: flex;
4139 + align-items: center;
4140 + justify-content: space-between;
4141 +}
4142 +
4143 +#mxchat_embedding_model_selector_btn.mxchat-embedding-model-selector-btn:after {
4144 + content: "\f140";
4145 + font-family: dashicons;
4146 + position: absolute;
4147 + right: 10px;
4148 + font-size: 20px;
4149 + color: #666;
4150 +}
4151 +
4152 +#mxchat_embedding_model_selector_btn.mxchat-embedding-model-selector-btn:hover {
4153 + border-color: #2271b1;
4154 + color: #2271b1;
4155 +}
4156 +
4157 +#mxchat_embedding_model_selector_btn.mxchat-embedding-model-selector-btn:focus {
4158 + box-shadow: 0 0 0 1px #2271b1;
4159 + outline: none;
4160 +}
4161 +
4162 +.mxchat-failed-urls-container {
4163 + margin-top: 15px;
4164 + border-top: 1px solid rgba(0, 0, 0, 0.1);
4165 + padding-top: 10px;
4166 +}
4167 +
4168 +.mxchat-failed-urls-container h4 {
4169 + margin: 0 0 8px 0;
4170 + font-size: 14px;
4171 + color: #d63638;
4172 +}
4173 +
4174 +.mxchat-failed-urls-container details {
4175 + margin-bottom: 10px;
4176 +}
4177 +
4178 +.mxchat-failed-urls-container summary {
4179 + cursor: pointer;
4180 + font-weight: 500;
4181 + padding: 5px 0;
4182 + color: #3c434a;
4183 +}
4184 +
4185 +.mxchat-failed-urls-container summary:hover {
4186 + color: #2271b1;
4187 +}
4188 +
4189 +.mxchat-failed-urls-list {
4190 + margin-top: 10px;
4191 + max-height: 300px;
4192 + overflow-y: auto;
4193 + border: 1px solid #dcdcde;
4194 + border-radius: 4px;
4195 + background: #f8f9fa;
4196 +}
4197 +
4198 +.mxchat-failed-url-item {
4199 + padding: 8px 12px;
4200 + border-bottom: 1px solid #dcdcde;
4201 + display: grid;
4202 + grid-template-columns: 1fr;
4203 + grid-gap: 6px;
4204 + font-size: 12px;
4205 +}
4206 +
4207 +.mxchat-failed-url-item:last-child {
4208 + border-bottom: none;
4209 +}
4210 +
4211 +.mxchat-failed-url-address {
4212 + font-weight: 500;
4213 + word-break: break-all;
4214 +}
4215 +
4216 +.mxchat-failed-url-address a {
4217 + color: #2271b1;
4218 + text-decoration: none;
4219 +}
4220 +
4221 +.mxchat-failed-url-address a:hover {
4222 + text-decoration: underline;
4223 +}
4224 +
4225 +.mxchat-failed-url-error {
4226 + color: #d63638;
4227 +}
4228 +
4229 +.mxchat-failed-url-time {
4230 + color: #50575e;
4231 + font-style: italic;
4232 + font-size: 11px;
4233 +}
4234 +
4235 +.mxchat-failed-urls-more {
4236 + text-align: center;
4237 + padding: 8px;
4238 + background: #f0f0f1;
4239 + border-top: 1px solid #dcdcde;
4240 + color: #50575e;
4241 + font-style: italic;
4242 + font-size: 12px;
4243 +}
4244 +
4245 +/* Responsive design for larger screens */
4246 +@media screen and (min-width: 783px) {
4247 + .mxchat-failed-url-item {
4248 + grid-template-columns: 2fr 3fr 1fr;
4249 + align-items: center;
4250 + }
4251 +}
4252 +
4253 +
4254 +/* Style for addon-managed option group */
4255 +.addon-managed-optgroup {
4256 + color: #888 !important;
4257 + font-style: italic;
4258 + background: #f5f5f5;
4259 +}
4260 +
4261 +/* Selected text style */
4262 +select option:disabled {
4263 + color: #888;
4264 + font-style: italic;
4265 +}
4266 +
4267 + .mxchat-rate-limits-container {
4268 + max-width: 900px;
4269 + }
4270 + .mxchat-rate-limit-row {
4271 + display: flex;
4272 + flex-wrap: wrap;
4273 + align-items: flex-start;
4274 + margin-bottom: 20px;
4275 + padding: 20px;
4276 + background: #fff;
4277 + border-radius: 8px;
4278 + border: 1px solid #e0e0e0;
4279 + box-shadow: 0 2px 4px rgba(0,0,0,0.04);
4280 + transition: all 0.2s ease;
4281 + }
4282 + .mxchat-rate-limit-row:hover {
4283 + box-shadow: 0 4px 8px rgba(0,0,0,0.08);
4284 + border-color: #c7c7c7;
4285 + }
4286 + .mxchat-rate-limit-role {
4287 + width: 160px;
4288 + font-weight: 600;
4289 + font-size: 15px;
4290 + margin-right: 20px;
4291 + padding-top: 4px;
4292 + color: #23282d;
4293 + }
4294 + .mxchat-rate-limit-controls-wrapper {
4295 + flex: 1;
4296 + }
4297 + .mxchat-rate-limit-controls {
4298 + display: flex;
4299 + flex-wrap: wrap;
4300 + gap: 15px;
4301 + align-items: center;
4302 + margin-bottom: 15px;
4303 + }
4304 + .mxchat-rate-limit-controls > div {
4305 + margin-bottom: 5px;
4306 + }
4307 + .mxchat-rate-limit-controls label {
4308 + display: block;
4309 + margin-bottom: 5px;
4310 + font-weight: 500;
4311 + color: #50575e;
4312 + }
4313 + .mxchat-rate-limit-message {
4314 + width: 100%;
4315 + margin-top: 15px;
4316 + }
4317 + .mxchat-rate-limit-message label {
4318 + display: block;
4319 + margin-bottom: 5px;
4320 + font-weight: 500;
4321 + color: #50575e;
4322 + }
4323 + .mxchat-rate-limit-message textarea {
4324 + width: 100%;
4325 + min-height: 70px;
4326 + padding: 8px 12px;
4327 + border-radius: 4px;
4328 + resize: vertical;
4329 + font-size: 14px;
4330 + }
4331 + .mxchat-rate-limit-controls select {
4332 + min-width: 120px;
4333 + padding: 6px 24px 6px 10px;
4334 + }
4335 + @media (max-width: 782px) {
4336 + .mxchat-rate-limit-row {
4337 + flex-direction: column;
4338 + }
4339 + .mxchat-rate-limit-role {
4340 + margin-bottom: 15px;
4341 + width: 100%;
4342 + font-size: 16px;
4343 + }
4344 + .mxchat-rate-limit-controls {
4345 + flex-direction: column;
4346 + align-items: flex-start;
4347 + gap: 12px;
4348 + }
4349 + .mxchat-rate-limit-controls > div {
4350 + width: 100%;
4351 + }
4352 + .mxchat-rate-limit-controls select {
4353 + width: 100%;
4354 + }
4355 + }
4356 +
4357 + /* Support notification styles */
4358 + .support-notification {
4359 + background: linear-gradient(135deg, #fff3cd 0%, #ffeaa7 100%);
4360 + border: 2px solid #f39c12;
4361 + border-radius: 12px;
4362 + padding: 20px;
4363 + margin-bottom: 25px;
4364 + display: flex;
4365 + align-items: flex-start;
4366 + gap: 15px;
4367 + box-shadow: 0 4px 12px rgba(243, 156, 18, 0.15);
4368 + position: relative;
4369 + overflow: hidden;
4370 + }
4371 +
4372 + .support-notification::before {
4373 + content: '';
4374 + position: absolute;
4375 + top: 0;
4376 + left: 0;
4377 + right: 0;
4378 + height: 4px;
4379 + background: linear-gradient(90deg, #f39c12, #e67e22, #f39c12);
4380 + background-size: 200% 100%;
4381 + animation: shimmer 2s ease-in-out infinite;
4382 + }
4383 +
4384 + @keyframes shimmer {
4385 + 0% { background-position: -200% 0; }
4386 + 100% { background-position: 200% 0; }
4387 + }
4388 +
4389 + .support-notification-icon {
4390 + flex-shrink: 0;
4391 + width: 24px;
4392 + height: 24px;
4393 + color: #e67e22;
4394 + margin-top: 2px;
4395 + }
4396 +
4397 + .support-notification-content {
4398 + flex: 1;
4399 + }
4400 +
4401 + .support-notification-title {
4402 + font-size: 18px;
4403 + font-weight: 600;
4404 + color: #8b4513;
4405 + margin: 0 0 8px 0;
4406 + display: flex;
4407 + align-items: center;
4408 + gap: 8px;
4409 + }
4410 +
4411 + .support-notification-message {
4412 + font-size: 15px;
4413 + color: #8b4513;
4414 + margin: 0 0 15px 0;
4415 + line-height: 1.5;
4416 + }
4417 +
4418 + .support-notification-button {
4419 + display: inline-flex;
4420 + align-items: center;
4421 + gap: 8px;
4422 + background: linear-gradient(135deg, #e67e22 0%, #d35400 100%);
4423 + color: white;
4424 + padding: 12px 20px;
4425 + border-radius: 8px;
4426 + text-decoration: none;
4427 + font-weight: 600;
4428 + font-size: 14px;
4429 + transition: all 0.3s ease;
4430 + border: none;
4431 + cursor: pointer;
4432 + box-shadow: 0 2px 8px rgba(230, 126, 34, 0.3);
4433 + }
4434 +
4435 + .support-notification-button:hover {
4436 + background: linear-gradient(135deg, #d35400 0%, #c0392b 100%);
4437 + transform: translateY(-2px);
4438 + box-shadow: 0 4px 12px rgba(230, 126, 34, 0.4);
4439 + color: white;
4440 + text-decoration: none;
4441 + }
4442 +
4443 + .support-notification-button:active {
4444 + transform: translateY(0);
4445 + }
4446 +
4447 + .support-notification-button svg {
4448 + width: 16px;
4449 + height: 16px;
4450 + }
4451 +
4452 + /* Responsive design */
4453 + @media (max-width: 768px) {
4454 + .support-notification {
4455 + padding: 16px;
4456 + gap: 12px;
4457 + }
4458 +
4459 + .support-notification-title {
4460 + font-size: 16px;
4461 + }
4462 +
4463 + .support-notification-message {
4464 + font-size: 14px;
4465 + }
4466 +
4467 + .support-notification-button {
4468 + padding: 10px 16px;
4469 + font-size: 13px;
4470 + }
4471 + }
4472 +/* Sample instructions button styles */
4473 +.mxchat-instructions-container {
4474 + margin-top: 8px;
4475 +}
4476 +
4477 +.mxchat-instructions-btn {
4478 + display: inline-flex;
4479 + align-items: center;
4480 + gap: 6px;
4481 + background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
4482 + color: white;
4483 + padding: 8px 14px;
4484 + border: none;
4485 + border-radius: 6px;
4486 + font-size: 13px;
4487 + font-weight: 500;
4488 + cursor: pointer;
4489 + transition: all 0.3s ease;
4490 + text-decoration: none;
4491 + box-shadow: 0 2px 4px rgba(102, 126, 234, 0.2);
4492 +}
4493 +
4494 +.mxchat-instructions-btn:hover {
4495 + background: linear-gradient(135deg, #5a67d8 0%, #6b46c1 100%);
4496 + transform: translateY(-1px);
4497 + box-shadow: 0 4px 8px rgba(102, 126, 234, 0.3);
4498 +}
4499 +
4500 +.mxchat-instructions-btn:active {
4501 + transform: translateY(0);
4502 +}
4503 +
4504 +.mxchat-instructions-btn svg {
4505 + width: 14px;
4506 + height: 14px;
4507 +}
4508 +
4509 +/* Modal styles - Positioned relative to viewport */
4510 +.mxchat-instructions-modal-overlay {
4511 + display: none;
4512 + position: fixed;
4513 + top: 0;
4514 + left: 0;
4515 + width: 100%;
4516 + height: 100%;
4517 + background: rgba(0, 0, 0, 0.6);
4518 + z-index: 999999;
4519 +}
4520 +
4521 +.mxchat-instructions-modal-overlay.mxchat-instructions-show {
4522 + display: flex;
4523 + align-items: center;
4524 + justify-content: center;
4525 + padding: 20px;
4526 +}
4527 +
4528 +.mxchat-instructions-modal-content {
4529 + background: white;
4530 + border-radius: 12px;
4531 + max-width: 700px;
4532 + width: 100%;
4533 + max-height: 90vh;
4534 + overflow: hidden;
4535 + box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
4536 +}
4537 +
4538 +.mxchat-instructions-modal-header {
4539 + background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
4540 + color: white;
4541 + padding: 20px 24px;
4542 + display: flex;
4543 + align-items: center;
4544 + justify-content: space-between;
4545 +}
4546 +
4547 +.mxchat-instructions-modal-title {
4548 + font-size: 18px;
4549 + font-weight: 600;
4550 + margin: 0;
4551 + display: flex;
4552 + align-items: center;
4553 + gap: 10px;
4554 +}
4555 +
4556 +.mxchat-instructions-modal-close {
4557 + background: rgba(255, 255, 255, 0.2);
4558 + border: none;
4559 + color: white;
4560 + width: 32px;
4561 + height: 32px;
4562 + border-radius: 6px;
4563 + cursor: pointer;
4564 + display: flex;
4565 + align-items: center;
4566 + justify-content: center;
4567 + transition: background 0.2s ease;
4568 +}
4569 +
4570 +.mxchat-instructions-modal-close:hover {
4571 + background: rgba(255, 255, 255, 0.3);
4572 +}
4573 +
4574 +.mxchat-instructions-modal-body {
4575 + padding: 24px;
4576 + overflow-y: auto;
4577 + max-height: calc(90vh - 140px);
4578 +}
4579 +
4580 +.mxchat-instructions-content {
4581 + background: #f8fafc;
4582 + border: 2px solid #e2e8f0;
4583 + border-radius: 8px;
4584 + padding: 20px;
4585 + font-family: 'Courier New', Monaco, monospace;
4586 + font-size: 13px;
4587 + line-height: 1.6;
4588 + color: #2d3748;
4589 + white-space: pre-wrap;
4590 + word-wrap: break-word;
4591 +}
4592 +
4593 +.mxchat-instructions-copy-btn {
4594 + margin-top: 16px;
4595 + background: #48bb78;
4596 + color: white;
4597 + border: none;
4598 + padding: 10px 16px;
4599 + border-radius: 6px;
4600 + font-size: 14px;
4601 + font-weight: 500;
4602 + cursor: pointer;
4603 + display: inline-flex;
4604 + align-items: center;
4605 + gap: 8px;
4606 + transition: all 0.2s ease;
4607 +}
4608 +
4609 +.mxchat-instructions-copy-btn:hover {
4610 + background: #38a169;
4611 + transform: translateY(-1px);
4612 +}
4613 +
4614 +.mxchat-instructions-copy-btn svg {
4615 + width: 16px;
4616 + height: 16px;
4617 +}
4618 +
4619 +.mxchat-instructions-modal-footer {
4620 + padding: 16px 24px;
4621 + background: #f7fafc;
4622 + border-top: 1px solid #e2e8f0;
4623 + text-align: right;
4624 +}
4625 +
4626 +.mxchat-instructions-btn-secondary {
4627 + background: #e2e8f0;
4628 + color: #4a5568;
4629 + border: none;
4630 + padding: 8px 16px;
4631 + border-radius: 6px;
4632 + font-size: 14px;
4633 + cursor: pointer;
4634 + transition: background 0.2s ease;
4635 +}
4636 +
4637 +.mxchat-instructions-btn-secondary:hover {
4638 + background: #cbd5e0;
4639 +}
4640 +
4641 +/* Responsive design */
4642 +@media (max-width: 782px) {
4643 + .mxchat-instructions-modal-overlay.mxchat-instructions-show {
4644 + padding: 10px;
4645 + }
4646 +
4647 + .mxchat-instructions-modal-content {
4648 + max-height: 95vh;
4649 + }
4650 +
4651 + .mxchat-instructions-modal-header {
4652 + padding: 16px 20px;
4653 + }
4654 +
4655 + .mxchat-instructions-modal-body {
4656 + padding: 20px;
4657 + max-height: calc(95vh - 120px);
4658 + }
4659 +
4660 + .mxchat-instructions-content {
4661 + font-size: 12px;
4662 + padding: 16px;
4663 + }
4664 +}
4665 +
4666 +
4667 +
4668 +
4669 +
4670 +/* Completion Card - Modern Theme */
4671 +.mxchat-completion-card {
4672 + margin: 20px 0;
4673 + background: #ffffff;
4674 + border-radius: 12px;
4675 + box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08), 0 4px 16px rgba(0, 0, 0, 0.06);
4676 + overflow: hidden;
4677 + transition: all 0.3s ease;
4678 + border: 1px solid rgba(0, 0, 0, 0.06);
4679 +}
4680 +
4681 +.mxchat-completion-card:hover {
4682 + box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1), 0 6px 20px rgba(0, 0, 0, 0.08);
4683 +}
4684 +
4685 +/* Header Section */
4686 +.mxchat-completion-header {
4687 + background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
4688 + padding: 24px;
4689 + display: flex;
4690 + align-items: center;
4691 + gap: 16px;
4692 +}
4693 +
4694 +.mxchat-completion-icon {
4695 + width: 48px;
4696 + height: 48px;
4697 + background: rgba(255, 255, 255, 0.2);
4698 + border-radius: 12px;
4699 + display: flex;
4700 + align-items: center;
4701 + justify-content: center;
4702 + flex-shrink: 0;
4703 +}
4704 +
4705 +.mxchat-completion-icon svg {
4706 + color: #ffffff;
4707 + width: 28px;
4708 + height: 28px;
4709 +}
4710 +
4711 +.mxchat-completion-title h3 {
4712 + margin: 0;
4713 + color: #ffffff;
4714 + font-size: 20px;
4715 + font-weight: 600;
4716 + letter-spacing: -0.02em;
4717 +}
4718 +
4719 +.mxchat-completion-time {
4720 + margin: 4px 0 0 0;
4721 + color: rgba(255, 255, 255, 0.8);
4722 + font-size: 14px;
4723 +}
4724 +
4725 +/* Summary Section */
4726 +.mxchat-completion-summary {
4727 + padding: 24px;
4728 + border-bottom: 1px solid #f0f0f1;
4729 +}
4730 +
4731 +.mxchat-completion-summary h4 {
4732 + margin: 0 0 16px 0;
4733 + color: #1d2327;
4734 + font-size: 16px;
4735 + font-weight: 600;
4736 +}
4737 +
4738 +.mxchat-summary-stats {
4739 + display: grid;
4740 + grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
4741 + gap: 12px;
4742 +}
4743 +
4744 +.mxchat-stat-card {
4745 + padding: 20px;
4746 + border-radius: 12px;
4747 + display: flex;
4748 + align-items: center;
4749 + gap: 16px;
4750 + transition: all 0.2s ease;
4751 +}
4752 +
4753 +.mxchat-stat-card:hover {
4754 + transform: translateY(-2px);
4755 + box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
4756 +}
4757 +
4758 +.mxchat-stat-card .stat-icon {
4759 + font-size: 32px;
4760 + line-height: 1;
4761 + opacity: 0.9;
4762 +}
4763 +
4764 +.mxchat-stat-card .stat-content {
4765 + flex: 1;
4766 + text-align: left;
4767 +}
4768 +
4769 +.mxchat-stat-label {
4770 + display: block;
4771 + font-size: 12px;
4772 + color: #646970;
4773 + font-weight: 500;
4774 + text-transform: uppercase;
4775 + letter-spacing: 0.5px;
4776 + margin-bottom: 4px;
4777 +}
4778 +
4779 +.mxchat-stat-value {
4780 + display: block;
4781 + font-size: 28px;
4782 + font-weight: 700;
4783 + color: #1d2327;
4784 + line-height: 1.2;
4785 +}
4786 +
4787 +.mxchat-stat-sublabel {
4788 + display: block;
4789 + font-size: 11px;
4790 + color: #8c8f94;
4791 + margin-top: 4px;
4792 +}
4793 +
4794 +/* Stat Card Variants */
4795 +.mxchat-stat-primary {
4796 + background: linear-gradient(135deg, #f6f7f7 0%, #ffffff 100%);
4797 + border: 1px solid #e5e7eb;
4798 +}
4799 +
4800 +.mxchat-stat-accent {
4801 + border: 1px solid #e9d5ff;
4802 +}
4803 +
4804 +.mxchat-stat-accent .stat-value {
4805 + background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
4806 + -webkit-background-clip: text;
4807 + -webkit-text-fill-color: transparent;
4808 + background-clip: text;
4809 +}
4810 +
4811 +.mxchat-stat-success {
4812 + background: #e6f5e6;
4813 +}
4814 +
4815 +.mxchat-stat-success .mxchat-stat-value {
4816 + color: #00a32a;
4817 +}
4818 +
4819 +.mxchat-stat-failed {
4820 + background: #fef1f1;
4821 +}
4822 +
4823 +.mxchat-stat-failed .mxchat-stat-value {
4824 + color: #d63638;
4825 +}
4826 +
4827 +/* Metrics Dashboard */
4828 +.mxchat-metrics-dashboard {
4829 + background: #ffffff;
4830 + border-radius: 16px;
4831 + box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
4832 + margin-bottom: 24px;
4833 + overflow: hidden;
4834 +}
4835 +
4836 +.mxchat-metrics-tabs {
4837 + display: flex;
4838 + gap: 0;
4839 + background: #f6f7f7;
4840 + border-bottom: 1px solid #e5e7eb;
4841 + padding: 0;
4842 +}
4843 +
4844 +.mxchat-metrics-tab {
4845 + flex: 1;
4846 + display: flex;
4847 + align-items: center;
4848 + justify-content: center;
4849 + gap: 8px;
4850 + padding: 16px 24px;
4851 + background: transparent;
4852 + border: none;
4853 + border-bottom: 3px solid transparent;
4854 + cursor: pointer;
4855 + font-size: 14px;
4856 + font-weight: 500;
4857 + color: #646970;
4858 + transition: all 0.2s ease;
4859 + position: relative;
4860 +}
4861 +
4862 +.mxchat-metrics-tab:hover {
4863 + background: rgba(255, 255, 255, 0.5);
4864 + color: #1d2327;
4865 +}
4866 +
4867 +.mxchat-metrics-tab.active {
4868 + background: #ffffff;
4869 + color: #1d2327;
4870 + border-bottom-color: #667eea;
4871 +}
4872 +
4873 +.mxchat-metrics-tab .tab-icon {
4874 + font-size: 18px;
4875 + line-height: 1;
4876 +}
4877 +
4878 +.mxchat-metrics-tab .tab-label {
4879 + font-weight: 600;
4880 +}
4881 +
4882 +.mxchat-metrics-content {
4883 + position: relative;
4884 +}
4885 +
4886 +.mxchat-metrics-panel {
4887 + display: none;
4888 + padding: 24px;
4889 + animation: mxchat-fadeIn 0.3s ease;
4890 +}
4891 +
4892 +.mxchat-metrics-panel.active {
4893 + display: block;
4894 +}
4895 +
4896 +@keyframes mxchat-fadeIn {
4897 + from {
4898 + opacity: 0;
4899 + transform: translateY(10px);
4900 + }
4901 + to {
4902 + opacity: 1;
4903 + transform: translateY(0);
4904 + }
4905 +}
4906 +
4907 +/* Activity Layout */
4908 +.mxchat-activity-layout {
4909 + display: grid;
4910 + gap: 24px;
4911 +}
4912 +
4913 +.mxchat-activity-stats {
4914 + display: grid;
4915 + grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
4916 + gap: 16px;
4917 +}
4918 +
4919 +/* Chart Container */
4920 +.mxchat-chart-container {
4921 + background: #f9fafb;
4922 + border-radius: 12px;
4923 + padding: 24px;
4924 + border: 1px solid #e5e7eb;
4925 +}
4926 +
4927 +.mxchat-chart-title {
4928 + margin: 0 0 20px 0;
4929 + font-size: 16px;
4930 + font-weight: 600;
4931 + color: #1d2327;
4932 + display: flex;
4933 + align-items: center;
4934 + gap: 8px;
4935 +}
4936 +
4937 +#mxchat-activity-chart {
4938 + max-height: 300px;
4939 + width: 100% !important;
4940 + height: auto !important;
4941 +}
4942 +
4943 +/* Insights Grid */
4944 +.mxchat-insights-grid {
4945 + display: grid;
4946 + grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
4947 + gap: 20px;
4948 +}
4949 +
4950 +.mxchat-insight-card {
4951 + background: linear-gradient(135deg, #ffffff 0%, #f9fafb 100%);
4952 + border: 1px solid #e5e7eb;
4953 + border-radius: 12px;
4954 + padding: 20px;
4955 + transition: all 0.2s ease;
4956 +}
4957 +
4958 +.mxchat-insight-card:hover {
4959 + transform: translateY(-2px);
4960 + box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
4961 + border-color: #d1d5db;
4962 +}
4963 +
4964 +.insight-header {
4965 + display: flex;
4966 + align-items: center;
4967 + gap: 12px;
4968 + margin-bottom: 16px;
4969 + padding-bottom: 12px;
4970 + border-bottom: 1px solid #e5e7eb;
4971 +}
4972 +
4973 +.insight-icon {
4974 + font-size: 24px;
4975 + line-height: 1;
4976 +}
4977 +
4978 +.insight-header h3 {
4979 + margin: 0;
4980 + font-size: 14px;
4981 + font-weight: 600;
4982 + color: #374151;
4983 + text-transform: uppercase;
4984 + letter-spacing: 0.5px;
4985 +}
4986 +
4987 +.insight-content {
4988 + text-align: left;
4989 +}
4990 +
4991 +.insight-value {
4992 + font-size: 32px;
4993 + font-weight: 700;
4994 + color: #1d2327;
4995 + margin-bottom: 8px;
4996 + background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
4997 + -webkit-background-clip: text;
4998 + -webkit-text-fill-color: transparent;
4999 + background-clip: text;
5000 + padding-bottom: 4px; /* Prevent gradient text clipping */
5001 +}
5002 +
5003 +.insight-description {
5004 + font-size: 12px;
5005 + color: #374151;
5006 + line-height: 1.5;
5007 +}
5008 +
5009 +.insight-breakdown {
5010 + display: flex;
5011 + flex-direction: column;
5012 + gap: 12px;
5013 +}
5014 +
5015 +.breakdown-item {
5016 + display: flex;
5017 + justify-content: space-between;
5018 + align-items: center;
5019 + padding: 10px 12px;
5020 + background: #f9fafb;
5021 + border-radius: 6px;
5022 + border: 1px solid #e5e7eb;
5023 +}
5024 +
5025 +.breakdown-label {
5026 + font-size: 13px;
5027 + color: #6b7280;
5028 + font-weight: 500;
5029 +}
5030 +
5031 +.breakdown-value {
5032 + font-size: 16px;
5033 + font-weight: 700;
5034 + color: #1d2327;
5035 +}
5036 +
5037 +/* Status Badges */
5038 +.insight-status {
5039 + display: flex;
5040 + align-items: center;
5041 +}
5042 +
5043 +/* Reset gradient text styling for status badges */
5044 +.insight-value.insight-status {
5045 + background: none;
5046 + -webkit-background-clip: unset;
5047 + -webkit-text-fill-color: unset;
5048 + background-clip: unset;
5049 +}
5050 +
5051 +.status-badge {
5052 + display: inline-block;
5053 + padding: 6px 12px;
5054 + border-radius: 20px;
5055 + font-size: 13px;
5056 + font-weight: 600;
5057 + text-transform: uppercase;
5058 + letter-spacing: 0.5px;
5059 +}
5060 +
5061 +.status-active {
5062 + background: linear-gradient(135deg, #10b981 0%, #059669 100%);
5063 + color: #ffffff !important;
5064 + -webkit-text-fill-color: #ffffff !important;
5065 +}
5066 +
5067 +.status-moderate {
5068 + background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
5069 + color: #ffffff !important;
5070 + -webkit-text-fill-color: #ffffff !important;
5071 +}
5072 +
5073 +.status-quiet {
5074 + background: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%);
5075 + color: #ffffff !important;
5076 + -webkit-text-fill-color: #ffffff !important;
5077 +}
5078 +
5079 +/* Responsive Design */
5080 +@media (max-width: 768px) {
5081 + .mxchat-metrics-tabs {
5082 + flex-direction: column;
5083 + }
5084 +
5085 + .mxchat-metrics-tab {
5086 + border-bottom: none;
5087 + border-left: 3px solid transparent;
5088 + }
5089 +
5090 + .mxchat-metrics-tab.active {
5091 + border-bottom: none;
5092 + border-left-color: #667eea;
5093 + }
5094 +
5095 + .mxchat-activity-stats,
5096 + .mxchat-insights-grid {
5097 + grid-template-columns: 1fr;
5098 + }
5099 +
5100 + .mxchat-stats-grid {
5101 + grid-template-columns: 1fr;
5102 + }
5103 +}
5104 +
5105 +/* Failed URLs Section */
5106 +.mxchat-failed-urls-section {
5107 + padding: 24px;
5108 + background: #fafafa;
5109 + border-top: 1px solid #f0f0f1;
5110 +}
5111 +
5112 +.mxchat-failed-urls-section h4 {
5113 + margin: 0 0 16px 0;
5114 + color: #d63638;
5115 + font-size: 16px;
5116 + font-weight: 600;
5117 + display: flex;
5118 + align-items: center;
5119 + gap: 8px;
5120 +}
5121 +
5122 +.mxchat-icon-warning {
5123 + flex-shrink: 0;
5124 +}
5125 +
5126 +.mxchat-failed-urls-table-wrapper {
5127 + max-height: 300px;
5128 + overflow-y: auto;
5129 + background: #ffffff;
5130 + border-radius: 8px;
5131 + border: 1px solid #e0e0e0;
5132 +}
5133 +
5134 +.mxchat-failed-urls-table {
5135 + width: 100%;
5136 + border-collapse: collapse;
5137 +}
5138 +
5139 +.mxchat-failed-urls-table thead {
5140 + position: sticky;
5141 + top: 0;
5142 + background: #f6f7f7;
5143 + z-index: 1;
5144 +}
5145 +
5146 +.mxchat-failed-urls-table th {
5147 + text-align: left;
5148 + padding: 12px 16px;
5149 + font-weight: 600;
5150 + font-size: 13px;
5151 + color: #1d2327;
5152 + text-transform: uppercase;
5153 + letter-spacing: 0.5px;
5154 + border-bottom: 2px solid #e0e0e0;
5155 +}
5156 +
5157 +.mxchat-failed-urls-table tbody tr {
5158 + transition: background-color 0.2s ease;
5159 +}
5160 +
5161 +.mxchat-failed-urls-table tbody tr:hover {
5162 + background-color: #f6f7f7;
5163 +}
5164 +
5165 +.mxchat-failed-urls-table td {
5166 + padding: 12px 16px;
5167 + border-bottom: 1px solid #f0f0f1;
5168 + font-size: 14px;
5169 +}
5170 +
5171 +.mxchat-url-cell {
5172 + word-break: break-all;
5173 +}
5174 +
5175 +.mxchat-url-cell a {
5176 + color: #667eea;
5177 + text-decoration: none;
5178 + transition: color 0.2s ease;
5179 +}
5180 +
5181 +.mxchat-url-cell a:hover {
5182 + color: #764ba2;
5183 + text-decoration: underline;
5184 +}
5185 +
5186 +.mxchat-error-cell {
5187 + color: #d63638;
5188 +}
5189 +
5190 +.mxchat-time-cell {
5191 + color: #646970;
5192 + white-space: nowrap;
5193 +}
5194 +
5195 +/* Action Buttons */
5196 +.mxchat-completion-actions {
5197 + padding: 24px;
5198 + display: flex;
5199 + gap: 12px;
5200 + justify-content: flex-end;
5201 + background: #fafafa;
5202 +}
5203 +
5204 +.mxchat-btn {
5205 + display: inline-flex;
5206 + align-items: center;
5207 + gap: 8px;
5208 + padding: 10px 20px;
5209 + border: none;
5210 + border-radius: 6px;
5211 + font-size: 14px;
5212 + font-weight: 500;
5213 + cursor: pointer;
5214 + transition: all 0.2s ease;
5215 + text-decoration: none;
5216 +}
5217 +
5218 +.mxchat-btn svg {
5219 + width: 16px;
5220 + height: 16px;
5221 +}
5222 +
5223 +.mxchat-btn-primary {
5224 + background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
5225 + color: #ffffff;
5226 +}
5227 +
5228 +.mxchat-btn-primary:hover {
5229 + transform: translateY(-1px);
5230 + box-shadow: 0 4px 12px rgba(102, 126, 234, 0.4);
5231 +}
5232 +
5233 +.mxchat-btn-secondary {
5234 + background: #ffffff;
5235 + color: #667eea;
5236 + border: 1px solid #667eea;
5237 +}
5238 +
5239 +.mxchat-btn-secondary:hover {
5240 + background: #f6f7ff;
5241 + transform: translateY(-1px);
5242 + box-shadow: 0 4px 12px rgba(102, 126, 234, 0.2);
5243 +}
5244 +
5245 +.mxchat-btn:disabled {
5246 + opacity: 0.5;
5247 + cursor: not-allowed;
5248 +}
5249 +
5250 +.mxchat-btn:disabled:hover {
5251 + transform: none;
5252 + box-shadow: none;
5253 +}
5254 +
5255 +/* Responsive adjustments */
5256 +@media (max-width: 768px) {
5257 + .mxchat-summary-stats {
5258 + grid-template-columns: 1fr;
5259 + }
5260 +
5261 + .mxchat-completion-actions {
5262 + flex-direction: column;
5263 + }
5264 +
5265 + .mxchat-btn {
5266 + width: 100%;
5267 + justify-content: center;
5268 + }
5269 +}
5270 +
5271 +/* Scrollbar styling for failed URLs table */
5272 +.mxchat-failed-urls-table-wrapper::-webkit-scrollbar {
5273 + width: 8px;
5274 +}
5275 +
5276 +.mxchat-failed-urls-table-wrapper::-webkit-scrollbar-track {
5277 + background: #f0f0f1;
5278 + border-radius: 4px;
5279 +}
5280 +
5281 +.mxchat-failed-urls-table-wrapper::-webkit-scrollbar-thumb {
5282 + background: #c3c4c7;
5283 + border-radius: 4px;
5284 +}
5285 +
5286 +.mxchat-failed-urls-table-wrapper::-webkit-scrollbar-thumb:hover {
5287 + background: #a7aaad;
5288 +}
5289 +
5290 +
5291 +/* Live Agent Disabled Notice Styles - Enhanced design */
5292 +.mxchat-live-agent-disabled-notice {
5293 + margin-bottom: 20px;
5294 +}
5295 +
5296 +.mxchat-live-agent-disabled-notice .mxchat-pro-notification {
5297 + background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
5298 + border-radius: 12px;
5299 + padding: 24px 24px 24px 24px;
5300 + color: white;
5301 + position: relative;
5302 + box-shadow: 0 8px 32px rgba(102, 126, 234, 0.3);
5303 + border: 1px solid rgba(255, 255, 255, 0.1);
5304 +}
5305 +
5306 +.mxchat-dismiss-btn {
5307 + position: absolute;
5308 + top: 16px;
5309 + right: 16px;
5310 + background: rgba(255, 255, 255, 0.1);
5311 + border: 1px solid rgba(255, 255, 255, 0.2);
5312 + border-radius: 6px;
5313 + color: rgba(255, 255, 255, 0.8);
5314 + cursor: pointer;
5315 + padding: 8px;
5316 + display: flex;
5317 + align-items: center;
5318 + justify-content: center;
5319 + transition: all 0.2s ease;
5320 + backdrop-filter: blur(10px);
5321 +}
5322 +
5323 +.mxchat-dismiss-btn:hover {
5324 + background: rgba(255, 255, 255, 0.2);
5325 + color: white;
5326 + transform: scale(1.05);
5327 +}
5328 +
5329 +.mxchat-dismiss-btn:active {
5330 + transform: scale(0.95);
5331 +}
5332 +
5333 +.mxchat-live-agent-content {
5334 + padding-right: 60px; /* Space for dismiss button */
5335 +}
5336 +
5337 +.mxchat-live-agent-content h3 {
5338 + margin: 0 0 16px 0;
5339 + font-size: 20px;
5340 + font-weight: 600;
5341 + color: white;
5342 + display: flex;
5343 + align-items: center;
5344 + gap: 8px;
5345 +}
5346 +
5347 +.mxchat-live-agent-content p {
5348 + margin: 0;
5349 + font-size: 15px;
5350 + line-height: 1.6;
5351 + opacity: 0.95;
5352 + color: rgba(255, 255, 255, 0.95);
5353 +}
5354 +
5355 +.mxchat-live-agent-content strong {
5356 + color: #fff;
5357 + font-weight: 600;
5358 + background: rgba(255, 255, 255, 0.1);
5359 + padding: 2px 6px;
5360 + border-radius: 4px;
5361 + font-size: 14px;
5362 +}
5363 +
5364 +/* Theme Migration Notice Styles */
5365 +.mxchat-theme-migration-notice {
5366 + margin-bottom: 20px;
5367 +}
5368 +
5369 +.mxchat-theme-migration-notice .mxchat-pro-notification {
5370 + background: linear-gradient(135deg, #f472b6 0%, #a855f7 50%, #6366f1 100%);
5371 + border-radius: 12px;
5372 + padding: 24px 24px 24px 24px;
5373 + color: white;
5374 + position: relative;
5375 + box-shadow: 0 8px 32px rgba(244, 114, 182, 0.3);
5376 + border: 1px solid rgba(255, 255, 255, 0.1);
5377 +}
5378 +
5379 +.mxchat-theme-migration-content {
5380 + padding-right: 60px; /* Space for dismiss button */
5381 +}
5382 +
5383 +.mxchat-theme-migration-content h3 {
5384 + margin: 0 0 16px 0;
5385 + font-size: 20px;
5386 + font-weight: 600;
5387 + color: white;
5388 + display: flex;
5389 + align-items: center;
5390 + gap: 8px;
5391 +}
5392 +
5393 +.mxchat-theme-migration-content p {
5394 + margin: 0;
5395 + font-size: 15px;
5396 + line-height: 1.6;
5397 + opacity: 0.95;
5398 + color: rgba(255, 255, 255, 0.95);
5399 +}
5400 +
5401 +.mxchat-theme-migration-content strong {
5402 + color: #fff;
5403 + font-weight: 600;
5404 + background: rgba(255, 255, 255, 0.15);
5405 + padding: 2px 8px;
5406 + border-radius: 4px;
5407 + font-size: 14px;
5408 +}
5409 +
5410 +.mxchat-processing-controls {
5411 + display: flex;
5412 + gap: 10px;
5413 + align-items: center;
5414 +}
5415 +
5416 +/* Status Card Container */
5417 +.mxchat-status-card {
5418 + background: #fff;
5419 + border: 1px solid #ddd;
5420 + border-radius: 8px;
5421 + padding: 20px;
5422 + margin-bottom: 20px;
5423 + box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
5424 + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
5425 +}
5426 +
5427 +/* Status Header */
5428 +.mxchat-status-header {
5429 + display: flex;
5430 + align-items: center;
5431 + justify-content: space-between;
5432 + margin-bottom: 15px;
5433 + flex-wrap: wrap;
5434 + gap: 10px;
5435 +}
5436 +
5437 +.mxchat-status-header h4 {
5438 + margin: 0;
5439 + font-size: 18px;
5440 + font-weight: 600;
5441 + color: #333;
5442 +}
5443 +
5444 +.mxchat-status-header h5 {
5445 + margin: 0 0 10px 0;
5446 + font-size: 16px;
5447 + font-weight: 600;
5448 + color: #333;
5449 +}
5450 +
5451 +/* Dismiss Button */
5452 +.mxchat-dismiss-button {
5453 + padding: 6px 12px;
5454 + background: #dc3545;
5455 + color: white;
5456 + border: none;
5457 + border-radius: 4px;
5458 + cursor: pointer;
5459 + font-size: 12px;
5460 + font-weight: 500;
5461 + transition: background-color 0.2s ease;
5462 +}
5463 +
5464 +.mxchat-dismiss-button:hover {
5465 + background: #c82333;
5466 +}
5467 +
5468 +.mxchat-dismiss-button:active {
5469 + transform: translateY(1px);
5470 +}
5471 +
5472 +/* Process Batch Button */
5473 +.mxchat-manual-batch-btn {
5474 + padding: 8px 16px;
5475 + background: #007cba;
5476 + color: white;
5477 + border: none;
5478 + border-radius: 4px;
5479 + cursor: pointer;
5480 + font-size: 13px;
5481 + font-weight: 500;
5482 + transition: all 0.2s ease;
5483 + text-decoration: none;
5484 + display: inline-block;
5485 +}
5486 +
5487 +.mxchat-manual-batch-btn:hover {
5488 + background: #005a87;
5489 + color: white;
5490 + text-decoration: none;
5491 +}
5492 +
5493 +.mxchat-manual-batch-btn:active {
5494 + transform: translateY(1px);
5495 +}
5496 +
5497 +.mxchat-manual-batch-btn:focus {
5498 + outline: 2px solid #007cba;
5499 + outline-offset: 2px;
5500 +}
5501 +
5502 +
5503 +
5504 +
5505 +
5506 +/* MxChat Plugin Activation Page Styles */
5507 +
5508 +.mxchat-license-details {
5509 + background: #f9f9f9;
5510 + padding: 15px;
5511 + border-radius: 5px;
5512 + margin-top: 15px;
5513 + border-left: 4px solid #2271b1;
5514 +}
5515 +
5516 +.mxchat-license-details p {
5517 + margin: 8px 0;
5518 +}
5519 +
5520 +.mxchat-license-details small {
5521 + color: #666;
5522 +}
5523 +
5524 +.mxchat-license-details a {
5525 + color: #2271b1;
5526 + text-decoration: none;
5527 +}
5528 +
5529 +.mxchat-license-details a:hover {
5530 + text-decoration: underline;
5531 +}
5532 +
5533 +/* Domain linking styles */
5534 +#link-domain-button {
5535 + background: #2271b1;
5536 + color: white;
5537 + border: none;
5538 + padding: 8px 16px;
5539 + border-radius: 4px;
5540 + cursor: pointer;
5541 + font-size: 13px;
5542 +}
5543 +
5544 +#link-domain-button:hover {
5545 + background: #1a5a8a;
5546 +}
5547 +
5548 +#link-domain-button:disabled {
5549 + background: #ccc;
5550 + cursor: not-allowed;
5551 +}
5552 +
5553 +#domain-link-status {
5554 + font-size: 13px;
5555 + font-weight: 500;
5556 +}
5557 +
5558 +/* Status badges */
5559 +.mxchat-status-badge.active {
5560 + color: #2d8f47;
5561 + background: #d4edda;
5562 + padding: 4px 8px;
5563 + border-radius: 4px;
5564 + font-size: 12px;
5565 + font-weight: 600;
5566 +}
5567 +
5568 +.mxchat-status-badge.inactive {
5569 + color: #842029;
5570 + background: #f8d7da;
5571 + padding: 4px 8px;
5572 + border-radius: 4px;
5573 + font-size: 12px;
5574 + font-weight: 600;
5575 +}
5576 +
5577 +/* Notice styles for domain linking */
5578 +.notice.notice-info {
5579 + background: #e7f3ff;
5580 + border-left-color: #2271b1;
5581 + z-index: 100000000000000000;
5582 + position: relative;
5583 +}
5584 +
5585 +.notice.notice-success {
5586 + background: #d1eddb;
5587 + border-left-color: #2d8f47;
5588 +}
5589 +
5590 +/* Animation for status changes */
5591 +.license-status-updating {
5592 + opacity: 0.6;
5593 + transition: opacity 0.3s ease;
5594 +}
5595 +
5596 +/* Spinner for domain linking */
5597 +.domain-link-spinner {
5598 + display: inline-block;
5599 + width: 16px;
5600 + height: 16px;
5601 + border: 2px solid #f3f3f3;
5602 + border-top: 2px solid #2271b1;
5603 + border-radius: 50%;
5604 + animation: spin 1s linear infinite;
5605 + margin-left: 8px;
5606 +}
5607 +
5608 +@keyframes spin {
5609 + 0% { transform: rotate(0deg); }
5610 + 100% { transform: rotate(360deg); }
5611 +}
5612 +
5613 +
5614 +
5615 +.mxchat-pro-notification .old-price {
5616 + text-decoration: line-through;
5617 + color: #888;
5618 +}
5619 +.mxchat-pro-notification .new-price {
5620 + font-weight: bold;
5621 + color: #d9534f; /* red for urgency */
5622 +}
5623 +
5624 +
5625 +
5626 + #mxchat-test-streaming-btn:disabled {
5627 + opacity: 0.6;
5628 + cursor: not-allowed;
5629 + }
5630 + #mxchat-test-streaming-result {
5631 + padding: 8px 12px;
5632 + border-radius: 4px;
5633 + display: none;
5634 + }
5635 + #mxchat-test-streaming-result:not(:empty) {
5636 + display: block;
5637 + background: #f0f0f1;
5638 + border-left: 4px solid #72aee6;
5639 + }
5640 +
5641 +
5642 + /* Hide email-dependent fields by default */
5643 +tr:has(#email_blocker_header_content),
5644 +tr:has(#email_blocker_button_text),
5645 +tr:has(#enable_name_field),
5646 +tr:has(#name_field_placeholder) {
5647 + display: none;
5648 +}
5649 +
5650 +/* Show them when email block is enabled */
5651 +body.email-block-enabled tr:has(#email_blocker_header_content),
5652 +body.email-block-enabled tr:has(#email_blocker_button_text),
5653 +body.email-block-enabled tr:has(#enable_name_field),
5654 +body.email-block-enabled tr:has(#name_field_placeholder) {
5655 + display: table-row;
5656 +}
5657 +
5658 +/* Style for email-dependent fields */
5659 +.email-dependent-field {
5660 + background-color: #f8f9fa;
5661 + border-left: 4px solid #0073aa;
5662 + padding-left: 15px;
5663 + margin-left: 10px;
5664 +}
5665 +
5666 +.email-dependent-field td,
5667 +.email-dependent-field th {
5668 + background-color: #f8f9fa;
5669 +}
5670 +
5671 +
5672 +/* NEW: Role restriction styles */
5673 +.mxchat-role-restriction-container {
5674 + margin-bottom: 8px;
5675 +}
5676 +
5677 +.mxchat-role-select {
5678 + width: 100%;
5679 + max-width: 180px;
5680 + padding: 4px 8px;
5681 + border: 1px solid #ddd;
5682 + border-radius: 4px;
5683 + font-size: 12px;
5684 + background: white;
5685 +}
5686 +
5687 +.mxchat-role-select.updating {
5688 + opacity: 0.6;
5689 + pointer-events: none;
5690 +}
5691 +
5692 +.mxchat-role-select.updated {
5693 + border-color: #46b450;
5694 + box-shadow: 0 0 0 1px #46b450;
5695 +}
5696 +
5697 +.mxchat-action-buttons {
5698 + display: flex;
5699 + gap: 4px;
5700 + justify-content: center;
5701 +}
5702 +
5703 +.mxchat-actions-cell {
5704 + min-width: 200px;
5705 + text-align: center;
5706 +}
5707 +
5708 +
5709 +
5710 +.mxchat-bot-selector {
5711 + display: flex;
5712 + flex-direction: column;
5713 + gap: 8px;
5714 + max-height: 200px;
5715 + overflow-y: auto;
5716 + border: 1px solid #ddd;
5717 + padding: 12px;
5718 + border-radius: 4px;
5719 + background: #f9f9f9;
5720 +}
5721 +
5722 +.mxchat-bot-option {
5723 + display: flex;
5724 + align-items: center;
5725 +}
5726 +
5727 +.mxchat-checkbox-label {
5728 + display: flex;
5729 + align-items: center;
5730 + cursor: pointer;
5731 + font-size: 14px;
5732 + gap: 8px;
5733 +}
5734 +
5735 +.mxchat-checkbox-label input[type="checkbox"] {
5736 + margin: 0;
5737 +}
5738 +
5739 +.mxchat-checkmark {
5740 + display: inline-block;
5741 +}
5742 +
5743 +
5744 +.mxchat-card-bots {
5745 + margin-top: 12px;
5746 + padding-top: 12px;
5747 + border-top: 1px solid #e5e7eb;
5748 +}
5749 +
5750 +.mxchat-card-bots strong {
5751 + display: block;
5752 + margin-bottom: 6px;
5753 + color: #374151;
5754 + font-size: 13px;
5755 + font-weight: 600;
5756 +}
5757 +
5758 +.mxchat-bot-badges {
5759 + display: flex;
5760 + flex-wrap: wrap;
5761 + gap: 6px;
5762 +}
5763 +
5764 +.mxchat-bot-badge {
5765 + display: inline-flex;
5766 + align-items: center;
5767 + padding: 3px 8px;
5768 + background-color: #f3f4f6;
5769 + border: 1px solid #d1d5db;
5770 + border-radius: 12px;
5771 + font-size: 11px;
5772 + font-weight: 500;
5773 + color: #6b7280;
5774 + line-height: 1.2;
5775 + white-space: nowrap;
5776 +}
5777 +
5778 +.mxchat-bot-badge:first-child {
5779 + background-color: #dbeafe;
5780 + border-color: #93c5fd;
5781 + color: #1e40af;
5782 +}
5783 +
5784 +
5785 +/* Always show OpenRouter API key field */
5786 +tr.mxchat-setting-row[data-provider="openrouter"],
5787 +.mxchat-openrouter-wrapper {
5788 + display: table-row !important;
5789 +}
5790 +
5791 +/* ========== RAG Context Modal Styles ========== */
5792 +
5793 +/* Message header with role and sources link */
5794 +.mxchat-message .mxchat-message-header {
5795 + display: flex;
5796 + justify-content: space-between;
5797 + align-items: center;
5798 + margin-bottom: 6px;
5799 +}
5800 +
5801 +.mxchat-message .mxchat-role-label {
5802 + font-weight: 600;
5803 + font-size: 12px;
5804 + text-transform: uppercase;
5805 + letter-spacing: 0.02em;
5806 +}
5807 +
5808 +/* Sources link - clean, professional style */
5809 +.mxchat-rag-link {
5810 + font-size: 11px;
5811 + color: #64748b;
5812 + cursor: pointer;
5813 + transition: color 0.15s ease;
5814 + font-weight: 500;
5815 + letter-spacing: 0.01em;
5816 +}
5817 +
5818 +.mxchat-rag-link:hover {
5819 + color: #3b82f6;
5820 +}
5821 +
5822 +/* Transcript message content styling */
5823 +.mxchat-message-content a {
5824 + color: #3b82f6;
5825 + text-decoration: none;
5826 +}
5827 +
5828 +.mxchat-message-content a:hover {
5829 + text-decoration: underline;
5830 +}
5831 +
5832 +.mxchat-message-content code {
5833 + background: rgba(0, 0, 0, 0.06);
5834 + padding: 2px 5px;
5835 + border-radius: 3px;
5836 + font-family: ui-monospace, monospace;
5837 + font-size: 0.9em;
5838 +}
5839 +
5840 +.mxchat-message-content pre {
5841 + background: #1e293b;
5842 + color: #e2e8f0;
5843 + padding: 12px 16px;
5844 + border-radius: 6px;
5845 + overflow-x: auto;
5846 + margin: 8px 0;
5847 +}
5848 +
5849 +.mxchat-message-content pre code {
5850 + background: none;
5851 + padding: 0;
5852 + color: inherit;
5853 +}
5854 +
5855 +.mxchat-message-content strong {
5856 + font-weight: 600;
5857 +}
5858 +
5859 +.mxchat-message-content h1,
5860 +.mxchat-message-content h2,
5861 +.mxchat-message-content h3,
5862 +.mxchat-message-content h4,
5863 +.mxchat-message-content h5,
5864 +.mxchat-message-content h6 {
5865 + margin: 12px 0 8px 0;
5866 + font-weight: 600;
5867 + line-height: 1.3;
5868 +}
5869 +
5870 +.mxchat-message-content h1 { font-size: 1.4em; }
5871 +.mxchat-message-content h2 { font-size: 1.3em; }
5872 +.mxchat-message-content h3 { font-size: 1.2em; }
5873 +.mxchat-message-content h4 { font-size: 1.1em; }
5874 +.mxchat-message-content h5 { font-size: 1em; }
5875 +.mxchat-message-content h6 { font-size: 0.95em; }
5876 +
5877 +/* RAG Modal Overlay */
5878 +.mxchat-rag-modal-overlay {
5879 + position: fixed;
5880 + top: 0;
5881 + left: 0;
5882 + width: 100%;
5883 + height: 100%;
5884 + background-color: rgba(15, 23, 42, 0.4);
5885 + backdrop-filter: blur(4px);
5886 + -webkit-backdrop-filter: blur(4px);
5887 + z-index: 100000;
5888 + display: flex;
5889 + align-items: center;
5890 + justify-content: center;
5891 + padding: 24px;
5892 +}
5893 +
5894 +/* RAG Modal Content */
5895 +.mxchat-rag-modal-content {
5896 + background: #fff;
5897 + border-radius: 16px;
5898 + width: 100%;
5899 + max-width: 640px;
5900 + max-height: calc(100vh - 48px);
5901 + display: flex;
5902 + flex-direction: column;
5903 + box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
5904 + animation: mxchat-modal-appear 0.2s ease-out;
5905 + overflow: hidden;
5906 +}
5907 +
5908 +@keyframes mxchat-modal-appear {
5909 + from {
5910 + opacity: 0;
5911 + transform: scale(0.96) translateY(8px);
5912 + }
5913 + to {
5914 + opacity: 1;
5915 + transform: scale(1) translateY(0);
5916 + }
5917 +}
5918 +
5919 +/* RAG Modal Header */
5920 +.mxchat-rag-modal-header {
5921 + display: flex;
5922 + justify-content: space-between;
5923 + align-items: center;
5924 + padding: 20px 24px;
5925 + border-bottom: 1px solid #e2e8f0;
5926 + background: #fff;
5927 + flex-shrink: 0;
5928 +}
5929 +
5930 +.mxchat-rag-modal-header h2 {
5931 + margin: 0;
5932 + font-size: 1.125rem;
5933 + font-weight: 600;
5934 + color: #0f172a;
5935 + letter-spacing: -0.01em;
5936 +}
5937 +
5938 +.mxchat-rag-modal-close {
5939 + display: flex;
5940 + align-items: center;
5941 + justify-content: center;
5942 + width: 32px;
5943 + height: 32px;
5944 + background: transparent;
5945 + border: none;
5946 + color: #64748b;
5947 + font-size: 20px;
5948 + cursor: pointer;
5949 + border-radius: 8px;
5950 + transition: all 0.15s ease;
5951 + line-height: 1;
5952 +}
5953 +
5954 +.mxchat-rag-modal-close:hover {
5955 + background: #f1f5f9;
5956 + color: #0f172a;
5957 +}
5958 +
5959 +/* RAG Modal Body */
5960 +.mxchat-rag-modal-body {
5961 + padding: 24px;
5962 + overflow-y: auto;
5963 + flex: 1;
5964 +}
5965 +
5966 +/* Loading State */
5967 +.mxchat-rag-loading {
5968 + display: flex;
5969 + align-items: center;
5970 + justify-content: center;
5971 + gap: 12px;
5972 + padding: 48px 24px;
5973 + color: #64748b;
5974 + font-size: 0.875rem;
5975 +}
5976 +
5977 +.mxchat-rag-loading .spinner {
5978 + float: none;
5979 + margin: 0;
5980 +}
5981 +
5982 +/* Error State */
5983 +.mxchat-rag-error {
5984 + text-align: center;
5985 + padding: 48px 24px;
5986 + color: #dc2626;
5987 + font-size: 0.875rem;
5988 +}
5989 +
5990 +/* Summary Section */
5991 +.mxchat-rag-summary {
5992 + display: flex;
5993 + gap: 32px;
5994 + padding: 0;
5995 + margin-bottom: 28px;
5996 + background: transparent;
5997 + border: none;
5998 +}
5999 +
6000 +.mxchat-rag-summary-item {
6001 + display: flex;
6002 + flex-direction: column;
6003 + gap: 4px;
6004 +}
6005 +
6006 +.mxchat-rag-label {
6007 + color: #94a3b8;
6008 + font-size: 0.6875rem;
6009 + font-weight: 500;
6010 + text-transform: uppercase;
6011 + letter-spacing: 0.05em;
6012 +}
6013 +
6014 +.mxchat-rag-value {
6015 + font-weight: 600;
6016 + font-size: 0.9375rem;
6017 + color: #0f172a;
6018 +}
6019 +
6020 +/* Matches Section */
6021 +.mxchat-rag-matches h3 {
6022 + margin: 0 0 12px 0;
6023 + font-size: 0.6875rem;
6024 + color: #94a3b8;
6025 + font-weight: 600;
6026 + text-transform: uppercase;
6027 + letter-spacing: 0.05em;
6028 +}
6029 +
6030 +/* Match Card */
6031 +.mxchat-rag-match-card {
6032 + border: 1px solid #e2e8f0;
6033 + border-radius: 12px;
6034 + padding: 16px;
6035 + margin-bottom: 8px;
6036 + transition: border-color 0.15s ease, box-shadow 0.15s ease;
6037 + background: #fff;
6038 +}
6039 +
6040 +.mxchat-rag-match-card:hover {
6041 + border-color: #cbd5e1;
6042 + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
6043 +}
6044 +
6045 +.mxchat-rag-match-card:last-child {
6046 + margin-bottom: 0;
6047 +}
6048 +
6049 +/* Match card variants */
6050 +.mxchat-rag-match-used {
6051 + border-color: #86efac;
6052 + background: #fafff9;
6053 +}
6054 +
6055 +.mxchat-rag-match-used:hover {
6056 + border-color: #4ade80;
6057 +}
6058 +
6059 +.mxchat-rag-match-above {
6060 + border-color: #fde047;
6061 + background: #fffef5;
6062 +}
6063 +
6064 +.mxchat-rag-match-above:hover {
6065 + border-color: #facc15;
6066 +}
6067 +
6068 +.mxchat-rag-match-below {
6069 + opacity: 0.5;
6070 +}
6071 +
6072 +/* Match Header */
6073 +.mxchat-rag-match-header {
6074 + display: flex;
6075 + align-items: center;
6076 + gap: 12px;
6077 + margin-bottom: 10px;
6078 +}
6079 +
6080 +.mxchat-rag-match-rank {
6081 + background: #0f172a;
6082 + color: #fff;
6083 + font-size: 0.625rem;
6084 + font-weight: 600;
6085 + padding: 3px 6px;
6086 + border-radius: 4px;
6087 + letter-spacing: 0.02em;
6088 +}
6089 +
6090 +.mxchat-rag-match-score {
6091 + font-size: 1rem;
6092 + font-weight: 700;
6093 + color: #0f172a;
6094 + font-variant-numeric: tabular-nums;
6095 +}
6096 +
6097 +.mxchat-rag-match-status {
6098 + font-size: 0.625rem;
6099 + padding: 4px 8px;
6100 + border-radius: 6px;
6101 + font-weight: 600;
6102 + text-transform: uppercase;
6103 + letter-spacing: 0.03em;
6104 + margin-left: auto;
6105 +}
6106 +
6107 +.mxchat-rag-match-status.status-used {
6108 + background: #dcfce7;
6109 + color: #166534;
6110 +}
6111 +
6112 +.mxchat-rag-match-status.status-above {
6113 + background: #fef9c3;
6114 + color: #854d0e;
6115 +}
6116 +
6117 +.mxchat-rag-match-status.status-below {
6118 + background: #f1f5f9;
6119 + color: #64748b;
6120 +}
6121 +
6122 +/* Match Source */
6123 +.mxchat-rag-match-source {
6124 + margin-bottom: 8px;
6125 + font-size: 0.8125rem;
6126 + color: #475569;
6127 + word-break: break-word;
6128 +}
6129 +
6130 +.mxchat-rag-match-source a {
6131 + color: #2563eb;
6132 + text-decoration: none;
6133 +}
6134 +
6135 +.mxchat-rag-match-source a:hover {
6136 + text-decoration: underline;
6137 +}
6138 +
6139 +/* Match Preview */
6140 +.mxchat-rag-match-preview {
6141 + font-size: 0.8125rem;
6142 + color: #64748b;
6143 + background: #f8fafc;
6144 + padding: 12px 14px;
6145 + border-radius: 8px;
6146 + line-height: 1.6;
6147 + max-height: 72px;
6148 + overflow: hidden;
6149 +}
6150 +
6151 +/* Match Meta */
6152 +.mxchat-rag-match-meta {
6153 + margin-top: 10px;
6154 +}
6155 +
6156 +.mxchat-rag-role-badge {
6157 + display: inline-block;
6158 + font-size: 0.625rem;
6159 + padding: 3px 8px;
6160 + background: #f1f5f9;
6161 + color: #475569;
6162 + border-radius: 4px;
6163 + font-weight: 500;
6164 +}
6165 +
6166 +/* Matches Summary */
6167 +.mxchat-rag-matches-summary {
6168 + margin: 0 0 16px 0;
6169 + font-size: 0.875rem;
6170 + color: #334155;
6171 + font-weight: 500;
6172 +}
6173 +
6174 +/* Chunk Badge */
6175 +.mxchat-rag-chunk-badge {
6176 + display: inline-block;
6177 + padding: 3px 8px;
6178 + font-size: 0.6875rem;
6179 + font-weight: 600;
6180 + background: linear-gradient(135deg, #8b5cf6 0%, #7c3aed 100%);
6181 + color: #fff;
6182 + border-radius: 10px;
6183 + text-transform: uppercase;
6184 + letter-spacing: 0.02em;
6185 +}
6186 +
6187 +/* Chunk Toggle */
6188 +.mxchat-rag-chunk-toggle {
6189 + display: block;
6190 + padding: 10px 0;
6191 + font-size: 0.75rem;
6192 + font-weight: 600;
6193 + color: #6366f1;
6194 + cursor: pointer;
6195 + border-top: 1px solid #e2e8f0;
6196 + margin-top: 12px;
6197 + transition: color 0.15s ease;
6198 +}
6199 +
6200 +.mxchat-rag-chunk-toggle:hover {
6201 + color: #4f46e5;
6202 +}
6203 +
6204 +/* Chunk Details */
6205 +.mxchat-rag-chunk-details {
6206 + display: none;
6207 + padding: 8px 0 0 0;
6208 +}
6209 +
6210 +/* Chunk Row */
6211 +.mxchat-rag-chunk-row {
6212 + display: flex;
6213 + align-items: center;
6214 + padding: 8px 10px;
6215 + margin: 4px 0;
6216 + border-radius: 6px;
6217 + font-size: 0.8125rem;
6218 + gap: 10px;
6219 +}
6220 +
6221 +.mxchat-rag-chunk-row.chunk-used {
6222 + background: rgba(16, 185, 129, 0.1);
6223 +}
6224 +
6225 +.mxchat-rag-chunk-row.chunk-not-used {
6226 + background: rgba(100, 116, 139, 0.08);
6227 +}
6228 +
6229 +.mxchat-rag-chunk-icon {
6230 + font-size: 0.875rem;
6231 + width: 18px;
6232 + text-align: center;
6233 +}
6234 +
6235 +.chunk-used .mxchat-rag-chunk-icon {
6236 + color: #10b981;
6237 +}
6238 +
6239 +.chunk-not-used .mxchat-rag-chunk-icon {
6240 + color: #94a3b8;
6241 +}
6242 +
6243 +.mxchat-rag-chunk-num {
6244 + font-weight: 600;
6245 + color: #334155;
6246 + flex: 1;
6247 +}
6248 +
6249 +.mxchat-rag-chunk-score {
6250 + font-weight: 600;
6251 + color: #64748b;
6252 + font-variant-numeric: tabular-nums;
6253 +}
6254 +
6255 +/* No Matches */
6256 +.mxchat-rag-no-matches {
6257 + text-align: center;
6258 + padding: 48px 24px;
6259 + color: #64748b;
6260 + font-size: 0.875rem;
6261 +}
6262 +
6263 +/* Approved URLs Section */
6264 +.mxchat-rag-urls {
6265 + margin-top: 28px;
6266 + padding-top: 20px;
6267 + border-top: 1px solid #e2e8f0;
6268 +}
6269 +
6270 +.mxchat-rag-urls h3 {
6271 + margin: 0 0 12px 0;
6272 + font-size: 0.6875rem;
6273 + color: #94a3b8;
6274 + font-weight: 600;
6275 + text-transform: uppercase;
6276 + letter-spacing: 0.05em;
6277 +}
6278 +
6279 +.mxchat-rag-url-list {
6280 + margin: 0;
6281 + padding: 0;
6282 + list-style: none;
6283 +}
6284 +
6285 +.mxchat-rag-url-list li {
6286 + padding: 10px 14px;
6287 + background: #f8fafc;
6288 + border-radius: 8px;
6289 + margin-bottom: 6px;
6290 + font-size: 0.8125rem;
6291 + word-break: break-all;
6292 +}
6293 +
6294 +.mxchat-rag-url-list li:last-child {
6295 + margin-bottom: 0;
6296 +}
6297 +
6298 +.mxchat-rag-url-list a {
6299 + color: #2563eb;
6300 + text-decoration: none;
6301 +}
6302 +
6303 +.mxchat-rag-url-list a:hover {
6304 + text-decoration: underline;
6305 +}
6306 +
6307 +/* Responsive adjustments */
6308 +@media (max-width: 640px) {
6309 + .mxchat-rag-modal-overlay {
6310 + padding: 16px;
6311 + }
6312 +
6313 + .mxchat-rag-modal-content {
6314 + max-height: calc(100vh - 32px);
6315 + border-radius: 12px;
6316 + }
6317 +
6318 + .mxchat-rag-modal-header {
6319 + padding: 16px 20px;
6320 + }
6321 +
6322 + .mxchat-rag-modal-body {
6323 + padding: 20px;
6324 + }
6325 +
6326 + .mxchat-rag-summary {
6327 + flex-wrap: wrap;
6328 + gap: 16px;
6329 + }
6330 +
6331 + .mxchat-rag-match-header {
6332 + flex-wrap: wrap;
6333 + }
6334 +
6335 + .mxchat-rag-match-status {
6336 + margin-left: 0;
6337 + margin-top: 8px;
6338 + }
6339 +}
6340 +
6341 +/* ========================================
6342 + POST TYPE VISIBILITY SETTINGS
6343 + ======================================== */
6344 +.mxchat-sub-options {
6345 + margin-top: 20px;
6346 + padding: 20px;
6347 + background: #f8f9fa;
6348 + border: 1px solid #e2e4e7;
6349 + border-radius: 8px;
6350 + transition: all 0.3s ease;
6351 +}
6352 +
6353 +.mxchat-post-type-visibility-header {
6354 + margin-bottom: 16px;
6355 +}
6356 +
6357 +.mxchat-post-type-visibility-header h4 {
6358 + margin: 0 0 6px 0;
6359 + font-size: 14px;
6360 + font-weight: 600;
6361 + color: #1e1e1e;
6362 +}
6363 +
6364 +.mxchat-post-type-visibility-header .description {
6365 + margin: 0;
6366 + color: #757575;
6367 +}
6368 +
6369 +.mxchat-visibility-mode {
6370 + display: flex;
6371 + flex-direction: column;
6372 + gap: 10px;
6373 + margin-bottom: 16px;
6374 +}
6375 +
6376 +.mxchat-radio-label {
6377 + display: flex;
6378 + align-items: center;
6379 + gap: 10px;
6380 + cursor: pointer;
6381 + padding: 10px 14px;
6382 + background: #fff;
6383 + border: 1px solid #dcdcde;
6384 + border-radius: 6px;
6385 + transition: all 0.2s ease;
6386 + font-size: 14px;
6387 +}
6388 +
6389 +.mxchat-radio-label:hover {
6390 + border-color: #2271b1;
6391 + background: #f6f7f7;
6392 +}
6393 +
6394 +.mxchat-radio-label input[type="radio"] {
6395 + margin: 0;
6396 + width: 16px;
6397 + height: 16px;
6398 + accent-color: #2271b1;
6399 +}
6400 +
6401 +.mxchat-radio-label input[type="radio"]:checked + span {
6402 + font-weight: 500;
6403 + color: #1e1e1e;
6404 +}
6405 +
6406 +.mxchat-radio-label span {
6407 + color: #50575e;
6408 +}
6409 +
6410 +.mxchat-post-type-list {
6411 + display: grid;
6412 + grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
6413 + gap: 10px;
6414 + padding: 16px;
6415 + background: #fff;
6416 + border: 1px solid #dcdcde;
6417 + border-radius: 6px;
6418 + max-height: 200px;
6419 + overflow-y: auto;
6420 +}
6421 +
6422 +.mxchat-post-type-list .mxchat-checkbox-label {
6423 + display: flex;
6424 + align-items: center;
6425 + gap: 10px;
6426 + padding: 8px 12px;
6427 + background: #f8f9fa;
6428 + border: 1px solid #e2e4e7;
6429 + border-radius: 4px;
6430 + cursor: pointer;
6431 + transition: all 0.2s ease;
6432 + font-size: 13px;
6433 +}
6434 +
6435 +.mxchat-post-type-list .mxchat-checkbox-label:hover {
6436 + border-color: #2271b1;
6437 + background: #f0f6fc;
6438 +}
6439 +
6440 +.mxchat-post-type-list .mxchat-checkbox-label input[type="checkbox"] {
6441 + margin: 0;
6442 + width: 16px;
6443 + height: 16px;
6444 + accent-color: #2271b1;
6445 +}
6446 +
6447 +.mxchat-post-type-list .mxchat-checkbox-label input[type="checkbox"]:checked + span {
6448 + font-weight: 500;
6449 + color: #1e1e1e;
6450 +}
6451 +
6452 +.mxchat-post-type-list .mxchat-checkbox-label span {
6453 + color: #50575e;
6454 +}
6455 +
6456 +/* Custom scrollbar for post type list */
6457 +.mxchat-post-type-list::-webkit-scrollbar {
6458 + width: 6px;
6459 +}
6460 +
6461 +.mxchat-post-type-list::-webkit-scrollbar-track {
6462 + background: #f1f1f1;
6463 + border-radius: 3px;
6464 +}
6465 +
6466 +.mxchat-post-type-list::-webkit-scrollbar-thumb {
6467 + background: #c1c1c1;
6468 + border-radius: 3px;
6469 +}
6470 +
6471 +.mxchat-post-type-list::-webkit-scrollbar-thumb:hover {
6472 + background: #a1a1a1;
6473 +}
6474 +
6475 +/* Responsive adjustments */
6476 +@media (max-width: 782px) {
6477 + .mxchat-sub-options {
6478 + padding: 16px;
6479 + }
6480 +
6481 + .mxchat-post-type-list {
6482 + grid-template-columns: 1fr;
6483 + }
6484 +}