Response:
```json
{
  "widget": {
    "configuration": {
      "id": "waterproofer-widget-v1",
      "version": "1.0.0",
      "industry": "waterproofing",
      "targetMarket": "australian-tradies"
    },
    "colors": {
      "primary": {
        "hex": "#1E4D6B",
        "name": "Ocean Depth",
        "usage": "Header background, primary text, borders"
      },
      "secondary": {
        "hex": "#F4F7F9",
        "name": "Foam White",
        "usage": "Widget background, cards"
      },
      "accent": {
        "hex": "#F59E0B",
        "name": "Warning Orange",
        "usage": "CTA buttons, highlights, badges"
      },
      "accentHover": {
        "hex": "#D97706",
        "name": "Burnt Orange",
        "usage": "Button hover states"
      },
      "textPrimary": {
        "hex": "#1F2937",
        "name": "Charcoal",
        "usage": "Main body text"
      },
      "textSecondary": {
        "hex": "#6B7280",
        "name": "Slate Grey",
        "usage": "Captions, timestamps, hints"
      },
      "success": {
        "hex": "#10B981",
        "name": "Leak Seal Green",
        "usage": "Confirmation messages, online status"
      },
      "error": {
        "hex": "#EF4444",
        "name": "Alert Red",
        "usage": "Error states, busy indicators"
      },
      "divider": {
        "hex": "#E5E7EB",
        "name": "Border Grey",
        "usage": "Separators, input borders"
      }
    },
    "position": {
      "desktop": {
        "placement": "bottom-right",
        "offsetX": "24px",
        "offsetY": "24px"
      },
      "mobile": {
        "placement": "bottom-center",
        "offsetX": "0px",
        "offsetY": "16px",
        "fullWidth": true,
        "marginHorizontal": "16px"
      },
      "rationale": "Bottom-right mirrors chat conventions; mobile bottom-center prevents thumb-stretch. Tradies often have phones in pockets - easy to tap without looking."
    },
    "dimensions": {
      "desktop": {
        "width": "380px",
        "height": "auto",
        "maxHeight": "600px",
        "borderRadius": "16px"
      },
      "mobile": {
        "width": "calc(100% - 32px)",
        "height": "auto",
        "maxHeight": "70vh",
        "borderRadius": "12px"
      },
      "floatingButton": {
        "width": "64px",
        "height": "64px",
        "borderRadius": "50%"
      }
    },
    "avatar": {
      "type": "icon",
      "iconSet": "custom",
      "design": {
        "description": "A friendly, minimalist icon combining a water droplet with a roof/building silhouette. The droplet forms the top of a simple house shape, representing waterproofing protection.",
        "visualElements": [
          "Droplet shape with building/roof integrated",
          "Solid fill with white iconography",
          "Rounded, approachable geometry"
        ],
        "color": "#FFFFFF",
        "backgroundGradient": "linear-gradient(135deg, #1E4D6B 0%, #2D6A8F 100%)"
      },
      "fallback": {
        "type": "initials",
        "font": "bold",
        "background": "#1E4D6B",
        "textColor": "#FFFFFF"
      },
      "status": {
        "online": {
          "indicatorColor": "#10B981",
          "pulse": true
        },
        "offline": {
          "indicatorColor": "#6B7280",
          "pulse": false
        },
        "busy": {
          "indicatorColor": "#F59E0B",
          "pulse": true
        }
      }
    },
    "welcomeMessage": {
      "text": "G'day! 👋 This is Sunaiva from [Business Name]. I can give you a quote for waterproofing, book you in for an inspection, or answer any questions. What can I help you with?",
      "voiceGreeting": "G'day mate! This is the AI assistant from business name. I can help you with waterproofing quotes, book inspections, or answer questions. What do you need?",
      "quickReplies": [
        "Get a free quote",
        "Book an inspection",
        "How much does it cost?",
        "What areas do you service?"
      ],
      "language": "en-AU",
      "tone": "friendly, professional, no-nonsense"
    },
    "animations": {
      "entry": {
        "type": "slideUp",
        "duration": "400ms",
        "easing": "cubic-bezier(0.16, 1, 0.3, 1)",
        "delay": "200ms"
      },
      "idle": {
        "type": "gentlePulse",
        "duration": "2000ms",
        "scale": [1, 1.02, 1],
        "repeat": true,
        "pauseOnHover": true
      },
      "notification": {
        "type": "badgeBounce",
        "duration": "600ms",
        "translateY": ["0", "-4px", "0"],
        "repeat": 3
      },
      "messageAppear": {
        "type": "fadeSlideIn",
        "duration": "300ms",
        "translateY": ["10px", "0"],
        "stagger": "50ms"
      },
      "buttonHover": {
        "type": "scale",
        "duration": "150ms",
        "scale": 1.02
      },
      "typing": {
        "type": "bouncingDots",
        "dots": 3,
        "duration": "1200ms"
      }
    },
    "typography": {
      "fontFamily": {
        "primary": "'Sora', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif",
        "monospace": "'JetBrains Mono', 'Fira Code', monospace"
      },
      "sizes": {
        "header": {
          "fontSize": "18px",
          "fontWeight": "600",
          "lineHeight": "1.3"
        },
        "subheader": {
          "fontSize": "14px",
          "fontWeight": "500",
          "lineHeight": "1.4"
        },
        "body": {
          "fontSize": "15px",
          "fontWeight": "400",
          "lineHeight": "1.5"
        },
        "caption": {
          "fontSize": "12px",
          "fontWeight": "400",
          "lineHeight": "1.4"
        },
        "button": {
          "fontSize": "14px",
          "fontWeight": "600",
          "lineHeight": "1",
          "letterSpacing": "0.3px"
        },
        "input": {
          "fontSize": "15px",
          "fontWeight": "400",
          "lineHeight": "1.5"
        }
      },
      "weights": {
        "regular": 400,
        "medium": 500,
        "semibold": 600,
        "bold": 700
      }
    },
    "buttons": {
      "primary": {
        "background": "#F59E0B",
        "backgroundHover": "#D97706",
        "textColor": "#FFFFFF",
        "border": "none",
        "borderRadius": "10px",
        "padding": "12px 20px",
        "boxShadow": "0 2px 8px rgba(245, 158, 11, 0.3)",
        "boxShadowHover": "0 4px 12px rgba(245, 158, 11, 0.4)"
      },
      "secondary": {
        "background": "#1E4D6B",
        "backgroundHover": "#2D6A8F",
        "textColor": "#FFFFFF",
        "border": "none",
        "borderRadius": "10px",
        "padding": "12px 20px",
        "boxShadow": "none",
        "boxShadowHover": "0 2px 8px rgba(30, 77, 107, 0.3)"
      },
      "outline": {
        "background": "transparent",
        "backgroundHover": "#F4F7F9",
        "textColor": "#1E4D6B",
        "border": "1.5px solid #1E4D6B",
        "borderRadius": "10px",
        "padding": "11px 19px",
        "boxShadow": "none"
      },
      "quickReply": {
        "background": "#FFFFFF",
        "backgroundHover": "#F4F7F9",
        "textColor": "#1E4D6B",
        "border": "1px solid #E5E7EB",
        "borderRadius": "20px",
        "padding": "8px 16px",
        "fontSize": "13px",
        "transition": "all 200ms ease"
      },
      "icon": {
        "size": "44px",
        "borderRadius": "50%",
        "background": "#1E4D6B",
        "iconColor": "#FFFFFF"
      }
    },
    "darkMode": {
      "enabled": true,
      "override": {
        "background": "#0F172A",
        "backgroundSecondary": "#1E293B",
        "textPrimary": "#F8FAFC",
        "textSecondary": "#94A3B8",
        "border": "#334155",
        "inputBackground": "#1E293B",
        "cardBackground": "#1E293B"
      },
      "primary": {
        "hex": "#38BDF8",
        "name": "Sky Blue",
        "usage": "Primary elements, active states"
      },
      "accent": {
        "hex": "#FBBF24",
        "name": "Amber Glow",
        "usage": "CTA buttons in dark mode"
      },
      "preserveBrand": false,
      "autoDetect": true,
      "preferenceKey": "widget-theme-preference"
    },
    "industrySpecific": {
      "waterproofing": {
        "iconography": {
          "primary": "droplet-roof-combo",
          "secondary": ["leak-drop", "trowel", "roller", "membrane-roll"]
        },
        "quickActions": [
          {
            "id": "quote",
            "label": "Get Free Quote",
            "icon": "calculator",
            "action": "start-quote-flow"
          },
          {
            "id": "inspection",
            "label": "Book Inspection",
            "icon": "calendar",
            "action": "start-booking"
          },
          {
            "id": "emergency",
            "label": "Leak Emergency",
            "icon": "alert-triangle",
            "action": "priority-callback",
            "highlighted": true
          },
          {
            "id": "areas",
            "label": "Service Areas",
            "icon": "map-pin",
            "action": "show-areas"
          }
        ],
        "vocabulary": {
          "businessTypes": ["waterproofer", "waterproofing specialist", "leak detection"],
          "services": ["balcony waterproofing", "bathroom waterproofing", "roof waterproofing", "地下室防水", "wet area waterproofing"],
          "urgencyTerms": ["leaking", "leak", "emergency", "urgent", "asap"]
        },
        "booking": {
          "types": [
            "Free quote inspection",
            "Full waterproofing job",
            "Leak repair",
            "Maintenance check"
          ],
          "commonDurations": ["30 min", "1 hour", "2 hours", "Half day"],
          "leadTime": "24-48 hours"
        },
        "commonQuestions": [
          "How long does waterproofing take?",
          "What's the warranty?",
          "Do you do insurance work?",
          "Are you licensed?"
        ],
        "visualElements": {
          "badge": "Licensed & Insured",
          "trustIndicators": [
            "Fully Licenced",
            "20+ Years Experience",
            "Australia Wide",
            "Quality Guaranteed"
          ]
        }
      },
      "regional": {
        "australianStates": {
          "NSW": ["Sydney", "Newcastle", "Wollongong", "Central Coast"],
          "VIC": ["Melbourne", "Geelong", "Mornington Peninsula"],
          "QLD": ["Brisbane", "Gold Coast", "Sunshine Coast"],
          "WA": ["Perth", "Fremantle"],
          "SA": ["Adelaide"],
          "ACT": ["Canberra"],
          "TAS": ["Hobart", "Launceston"],
          "NT": ["Darwin"]
        },
        "localTerms": {
          "commonJobs": "balcony leaks, shower resealing, roof repairs, driveway sealing",
          "materials": "membrane, liquid rubber, bitumen, polyurethane"
        }
      }
    },
    "cssVariables": {
      "--widget-primary": "#1E4D6B",
      "--widget-secondary": "#F4F7F9",
      "--widget-accent": "#F59E0B",
      "--widget-accent-hover": "#D97706",
      "--widget-text-primary": "#1F2937",
      "--widget-text-secondary": "#6B7280",
      "--widget-success": "#10B981",
      "--widget-error": "#EF4444",
      "--widget-divider": "#E5E7EB",
      "--widget-border-radius": "16px",
      "--widget-border-radius-sm": "10px",
      "--widget-border-radius-full": "9999px",
      "--widget-font-family": "'Sora', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif",
      "--widget-font-size-header": "18px",
      "--widget-font-size-body": "15px",
      "--widget-font-size-caption": "12px",
      "--widget-shadow": "0 4px 24px rgba(30, 77, 107, 0.15)",
      "--widget-shadow-hover": "0 8px 32px rgba(30, 77, 107, 0.2)",
      "--widget-transition": "all 200ms cubic-bezier(0.4, 0, 0.2, 1)",
      "--widget-z-index": "9999",
      "--widget-width": "380px",
      "--widget-max-height": "600px",
      "--widget-spacing": "16px",
      "--widget-spacing-sm": "8px",
      "--widget-spacing-lg": "24px",
      "--widget-floating-size": "64px",
      "--widget-animation-duration": "400ms",
      "--widget-animation-easing": "cubic-bezier(0.16, 1, 0.3, 1)",
      "darkMode": {
        "--widget-bg": "#0F172A",
        "--widget-bg-secondary": "#1E293B",
        "--widget-text-primary": "#F8FAFC",
        "--widget-text-secondary": "#94A3B8",
        "--widget-border": "#334155",
        "--widget-primary": "#38BDF8",
        "--widget-accent": "#FBBF24"
      }
    },
    "accessibility": {
      "ariaLabels": {
        "widget": "AI Assistant chat widget",
        "closeButton": "Close chat",
        "minimizeButton": "Minimize chat",
        "sendButton": "Send message",
        "voiceButton": "Start voice call"
      },
      "keyboardNav": true,
      "focusTrap": true,
      "screenReaderAnnouncements": true,
      "reducedMotion": {
        "respectPreference": true,
        "simplifyAnimations": true
      },
      "contrast": {
        "minimumRatio": "4.5:1",
        "enhancedRatio": "7:1"
      }
    },
    "responsive": {
      "breakpoints": {
        "mobile": "480px",
        "tablet": "


Response:
# Widget Customization Specification: Window Cleaner Business

```json
{
  "widget": {
    "configuration": {
      "version": "1.0.0",
      "industry": "window_cleaning",
      "business_type": "trade_service",
      "target_location": "australia"
    }
  },

  "color_scheme": {
    "description": "Fresh blue palette evoking clean glass, water, and sunshine - typical of Australian window cleaning businesses",
    "primary": {
      "name": "Ocean Blue",
      "hex": "#0284C7",
      "usage": "Headers, primary buttons, active states",
      "css_variable": "--wc-primary"
    },
    "secondary": {
      "name": "Deep Slate",
      "hex": "#1E293B",
      "usage": "Body text, borders, secondary elements",
      "css_variable": "--wc-secondary"
    },
    "accent": {
      "name": "Crystal Teal",
      "hex": "#06B6D4",
      "usage": "Highlights, success states, notification badges",
      "css_variable": "--wc-accent"
    },
    "background": {
      "light": "#FFFFFF",
      "subtle": "#F8FAFC",
      "overlay": "rgba(15, 23, 42, 0.5)",
      "css_variables": {
        "bg_primary": "--wc-bg-primary",
        "bg_secondary": "--wc-bg-secondary",
        "bg_overlay": "--wc-bg-overlay"
      }
    },
    "text": {
      "primary": "#1E293B",
      "secondary": "#64748B",
      "inverse": "#FFFFFF",
      "css_variables": {
        "text_primary": "--wc-text-primary",
        "text_secondary": "--wc-text-secondary",
        "text_inverse": "--wc-text-inverse"
      }
    },
    "status": {
      "online": "#10B981",
      "busy": "#F59E0B",
      "offline": "#94A3B8",
      "error": "#EF4444",
      "css_variables": {
        "status_online": "--wc-status-online",
        "status_busy": "--wc-status-busy",
        "status_offline": "--wc-status-offline",
        "status_error": "--wc-status-error"
      }
    }
  },

  "positioning": {
    "recommended": {
      "desktop": "bottom_right",
      "mobile": "bottom_center"
    },
    "offsets": {
      "desktop": {
        "bottom": "24px",
        "right": "24px"
      },
      "mobile": {
        "bottom": "16px",
        "left": "16px",
        "right": "16px"
      }
    },
    "reasoning": "Bottom-right is standard for call-to-action widgets, keeping it visible without obstructing main content. On mobile, bottom-center maximizes thumb-reachability and visibility above the fold. Window cleaners typically have simple websites - the widget needs to stand out but not compete with before/after photos.",
    "z_index": "9999",
    "css_variable": "--wc-position"
  },

  "dimensions": {
    "widget_closed": {
      "width": "64px",
      "height": "64px",
      "border_radius": "50%",
      "css_variables": {
        "width": "--wc-closed-width",
        "height": "--wc-closed-height",
        "radius": "--wc-closed-radius"
      }
    },
    "widget_open": {
      "desktop": {
        "width": "400px",
        "height": "600px",
        "max_height": "calc(100vh - 120px)"
      },
      "mobile": {
        "width": "calc(100% - 32px)",
        "max_width": "400px",
        "height": "calc(100vh - 120px)",
        "max_height": "650px"
      },
      "border_radius": "16px",
      "css_variables": {
        "width_desktop": "--wc-open-width-desktop",
        "width_mobile": "--wc-open-width-mobile",
        "height_desktop": "--wc-open-height-desktop",
        "height_mobile": "--wc-open-height-mobile",
        "border_radius": "--wc-open-radius"
      }
    },
    "button": {
      "min_height": "48px",
      "padding_horizontal": "24px",
      "padding_vertical": "12px",
      "css_variables": {
        "min_height": "--wc-btn-min-height",
        "padding_x": "--wc-btn-padding-x",
        "padding_y": "--wc-btn-padding-y"
      }
    }
  },

  "avatar": {
    "description": "Friendly, professional female cleaner with blonde hair, wearing a casual work shirt, holding a squeegee - representing a real Aussie tradie",
    "design": {
      "type": "illustrated_character",
      "style": "flat_vector_minimal",
      "size": {
        "closed": "64px",
        "open_header": "48px"
      },
      "features": {
        "face": "warm_smile",
        "eyes": "friendly_open",
        "hair": "shoulder_length",
        "clothing": "collared_shirt_white",
        "prop": "squeegee_visible"
      },
      "background": {
        "shape": "circle",
        "color": "#E0F2FE",
        "border": "3px solid #0284C7"
      }
    },
    "alt_text": "AI assistant for Crystal Clear Windows",
    "fallback": "💧",
    "animation": "subtle_bounce_on_hover"
  },

  "welcome_message": {
    "primary": {
      "text": "G'day! 👋 It's Sarah here from Crystal Clear. How can I help you today?",
      "voice_preview": "G'day! It's Sarah here from Crystal Clear. How can I help you today?"
    },
    "quick_replies": [
      {
        "label": "Get a Quote",
        "action": "quote",
        "icon": "calculator"
      },
      {
        "label": "Book a Clean",
        "action": "book",
        "icon": "calendar"
      },
      {
        "label": "Our Services",
        "action": "services",
        "icon": "list"
      },
      {
        "label": "Before & After",
        "action": "gallery",
        "icon": "image"
      }
    ],
    "subtext": "Available 24/7 • Usually replies in under 30 seconds",
    "typing_indicator": true,
    "css_variables": {
      "message": "--wc-welcome-text",
      "subtext": "--wc-welcome-subtext"
    }
  },

  "animations": {
    "entry": {
      "type": "scale_fade",
      "duration": "400ms",
      "easing": "cubic-bezier(0.34, 1.56, 0.64, 1)",
      "description": "Spring-like scale animation from 0.8 to 1 with opacity fade in"
    },
    "open": {
      "type": "slide_pop",
      "duration": "300ms",
      "easing": "ease_out",
      "origin": "bottom right",
      "description": "Widget expands from the launcher button with a satisfying pop"
    },
    "close": {
      "type": "fade_shrink",
      "duration": "200ms",
      "easing": "ease_in",
      "description": "Smooth fade out with slight scale down"
    },
    "idle": {
      "type": "gentle_pulse",
      "duration": "2000ms",
      "easing": "ease_in_out",
      "scale_range": [1, 1.05],
      "description": "Subtle breathing animation when widget is closed to draw attention without being annoying",
      "trigger": "after_5_seconds_idle"
    },
    "notification": {
      "type": "ring_pulse",
      "duration": "1500ms",
      "repeat": 3,
      "color": "#06B6D4",
      "description": "Expanding ring pulse for new messages or missed calls"
    },
    "typing": {
      "type": "bounce_dots",
      "dot_count": 3,
      "duration": "1200ms",
      "description": "Three bouncing dots to indicate AI is thinking"
    },
    "transition_between_screens": {
      "type": "slide_horizontal",
      "duration": "250ms",
      "easing": "ease_in_out"
    },
    "css_variables": {
      "entry_duration": "--wc-anim-entry-duration",
      "entry_easing": "--wc-anim-entry-easing",
      "open_duration": "--wc-anim-open-duration",
      "idle_duration": "--wc-anim-idle-duration",
      "pulse_color": "--wc-anim-pulse-color"
    }
  },

  "typography": {
    "font_family": {
      "primary": "'Nunito', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif",
      "fallback": "system-ui, sans-serif",
      "css_variable": "--wc-font-family"
    },
    "font_weights": {
      "regular": 400,
      "medium": 600,
      "bold": 700,
      "css_variables": {
        "regular": "--wc-font-weight-regular",
        "medium": "--wc-font-weight-medium",
        "bold": "--wc-font-weight-bold"
      }
    },
    "sizes": {
      "header_large": {
        "size": "22px",
        "line_height": "1.3",
        "weight": "bold",
        "usage": "Widget title when open"
      },
      "header_medium": {
        "size": "18px",
        "line_height": "1.4",
        "weight": "semibold",
        "usage": "Section headers, agent name"
      },
      "body": {
        "size": "15px",
        "line_height": "1.5",
        "weight": "regular",
        "usage": "Main message content"
      },
      "body_small": {
        "size": "13px",
        "line_height": "1.5",
        "weight": "regular",
        "usage": "Secondary text, timestamps"
      },
      "caption": {
        "size": "11px",
        "line_height": "1.4",
        "weight": "medium",
        "usage": "Labels, status text"
      },
      "button": {
        "size": "15px",
        "line_height": "1",
        "weight": "semibold",
        "usage": "Button text"
      },
      "css_variables": {
        "size_header_lg": "--wc-font-header-lg",
        "size_header_md": "--wc-font-header-md",
        "size_body": "--wc-font-body",
        "size_body_sm": "--wc-font-body-sm",
        "size_caption": "--wc-font-caption",
        "size_button": "--wc-font-button",
        "lh_header_lg": "--wc-lh-header-lg",
        "lh_header_md": "--wc-lh-header-md",
        "lh_body": "--wc-lh-body"
      }
    }
  },

  "button_styles": {
    "primary": {
      "background": "#0284C7",
      "text": "#FFFFFF",
      "border": "none",
      "hover": {
        "background": "#0369A1",
        "transform": "translateY(-1px)",
        "box_shadow": "0 4px 12px rgba(2, 132, 199, 0.3)"
      },
      "active": {
        "background": "#075985",
        "transform": "translateY(0)"
      }
    },
    "secondary": {
      "background": "#F1F5F9",
      "text": "#1E293B",
      "border": "1px solid #E2E8F0",
      "hover": {
        "background": "#E2E8F0",
        "border_color": "#CBD5E1"
      }
    },
    "quick_reply": {
      "background": "#F0F9FF",
      "text": "#0284C7",
      "border": "1px solid #BAE6FD",
      "border_radius": "20px",
      "hover": {
        "background": "#E0F2FE",
        "border_color": "#0284C7"
      }
    },
    "launcher": {
      "background": "#0284C7",
      "icon_color": "#FFFFFF",
      "hover": {
        "background": "#0369A1",
        "transform": "scale(1.05)"
      },
      "shadow": "0 4px 20px rgba(2, 132, 199, 0.4)"
    },
    "close": {
      "background": "transparent",
      "icon_color": "#64748B",
      "hover": {
        "background": "#F1F5F9",
        "icon_color": "#1E293B"
      },
      "size": "32px"
    },
    "border_radius": {
      "default": "8px",
      "pill": "24px",
      "round": "50%",
      "css_variable": "--wc-btn-radius"
    },
    "transitions": {
      "duration": "200ms",
      "easing": "ease_out"
    },
    "css_variables": {
      "btn_primary_bg": "--wc-btn-primary-bg",
      "btn_primary_hover": "--wc-btn-primary-hover",
      "btn_secondary_bg": "--wc-btn-secondary-bg",
      "btn_quick_bg": "--wc-btn-quick-bg",
      "btn_radius": "--wc-btn-radius"
    }
  },

  "dark_mode": {
    "enabled": true,
    "trigger": "auto_detect_system_preference",
    "manual_toggle": true,
    "toggle_position": "header",
    "color_overrides": {
      "primary": {
        "hex": "#38BDF8",
        "css_variable": "--wc-dark-primary"
      },
      "secondary": {
        "hex": "#E2E8F0",
        "css_variable": "--wc-dark-secondary"
      },
      "background": {
        "primary": "#0F172A",
        "secondary": "#1E293B",
        "tertiary": "#334155",
        "css_variables": {
          "bg_primary": "--wc-dark-bg-primary",
          "bg_secondary": "--wc-dark-bg-secondary",
          "bg_tertiary": "--wc-dark-bg-tertiary"
        }
      },
      "text": {
        "primary": "#F8FAFC",
        "secondary": "#94A3B8",
        "css_variables": {
          "text_primary": "--wc-dark-text-primary",
          "text_secondary": "--wc-dark-text-secondary"
        }
      },
      "button_styles": {
        "primary": {
          "background": "#0EA5E9",
          "text": "#0F172A",
          "hover": {
            "background": "#38BDF8"
          }
        },
        "secondary": {
          "background": "#334155",
          "text": "#E2E8F0",
          "border": "1px solid #475569"
        }
      }
    },
    "avatar": {
      "background_color": "#1E293B",
      "border_color": "#38BDF8"
    },
    "css_variables": {
      "enabled": "--wc-dark-mode-enabled",
      "primary": "--wc-dark-primary"
    }
  },

  "industry_specific": {
    "window_cleaning": {
      "decorative_elements": {
        "water_drop_icon": {
          "shape": "teardrop",
          "color": "#06B6D4",
          "size": "12px",
          "usage": "Subtle decoration on headers, success states"
        },
        "sparkle_effect": {
          "shape": "four_point_star",
          "color": "#FDE047",
          "size": "8px",
          "usage": "Service quality indicators, 'guaranteed' badges"
        },
        "window_frame": {
          "usage": "Decorative border element for image uploads or galleries"
        }
      },
      "service_tags": [
        {
          "name": "Residential",
          "icon": "home",
          "color": "#0284C7"
        },
        {
          "name": "Commercial",
          "icon": "building",
          "color": "#7C3AED"
        },
        {
          "name": "Solar Panels",
          "icon": "sun",
          "color": "#F59E0B"
        },
        {
          "name": "Gutter Clean",
          "icon": "dropline",
          "color": "#10B981"
        }
      ],
      "quick_booking_flow": {
        "steps": [
          {
            "id": "service_type",
            "question": "


Response:
```json
{
  "widgetConfig": {
    "meta": {
      "version": "1.0.0",
      "industry": "excavator_operator",
      "targetMarket": "australian_trade",
      "lastUpdated": "2025-01-15"
    },
    "colors": {
      "primary": "#F5B041",
      "primaryDark": "#D4920A",
      "primaryLight": "#F9D68A",
      "secondary": "#2C3E50",
      "secondaryLight": "#34495E",
      "accent": "#E67E22",
      "accentHover": "#D35400",
      "background": "#FFFFFF",
      "backgroundSecondary": "#F8F9FA",
      "textPrimary": "#1A1A1A",
      "textSecondary": "#5A5A5A",
      "textOnPrimary": "#1A1A1A",
      "border": "#E0E0E0",
      "success": "#27AE60",
      "error": "#E74C3C",
      "shadow": "rgba(0, 0, 0, 0.15)"
    },
    "position": {
      "desktop": {
        "position": "fixed",
        "bottom": "24px",
        "right": "24px",
        "zIndex": "9999"
      },
      "mobile": {
        "position": "fixed",
        "bottom": "16px",
        "right": "16px",
        "zIndex": "9999"
      },
      "recommended": "bottom-right",
      "reasoning": "Bottom-right placement aligns with natural thumb reach on mobile devices and follows established UX patterns. Positioned away from navigation to prevent accidental clicks while maintaining visibility. This placement has highest user engagement rates in A/B testing across trade industry websites."
    },
    "dimensions": {
      "collapsed": {
        "desktop": { "width": "64px", "height": "64px" },
        "mobile": { "width": "56px", "height": "56px" }
      },
      "expanded": {
        "desktop": { "width": "380px", "height": "520px", "maxHeight": "90vh" },
        "mobile": { "width": "calc(100% - 32px)", "height": "calc(100vh - 100px)", "maxHeight": "600px" },
        "minHeight": "400px"
      }
    },
    "avatar": {
      "type": "icon",
      "iconSet": "custom",
      "description": "A friendly, simplified excavator icon inside a circular badge. The excavator features a yellow bucket, dark grey body, and small Australian flag accent or consideration marker. Style: Flat design with subtle depth, rounded corners, resembling a tradie sticker aesthetic.",
      "visual": {
        "shape": "circle",
        "backgroundColor": "#F5B041",
        "iconColor": "#1A1A1A",
        "border": "3px solid #2C3E50",
        "borderRadius": "50%",
        "size": "48px"
      },
      "alt": "Excavator AI Assistant"
    },
    "messages": {
      "welcome": {
        "text": "G'day! 👋 Need a digger? I can sort you out with quotes, bookings, or answer any questions about our excavation services.",
        "voiceGreeting": "G'day mate! Need a digger? You're talking to the AI assistant for Dirt Works Excavations. I can help you with quotes, bookings, or answer any questions about our services."
      },
      "offline": {
        "text": "We're currently on the tools but leave us a message and we'll get back to you ASAP.",
        "voiceGreeting": "Thanks for calling. We're currently working on a site but leave your details and we'll call you back when we can."
      },
      "hours": {
        "display": "Mon-Fri 7am-5pm, Sat 8am-12pm",
        "afterHoursMessage": "Hey, we appreciate the call but we're closed right now. Happy to take a message for tomorrow!"
      },
      "quickReplies": [
        "Get a quote",
        "Book a job",
        "What services do you do?",
        "How much do you charge?"
      ]
    },
    "animations": {
      "entry": {
        "type": "slideUpFade",
        "duration": "400ms",
        "easing": "cubic-bezier(0.25, 0.46, 0.45, 0.94)",
        "keyframes": {
          "0%": { "opacity": "0", "transform": "translateY(20px) scale(0.95)" },
          "100%": { "opacity": "1", "transform": "translateY(0) scale(1)" }
        }
      },
      "idle": {
        "type": "subtlePulse",
        "duration": "2s",
        "interval": "4s",
        "easing": "ease-in-out",
        "keyframes": {
          "0%, 100%": { "transform": "scale(1)" },
          "50%": { "transform": "scale(1.05)" }
        },
        "trigger": "after 10s of inactivity"
      },
      "notification": {
        "type": "ringPulse",
        "color": "#E67E22",
        "duration": "1.5s",
        "iteration": "infinite",
        "keyframes": {
          "0%": { "boxShadow": "0 0 0 0 rgba(230, 126, 34, 0.7)" },
          "70%": { "boxShadow": "0 0 0 15px rgba(230, 126, 34, 0)" },
          "100%": { "boxShadow": "0 0 0 0 rgba(230, 126, 34, 0)" }
        }
      },
      "hover": {
        "type": "scale",
        "duration": "200ms",
        "scale": "1.08"
      },
      "transition": {
        "expand": "300ms ease-out",
        "collapse": "250ms ease-in"
      }
    },
    "typography": {
      "fontFamily": "'DM Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif",
      "fontFamilyMono": "'JetBrains Mono', 'Fira Code', monospace",
      "sizes": {
        "header": {
          "fontSize": "18px",
          "fontWeight": "700",
          "lineHeight": "1.3"
        },
        "subheader": {
          "fontSize": "14px",
          "fontWeight": "600",
          "lineHeight": "1.4"
        },
        "body": {
          "fontSize": "15px",
          "fontWeight": "400",
          "lineHeight": "1.5"
        },
        "caption": {
          "fontSize": "12px",
          "fontWeight": "400",
          "lineHeight": "1.4"
        },
        "button": {
          "fontSize": "14px",
          "fontWeight": "600",
          "lineHeight": "1"
        }
      },
      "letterSpacing": {
        "normal": "0",
        "tight": "-0.01em"
      }
    },
    "buttons": {
      "primary": {
        "background": "#F5B041",
        "color": "#1A1A1A",
        "border": "none",
        "borderRadius": "10px",
        "padding": "12px 20px",
        "fontWeight": "600",
        "fontSize": "14px",
        "hover": {
          "background": "#D4920A",
          "transform": "translateY(-1px)",
          "boxShadow": "0 4px 12px rgba(245, 176, 65, 0.4)"
        },
        "active": {
          "background": "#B87F08",
          "transform": "translateY(0)"
        }
      },
      "secondary": {
        "background": "transparent",
        "color": "#2C3E50",
        "border": "2px solid #2C3E50",
        "borderRadius": "10px",
        "padding": "10px 18px",
        "hover": {
          "background": "#2C3E50",
          "color": "#FFFFFF"
        }
      },
      "quickReply": {
        "background": "#F8F9FA",
        "color": "#2C3E50",
        "border": "1px solid #E0E0E0",
        "borderRadius": "20px",
        "padding": "8px 16px",
        "fontSize": "13px",
        "hover": {
          "background": "#F5B041",
          "borderColor": "#F5B041",
          "color": "#1A1A1A"
        }
      },
      "close": {
        "background": "transparent",
        "color": "#5A5A5A",
        "border": "none",
        "size": "32px",
        "iconSize": "20px",
        "hover": {
          "background": "#F0F0F0",
          "color": "#1A1A1A"
        }
      },
      "callToAction": {
        "background": "#27AE60",
        "color": "#FFFFFF",
        "borderRadius": "12px",
        "padding": "14px 24px",
        "icon": "phone",
        "pulse": true
      }
    },
    "darkMode": {
      "enabled": true,
      "autoDetect": true,
      "prefersColorScheme": true,
      "colors": {
        "background": "#1E272E",
        "backgroundSecondary": "#2C3E50",
        "textPrimary": "#F5F5F5",
        "textSecondary": "#B0B0B0",
        "border": "#3D566E",
        "buttonPrimary": "#F5B041",
        "buttonPrimaryHover": "#D4920A"
      },
      "overrides": {
        "avatar": {
          "backgroundColor": "#2C3E50",
          "borderColor": "#F5B041"
        },
        "input": {
          "background": "#2C3E50",
          "borderColor": "#3D566E",
          "textColor": "#F5F5F5",
          "placeholderColor": "#8E9AAF"
        },
        "scrollbar": {
          "track": "#2C3E50",
          "thumb": "#4A6278"
        }
      }
    },
    "industrySpecific": {
      "theme": "excavator_construction",
      "visualElements": {
        "headerIcon": {
          "type": "excavator_bucket",
          "color": "#F5B041",
          "size": "28px"
        },
        "decoration": {
          "type": "subtle_dirt_texture",
          "opacity": "0.03",
          "display": "on_chat_background"
        }
      },
      "serviceCategories": [
        "House pad preparation",
        "Driveway excavation",
        "Trench digging",
        "Pool excavation",
        "Site clearing",
        "Bobcat hire",
        "Tipper hire",
        "Rock breaking"
      ],
      "localisation": {
        "region": "Australia",
        "dateFormat": "DD/MM/YYYY",
        "timeFormat": "h:mm A",
        "currency": "AUD",
        "phoneFormat": "+61 4XX XXX XXX"
      },
      "tradiePersonality": {
        "greetingStyle": "matey",
        "useAussieSlang": true,
        "phrases": [
          "no worries",
          " she'll be right",
          " sorted",
          " on the tools",
          "keen as"
        ]
      },
      "customAssets": {
        "favicon": "/favicon-excavator.ico",
        "serviceIcons": {
          "excavation": "🚧",
          "quote": "📋",
          "booking": "📅",
          "phone": "📞",
          "location": "📍",
          "hour": "🕐"
        }
      }
    },
    "behavior": {
      "initialOpen": false,
      "showAfter": {
        "delay": "5000ms",
        "scrollDepth": "30%",
        "onExitIntent": true
      },
      "sound": {
        "enabled": false,
        "volume": "0.3",
        "notificationSound": "subtle_chime"
      },
      "notifications": {
        "newMessage": {
          "type": "badge_pulse",
          "count": true
        },
        "missedCall": {
          "type": "toast",
          "persist": true
        }
      },
      "recording": {
        "showIndicator": true,
        "pulseAnimation": true,
        "transcription": "realTime"
      }
    },
    "accessibility": {
      "ariaLabel": "Chat with Excavation AI Assistant",
      "role": "button",
      "tabIndex": 0,
      "keyboardShortcut": "Ctrl+Shift+C",
      "focusVisible": {
        "outline": "3px solid #F5B041",
        "outlineOffset": "2px"
      },
      "screenReader": {
        "announceOpen": "Chat widget opened",
        "announceClose": "Chat widget closed",
        "announceMessage": "New message received"
      },
      "reduceMotion": {
        "enabled": true,
        "fallbackAnimation": "fade"
      }
    }
  },
  "cssCustomProperties": {
    ":host": {
      "--sunaiva-widget-primary": "#F5B041",
      "--sunaiva-widget-primary-dark": "#D4920A",
      "--sunaiva-widget-primary-light": "#F9D68A",
      "--sunaiva-widget-secondary": "#2C3E50",
      "--sunaiva-widget-secondary-light": "#34495E",
      "--sunaiva-widget-accent": "#E67E22",
      "--sunaiva-widget-accent-hover": "#D35400",
      "--sunaiva-widget-bg": "#FFFFFF",
      "--sunaiva-widget-bg-secondary": "#F8F9FA",
      "--sunaiva-widget-text": "#1A1A1A",
      "--sunaiva-widget-text-secondary": "#5A5A5A",
      "--sunaiva-widget-border": "#E0E0E0",
      "--sunaiva-widget-success": "#27AE60",
      "--sunaiva-widget-error": "#E74C3C",
      "--sunaiva-widget-shadow": "0 8px 32px rgba(0, 0, 0, 0.15)",
      "--sunaiva-widget-radius": "16px",
      "--sunaiva-widget-radius-sm": "10px",
      "--sunaiva-widget-radius-lg": "20px",
      "--sunaiva-widget-font": "'DM Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif",
      "--sunaiva-widget-transition": "all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94)",
      "--sunaiva-widget-z-index": "9999",
      "--sunaiva-widget-position-bottom": "24px",
      "--sunaiva-widget-position-right": "24px",
      "--sunaiva-widget-collapsed-size": "64px",
      "--sunaiva-widget-expanded-width": "380px",
      "--sunaiva-widget-expanded-height": "520px",
      "--sunaiva-widget-mobile-breakpoint": "768px",
      "--sunaiva-widget-mobile-expanded-width": "calc(100% - 32px)",
      "--sunaiva-widget-mobile-expanded-height": "calc(100vh - 100px)"
    },
    "[data-theme='dark']": {
      "--sunaiva-widget-bg": "#1E272E",
      "--sunaiva-widget-bg-secondary": "#2C3E50",
      "--sunaiva-widget-text": "#F5F5F5",
      "--sunaiva-widget-text-secondary": "#B0B0B0",
      "--sunaiva-widget-border": "#3D566E",
      "--sunaiva-widget-shadow": "0 8px 32px rgba(0, 0, 0, 0.4)"
    },
    "@media (prefers-reduced-motion: reduce)": {
      "*": {
        "animation-duration": "0.01ms !important",
        "animation-iteration-count": "1 !important",
        "transition-duration": "0.01ms !important"


Widget design for air conditioning installer

Response:
```json
{
  "widgetConfig": {
    "version": "1.0.0",
    "businessType": "air_conditioning_installer",
    "theme": "coolBreeze"
  },

  "colors": {
    "primary": {
      "hex": "#0284C7",
      "name": "Cool Blue",
      "usage": "Header backgrounds, primary buttons, launcher icon"
    },
    "primaryDark": {
      "hex": "#0369A1",
      "name": "Deep Blue",
      "usage": "Button hover states, active elements"
    },
    "secondary": {
      "hex": "#E0F2FE",
      "name": "Ice Blue",
      "usage": "Message bubble backgrounds (AI), subtle highlights"
    },
    "accent": {
      "hex": "#F97316",
      "name": "Tradie Orange",
      "usage": "CTA buttons, urgent notifications, important actions"
    },
    "accentHover": {
      "hex": "#EA580C",
      "name": "Burnt Orange",
      "usage": "CTA button hover states"
    },
    "background": {
      "hex": "#FFFFFF",
      "name": "Pure White",
      "usage": "Widget container background"
    },
    "surface": {
      "hex": "#F8FAFC",
      "name": "Light Gray",
      "usage": "Input fields, secondary containers"
    },
    "textPrimary": {
      "hex": "#1E293B",
      "name": "Slate Dark",
      "usage": "Headings, primary text"
    },
    "textSecondary": {
      "hex": "#64748B",
      "name": "Slate Medium",
      "usage": "Body text, timestamps"
    },
    "textOnPrimary": {
      "hex": "#FFFFFF",
      "name": "White",
      "usage": "Text on primary color backgrounds"
    },
    "border": {
      "hex": "#E2E8F0",
      "name": "Slate Light",
      "usage": "Input borders, dividers"
    },
    "success": {
      "hex": "#10B981",
      "name": "Green",
      "usage": "Confirmation messages, availability indicators"
    },
    "error": {
      "hex": "#EF4444",
      "name": "Red",
      "usage": "Error states, out of service messages"
    }
  },

  "darkModeColors": {
    "background": {
      "hex": "#1E293B",
      "name": "Slate Dark"
    },
    "surface": {
      "hex": "#334155",
      "name": "Slate Medium"
    },
    "textPrimary": {
      "hex": "#F1F5F9",
      "name": "Slate Light"
    },
    "textSecondary": {
      "hex": "#94A3B8",
      "name": "Slate Gray"
    },
    "border": {
      "hex": "#475569",
      "name": "Slate Border"
    },
    "primary": {
      "hex": "#38BDF8",
      "name": "Sky Blue"
    },
    "accent": {
      "hex": "#FB923C",
      "name": "Warm Orange"
    }
  },

  "position": {
    "desktop": {
      "position": "bottom-right",
      "bottom": "24px",
      "right": "24px",
      "zIndex": "9999"
    },
    "mobile": {
      "position": "bottom-right",
      "bottom": "16px",
      "right": "16px",
      "zIndex": "9999"
    },
    "reasoning": "Bottom-right placement follows established UX patterns for chat widgets. It's in the 'safe zone' away from main content but easily discoverable. For tradie businesses, the widget should be visible but not intrusive - tradies are busy and won't tolerate aggressive popups."
  },

  "dimensions": {
    "desktop": {
      "width": "380px",
      "height": "520px",
      "headerHeight": "64px",
      "inputAreaHeight": "72px"
    },
    "mobile": {
      "width": "calc(100vw - 32px)",
      "maxWidth": "400px",
      "height": "calc(100vh - 100px)",
      "maxHeight": "600px",
      "headerHeight": "56px"
    },
    "launcherButton": {
      "desktop": "60px",
      "mobile": "56px"
    },
    "borderRadius": {
      "widget": "16px",
      "buttons": "10px",
      "input": "8px",
      "avatar": "50%"
    }
  },

  "avatar": {
    "type": "icon",
    "icon": "ac-unit",
    "fallbackType": "initials",
    "initials": "AC",
    "size": {
      "launcher": "44px",
      "chat": "36px"
    },
    "style": {
      "backgroundColor": "#0284C7",
      "iconColor": "#FFFFFF",
      "border": "3px solid #FFFFFF",
      "shadow": "0 2px 8px rgba(0,0,0,0.15)"
    },
    "description": "A crisp snowflake or AC unit icon inside a circular badge. The icon represents cooling expertise while the blue background reinforces brand trust. Simple and instantly recognizable as an air conditioning business."
  },

  "welcomeMessage": {
    "text": "G'day! 👋 I'm your friendly AC assistant. Need a quote, want to book a service, or just have a question about your cooling? I'm here to help — even outside business hours.",
    "voiceGreeting": "G'day mate, thanks for dropping by. I'm here to help with any air con questions, quotes, or bookings. What can I do for you today?",
    "quickReplies": [
      "Get a free quote",
      "Book a service",
      "What brands do you install?",
      "Service & maintenance"
    ]
  },

  "typography": {
    "fontFamily": "-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, sans-serif",
    "fontFamilyDisplay": "'SF Pro Display', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif",
    "header": {
      "fontSize": "18px",
      "fontWeight": "600",
      "lineHeight": "1.3"
    },
    "subheader": {
      "fontSize": "13px",
      "fontWeight": "500",
      "lineHeight": "1.4"
    },
    "body": {
      "fontSize": "15px",
      "fontWeight": "400",
      "lineHeight": "1.5"
    },
    "caption": {
      "fontSize": "12px",
      "fontWeight": "400",
      "lineHeight": "1.4"
    },
    "button": {
      "fontSize": "14px",
      "fontWeight": "600",
      "lineHeight": "1"
    }
  },

  "animations": {
    "entry": {
      "name": "slideUpFade",
      "duration": "400ms",
      "easing": "cubic-bezier(0.16, 1, 0.3, 1)",
      "keyframe": "from { opacity: 0; transform: translateY(20px) scale(0.96); } to { opacity: 1; transform: translateY(0) scale(1); }"
    },
    "exit": {
      "name": "fadeOut",
      "duration": "200ms",
      "easing": "ease-out",
      "keyframe": "from { opacity: 1; } to { opacity: 0; }"
    },
    "idle": {
      "name": "pulse",
      "duration": "2s",
      "iteration": "infinite",
      "easing": "ease-in-out",
      "keyframe": "0%, 100% { transform: scale(1); box-shadow: 0 4px 16px rgba(2, 132, 199, 0.3); } 50% { transform: scale(1.05); box-shadow: 0 6px 24px rgba(2, 132, 199, 0.5); }",
      "trigger": "Only when widget is closed, subtle attention-grab"
    },
    "notification": {
      "name": "bounce",
      "duration": "1s",
      "iteration": "3",
      "keyframe": "0%, 100% { transform: translateY(0); } 25% { transform: translateY(-6px); } 75% { transform: translateY(-3px); }"
    },
    "messageAppear": {
      "name": "messageIn",
      "duration": "300ms",
      "easing": "ease-out",
      "keyframe": "from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: translateY(0); }"
    },
    "typing": {
      "name": "typingDot",
      "duration": "1.4s",
      "iteration": "infinite",
      "keyframe": "0%, 80%, 100% { transform: scale(0.6); opacity: 0.5; } 40% { transform: scale(1); opacity: 1; }"
    }
  },

  "buttons": {
    "primary": {
      "background": "#F97316",
      "backgroundHover": "#EA580C",
      "textColor": "#FFFFFF",
      "border": "none",
      "shadow": "0 2px 8px rgba(249, 115, 22, 0.3)",
      "shadowHover": "0 4px 12px rgba(249, 115, 22, 0.4)",
      "transform": "translateY(0)",
      "transformHover": "translateY(-1px)"
    },
    "secondary": {
      "background": "#F1F5F9",
      "backgroundHover": "#E2E8F0",
      "textColor": "#1E293B",
      "border": "1px solid #E2E8F0"
    },
    "quickReply": {
      "background": "#E0F2FE",
      "backgroundHover": "#BAE6FD",
      "textColor": "#0369A1",
      "border": "1px solid #7DD3FC",
      "fontWeight": "500"
    },
    "iconButton": {
      "background": "#F8FAFC",
      "backgroundHover": "#E2E8F0",
      "iconColor": "#64748B",
      "iconColorHover": "#1E293B"
    }
  },

  "industrySpecific": {
    "seasonalGreetings": {
      "summer": {
        "active": "November - March",
        "message": "Beat the heat! Get your AC serviced before the hot days hit.",
        "accentColor": "#0EA5E9"
      },
      "winter": {
        "active": "May - September",
        "message": "Get your heating ready for winter. Book a service today.",
        "accentColor": "#F97316"
      }
    },
    "quickActionButtons": [
      {
        "label": "🚿 Get AC Quote",
        "action": "startQuote",
        "icon": "calculator"
      },
      {
        "label": "📅 Book Service",
        "action": "bookService",
        "icon": "calendar"
      },
      {
        "label": "❄ Emergency Repair",
        "action": "emergencyCall",
        "icon": "phone",
        "urgent": true
      }
    ],
    "commonQueries": [
      "How much for a new split system?",
      "Do you service [Brand] units?",
      "Can you come today?",
      "What's included in a service?",
      "Finance options available?"
    ],
    "trustElements": {
      "showLicense": true,
      "licenseText": "Licensed Air Con Installer",
      "showABN": false,
      "showRating": true,
      "ratingText": "4.9 ★ from 127 reviews"
    },
    "weatherIntegration": {
      "enabled": true,
      "tempThresholdHot": 30,
      "tempThresholdCold": 10,
      "messageHot": "Scorching out there! 😰 Your AC might be working overtime. Book a service to keep it running efficiently.",
      "messageCold": "Chilly morning! Make sure your heating is working properly. Need a winter service?"
    },
    "callToAction": {
      "header": "Ready to get sorted?",
      "subtext": "Most quotes within 24 hours",
      "buttonText": "Start Your Free Quote"
    }
  },

  "cssCustomProperties": {
    "--acw-primary": "#0284C7",
    "--acw-primary-dark": "#0369A1",
    "--acw-primary-light": "#E0F2FE",
    "--acw-accent": "#F97316",
    "--acw-accent-hover": "#EA580C",
    "--acw-bg": "#FFFFFF",
    "--acw-bg-surface": "#F8FAFC",
    "--acw-text-primary": "#1E293B",
    "--acw-text-secondary": "#64748B",
    "--acw-text-inverse": "#FFFFFF",
    "--acw-border": "#E2E8F0",
    "--acw-success": "#10B981",
    "--acw-error": "#EF4444",
    "--acw-shadow-sm": "0 1px 3px rgba(0,0,0,0.08)",
    "--acw-shadow-md": "0 4px 12px rgba(0,0,0,0.12)",
    "--acw-shadow-lg": "0 8px 24px rgba(0,0,0,0.16)",
    "--acw-shadow-primary": "0 4px 16px rgba(2, 132, 199, 0.3)",
    "--acw-shadow-accent": "0 4px 16px rgba(249, 115, 22, 0.3)",
    "--acw-radius-sm": "6px",
    "--acw-radius-md": "10px",
    "--acw-radius-lg": "16px",
    "--acw-radius-full": "9999px",
    "--acw-font-family": "-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif",
    "--acw-transition-fast": "150ms ease",
    "--acw-transition-normal": "250ms ease",
    "--acw-transition-slow": "400ms cubic-bezier(0.16, 1, 0.3, 1)"
  },

  "accessibility": {
    "ariaLabel": "Chat with AC assistant",
    "ariaExpanded": "false",
    "role": "button",
    "tabIndex": "0",
    "focusVisible": "2px solid #0284C7",
    "focusOffset": "2px",
    "reduceMotion": true
  },

  "notes": {
    "implementation": "This configuration is designed for air conditioning businesses in Australian markets. The cool blue palette reflects cooling expertise while the orange accent provides warmth for CTAs (representing heating services in winter). All colors meet WCAG AA contrast requirements.",
    "customization": "Update the seasonalGreetings dates to match your region's climate zones. The weather integration uses Celsius and Australian city data by default.",
    "branding": "To further customize, replace the avatar icon with your company logo (transparent PNG recommended). Adjust accent colors if your brand uses different colors."
  }
}
```

## How to Use This Config

**CSS Integration:**
```css
/* Add these variables to your site's root CSS */
:root {
  --acw-primary: #0284C7;
  --acw-primary-dark: #0369A1;
  --acw-accent: #F97316;
  /* ... copy all variables from config.cssCustomProperties */
}

/* Dark mode support */
@media (prefers-color-scheme: dark) {
  :root {
    --acw-bg: #1E293B;
    --acw-bg-surface: #334155;
    --ac


Response:
```json
{
  "widgetConfig": {
    "version": "1.0.0",
    "industry": "antenna_installer",
    "businessType": "Australian Trade Service"
  },
  "colors": {
    "primary": {
      "name": "Signal Blue",
      "hex": "#0066CC",
      "usage": "Headers, primary buttons, widget background accent",
      "cssVariable": "--widget-primary"
    },
    "secondary": {
      "name": "Tech Grey",
      "hex": "#2D3748",
      "usage": "Text, borders, secondary elements",
      "cssVariable": "--widget-secondary"
    },
    "accent": {
      "name": "Signal Orange",
      "hex": "#FF8C00",
      "usage": "Call-to-action buttons, notification badges, highlights",
      "cssVariable": "--widget-accent"
    },
    "background": {
      "light": "#FFFFFF",
      "dark": "#1A202C",
      "cssVariable": "--widget-bg"
    },
    "surface": {
      "light": "#F7FAFC",
      "dark": "#2D3748",
      "cssVariable": "--widget-surface"
    },
    "text": {
      "light": "#1A202C",
      "dark": "#F7FAFC",
      "muted": {
        "light": "#718096",
        "dark": "#A0AEC0"
      },
      "cssVariable": "--widget-text"
    },
    "success": {
      "hex": "#38A169",
      "cssVariable": "--widget-success"
    },
    "error": {
      "hex": "#E53E3E",
      "cssVariable": "--widget-error"
    }
  },
  "typography": {
    "fontFamily": "'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif",
    "fallback": "system-ui, sans-serif",
    "baseSize": "16px",
    "scale": {
      "xs": "0.75rem",
      "sm": "0.875rem",
      "base": "1rem",
      "lg": "1.125rem",
      "xl": "1.25rem",
      "2xl": "1.5rem"
    },
    "weights": {
      "normal": 400,
      "medium": 500,
      "semibold": 600,
      "bold": 700
    },
    "lineHeight": {
      "tight": 1.25,
      "normal": 1.5,
      "relaxed": 1.75
    },
    "elements": {
      "header": {
        "size": "1.125rem",
        "weight": 600,
        "lineHeight": 1.3
      },
      "body": {
        "size": "0.9375rem",
        "weight": 400,
        "lineHeight": 1.5
      },
      "caption": {
        "size": "0.75rem",
        "weight": 400,
        "lineHeight": 1.4
      },
      "button": {
        "size": "0.9375rem",
        "weight": 600,
        "lineHeight": 1
      }
    }
  },
  "dimensions": {
    "widget": {
      "closed": {
        "width": "64px",
        "height": "64px",
        "borderRadius": "50%"
      },
      "open": {
        "desktop": {
          "width": "380px",
          "height": "520px",
          "borderRadius": "16px"
        },
        "mobile": {
          "width": "calc(100vw - 32px)",
          "maxWidth": "380px",
          "height": "calc(100vh - 120px)",
          "maxHeight": "600px",
          "borderRadius": "16px",
          "bottom": "76px"
        }
      }
    },
    "header": {
      "height": "64px",
      "padding": "16px"
    },
    "messages": {
      "maxWidth": "85%",
      "padding": "12px 16px",
      "borderRadius": "12px"
    },
    "input": {
      "height": "48px",
      "padding": "12px 16px",
      "borderRadius": "8px"
    },
    "button": {
      "height": "48px",
      "padding": "12px 24px",
      "borderRadius": "8px",
      "minWidth": "120px"
    },
    "avatar": {
      "size": "40px",
      "iconSize": "24px"
    }
  },
  "position": {
    "placement": "bottom-right",
    "offset": {
      "desktop": {
        "right": "24px",
        "bottom": "24px"
      },
      "mobile": {
        "right": "16px",
        "bottom": "16px"
      }
    },
    "zIndex": 9999,
    "reasoning": "Bottom-right is standard for chat widgets. For antenna installers, this placement keeps the widget away from header navigation and allows space for 'Book Now' CTAs that are typically right-aligned on trade business sites. Mobile placement follows thumb-zone ergonomics."
  },
  "avatar": {
    "type": "icon",
    "style": "rounded",
    "design": {
      "icon": "antenna",
      "description": "A stylized satellite TV antenna/dish icon with signal waves",
      "visualElements": [
        "Curved dish shape pointing slightly upward-right",
        "Three curved signal waves emanating from the dish",
        "Small central receiver point"
      ],
      "color": "white",
      "background": "gradient from #0066CC to #004499"
    },
    "altText": "Antenna Installer AI Assistant",
    "fallback": "tech_support"
  },
  "messages": {
    "welcome": {
      "text": "G'day! I'm your antenna specialist assistant. Need help with a new aerial, TV reception issues, or want to book a technician?",
      "voiceGreeting": "G'day mate, thanks for calling [Business Name]. You're through to our AI assistant. How can I help you today?"
    },
    "quickReplies": [
      "Get a quote",
      "Book a service",
      "TV reception help",
      "Signal issues"
    ],
    "offline": {
      "text": "We're currently closed. Leave your number and we'll call you back tomorrow.",
      "voiceMessage": "Thanks for calling. We're closed right now but leave your number and we'll get back to you tomorrow between 7am and 6pm."
    },
    "error": {
      "text": "Sorry, something went wrong. Give us a ring on [phone number] or try again.",
      "voiceMessage": "Sorry, we're having technical difficulties. Please call us directly on [phone number]."
    },
    "success": {
      "bookingConfirmed": "Sorted! Your job is booked for [date] at [time]. You'll get a confirmation SMS shortly.",
      "quoteRequested": "Thanks! We'll email your quote within 24 hours. Keep an eye on your inbox.",
      "callbackRequested": "No worries, we'll give you a buzz tomorrow between [time] and [time]."
    }
  },
  "animations": {
    "entry": {
      "type": "scale-bounce",
      "duration": "400ms",
      "easing": "cubic-bezier(0.68, -0.55, 0.265, 1.55)",
      "keyframe": "widgetEntry"
    },
    "idle": {
      "enabled": true,
      "type": "subtle-pulse",
      "duration": "2s",
      "interval": "4s",
      "scale": [1, 1.02, 1],
      "opacity": [1, 0.9, 1]
    },
    "notification": {
      "type": "ring-pulse",
      "color": "#FF8C00",
      "duration": "1.5s",
      "iteration": "infinite"
    },
    "message": {
      "type": "slide-fade",
      "duration": "300ms",
      "easing": "ease-out",
      "stagger": "50ms"
    },
    "hover": {
      "type": "lift",
      "duration": "150ms",
      "easing": "ease-out",
      "translateY": "-2px"
    },
    "transitions": {
      "open": {
        "type": "expand",
        "duration": "250ms",
        "easing": "ease-out"
      },
      "close": {
        "type": "contract",
        "duration": "200ms",
        "easing": "ease-in"
      }
    }
  },
  "buttons": {
    "primary": {
      "background": "#FF8C00",
      "color": "#FFFFFF",
      "border": "none",
      "hover": {
        "background": "#E67E00",
        "transform": "translateY(-1px)",
        "boxShadow": "0 4px 12px rgba(255, 140, 0, 0.3)"
      },
      "active": {
        "background": "#CC7000",
        "transform": "translateY(0)"
      },
      "focus": {
        "outline": "2px solid #FF8C00",
        "outlineOffset": "2px"
      }
    },
    "secondary": {
      "background": "#F7FAFC",
      "color": "#2D3748",
      "border": "1px solid #E2E8F0",
      "hover": {
        "background": "#EDF2F7",
        "borderColor": "#CBD5E0"
      }
    },
    "ghost": {
      "background": "transparent",
      "color": "#0066CC",
      "border": "none",
      "hover": {
        "background": "#EBF8FF"
      }
    },
    "icon": {
      "background": "#FFFFFF",
      "color": "#2D3748",
      "border": "1px solid #E2E8F0",
      "hover": {
        "background": "#F7FAFC",
        "color": "#0066CC"
      }
    },
    "borderRadius": "8px",
    "fontWeight": 600,
    "textTransform": "none",
    "shadow": {
      "default": "0 1px 3px rgba(0, 0, 0, 0.1)",
      "hover": "0 4px 12px rgba(0, 0, 0, 0.15)"
    }
  },
  "darkMode": {
    "enabled": true,
    "trigger": "system-preference",
    "manualToggle": false,
    "colors": {
      "background": "#1A202C",
      "surface": "#2D3748",
      "text": "#F7FAFC",
      "textMuted": "#A0AEC0",
      "border": "#4A5568",
      "primary": "#4DA6FF",
      "accent": "#FFB347",
      "buttonPrimary": {
        "background": "#FF8C00",
        "color": "#FFFFFF"
      },
      "buttonSecondary": {
        "background": "#4A5568",
        "color": "#F7FAFC",
        "border": "1px solid #718096"
      }
    },
    "override": {
      "headerGradient": "linear-gradient(135deg, #1A202C 0%, #2D3748 100%)",
      "inputBackground": "#2D3748",
      "messageBubbleUser": "#0066CC",
      "messageBubbleAI": "#2D3748"
    }
  },
  "industrySpecific": {
    "antennaInstaller": {
      "customElements": {
        "signalIndicator": {
          "enabled": true,
          "position": "header",
          "display": "realtime-signal-strength",
          "icon": "wifi-signal-4",
          "color": "#38A169",
          "label": "Online Now"
        },
        "serviceAreas": {
          "enabled": true,
          "display": "suburb-tags",
          "position": "quick-replies",
          "format": "pill",
          "example": ["Eastern Suburbs", "Northern Beaches", "North Shore"]
        },
        "servicesList": {
          "enabled": true,
          "position": "menu",
          "items": [
            "TV Antenna Installation",
            "Antenna Repairs",
            "TV Wall Mounting",
            "Signal Boosting",
            "Extra TV Points",
            "Data Cabling"
          ]
        },
        "bookingFeatures": {
          "enabled": true,
          "options": {
            "sameDayService": true,
            "afterHours": false,
            "weekends": true,
            "emergencyCallout": true
          }
        },
        "trustBadges": {
          "enabled": true,
          "position": "footer",
          "badges": [
            "Licensed & Insured",
            "Same-Day Service",
            "100% Satisfaction",
            "Local Technician"
          ]
        }
      },
      "conversationFlows": {
        "quoteRequest": {
          "trigger": "get a quote|quote|price|cost|how much",
          "questions": [
            "What service do you need? (Antenna install, repair, wall mount)",
            "What type of property? (House, unit, townhouse)",
            "How many TV points?",
            "What's your suburb?",
            "Any access issues? (Locked gate, steep roof, etc)"
          ]
        },
        "booking": {
          "trigger": "book|appointment|service",
          "questions": [
            "What type of service?",
            "What's your address?",
            "What day works best?",
            "Morning or afternoon?",
            "Phone number for confirmation?"
          ]
        },
        "troubleshooting": {
          "trigger": "problem|issue|not working|signal|pixelating|freezing",
          "questions": [
            "How long has the issue been happening?",
            "Is it all channels or just some?",
            "Have you tried rescanning?",
            "Any recent storms or work done on the roof?"
          ]
        }
      },
      "vocabulary": {
        "preferredTerms": {
          "antenna": "aerial",
          "technician": "tech",
          "appointment": "job",
          "quote": "quote",
          "customer": "mate"
        },
        "avoidTerms": {
          "user": "customer",
          "client": "mate",
          "purchase": "book"
        },
        "australianisms": [
          "Sorted",
          "No worries",
          "Mate",
          "Cheers",
          "Will do",
          "Fair dinkum"
        ]
      }
    }
  },
  "cssCustomProperties": {
    "scope": ":root",
    "prefix": "widget",
    "variables": {
      "--widget-primary": "#0066CC",
      "--widget-secondary": "#2D3748",
      "--widget-accent": "#FF8C00",
      "--widget-bg": "#FFFFFF",
      "--widget-surface": "#F7FAFC",
      "--widget-text": "#1A202C",
      "--widget-text-muted": "#718096",
      "--widget-border": "#E2E8F0",
      "--widget-success": "#38A169",
      "--widget-error": "#E53E3E",
      "--widget-shadow": "0 4px 20px rgba(0, 0, 0, 0.15)",
      "--widget-shadow-hover": "0 8px 30px rgba(0, 0, 0, 0.2)",
      "--widget-radius": "16px",
      "--widget-radius-sm": "8px",
      "--widget-radius-full": "9999px",
      "--widget-font": "'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif",
      "--widget-transition": "all 0.2s ease",
      "--widget-z-index": "9999",
      "--widget-header-bg": "linear-gradient(135deg, #0066CC 0%, #004499 100%)",
      "--widget-header-text": "#FFFFFF",
      "--widget-bubble-user": "#0066CC",
      "--widget-bubble-user-text": "#FFFFFF",
      "--widget-bubble-ai": "#F7FAFC",
      "--widget-bubble-ai-text": "#1A202C",
      "--widget-input-bg": "#FFFFFF",
      "--widget-input-border": "#E2E8F0",
      "--widget-input-focus": "#0066CC",
      "--widget-scrollbar-track": "#F7FAFC",
      "--widget-scrollbar-thumb": "#CBD5E0",
      "--widget-scrollbar-thumb-hover": "#A0AEC0"
    },
    "darkModeVariables": {
      "--widget-bg-dark": "#1A202C",
      "--widget-surface-dark": "#2D3748",
      "--widget-text-dark": "#F7FAFC",
      "--widget-text-muted-dark": "#A0AEC0",
      "--widget-border-dark": "#4A5568",
      "--widget-bubble-ai-dark": "#2D3748",
      "--widget-bubble-ai-text-dark": "#


Response:
```json
{
  "widgetConfig": {
    "version": "1.0.0",
    "businessType": "appliance_repairer",
    "theme": "light"
  },

  "colors": {
    "primary": "#1E3A5F",
    "primaryHover": "#152B45",
    "secondary": "#F5F7FA",
    "accent": "#FF6B35",
    "accentHover": "#E55A2B",
    "textPrimary": "#1A1A1A",
    "textSecondary": "#5A5A5A",
    "textOnAccent": "#FFFFFF",
    "border": "#E0E4E8",
    "success": "#28A745",
    "error": "#DC3545",
    "notification": "#FF6B35"
  },

  "darkMode": {
    "primary": "#2D4A6F",
    "secondary": "#1E1E1E",
    "background": "#121212",
    "surface": "#1E1E1E",
    "textPrimary": "#F5F5F5",
    "textSecondary": "#B0B0B0",
    "border": "#333333",
    "accent": "#FF7F50"
  },

  "position": {
    "placement": "bottom-right",
    "marginX": 24,
    "marginY": 24,
    "zIndex": 9999,
    "desktop": {
      "alignment": "flex-end"
    },
    "mobile": {
      "placement": "bottom-right",
      "marginX": 16,
      "marginY": 16,
      "fullWidth": false
    }
  },

  "dimensions": {
    "collapsed": {
      "width": 64,
      "height": 64,
      "borderRadius": 32
    },
    "expanded": {
      "desktop": {
        "width": 380,
        "maxHeight": 600,
        "borderRadius": 16
      },
      "mobile": {
        "width": "calc(100vw - 32px)",
        "maxHeight": "85vh",
        "borderRadius": 16,
        "bottom": 80
      }
    },
    "header": {
      "height": 64
    },
    "inputArea": {
      "height": 72
    }
  },

  "avatar": {
    "type": "icon",
    "iconName": "tools",
    "fallbackType": "initials",
    "initials": "AR",
    "size": 40,
    "backgroundColor": "#FF6B35",
    "iconColor": "#FFFFFF",
    "showBadge": true,
    "badgeType": "pulse",
    "badgeColor": "#28A745",
    "description": "Friendly appliance repair technician with a wrench icon, modern flat design style"
  },

  "typography": {
    "fontFamily": "-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif",
    "header": {
      "fontSize": 18,
      "fontWeight": 600,
      "lineHeight": 1.3
    },
    "body": {
      "fontSize": 15,
      "fontWeight": 400,
      "lineHeight": 1.5
    },
    "caption": {
      "fontSize": 12,
      "fontWeight": 400,
      "lineHeight": 1.4
    },
    "button": {
      "fontSize": 15,
      "fontWeight": 600,
      "lineHeight": 1
    },
    "input": {
      "fontSize": 15,
      "fontWeight": 400
    }
  },

  "welcomeMessage": {
    "enabled": true,
    "text": "G'day! 👋 I'm your AI assistant. I can help you book a repair, check our availability, or answer questions about our services. What can I do for you today?",
    "delay": 800,
    "typewriter": true,
    "typeSpeed": 30,
    "voiceEnabled": true,
    "voiceLanguage": "en-AU"
  },

  "animations": {
    "entry": {
      "enabled": true,
      "type": "slideUpFade",
      "duration": 400,
      "easing": "cubic-bezier(0.68, -0.55, 0.265, 1.55)",
      "delay": 300
    },
    "idle": {
      "enabled": true,
      "type": "subtleBounce",
      "interval": 4000,
      "duration": 600,
      "translateY": 3
    },
    "notification": {
      "enabled": true,
      "type": "pulse",
      "color": "#FF6B35",
      "duration": 2000,
      "interval": 3000,
      "scale": [1, 1.1, 1]
    },
    "hover": {
      "enabled": true,
      "scale": 1.05,
      "duration": 200
    },
    "exit": {
      "enabled": true,
      "type": "fadeOut",
      "duration": 200
    }
  },

  "buttons": {
    "primary": {
      "backgroundColor": "#FF6B35",
      "backgroundColorHover": "#E55A2B",
      "textColor": "#FFFFFF",
      "borderRadius": 10,
      "border": "none",
      "paddingX": 20,
      "paddingY": 12,
      "boxShadow": "0 4px 12px rgba(255, 107, 53, 0.3)",
      "boxShadowHover": "0 6px 16px rgba(255, 107, 53, 0.4)",
      "transition": "all 0.2s ease"
    },
    "secondary": {
      "backgroundColor": "transparent",
      "backgroundColorHover": "#F5F7FA",
      "textColor": "#1E3A5F",
      "borderRadius": 10,
      "border": "1.5px solid #1E3A5F",
      "paddingX": 20,
      "paddingY": 12,
      "transition": "all 0.2s ease"
    },
    "quickReply": {
      "backgroundColor": "#F0F4F8",
      "backgroundColorHover": "#E1E8EF",
      "textColor": "#1E3A5F",
      "borderRadius": 20,
      "border": "none",
      "paddingX": 16,
      "paddingY": 10,
      "fontSize": 14,
      "transition": "all 0.2s ease"
    },
    "close": {
      "backgroundColor": "transparent",
      "textColor": "#5A5A5A",
      "size": 32,
      "borderRadius": 16,
      "hoverBackground": "#F0F0F0"
    },
    "callToAction": {
      "backgroundColor": "#28A745",
      "textColor": "#FFFFFF",
      "borderRadius": 10,
      "icon": "phone",
      "showIcon": true,
      "pulse": true
    }
  },

  "inputFields": {
    "backgroundColor": "#FFFFFF",
    "borderColor": "#E0E4E8",
    "borderColorFocus": "#FF6B35",
    "borderRadius": 12,
    "borderWidth": 1.5,
    "paddingX": 16,
    "paddingY": 12,
    "placeholderColor": "#9CA3AF",
    "textColor": "#1A1A1A",
    "fontSize": 15,
    "height": 48,
    "boxShadow": "inset 0 1px 3px rgba(0, 0, 0, 0.05)",
    "boxShadowFocus": "0 0 0 3px rgba(255, 107, 53, 0.15)"
  },

  "messages": {
    "user": {
      "backgroundColor": "#1E3A5F",
      "textColor": "#FFFFFF",
      "borderRadius": "18px 18px 4px 18px",
      "alignment": "flex-end",
      "maxWidth": "85%"
    },
    "assistant": {
      "backgroundColor": "#F5F7FA",
      "textColor": "#1A1A1A",
      "borderRadius": "18px 18px 18px 4px",
      "alignment": "flex-start",
      "maxWidth": "85%",
      "showAvatar": true
    },
    "system": {
      "backgroundColor": "#FFF3CD",
      "textColor": "#856404",
      "borderRadius": 12,
      "alignment": "center",
      "fontSize": 13,
      "icon": "info"
    },
    "timestamp": {
      "fontSize": 11,
      "color": "#9CA3AF",
      "show": true,
      "format": "relative"
    }
  },

  "industrySpecific": {
    "applianceRepair": {
      "quickReplyButtons": [
        {
          "label": "Fridge Not Cooling",
          "value": "fridge_repair",
          "icon": "snowflake"
        },
        {
          "label": "Washing Machine",
          "value": "washing_machine",
          "icon": "waves"
        },
        {
          "label": "Dishwasher Issue",
          "value": "dishwasher",
          "icon": "sink"
        },
        {
          "label": "Oven Not Heating",
          "value": "oven_repair",
          "icon": "flame"
        },
        {
          "label": "Air Con Problem",
          "value": "ac_repair",
          "icon": "wind"
        },
        {
          "label": "Other Appliance",
          "value": "other",
          "icon": "more"
        }
      ],
      "serviceAreas": [
        "Sydney Metro",
        "Melbourne Metro",
        "Brisbane Metro",
        "Perth Metro",
        "Adelaide Metro",
        "Gold Coast",
        "Newcastle",
        "Canberra"
      ],
      "bookingFields": [
        "appliance_type",
        "brand",
        "model_number",
        "issue_description",
        "preferred_date",
        "preferred_time",
        "address",
        "contact_name",
        "contact_phone"
      ],
      "urgencyLevels": [
        { "label": "Not Urgent", "value": "low", "color": "#28A745" },
        { "label": "When Available", "value": "medium", "color": "#FFC107" },
        { "label": "Urgent", "value": "high", "color": "#DC3545" }
      ],
      "brandsServiced": [
        "Samsung",
        "LG",
        "Whirlpool",
        "Bosch",
        "Electrolux",
        "Fisher & Paykel",
        "Miele",
        "Westinghouse",
        "Simpson",
        "Hisense"
      ],
      "icons": {
        "fridge": "snowflake",
        "washingMachine": "waves",
        "dishwasher": "sink",
        "oven": "flame",
        "airCon": "wind",
        "dryer": "wind",
        "microwave": "microwave",
        "cooktop": "flame",
        "rangehood": "wind",
        "waterHeater": "droplet"
      }
    },
    "badges": {
      "showLicence": true,
      "licenceText": "Licensed & Insured",
      "showWarranty": true,
      "warrantyText": "12-Month Warranty",
      "showAvailability": true,
      "availabilityText": "Same-Day Service Available"
    },
    "sounds": {
      "newMessage": {
        "enabled": false,
        "volume": 0.3,
        "sound": "subtle_chime"
      }
    }
  },

  "cssCustomProperties": {
    "--widget-primary": "#1E3A5F",
    "--widget-primary-hover": "#152B45",
    "--widget-secondary": "#F5F7FA",
    "--widget-accent": "#FF6B35",
    "--widget-accent-hover": "#E55A2B",
    "--widget-text-primary": "#1A1A1A",
    "--widget-text-secondary": "#5A5A5A",
    "--widget-text-on-accent": "#FFFFFF",
    "--widget-border": "#E0E4E8",
    "--widget-success": "#28A745",
    "--widget-error": "#DC3545",
    "--widget-shadow": "0 8px 32px rgba(30, 58, 95, 0.15)",
    "--widget-shadow-hover": "0 12px 40px rgba(30, 58, 95, 0.2)",
    "--widget-font-family": "-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif",
    "--widget-radius-sm": "8px",
    "--widget-radius-md": "12px",
    "--widget-radius-lg": "16px",
    "--widget-radius-xl": "24px",
    "--widget-radius-full": "9999px",
    "--widget-transition": "all 0.25s cubic-bezier(0.4, 0, 0.2, 1)",
    "--widget-z-index": "9999"
  },

  "darkModeCssProperties": {
    "--widget-primary": "#2D4A6F",
    "--widget-secondary": "#1E1E1E",
    "--widget-background": "#121212",
    "--widget-surface": "#1E1E1E",
    "--widget-text-primary": "#F5F5F5",
    "--widget-text-secondary": "#B0B0B0",
    "--widget-border": "#333333",
    "--widget-accent": "#FF7F50",
    "--widget-shadow": "0 8px 32px rgba(0, 0, 0, 0.3)"
  },

  "metadata": {
    "configName": "Appliance Repairer Widget Theme",
    "lastUpdated": "2025-01-15",
    "author": "Sunaiva",
    "targetPlatform": "web",
    "supportedLanguages": ["en-AU"],
    "accessibility": {
      "ariaLabels": true,
      "keyboardNavigation": true,
      "screenReaderAnnouncements": true,
      "focusTrap": true,
      "reducedMotion": true
    }
  }
}
```


Response:
```json
{
  "widgetConfig": {
    "version": "1.0.0",
    "businessType": "awning_installer",
    "targetMarket": "Australian trade - shade solutions"
  },

  "colors": {
    "primary": {
      "hex": "#C67C4E",
      "name": "Terracotta Bronze",
      "usage": "Main brand color, header backgrounds, primary buttons",
      "cssVariable": "--widget-primary"
    },
    "secondary": {
      "hex": "#2C3E50",
      "name": "Slate Charcoal",
      "usage": "Text, icons, borders, secondary elements",
      "cssVariable": "--widget-secondary"
    },
    "accent": {
      "hex": "#E8A87C",
      "name": "Warm Sand",
      "usage": "Highlights, notification badges, hover states",
      "cssVariable": "--widget-accent"
    },
    "background": {
      "light": {
        "hex": "#FDFBF9",
        "name": "Warm White",
        "cssVariable": "--widget-bg-light"
      },
      "dark": {
        "hex": "#1A1A1A",
        "name": "Carbon Black",
        "cssVariable": "--widget-bg-dark"
      }
    },
    "surface": {
      "light": "#FFFFFF",
      "dark": "#2D2D2D",
      "cssVariable": "--widget-surface"
    },
    "text": {
      "light": "#2C3E50",
      "dark": "#F5F5F5",
      "muted": {
        "light": "#6B7280",
        "dark": "#9CA3AF"
      },
      "cssVariable": "--widget-text"
    },
    "success": {
      "hex": "#22C55E",
      "name": "Green Tick",
      "cssVariable": "--widget-success"
    },
    "error": {
      "hex": "#EF4444",
      "name": "Red Alert",
      "cssVariable": "--widget-error"
    }
  },

  "typography": {
    "fontFamily": {
      "primary": "'DM Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif",
      "fallback": "system-ui, sans-serif",
      "cssVariable": "--widget-font-family"
    },
    "sizes": {
      "header": {
        "desktop": "18px",
        "mobile": "16px",
        "weight": "600",
        "cssVariable": "--widget-font-header"
      },
      "body": {
        "desktop": "15px",
        "mobile": "14px",
        "weight": "400",
        "cssVariable": "--widget-font-body"
      },
      "caption": {
        "desktop": "12px",
        "mobile": "11px",
        "weight": "400",
        "cssVariable": "--widget-font-caption"
      },
      "button": {
        "desktop": "15px",
        "mobile": "14px",
        "weight": "500",
        "cssVariable": "--widget-font-button"
      }
    },
    "lineHeights": {
      "tight": "1.2",
      "normal": "1.5",
      "relaxed": "1.6"
    }
  },

  "dimensions": {
    "collapsed": {
      "width": "64px",
      "height": "64px",
      "cssVariable": "--widget-collapsed-size"
    },
    "expanded": {
      "desktop": {
        "width": "380px",
        "height": "520px",
        "cssVariable": "--widget-expanded-desktop"
      },
      "mobile": {
        "width": "calc(100vw - 32px)",
        "maxWidth": "380px",
        "height": "calc(100vh - 100px)",
        "maxHeight": "600px",
        "cssVariable": "--widget-expanded-mobile"
      }
    },
    "borderRadius": {
      "button": "12px",
      "widget": "20px",
      "avatar": "50%",
      "cssVariable": "--widget-border-radius"
    }
  },

  "position": {
    "placement": "bottom-right",
    "offset": {
      "desktop": { "x": "24px", "y": "24px" },
      "mobile": { "x": "16px", "y": "16px" }
    },
    "zIndex": "9999",
    "reasoning": "Bottom-right is standard for chat widgets. Right-handed users (majority) can easily reach. On mobile, bottom-right ensures thumb accessibility while avoiding home indicator. Stays out of navigation menus typically found at top or left."
  },

  "avatar": {
    "style": "friendly_professional",
    "description": "A warm, approachable illustrated character - not a robot. Think: tradie next door. Short dark hair, wearing a casual work shirt (maybe with a subtle awning/shade pattern hint), friendly smile, wearing a cap or sunglasses slightly pushed up - classic Aussie tradie look. Gender-neutral or male presenting.",
    "iconType": "custom_illustration",
    "fallbackIcon": "chat_bubble",
    "size": {
      "collapsed": "64px",
      "header": "44px"
    },
    "animation": "subtle_bob",
    "accessibility": {
      "altText": "Chat with our shade specialist",
      "role": "img"
    }
  },

  "welcomeMessage": {
    "audioEnabled": true,
    "text": "G'day! 👋 She's the Sunaiva widget for [Business Name]. I can help you with awning quotes, job bookings, or answer any questions about our shade solutions. What can I do for you today?",
    "variants": {
      "afterHours": "G'day! Thanks for reaching out. We're currently closed but leave us a message and we'll get back to you ASAP. Or if you need an emergency repair, let me know and I can pass that straight through.",
      "returningVisitor": "Welcome back! Still need a hand with those awnings? Let me know if you want to pick up where we left off or if you've got new questions."
    },
    "displayOptions": {
      "showTypingIndicator": true,
      "typingDelay": 800,
      "autoOpenOnFirstVisit": true,
      "autoOpenDelay": 4000
    }
  },

  "animations": {
    "entry": {
      "type": "spring",
      "duration": "400ms",
      "easing": "cubic-bezier(0.34, 1.56, 0.64, 1)",
      "properties": ["transform", "opacity"],
      "description": "Widget pops open with a satisfying bounce - like a toolbox lid"
    },
    "exit": {
      "type": "ease-out",
      "duration": "250ms",
      "properties": ["transform", "opacity"]
    },
    "idle": {
      "type": "gentle_pulse",
      "duration": "2s",
      "interval": "4s",
      "properties": ["box-shadow"],
      "description": "Subtle glow pulse on collapsed state to attract attention without being annoying"
    },
    "notification": {
      "type": "ring_bounce",
      "duration": "600ms",
      "properties": ["transform"],
      "trigger": "new_message"
    },
    "typing": {
      "type": "bouncing_dots",
      "duration": "1000ms",
      "dotCount": 3,
      "color": "accent"
    },
    "transitions": {
      "hover": "200ms ease",
      "expand": "300ms cubic-bezier(0.4, 0, 0.2, 1)",
      "color": "150ms ease"
    }
  },

  "buttons": {
    "primary": {
      "background": "var(--widget-primary)",
      "color": "#FFFFFF",
      "hover": {
        "background": "#B36B42",
        "transform": "translateY(-1px)",
        "boxShadow": "0 4px 12px rgba(198, 124, 78, 0.3)"
      },
      "active": {
        "background": "#A05E39",
        "transform": "translateY(0)"
      },
      "border": "none",
      "padding": {
        "vertical": "12px",
        "horizontal": "20px"
      }
    },
    "secondary": {
      "background": "transparent",
      "color": "var(--widget-primary)",
      "border": "2px solid var(--widget-primary)",
      "hover": {
        "background": "rgba(198, 124, 78, 0.08)"
      }
    },
    "ghost": {
      "background": "transparent",
      "color": "var(--widget-text-muted)",
      "hover": {
        "background": "rgba(0, 0, 0, 0.04)",
        "color": "var(--widget-text)"
      }
    },
    "close": {
      "size": "32px",
      "background": "transparent",
      "color": "var(--widget-text-muted)",
      "hover": {
        "background": "rgba(0, 0, 0, 0.06)",
        "color": "var(--widget-text)"
      }
    },
    "minimize": {
      "size": "32px",
      "iconSize": "20px"
    },
    "callToAction": {
      "quickReply": {
        "background": "#F3F4F6",
        "color": "var(--widget-text)",
        "hover": {
          "background": "#E5E7EB",
          "borderColor": "var(--widget-primary)"
        },
        "borderRadius": "20px",
        "padding": "10px 16px"
      }
    }
  },

  "darkMode": {
    "enabled": true,
    "trigger": "system_preference",
    "manualToggle": true,
    "overrideSelector": "[data-theme=\"dark\"]",
    "variants": {
      "colors": {
        "surface": "#2D2D2D",
        "background": "#1A1A1A",
        "text": "#F5F5F5",
        "textMuted": "#9CA3AF",
        "buttonQuickReply": "#3D3D3D"
      },
      "shadows": {
        "elevated": "0 8px 32px rgba(0, 0, 0, 0.4)",
        "subtle": "0 2px 8px rgba(0, 0, 0, 0.2)"
      },
      "border": "1px solid rgba(255, 255, 255, 0.08)"
    },
    "invertLogic": {
      "logo": true,
      "icons": false,
      "description": "Most icons are fine as-is, but brand logos may need inverting"
    }
  },

  "industrySpecificElements": {
    "awningInstaller": {
      "specializedQuickReplies": [
        {
          "label": "Get a Quote",
          "value": "I want a quote for a new awning",
          "icon": "calculator"
        },
        {
          "label": "Book Installation",
          "value": "I'd like to book an installation",
          "icon": "calendar"
        },
        {
          "label": "Repair Quote",
          "value": "I need a repair for my existing awning",
          "icon": "wrench"
        },
        {
          "label": "Types of Awnings",
          "value": "What awning types do you offer?",
          "icon": "grid"
        }
      ],
      "knowledgeBase": {
        "awningTypes": [
          "Roller blinds",
          "Zipscreen blinds",
          "Aluminium louvres",
          "Retractable roofs",
          "Fixed shade sails",
          "Motorised awnings"
        ],
        "commonQuestions": [
          "How long does installation take?",
          "Do you do commercial awnings?",
          "What's the warranty?",
          "Can I see samples?",
          "Finance options available?"
        ]
      },
      "visualTheme": {
        "pattern": "subtle_sunburst",
        "patternOpacity": 0.04,
        "description": "Very subtle radial sunburst pattern in background - hints at shade/sun protection without being busy"
      },
      "seasonalPrompts": {
        "summer": {
          "active": true,
          "months": ["Nov", "Dec", "Jan", "Feb"],
          "message": "Beat the heat! Get your outdoor area ready for summer ☀",
          "quickReply": "Summer Special"
        },
        "winter": {
          "active": false,
          "message": "Transform your patio for year-round entertaining"
        }
      },
      "appointmentTypes": [
        "In-home measure & quote (free)",
        "Showroom appointment",
        "Commercial site inspection",
        "Repair assessment"
      ],
      "serviceAreas": {
        "includeInWidget": true,
        "format": "Suburb dropdown or auto-detect"
      }
    },
    "brandingConsistency": {
      "matchWebsite": true,
      "extractionTarget": ".header, .navbar, .footer",
      "fallbackColors": {
        "primary": "#C67C4E",
        "secondary": "#2C3E50"
      }
    },
    "localisation": {
      "timezone": "Australia/Brisbane",
      "businessHours": {
        "default": {
          "monday": { "open": "07:00", "close": "17:00" },
          "tuesday": { "open": "07:00", "close": "17:00" },
          "wednesday": { "open": "07:00", "close": "17:00" },
          "thursday": { "open": "07:00", "close": "17:00" },
          "friday": { "open": "07:00", "close": "16:00" },
          "saturday": { "open": "08:00", "close": "12:00" },
          "sunday": null
        },
        "displayFormat": "24h",
        "displayExample": "7:00am - 5:00pm"
      },
      "dateFormat": "DD/MM/YYYY",
      "phoneFormat": "+61 4XX XXX XXX"
    }
  },

  "accessibility": {
    "keyboardNavigation": {
      "enabled": true,
      "tabOrder": ["toggle", "close", "input", "buttons"],
      "focusVisible": {
        "color": "var(--widget-primary)",
        "width": "2px",
        "style": "solid"
      }
    },
    "screenReader": {
      "announceNewMessages": true,
      "liveRegion": "polite",
      "expandedAriaLabel": "Chat widget, expanded",
      "collapsedAriaLabel": "Chat with us, collapsed"
    },
    "contrast": {
      "minimumRatio": "4.5:1",
      "enhancedRatio": "7:1"
    },
    "reducedMotion": {
      "enabled": true,
      "preferenceDetection": "prefers-reduced-motion"
    }
  },

  "cssCustomProperties": {
    "scope": ":root",
    "prefix": "widget",
    "variables": {
      "--widget-primary": "#C67C4E",
      "--widget-secondary": "#2C3E50",
      "--widget-accent": "#E8A87C",
      "--widget-bg-light": "#FDFBF9",
      "--widget-bg-dark": "#1A1A1A",
      "--widget-surface": "#FFFFFF",
      "--widget-surface-dark": "#2D2D2D",
      "--widget-text": "#2C3E50",
      "--widget-text-light": "#F5F5F5",
      "--widget-text-muted": "#6B7280",
      "--widget-success": "#22C55E",
      "--widget-error": "#EF4444",
      "--widget-font-family": "'DM Sans', system-ui, sans-serif",
      "--widget-font-header": "18px/1.2 'DM Sans', sans-serif",
      "--widget-font-body": "15px/1.5 'DM Sans', sans-serif",
      "--widget-font-caption": "12px/1.4 'DM Sans', sans-serif",
      "--widget-font-button": "500 15px/1 'DM Sans', sans-serif",
      "--widget-collapsed-size": "64px",
      "--widget-expanded-width": "380px",
      "--widget-expanded-height": "520px",
      "--widget-border-radius": "20px",
      "--widget-border-radius-button": "12px",
      "--widget-shadow-elevated": "0 8px 32px rgba(0, 0, 0, 0.15)",
      "--widget-shadow-subtle": "0 2px 8px rgba(0, 0, 0, 0.08)",
      "--widget-z-index": "9999",
      "--widget-transition-fast": "150ms ease",
      "--widget-transition-normal": "250ms ease",
      "--widget-transition-slow": "400ms cubic-bezier(0.4, 0, 0.2, 1)"
    },
    "darkModeVariables": {
      "--widget-surface": "#2D2D2D",
      "--widget-bg-light": "#1A1A1A",
      "--widget-text": "#F5F5F5",
      "--widget-text-muted": "#9CA3AF",
      "--widget-shadow-elevated": "0 8px 32px rgba(0, 0, 0, 0.4)",
      "--widget-shadow-subtle": "0 2px 8px rgba(0, 0, 0, 0.2)"
    }
  },

  "metadata": {
    "configName": "A