// Screens.jsx — MinPlass marketing site screens
// Three connected screens shown inside one iPhone:
//   1. Welcome / pitch (host-focused landing)
//   2. LiveSpot (the immersive "your spot is ready" interactive screen)
//   3. HostEarnings (the dashboard the marketing site is selling)

// ────────────────────────────────────────────────────────────
// 1. Welcome — host-focused pitch screen
// ────────────────────────────────────────────────────────────
function WelcomeScreen({ go, density = 'roomy' }) {
  const isCompact = density === 'compact';
  const padTop = isCompact ? 60 : 76;
  const titleSize = isCompact ? 40 : 48;
  return (
    <AppBackground blobs={true}>
      <div style={{ height: '100%', display: 'flex', flexDirection: 'column', padding: `${padTop}px 28px ${isCompact ? 32 : 44}px` }}>
        <div style={{ display: 'flex', alignItems: 'center', gap: 10 }}>
          <div style={{
            width: 36, height: 36, borderRadius: 12, background: '#111416', color: '#fff',
            display: 'inline-flex', alignItems: 'center', justifyContent: 'center',
            fontWeight: 800, fontSize: 18, letterSpacing: '-0.04em',
          }}>P</div>
          <div style={{ fontWeight: 700, fontSize: 18, letterSpacing: '-0.02em' }}>
            Min<span style={{ color: '#5FAFD3' }}>Plass</span>
          </div>
          <div style={{ marginLeft: 'auto', fontSize: 13, fontWeight: 600, color: '#7B8589' }}>Logg inn</div>
        </div>

        <div style={{ flex: 1, display: 'flex', flexDirection: 'column', justifyContent: 'center', gap: isCompact ? 16 : 22 }}>
          <div style={{ fontSize: 11, fontWeight: 600, letterSpacing: '0.08em', textTransform: 'uppercase', color: '#7B8589' }}>
            For utleiere · Bergen
          </div>
          <h1 style={{
            font: `700 ${titleSize}px/1.02 Inter, system-ui, sans-serif`,
            letterSpacing: '-0.03em', color: '#111416', margin: 0,
          }}>Innkjørselen din,<br/>tjener stille.</h1>
          <p style={{ font: '500 16px/1.45 Inter, system-ui, sans-serif', color: '#2F3437', margin: 0, maxWidth: 300 }}>
            Lei ut plassen din når du ikke bruker den. Verifiserte sjåfører, automatiske utbetalinger, rolig av design.
          </p>

          {/* Earnings preview pill */}
          <div style={{
            marginTop: isCompact ? 4 : 12,
            display: 'inline-flex', alignSelf: 'flex-start', alignItems: 'center', gap: 12,
            padding: '12px 16px 12px 14px',
            borderRadius: 999,
            background: 'rgba(255,255,255,0.62)',
            backdropFilter: 'blur(22px) saturate(140%)',
            WebkitBackdropFilter: 'blur(22px) saturate(140%)',
            border: '1px solid rgba(255,255,255,0.7)',
            boxShadow: '0 4px 12px rgba(17,20,22,0.06)',
          }}>
            <div style={{
              width: 28, height: 28, borderRadius: 999, background: '#DCEBDF',
              display: 'inline-flex', alignItems: 'center', justifyContent: 'center',
            }}>
              <Icon name="zap" size={14} color="#111416" />
            </div>
            <div style={{ display: 'flex', flexDirection: 'column', lineHeight: 1.1 }}>
              <span style={{ fontSize: 11, fontWeight: 600, color: '#7B8589', letterSpacing: '0.04em' }}>Snittinntekt</span>
              <span style={{ fontSize: 15, fontWeight: 700, color: '#111416', fontFeatureSettings: '"tnum"' }}>1 240 kr / uke</span>
            </div>
          </div>
        </div>

        <div style={{ display: 'flex', flexDirection: 'column', gap: 10 }}>
          <PrimaryButton full onClick={() => go('live')} icon={<Icon name="arrow" size={16} color="#fff" />}>
            Se hvordan det fungerer
          </PrimaryButton>
          <button onClick={() => go('host')} style={{
            background: 'transparent', border: 0, padding: '10px 0',
            font: '600 14px/1 Inter, system-ui, sans-serif', color: '#2F3437', cursor: 'pointer',
          }}>Lei ut plassen din →</button>
        </div>
      </div>
    </AppBackground>
  );
}

// ────────────────────────────────────────────────────────────
// 2. LiveSpot — immersive "you've arrived" interactive screen
//    This is the marketing site's interactive demo.
// ────────────────────────────────────────────────────────────
function LiveSpotScreen({ go, density = 'roomy' }) {
  const [slot, setSlot] = React.useState('14:30');
  const [zoom, setZoom] = React.useState(false);
  const isCompact = density === 'compact';

  const slots = [
    { time: '13:00', taken: true },
    { time: '14:30', taken: false },
    { time: '16:00', taken: false },
    { time: '18:00', taken: false },
  ];
  const facilities = [
    { id: 'covered', icon: 'layers', label: 'Tak over' },
    { id: 'ev', icon: 'zap', label: 'Elbil 11kW' },
    { id: 'lit', icon: 'shield', label: 'Belyst og inngjerdet' },
    { id: 'cam', icon: 'camera', label: 'Kamera' },
  ];

  // Stylised cityscape — cool daylight scene rendered as layered SVG.
  // (No real photo asset is bundled in the design system; this is the
  // closest in-system substitute for the reference image's mood.)
  const cityscape = (
    <svg viewBox="0 0 390 820" preserveAspectRatio="xMidYMid slice" style={{
      position: 'absolute', inset: 0, width: '100%', height: '100%',
      transform: zoom ? 'scale(1.08)' : 'scale(1)',
      transition: 'transform 700ms cubic-bezier(.2,.7,.2,1)',
    }}>
      <defs>
        <linearGradient id="sky" x1="0" y1="0" x2="0" y2="1">
          <stop offset="0%" stopColor="#C6D8DD"/>
          <stop offset="55%" stopColor="#D8E4E8"/>
          <stop offset="100%" stopColor="#E6ECEB"/>
        </linearGradient>
        <linearGradient id="bldgA" x1="0" y1="0" x2="0" y2="1">
          <stop offset="0%" stopColor="#E5EAEC"/>
          <stop offset="100%" stopColor="#B9C5C9"/>
        </linearGradient>
        <linearGradient id="bldgB" x1="0" y1="0" x2="0" y2="1">
          <stop offset="0%" stopColor="#D6DEDF"/>
          <stop offset="100%" stopColor="#9FAEB2"/>
        </linearGradient>
        <linearGradient id="bldgC" x1="0" y1="0" x2="0" y2="1">
          <stop offset="0%" stopColor="#EEF1F0"/>
          <stop offset="100%" stopColor="#C2CCCE"/>
        </linearGradient>
        <linearGradient id="ground" x1="0" y1="0" x2="0" y2="1">
          <stop offset="0%" stopColor="#A7B0B2"/>
          <stop offset="100%" stopColor="#7E878A"/>
        </linearGradient>
        <linearGradient id="haze" x1="0" y1="0" x2="0" y2="1">
          <stop offset="0%" stopColor="rgba(220,235,223,0.18)"/>
          <stop offset="100%" stopColor="rgba(221,234,240,0.08)"/>
        </linearGradient>
        <pattern id="winA" x="0" y="0" width="14" height="22" patternUnits="userSpaceOnUse">
          <rect x="2" y="3" width="10" height="14" fill="rgba(255,255,255,0.55)"/>
          <rect x="2" y="3" width="10" height="14" fill="rgba(160,180,190,0.18)"/>
          <line x1="7" y1="3" x2="7" y2="17" stroke="rgba(80,90,95,0.25)" strokeWidth="0.5"/>
        </pattern>
        <pattern id="winB" x="0" y="0" width="10" height="14" patternUnits="userSpaceOnUse">
          <rect x="1" y="2" width="8" height="10" fill="rgba(255,255,255,0.5)"/>
          <line x1="5" y1="2" x2="5" y2="12" stroke="rgba(80,90,95,0.2)" strokeWidth="0.4"/>
        </pattern>
      </defs>

      <rect width="390" height="820" fill="url(#sky)"/>
      <rect width="390" height="820" fill="url(#haze)"/>

      {/* Distant haze building */}
      <rect x="20" y="180" width="80" height="280" fill="#C9D3D5" opacity="0.7"/>
      <rect x="20" y="180" width="80" height="280" fill="url(#winB)" opacity="0.45"/>

      {/* Mid building B (left, recedes) */}
      <polygon points="0,200 145,160 145,560 0,560" fill="url(#bldgB)"/>
      <polygon points="0,200 145,160 145,560 0,560" fill="url(#winA)" opacity="0.55"/>
      {/* Mullion shadow */}
      <polygon points="0,200 145,160 145,170 0,210" fill="rgba(40,50,55,0.18)"/>

      {/* Foreground glass tower (centre-left) */}
      <rect x="100" y="120" width="170" height="450" fill="url(#bldgA)"/>
      <rect x="100" y="120" width="170" height="450" fill="url(#winA)" opacity="0.7"/>
      {/* tower vertical mullions */}
      <line x1="155" y1="120" x2="155" y2="570" stroke="rgba(60,70,75,0.18)" strokeWidth="1"/>
      <line x1="210" y1="120" x2="210" y2="570" stroke="rgba(60,70,75,0.18)" strokeWidth="1"/>
      {/* tower crown */}
      <rect x="115" y="100" width="140" height="22" fill="#A8B5B9"/>

      {/* Tower right (foreground, taller) */}
      <polygon points="265,90 390,80 390,620 265,620" fill="url(#bldgC)"/>
      <polygon points="265,90 390,80 390,620 265,620" fill="url(#winB)" opacity="0.6"/>
      <polygon points="265,90 390,80 390,98 265,108" fill="rgba(40,50,55,0.18)"/>

      {/* Street level */}
      <rect x="0" y="560" width="390" height="260" fill="url(#ground)"/>
      {/* sidewalk slabs */}
      <line x1="0" y1="600" x2="390" y2="595" stroke="rgba(255,255,255,0.18)" strokeWidth="1"/>
      <line x1="0" y1="640" x2="390" y2="635" stroke="rgba(255,255,255,0.14)" strokeWidth="1"/>

      {/* trees mid-distance */}
      <ellipse cx="158" cy="555" rx="22" ry="30" fill="#7E9685" opacity="0.7"/>
      <rect x="156" y="555" width="4" height="18" fill="#4F5B5A"/>
      <ellipse cx="200" cy="558" rx="18" ry="24" fill="#8AA493" opacity="0.65"/>
      <rect x="198" y="558" width="3" height="14" fill="#4F5B5A"/>

      {/* faint figure walking */}
      <ellipse cx="120" cy="610" rx="4" ry="6" fill="rgba(40,50,55,0.55)"/>
      <rect x="117" y="615" width="6" height="20" rx="2" fill="rgba(40,50,55,0.55)"/>

      {/* parked car silhouette in foreground */}
      <g opacity="0.85">
        <rect x="40" y="690" width="170" height="42" rx="14" fill="#2F3437"/>
        <rect x="60" y="668" width="125" height="32" rx="12" fill="#3A4145"/>
        <rect x="70" y="676" width="50" height="22" rx="6" fill="rgba(180,200,210,0.5)"/>
        <rect x="124" y="676" width="55" height="22" rx="6" fill="rgba(180,200,210,0.5)"/>
        <circle cx="75" cy="734" r="14" fill="#1A1D1F"/>
        <circle cx="180" cy="734" r="14" fill="#1A1D1F"/>
        <circle cx="75" cy="734" r="5" fill="#5FAFD3"/>
        <circle cx="180" cy="734" r="5" fill="#5FAFD3"/>
      </g>

      {/* light atmospheric overlay */}
      <rect width="390" height="820" fill="rgba(220,235,223,0.05)"/>
    </svg>
  );

  return (
    <div style={{
      position: 'relative', height: '100%', width: '100%', overflow: 'hidden',
      background: '#C9D3D5',
      fontFamily: 'Inter, system-ui, sans-serif',
    }}>
      {cityscape}

      {/* darkening gradient at the bottom for legibility */}
      <div style={{
        position: 'absolute', left: 0, right: 0, bottom: 0, height: '46%',
        background: 'linear-gradient(180deg, rgba(17,20,22,0) 0%, rgba(17,20,22,0.45) 100%)',
        pointerEvents: 'none',
      }}/>

      {/* Top header — minimal, no plate */}
      <div style={{
        position: 'absolute', top: 60, left: 16, right: 16, zIndex: 10,
        display: 'flex', alignItems: 'center', gap: 12,
      }}>
        <IconButton onClick={() => go('welcome')}><Icon name="arrow-left" size={20} /></IconButton>
        <div style={{ flex: 1, textAlign: 'center', display: 'flex', flexDirection: 'column', gap: 2 }}>
          <span style={{ fontSize: 11, fontWeight: 600, letterSpacing: '0.08em', textTransform: 'uppercase', color: 'rgba(17,20,22,0.6)' }}>Reservert · 8 min unna</span>
          <span style={{ fontSize: 15, fontWeight: 700, color: '#111416', letterSpacing: '-0.01em' }}>MinPlass</span>
        </div>
        <div style={{
          width: 44, height: 44, borderRadius: 999,
          background: 'linear-gradient(135deg,#DCEBDF,#9ECFE3)',
          display: 'inline-flex', alignItems: 'center', justifyContent: 'center',
          fontWeight: 700, color: '#111416', fontSize: 13,
          border: '2px solid rgba(255,255,255,0.7)',
          boxShadow: '0 4px 12px rgba(17,20,22,0.18)',
        }}>EH</div>
      </div>

      {/* Floor / arrival-window time chips — positioned mid-screen */}
      <div style={{
        position: 'absolute', left: 20, right: 20, top: '46%', zIndex: 8,
        display: 'flex', flexDirection: 'column', gap: 10,
      }}>
        <div style={{ fontSize: 10, fontWeight: 700, letterSpacing: '0.08em', textTransform: 'uppercase', color: 'rgba(17,20,22,0.55)' }}>
          Ankomstvindu
        </div>
        <div style={{ display: 'flex', gap: 8, flexWrap: 'wrap' }}>
          {slots.map(s => {
            const on = slot === s.time && !s.taken;
            return (
              <button
                key={s.time}
                onClick={() => !s.taken && setSlot(s.time)}
                disabled={s.taken}
                style={{
                  height: 36, padding: '0 14px', borderRadius: 999,
                  background: on ? '#111416' : s.taken ? 'rgba(120,130,135,0.35)' : 'rgba(255,255,255,0.7)',
                  backdropFilter: on || s.taken ? 'none' : 'blur(18px) saturate(140%)',
                  WebkitBackdropFilter: on || s.taken ? 'none' : 'blur(18px) saturate(140%)',
                  border: on ? 'none' : '1px solid rgba(255,255,255,0.7)',
                  color: on ? '#fff' : s.taken ? 'rgba(255,255,255,0.85)' : '#111416',
                  fontFamily: 'Inter, system-ui, sans-serif',
                  fontWeight: 700, fontSize: 13, fontFeatureSettings: '"tnum"',
                  cursor: s.taken ? 'not-allowed' : 'pointer',
                  textDecoration: s.taken ? 'line-through' : 'none',
                  letterSpacing: '-0.01em',
                  boxShadow: on ? '0 4px 10px rgba(17,20,22,0.3)' : '0 1px 2px rgba(17,20,22,0.06)',
                }}
              >{s.time}</button>
            );
          })}
        </div>
      </div>

      {/* Facility chip rail */}
      <div style={{
        position: 'absolute', left: 20, right: 20, top: 'calc(46% + 70px)', zIndex: 8,
      }}>
        <div style={{
          display: 'inline-flex', gap: 4, padding: 6,
          borderRadius: 999,
          background: 'rgba(20,24,26,0.42)',
          backdropFilter: 'blur(22px) saturate(140%)',
          WebkitBackdropFilter: 'blur(22px) saturate(140%)',
          border: '1px solid rgba(255,255,255,0.18)',
          boxShadow: '0 8px 20px rgba(17,20,22,0.18)',
        }}>
          {facilities.map((f) => (
            <button key={f.id} title={f.label} style={{
              width: 38, height: 38, borderRadius: 999,
              background: 'transparent',
              border: 'none', color: '#fff', cursor: 'pointer',
              display: 'inline-flex', alignItems: 'center', justifyContent: 'center',
            }}><Icon name={f.icon} size={18} color="#fff" /></button>
          ))}
        </div>
      </div>

      {/* Bottom sheet — title + sub + circular CTA */}
      <div style={{
        position: 'absolute', left: 16, right: 16, bottom: 28, zIndex: 10,
        display: 'flex', alignItems: 'flex-end', gap: 12,
      }}>
        <div style={{ flex: 1, color: '#fff' }}>
          <div style={{ fontSize: 11, fontWeight: 700, letterSpacing: '0.08em', textTransform: 'uppercase', color: 'rgba(255,255,255,0.7)', marginBottom: 6 }}>
            Innkjørsel · Møhlenpris
          </div>
          <h1 style={{
            font: '700 36px/1.02 Inter, system-ui, sans-serif',
            letterSpacing: '-0.03em', color: '#fff', margin: 0,
            textShadow: '0 2px 12px rgba(0,0,0,0.25)',
          }}>Strandgaten 12.</h1>
          <p style={{ font: '500 14px/1.4 Inter, system-ui, sans-serif', color: 'rgba(255,255,255,0.85)', margin: '8px 0 0', maxWidth: 240 }}>
            Utleier Sondre H · ankomst {slot} · 2,5 t · 112 kr
          </p>
        </div>

        <button
          onClick={() => setZoom(z => !z)}
          aria-label="Toggle zoom"
          style={{
            width: 64, height: 64, borderRadius: 999,
            background: 'rgba(255,255,255,0.18)',
            backdropFilter: 'blur(22px) saturate(140%)',
            WebkitBackdropFilter: 'blur(22px) saturate(140%)',
            border: '1px solid rgba(255,255,255,0.35)',
            color: '#fff', cursor: 'pointer',
            display: 'inline-flex', alignItems: 'center', justifyContent: 'center',
            boxShadow: '0 12px 28px rgba(17,20,22,0.4)',
            flexShrink: 0,
            transition: 'transform 220ms cubic-bezier(.2,.9,.25,1.2)',
            transform: zoom ? 'scale(1.05)' : 'scale(1)',
          }}
        >
          <Icon name={zoom ? 'x' : 'search'} size={22} color="#fff" />
        </button>
      </div>

      {/* Tap hint that fades */}
      <div style={{
        position: 'absolute', top: 130, right: 24, zIndex: 5, pointerEvents: 'none',
        opacity: zoom ? 0 : 0.85, transition: 'opacity 300ms',
      }}>
        <div style={{
          padding: '6px 12px', borderRadius: 999,
          background: 'rgba(17,20,22,0.55)',
          backdropFilter: 'blur(14px)',
          WebkitBackdropFilter: 'blur(14px)',
          border: '1px solid rgba(255,255,255,0.18)',
          fontSize: 11, fontWeight: 600, color: '#fff', letterSpacing: '-0.01em',
        }}>Trykk <Icon name="search" size={11} color="#fff" style={{display:'inline', verticalAlign:'-1px'}}/> for å se deg rundt</div>
      </div>
    </div>
  );
}

// ────────────────────────────────────────────────────────────
// 3. Host — earnings dashboard (sells the host product)
// ────────────────────────────────────────────────────────────
function HostScreen({ go, density = 'roomy' }) {
  const isCompact = density === 'compact';
  const [period, setPeriod] = React.useState('week');

  const periods = [
    { id: 'week',  label: 'Uke',   heading: 'denne uken',    value: '1 240',  total: '4 820 kr / måned' },
    { id: 'month', label: 'Måned', heading: 'denne måneden', value: '4 820',  total: '54 600 kr / år' },
    { id: 'year',  label: 'År',    heading: 'i år',          value: '54 600', total: '4 utleiere i ditt nabolag' },
  ];
  const cur = periods.find(p => p.id === period);

  return (
    <AppBackground>
      <div style={{ padding: `${isCompact ? 60 : 70}px 20px ${isCompact ? 28 : 40}px`, display: 'flex', flexDirection: 'column', gap: isCompact ? 18 : 24 }}>
        <div style={{ display: 'flex', alignItems: 'center', justifyContent: 'space-between' }}>
          <IconButton onClick={() => go('welcome')}><Icon name="arrow-left" size={20} /></IconButton>
          <div style={{ fontSize: 13, fontWeight: 700, color: '#111416', letterSpacing: '-0.01em' }}>Utleier</div>
          <IconButton><Icon name="bell" size={18} /></IconButton>
        </div>

        <div>
          <div style={{ fontSize: 11, fontWeight: 600, letterSpacing: '0.08em', textTransform: 'uppercase', color: '#7B8589' }}>
            Inntekt · {cur.heading}
          </div>
          <h1 style={{
            font: `700 ${isCompact ? 36 : 42}px/1.02 Inter, system-ui, sans-serif`,
            letterSpacing: '-0.03em', color: '#111416', margin: '6px 0 0',
            fontFeatureSettings: '"tnum"',
          }}>{cur.value} kr<br/><span style={{ color: '#7B8589', fontWeight: 600 }}>{cur.heading}.</span></h1>
        </div>

        {/* period switcher */}
        <div style={{ display: 'flex', gap: 6 }}>
          {periods.map(p => {
            const on = p.id === period;
            return (
              <button key={p.id} onClick={() => setPeriod(p.id)} style={{
                flex: 1, height: 38, borderRadius: 999,
                background: on ? '#111416' : 'rgba(255,255,255,0.7)',
                color: on ? '#fff' : '#111416',
                backdropFilter: on ? 'none' : 'blur(18px)',
                WebkitBackdropFilter: on ? 'none' : 'blur(18px)',
                border: on ? 'none' : '1px solid rgba(255,255,255,0.7)',
                fontFamily: 'Inter, system-ui, sans-serif',
                fontWeight: 700, fontSize: 13, cursor: 'pointer',
                letterSpacing: '-0.01em',
              }}>{p.label}</button>
            );
          })}
        </div>

        {/* big dark earning card */}
        <div style={{
          borderRadius: 34, padding: isCompact ? 18 : 22, color: '#fff',
          background: 'linear-gradient(135deg, #2F3437 0%, #111416 100%)',
          boxShadow: '0 24px 48px rgba(17,20,22,0.18)',
          position: 'relative', overflow: 'hidden',
        }}>
          <div style={{ position: 'absolute', width: 220, height: 220, borderRadius: 999, background: 'rgba(95,175,211,0.32)', filter: 'blur(50px)', top: -70, right: -70 }} />
          <div style={{ position: 'absolute', width: 160, height: 160, borderRadius: 999, background: 'rgba(159,214,180,0.22)', filter: 'blur(40px)', bottom: -40, left: -30 }} />
          <div style={{ position: 'relative' }}>
            <div style={{ fontSize: 11, fontWeight: 700, letterSpacing: '0.08em', textTransform: 'uppercase', color: 'rgba(255,255,255,0.55)' }}>Trend · {cur.total}</div>
            <div style={{ display: 'flex', alignItems: 'baseline', gap: 8, marginTop: 8 }}>
              <span style={{
                fontSize: isCompact ? 38 : 46, fontWeight: 800, letterSpacing: '-0.03em',
                fontFeatureSettings: '"tnum"',
              }}>{cur.value}</span>
              <span style={{ fontSize: 16, fontWeight: 500, color: 'rgba(255,255,255,0.65)' }}>kr</span>
            </div>
          </div>
          <div style={{ display: 'flex', gap: 6, marginTop: isCompact ? 14 : 20, alignItems: 'flex-end', height: isCompact ? 48 : 64 }}>
            {[36, 48, 22, 60, 44, 86, 52].map((h, i) => (
              <div key={i} style={{
                flex: 1, height: `${h}%`, borderRadius: 6,
                background: i === 5 ? '#9FD6B4' : 'rgba(255,255,255,0.22)',
                transition: 'height 380ms cubic-bezier(.2,.7,.2,1)',
              }}/>
            ))}
          </div>
          <div style={{ display: 'flex', gap: 6, marginTop: 8, fontSize: 10, fontWeight: 600, color: 'rgba(255,255,255,0.5)', fontFeatureSettings: '"tnum"' }}>
            {['M', 'T', 'O', 'T', 'F', 'L', 'S'].map((d, i) => (
              <div key={i} style={{ flex: 1, textAlign: 'center', color: i === 5 ? '#9FD6B4' : 'rgba(255,255,255,0.5)' }}>{d}</div>
            ))}
          </div>
        </div>

        <ParkingRow title="Innkjørsel · Møhlenpris" sub="Aktiv · 8 reservasjoner" price="45" />
        <ParkingRow title="Garasje · Sandviken" sub="Pause · gjenoppta" price="75" />

        <HostCTAButton full onClick={() => go('welcome')}>Lei ut en plass til</HostCTAButton>
      </div>
    </AppBackground>
  );
}

window.WelcomeScreen = WelcomeScreen;
window.LiveSpotScreen = LiveSpotScreen;
window.HostScreen = HostScreen;
