#!/usr/bin/env bash
set -Eeuo pipefail

APP="/home/cghggujarat/laravel_apps/cghg_portal"
PREVIEW="/home/cghggujarat/public_html/new/portalarea-laravel-preview"
OLD="/home/cghggujarat/public_html/website"
PHP82="/opt/cpanel/ea-php82/root/usr/bin/php"
OWNER="cghggujarat:cghggujarat"
STAMP="$(date +%Y%m%d-%H%M%S)"
BACKUP="$APP/_migration_backups/website-light-tricolor-v6-$STAMP"

fail(){ echo "ERROR: $*" >&2; exit 1; }
say(){ printf '\n===== %s =====\n' "$1"; }

[ -d "$APP" ] || fail "Laravel app missing: $APP"
[ -f "$APP/artisan" ] || fail "artisan missing: $APP/artisan"
[ -d "$OLD" ] || fail "Old website folder missing: $OLD"

cd "$APP"

say "1/8 BACKUP"
mkdir -p "$BACKUP"

for f in \
  resources/views/website/layout.blade.php \
  resources/views/website/home.blade.php \
  resources/views/website/partials/leadership-grid.blade.php
do
  [ -f "$f" ] && cp -a "$f" "$BACKUP/$(basename "$f").before"
done

cat > "$BACKUP/ROLLBACK.sh" <<ROLLBACK
#!/usr/bin/env bash
set -e
APP="$APP"
BACKUP="$BACKUP"
[ -f "\$BACKUP/layout.blade.php.before" ] && cp -af "\$BACKUP/layout.blade.php.before" "\$APP/resources/views/website/layout.blade.php"
[ -f "\$BACKUP/home.blade.php.before" ] && cp -af "\$BACKUP/home.blade.php.before" "\$APP/resources/views/website/home.blade.php"
[ -f "\$BACKUP/leadership-grid.blade.php.before" ] && cp -af "\$BACKUP/leadership-grid.blade.php.before" "\$APP/resources/views/website/partials/leadership-grid.blade.php"
chown -R $OWNER "\$APP/resources/views/website" 2>/dev/null || true
cd "\$APP"
runuser -u cghggujarat -- env HOME=/home/cghggujarat "$PHP82" artisan optimize:clear >/dev/null 2>&1 || true
echo "ROLLBACK COMPLETE"
ROLLBACK
chmod 750 "$BACKUP/ROLLBACK.sh"

rollback_on_error(){
  code=$?
  echo
  echo "V6 PATCH FAILED - restoring website views..."
  bash "$BACKUP/ROLLBACK.sh" || true
  exit "$code"
}
trap rollback_on_error ERR

say "2/8 COPY ORIGINAL HOME GUARD ASSETS"
mkdir -p "$APP/public/assets/website" "$PREVIEW/assets/website"

python3 - <<'PY'
from pathlib import Path
import shutil

old = Path("/home/cghggujarat/public_html/website")
targets = [
    (["logo.png","logo.jpg","logo.jpeg"], "logo.png"),
    (["amit_shahjpg.jpg","amit_shah.jpg","amit shah.jpg","amitshah.jpg"], "amit-shah.jpg"),
    (["cm.png","cm.jpg","bhupendra.png","bhupendra.jpg"], "bhupendra-patel.png"),
    (["harsh sangvi.png","harsh sanghavi.png","harsh.jpg","harsh.png"], "harsh-sanghavi.png"),
    (["KAMLESHBHAI.jpg","kamleshbhai.jpg","kamlesh.jpg","kamlesh.png"], "kamlesh-patel.jpg"),
    (["sanjiv.jpg","sanjiv.png","sanjeev.jpg","sanjeev.png"], "sanjiv-kumar.jpg"),
    (["ips.jpg","ips.png","rajkumar.jpg","rajkumar.png"], "sp-rajkumar.jpg"),
]
destinations = [
    Path("/home/cghggujarat/laravel_apps/cghg_portal/public/assets/website"),
    Path("/home/cghggujarat/public_html/new/portalarea-laravel-preview/assets/website"),
]

all_files = [p for p in old.rglob("*") if p.is_file()]
lower_map = {}
for p in all_files:
    lower_map.setdefault(p.name.lower(), p)

for variants, destname in targets:
    src = None
    for name in variants:
        src = lower_map.get(name.lower())
        if src:
            break
    if not src:
        # fuzzy fallback
        keys = [v.lower().replace(" ","").replace("_","").split(".")[0] for v in variants]
        for p in all_files:
            compact = p.name.lower().replace(" ","").replace("_","")
            if any(k and k in compact for k in keys):
                if p.suffix.lower() in {".png",".jpg",".jpeg",".webp",".gif"}:
                    src = p
                    break
    if src:
        for d in destinations:
            d.mkdir(parents=True, exist_ok=True)
            shutil.copy2(src, d / destname)
        print(f"COPIED {src.name} -> {destname}")
    else:
        print(f"WARNING asset not found for {destname}")

# Existing old-site campaign / government images, if present.
extra_names = [
    "logo3_v1CEOOffice.jpg","digiLocker_Small.jpg","HomeCEO_15_7_2016.jpg",
    "bannerindiagovin.gif","logo_statueofunity.png","ek-ped-maa-ke-naam.jpg",
    "swatchh_bharat.jpg","digital-india.jpg"
]
for name in extra_names:
    src = lower_map.get(name.lower())
    if not src:
        continue
    for d in destinations:
        shutil.copy2(src, d / name)
    print(f"COPIED {src.name}")
PY

chown -R "$OWNER" "$APP/public/assets/website" "$PREVIEW/assets/website" 2>/dev/null || true
find "$APP/public/assets/website" "$PREVIEW/assets/website" -type d -exec chmod 755 {} \; 2>/dev/null || true
find "$APP/public/assets/website" "$PREVIEW/assets/website" -type f -exec chmod 644 {} \; 2>/dev/null || true

say "3/8 INSTALL LIGHT WHITE + ORANGE + GREEN UI"
mkdir -p resources/views/website/partials

cat > resources/views/website/layout.blade.php <<'BLADE'
<!DOCTYPE html>
<html lang="{{ str_replace('_', '-', app()->getLocale()) }}">
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <meta name="theme-color" content="#ffffff">
    <title>@yield('title', 'Commandant General Home Guards Gujarat')</title>
    <meta name="description" content="@yield('meta_description', 'Commandant General Home Guards Gujarat digital portal.')">

    <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=Anek+Gujarati:wght@400;500;600;700;800&family=Inter:wght@400;500;600;700;800&display=swap" rel="stylesheet">

    <style>
        :root{
            --saffron:#f58b2a;
            --saffron-deep:#d96d0c;
            --saffron-soft:#fff7ef;
            --green:#17843f;
            --green-deep:#0e6730;
            --green-soft:#f1faf4;
            --cream:#fffdf9;
            --white:#ffffff;
            --ink:#253027;
            --muted:#6c766e;
            --line:#e7ece8;
            --shadow:0 16px 38px rgba(36,72,46,.08);
            --shadow-sm:0 8px 22px rgba(36,72,46,.06);
            --max:1260px;
        }
        *{box-sizing:border-box}
        html{scroll-behavior:smooth}
        body{
            margin:0;background:#fff;color:var(--ink);
            font-family:Inter,"Anek Gujarati","Nirmala UI",system-ui,sans-serif;
            line-height:1.65;-webkit-font-smoothing:antialiased;
        }
        a{text-decoration:none;color:inherit}
        img{display:block;max-width:100%}
        .container{width:min(calc(100% - 40px),var(--max));margin:auto}
        .guj,.gujarati{font-family:"Anek Gujarati",Inter,sans-serif}

        .tri-line{
            height:6px;
            background:linear-gradient(90deg,#ff9933 0 33.33%,#fff 33.33% 66.66%,#138808 66.66%);
            border-bottom:1px solid #eee;
        }

        .utility{
            background:#fff;border-bottom:1px solid var(--line);
            font-size:12px;color:#68736b;
        }
        .utility .container{
            min-height:36px;display:flex;align-items:center;justify-content:space-between;gap:18px
        }
        .utility-left,.utility-right{display:flex;align-items:center;gap:12px}
        .flag{
            width:33px;height:21px;border-radius:3px;overflow:hidden;
            display:grid;grid-template-rows:1fr 1fr 1fr;box-shadow:0 0 0 1px #d9dfd9;
            position:relative;
        }
        .flag i:nth-child(1){background:#ff9933}
        .flag i:nth-child(2){background:#fff}
        .flag i:nth-child(3){background:#138808}
        .flag:after{
            content:"";position:absolute;width:7px;height:7px;border:1.2px solid #2c4f87;border-radius:50%;
            left:50%;top:50%;transform:translate(-50%,-50%);
        }
        .gov{font-weight:800;color:#354039}

        header{
            position:sticky;top:0;z-index:70;background:rgba(255,255,255,.97);
            backdrop-filter:blur(12px);border-bottom:1px solid var(--line);box-shadow:0 6px 20px rgba(34,64,42,.04);
        }
        .head-row{
            min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px
        }
        .brand{display:flex;align-items:center;gap:14px;min-width:0}
        .logo-box{
            width:66px;height:66px;border-radius:16px;background:#fff;padding:4px;
            border:1px solid var(--line);box-shadow:var(--shadow-sm);overflow:hidden;position:relative;
        }
        .logo-box:before,.logo-box:after{
            content:"";position:absolute;left:0;right:0;height:4px;z-index:2
        }
        .logo-box:before{top:0;background:var(--saffron)}
        .logo-box:after{bottom:0;background:var(--green)}
        .logo-box img{width:100%;height:100%;object-fit:contain;position:relative;z-index:1}
        .logo-fallback{display:none;height:100%;place-items:center;font-weight:900;color:var(--green)}
        .brand-copy strong{
            display:block;font-family:"Anek Gujarati",Inter,sans-serif;font-size:21px;line-height:1.22;font-weight:800
        }
        .brand-copy span{display:block;font-size:12px;color:#747e76;margin-top:4px}
        nav{display:flex;align-items:center;gap:2px}
        nav a{
            padding:10px 11px;border-radius:11px;font-size:13px;font-weight:750;color:#4c574f
        }
        nav a:hover,nav a.active{background:var(--green-soft);color:var(--green-deep)}
        .login{
            color:#fff!important;background:linear-gradient(135deg,var(--green),var(--green-deep))!important;
            box-shadow:0 10px 23px rgba(23,132,63,.17);padding:11px 17px!important
        }
        .toggle{
            display:none;width:44px;height:44px;border:1px solid var(--line);border-radius:12px;background:#fff;
            font-size:22px;color:var(--green);cursor:pointer
        }

        .hero{
            padding:68px 0 64px;position:relative;overflow:hidden;
            background:
                radial-gradient(circle at 8% 18%,rgba(245,139,42,.11),transparent 27%),
                radial-gradient(circle at 93% 78%,rgba(23,132,63,.09),transparent 29%),
                linear-gradient(135deg,#fffaf5 0%,#fff 48%,#f5fcf7 100%);
            border-bottom:1px solid var(--line);
        }
        .hero-grid{display:grid;grid-template-columns:1.13fr .87fr;gap:54px;align-items:center}
        .kicker{
            display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;
            background:#fff;border:1px solid #eadfd4;color:var(--saffron-deep);
            font-size:11px;font-weight:850;letter-spacing:.1em;text-transform:uppercase;box-shadow:var(--shadow-sm)
        }
        .kicker:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--green)}
        .hero h1{
            margin:17px 0 13px;font-size:clamp(44px,5vw,66px);line-height:1.02;letter-spacing:-.045em;color:#263029
        }
        .hero h1 .guj{
            display:block;margin-top:12px;color:var(--green-deep);font-size:.58em;letter-spacing:0;line-height:1.35
        }
        .hero p{max-width:790px;margin:0;color:#5e6961;font-size:16px}
        .hero .guj-copy{
            margin-top:12px;font-family:"Anek Gujarati",Inter,sans-serif;font-weight:600;color:#556159
        }
        .download-note{font-size:13px;font-weight:700;color:#6f786f;margin:22px 0 10px}
        .actions{display:flex;gap:11px;flex-wrap:wrap}
        .btn{
            min-height:47px;padding:0 19px;border-radius:13px;display:inline-flex;align-items:center;justify-content:center;
            font-size:13px;font-weight:800;border:1px solid transparent;transition:.18s ease
        }
        .btn:hover{transform:translateY(-2px)}
        .btn-orange{background:linear-gradient(135deg,#ffad60,var(--saffron));color:#362312;box-shadow:0 12px 27px rgba(245,139,42,.20)}
        .btn-green{background:linear-gradient(135deg,var(--green),var(--green-deep));color:#fff;box-shadow:0 12px 27px rgba(23,132,63,.16)}
        .btn-light{background:#fff;border-color:var(--line);color:var(--green-deep)}

        .hero-card{
            background:rgba(255,255,255,.92);border:1px solid var(--line);border-radius:27px;padding:26px;
            box-shadow:var(--shadow);position:relative;overflow:hidden
        }
        .hero-card:before{
            content:"";position:absolute;left:0;right:0;top:0;height:5px;
            background:linear-gradient(90deg,#ff9933 0 33.33%,#fff 33.33% 66.66%,#138808 66.66%)
        }
        .hero-card small{display:block;color:#6b756d;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
        .hero-logo-wrap{
            min-height:245px;margin:12px 0 4px;display:grid;place-items:center;border-radius:22px;
            background:linear-gradient(145deg,#fff8f0,#fff,#f3fbf5)
        }
        .hero-logo{width:230px;height:215px;object-fit:contain;filter:drop-shadow(0 10px 15px rgba(47,82,54,.09))}
        .hero-mini{border-top:1px solid var(--line);padding-top:14px;color:#6a756c;font-size:12px}

        .section{padding:70px 0}
        .section.alt{background:#fcfdfb;border-top:1px solid #f0f3ef;border-bottom:1px solid #f0f3ef}
        .section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:29px}
        .section-head .tag{font-size:11px;font-weight:850;letter-spacing:.13em;text-transform:uppercase;color:var(--saffron-deep)}
        .section-head h2{margin:4px 0 0;font-size:clamp(30px,3vw,42px);line-height:1.15;letter-spacing:-.03em}
        .section-head p{margin:0;max-width:520px;color:var(--muted)}

        .mission-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}
        .mission{
            padding:23px;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow-sm);
            position:relative;overflow:hidden
        }
        .mission:nth-child(odd){background:linear-gradient(145deg,#fff9f3,#fff)}
        .mission:nth-child(even){background:linear-gradient(145deg,#f6fcf7,#fff)}
        .mission:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--saffron)}
        .mission:nth-child(even):before{background:var(--green)}
        .mission-no{
            width:42px;height:42px;border-radius:13px;display:grid;place-items:center;
            background:var(--saffron-soft);color:var(--saffron-deep);font-size:12px;font-weight:900
        }
        .mission:nth-child(even) .mission-no{background:var(--green-soft);color:var(--green-deep)}
        .mission h3{margin:15px 0 7px;font-size:17px}
        .mission p{margin:0;color:var(--muted);font-size:13px}

        .leaders-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
        .leader{
            background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:var(--shadow-sm)
        }
        .leader-photo{
            height:300px;display:grid;place-items:center;position:relative;overflow:hidden;
            background:linear-gradient(145deg,#fff7ef 0%,#fff 48%,#f1faf4 100%)
        }
        .leader-photo img{width:100%;height:100%;object-fit:cover;position:relative;z-index:2}
        .leader-fallback{
            position:absolute;z-index:1;width:82px;height:82px;border-radius:50%;display:grid;place-items:center;
            background:#fff;border:1px solid var(--line);color:var(--green-deep);font-weight:900
        }
        .leader-body{padding:19px 20px 20px;border-top:4px solid var(--green)}
        .leader:nth-child(odd) .leader-body{border-top-color:var(--saffron)}
        .leader h3{
            margin:0 0 6px;font-family:"Anek Gujarati",Inter,sans-serif;font-size:19px;line-height:1.35
        }
        .leader p{
            margin:0;color:var(--muted);font-family:"Anek Gujarati",Inter,sans-serif;font-size:14px;font-weight:600
        }

        .links-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}
        .link-card{
            padding:25px;background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow-sm);
            position:relative;overflow:hidden;transition:.2s ease
        }
        .link-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
        .link-card:after{
            content:"";position:absolute;left:0;right:0;bottom:0;height:4px;
            background:linear-gradient(90deg,var(--saffron) 0 50%,var(--green) 50%)
        }
        .link-card span{font-size:10px;color:var(--saffron-deep);font-weight:850;letter-spacing:.1em}
        .link-card h3{margin:10px 0 7px;font-size:21px}
        .link-card p{margin:0;color:var(--muted);font-size:14px}
        .link-card b{display:inline-block;margin-top:16px;color:var(--green-deep);font-size:13px}

        .page-hero{
            padding:48px 0;background:
                linear-gradient(100deg,rgba(245,139,42,.08),transparent 36%),
                linear-gradient(280deg,rgba(23,132,63,.08),transparent 39%),#fff;
            border-bottom:1px solid var(--line);position:relative
        }
        .page-hero:after{
            content:"";position:absolute;left:0;right:0;bottom:0;height:4px;
            background:linear-gradient(90deg,#ff9933 0 33.33%,#fff 33.33% 66.66%,#138808 66.66%)
        }
        .crumb{font-size:12px;color:var(--green-deep);font-weight:750;margin-bottom:9px}
        .page-hero h1{margin:0;font-size:clamp(34px,4vw,50px);line-height:1.13;letter-spacing:-.03em}
        .page-hero p{margin:9px 0 0;color:var(--muted)}

        .content-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:22px;align-items:start}
        .content-card,.side-card,.contact-card,.app-panel{
            background:#fff;border:1px solid var(--line);border-radius:21px;box-shadow:var(--shadow-sm)
        }
        .content-card{padding:29px}
        .content-card h2{margin:0 0 14px;font-size:27px}
        .content-card h3{margin:27px 0 9px}
        .content-card p,.content-card li{color:#606b62}
        .side-card{padding:23px;position:sticky;top:112px;border-top:4px solid var(--green)}
        .side-card h3{margin:0 0 7px}
        .side-card p{color:var(--muted);font-size:14px}
        .side-links{display:grid;gap:8px;margin-top:17px}
        .side-links a{padding:10px 12px;border-radius:10px;background:var(--green-soft);color:var(--green-deep);font-size:13px;font-weight:750}

        .contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:17px}
        .contact-card{padding:26px;border-top:4px solid var(--saffron)}
        .contact-card:nth-child(even){border-top-color:var(--green)}
        .contact-card .label{font-size:10px;text-transform:uppercase;font-weight:850;letter-spacing:.12em;color:var(--saffron-deep)}
        .contact-card h3{margin:10px 0 7px}
        .contact-card p{margin:0;color:var(--muted)}

        .manual-list{display:grid;gap:10px}
        .manual-item{
            border:1px solid var(--line);border-radius:14px;padding:16px;display:flex;
            align-items:center;justify-content:space-between;gap:16px;background:#fff
        }
        .manual-item h3{margin:0;font-size:16px}
        .manual-item p{margin:4px 0 0;font-size:13px}
        .policy-section{padding:4px 0 20px;border-bottom:1px solid var(--line)}
        .policy-section:last-child{border-bottom:0}
        .policy-note{padding:16px;border-radius:13px;background:var(--saffron-soft);border-left:4px solid var(--saffron)}

        .app-panel{
            padding:25px;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;
            background:linear-gradient(105deg,#fff8f1,#fff 48%,#f3fbf5)
        }
        .app-panel h3{margin:2px 0 6px}
        .app-panel p{margin:0;color:var(--muted)}

        .partners-wrap{padding:25px 0;background:#fff;border-top:1px solid var(--line)}
        .partners{display:grid;grid-template-columns:repeat(8,1fr);gap:9px}
        .partner{
            height:60px;border:1px solid #edf0ed;border-radius:11px;display:grid;place-items:center;padding:7px;background:#fff
        }
        .partner img{max-height:44px;max-width:100%;object-fit:contain}

        footer{
            color:#334138;background:linear-gradient(135deg,#fff9f2,#fff 45%,#f4fbf5);
            border-top:5px solid var(--saffron)
        }
        .footer-grid{padding:40px 0 30px;display:grid;grid-template-columns:1.3fr .8fr .8fr;gap:40px}
        .footer-brand{display:flex;align-items:center;gap:12px}
        .footer-logo{width:58px;height:58px;border:1px solid var(--line);border-radius:13px;background:#fff;padding:4px}
        .footer-logo img{width:100%;height:100%;object-fit:contain}
        .footer-brand strong{display:block;font-size:18px}
        .footer-brand span{font-size:12px;color:#707a72}
        .footer-copy{max-width:430px;color:#6b766d;font-size:13px}
        .footer-title{font-size:11px;font-weight:850;letter-spacing:.11em;text-transform:uppercase;color:var(--green-deep);margin-bottom:12px}
        .footer-links{display:grid;gap:8px}
        .footer-links a{font-size:13px;color:#58645b}
        .footer-bottom{
            border-top:1px solid var(--line);padding:16px 0 20px;display:flex;justify-content:space-between;gap:18px;
            color:#747e76;font-size:11px
        }

        .reveal{opacity:0;transform:translateY(10px);transition:opacity .5s ease,transform .5s ease}
        .reveal.show{opacity:1;transform:none}

        @media(max-width:1080px){
            .toggle{display:block}
            nav{
                display:none;position:absolute;left:20px;right:20px;top:93px;background:#fff;border:1px solid var(--line);
                border-radius:17px;padding:12px;box-shadow:var(--shadow);flex-direction:column;align-items:stretch
            }
            nav.open{display:flex}
            nav a{padding:12px 14px}
            .hero-grid{grid-template-columns:1fr}
            .hero-card{max-width:520px}
            .mission-grid{grid-template-columns:repeat(2,1fr)}
            .leaders-grid{grid-template-columns:repeat(2,1fr)}
            .partners{grid-template-columns:repeat(4,1fr)}
            .content-grid{grid-template-columns:1fr}
            .side-card{position:relative;top:auto}
        }
        @media(max-width:720px){
            .container{width:min(calc(100% - 26px),var(--max))}
            .utility-right{display:none}
            .head-row{min-height:76px}
            .logo-box{width:54px;height:54px}
            .brand-copy strong{font-size:16px}
            .brand-copy span{font-size:10px}
            nav{top:80px}
            .hero{padding:52px 0}
            .hero h1{font-size:clamp(39px,11vw,52px)}
            .section{padding:54px 0}
            .section-head{display:block}
            .section-head p{margin-top:10px}
            .mission-grid,.leaders-grid,.links-grid,.contact-grid{grid-template-columns:1fr}
            .leader-photo{height:330px}
            .partners{grid-template-columns:repeat(2,1fr)}
            .footer-grid{grid-template-columns:1fr;gap:25px}
            .footer-bottom{display:block}
            .app-panel{grid-template-columns:1fr}
        }
        @media(prefers-reduced-motion:reduce){
            *{scroll-behavior:auto!important;transition:none!important}
            .reveal{opacity:1;transform:none}
        }
    </style>
    @stack('head')
</head>
<body>
<div class="tri-line"></div>

<div class="utility">
    <div class="container">
        <div class="utility-left">
            <span class="flag" aria-label="India"><i></i><i></i><i></i></span>
            <span class="gov">Government of Gujarat</span>
            <span>· Home Guards Digital Portal</span>
        </div>
        <div class="utility-right">
            <span>For authorised departmental use</span>
            <a href="mailto:support@gujarathomeguard.gov.in">support@gujarathomeguard.gov.in</a>
        </div>
    </div>
</div>

<header>
    <div class="container head-row">
        <a class="brand" href="{{ route('website.home') }}">
            <span class="logo-box">
                <img src="{{ asset('assets/website/logo.png') }}" alt="Home Guards Gujarat Logo"
                     onerror="this.style.display='none';this.nextElementSibling.style.display='grid'">
                <span class="logo-fallback">HG</span>
            </span>
            <span class="brand-copy">
                <strong>કમાન્ડન્ટ જનરલ હોમગાર્ડઝ ગુજરાત</strong>
                <span>Commandant General Home Guards Gujarat</span>
            </span>
        </a>

        <button type="button" class="toggle" aria-label="Open menu">☰</button>

        <nav>
            <a class="{{ request()->routeIs('website.home') ? 'active' : '' }}" href="{{ route('website.home') }}">Home</a>
            <a class="{{ request()->routeIs('website.about') ? 'active' : '' }}" href="{{ route('website.about') }}">About</a>
            <a class="{{ request()->routeIs('website.leadership') ? 'active' : '' }}" href="{{ route('website.leadership') }}">Leadership</a>
            <a class="{{ request()->routeIs('website.manuals') ? 'active' : '' }}" href="{{ route('website.manuals') }}">Manuals</a>
            <a class="{{ request()->routeIs('website.software') ? 'active' : '' }}" href="{{ route('website.software') }}">Software</a>
            <a class="{{ request()->routeIs('website.contact') ? 'active' : '' }}" href="{{ route('website.contact') }}">Contact</a>
            <a class="login" href="{{ route('login') }}">Officer Login →</a>
        </nav>
    </div>
</header>

<main>@yield('content')</main>

<div class="partners-wrap">
    <div class="container partners">
        @foreach([
            ['logo3_v1CEOOffice.jpg','Public Service'],
            ['digiLocker_Small.jpg','DigiLocker'],
            ['HomeCEO_15_7_2016.jpg','Citizen Services'],
            ['bannerindiagovin.gif','India.gov.in'],
            ['logo_statueofunity.png','Statue of Unity'],
            ['ek-ped-maa-ke-naam.jpg','Ek Ped Maa Ke Naam'],
            ['swatchh_bharat.jpg','Swachh Bharat'],
            ['digital-india.jpg','Digital India']
        ] as $p)
            <div class="partner">
                <img src="{{ asset('assets/website/'.$p[0]) }}" alt="{{ $p[1] }}" loading="lazy"
                     onerror="this.parentElement.style.display='none'">
            </div>
        @endforeach
    </div>
</div>

<footer>
    <div class="container">
        <div class="footer-grid">
            <div>
                <div class="footer-brand">
                    <div class="footer-logo"><img src="{{ asset('assets/website/logo.png') }}" alt="Home Guards Gujarat"></div>
                    <div><strong>Home Guards Gujarat</strong><span>Commandant General · Gujarat</span></div>
                </div>
                <p class="footer-copy">Official public information, resources, policy documents and secure officer access for Home Guards Gujarat.</p>
            </div>
            <div>
                <div class="footer-title">Quick Links</div>
                <div class="footer-links">
                    <a href="{{ route('website.about') }}">About Us</a>
                    <a href="{{ route('website.leadership') }}">Leadership</a>
                    <a href="{{ route('website.manuals') }}">Manuals & Guides</a>
                    <a href="{{ route('website.contact') }}">Contact Us</a>
                    <a href="{{ route('login') }}">Officer Login</a>
                </div>
            </div>
            <div>
                <div class="footer-title">Policies</div>
                <div class="footer-links">
                    <a href="{{ route('website.privacy') }}">Privacy Policy</a>
                    <a href="{{ route('website.terms') }}">Terms & Conditions</a>
                    <a href="{{ route('website.data-deletion') }}">Data Deletion Policy</a>
                </div>
            </div>
        </div>

        <div class="footer-bottom">
            <span>© 2025 Gujarat Home Guard Department · Designed for Official Use</span>
            <span>Contact: support@gujarathomeguard.gov.in · Helpline: +91-12345-67890</span>
        </div>
    </div>
</footer>

<script>
(()=>{
    const b=document.querySelector('.toggle'),n=document.querySelector('nav');
    if(b&&n)b.addEventListener('click',()=>n.classList.toggle('open'));
    const els=document.querySelectorAll('.reveal');
    if(!('IntersectionObserver' in window)){els.forEach(e=>e.classList.add('show'));return}
    const io=new IntersectionObserver(entries=>entries.forEach(x=>{
        if(x.isIntersecting){x.target.classList.add('show');io.unobserve(x.target)}
    }),{threshold:.07});
    els.forEach(e=>io.observe(e));
})();
</script>
@stack('scripts')
</body>
</html>
BLADE

say "4/8 HOME PAGE - SAME OLD WEBSITE DATA ORDER"
cat > resources/views/website/home.blade.php <<'BLADE'
@extends('website.layout')

@section('title','Commandant General Home Guards Gujarat')
@section('meta_description','Home Guards Gujarat public information, mission, leadership, resources and secure officer access.')

@section('content')

{{-- 1. WELCOME / સ્વાગત છે --}}
<section class="hero">
    <div class="container hero-grid">
        <div>
            <span class="kicker">Home Guards Gujarat</span>
            <h1>Welcome <span class="guj">સ્વાગત છે</span></h1>

            <p>
                The Home Guards organization in Gujarat plays a vital role in maintaining peace, security, and assisting in disaster management.
                Our dedicated volunteers work alongside law enforcement to ensure community safety and support during emergencies.
            </p>

            <p class="guj-copy">
                ગુજરાતમાં હોમગાર્ડઝ સંસ્થા શાંતિ, સુરક્ષા અને આપત્તિ વ્યવસ્થાપનમાં મહત્વપૂર્ણ ભૂમિકા ભજવે છે.
                અમારા સમર્પિત સ્વયંસેવકો કાયદાના અમલીકરણ સાથે મળીને સામુદાયિક સુરક્ષા અને કટોકટી દરમિયાન મદદ પૂરી પાડવા માટે કાર્યરત છે.
            </p>

            <div class="download-note">Download our App from here:</div>
            <div class="actions">
                <a class="btn btn-orange" href="https://cghggujarat.in/website/cghg.apk">Download APK ↓</a>
                <a class="btn btn-green" href="{{ route('login') }}">Officer Login →</a>
                <a class="btn btn-light" href="{{ route('website.about') }}">About Organisation</a>
            </div>
        </div>

        <aside class="hero-card reveal">
            <small>Official Home Guards Gujarat</small>
            <div class="hero-logo-wrap">
                <img class="hero-logo" src="{{ asset('assets/website/logo.png') }}" alt="Home Guards Gujarat Logo"
                     onerror="this.style.display='none';this.nextElementSibling.style.display='grid'">
                <div class="logo-fallback">HG</div>
            </div>
            <div class="hero-mini">Official public information and secure departmental access.</div>
        </aside>
    </div>
</section>

{{-- 2. OUR MISSION / અમારું મિશન - numbered first exactly before leadership photos --}}
<section class="section alt">
    <div class="container">
        <div class="section-head">
            <div>
                <div class="tag">Our Mission</div>
                <h2 class="guj">અમારું મિશન</h2>
            </div>
            <p>Core mission areas of the Home Guards organization.</p>
        </div>

        <div class="mission-grid">
            @foreach([
                ['01','Community Safety & Security','Supporting community safety and security.'],
                ['02','Disaster Management Support','Supporting response during disaster and emergency situations.'],
                ['03','Public Order Maintenance','Assisting authorised agencies in maintaining public order.'],
                ['04','Emergency Response','Supporting urgent public-safety response requirements.'],
                ['05','Volunteer Training Programs','Improving readiness through structured volunteer training.'],
                ['06','Law Enforcement Assistance','Supporting law-enforcement agencies within authorised duties.']
            ] as $m)
                <article class="mission reveal">
                    <div class="mission-no">{{ $m[0] }}</div>
                    <h3>{{ $m[1] }}</h3>
                    <p>{{ $m[2] }}</p>
                </article>
            @endforeach
        </div>
    </div>
</section>

{{-- 3. LEADERSHIP PHOTOS - same position after mission as old website --}}
<section class="section">
    <div class="container">
        <div class="section-head">
            <div>
                <div class="tag">Leadership</div>
                <h2>Leadership</h2>
            </div>
            <p>Leadership information displayed on the existing public Home Guards Gujarat website.</p>
        </div>

        @include('website.partials.leadership-grid')
    </div>
</section>

{{-- 4. ABOUT / CONTACT / MANUALS - same order after leadership --}}
<section class="section alt">
    <div class="container">
        <div class="section-head">
            <div>
                <div class="tag">Public Information</div>
                <h2>Information & Resources</h2>
            </div>
            <p>Public information links carried forward from the existing website.</p>
        </div>

        <div class="links-grid">
            <a class="link-card reveal" href="{{ route('website.about') }}">
                <span>01 · ORGANISATION</span>
                <h3>About Us</h3>
                <p>Learn about our organization.</p>
                <b>Open →</b>
            </a>

            <a class="link-card reveal" href="{{ route('website.contact') }}">
                <span>02 · CONTACT</span>
                <h3>Contact Us</h3>
                <p>Get in touch with us.</p>
                <b>Open →</b>
            </a>

            <a class="link-card reveal" href="{{ route('website.manuals') }}">
                <span>03 · RESOURCES</span>
                <h3>Manuals & Guides</h3>
                <p>Download resources.</p>
                <b>Open →</b>
            </a>
        </div>
    </div>
</section>

@endsection
BLADE

say "5/8 LEADERSHIP PHOTOS + SAME OLD WEBSITE ORDER"
cat > resources/views/website/partials/leadership-grid.blade.php <<'BLADE'
@php
$leaders = [
    ['img'=>'amit-shah.jpg','name'=>'શ્રી અમિત શાહ','role'=>'માનનીય કેન્દ્રીય ગૃહ અને સહકારિતા મંત્રી','fallback'=>'AS'],
    ['img'=>'bhupendra-patel.png','name'=>'શ્રી ભુપેન્દ્ર પટેલ','role'=>'માનનીય મુખ્યમંત્રીશ્રી, ગુજરાત રાજ્ય','fallback'=>'BP'],
    ['img'=>'harsh-sanghavi.png','name'=>'શ્રી હર્ષ સંઘવી','role'=>'માનનીય નાયબ મુખ્યમંત્રીશ્રી ગૃહ વિભાગ','fallback'=>'HS'],
    ['img'=>'kamlesh-patel.jpg','name'=>'શ્રી કમલેશભાઈ પટેલ','role'=>'માનનીય રાજ્યકક્ષાના મંત્રીશ્રી, ગૃહ રક્ષક દળ','fallback'=>'KP'],
    ['img'=>'sanjiv-kumar.jpg','name'=>'શ્રી સંજીવ કુમાર (આઈ.એ.એસ.)','role'=>'અગ્ર સચિવશ્રી (ગૃહ વિભાગ) I/C','fallback'=>'SK'],
    ['img'=>'sp-rajkumar.jpg','name'=>'ડૉ. એસ. પી. રાજકુમાર (આઇ. પી. એસ.)','role'=>'કમાન્ડન્ટ જનરલશ્રી, હોમગાર્ડઝ','fallback'=>'SPR'],
];
@endphp

<div class="leaders-grid">
@foreach($leaders as $l)
    <article class="leader reveal">
        <div class="leader-photo">
            <span class="leader-fallback">{{ $l['fallback'] }}</span>
            <img src="{{ asset('assets/website/'.$l['img']) }}" alt="{{ $l['name'] }}" loading="lazy"
                 onerror="this.style.display='none'">
        </div>
        <div class="leader-body">
            <h3>{{ $l['name'] }}</h3>
            <p>{{ $l['role'] }}</p>
        </div>
    </article>
@endforeach
</div>
BLADE

say "6/8 PERMISSIONS"
chown -R "$OWNER" resources/views/website "$APP/public/assets/website" "$PREVIEW/assets/website" 2>/dev/null || true
find resources/views/website -type f -exec chmod 644 {} \;

say "7/8 LARAVEL VALIDATION"
"$PHP82" -l routes/web.php
grep -q "Anek+Gujarati" resources/views/website/layout.blade.php
grep -q "OUR MISSION" resources/views/website/home.blade.php
grep -q "LEADERSHIP PHOTOS" resources/views/website/home.blade.php
grep -q "amit-shah.jpg" resources/views/website/partials/leadership-grid.blade.php

runuser -u cghggujarat -- env HOME=/home/cghggujarat "$PHP82" artisan optimize:clear
runuser -u cghggujarat -- env HOME=/home/cghggujarat "$PHP82" artisan view:cache

say "8/8 RESULT"
echo "LIGHT_WHITE_ORANGE_GREEN=OK"
echo "ANEK_GUJARATI=OK"
echo "OLD_DATA_ORDER=Welcome > Mission Numbers > Leadership Photos > About/Contact/Manuals"
echo "OFFICER_LOGIN=UNCHANGED"

for f in logo.png amit-shah.jpg bhupendra-patel.png harsh-sanghavi.png kamlesh-patel.jpg sanjiv-kumar.jpg sp-rajkumar.jpg; do
    if [ -s "$PREVIEW/assets/website/$f" ]; then
        echo "PHOTO_OK=$f"
    else
        echo "PHOTO_MISSING=$f"
    fi
done

echo
echo "PREVIEW=https://cghggujarat.in/new/portalarea-laravel-preview/website"
echo "BACKUP=$BACKUP"
echo "ROLLBACK=bash $BACKUP/ROLLBACK.sh"
echo
echo "CGHG WEBSITE LIGHT TRICOLOR V6 INSTALLED"
