/* ============================================================
   EHTYMODEL — Espace membres — CSS autonome du plugin
   Indépendant du thème actif : couleurs et polices redéfinies ici,
   pour que l'espace membres garde son apparence même si le thème change.
   ============================================================ */

.ehtym-shell{
  --rose:#CDAFAF; --rose-dark:#b89090;
  --near-black:#0d0d0d;
  margin:0; padding:0; background:#000; color:#fff;
  font-family:'DM Sans',sans-serif; -webkit-font-smoothing:antialiased;
}
.ehtym-shell *,.ehtym-shell *::before,.ehtym-shell *::after{box-sizing:border-box;}
.ehtym-shell a{text-decoration:none; color:inherit;}
.ehtym-shell img{max-width:100%; display:block;}
.ehtym-shell :focus-visible{outline:2px solid var(--rose); outline-offset:3px;}

.ehtym-logo{font-family:'Playfair Display',serif; font-size:14px; letter-spacing:.25em; text-transform:uppercase; color:var(--rose);}
.ehtym-eyebrow{font-size:10px; letter-spacing:.35em; text-transform:uppercase; color:var(--rose); display:block;}

.ehtym-btn{
  display:inline-flex; align-items:center; justify-content:center; gap:10px; padding:15px 26px; border-radius:2px;
  font-family:'DM Sans',sans-serif; font-weight:500; font-size:11px; letter-spacing:.12em; text-transform:uppercase;
  cursor:pointer; border:none; transition:background .2s, transform .2s;
}
.ehtym-btn:hover{transform:translateY(-2px);}
.ehtym-btn-primary{background:var(--rose); color:#000; box-shadow:0 8px 32px rgba(205,175,175,.25);}
.ehtym-btn-primary:hover{background:var(--rose-dark);}

/* ============================================================
   PORTAIL DE CONNEXION — plein écran, aucun élément du thème autour
   ============================================================ */
.ehtym-login-screen{
  min-height:100vh; display:flex; align-items:center; justify-content:center;
  position:relative; overflow:hidden; padding:24px;
}
.ehtym-login-screen::before{
  content:''; position:absolute; inset:0;
  background:radial-gradient(ellipse 60% 60% at 50% 20%, rgba(205,175,175,.1) 0%, transparent 70%);
  pointer-events:none;
}
.ehtym-login-card{position:relative; z-index:1; width:100%; max-width:400px; text-align:center;}
.ehtym-login-card .ehtym-logo{display:inline-block; margin-bottom:30px;}
.ehtym-login-card .ehtym-eyebrow{margin-bottom:16px;}
.ehtym-login-card h1{font-family:'Playfair Display',serif; font-weight:900; font-size:clamp(26px,4vw,36px); line-height:1.1; margin:0 0 14px;}
.ehtym-lead{font-size:14px; font-weight:300; color:rgba(255,255,255,.55); line-height:1.7; margin:0 0 28px;}

.ehtym-form{display:flex; flex-direction:column; gap:10px;}
.ehtym-form input{
  width:100%; background:#000; border:1px solid rgba(255,255,255,.2); border-radius:2px;
  padding:14px 16px; color:#fff; font-family:'DM Sans',sans-serif; font-size:13px;
}
.ehtym-form input::placeholder{color:rgba(255,255,255,.35);}
.ehtym-form .ehtym-btn{width:100%; margin-top:6px;}

.ehtym-rgpd{font-size:11px; color:rgba(255,255,255,.35); margin:20px 0 0; line-height:1.6;}
.ehtym-rgpd a{color:var(--rose); text-decoration:underline; text-underline-offset:3px;}

/* ============================================================
   DASHBOARD — une fois connecté
   ============================================================ */
.ehtym-dashboard{display:grid; grid-template-columns:240px 1fr; min-height:100vh;}

.ehtym-sidebar{
  background:var(--near-black); border-right:1px solid rgba(205,175,175,.08);
  padding:32px 24px; display:flex; flex-direction:column; position:sticky; top:0; height:100vh;
}
.ehtym-sidebar > .ehtym-logo{margin-bottom:48px;}

.ehtym-sidebar-nav{display:flex; flex-direction:column; gap:4px;}
.ehtym-sidebar-nav a{
  font-size:12px; letter-spacing:.08em; text-transform:uppercase; color:rgba(255,255,255,.5);
  padding:12px 14px; border-radius:2px; transition:background .2s, color .2s;
}
.ehtym-sidebar-nav a:hover{color:#fff;}
.ehtym-sidebar-nav a.is-active{background:rgba(205,175,175,.1); color:var(--rose);}

.ehtym-sidebar-shortcuts{margin-top:32px; padding-top:24px; border-top:1px solid rgba(205,175,175,.08); display:flex; flex-direction:column; gap:10px; flex-grow:1;}
.ehtym-sidebar-label{font-size:10px; letter-spacing:.2em; text-transform:uppercase; color:rgba(255,255,255,.3); margin-bottom:4px;}
.ehtym-sidebar-shortcuts a{font-size:12px; color:rgba(255,255,255,.55); transition:color .2s;}
.ehtym-sidebar-shortcuts a:hover{color:var(--rose);}
.ehtym-member-since{font-size:11px; color:rgba(255,255,255,.3); margin-top:6px;}

.ehtym-sidebar-footer{border-top:1px solid rgba(205,175,175,.08); padding-top:20px; margin-top:20px;}
.ehtym-user{font-size:12px; color:rgba(255,255,255,.6); margin-bottom:10px; word-break:break-all;}
.ehtym-logout, .ehtym-back{display:block; font-size:11px; color:rgba(255,255,255,.4); margin-bottom:8px; transition:color .2s;}
.ehtym-logout:hover, .ehtym-back:hover{color:var(--rose);}

.ehtym-main{padding:56px clamp(24px,4vw,64px); max-width:760px;}
.ehtym-header{margin-bottom:36px;}
.ehtym-header h1{font-family:'Playfair Display',serif; font-weight:900; font-size:clamp(26px,3.4vw,36px); margin:12px 0 10px;}
.ehtym-subtitle{font-size:14px; color:rgba(255,255,255,.45); line-height:1.7; max-width:520px;}
.ehtym-empty{font-size:14px; color:rgba(255,255,255,.4);}

/* bloc épinglé, mis en avant au-dessus du fil */
.ehtym-pinned{
  position:relative; background:linear-gradient(180deg, rgba(205,175,175,.08), transparent);
  border:1px solid rgba(205,175,175,.3); border-radius:2px; padding:28px; margin-bottom:28px;
}
.ehtym-pinned-tag{
  display:inline-block; font-size:10px; letter-spacing:.15em; text-transform:uppercase; color:var(--rose);
  border:1px solid rgba(205,175,175,.4); padding:5px 10px; border-radius:2px; margin-bottom:16px;
}

/* fil d'actus */
.ehtym-feed{display:flex; flex-direction:column; gap:16px;}
.ehtym-post{background:var(--near-black); border:1px solid rgba(205,175,175,.1); border-radius:2px; padding:26px;}
.ehtym-post-meta{font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:rgba(255,255,255,.35); margin-bottom:14px;}
.ehtym-post-image{margin-bottom:18px; border-radius:2px; overflow:hidden;}
.ehtym-post-image img{width:100%; object-fit:cover;}
.ehtym-post-content{color:rgba(255,255,255,.8); font-size:15px; font-weight:300; line-height:1.75; margin-bottom:18px;}
.ehtym-post-content p{margin:0 0 14px;}
.ehtym-post-content p:last-child{margin-bottom:0;}

@media (max-width:820px){
  .ehtym-dashboard{grid-template-columns:1fr;}
  .ehtym-sidebar{
    position:static; height:auto; flex-direction:row; align-items:center; justify-content:space-between;
    padding:18px clamp(16px,4vw,48px); flex-wrap:wrap; gap:14px;
  }
  .ehtym-sidebar > .ehtym-logo{margin-bottom:0;}
  .ehtym-sidebar-nav{flex-direction:row;}
  .ehtym-sidebar-shortcuts{flex-direction:row; flex-grow:0; border-top:none; padding-top:0; margin-top:0; align-items:center; flex-wrap:wrap;}
  .ehtym-sidebar-label{display:none;}
  .ehtym-member-since{margin-top:0;}
  .ehtym-sidebar-footer{border-top:none; padding-top:0; margin-top:0; display:flex; align-items:center; gap:16px;}
  .ehtym-user{margin-bottom:0; font-size:11px;}
  .ehtym-logout, .ehtym-back{margin-bottom:0;}
  .ehtym-main{padding:36px clamp(16px,4vw,48px);}
}
