/* Gherbatli — clean, simple, mobile-first RTL news site */
:root{
  --bg:#f7f7f5; --card:#ffffff; --text:#1c2230; --muted:#6a7385;
  --line:#e7e9ee; --brand:#0f766e; --brand-dark:#0b5a54; --accent:#e0a458;
  --radius:14px; --shadow:0 1px 3px rgba(20,30,50,.06),0 8px 24px rgba(20,30,50,.05);
  --wrap:1080px; --font:"Tajawal","Segoe UI",system-ui,-apple-system,sans-serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);
  line-height:1.75;font-size:17px}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 16px}

/* Header */
.site-header{position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid var(--line)}
.hbar{display:flex;align-items:center;gap:14px;height:64px}
.brand{display:flex;align-items:baseline;gap:8px;font-weight:800}
.brand .logo{font-size:26px;color:var(--brand);letter-spacing:-.5px}
.brand .tag{font-size:12px;color:var(--muted);font-weight:500}
.nav{display:flex;gap:8px;margin-inline-start:auto;flex-wrap:wrap;align-items:center}
.nav>a{padding:7px 14px;border-radius:999px;font-size:15px;font-weight:600;
  color:var(--text);background:#f0f2f4}
.nav>a:hover,.nav>a.active{background:var(--brand);color:#fff}
.nav-item{position:relative;display:inline-flex;align-items:center;background:#f0f2f4;
  border-radius:999px}
.nav-item .nav-link{padding:7px 6px 7px 14px;font-size:15px;font-weight:600;color:var(--text)}
.nav-item .caret-btn{border:none;background:none;cursor:pointer;font-size:10px;opacity:.6;
  padding:7px 12px 7px 4px;color:inherit;transition:transform .15s}
.nav-item.open .caret-btn{transform:rotate(180deg)}
.mega-panel{display:none;position:absolute;top:calc(100% + 8px);right:0;z-index:30;
  background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 32px rgba(0,0,0,.12);
  padding:12px;min-width:220px}
.mega-col{display:flex;flex-direction:column;gap:2px}
.mega-col a{padding:7px 10px;border-radius:8px;font-size:14px;font-weight:500;color:var(--text)}
.mega-col a:hover{background:#f0f2f4;color:var(--brand)}
.mega-all{display:block;margin-top:8px;padding-top:8px;border-top:1px solid var(--line);
  font-size:13px;font-weight:700;color:var(--brand)}
.nav-item.open .mega-panel{display:block}
@media(hover:hover){
  .nav-item:hover .mega-panel,.nav-item:focus-within .mega-panel{display:block}
  .nav-item:hover .caret-btn{transform:rotate(180deg)}
}
@media(max-width:900px){
  .mega-panel{position:absolute;left:0;right:auto}
}
@media(max-width:680px){
  /* .hbar had a fixed height:64px, but the nav pills wrap to 2 rows on
     narrow screens — the wrapped row had nowhere to go but overflow the
     fixed-height box and collide with the page content below it. Stack
     brand and nav as their own full-width rows instead, with auto height
     so wrapped pills simply push the header taller rather than overflowing. */
  .hbar{flex-wrap:wrap;height:auto;min-height:0;padding:10px 0;row-gap:8px}
  .brand{flex:0 0 100%;order:1}
  .nav{order:2;flex:0 0 100%;margin-inline-start:0;gap:6px}
  .nav>a,.nav-item{font-size:14px}
  .nav-item .nav-link{padding:6px 4px 6px 12px}
  .search-link{margin-inline-start:auto}
  /* Hide-on-scroll (toggled by the header JS): the tall 2-row header slides
     up out of the way while scrolling down, and returns on scroll up. */
  .site-header{transition:transform .25s ease}
  .site-header.nav-hidden{transform:translateY(-100%)}
}

/* Cards grid */
.section-title{font-size:19px;font-weight:800;margin:26px 0 14px;
  padding-inline-start:12px;border-inline-start:4px solid var(--brand)}
.cats{display:flex;gap:8px;overflow-x:auto;padding:4px 0 14px;-webkit-overflow-scrolling:touch}
.cats a{white-space:nowrap;padding:7px 14px;border-radius:999px;font-size:14px;
  font-weight:600;color:var(--text);background:#f0f2f4;flex:0 0 auto}
.cats a:hover,.cats a.active{background:var(--brand);color:#fff}
.intro{color:var(--text-2);font-size:15.5px;line-height:1.85;max-width:78ch;margin:2px 0 10px}
.tldr{background:#eef7f5;border:1px solid #cfe8e2;border-radius:12px;padding:14px 16px;
  margin:4px 0 18px}
.tldr .tldr-title{font-weight:800;font-size:14px;color:var(--brand-dark);margin-bottom:8px}
.tldr ul{margin:0;padding-inline-start:20px}
.tldr li{margin:4px 0;font-size:14.5px;color:var(--text)}
.toc{background:#f7f8f9;border:1px solid var(--line);border-radius:12px;padding:14px 18px;margin:16px 0}
.toc .toc-title{font-weight:800;font-size:14px;margin-bottom:8px}
.toc ol{margin:0;padding-inline-start:20px}
.toc a{color:var(--brand-dark);font-size:14.5px}
.grid{display:grid;grid-template-columns:1fr;gap:16px}
@media(min-width:640px){.grid{grid-template-columns:1fr 1fr}}
@media(min-width:920px){.grid{grid-template-columns:1fr 1fr 1fr}}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);
  overflow:hidden;box-shadow:var(--shadow);transition:transform .15s,box-shadow .15s}
.card:hover{transform:translateY(-3px);box-shadow:0 10px 30px rgba(20,30,50,.10)}
.card .thumb{aspect-ratio:16/9;background:linear-gradient(135deg,var(--brand),var(--brand-dark));
  display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;
  font-size:20px;text-align:center;padding:10px}
img.thumb,img.hero-img{aspect-ratio:16/9;width:100%;height:auto;object-fit:cover;display:block}
.hero img.thumb{aspect-ratio:21/9}
.card .body{padding:14px 16px 18px}
.badge{display:inline-block;font-size:12px;font-weight:700;color:var(--brand-dark);
  background:#e6f2f0;padding:3px 10px;border-radius:999px;margin-bottom:8px}
.badge.country{color:#8a5a10;background:#faf0dd;margin-inline-start:6px}
.badge.pillar{color:#fff;background:var(--accent,#c2410c);margin-inline-start:6px;vertical-align:middle}
.badge.job-digest{color:#fff;background:#0f766e;margin-inline-start:6px;vertical-align:middle}
.job-meta{color:var(--text-3,#6b7280);font-size:13px;margin:2px 0}
.job-lang{color:#0f766e;font-size:13px;margin:2px 0 10px}
.card h3{margin:0 0 8px;font-size:18px;line-height:1.5;font-weight:800}
.card p{margin:0;color:var(--muted);font-size:14.5px}
.card .meta{margin-top:10px;font-size:12.5px;color:var(--muted)}

/* Hero (featured) */
.hero{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);
  overflow:hidden;box-shadow:var(--shadow);margin-top:18px}
.hero .thumb{aspect-ratio:21/9;background:linear-gradient(135deg,var(--brand),#0a4a45);
  color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:28px}
.hero .body{padding:18px 20px 22px}
.hero h2{margin:.2rem 0 .5rem;font-size:24px;line-height:1.4}
.hero p{margin:0;color:var(--muted)}

/* Article */
.article{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);
  box-shadow:var(--shadow);padding:22px;margin-top:18px}
.crumbs{font-size:13px;color:var(--muted);margin-bottom:10px}
.crumbs a:hover{color:var(--brand)}
.article h1{font-size:27px;line-height:1.45;margin:.2rem 0 .6rem;font-weight:800}
.article .a-meta{color:var(--muted);font-size:14px;margin-bottom:2px}
.article .a-byline{color:var(--muted);font-size:13px;margin-bottom:14px;font-weight:600}
.article .hero-img{border-radius:12px;aspect-ratio:16/9;background:linear-gradient(135deg,var(--brand),var(--brand-dark));
  color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800;
  font-size:22px;margin:6px 0 18px;width:100%;height:auto;object-fit:cover}
.content{font-size:18px}
.content p{margin:0 0 1.15em}
.content h2{font-size:21px;margin:1.6em 0 .6em;font-weight:800}
.home-h1{font-size:17px;font-weight:700;color:var(--muted);margin:14px 0 4px;line-height:1.6}
.body-img{margin:1.6em 0}
.body-img img{width:100%;height:auto;border-radius:12px;display:block}
.content table{width:100%;border-collapse:collapse;margin:1.2em 0;font-size:15px}
.content table th,.content table td{border:1px solid var(--line);padding:8px 10px;text-align:start}
.content table th{background:#f4f6f8;font-weight:800}
.video-embed{position:relative;width:100%;aspect-ratio:16/9;margin:1.2em 0;
  border-radius:12px;overflow:hidden;background:#000}
.video-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.toc{background:#f4f6f8;border-radius:12px;padding:14px 16px;margin:14px 0}
.toc-title{font-weight:800;font-size:14px;color:var(--brand-dark);margin-bottom:8px}
.toc ol{margin:0;padding-inline-start:20px}
.toc li{margin:4px 0;font-size:14.5px}
.toc a{color:var(--text)}
.toc a:hover{color:var(--brand)}
.faq-block{margin-top:24px}
.faq-item{border:1px solid var(--line);border-radius:10px;padding:12px 16px;margin:8px 0}
.faq-item summary{font-weight:700;cursor:pointer;font-size:15.5px}
.faq-item p{margin:8px 0 0;color:var(--muted);font-size:15px}

/* E-E-A-T / information-gain blocks (future articles only) */
.impact-box{background:#eef4ff;border:1px solid #d5e3ff;border-radius:12px;padding:14px 16px;margin:16px 0}
.impact-box .ib-title{font-weight:800;color:#2350a8;margin-bottom:6px;font-size:15px}
.impact-box ul{margin:0;padding-inline-start:20px}
.impact-box li{margin:4px 0;font-size:15px}
.checklist{background:#eef7f5;border:1px solid #cfe8e2;border-radius:12px;padding:14px 16px;margin:18px 0}
.checklist .cl-title{font-weight:800;color:var(--brand-dark);margin-bottom:8px;font-size:15.5px}
.checklist ul{list-style:none;margin:0;padding:0}
.checklist li{margin:8px 0;font-size:15.5px}
.checklist label{display:flex;gap:10px;align-items:flex-start;cursor:pointer}
.checklist input{margin-top:4px;width:18px;height:18px;accent-color:var(--brand);flex:0 0 auto}
.checklist li.done span{text-decoration:line-through;color:var(--muted)}
.warn-box{background:#fff6e9;border:1px solid #ffe0b0;border-inline-start:4px solid #e8890c;
  border-radius:12px;padding:14px 16px;margin:18px 0}
.warn-box .wb-title{font-weight:800;color:#a85f00;margin-bottom:6px;font-size:15px}
.warn-box ul{margin:0;padding-inline-start:20px}
.warn-box li{margin:4px 0;font-size:15px}
.glossary{margin-top:22px}
.glossary table{width:100%;border-collapse:collapse;font-size:15px}
.glossary th,.glossary td{border:1px solid var(--line);padding:8px 10px;text-align:start}
.glossary th{background:#f4f6f8;font-weight:800}
.official-box{background:#f4f6f8;border-radius:12px;padding:16px;margin:22px 0}
.official-box .ob-title{font-weight:800;color:var(--brand-dark);margin-bottom:10px;font-size:16px}
.official-box ul{list-style:none;margin:0;padding:0}
.official-box li{margin:8px 0;font-size:15px;line-height:1.7}
.official-box a{color:var(--brand);font-weight:700}
.official-box span{color:var(--muted)}
.official-box .ob-note{margin-top:10px;font-size:13px;color:var(--muted)}
.pillar-link{margin-top:18px;background:#eef7f5;border-radius:10px;padding:12px 16px;font-size:15px}
.pillar-link a{color:var(--brand);font-weight:800}
.cat-link{margin-top:18px;font-size:14px;color:var(--muted)}
.cat-link a{color:var(--brand);font-weight:700}
.tags{margin-top:16px;display:flex;flex-wrap:wrap;gap:8px}
.tag-chip{font-size:13px;color:var(--brand-dark);background:#e6f2f0;padding:4px 12px;border-radius:999px}
.tag-chip:hover{background:var(--brand);color:#fff}
.pager{display:flex;gap:6px;justify-content:center;margin:24px 0 6px;flex-wrap:wrap}
.pager a{font-size:14px;font-weight:700;padding:8px 14px;border-radius:8px;background:#f4f6f8;color:var(--text)}
.pager a.active{background:var(--brand);color:#fff}
.search-link{font-size:16px;margin-inline-start:4px}
.search-box{width:100%;font-size:17px;padding:12px 16px;border-radius:12px;border:1px solid var(--line);
  margin:16px 0 22px;background:var(--card);color:var(--text)}
.source-box{margin-top:22px;padding:14px 16px;background:#f4f6f8;border-radius:12px;
  font-size:14px;color:var(--muted);border-inline-start:4px solid var(--accent)}

/* Country "بالأرقام" data box (Eurostat) */
.stats-box{margin:18px 0 22px;padding:18px 18px 12px;background:var(--card);
  border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.stats-box h2{font-size:19px;font-weight:800;margin:0 0 14px}
.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
@media(min-width:560px){.stats-grid{grid-template-columns:repeat(3,1fr)}}
.stat-card{background:#f4f6f8;border-radius:12px;padding:12px 14px;text-align:center}
.stat-val{font-size:24px;font-weight:800;color:var(--brand);line-height:1.2;
  font-variant-numeric:tabular-nums}
.stat-lbl{font-size:13px;color:var(--text);margin-top:4px;line-height:1.35}
.stat-yr{font-size:11px;color:var(--muted);margin-top:2px}
.stats-src{font-size:12px;color:var(--muted);margin-top:12px;text-align:start}
.source-box a{color:var(--brand);font-weight:700}
.share{display:flex;gap:10px;margin-top:18px;flex-wrap:wrap}
.share a{font-size:14px;font-weight:700;padding:9px 16px;border-radius:999px;color:#fff}
.share .wa{background:#25d366}.share .fb{background:#1877f2}.share .tw{background:#111}

/* Ad slots */
.ad{margin:18px 0;min-height:90px;display:flex;align-items:center;justify-content:center;
  background:#eef0f3;border:1px dashed #cfd4dc;border-radius:12px;color:#9aa2b1;
  font-size:12px;letter-spacing:1px}

/* Static pages */
.page{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);
  box-shadow:var(--shadow);padding:24px;margin-top:18px}
.page h1{font-size:24px;margin:.2rem 0 1rem}
.page h2{font-size:19px;margin:1.4rem 0 .5rem}

/* Footer */
.site-footer{margin-top:36px;background:#0e1626;color:#c7cedb;padding:32px 0 22px}
.site-footer .cols{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.site-footer .foot-brand{grid-column:1/-1}
.site-footer .logo{font-size:22px;font-weight:800;color:#fff}
.site-footer a{color:#c7cedb;font-size:14px}
.site-footer a:hover{color:#fff}
.site-footer h4{color:#fff;font-size:14px;font-weight:700;margin:0 0 10px}
.site-footer .links{display:flex;flex-direction:column;gap:8px}
.site-footer .footer-empty{color:#5b6478;font-size:13px}
.site-footer .copy{margin-top:22px;font-size:13px;color:#8b95a7;border-top:1px solid #223;padding-top:14px}
@media(min-width:641px){.site-footer .cols{grid-template-columns:repeat(3,1fr)}
  .site-footer .foot-brand{grid-column:auto}}
@media(min-width:920px){.site-footer .cols{grid-template-columns:1.6fr repeat(5,1fr)}}
