/* =========================================================
   PresseAlgerie.fr — Thème "Zen Moderne" (refonte design)
   Palette apaisée, typographie contemporaine (Manrope),
   nav vitrée, cartes et composants modernisés.
   Vient se superposer aux styles existants sans toucher
   au HTML/JS/fonctionnalités.
   ========================================================= */

:root{
  --zen-bg:           #F6F7F5;   /* fond général, gris-vert très clair */
  --zen-surface:      #FFFFFF;
  --zen-surface-soft: #F0F2EF;
  --zen-border:       #E3E7E2;

  --zen-primary:      #40A872;   /* vert principal */
  --zen-primary-dark: #2E7D56;
  --zen-primary-darker:#1F5C3E;
  --zen-primary-soft: #E4F5EC;
  --zen-primary-glow: rgba(64,168,114,0.18);

  --zen-accent:       #B98B6B;   /* sable doux — accent secondaire */
  --zen-accent-dark:  #9A7057;

  --zen-text:         #202824;
  --zen-text-light:   #66716B;
  --zen-white:        #FFFFFF;

  --zen-shadow-sm: 0 1px 3px rgba(20,30,25,0.06);
  --zen-shadow: 0 8px 24px rgba(20,30,25,0.07);
  --zen-shadow-hover: 0 14px 34px rgba(20,30,25,0.14);
  --zen-radius: 16px;
  --zen-radius-sm: 10px;
  --zen-radius-pill: 999px;

  --zen-font: 'Manrope', 'Segoe UI', Arial, sans-serif;
}

/* ---------- Base ---------- */
html{ scroll-behavior: smooth; }

body{
  background: var(--zen-bg) !important;
  color: var(--zen-text) !important;
  font-family: var(--zen-font) !important;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
  letter-spacing: .1px;
}

a{ color: var(--zen-primary-dark); transition: color .15s ease; }
a:hover, a:focus{ color: var(--zen-primary-darker); text-decoration: none; }

h1, h2, h3{
  font-family: var(--zen-font) !important;
  color: var(--zen-primary-darker) !important;
  font-weight: 800 !important;
  letter-spacing: -.3px;
}

strong{ font-weight: 700; }

hr{
  border-color: var(--zen-accent) !important;
  border-width: 2px !important;
  opacity: .5;
  border-radius: 2px;
}

/* ---------- Barre de recherche des journaux ---------- */
div[style*="background-color:#F0EFEA"]{
  background-color: transparent !important;
  padding: 18px 0 !important;
}

#link select{
  border-radius: var(--zen-radius-sm) !important;
  border: 1px solid var(--zen-border) !important;
  font-family: var(--zen-font);
}

.sol-options-list, .sol-drop-mask{
  border-radius: var(--zen-radius-sm) !important;
  box-shadow: var(--zen-shadow) !important;
}

/* ---------- Header / menu (nav vitrée, sticky) ---------- */
nav{
  position: sticky;
  top: 0;
  z-index: 100;
}

nav .menu{
  background: rgba(255,255,255,0.85) !important;
  backdrop-filter: blur(10px) saturate(160%);
  -webkit-backdrop-filter: blur(10px) saturate(160%);
  box-shadow: var(--zen-shadow-sm);
  border-radius: var(--zen-radius-sm);
  border: 1px solid var(--zen-border);
}

nav .menu li a{
  color: var(--zen-text) !important;
  font-weight: 600;
  font-family: var(--zen-font);
}

nav .menu li a:hover{
  color: var(--zen-primary-dark) !important;
}

#resp-menu{
  background: var(--zen-primary) !important;
  color: var(--zen-white) !important;
  border-radius: var(--zen-radius-sm);
  font-weight: 700;
  box-shadow: 0 4px 14px var(--zen-primary-glow);
}

/* ---------- Blocs "the-box" / titre ---------- */
.the-box{
  border-radius: var(--zen-radius) !important;
  box-shadow: var(--zen-shadow);
  border: 1px solid var(--zen-border);
  padding: 18px !important;
}

.xyz-text{
  font-size: 34px !important;
  background: linear-gradient(90deg, var(--zen-primary-darker), var(--zen-primary));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent !important;
}

/* Bandeau d'intro vert */
div[style*="background-color:#40A872"]{
  box-shadow: 0 10px 26px var(--zen-primary-glow) !important;
  font-weight: 600;
}

/* ---------- Onglets (nav-tabs) → style pilule moderne ---------- */
.nav-tabs{
  border-bottom: none !important;
  gap: 8px;
  padding: 4px 0;
}

.nav-tabs > li{
  float: none;
  display: inline-block;
}

.nav-tabs > li > a{
  color: var(--zen-text-light) !important;
  background: var(--zen-surface) !important;
  border: 1px solid var(--zen-border) !important;
  border-radius: var(--zen-radius-pill) !important;
  font-weight: 700;
  padding: 8px 18px !important;
  margin-right: 6px;
  transition: all .18s ease;
}

.nav-tabs > li > a:hover{
  border-color: var(--zen-primary) !important;
  color: var(--zen-primary-dark) !important;
  background: var(--zen-primary-soft) !important;
}

.nav-tabs > li.active > a,
.nav-tabs > li.active > a:hover,
.nav-tabs > li.active > a:focus{
  color: var(--zen-white) !important;
  background: var(--zen-primary) !important;
  border-color: var(--zen-primary) !important;
  box-shadow: 0 6px 16px var(--zen-primary-glow);
}

.tab-content{
  border-radius: var(--zen-radius) !important;
  box-shadow: var(--zen-shadow);
  border: 1px solid var(--zen-border);
  margin-top: 10px;
}

.sec-topic a{
  display: inline-block;
  padding: 6px 4px;
  color: var(--zen-text) !important;
  font-weight: 500;
}

.sec-topic a:hover{
  color: var(--zen-primary-dark) !important;
}

.sec-topic .ion-android-arrow-forward,
.sec-topic .ion-android-arrow-back{
  color: var(--zen-primary);
}

/* ---------- Cartes d'articles ---------- */
.news_box{
  background: var(--zen-surface);
  border-radius: var(--zen-radius-sm);
  box-shadow: var(--zen-shadow-sm);
  border: 1px solid var(--zen-border);
  padding: 12px;
  transition: box-shadow .2s ease, transform .2s ease, border-color .2s ease;
  margin-bottom: 14px;
}

.news_box:hover{
  box-shadow: var(--zen-shadow-hover);
  border-color: var(--zen-primary);
  transform: translateY(-3px);
}

.news_box .img-thumbnail{
  border-radius: var(--zen-radius-sm) !important;
  border: none !important;
}

.news_box .sec-info h3{
  font-size: 15px;
  font-weight: 700;
  color: var(--zen-text) !important;
}

.news_box .text-danger{
  color: var(--zen-accent-dark) !important;
  font-size: 12px;
}

.pagination > li > a{
  color: var(--zen-primary-dark) !important;
  border-radius: var(--zen-radius-sm) !important;
  border: 1px solid var(--zen-border) !important;
  font-weight: 600;
}
.pagination > .active > a{
  background: var(--zen-primary) !important;
  border-color: var(--zen-primary) !important;
  color: var(--zen-white) !important;
}

/* ---------- Section partenaire DZA.net ---------- */
.dza-partner{
  background: var(--zen-surface);
  border: 1px solid var(--zen-border);
  border-radius: var(--zen-radius);
  box-shadow: var(--zen-shadow);
  padding: 32px 24px;
  max-width: 640px;
  margin: 0 auto;
  text-align: center;
}

.dza-partner img.dza-logo{
  max-width: 180px;
  height: auto;
  margin-bottom: 16px;
}

.dza-partner p{
  color: var(--zen-text) !important;
  font-size: 17px !important;
  font-weight: 500;
}

.dza-partner .author{
  background: var(--zen-primary-soft) !important;
  border: 1px solid var(--zen-primary) !important;
  border-radius: var(--zen-radius-sm);
  padding: 16px !important;
  transition: background .2s ease, box-shadow .2s ease, transform .2s ease;
}

.dza-partner .author:hover{
  background: var(--zen-primary) !important;
  box-shadow: 0 10px 24px var(--zen-primary-glow);
  transform: translateY(-2px);
}
.dza-partner .author:hover h1,
.dza-partner .author:hover h2{
  color: var(--zen-white) !important;
}

.dza-partner .author h1,
.dza-partner .author h2{
  font-size: 17px;
  margin: 0;
}

/* ---------- Bloc "Nos partenaires" (sous la section DZA) ---------- */
.partners-block{
  max-width: 640px;
  margin: 28px auto 0;
  text-align: center;
}

.partners-label{
  display: block;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  color: var(--zen-text-light);
  margin-bottom: 10px;
}

.partners-list{
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  padding: 0;
  margin: 0;
}

.partners-list li a{
  display: inline-block;
  padding: 8px 16px;
  background: var(--zen-surface);
  border: 1px solid var(--zen-border);
  border-radius: var(--zen-radius-pill);
  font-size: 13px;
  font-weight: 600;
  color: var(--zen-text-light) !important;
  transition: all .18s ease;
}

.partners-list li a:hover{
  border-color: var(--zen-primary);
  color: var(--zen-primary-dark) !important;
  background: var(--zen-primary-soft);
}

/* ---------- Flux RSS ---------- */
.rssbox{
  background: var(--zen-surface);
  border: 1px solid var(--zen-border);
  border-radius: var(--zen-radius-sm);
  box-shadow: var(--zen-shadow-sm);
  padding: 10px;
}

/* ---------- Footer ---------- */
#convert2video_Faq .list-inline li a,
#convert2video_Faq .list-inline li{
  color: var(--zen-text-light) !important;
  font-weight: 600;
  font-size: 13px;
}
#convert2video_Faq .list-inline li a:hover{
  color: var(--zen-primary-dark) !important;
}

/* =========================================================
   Responsive / Mobile friendly
   ========================================================= */
@media (max-width: 768px){
  h1{ font-size: 24px !important; }
  .xyz-text{ font-size: 26px !important; }
  h2{ font-size: 19px !important; }

  .nav-tabs{
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 4px;
  }
  .nav-tabs > li{ flex: 0 0 auto; }

  .sec-topic .col-sm-4{
    width: 100%;
  }

  .news_box .col-sm-7,
  .news_box .col-sm-9{
    width: 100%;
  }

  .rssbox .col-sm-5,
  .rssbox .col-sm-6{
    width: 100%;
  }

  table[style*="max-width:600px"]{
    width: 100% !important;
    display: block;
  }

  .dza-partner{
    padding: 24px 16px;
  }
}