// Inline SVG icons used throughout the prototype.

const Icon = {
  Arrow: ({ size = 14 }) => (
    <svg width={size} height={size} viewBox="0 0 14 14" fill="none">
      <path d="M2 7H12M12 7L8 3M12 7L8 11" stroke="currentColor" strokeWidth="1.4" strokeLinecap="round" strokeLinejoin="round"/>
    </svg>
  ),
  ArrowSm: ({ size = 10 }) => (
    <svg width={size} height={size} viewBox="0 0 10 10" fill="none">
      <path d="M1 5H9M9 5L6 2M9 5L6 8" stroke="currentColor" strokeWidth="1.2" strokeLinecap="round" strokeLinejoin="round"/>
    </svg>
  ),
  ArrowLeft: ({ size = 14 }) => (
    <svg width={size} height={size} viewBox="0 0 14 14" fill="none">
      <path d="M12 7H2M2 7L6 3M2 7L6 11" stroke="currentColor" strokeWidth="1.4" strokeLinecap="round" strokeLinejoin="round"/>
    </svg>
  ),
  Bed: ({ size = 14 }) => (
    <svg width={size} height={size} viewBox="0 0 16 16" fill="none">
      <path d="M2 10V4M2 10H14M2 10V13M14 10V13M14 10V7H7V10" stroke="currentColor" strokeWidth="1.2" strokeLinecap="round"/>
      <circle cx="5" cy="8" r="1.2" stroke="currentColor" strokeWidth="1.2"/>
    </svg>
  ),
  Seat: ({ size = 14 }) => (
    <svg width={size} height={size} viewBox="0 0 16 16" fill="none">
      <path d="M5 13V8C5 6 6 4 8 4C10 4 11 6 11 8V13M3 13H13M5 9H11" stroke="currentColor" strokeWidth="1.2" strokeLinecap="round"/>
    </svg>
  ),
  Ruler: ({ size = 14 }) => (
    <svg width={size} height={size} viewBox="0 0 16 16" fill="none">
      <rect x="2" y="6" width="12" height="4" stroke="currentColor" strokeWidth="1.2"/>
      <path d="M5 6V8M8 6V8M11 6V8" stroke="currentColor" strokeWidth="1.2"/>
    </svg>
  ),
  Gear: ({ size = 14 }) => (
    <svg width={size} height={size} viewBox="0 0 16 16" fill="none">
      <circle cx="8" cy="8" r="2" stroke="currentColor" strokeWidth="1.2"/>
      <path d="M8 2V4M8 12V14M2 8H4M12 8H14M3.8 3.8L5.2 5.2M10.8 10.8L12.2 12.2M3.8 12.2L5.2 10.8M10.8 5.2L12.2 3.8" stroke="currentColor" strokeWidth="1.2" strokeLinecap="round"/>
    </svg>
  ),
  License: ({ size = 14 }) => (
    <svg width={size} height={size} viewBox="0 0 16 16" fill="none">
      <rect x="2" y="3" width="12" height="10" rx="1" stroke="currentColor" strokeWidth="1.2"/>
      <circle cx="6" cy="7.5" r="1.5" stroke="currentColor" strokeWidth="1.2"/>
      <path d="M9 7H12M9 9.5H11" stroke="currentColor" strokeWidth="1.2" strokeLinecap="round"/>
    </svg>
  ),
  Cal: ({ size = 16 }) => (
    <svg width={size} height={size} viewBox="0 0 16 16" fill="none">
      <rect x="2" y="3" width="12" height="11" rx="1" stroke="currentColor" strokeWidth="1.2"/>
      <path d="M2 6H14M5 2V4M11 2V4" stroke="currentColor" strokeWidth="1.2" strokeLinecap="round"/>
    </svg>
  ),
  Pin: ({ size = 16 }) => (
    <svg width={size} height={size} viewBox="0 0 16 16" fill="none">
      <path d="M8 14C8 14 13 9.5 13 6C13 3.2 10.8 1 8 1C5.2 1 3 3.2 3 6C3 9.5 8 14 8 14Z" stroke="currentColor" strokeWidth="1.2"/>
      <circle cx="8" cy="6" r="2" stroke="currentColor" strokeWidth="1.2"/>
    </svg>
  ),
  People: ({ size = 16 }) => (
    <svg width={size} height={size} viewBox="0 0 16 16" fill="none">
      <circle cx="8" cy="6" r="2.5" stroke="currentColor" strokeWidth="1.2"/>
      <path d="M3 14C3 11.8 5.2 10 8 10C10.8 10 13 11.8 13 14" stroke="currentColor" strokeWidth="1.2" strokeLinecap="round"/>
    </svg>
  ),
  Wa: () => (
    <svg width="26" height="26" viewBox="0 0 32 32" fill="none">
      <path fillRule="evenodd" clipRule="evenodd" d="M16 4C9.4 4 4 9.4 4 16C4 18.1 4.6 20.1 5.6 21.9L4 28L10.3 26.4C12 27.4 14 28 16 28C22.6 28 28 22.6 28 16C28 9.4 22.6 4 16 4ZM21.8 19.6C21.5 20.4 20.2 21.1 19.6 21.2C19 21.2 18.4 21.3 17.8 21.1C17.5 21 17 20.8 16.4 20.5C13.7 19.4 12 16.7 11.8 16.5C11.7 16.3 10.7 14.9 10.7 13.5C10.7 12.1 11.4 11.5 11.7 11.2C11.9 10.9 12.2 10.9 12.4 10.9H13C13.2 10.9 13.5 10.9 13.7 11.4C14 12 14.6 13.4 14.7 13.5C14.8 13.7 14.8 13.9 14.7 14.1C14.6 14.3 14.6 14.4 14.4 14.6C14.3 14.7 14.1 14.9 14 15C13.8 15.1 13.7 15.3 13.8 15.6C14 15.9 14.6 16.9 15.5 17.7C16.6 18.7 17.6 19 17.9 19.1C18.2 19.3 18.4 19.2 18.6 19C18.7 18.8 19.3 18.1 19.5 17.8C19.7 17.5 19.9 17.5 20.1 17.6C20.4 17.7 21.8 18.4 22.1 18.5C22.4 18.7 22.6 18.7 22.6 18.9C22.7 19 22.1 18.8 21.8 19.6Z" fill="currentColor"/>
    </svg>
  ),
  Close: ({ size = 16 }) => (
    <svg width={size} height={size} viewBox="0 0 16 16" fill="none">
      <path d="M3 3L13 13M13 3L3 13" stroke="currentColor" strokeWidth="1.4" strokeLinecap="round"/>
    </svg>
  ),
  Chev: ({ size = 14, dir = 'right' }) => {
    const rot = { right: 0, left: 180, down: 90, up: -90 }[dir];
    return (
      <svg width={size} height={size} viewBox="0 0 14 14" fill="none" style={{ transform: `rotate(${rot}deg)` }}>
        <path d="M5 3L9 7L5 11" stroke="currentColor" strokeWidth="1.4" strokeLinecap="round" strokeLinejoin="round"/>
      </svg>
    );
  },
  Star: ({ size = 12 }) => (
    <svg width={size} height={size} viewBox="0 0 12 12" fill="currentColor">
      <path d="M6 1L7.5 4.5L11 5L8.5 7.5L9 11L6 9.5L3 11L3.5 7.5L1 5L4.5 4.5L6 1Z"/>
    </svg>
  ),
  Check: ({ size = 12 }) => (
    <svg width={size} height={size} viewBox="0 0 12 12" fill="none">
      <path d="M2 6L5 9L10 3" stroke="currentColor" strokeWidth="1.6" strokeLinecap="round" strokeLinejoin="round"/>
    </svg>
  ),
};

window.Icon = Icon;
