/* Lucide-style icon set, lightweight inline SVGs */

const Icon = ({ children, size = 18, stroke = 1.6, className = "", style = {} }) => (
  <svg
    width={size}
    height={size}
    viewBox="0 0 24 24"
    fill="none"
    stroke="currentColor"
    strokeWidth={stroke}
    strokeLinecap="round"
    strokeLinejoin="round"
    className={className}
    style={style}
    aria-hidden="true"
  >
    {children}
  </svg>
);

const I = {
  Home: (p) => (<Icon {...p}><path d="M3 11l9-8 9 8"/><path d="M5 10v10h14V10"/></Icon>),
  Building: (p) => (<Icon {...p}><path d="M3 21h18"/><path d="M5 21V7l8-4v18"/><path d="M19 21V11l-6-4"/><path d="M9 9h.01"/><path d="M9 13h.01"/><path d="M9 17h.01"/></Icon>),
  Users: (p) => (<Icon {...p}><path d="M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2"/><circle cx="9" cy="7" r="4"/><path d="M22 21v-2a4 4 0 0 0-3-3.87"/><path d="M16 3.13a4 4 0 0 1 0 7.75"/></Icon>),
  Bed: (p) => (<Icon {...p}><path d="M2 9v11"/><path d="M22 20V9"/><path d="M2 13h20"/><path d="M2 16h20"/><path d="M6 9V6a2 2 0 0 1 2-2h8a2 2 0 0 1 2 2v3"/></Icon>),
  Chef: (p) => (<Icon {...p}><path d="M6 17h12"/><path d="M6 21h12"/><path d="M9 5a3 3 0 1 0-3 5v7h12V10a3 3 0 1 0-3-5 3 3 0 0 0-6 0z"/></Icon>),
  Wrench: (p) => (<Icon {...p}><path d="M14.7 6.3a4 4 0 1 1 5 5l-1.4-1.4a2 2 0 0 0-2.8 0L4 21l-3-3L12.3 6.7a2 2 0 0 0 0-2.8z"/></Icon>),
  Hammer: (p) => (<Icon {...p}><path d="M15 6l3 3"/><path d="M19.7 9.3a2 2 0 0 1-2.8 0l-4.2-4.2a2 2 0 0 1 0-2.8l1.4-1.4a2 2 0 0 1 2.8 0l4.2 4.2a2 2 0 0 1 0 2.8l-1.4 1.4z"/><path d="M3 21l9-9"/></Icon>),
  Plus: (p) => (<Icon {...p}><path d="M12 5v14"/><path d="M5 12h14"/></Icon>),
  Settings: (p) => (<Icon {...p}><circle cx="12" cy="12" r="3"/><path d="M19.4 15a1.7 1.7 0 0 0 .3 1.8l.1.1a2 2 0 1 1-2.8 2.8l-.1-.1a1.7 1.7 0 0 0-1.8-.3 1.7 1.7 0 0 0-1 1.5V21a2 2 0 1 1-4 0v-.1a1.7 1.7 0 0 0-1.1-1.5 1.7 1.7 0 0 0-1.8.3l-.1.1a2 2 0 1 1-2.8-2.8l.1-.1a1.7 1.7 0 0 0 .3-1.8 1.7 1.7 0 0 0-1.5-1H3a2 2 0 1 1 0-4h.1a1.7 1.7 0 0 0 1.5-1.1 1.7 1.7 0 0 0-.3-1.8l-.1-.1a2 2 0 1 1 2.8-2.8l.1.1a1.7 1.7 0 0 0 1.8.3H9a1.7 1.7 0 0 0 1-1.5V3a2 2 0 1 1 4 0v.1a1.7 1.7 0 0 0 1 1.5 1.7 1.7 0 0 0 1.8-.3l.1-.1a2 2 0 1 1 2.8 2.8l-.1.1a1.7 1.7 0 0 0-.3 1.8V9a1.7 1.7 0 0 0 1.5 1H21a2 2 0 1 1 0 4h-.1a1.7 1.7 0 0 0-1.5 1z"/></Icon>),
  Bell: (p) => (<Icon {...p}><path d="M6 8a6 6 0 0 1 12 0c0 7 3 9 3 9H3s3-2 3-9"/><path d="M10.3 21a1.94 1.94 0 0 0 3.4 0"/></Icon>),
  Calendar: (p) => (<Icon {...p}><rect x="3" y="4" width="18" height="18" rx="2"/><path d="M16 2v4"/><path d="M8 2v4"/><path d="M3 10h18"/></Icon>),
  CalAlert: (p) => (<Icon {...p}><rect x="3" y="4" width="18" height="18" rx="2"/><path d="M16 2v4"/><path d="M8 2v4"/><path d="M3 10h18"/><path d="M12 14v3"/><circle cx="12" cy="19.5" r="0.6" fill="currentColor"/></Icon>),
  Chevron: (p) => (<Icon {...p}><path d="M6 9l6 6 6-6"/></Icon>),
  ChevR: (p) => (<Icon {...p}><path d="M9 18l6-6-6-6"/></Icon>),
  ChevL: (p) => (<Icon {...p}><path d="M15 18l-6-6 6-6"/></Icon>),
  X: (p) => (<Icon {...p}><path d="M18 6L6 18"/><path d="M6 6l12 12"/></Icon>),
  Expand: (p) => (<Icon {...p}><path d="M15 3h6v6"/><path d="M9 21H3v-6"/><path d="M21 3l-7 7"/><path d="M3 21l7-7"/></Icon>),
  Sun: (p) => (<Icon {...p}><circle cx="12" cy="12" r="4"/><path d="M12 2v2"/><path d="M12 20v2"/><path d="M5 5l1.4 1.4"/><path d="M17.6 17.6L19 19"/><path d="M2 12h2"/><path d="M20 12h2"/><path d="M5 19l1.4-1.4"/><path d="M17.6 6.4L19 5"/></Icon>),
  Cloud: (p) => (<Icon {...p}><path d="M17 18a4 4 0 1 0-3-7 6 6 0 0 0-11 3 5 5 0 0 0 5 5h9a3 3 0 0 0 0-6"/></Icon>),
  AlertCircle: (p) => (<Icon {...p}><circle cx="12" cy="12" r="10"/><path d="M12 8v5"/><circle cx="12" cy="16" r="0.6" fill="currentColor"/></Icon>),
  CheckCircle: (p) => (<Icon {...p}><circle cx="12" cy="12" r="10"/><path d="M9 12l2 2 4-4"/></Icon>),
  CircleEmpty: (p) => (<Icon {...p}><circle cx="12" cy="12" r="10"/></Icon>),
  Clock: (p) => (<Icon {...p}><circle cx="12" cy="12" r="10"/><path d="M12 6v6l4 2"/></Icon>),
  Hourglass: (p) => (<Icon {...p}><path d="M6 2h12"/><path d="M6 22h12"/><path d="M6 2v6l6 4-6 4v6"/><path d="M18 2v6l-6 4 6 4v6"/></Icon>),
  Check: (p) => (<Icon {...p}><path d="M5 12l5 5L20 7"/></Icon>),
  Paperclip: (p) => (<Icon {...p}><path d="M21 12.5L12.5 21a5.5 5.5 0 0 1-7.8-7.8L13 5a4 4 0 0 1 5.7 5.7l-8.5 8.5a2.5 2.5 0 0 1-3.5-3.5L14 7.5"/></Icon>),
  Send: (p) => (<Icon {...p}><path d="M22 2L11 13"/><path d="M22 2l-7 20-4-9-9-4z"/></Icon>),
  Play: (p) => (<Icon {...p}><polygon points="6 4 20 12 6 20 6 4"/></Icon>),
  MapPin: (p) => (<Icon {...p}><path d="M20 10c0 6-8 12-8 12s-8-6-8-12a8 8 0 0 1 16 0z"/><circle cx="12" cy="10" r="3"/></Icon>),
  User: (p) => (<Icon {...p}><circle cx="12" cy="8" r="4"/><path d="M4 21a8 8 0 0 1 16 0"/></Icon>),
  Flag: (p) => (<Icon {...p}><path d="M4 22V4"/><path d="M4 4h14l-3 5 3 5H4"/></Icon>),
  Coffee: (p) => (<Icon {...p}><path d="M17 8h1a4 4 0 0 1 0 8h-1"/><path d="M3 8h14v9a4 4 0 0 1-4 4H7a4 4 0 0 1-4-4V8z"/><path d="M6 2v3"/><path d="M10 2v3"/><path d="M14 2v3"/></Icon>),
  Cocktail: (p) => (<Icon {...p}><path d="M3 4h18"/><path d="M5 4l7 9 7-9"/><path d="M12 13v7"/><path d="M8 20h8"/><path d="M16 4l3-2"/></Icon>),
  Cart: (p) => (<Icon {...p}><circle cx="9" cy="21" r="1.4"/><circle cx="18" cy="21" r="1.4"/><path d="M2 3h3l2.7 13.4a2 2 0 0 0 2 1.6h8.6a2 2 0 0 0 2-1.6L23 7H6"/></Icon>),
  Anchor: (p) => (<Icon {...p}><circle cx="12" cy="5" r="2.2"/><path d="M12 7.2V22"/><path d="M5 12H2a10 10 0 0 0 20 0h-3"/><path d="M8 14h8"/></Icon>),
  Heart: (p) => (<Icon {...p}><path d="M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78z"/></Icon>),
  Sparkles: (p) => (<Icon {...p}><path d="M12 3v3M12 18v3M3 12h3M18 12h3M5.6 5.6l2.1 2.1M16.3 16.3l2.1 2.1M5.6 18.4l2.1-2.1M16.3 7.7l2.1-2.1"/></Icon>),
  Smartphone: (p) => (<Icon {...p}><rect x="6" y="2" width="12" height="20" rx="2.5"/><path d="M11 18h2"/></Icon>),
  Download: (p) => (<Icon {...p}><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"/><path d="M7 10l5 5 5-5"/><path d="M12 15V3"/></Icon>),
  Image: (p) => (<Icon {...p}><rect x="3" y="3" width="18" height="18" rx="2"/><circle cx="9" cy="9" r="2"/><path d="M21 15l-5-5L5 21"/></Icon>),
  Camera: (p) => (<Icon {...p}><path d="M23 19a2 2 0 0 1-2 2H3a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h4l2-3h6l2 3h4a2 2 0 0 1 2 2z"/><circle cx="12" cy="13" r="4"/></Icon>),
  MapPin2: (p) => (<Icon {...p}><path d="M20 10c0 6-8 12-8 12s-8-6-8-12a8 8 0 0 1 16 0z"/><circle cx="12" cy="10" r="3"/></Icon>),
  Users2: (p) => (<Icon {...p}><circle cx="12" cy="8" r="3"/><path d="M5 21a7 7 0 0 1 14 0"/><circle cx="5" cy="9" r="2"/><circle cx="19" cy="9" r="2"/></Icon>),
  Minus: (p) => (<Icon {...p}><path d="M5 12h14"/></Icon>),
  Search: (p) => (<Icon {...p}><circle cx="11" cy="11" r="7"/><path d="M21 21l-4.3-4.3"/></Icon>),
  Filter: (p) => (<Icon {...p}><path d="M3 5h18l-7 9v6l-4-2v-4z"/></Icon>),
  Box: (p) => (<Icon {...p}><path d="M21 8l-9-5-9 5 9 5 9-5z"/><path d="M3 8v8l9 5 9-5V8"/><path d="M12 13v8"/></Icon>),
  List: (p) => (<Icon {...p}><path d="M8 6h13"/><path d="M8 12h13"/><path d="M8 18h13"/><path d="M3 6h.01"/><path d="M3 12h.01"/><path d="M3 18h.01"/></Icon>),
  Repeat: (p) => (<Icon {...p}><path d="M17 1l4 4-4 4"/><path d="M3 11V9a4 4 0 0 1 4-4h14"/><path d="M7 23l-4-4 4-4"/><path d="M21 13v2a4 4 0 0 1-4 4H3"/></Icon>),
  Lock: (p) => (<Icon {...p}><rect x="3" y="11" width="18" height="11" rx="2"/><path d="M7 11V7a5 5 0 0 1 10 0v4"/></Icon>),
  Trash: (p) => (<Icon {...p}><path d="M3 6h18"/><path d="M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"/><path d="M19 6l-1 14a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2L5 6"/></Icon>),
  Edit: (p) => (<Icon {...p}><path d="M12 20h9"/><path d="M16.5 3.5a2.1 2.1 0 1 1 3 3L7 19l-4 1 1-4z"/></Icon>),
};

/* Palm tree mark — Casa de Casas */
const PalmMark = ({ size = 28, color = "var(--cdc-coral)" }) => (
  <svg width={size} height={size} viewBox="0 0 64 64" fill="none" aria-hidden="true">
    <g stroke={color} strokeWidth="2.4" strokeLinecap="round" strokeLinejoin="round" fill="none">
      {/* trunk */}
      <path d="M32 60 C 31 50 31 40 33 30" />
      <path d="M30 55 C 30 50 30 47 31 44" />
      <path d="M31 49 C 32 47 33 46 34 45" />
      {/* fronds */}
      <path d="M33 30 C 22 22 14 22 8 26" />
      <path d="M33 30 C 24 19 22 12 22 6" />
      <path d="M33 30 C 38 18 46 12 54 12" />
      <path d="M33 30 C 44 26 54 28 58 34" />
      <path d="M33 30 C 38 38 36 48 30 54" />
      <path d="M33 30 C 26 30 18 32 12 38" />
      {/* coconuts */}
      <circle cx="33" cy="31" r="1.6" fill={color} stroke="none"/>
      <circle cx="36" cy="33" r="1.4" fill={color} stroke="none"/>
      <circle cx="30" cy="33" r="1.2" fill={color} stroke="none"/>
    </g>
  </svg>
);

Object.assign(window, { Icon, I, PalmMark });
