
:root{--green:#073b2f;--green2:#0c6a50;--gold:#d7a84c;--gold2:#f2d18b;--cream:#f7f1e6;--paper:#fffdf9;--ink:#102820;--muted:#66746b;--line:#eadfc9;--blue:#0a6782;--red:#b6453b;--shadow:0 24px 70px rgba(7,38,31,.14);--radius:28px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:linear-gradient(180deg,#fffdf9,#f6efe2 60%,#fffdf9);color:var(--ink);font-family:system-ui,-apple-system,"Segoe UI",Tahoma,Arial,sans-serif;overflow-x:hidden}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}.container{width:min(1260px,calc(100% - 28px));margin-inline:auto}.hidden{display:none!important}.muted{color:var(--muted)}
.topbar{position:fixed;top:12px;left:12px;right:12px;z-index:70;display:flex;align-items:center;justify-content:space-between;gap:10px;pointer-events:none}.topbar>*{pointer-events:auto}.brand{display:flex;align-items:center;gap:11px;color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.4)}.brand-logo{width:54px;height:54px;border-radius:19px;background:rgba(255,255,255,.93);color:var(--green);display:grid;place-items:center;font-weight:1000;box-shadow:0 15px 40px rgba(0,0,0,.17)}.brand b{display:block;font-size:15px}.brand span{font-size:12px;opacity:.9}.icon-btn,.glass-btn{border:0;border-radius:999px;background:rgba(255,255,255,.92);color:var(--green);box-shadow:0 15px 38px rgba(0,0,0,.14);min-height:52px;padding:0 17px;font-weight:900}.icon-btn{width:52px;padding:0;font-size:24px}.top-actions{display:flex;gap:8px}
.hero{min-height:720px;position:relative;display:flex;align-items:flex-end;overflow:hidden;border-radius:0 0 52px 52px;background:#06291f}.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,35,28,.18),rgba(4,35,28,.58) 54%,rgba(4,35,28,.93)),url('../images/hero.jpg') center/cover no-repeat}.hero::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 15% 16%,rgba(215,168,76,.18),transparent 28%),linear-gradient(135deg,rgba(255,255,255,.035) 25%,transparent 25%) 0 0/38px 38px;mix-blend-mode:screen}.hero-inner{position:relative;z-index:2;padding:150px 0 88px;display:grid;grid-template-columns:1.15fr .85fr;gap:24px;align-items:end}.eyebrow{display:inline-flex;padding:10px 15px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.17);color:var(--gold2);font-weight:850;backdrop-filter:blur(12px)}.hero h1{color:#fff;font-size:clamp(48px,7vw,94px);line-height:.98;margin:22px 0 12px;letter-spacing:-.045em}.hero h1 span{display:block;color:var(--gold2);font-size:.54em;letter-spacing:0}.hero p{color:rgba(255,255,255,.88);font-size:20px;line-height:1.9;margin:0;max-width:760px}.hero-actions{display:flex;gap:11px;flex-wrap:wrap;margin-top:28px}.btn{border:0;border-radius:999px;padding:15px 22px;font-weight:950;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:.2s}.btn:hover{transform:translateY(-2px)}.btn.primary{background:var(--gold);color:#183624;box-shadow:0 18px 36px rgba(215,168,76,.28)}.btn.secondary{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.2)}.hero-console{background:rgba(255,255,255,.11);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(18px);border-radius:32px;padding:18px;color:#fff;box-shadow:0 25px 70px rgba(0,0,0,.2)}.console-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.live{display:inline-flex;align-items:center;gap:7px;color:#c8f2df;font-weight:800}.live::before{content:"";width:9px;height:9px;border-radius:50%;background:#42d392;box-shadow:0 0 0 7px rgba(66,211,146,.13)}.console-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.console-item{background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:14px}.console-item b{font-size:26px;display:block}.console-item small{color:rgba(255,255,255,.72)}
.role-strip{position:relative;z-index:6;margin-top:-38px}.role-card{background:rgba(255,253,249,.96);border:1px solid var(--line);border-radius:30px;padding:12px;box-shadow:var(--shadow);display:flex;gap:9px;overflow:auto;scrollbar-width:none}.role-card::-webkit-scrollbar{display:none}.role-btn{white-space:nowrap;border:0;background:#fff;border-radius:20px;padding:13px 16px;color:var(--muted);font-weight:900;display:flex;gap:7px;align-items:center}.role-btn.active{background:var(--green);color:#fff}
main{padding:28px 0 130px}.section{padding:28px 0}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:15px;margin-bottom:18px}.section-head h2{margin:0;font-size:clamp(28px,3.4vw,46px)}.section-head p{margin:7px 0 0;color:var(--muted);line-height:1.8}.panel{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:0 12px 34px rgba(0,0,0,.045)}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:17px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}
.search-panel{background:linear-gradient(135deg,var(--green),#0c6a50);color:#fff}.search-row{display:grid;grid-template-columns:1fr auto auto;gap:10px}.search-row input,.search-row select{border:0;border-radius:16px;padding:15px;background:#fff;color:var(--ink);outline:none}.search-row button{border:0;border-radius:16px;padding:0 22px;background:var(--gold);color:#163724;font-weight:950}
.dest-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:17px}.dest-card{background:#fff;border:1px solid var(--line);border-radius:27px;overflow:hidden;box-shadow:0 12px 30px rgba(0,0,0,.05);transition:.25s}.dest-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.dest-media{height:225px;overflow:hidden;position:relative}.dest-media img{width:100%;height:100%;object-fit:cover;transition:.4s}.dest-card:hover img{transform:scale(1.05)}.dest-type{position:absolute;top:12px;right:12px;background:rgba(255,255,255,.92);padding:7px 10px;border-radius:999px;color:var(--green);font-weight:900;font-size:13px}.dest-body{padding:16px}.dest-body h3{margin:0 0 6px;font-size:23px}.dest-body p{color:var(--muted);line-height:1.75;min-height:75px}.chips{display:flex;gap:7px;flex-wrap:wrap}.chip{padding:7px 9px;border-radius:999px;background:#faf2e2;color:#8d671d;border:1px solid #efdebc;font-size:12px;font-weight:800}
.wilaya-layout{display:grid;grid-template-columns:360px 1fr;gap:17px}.wilaya-list{max-height:630px;overflow:auto}.wilaya-item{width:100%;border:0;border-bottom:1px solid #eee3d1;background:transparent;padding:13px 10px;display:flex;justify-content:space-between;align-items:center;text-align:right;color:var(--ink)}.wilaya-item:hover,.wilaya-item.active{background:#f7f0e3}.wilaya-item b{font-size:16px}.wilaya-code{width:36px;height:36px;border-radius:12px;background:#efe4cd;color:#8b641c;display:grid;place-items:center;font-weight:950}.wilaya-hero{display:grid;grid-template-columns:1.2fr .8fr;gap:15px}.map-frame{width:100%;min-height:300px;border:0;border-radius:24px;background:#e8ede9}.directory-tabs{display:flex;gap:8px;overflow:auto;margin:16px 0}.dir-tab{border:1px solid var(--line);background:#fff;border-radius:999px;padding:11px 15px;font-weight:900;color:var(--muted)}.dir-tab.active{background:var(--green);color:#fff;border-color:var(--green)}.place-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.place-card{border:1px solid var(--line);background:#fff;border-radius:20px;padding:15px}.place-card h4{margin:0 0 6px;font-size:18px}.place-meta{font-size:13px;color:var(--muted);line-height:1.7}.place-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:11px}.mini-btn{border:0;border-radius:12px;padding:8px 10px;background:#eef5f1;color:var(--green);font-weight:850}.mini-btn.gold{background:#f9eed5;color:#835e14}.unverified{display:inline-flex;background:#fff1df;color:#9b6611;padding:5px 8px;border-radius:999px;font-size:12px;font-weight:850}.verified{display:inline-flex;background:#e4f5ed;color:#0b6a4d;padding:5px 8px;border-radius:999px;font-size:12px;font-weight:850}
.role-page{animation:fade .24s ease}.role-page h2{font-size:36px;margin-top:0}.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.kpi{background:linear-gradient(180deg,#fff,#faf5ea);border:1px solid var(--line);border-radius:22px;padding:17px}.kpi b{font-size:28px;color:var(--green);display:block}.kpi span{color:var(--muted)}.agent-card{border:1px solid var(--line);border-radius:22px;padding:17px;background:#fff}.agent-head{display:flex;gap:12px;align-items:center}.agent-ico{width:52px;height:52px;border-radius:18px;background:linear-gradient(135deg,#fff0c9,#e4c26c);display:grid;place-items:center;font-size:25px}.status{color:#0a845d;font-weight:900;font-size:13px}.insight{margin-top:12px;background:#eef5f1;border-radius:15px;padding:11px;color:#34584b}.bar{height:10px;background:#eee7d9;border-radius:999px;overflow:hidden}.bar span{display:block;height:100%;background:linear-gradient(90deg,var(--green2),var(--gold));border-radius:999px}
.drawer{position:fixed;inset:0;z-index:100;background:rgba(4,26,21,.68);display:none;align-items:center;justify-content:center;padding:15px}.drawer.open{display:flex}.drawer-card{width:min(720px,100%);max-height:90vh;overflow:auto;background:var(--paper);border-radius:30px;padding:22px;box-shadow:0 28px 90px rgba(0,0,0,.3)}.drawer-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.close-btn{width:42px;height:42px;border:0;border-radius:50%;background:#eee7db}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:11px}.form-grid .full{grid-column:1/-1}.form-grid input,.form-grid select,.form-grid textarea{width:100%;border:1px solid var(--line);border-radius:15px;padding:13px;background:#fff}.form-note{background:#fff2df;color:#835c15;border:1px solid #f0d4a2;border-radius:16px;padding:12px;line-height:1.7}.bottom-nav{position:fixed;bottom:10px;left:50%;transform:translateX(-50%);z-index:60;width:min(850px,calc(100% - 18px));display:grid;grid-template-columns:repeat(6,1fr);gap:7px;padding:10px;background:rgba(255,253,249,.95);backdrop-filter:blur(18px);border:1px solid var(--line);box-shadow:0 20px 60px rgba(0,0,0,.15);border-radius:28px}.bottom-nav button,.bottom-nav a{border:0;background:transparent;border-radius:18px;padding:8px 5px;text-align:center;color:#727e76;font-weight:850}.bottom-nav b{display:block;font-size:20px}.bottom-nav .active{background:var(--green);color:#fff}
.toast{position:fixed;right:18px;bottom:110px;z-index:120;background:#123d31;color:#fff;padding:13px 16px;border-radius:16px;box-shadow:var(--shadow);opacity:0;transform:translateY(12px);transition:.25s;pointer-events:none}.toast.show{opacity:1;transform:translateY(0)}
@keyframes fade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:1100px){.hero-inner,.wilaya-hero{grid-template-columns:1fr}.dest-grid,.grid-4,.kpis{grid-template-columns:repeat(2,1fr)}.grid-3,.place-grid{grid-template-columns:repeat(2,1fr)}.wilaya-layout{grid-template-columns:1fr}.wilaya-list{max-height:260px}}
@media(max-width:720px){.brand div:last-child{display:none}.top-actions .glass-btn:first-child{display:none}.hero{min-height:690px}.hero-inner{padding-top:130px}.hero h1{font-size:54px}.hero p{font-size:17px}.console-grid{grid-template-columns:1fr 1fr}.search-row{grid-template-columns:1fr}.dest-grid,.grid-4,.grid-3,.grid-2,.kpis,.place-grid,.form-grid{grid-template-columns:1fr}.role-strip{margin-top:-24px}.section-head{align-items:flex-start;flex-direction:column}.bottom-nav{grid-template-columns:repeat(6,1fr)}.bottom-nav span{font-size:10px}.bottom-nav b{font-size:18px}.form-grid .full{grid-column:auto}}

/* V18 — Smart destination management, immersive media and analytics */
.module-section{margin-top:22px;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:20px;box-shadow:0 12px 34px rgba(0,0,0,.045)}
.module-section>h3{margin-top:0;font-size:25px}.smart-feature{text-align:center}.smart-feature>span{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 12px;border-radius:22px;background:linear-gradient(135deg,#fff0c9,#e4c26c);font-size:31px}.smart-feature h3{margin:5px 0}.smart-feature p{color:var(--muted);line-height:1.7}
.inline-form{display:grid;grid-template-columns:1fr auto;gap:10px}.inline-form input,.vr-toolbar select{border:1px solid var(--line);border-radius:16px;padding:14px;background:#fff;outline:none}.loading-line{margin-top:12px;background:#eef5f1;color:var(--green);padding:12px 14px;border-radius:15px}.booking-confirm,.booking-track{margin-top:14px;background:#e8f5ee;border:1px solid #bfe1d2;color:#174d3c;padding:15px;border-radius:18px;display:flex;gap:12px;align-items:center}.booking-confirm>span{width:48px;height:48px;border-radius:50%;background:var(--green2);color:#fff;display:grid;place-items:center;font-size:24px}.booking-confirm p,.booking-track p{margin:5px 0}.reference-code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;direction:ltr;display:inline-block}.crowd-card{border:1px solid var(--line);background:#fff;border-radius:22px;padding:16px}.crowd-head{display:flex;justify-content:space-between;gap:10px;align-items:center}.crowd-head h4{margin:0}.crowd-head span{padding:6px 9px;border-radius:999px;font-size:12px;font-weight:900}.crowd-منخفض .crowd-head span{background:#e4f5ed;color:#0b6a4d}.crowd-متوسط .crowd-head span{background:#fff1d9;color:#946510}.crowd-مرتفع .crowd-head span{background:#f8e0dd;color:var(--red)}.meter{height:10px;background:#eee8dc;border-radius:999px;overflow:hidden;margin:13px 0}.meter i{display:block;height:100%;background:linear-gradient(90deg,var(--green2),var(--gold),var(--red));border-radius:999px}.crowd-card p{color:var(--muted);line-height:1.65;min-height:52px}.crowd-card small{color:#7b6650}.insight-panel{margin-top:14px;display:grid;grid-template-columns:160px 1fr;gap:18px;background:#eef5f1;border-radius:22px;padding:17px}.insight-score{display:flex;flex-direction:column;justify-content:center;align-items:center;border-inline-end:1px solid #cfddd5}.insight-score b{font-size:45px;color:var(--green)}.insight-score span{color:var(--muted);text-align:center}.insight-panel h4{margin:0}.insight-panel ul{line-height:1.9}.insight-panel small{color:var(--muted)}
.license-note{background:#fff1df;color:#805d1b;border:1px solid #efdaa9;border-radius:18px;padding:13px 15px;line-height:1.7}.vr-toolbar{display:grid;grid-template-columns:1fr auto;gap:10px;margin-bottom:13px}.vr-container{height:470px;border-radius:25px;overflow:hidden;background:#dfe8e3;border:1px solid var(--line)}.vr-container .pnlm-container{font-family:inherit}.vr-fallback{width:100%;height:400px;object-fit:cover}.vr-meta{display:flex;flex-direction:column;gap:4px;margin-top:11px}.vr-meta strong{font-size:22px}.vr-meta span{color:var(--muted);line-height:1.7}.ar-layout{display:grid;grid-template-columns:1.2fr .8fr;gap:16px}.ar-camera{position:relative;min-height:420px;background:#071b17;border-radius:25px;overflow:hidden}.ar-camera video{width:100%;height:100%;min-height:420px;object-fit:cover}.ar-overlay{position:absolute;inset:auto 16px 16px 16px;background:rgba(7,59,47,.82);backdrop-filter:blur(10px);color:#fff;border:1px solid rgba(255,255,255,.15);border-radius:18px;padding:14px;text-align:center}.ar-overlay strong,.ar-overlay small{display:block}.artifact-info{margin-top:16px}.artifact-info h4{font-size:24px;margin:10px 0 5px}.artifact-info p{color:var(--muted);line-height:1.75}
.chart-panel{height:390px;background:#fff;border:1px solid var(--line);border-radius:22px;padding:14px}.season-table{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.season-table div{background:#f8f2e6;border-radius:14px;padding:10px}.season-table b,.season-table span{display:block}.season-table span{color:var(--muted);font-size:12px;margin-top:4px}.data-table{margin-top:14px;border:1px solid var(--line);border-radius:20px;overflow:hidden;background:#fff}.data-row{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:8px;padding:12px 14px;border-bottom:1px solid #eee5d6}.data-row:last-child{border-bottom:0}.data-row.head{background:#eef5f1;color:var(--green)}.interest-box{display:flex;gap:9px;flex-wrap:wrap}.interest-box label{border:1px solid var(--line);border-radius:999px;padding:10px 13px;background:#fff;font-weight:800}.route-results{margin-top:16px}.route-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:13px}.route-card{position:relative;display:grid;grid-template-columns:150px 1fr;gap:13px;border:1px solid var(--line);border-radius:22px;padding:12px;background:#fff}.route-card img{width:150px;height:150px;border-radius:17px;object-fit:cover}.route-card h4{margin:4px 0;font-size:21px}.route-card p{color:var(--muted);margin:4px 0}.route-card ul{margin:7px 0;padding-inline-start:18px;line-height:1.7}.route-index{position:absolute;top:7px;right:7px;width:32px;height:32px;border-radius:11px;background:var(--gold);display:grid;place-items:center;font-weight:950;color:#264431}
@media(max-width:1100px){.ar-layout{grid-template-columns:1fr}.route-grid{grid-template-columns:1fr}}
@media(max-width:720px){.inline-form,.vr-toolbar{grid-template-columns:1fr}.vr-container{height:340px}.ar-camera,.ar-camera video{min-height:330px}.insight-panel{grid-template-columns:1fr}.insight-score{border-inline-end:0;border-bottom:1px solid #cfddd5;padding-bottom:12px}.chart-panel{height:330px}.data-row{grid-template-columns:1.5fr repeat(3,.7fr);font-size:12px}.route-card{grid-template-columns:1fr}.route-card img{width:100%;height:190px}.season-table{grid-template-columns:repeat(2,1fr)}}

/* V19.7 — National tourism platform and visitor portal */
.visitor-hero::before{background:linear-gradient(180deg,rgba(3,31,24,.12),rgba(3,31,24,.62) 56%,rgba(3,31,24,.95)),url('../images/hero.jpg') center/cover no-repeat}.hero-search{margin-top:20px;display:grid;grid-template-columns:1fr auto;gap:9px;max-width:720px;background:rgba(255,255,255,.12);padding:8px;border:1px solid rgba(255,255,255,.15);border-radius:20px;backdrop-filter:blur(12px)}.hero-search input{border:0;border-radius:14px;padding:15px 17px;outline:none;color:var(--ink)}.hero-search button{border:0;border-radius:14px;background:var(--gold);color:#173c2d;padding:0 19px;font-weight:950}.tourist-pass{position:relative;overflow:hidden}.tourist-pass::after{content:"DZ";position:absolute;left:-16px;bottom:-42px;font-weight:1000;font-size:148px;line-height:1;color:rgba(255,255,255,.045)}.passport-note{margin-top:14px;padding:13px;border-radius:18px;background:rgba(0,0,0,.12);color:rgba(255,255,255,.79);line-height:1.7}.national-strip{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:24px;background:linear-gradient(135deg,#fff,#f8f0e2);border:1px solid var(--line);border-radius:24px;padding:16px 20px;box-shadow:0 12px 30px rgba(7,38,31,.06)}.national-strip b,.national-strip span{display:block}.national-strip b{font-size:19px;color:var(--green)}.national-strip>div>span{color:var(--muted);margin-top:3px}.trust-points{display:flex;gap:12px;flex-wrap:wrap}.trust-points span{background:#eef5f1;color:var(--green);border-radius:999px;padding:9px 12px;font-size:13px;font-weight:850}.section-kicker{display:inline-flex;align-items:center;gap:6px;color:var(--gold);font-size:12px;font-weight:1000;letter-spacing:.08em;text-transform:uppercase;margin-bottom:7px}.section-kicker.light{color:var(--gold2)}
.spotlight-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:16px}.spotlight-card{position:relative;min-height:370px;border-radius:30px;overflow:hidden;cursor:pointer;box-shadow:var(--shadow);isolation:isolate}.spotlight-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:.45s}.spotlight-card:hover img{transform:scale(1.045)}.spotlight-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,30,23,.08),rgba(4,30,23,.82))}.spotlight-content{position:absolute;z-index:2;inset:auto 22px 22px;color:#fff}.spotlight-content>span{color:var(--gold2);font-weight:850}.spotlight-content h3{font-size:31px;margin:6px 0}.spotlight-content p{line-height:1.7;color:rgba(255,255,255,.82);max-width:420px}.spotlight-2,.spotlight-3{min-height:320px}
.experience-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:13px}.experience-card{position:relative;min-height:175px;border:1px solid var(--line);border-radius:26px;padding:18px;text-align:right;background:#fff;overflow:hidden;box-shadow:0 10px 24px rgba(0,0,0,.045);transition:.25s}.experience-card::after{content:"";position:absolute;width:130px;height:130px;border-radius:50%;left:-45px;bottom:-55px;background:rgba(255,255,255,.25)}.experience-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.experience-card span{display:grid;place-items:center;width:54px;height:54px;border-radius:18px;background:rgba(255,255,255,.75);font-size:26px}.experience-card b,.experience-card small{display:block}.experience-card b{font-size:23px;margin-top:18px}.experience-card small{color:rgba(16,40,32,.68);margin-top:4px}.experience-card.desert{background:linear-gradient(145deg,#f8d796,#f4b969)}.experience-card.coast{background:linear-gradient(145deg,#c6edf2,#7ac6d6)}.experience-card.heritage{background:linear-gradient(145deg,#f0ddbd,#d8b982)}.experience-card.nature{background:linear-gradient(145deg,#d4eadb,#9ccaae)}.experience-card.cities{background:linear-gradient(145deg,#e2e5f1,#bfc8e0)}
.destination-premium{position:relative}.favorite-float{position:absolute;z-index:3;top:12px;left:12px;width:42px;height:42px;border:0;border-radius:50%;background:rgba(255,255,255,.92);color:var(--green);font-size:22px;font-weight:1000;box-shadow:0 9px 24px rgba(0,0,0,.14)}.favorite-float.active{background:var(--red);color:#fff}.dest-overlay{position:absolute;inset:auto 0 0;padding:18px 14px 10px;background:linear-gradient(transparent,rgba(0,0,0,.56));color:#fff;font-size:12px;font-weight:800}.destination-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.duration-badge{white-space:nowrap;background:#eef5f1;color:var(--green);padding:7px 9px;border-radius:12px;font-size:11px;font-weight:850}.tagline{min-height:55px!important}.planner-shell{display:grid;grid-template-columns:.9fr 1.1fr;gap:28px;padding:32px;border-radius:34px;background:linear-gradient(135deg,var(--green),#0c6a50);color:#fff;box-shadow:var(--shadow)}.planner-copy h2{font-size:46px;margin:6px 0 12px}.planner-copy p{color:rgba(255,255,255,.8);line-height:1.8}.planner-benefits{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.planner-benefits span{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:8px 10px;font-size:12px}.planner-form{display:grid;grid-template-columns:1fr 1fr;gap:11px;align-content:center}.planner-form input,.planner-form select{width:100%;border:0;border-radius:15px;padding:14px}.planner-form .interest-box{grid-column:1/-1}.planner-form .interest-box label{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.2);color:#fff}.planner-form .btn{grid-column:1/-1}.route-header{display:flex;justify-content:space-between;align-items:center;margin:18px 0 12px}.route-header h3{margin:4px 0 0;font-size:28px}.method-note{color:var(--muted);font-size:12px;background:#f8f1e3;border-radius:14px;padding:11px}
.event-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.event-card{background:#fff;border:1px solid var(--line);border-radius:25px;overflow:hidden;box-shadow:0 10px 28px rgba(0,0,0,.045)}.event-card img{width:100%;height:180px;object-fit:cover}.event-body{padding:15px}.event-top,.event-footer{display:flex;justify-content:space-between;align-items:center;gap:8px}.event-top span{background:#eef5f1;color:var(--green);padding:6px 8px;border-radius:999px;font-size:11px;font-weight:900}.event-top small{color:var(--muted)}.event-card h3{margin:12px 0 6px;font-size:20px}.event-card p{color:var(--muted);line-height:1.65;min-height:80px}.demo-status{display:block;margin-top:10px;color:#9a6c1b;font-size:10px}.app-banner{position:relative;display:grid;grid-template-columns:1fr 360px;align-items:center;gap:20px;overflow:hidden;border-radius:38px;padding:38px;background:linear-gradient(135deg,#082d24,#0d7256);color:#fff;box-shadow:var(--shadow)}.app-banner::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 15% 18%,rgba(215,168,76,.19),transparent 30%)}.app-banner>*{position:relative;z-index:1}.app-banner h2{font-size:48px;margin:6px 0 10px}.app-banner p{max-width:700px;color:rgba(255,255,255,.78);line-height:1.8}.phone-mock{justify-self:center;width:220px;height:400px;border-radius:38px;border:8px solid #102820;background:#102820;padding:9px;box-shadow:0 28px 50px rgba(0,0,0,.26);transform:rotate(-4deg)}.phone-screen{height:100%;border-radius:24px;background:linear-gradient(180deg,#fffdf9,#f6ead5);padding:20px;color:var(--ink)}.phone-screen b,.phone-screen span{display:block}.phone-screen b{font-size:22px;margin-top:22px}.phone-screen span{color:var(--muted);font-size:12px;margin-top:6px}.phone-card{height:160px;border-radius:20px;margin-top:18px;background:url('../images/sahara.jpg') center/cover}.phone-lines{display:grid;gap:8px;margin-top:16px}.phone-lines i{display:block;height:10px;border-radius:999px;background:#e7dcc8}.phone-lines i:nth-child(2){width:72%}.phone-lines i:nth-child(3){width:48%}
.favorite-list{display:grid;gap:10px}.favorite-item{width:100%;display:grid;grid-template-columns:86px 1fr auto;align-items:center;gap:12px;border:1px solid var(--line);border-radius:18px;padding:9px;background:#fff;text-align:right}.favorite-item img{width:86px;height:68px;object-fit:cover;border-radius:14px}.favorite-item b,.favorite-item span{display:block}.favorite-item span{color:var(--muted);font-size:12px;margin-top:4px}.favorite-item i{font-style:normal;font-size:22px;color:var(--gold)}.empty-state{text-align:center;padding:30px}.empty-state b{font-size:22px}.empty-state p{color:var(--muted)}
.destination-page{animation:fade .28s ease}.back-link{border:0;background:#eef5f1;color:var(--green);border-radius:999px;padding:11px 16px;font-weight:900;margin-bottom:14px}.destination-cover{position:relative;min-height:610px;border-radius:38px;overflow:hidden;box-shadow:var(--shadow)}.destination-cover>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.destination-cover-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(3,33,25,.88))}.destination-cover-content{position:absolute;z-index:2;inset:auto 40px 42px;color:#fff}.destination-cover-content h1{font-size:clamp(48px,7vw,92px);margin:10px 0;line-height:1}.destination-cover-content p{font-size:21px;max-width:780px;color:rgba(255,255,255,.85)}.destination-summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin:17px 0}.destination-summary-grid .panel span,.destination-summary-grid .panel b{display:block}.destination-summary-grid .panel span{color:var(--muted);font-size:12px}.destination-summary-grid .panel b{font-size:20px;margin-top:6px}.destination-content-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:16px}.narrative h2{font-size:33px;line-height:1.4}.highlight-list{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0}.highlight-list span{background:#eef5f1;border-radius:15px;padding:12px;color:var(--green);font-weight:850}.map-callout{text-align:center;display:flex;flex-direction:column;justify-content:center;align-items:center}.map-callout .btn,.map-callout .mini-btn{width:100%;margin-top:8px}.map-icon{width:72px;height:72px;border-radius:24px;background:linear-gradient(135deg,#f6dd9f,#d9aa4f);display:grid;place-items:center;font-size:34px;color:var(--green)}.program-tabs{display:flex;gap:8px;flex-wrap:wrap}.program-tab{border:1px solid var(--line);background:#fff;border-radius:999px;padding:10px 14px;font-weight:900;color:var(--muted)}.program-tab.active{background:var(--green);color:#fff;border-color:var(--green)}.program-timeline{display:grid;gap:12px}.program-day{display:grid;grid-template-columns:54px 1fr;gap:14px;padding:15px;border:1px solid var(--line);border-radius:20px;background:#fff}.program-day>span{width:54px;height:54px;border-radius:18px;background:var(--gold);color:var(--green);display:grid;place-items:center;font-size:22px;font-weight:1000}.program-day h4{font-size:20px;margin:2px 0 8px}.program-day p{margin:5px 0;color:var(--muted);line-height:1.65}.services-block{margin-top:22px}.service-section{margin-top:16px}.service-section>h3{font-size:23px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.service-mini{background:#fff;border:1px solid var(--line);border-radius:20px;padding:15px}.service-mini h4{font-size:18px;margin:10px 0 5px}.service-mini p{color:var(--muted);min-height:44px;line-height:1.5}.service-empty{grid-column:1/-1;background:#fff;border:1px dashed var(--line);border-radius:18px;padding:18px;color:var(--muted)}.travel-tips{margin-top:22px;display:grid;grid-template-columns:.6fr 1.4fr;align-items:center}.travel-tips ul{margin:0;line-height:2;color:var(--muted)}
@media(max-width:1100px){.spotlight-grid{grid-template-columns:1fr 1fr}.spotlight-card:first-child{grid-column:1/-1}.experience-grid{grid-template-columns:repeat(3,1fr)}.event-grid{grid-template-columns:repeat(2,1fr)}.planner-shell,.app-banner,.destination-content-grid{grid-template-columns:1fr}.phone-mock{display:none}.destination-summary-grid{grid-template-columns:repeat(2,1fr)}.service-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.top-actions .glass-btn:nth-child(2){display:none}.hero-search{grid-template-columns:1fr}.hero-search button{min-height:48px}.national-strip{align-items:flex-start;flex-direction:column}.spotlight-grid,.experience-grid,.event-grid,.planner-form,.service-grid{grid-template-columns:1fr}.spotlight-card,.spotlight-2,.spotlight-3{min-height:330px}.planner-shell{padding:23px}.planner-copy h2,.app-banner h2{font-size:36px}.planner-form .interest-box,.planner-form .btn{grid-column:auto}.destination-cover{min-height:540px}.destination-cover-content{inset:auto 20px 24px}.destination-cover-content h1{font-size:50px}.destination-cover-content p{font-size:17px}.destination-summary-grid{grid-template-columns:1fr 1fr}.highlight-list{grid-template-columns:1fr}.travel-tips{grid-template-columns:1fr}.route-header{align-items:flex-start;flex-direction:column}.favorite-item{grid-template-columns:74px 1fr auto}.favorite-item img{width:74px}.program-day{grid-template-columns:44px 1fr}.program-day>span{width:44px;height:44px}}


/* V19.2–V19.7 national platform modules */
.national-ecosystem{padding-top:16px}.ecosystem-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.ecosystem-grid button{border:1px solid var(--line);background:var(--paper);border-radius:24px;padding:22px;text-align:right;display:grid;gap:8px;cursor:pointer;box-shadow:0 14px 40px rgba(7,38,31,.07);transition:.25s}.ecosystem-grid button:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.ecosystem-grid span{font-size:30px}.ecosystem-grid b{font-size:18px;color:var(--green)}.ecosystem-grid small{color:var(--muted)}
.command-hero,.mobile-center-hero{background:linear-gradient(135deg,var(--green),var(--green2));color:white;border-radius:var(--radius);padding:28px;display:flex;align-items:center;justify-content:space-between;gap:18px;box-shadow:var(--shadow)}.command-hero h2,.mobile-center-hero h2{margin:8px 0;font-size:34px}.command-hero p,.mobile-center-hero p{color:#dcece5}.command-kpis{margin-top:18px;grid-template-columns:repeat(6,1fr)}.command-layout{display:grid;grid-template-columns:2fr 1fr;gap:16px;margin-top:16px}.command-map-panel{min-height:420px}.wilaya-heat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.heat-cell{border:0;border-radius:18px;padding:15px;text-align:right;cursor:pointer;display:grid;gap:6px}.heat-cell b{font-size:15px}.heat-cell span{font-size:25px;font-weight:900}.heat-cell small{opacity:.8}.heat-high{background:#d9f3e8;color:#064a38}.heat-mid{background:#fff0c8;color:#6a4a00}.heat-low{background:#f4e8e5;color:#71352e}.alert-stack{display:grid;gap:10px}.national-alert{display:flex;gap:12px;padding:14px;border:1px solid var(--line);border-radius:18px}.national-alert>span{background:#fff1cc;color:#795600;padding:6px 9px;border-radius:999px;height:max-content;font-weight:800}.national-alert b{color:var(--green)}.national-alert p{margin:5px 0 0;color:var(--muted);font-size:13px}.command-lower{margin-top:16px}.executive-list,.project-mini-list{display:grid;gap:12px}.executive-item{border:1px solid var(--line);border-radius:18px;padding:15px}.executive-item>div:first-child{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.executive-item small{margin-inline-start:auto;color:var(--muted)}.executive-item p{color:var(--muted);margin:10px 0}.executive-meta{display:flex;gap:8px;flex-wrap:wrap}.executive-meta span{background:#f0f5f2;border-radius:999px;padding:6px 10px;font-size:12px}.priority-badge{padding:5px 9px;border-radius:999px;font-size:11px;font-weight:900}.p-حرجة{background:#ffe0dc;color:#9b2f24}.p-عالية{background:#fff0cc;color:#7a5600}.p-متوسطة{background:#e5f3ec;color:#0a5b45}.p-منخفضة{background:#edf1f3;color:#52636b}.project-mini{display:grid;gap:8px}.project-mini>div:first-child{display:flex;justify-content:space-between;gap:12px}.project-mini small{color:var(--muted)}
.business-access{margin-bottom:18px}.dashboard-empty{min-height:180px}.business-dashboard-head{background:linear-gradient(135deg,#f8f2e6,#fff);border:1px solid var(--line);border-radius:24px;padding:22px;display:flex;justify-content:space-between;align-items:center;gap:16px}.business-dashboard-head h2{margin:8px 0}.suggestion-stack p{background:#f1f7f4;padding:10px;border-radius:12px}.offer-list{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.offer-list article{border:1px solid var(--line);border-radius:18px;padding:14px;display:grid;gap:6px}.offer-list article span{color:var(--gold);font-weight:900}.table-scroll{overflow:auto}.national-table{width:100%;border-collapse:collapse;min-width:700px}.national-table th,.national-table td{padding:12px;border-bottom:1px solid var(--line);text-align:right}.national-table th{color:var(--green);background:#f5f8f6}
.project-list,.investment-list,.campaign-list{display:grid;gap:12px}.project-card,.investment-card,.campaign-card{border:1px solid var(--line);border-radius:20px;padding:16px}.project-card-head{display:flex;gap:9px;align-items:center;flex-wrap:wrap}.project-card-head small{margin-inline-start:auto;color:var(--muted)}.project-card p{color:var(--muted)}.project-card-meta{display:flex;justify-content:space-between;gap:8px;margin-top:8px;font-size:12px;color:var(--muted)}.investment-card>div{display:flex;justify-content:space-between}.investment-card>div span{font-size:22px;font-weight:900;color:var(--green2)}.investment-card p{color:var(--muted)}
.campaign-studio-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:16px}.generated-campaign{min-height:370px}.copy-card{border:1px solid var(--line);border-radius:18px;padding:15px;margin-bottom:10px}.copy-card>span{font-size:11px;font-weight:900;color:var(--green2)}.copy-card h3{margin:7px 0}.copy-card p{color:var(--muted)}.campaign-card{display:grid;grid-template-columns:1fr 1.3fr 1.2fr;gap:16px;align-items:center}.campaign-card>div:first-child{display:grid;gap:6px}.campaign-card p{color:var(--muted)}.campaign-metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.campaign-metrics span{background:#f3f7f4;border-radius:12px;padding:9px;font-size:12px}.campaign-metrics b{display:block;color:var(--green);font-size:18px}
.mobile-center-hero{background:linear-gradient(135deg,#073b2f,#0a6782)}.mobile-status-card{min-width:190px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);padding:22px;border-radius:22px;display:grid;gap:5px;text-align:center}.mobile-status-card b{font-size:34px}.mobile-status-card span,.mobile-status-card small{color:#e4f0ec}.mobile-config-list{display:grid;gap:8px}.mobile-config-list p{background:#f3f7f4;border-radius:14px;padding:12px;margin:0}
@media(max-width:1100px){.ecosystem-grid{grid-template-columns:repeat(2,1fr)}.command-kpis{grid-template-columns:repeat(3,1fr)}.command-layout,.campaign-studio-grid{grid-template-columns:1fr}.wilaya-heat-grid{grid-template-columns:repeat(3,1fr)}.offer-list{grid-template-columns:repeat(2,1fr)}.campaign-card{grid-template-columns:1fr}}
@media(max-width:720px){.ecosystem-grid,.wilaya-heat-grid,.offer-list{grid-template-columns:1fr}.command-kpis{grid-template-columns:repeat(2,1fr)}.command-hero,.mobile-center-hero,.business-dashboard-head{align-items:flex-start;flex-direction:column}.command-hero h2,.mobile-center-hero h2{font-size:27px}.mobile-status-card{width:100%}.project-card-meta{flex-wrap:wrap}}


/* V20 pilot security center */
.glass-btn.authenticated{background:rgba(215,168,76,.2);border-color:rgba(242,209,139,.65)}
.secure-login-form{margin-top:4px}.secure-intro{display:flex;gap:14px;align-items:center;padding:16px;border-radius:18px;background:#f3f8f5;border:1px solid var(--line)}
.secure-intro>span{font-size:32px}.secure-intro h3{margin:0 0 4px}.secure-intro p{margin:0;color:var(--muted)}
.pilot-preview{margin-top:14px;padding:12px;border:1px solid var(--line);border-radius:16px}.pilot-preview summary{cursor:pointer;font-weight:800;color:var(--green)}
.secure-account-card{text-align:center;padding:18px}.secure-account-card h3{font-size:26px;margin:12px 0 4px}.secure-badge{display:inline-flex;padding:7px 12px;border-radius:999px;background:#e3f5ec;color:var(--green2);font-weight:900}.secure-badge.warning{background:#fff3dc;color:#8b6416}.danger{color:var(--red)!important}
.secure-command-hero{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:28px;border-radius:var(--radius);background:linear-gradient(135deg,var(--green),#0b5a45);color:white;box-shadow:var(--shadow)}
.secure-command-hero h2{font-size:34px;margin:7px 0}.secure-command-hero p{margin:0;max-width:720px;color:#d9ebe5}.pilot-identity{min-width:220px;padding:16px;border:1px solid rgba(255,255,255,.22);border-radius:20px;background:rgba(255,255,255,.08);display:grid;gap:8px}.pilot-identity small{color:#d9ebe5}
.security-check-list{display:grid;gap:10px}.security-check{display:flex;justify-content:space-between;gap:12px;padding:14px;border-radius:15px;border:1px solid var(--line);background:#fff}.security-check.ok{border-right:5px solid var(--green2)}.security-check.warn{border-right:5px solid var(--gold)}.security-check span{color:var(--muted)}
.security-note-stack{display:grid;gap:11px}.security-note-stack span{padding:12px 14px;border-radius:14px;background:#f7f5ef;border:1px solid var(--line)}
.audit-list{display:grid;gap:10px}.audit-list article{display:grid;grid-template-columns:1fr auto;gap:7px;padding:14px;border:1px solid var(--line);border-radius:16px;background:var(--paper)}.audit-list article div{display:grid}.audit-list article span,.audit-list article small,.audit-list article p{color:var(--muted)}.audit-list article p{grid-column:1/-1;margin:0}.error-note{border-color:#edc4c0!important;color:var(--red)!important}
@media(max-width:720px){.secure-command-hero{display:grid;padding:20px}.pilot-identity{min-width:0}.audit-list article{grid-template-columns:1fr}.audit-list article p{grid-column:auto}}

/* V21 production foundation center */
.production-page{padding-bottom:24px}.production-hero{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:30px;border-radius:var(--radius);background:linear-gradient(135deg,#062f26,#0a6782);color:#fff;box-shadow:var(--shadow)}.production-hero h2{margin:8px 0;font-size:36px}.production-hero p{margin:0;max-width:760px;color:#dcece8}.production-kpis{grid-template-columns:repeat(5,1fr);margin-top:18px}.production-layout{display:grid;grid-template-columns:1.15fr .85fr;gap:16px;margin-top:16px}.production-page input[type=file]{padding:12px;border:1px dashed var(--green2);background:#f5faf7}.production-page .form-note a{color:var(--green2);font-weight:900}.production-page .hidden{display:none}
@media(max-width:1100px){.production-kpis{grid-template-columns:repeat(3,1fr)}.production-layout{grid-template-columns:1fr}}
@media(max-width:720px){.production-hero{align-items:flex-start;flex-direction:column;padding:22px}.production-hero h2{font-size:28px}.production-kpis{grid-template-columns:repeat(2,1fr)}}


/* V22 — immersive 360 photo and interactive 360 video */
.immersive-page{display:grid;gap:20px}.immersive-page-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}.immersive-page-head h2{font-size:clamp(34px,5vw,64px);margin:7px 0 10px}.immersive-badges{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.immersive-badges span,.immersive-availability span{display:inline-flex;align-items:center;gap:6px;padding:8px 11px;border-radius:999px;background:#eef5f1;color:var(--green);font-weight:900;font-size:12px}.immersive-console{background:linear-gradient(145deg,#061f19,#0a4638);border-radius:34px;padding:20px;box-shadow:var(--shadow);color:#fff}.immersive-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:12px;align-items:center}.immersive-toolbar select{min-height:48px;border-radius:15px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.09);color:#fff;padding:0 14px;font-weight:900}.immersive-toolbar select option{color:var(--ink);background:#fff}.immersive-mode-tabs{display:flex;gap:7px;padding:5px;background:rgba(255,255,255,.08);border-radius:15px}.mode-btn{border:0;border-radius:11px;padding:10px 14px;background:transparent;color:rgba(255,255,255,.72);font-weight:900}.mode-btn.active{background:var(--gold);color:#173127}.mode-btn:disabled{opacity:.35;cursor:not-allowed}.immersive-availability{display:flex;gap:8px;flex-wrap:wrap;margin:13px 0}.immersive-availability .pending{background:rgba(255,255,255,.08);color:rgba(255,255,255,.58)}.immersive-availability .ready{background:rgba(52,211,153,.14);color:#b8f6dc}.immersive-stage{position:relative;min-height:560px;border-radius:26px;overflow:hidden;background:#071914;border:1px solid rgba(255,255,255,.1)}.immersive-stage>.panel{margin:20px;color:var(--ink)}.vr-container{height:560px;width:100%;background:#071914}.vr-meta{display:grid;grid-template-columns:1fr minmax(260px,.65fr);gap:15px;align-items:start;margin-top:14px;color:#fff}.vr-meta div{display:grid;gap:4px}.vr-meta strong{font-size:22px}.vr-meta span,.vr-meta small{color:rgba(255,255,255,.66);line-height:1.65}.video360-shell{position:relative;height:560px;background:#020906;overflow:hidden;touch-action:none}.video360-shell canvas{width:100%;height:100%;display:block;cursor:grab}.video360-shell canvas.dragging{cursor:grabbing}.video360-shell>video{display:none}.video360-flat{display:block!important;width:100%;height:100%;object-fit:contain;background:#000}.video360-help{position:absolute;top:18px;right:18px;max-width:330px;padding:12px 14px;border-radius:16px;background:rgba(2,16,12,.68);backdrop-filter:blur(10px);display:grid;gap:3px;pointer-events:none}.video360-help b{color:#fff}.video360-help span{color:rgba(255,255,255,.72);font-size:12px;line-height:1.5}.video360-chapter{position:absolute;left:18px;bottom:86px;max-width:360px;padding:13px 15px;border-radius:17px;background:rgba(2,16,12,.7);backdrop-filter:blur(12px);display:grid;gap:4px;pointer-events:none}.video360-chapter b{color:var(--gold2);font-size:17px}.video360-chapter span{color:rgba(255,255,255,.78);font-size:13px;line-height:1.55}.video360-controls{position:absolute;left:14px;right:14px;bottom:14px;display:grid;grid-template-columns:auto auto minmax(120px,1fr) auto repeat(5,auto);align-items:center;gap:8px;padding:10px;border-radius:18px;background:rgba(2,16,12,.78);backdrop-filter:blur(14px)}.video360-controls input[type=range]{width:100%;accent-color:var(--gold)}.video360-controls #video360Time{font-size:12px;color:rgba(255,255,255,.72);white-space:nowrap;direction:ltr}.control-btn{width:39px;height:39px;border:0;border-radius:12px;background:rgba(255,255,255,.11);color:#fff;font-weight:950}.control-btn:hover,.control-btn.active{background:var(--gold);color:#173127}.immersive-video-btn{background:#e8f1ff;color:#154d87}.status-technical-demo{background:#fff1df!important;color:#9b6611!important}.status-photo-ready{background:#e4f5ed!important;color:#0b6a4d!important}
@media(max-width:900px){.immersive-page-head{display:grid}.immersive-badges{justify-content:flex-start}.immersive-toolbar{grid-template-columns:1fr}.immersive-stage,.vr-container,.video360-shell{min-height:500px;height:500px}.vr-meta{grid-template-columns:1fr}.video360-controls{grid-template-columns:auto auto 1fr auto auto auto}.video360-controls #video360Time,.video360-controls #video360ZoomIn,.video360-controls #video360ZoomOut{display:none}}
@media(max-width:600px){.immersive-console{padding:10px;border-radius:24px}.immersive-stage,.vr-container,.video360-shell{height:430px;min-height:430px}.video360-help{top:10px;right:10px;left:10px;max-width:none}.video360-chapter{left:10px;right:10px;bottom:76px;max-width:none}.video360-controls{left:7px;right:7px;bottom:7px;gap:5px;padding:7px}.control-btn{width:35px;height:35px}.video360-controls #video360Reset{display:none}}


/* V23 — national data governance and integration */
.governance-page{padding-bottom:28px}.governance-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:30px;border-radius:var(--radius);background:linear-gradient(135deg,var(--green),var(--green2));color:#fff;box-shadow:var(--shadow);margin-bottom:18px}.governance-hero h2{font-size:clamp(1.7rem,3vw,2.7rem);margin:5px 0 8px}.governance-hero p{max-width:780px;color:#e6f4ed}.governance-kpis{grid-template-columns:repeat(6,1fr);margin:18px 0}.governance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:18px 0}.governance-json{min-height:170px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;direction:ltr;text-align:left}.governance-review-panel{margin-top:18px}.governance-submissions,.quality-issue-list,.integration-client-list{display:grid;gap:12px}.governance-submission{border:1px solid var(--line);border-radius:20px;padding:16px;background:var(--paper)}.submission-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.submission-head>div{display:grid;gap:5px}.submission-head time{font-size:.76rem;color:var(--muted);direction:ltr}.submission-status{display:inline-flex;width:max-content;padding:5px 10px;border-radius:999px;font-size:.76rem;font-weight:800}.status-pending{background:#fff0c8;color:#755000}.status-approved{background:#dff4e8;color:#075b3c}.status-revision{background:#e6efff;color:#184c8b}.status-rejected{background:#fde3df;color:#8f2c25}.governance-submission details{margin-top:10px}.governance-submission pre{direction:ltr;text-align:left;white-space:pre-wrap;max-height:240px;overflow:auto;background:#f4f1e9;padding:12px;border-radius:14px;font-size:.78rem}.submission-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.mini-btn.danger{background:#fbe4e0;color:#8c3029}.review-note{padding:10px 12px;border-radius:12px;background:#eef4f1;margin-top:10px}.quality-issue{display:grid;grid-template-columns:1fr auto;gap:10px;padding:14px;border:1px solid var(--line);border-right:5px solid var(--gold);border-radius:16px}.quality-issue>div{display:grid;gap:4px}.quality-issue p{grid-column:1/-1;margin:0;color:var(--muted)}.severity-high{border-right-color:var(--red)}.severity-medium{border-right-color:var(--gold)}.severity-low{border-right-color:var(--blue)}.quality-issue span{font-size:.72rem;font-weight:900;text-transform:uppercase}.integration-client-list article{display:flex;justify-content:space-between;gap:12px;padding:12px;border-radius:14px;background:#f3f7f5}.integration-client-list article>div{display:grid}.integration-key{display:block;direction:ltr;text-align:left;overflow-wrap:anywhere;background:#102820;color:#fff;padding:12px;border-radius:12px;margin:10px 0}.governance-identity{display:flex;align-items:center;gap:10px;padding:12px 16px;border:1px solid var(--line);border-radius:16px;background:var(--paper)}.governance-identity small{color:var(--muted)}.import-help{margin-top:12px;padding:12px;border-radius:14px;background:#f7f1e6;color:var(--muted);font-size:.86rem}.success-note{background:#e2f5ea;color:#075b3c}.governance-filters select{min-width:170px}.governance-login-note{padding:18px}.governance-client-result small{display:block}
@media(max-width:1100px){.governance-kpis{grid-template-columns:repeat(3,1fr)}}
@media(max-width:720px){.governance-hero{align-items:flex-start;flex-direction:column;padding:22px}.governance-grid{grid-template-columns:1fr}.governance-kpis{grid-template-columns:repeat(2,1fr)}.submission-head{flex-direction:column}.quality-issue{grid-template-columns:1fr}.quality-issue p{grid-column:auto}.integration-client-list article{flex-direction:column}}


/* V24 — official 2026 administrative division (69 wilayas) */
.division-2026-summary{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;margin:18px 0;padding:22px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(135deg,#fffdf9,#eef7f2);box-shadow:0 16px 42px rgba(7,59,47,.08)}
.division-2026-summary h3{margin:4px 0 6px;font-size:25px;color:var(--green)}
.division-2026-summary p{margin:0;color:var(--muted);line-height:1.75}
.division-icon{width:58px;height:58px;border-radius:19px;display:grid;place-items:center;background:var(--green);font-size:29px;box-shadow:0 12px 28px rgba(7,59,47,.18)}
.wilaya-item.new-2026{background:linear-gradient(135deg,#fffaf0,#f0f8f4);border-color:#e2c887}
.wilaya-name-line{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.new-wilaya-badge{display:inline-flex;padding:4px 8px;border-radius:999px;background:#f7e6b8;color:#77520e;font-size:10px;font-weight:950}
.wilaya-transition-note{display:grid;gap:4px;margin:12px 0;padding:12px 14px;border-radius:15px;background:#fff5dc;border:1px solid #ecd18b;color:#704c08}
.wilaya-transition-note span{font-size:12px;line-height:1.65}
.new-wilayas-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px}
.new-wilaya-card{border:1px solid var(--line);background:#fff;border-radius:17px;padding:13px;display:grid;grid-template-columns:auto 1fr;gap:11px;text-align:right;align-items:center;color:var(--ink)}
.new-wilaya-card>span{width:40px;height:40px;border-radius:13px;display:grid;place-items:center;background:var(--green);color:var(--gold2);font-weight:950}
.new-wilaya-card div{display:grid;gap:3px}.new-wilaya-card small{color:var(--muted)}
@media(max-width:720px){.division-2026-summary{grid-template-columns:auto 1fr}.division-2026-summary .mini-btn{grid-column:1/-1}.new-wilayas-grid{grid-template-columns:1fr}}
/* V25 content, translation and media enrichment */
.lang-switch{display:flex;gap:4px;padding:3px;border-radius:13px;background:rgba(255,255,255,.12)}.lang-switch button{border:0;background:transparent;color:#fff;padding:7px 9px;border-radius:9px;font-weight:800;cursor:pointer}.lang-switch button.active{background:#fff;color:var(--green)}
.role-card a.role-btn{text-decoration:none}.national-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.gallery-card{position:relative;min-height:240px;border-radius:24px;overflow:hidden;box-shadow:var(--shadow);background:var(--green)}.gallery-card img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:.45s}.gallery-card:hover img{transform:scale(1.06)}.gallery-card div{position:absolute;inset:auto 0 0;padding:40px 18px 17px;color:#fff;background:linear-gradient(transparent,rgba(3,24,19,.86))}.gallery-card b{display:block;font-size:18px}.gallery-card small{opacity:.82}.gallery-filters{display:flex;gap:8px;overflow:auto;padding:0 0 14px}.gallery-filters button{border:1px solid var(--line);background:var(--paper);padding:9px 14px;border-radius:999px;white-space:nowrap;cursor:pointer;font-weight:800;color:var(--ink)}.gallery-filters button.active{background:var(--green2);color:#fff;border-color:var(--green2)}
@media(max-width:1100px){.national-gallery{grid-template-columns:repeat(3,1fr)}}@media(max-width:720px){.national-gallery{grid-template-columns:repeat(2,1fr)}.gallery-card{min-height:190px}.lang-switch{order:3;width:100%;justify-content:center}.top-actions{flex-wrap:wrap}}
.visitor-hero::before{background:linear-gradient(180deg,rgba(3,31,24,.12),rgba(3,31,24,.62) 56%,rgba(3,31,24,.95)),var(--hero-image,url('../images/hero.jpg')) center/cover no-repeat;transition:opacity .6s ease}.rotating-headline{margin-top:14px;color:var(--gold2);font-size:17px;font-weight:900;min-height:28px;transition:opacity .35s ease}
/* V26 — Tourist experience, synced favorites and offline packs */
.tourist-v26-hero{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:24px;align-items:center;padding:30px;border-radius:30px;background:radial-gradient(circle at 80% 20%,rgba(242,209,139,.26),transparent 30%),linear-gradient(135deg,var(--green),var(--green2));color:#fff;box-shadow:var(--shadow)}.tourist-v26-hero h2{font-size:clamp(28px,4vw,48px);margin:8px 0 10px;max-width:820px}.tourist-v26-hero p{max-width:800px;color:rgba(255,255,255,.78);line-height:1.75}.tourist-v26-badge{width:150px;height:150px;border-radius:50%;display:grid;place-content:center;text-align:center;background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.2)}.tourist-v26-badge b{font-size:52px;color:var(--gold2)}.tourist-v26-badge span{font-size:12px}.tourist-v26-list{display:grid;gap:9px;margin-top:12px}.tourist-v26-list>button,.tourist-v26-list>div{width:100%;display:flex;align-items:center;gap:10px;text-align:initial;border:1px solid var(--line);background:#fff;padding:10px;border-radius:14px;color:var(--ink)}.tourist-v26-list img{width:48px;height:48px;object-fit:cover;border-radius:11px}.tourist-v26-list b,.tourist-v26-list small{display:block}.tourist-v26-list small{color:var(--muted);margin-top:3px}@media(max-width:720px){.tourist-v26-hero{grid-template-columns:1fr;padding:22px}.tourist-v26-badge{display:none}}

/* V26.1 — National Artisans Market gateway */
.featured-role{background:linear-gradient(135deg,#f4dfaa,#d6ad59)!important;color:#173126!important;border-color:transparent!important}.heritage-market-gateway{display:grid;grid-template-columns:minmax(280px,.78fr) minmax(0,1.22fr);gap:0;overflow:hidden;border-radius:32px;background:linear-gradient(135deg,#16382b,#285a46);color:#fff;box-shadow:var(--shadow)}.heritage-gateway-media{min-height:390px}.heritage-gateway-media img{width:100%;height:100%;object-fit:cover}.heritage-gateway-copy{padding:42px;display:grid;align-content:center;gap:14px}.heritage-gateway-copy h2{font-size:clamp(34px,5vw,58px);line-height:1.05;margin:0}.heritage-gateway-copy p{max-width:690px;color:rgba(255,255,255,.76);font-size:16px}.heritage-gateway-copy .trust-points{justify-content:flex-start}.heritage-gateway-copy .trust-points span{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.12);color:#fff}.heritage-gateway-copy .btn{width:max-content}@media(max-width:760px){.heritage-market-gateway{grid-template-columns:1fr}.heritage-gateway-media{min-height:250px}.heritage-gateway-copy{padding:26px}}

/* V26.2 — Events of Algeria gateway */
.events-role{background:linear-gradient(135deg,#e86d48,#b9412d)!important;color:#fff!important;border-color:transparent!important}.events-gateway{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);min-height:430px;border-radius:32px;overflow:hidden;background:radial-gradient(circle at 10% 0%,rgba(240,214,155,.22),transparent 34%),linear-gradient(135deg,#0a3025,#155743);color:#fff;box-shadow:var(--shadow)}.events-gateway-copy{padding:45px;display:grid;align-content:center;gap:14px}.events-gateway-copy h2{font-size:clamp(38px,5vw,66px);line-height:1;margin:0}.events-gateway-copy p{max-width:720px;color:rgba(255,255,255,.76);line-height:1.85}.events-gateway-copy .btn{width:max-content}.events-gateway-copy .trust-points{justify-content:flex-start}.events-gateway-copy .trust-points span{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.14);color:#fff}.events-gateway-media{display:grid;grid-template-rows:1.2fr .8fr;gap:4px}.events-gateway-media img{width:100%;height:100%;object-fit:cover}@media(max-width:760px){.events-gateway{grid-template-columns:1fr}.events-gateway-copy{padding:28px}.events-gateway-media{min-height:290px;grid-template-columns:1fr 1fr;grid-template-rows:1fr}}
\n/* V26.3 Treasures gateway */
.treasures-role{background:linear-gradient(145deg,#f4e2ad,#fff7df)!important;color:#45320b!important;border-color:#e7ca7f!important}.treasures-gateway{display:grid;grid-template-columns:1fr 1.05fr;gap:30px;align-items:center;background:linear-gradient(135deg,#0a4136,#0b6b56);color:#fff;border-radius:28px;overflow:hidden;padding:34px}.treasures-gateway-copy p{color:#d7ebe4;line-height:1.9}.treasures-gateway-media{display:grid;grid-template-columns:1.2fr .8fr;grid-template-rows:1fr 1fr;gap:7px;height:340px}.treasures-gateway-media img{width:100%;height:100%;object-fit:cover;border-radius:15px}.treasures-gateway-media img:first-child{grid-row:1/3}@media(max-width:850px){.treasures-gateway{grid-template-columns:1fr;padding:22px}.treasures-gateway-media{height:260px}}\n
.restaurants-role{background:linear-gradient(135deg,#8c3011,#d0602d)!important;color:#fff!important;border-color:transparent!important}.restaurants-gateway{display:grid;grid-template-columns:1.15fr .85fr;min-height:420px;border-radius:32px;overflow:hidden;background:radial-gradient(circle at 10% 10%,rgba(255,214,135,.18),transparent 35%),linear-gradient(135deg,#4b1908,#872f12);color:#fff;box-shadow:var(--shadow)}.restaurants-gateway-copy{padding:45px;display:grid;align-content:center;gap:14px}.restaurants-gateway-copy h2{font-size:clamp(38px,5vw,64px);line-height:1.02;margin:0}.restaurants-gateway-copy p{max-width:720px;color:#f2dcd2;line-height:1.85}.restaurants-gateway-copy .btn{width:max-content}.restaurants-gateway-copy .trust-points{justify-content:flex-start}.restaurants-gateway-copy .trust-points span{background:#fff1;border-color:#fff2;color:#fff}.restaurants-gateway-media{display:grid;grid-template-rows:1.25fr .75fr;gap:4px}.restaurants-gateway-media img{width:100%;height:100%;object-fit:cover}@media(max-width:760px){.restaurants-gateway{grid-template-columns:1fr}.restaurants-gateway-copy{padding:28px}.restaurants-gateway-media{height:270px;grid-template-columns:1fr 1fr;grid-template-rows:1fr}}

.hotels-gateway{display:grid;grid-template-columns:1.15fr .85fr;gap:26px;align-items:center;background:linear-gradient(135deg,#071d32,#0b4c77);color:#fff}.hotels-gateway p{color:#dcebf4}.hotels-gateway-media{display:grid;grid-template-columns:1fr 1fr;gap:9px}.hotels-gateway-media img{width:100%;height:260px;object-fit:cover;border-radius:22px}.hotels-role{background:linear-gradient(135deg,#0b4c77,#18b8c9)!important;color:#fff!important}@media(max-width:850px){.hotels-gateway{grid-template-columns:1fr}.hotels-gateway-media img{height:180px}}

.agencies-role{background:linear-gradient(135deg,#0b354f,#22bda9)!important;color:#fff!important;border-color:transparent!important}.agencies-gateway{display:grid;grid-template-columns:1.15fr .85fr;gap:26px;align-items:center;background:radial-gradient(circle at 10% 10%,#2ac6b327,transparent 32%),linear-gradient(135deg,#071d32,#0c4b61);color:#fff}.agencies-gateway-copy{padding:16px}.agencies-gateway-copy p{color:#cfe0e8;line-height:1.85}.agencies-gateway-media{display:grid;grid-template-rows:1.2fr .8fr;gap:8px;height:360px}.agencies-gateway-media img{width:100%;height:100%;object-fit:cover;border-radius:22px}@media(max-width:850px){.agencies-gateway{grid-template-columns:1fr}.agencies-gateway-media{height:270px;grid-template-columns:1fr 1fr;grid-template-rows:1fr}}

.transport-role{background:linear-gradient(135deg,#06465f,#1ec6a0)!important;color:#fff!important;border-color:transparent!important}.transport-gateway{display:grid;grid-template-columns:1.15fr .85fr;gap:26px;align-items:center;background:radial-gradient(circle at 90% 10%,#edc95d2b,transparent 32%),linear-gradient(135deg,#061a29,#0a5260);color:#fff}.transport-gateway-copy{padding:16px}.transport-gateway-copy p{color:#cfe0e8;line-height:1.85}.transport-gateway-media{display:grid;grid-template-rows:1.2fr .8fr;gap:8px;height:360px}.transport-gateway-media img{width:100%;height:100%;object-fit:cover;border-radius:22px}@media(max-width:850px){.transport-gateway{grid-template-columns:1fr}.transport-gateway-media{height:270px;grid-template-columns:1fr 1fr;grid-template-rows:1fr}}

.tourist-guide-role{background:linear-gradient(135deg,#075944,#e0b943)!important;color:#fff!important;border-color:transparent!important}.tourist-guide-gateway{display:grid;grid-template-columns:1.15fr .85fr;gap:26px;align-items:center;background:radial-gradient(circle at 85% 15%,#edc95d34,transparent 32%),linear-gradient(135deg,#061c17,#0b5945);color:#fff}.tourist-guide-copy{padding:16px}.tourist-guide-copy p{color:#d1e5dd;line-height:1.85}.tourist-guide-media{height:360px;display:grid;grid-template-columns:1.2fr .8fr;gap:8px}.tourist-guide-media img{width:100%;height:100%;object-fit:cover;border-radius:22px}@media(max-width:850px){.tourist-guide-gateway{grid-template-columns:1fr}.tourist-guide-media{height:270px}}

.observatory-role{background:linear-gradient(135deg,#092c25,#efc44f)!important;color:#fff!important;border-color:transparent!important}.observatory-gateway{display:grid;grid-template-columns:1.1fr .9fr;gap:28px;align-items:center;background:radial-gradient(circle at 82% 20%,#efc44f35,transparent 28%),linear-gradient(135deg,#031612,#0a3b30);color:#fff}.observatory-copy{padding:18px}.observatory-copy p{color:#c2d9d1;line-height:1.85}.observatory-media{height:370px;position:relative}.observatory-media img{width:100%;height:100%;object-fit:cover;border-radius:25px;filter:saturate(.8)}.observatory-media div{position:absolute;inset:auto 20px 20px 20px;background:#041512d9;border:1px solid #ffffff20;border-radius:18px;padding:18px;display:flex;align-items:center;gap:15px}.observatory-media b{font-size:48px;color:#efc44f}.observatory-media span{color:#d5e6df}@media(max-width:850px){.observatory-gateway{grid-template-columns:1fr}.observatory-media{height:280px}}

.brain-role{background:linear-gradient(135deg,#f1c75f,#2bd59e)!important;color:#06231b!important;border-color:transparent!important;font-weight:900}.brain-gateway{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:center;background:radial-gradient(circle at 78% 20%,#2dd69f30,transparent 28%),linear-gradient(135deg,#041511,#092f26)!important;color:#fff!important}.brain-copy{padding:18px}.brain-copy p{color:#b7d1c8;line-height:1.85}.brain-gateway-visual{height:390px;position:relative}.brain-gateway-visual img{width:100%;height:100%;object-fit:cover;border-radius:28px;filter:saturate(.75) brightness(.72)}.brain-node{position:absolute;inset:22% 24%;border-radius:50%;display:grid;place-content:center;text-align:center;background:#07231de6;border:1px solid #f1c75f55;box-shadow:0 0 0 18px #2dd69f15,0 0 70px #2dd69f4a}.brain-node b{font-size:54px;color:#f1c75f}.brain-node span{color:#cfe3dc}@media(max-width:850px){.brain-gateway{grid-template-columns:1fr}.brain-gateway-visual{height:300px}}
