:root{
  --d101ws-green:#198641;
  --d101ws-dark:#151317;
  --d101ws-gold:#C0B50D;
  --d101ws-red:#B51D30;
  --d101ws-bg:#f3f3ef;
  --d101ws-border:rgba(21,19,23,.10);
  --d101ws-shadow:0 18px 42px rgba(21,19,23,.10);
}
.d101ws-wrap{max-width:1180px;margin:28px auto 60px;padding:0 18px;color:var(--d101ws-dark)}
.d101ws-hero{display:flex;justify-content:space-between;align-items:center;gap:20px;background:linear-gradient(135deg,#115D2D,#198641);color:#fff;border-radius:28px;padding:28px;box-shadow:var(--d101ws-shadow);position:relative;overflow:hidden}
.d101ws-hero:after{content:"";position:absolute;right:-80px;top:-80px;width:240px;height:240px;border-radius:50%;background:rgba(192,181,13,.22)}
.d101ws-kicker{display:inline-flex;font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:900;background:rgba(255,255,255,.14);padding:7px 10px;border-radius:999px;margin-bottom:10px}
.d101ws-hero h1{margin:0;font-size:clamp(30px,4vw,46px);line-height:1.05;color:#fff}.d101ws-welcome{font-size:16px;font-weight:900;margin:0 0 8px;color:#fff}
.d101ws-hero p{margin:10px 0 0;color:rgba(255,255,255,.90);max-width:720px}
.d101ws-topbtn{position:relative;z-index:2;background:#fff;color:var(--d101ws-green)!important;border-radius:999px;padding:12px 18px;font-weight:900;text-decoration:none}
.d101ws-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0 22px}
.d101ws-tabs a{background:#fff;border:1px solid var(--d101ws-border);border-radius:999px;padding:10px 14px;text-decoration:none;color:var(--d101ws-dark);font-weight:850}
.d101ws-tabs a.is-active,.d101ws-tabs a:hover{background:var(--d101ws-green);color:#fff}
.d101ws-card{background:#fff;border:1px solid var(--d101ws-border);border-radius:24px;padding:22px;box-shadow:0 8px 24px rgba(21,19,23,.07);margin-bottom:20px}
.d101ws-card h2{margin:0 0 8px;font-size:24px}.d101ws-card h3{margin:0 0 10px}
.d101ws-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px}
.d101ws-stat{background:#fff;border:1px solid var(--d101ws-border);border-radius:22px;padding:18px;box-shadow:0 8px 24px rgba(21,19,23,.06)}
.d101ws-stat strong{display:block;color:var(--d101ws-green);font-size:34px;line-height:1}.d101ws-stat span{font-weight:800;color:#666}
.d101ws-grid2{display:grid;grid-template-columns:1fr 1fr;gap:20px}.d101ws-grid4{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.d101ws-actions{display:flex;gap:10px;flex-wrap:wrap}.d101ws-btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--d101ws-border);background:#fff;color:var(--d101ws-green)!important;border-radius:999px;padding:10px 14px;font-weight:900;text-decoration:none;cursor:pointer}
.d101ws-btn-primary{background:linear-gradient(135deg,#198641,#115D2D)!important;color:#fff!important;border-color:transparent}.d101ws-btn-light{background:#f7f7f2}
.d101ws-titleline{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:14px}.d101ws-titleline p{margin:4px 0 0;color:#666}
.d101ws-form label{display:block;font-weight:900;margin-bottom:7px}.d101ws-field{margin-bottom:16px}.d101ws-field input[type=text],.d101ws-field input[type=date],.d101ws-field input[type=url],.d101ws-field textarea{width:100%;border:1px solid var(--d101ws-border);border-radius:14px;padding:12px 13px;background:#fff}
.d101ws-field small,.d101ws-help{display:block;color:#777;margin-top:6px}.d101ws-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.d101ws-preview img{margin-top:12px;border-radius:14px;max-width:220px;height:auto;display:block}
.d101ws-taxbox{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin:20px 0}.d101ws-taxbox>div{background:#f8f8f4;border:1px solid var(--d101ws-border);border-radius:18px;padding:16px}
.d101ws-checkgrid{display:grid;gap:8px}.d101ws-checkgrid label{display:flex;gap:8px;align-items:center;background:#fff;border:1px solid rgba(21,19,23,.07);border-radius:12px;padding:8px 10px;margin:0}
.d101ws-submitbar{display:flex;justify-content:flex-end;gap:10px;position:sticky;bottom:14px;background:rgba(255,255,255,.88);backdrop-filter:blur(8px);border:1px solid var(--d101ws-border);border-radius:20px;padding:12px;margin-top:18px}
.d101ws-list{list-style:none;padding:0;margin:0}.d101ws-list li{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--d101ws-border)}.d101ws-list a{font-weight:900;color:var(--d101ws-green)}.d101ws-list span{color:#777}
.d101ws-tablewrap{overflow:auto}.d101ws-table{width:100%;border-collapse:separate;border-spacing:0 10px}.d101ws-table th{text-align:left;color:#666;font-size:13px}.d101ws-table td{background:#f9f9f6;padding:14px;border-top:1px solid var(--d101ws-border);border-bottom:1px solid var(--d101ws-border);vertical-align:middle}.d101ws-table td:first-child{border-left:1px solid var(--d101ws-border);border-radius:16px 0 0 16px}.d101ws-table td:last-child{border-right:1px solid var(--d101ws-border);border-radius:0 16px 16px 0}.d101ws-table small{display:block;color:#777;margin-top:4px}
.d101ws-badge{display:inline-flex;padding:6px 10px;border-radius:999px;font-weight:900;font-size:12px}.d101ws-badge.is-published{background:rgba(25,134,65,.10);color:#198641}.d101ws-badge.is-draft{background:rgba(192,181,13,.18);color:#736a00}
.d101ws-actions-cell{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.d101ws-actions-cell a,.d101ws-actions-cell button{border:0;background:transparent;color:#198641;font-weight:900;cursor:pointer;text-decoration:none;padding:0}
.d101ws-social-head{display:flex;justify-content:space-between;gap:12px;align-items:center;background:#f8f8f4;border:1px solid var(--d101ws-border);border-radius:16px;padding:12px 14px;margin:14px 0}.d101ws-box{background:#f8f8f4;border:1px solid var(--d101ws-border);border-radius:20px;padding:16px}.d101ws-box textarea{width:100%;min-height:210px;border:1px solid var(--d101ws-border);border-radius:14px;padding:12px;background:#fff}.d101ws-box-actions{display:flex;gap:10px;margin-top:10px}
.d101ws-alert{padding:12px 14px;border-radius:16px;font-weight:900;margin-bottom:16px}.d101ws-alert.is-ok{background:rgba(25,134,65,.10);color:#115D2D}.d101ws-alert.is-error{background:rgba(181,29,48,.10);color:#B51D30}
.d101ws-guide ol{padding-left:20px}.d101ws-guide li{margin-bottom:10px}.d101ws-login{max-width:560px;margin:40px auto}
@media(max-width:900px){.d101ws-stats,.d101ws-grid2,.d101ws-grid4,.d101ws-taxbox,.d101ws-row{grid-template-columns:1fr}.d101ws-hero,.d101ws-titleline,.d101ws-social-head{display:block}.d101ws-topbtn{margin-top:14px}.d101ws-submitbar{position:static;justify-content:stretch;flex-direction:column}.d101ws-btn{width:100%}}

/* v2.0.2 — lisibilité des onglets Espace CM */
.d101ws-tabs a.is-active,
.d101ws-tabs a:hover,
.d101ws-tabs a:focus{
  background:#198641!important;
  color:#ffffff!important;
  border-color:#198641!important;
}
.d101ws-tabs a.is-active *,
.d101ws-tabs a:hover *,
.d101ws-tabs a:focus *{
  color:#ffffff!important;
}

/* v2.0.3 — correction forte des boutons Espace CM */
.d101ws-wrap .d101ws-btn,
.d101ws-wrap a.d101ws-btn,
.d101ws-wrap button.d101ws-btn{
  text-decoration:none!important;
  text-decoration-line:none!important;
}

.d101ws-wrap .d101ws-btn-primary,
.d101ws-wrap a.d101ws-btn-primary,
.d101ws-wrap button.d101ws-btn-primary,
.d101ws-actions .d101ws-btn-primary,
.d101ws-actions a.d101ws-btn-primary{
  background:linear-gradient(135deg,#198641,#115D2D)!important;
  color:#ffffff!important;
  border-color:transparent!important;
  text-decoration:none!important;
  text-decoration-line:none!important;
}

.d101ws-wrap .d101ws-btn-primary:hover,
.d101ws-wrap .d101ws-btn-primary:focus,
.d101ws-wrap a.d101ws-btn-primary:hover,
.d101ws-wrap a.d101ws-btn-primary:focus,
.d101ws-actions .d101ws-btn-primary:hover,
.d101ws-actions .d101ws-btn-primary:focus{
  background:linear-gradient(135deg,#115D2D,#198641)!important;
  color:#ffffff!important;
  text-decoration:none!important;
  transform:translateY(-1px);
}

.d101ws-wrap .d101ws-btn-primary *,
.d101ws-wrap .d101ws-btn-primary:hover *,
.d101ws-wrap .d101ws-btn-primary:focus *{
  color:#ffffff!important;
}

/* Boutons secondaires : texte vert lisible sur fond blanc */
.d101ws-wrap .d101ws-btn:not(.d101ws-btn-primary){
  color:#115D2D!important;
  background:#ffffff!important;
  border-color:rgba(25,134,65,.18)!important;
}

.d101ws-wrap .d101ws-btn:not(.d101ws-btn-primary):hover,
.d101ws-wrap .d101ws-btn:not(.d101ws-btn-primary):focus{
  color:#ffffff!important;
  background:#198641!important;
  border-color:#198641!important;
  text-decoration:none!important;
}
