/* Chat Widget - Abadir School */
.chat-widget-container { position: fixed; bottom: 24px; left: 24px; z-index: 997; font-family: 'Inter', sans-serif; }
.chat-widget-toggle { display: flex; align-items: center; gap: 8px; background: var(--primary, #3d1f6e); color: white; padding: 12px 16px; border-radius: 50px; text-decoration: none; font-weight: 600; font-size: 14px; box-shadow: 0 4px 16px rgba(61,31,110,0.3); border: none; cursor: pointer; transition: opacity 0.3s, transform 0.2s, box-shadow 0.2s; }
.chat-widget-toggle:hover, .chat-widget-toggle:active { transform: translateY(-2px); box-shadow: 0 6px 20px rgba(61,31,110,0.4); }
.chat-widget-toggle svg { flex-shrink: 0; width: 24px; height: 24px; }
.chat-widget-window { position: absolute; bottom: 64px; left: 0; width: 340px; max-width: calc(100vw - 48px); background: white; border-radius: 16px; box-shadow: 0 12px 48px rgba(26,21,32,0.15); border: 1px solid var(--border, #e8e4de); overflow: hidden; display: none; flex-direction: column; }
.chat-widget-window.open { display: flex; }
.chat-widget-header { background: var(--primary, #3d1f6e); color: white; padding: 16px; display: flex; align-items: center; justify-content: space-between; }
.chat-widget-header h4 { margin: 0; font-size: 15px; font-weight: 600; color: white; }
.chat-widget-header p { margin: 4px 0 0; font-size: 12px; opacity: 0.8; }
.chat-widget-close { background: rgba(255,255,255,0.15); border: none; color: white; width: 28px; height: 28px; border-radius: 50%; cursor: pointer; display: flex; align-items: center; justify-content: center; }
.chat-widget-body { padding: 16px; max-height: 420px; overflow-y: auto; }
.chat-widget-body p { font-size: 13px; color: var(--text-light, #7a7480); margin-bottom: 12px; }
.chat-widget-field { margin-bottom: 12px; }
.chat-widget-field label { display: block; font-size: 12px; font-weight: 500; color: var(--text-dark, #1a1520); margin-bottom: 4px; }
.chat-widget-field input, .chat-widget-field textarea, .chat-widget-field select { width: 100%; padding: 10px 12px; border: 1px solid var(--border, #e8e4de); border-radius: 8px; font-size: 14px; color: var(--text-dark, #1a1520); font-family: inherit; background: white; }
.chat-widget-field input:focus, .chat-widget-field textarea:focus, .chat-widget-field select:focus { outline: none; border-color: var(--primary, #3d1f6e); }
.chat-widget-field textarea { resize: vertical; min-height: 70px; }
.chat-widget-field.hidden { display: none; }
.chat-widget-submit { width: 100%; padding: 12px; background: var(--primary, #3d1f6e); color: white; border: none; border-radius: 8px; font-weight: 600; font-size: 14px; cursor: pointer; display: flex; align-items: center; justify-content: center; gap: 8px; }
.chat-widget-submit:disabled { opacity: 0.6; cursor: not-allowed; }
.chat-widget-submit:hover:not(:disabled) { background: var(--primary-light, #5a3a8a); }
.chat-widget-status { font-size: 13px; padding: 10px; border-radius: 8px; margin-top: 12px; text-align: center; display: none; }
.chat-widget-status.success { display: block; background: #dcfce7; color: #166534; }
.chat-widget-status.error { display: block; background: #fee2e2; color: #991b1b; }
.chat-widget-branding { font-size: 11px; color: var(--text-light, #7a7480); text-align: center; margin-top: 10px; }
.chat-widget-hint { font-size: 12px; color: var(--text-light, #7a7480); margin-top: 4px; line-height: 1.4; }
@media (max-width: 767px) {
  .chat-widget-container { bottom: 88px; left: 16px; }
  .chat-widget-toggle { padding: 10px; border-radius: 50%; width: 44px; height: 44px; justify-content: center; }
  .chat-widget-toggle-label { display: none; }
  .chat-widget-window { bottom: 56px; left: 0; width: calc(100vw - 32px); max-width: 360px; }
}
@media (prefers-reduced-motion: reduce) {
  .chat-widget-toggle, .chat-widget-window { transition: none; }
}
