/* Variables limitées au plugin, pas de fuite globale */
.cmdose-wrap{
  --cmdose-orange:#ff6a00;
  --cmdose-orange-2:#ff7f1a;
  --cmdose-teal:#12b5b3;
  --cmdose-blue:#2563eb;
  --cmdose-bg:#fff7f0;
  --cmdose-card:#ffffff;
  --cmdose-ink:#0f172a;
  --cmdose-muted:#6b7280;
  --cmdose-radius:16px;
  --cmdose-shadow:0 10px 30px rgba(0,0,0,.08);
}

/* Conteneur principal */
.cmdose-wrap{
  background: linear-gradient(135deg,var(--cmdose-bg),#ffe8d9);
  border-radius: var(--cmdose-radius);
  padding: 18px;
  color: var(--cmdose-ink);
  font-size: 16px;
}

/* En-tête plugin */
.cmdose-wrap .cmdose-hero{
  background:#fff;
  border: 1px solid #f0f0f0;
  padding: 22px 18px;
  border-radius: calc(var(--cmdose-radius) - 4px);
}
.cmdose-wrap .cmdose-hero h2{
  margin:0 0 6px 0; font-size:26px; line-height:1.2;
}
.cmdose-wrap .cmdose-hero p{margin:0;color:var(--cmdose-muted)}

/* Grille du formulaire */
.cmdose-wrap .cmdose-form{margin-top:14px}
.cmdose-wrap .cmdose-grid{
  display:grid; grid-template-columns: repeat(12,1fr); gap:12px;
}
.cmdose-wrap .cmdose-field{grid-column: span 6; display:flex; flex-direction:column; gap:8px}
@media(max-width:780px){ .cmdose-wrap .cmdose-field{grid-column: span 12} }

.cmdose-wrap .cmdose-input,
.cmdose-wrap .cmdose-select{
  position:relative; display:flex; align-items:center;
  background: var(--cmdose-card); border:1px solid #ececec;
  padding:10px 12px; border-radius:12px; box-shadow: var(--cmdose-shadow);
}
.cmdose-wrap .cmdose-input span.dashicons{color:var(--cmdose-orange); margin-right:8px}
.cmdose-wrap .cmdose-input input{border:none; outline:none; width:100%; font-size:16px; background:transparent}
.cmdose-wrap .cmdose-select select{width:100%; border:none; outline:none; background:transparent; font-size:16px}

/* Toggles */
.cmdose-wrap .cmdose-toggle{position:relative; width:54px; height:30px}
.cmdose-wrap .cmdose-toggle input{
  position:absolute; inset:0; width:100%; height:100%;
  opacity:0; cursor:pointer; z-index:2;
}
.cmdose-wrap .cmdose-toggle-ui{
  position:absolute; inset:0; background:#eee; border-radius:30px; border:1px solid #e5e7eb;
  box-shadow: inset 0 2px 5px rgba(0,0,0,.08); z-index:1;
}
.cmdose-wrap .cmdose-toggle-ui::after{
  content:""; position:absolute; top:3px; left:3px; width:24px; height:24px; background:#fff;
  border-radius:50%; transition: all .2s ease; box-shadow: 0 2px 6px rgba(0,0,0,.2);
}
.cmdose-wrap .cmdose-toggle input:checked + .cmdose-toggle-ui{
  background: #19b6b3; border-color:#19b6b3;
}
.cmdose-wrap .cmdose-toggle input:checked + .cmdose-toggle-ui::after{
  transform: translateX(24px);
}

/* Actions */
.cmdose-wrap .cmdose-actions{display:flex; gap:12px; margin-top:10px}
.cmdose-wrap .cmdose-btn{
  border-radius:12px; padding:12px 16px; border:1px solid transparent; cursor:pointer;
  display:inline-flex; align-items:center; gap:8px; font-weight:600;
}
.cmdose-wrap .cmdose-primary{
  color:#fff; background:#ff6a00; box-shadow: var(--cmdose-shadow);
}
.cmdose-wrap .cmdose-ghost{
  background:#fff; color:var(--cmdose-orange); border-color: rgba(255,106,0,.4);
}
.cmdose-wrap .cmdose-btn:active{transform: translateY(1px)}

/* Résultats */
.cmdose-wrap .cmdose-result{margin-top:16px}
.cmdose-wrap .cmdose-card{
  background: var(--cmdose-card); border-radius: 18px; border:1px solid #f1f1f1;
  box-shadow: var(--cmdose-shadow); padding:16px;
}
.cmdose-wrap .cmdose-card h3{margin:0 0 6px 0; font-size:22px}
.cmdose-wrap .cmdose-alert{border-color:#ffe0d3; background:#fff9f6}
.cmdose-wrap .cmdose-success{border-color:#d7f5f4; background:#f7fffe}

.cmdose-wrap .cmdose-result-grid{display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:8px}
.cmdose-wrap .cmdose-kpi{
  background:#fff; border:1px dashed #e5e7eb; border-radius:14px; padding:16px; text-align:center
}
.cmdose-wrap .cmdose-kpi-value{font-size:36px; font-weight:800; color:var(--cmdose-orange)}
.cmdose-wrap .cmdose-kpi-label{display:block; color:var(--cmdose-muted); margin-top:6px}

.cmdose-wrap .cmdose-schedule{margin:10px 0 0 0}
.cmdose-wrap .cmdose-details summary{cursor:pointer; color:#2563eb; font-weight:600; margin-top:8px}
.cmdose-wrap .cmdose-mini{margin:8px 0 0 20px; padding:0}
.cmdose-wrap .cmdose-mini li{list-style:disc; color:var(--cmdose-muted)}
.cmdose-wrap .cmdose-note{margin-top:10px; color:var(--cmdose-muted); font-size:14px}

/* Table plugin */
.cmdose-wrap .table-container{margin:16px 0}
.cmdose-wrap .colorful-table{
  width:100%; border-collapse:collapse; border-radius:14px; overflow:hidden;
  box-shadow: var(--cmdose-shadow); background:#fff
}
.cmdose-wrap .colorful-table thead th{
  background:#ffffff; color:var(--cmdose-ink); padding:12px; text-align:left; font-weight:700;
  border-bottom:1px solid #e5e7eb;
}
.cmdose-wrap .colorful-table tbody td{
  border-top:1px solid #f1f1f1; padding:12px; color:var(--cmdose-ink)
}
.cmdose-wrap .colorful-table tbody tr:nth-child(even){background:#fffaf7}

/* Tooltip */
.cmdose-wrap .cmdose-label-with-help{display:flex; align-items:center; gap:6px}
.cmdose-wrap .cmdose-help{
  width:18px; height:px; border-radius:50%; border:none; background:var(--cmdose-orange);
  color:#fff; font-weight:700; font-size:13px; cursor:pointer; line-height:22px; text-align:center;
  padding:0;
}
.cmdose-wrap .cmdose-pop{
  background:#fff; border:1px solid #ffe0cc; box-shadow: var(--cmdose-shadow);
  border-radius:10px; padding:10px 12px; color:var(--cmdose-ink);
  margin-top:8px; position:relative; font-size:14px; max-width:500px;
}
.cmdose-wrap .cmdose-pop::before{
  content:""; position:absolute; top:-6px; left:14px; width:12px; height:12px;
  background:#fff; border-left:1px solid #ffe0cc; border-top:1px solid #ffe0cc; transform:rotate(45deg);
}
