@php
    // The public site is addressable per language, so direction, titles and the
    // alternates below all follow the request's locale rather than a hardcoded
    // Arabic default.
    $locale = in_array(app()->getLocale(), website_locales(), true) ? app()->getLocale() : website_locales()[0];
    $isRtl = $locale === 'ar';
    $siteTitle = $locale === 'ar'
        ? ($settings->site_title ?: $settings->site_title_en ?: $academy->name_ar)
        : ($settings->site_title_en ?: $settings->site_title ?: $academy->name);
    $siteDescription = $locale === 'ar'
        ? ($settings->site_description ?: $settings->site_description_en ?: '')
        : ($settings->site_description_en ?: $settings->site_description ?: '');
    $pageSlug = website_strip_locale(request()->path());
@endphp
<!DOCTYPE html>
<html lang="{{ $locale }}" dir="{{ $isRtl ? 'rtl' : 'ltr' }}">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>{{ $siteTitle }}</title>
    <meta name="description" content="{{ $siteDescription }}">

    {{-- SEO --}}
    <meta name="robots" content="index, follow">
    <link rel="canonical" href="{{ website_url($pageSlug, $locale) }}">
    @foreach (website_locales() as $alt)
        <link rel="alternate" hreflang="{{ $alt }}" href="{{ website_url($pageSlug, $alt) }}">
    @endforeach
    <link rel="alternate" hreflang="x-default" href="{{ website_url($pageSlug, website_locales()[0]) }}">
    @if($academy->logo_path)
        <link rel="icon" type="image/png" href="{{ asset('storage/' . $academy->logo_path) }}">
        <link rel="apple-touch-icon" href="{{ asset('storage/' . $academy->logo_path) }}">
    @endif

    {{-- Open Graph --}}
    <meta property="og:title" content="{{ $siteTitle }}">
    <meta property="og:description" content="{{ $siteDescription }}">
    <meta property="og:url" content="{{ website_url($pageSlug, $locale) }}">
    <meta property="og:type" content="website">
    <meta property="og:locale" content="{{ $locale === 'ar' ? 'ar_EG' : 'en_US' }}">
    @if($academy->logo_path)
        <meta property="og:image" content="{{ asset('storage/' . $academy->logo_path) }}">
    @endif

    {{-- Twitter Card --}}
    <meta name="twitter:card" content="summary_large_image">
    <meta name="twitter:title" content="{{ $siteTitle }}">
    <meta name="twitter:description" content="{{ $siteDescription }}">
    @if($academy->logo_path)
        <meta name="twitter:image" content="{{ asset('storage/' . $academy->logo_path) }}">
    @endif

    {{-- Fonts --}}
    <link rel="preconnect" href="https://fonts.googleapis.com">
    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
    <link href="https://fonts.googleapis.com/css2?family={{ urlencode($settings->heading_font ?? 'Cairo') }}:wght@400;600;700;800&family={{ $settings->body_font !== $settings->heading_font ? urlencode($settings->body_font ?? 'Cairo') . ':wght@400;500;600&' : '' }}display=swap" rel="stylesheet">

    {{-- Vite Assets --}}
    @vite(['resources/css/website.css', 'resources/js/website.js'])

    {{-- Livewire --}}
    @livewireStyles

    {{-- Dynamic CSS Variables from Academy Branding --}}
    @php
        $fontSizeMap = ['small' => '14px', 'medium' => '16px', 'large' => '18px', 'xlarge' => '20px'];
        $h1Map = ['small' => '2rem', 'medium' => '2.5rem', 'large' => '3rem', 'xlarge' => '3.5rem'];
        $h2Map = ['small' => '1.6rem', 'medium' => '2rem', 'large' => '2.4rem', 'xlarge' => '2.8rem'];
        $h3Map = ['small' => '1.3rem', 'medium' => '1.5rem', 'large' => '1.75rem', 'xlarge' => '2rem'];
        $lineHeightMap = ['tight' => '1.3', 'normal' => '1.6', 'relaxed' => '1.8', 'loose' => '2'];
        $letterSpacingMap = ['tight' => '-0.02em', 'normal' => '0', 'wide' => '0.05em'];
        $sectionPyMap = ['compact' => '3rem', 'comfortable' => '5rem', 'spacious' => '8rem'];
        $cardGapMap = ['compact' => '1rem', 'comfortable' => '1.5rem', 'spacious' => '2.5rem'];
        $radiusMap = ['sharp' => '0px', 'subtle' => '4px', 'rounded' => '12px', 'pill' => '9999px'];
        $radiusLgMap = ['sharp' => '0px', 'subtle' => '8px', 'rounded' => '20px', 'pill' => '9999px'];
        $animDurationMap = ['slow' => '1.2s', 'normal' => '0.8s', 'fast' => '0.4s'];

        $fss = $settings->font_size_scale ?? 'medium';
        $lh = $settings->line_height ?? 'normal';
        $ls = $settings->letter_spacing ?? 'normal';
        $dn = $settings->density ?? 'comfortable';
        $br = $settings->border_radius_preset ?? 'rounded';
        $as = $settings->animation_speed ?? 'normal';
    @endphp
    <style>
        :root {
            --site-primary: {{ $settings->primary_color ?? '#1e3a5f' }};
            --site-secondary: {{ $settings->secondary_color ?? '#2d5a87' }};
            --site-accent: {{ $settings->accent_color ?? '#2563eb' }};
            --site-text: {{ $settings->text_color ?? '#1f2937' }};
            --site-bg: {{ $settings->background_color ?? '#ffffff' }};
            --site-surface: {{ $settings->surface_color ?? '#f8fafc' }};
            --site-border: {{ $settings->border_color ?? '#e2e8f0' }};
            --site-muted: {{ $settings->muted_text_color ?? '#64748b' }};
            --site-heading-font: '{{ $settings->heading_font ?? 'Cairo' }}', 'Noto Sans Arabic', sans-serif;
            --site-body-font: '{{ $settings->body_font ?? 'Cairo' }}', 'Noto Sans Arabic', sans-serif;
            --site-text-base: {{ $fontSizeMap[$fss] }};
            --site-h1: {{ $h1Map[$fss] }};
            --site-h2: {{ $h2Map[$fss] }};
            --site-h3: {{ $h3Map[$fss] }};
            --site-heading-weight: {{ $settings->heading_weight ?? '700' }};
            --site-line-height: {{ $lineHeightMap[$lh] }};
            --site-letter-spacing: {{ $letterSpacingMap[$ls] }};
            --section-py: {{ $sectionPyMap[$dn] }};
            --card-gap: {{ $cardGapMap[$dn] }};
            --site-radius: {{ $radiusMap[$br] }};
            --site-radius-lg: {{ $radiusLgMap[$br] }};
            --anim-duration: {{ $animDurationMap[$as] }};
        }
        .website-body {
            font-family: var(--site-body-font);
            font-size: var(--site-text-base);
            line-height: var(--site-line-height);
            letter-spacing: var(--site-letter-spacing);
            background-color: var(--site-bg);
            color: var(--site-text);
        }
        .hero-title, .section-title, .stat-number {
            font-family: var(--site-heading-font);
            font-weight: var(--site-heading-weight);
        }
        /* Card Styles */
        .site-card {
            border-radius: var(--site-radius-lg);
            {{ match($settings->card_style ?? 'raised') {
                'flat' => 'box-shadow: none; border: none; background: transparent;',
                'raised' => 'box-shadow: 0 4px 20px rgba(0,0,0,0.15);',
                'bordered' => 'box-shadow: none; border: 1px solid var(--site-border);',
                'glass' => 'box-shadow: 0 8px 32px rgba(0,0,0,0.1); border: 1px solid rgba(255,255,255,0.1); backdrop-filter: blur(10px); background: rgba(255,255,255,0.05);',
                default => '',
            } }}
        }
        /* Image Shapes */
        .site-img {
            {{ match($settings->image_shape ?? 'rounded') {
                'square' => 'border-radius: 0;',
                'rounded' => 'border-radius: var(--site-radius-lg);',
                'circle' => 'border-radius: 50%;',
                'blob' => 'border-radius: 30% 70% 70% 30% / 30% 30% 70% 70%;',
                default => '',
            } }}
        }
    </style>

    @if($settings->custom_css)
        <style>{!! $settings->custom_css !!}</style>
    @endif

    {{-- Structured Data --}}
    @php
        $jsonLd = [
            '@context' => 'https://schema.org',
            '@type' => 'SportsActivityLocation',
            'name' => $academy->name_ar,
            'description' => $settings->site_description ?? '',
            'url' => url()->current(),
            'address' => ['@type' => 'PostalAddress', 'addressCountry' => 'EG'],
        ];
        if ($academy->logo_path) {
            $jsonLd['image'] = asset('storage/' . $academy->logo_path);
        }
    @endphp
    <script type="application/ld+json">{!! json_encode($jsonLd, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES | JSON_PRETTY_PRINT) !!}</script>

    @if($settings->google_analytics_id)
        <script async src="https://www.googletagmanager.com/gtag/js?id={{ $settings->google_analytics_id }}"></script>
        <script>
            window.dataLayer = window.dataLayer || [];
            function gtag(){dataLayer.push(arguments);}
            gtag('js', new Date());
            gtag('config', '{{ $settings->google_analytics_id }}');
        </script>
    @endif
</head>
<body class="website-body" data-template="{{ $settings->template ?? 'bold_athletic' }}" data-density="{{ $settings->density ?? 'comfortable' }}" data-radius="{{ $settings->border_radius_preset ?? 'rounded' }}" data-card="{{ $settings->card_style ?? 'raised' }}" data-animations="{{ ($settings->animations_enabled ?? true) ? 'true' : 'false' }}" data-anim-speed="{{ $settings->animation_speed ?? 'normal' }}">
    {{-- Announcement Bar --}}
    @include('website.partials.announcement-bar')

    {{-- Navbar --}}
    @include('website.navbar')

    {{-- Main Content --}}
    <main>
        {{ $slot ?? '' }}
        @yield('content')
    </main>

    {{-- Footer --}}
    @include('website.footer')

    {{-- Floating Elements (WhatsApp, scroll-to-top, custom button) --}}
    @include('website.partials.floating-elements')

    {{-- Popup Modal --}}
    @include('website.partials.popup-modal')

    @isset($isPreview)
        <div class="fixed top-4 left-1/2 -translate-x-1/2 z-[200] bg-amber-500 text-black px-4 py-2 rounded-full text-sm font-bold shadow-lg">
            وضع المعاينة — غير منشور
        </div>
    @endisset

    @livewireScripts
</body>
</html>
