.cc-widget{
  --cc-ink:#0B0F1A;
  --cc-mint:#00D9A3;
  --cc-mint-soft:#6EEFC4;
  --cc-gold:#FFB84D;
  --cc-text-soft:#5B6478;
  --cc-line:#E4E7ED;
  --cc-panel:#F7F8FA;

  font-family: -apple-system, 'Helvetica Neue', Arial, sans-serif;
  background:#fff;
  border:1px solid var(--cc-line);
  border-radius:18px;
  padding:32px;
  max-width:720px;
  margin:32px auto;
  box-shadow:0 12px 40px rgba(11,15,26,0.06);
}
.cc-widget *{ box-sizing:border-box; }

.cc-head h3{ margin:0 0 6px; font-size:22px; color:var(--cc-ink); }
.cc-sub{ margin:0 0 26px; font-size:14px; color:var(--cc-text-soft); }

.cc-controls{ display:grid; gap:20px; margin-bottom:30px; }
.cc-field-label{ display:flex; justify-content:space-between; align-items:baseline; margin-bottom:8px; gap:8px; }
.cc-field-label label{ font-size:13px; font-weight:600; color:var(--cc-ink); display:flex; align-items:center; gap:8px; }
.cc-optional-tag{
  font-size:10px; font-weight:700; letter-spacing:0.5px; text-transform:uppercase;
  color:var(--cc-text-soft); background:var(--cc-panel); border:1px solid var(--cc-line);
  border-radius:999px; padding:2px 8px;
}
.cc-value{ font-size:14px; font-weight:700; color:var(--cc-mint); font-variant-numeric: tabular-nums; white-space:nowrap; }

.cc-field select#cc-currency{
  width:100%; padding:10px 12px; border:1px solid var(--cc-line); border-radius:10px;
  font-size:14px; background:#fff; color:var(--cc-ink);
}

.cc-field input[type="range"]{
  width:100%; height:6px; border-radius:999px; background:var(--cc-line);
  appearance:none; -webkit-appearance:none; outline:none;
}
.cc-field input[type="range"]:disabled{ opacity:0.4; }
.cc-field input[type="range"]::-webkit-slider-thumb{
  -webkit-appearance:none; width:20px; height:20px; border-radius:50%;
  background:var(--cc-mint); border:3px solid #fff; box-shadow:0 2px 8px rgba(0,217,163,0.5); cursor:pointer;
}
.cc-field input[type="range"]::-moz-range-thumb{
  width:20px; height:20px; border-radius:50%; background:var(--cc-mint);
  border:3px solid #fff; box-shadow:0 2px 8px rgba(0,217,163,0.5); cursor:pointer;
}

.cc-checkbox-row{
  display:flex; align-items:center; gap:8px; margin-top:10px;
  font-size:12.5px; color:var(--cc-text-soft); cursor:pointer; font-weight:500;
}
.cc-checkbox-row input{ width:15px; height:15px; accent-color:var(--cc-mint); cursor:pointer; }

.cc-results{ background:var(--cc-panel); border-radius:14px; padding:26px; }
.cc-headline{ text-align:center; margin-bottom:20px; }
.cc-headline-label{ display:block; font-size:12px; letter-spacing:1px; text-transform:uppercase; color:var(--cc-text-soft); margin-bottom:4px; }
.cc-headline strong{ font-size:40px; color:var(--cc-ink); font-weight:800; font-variant-numeric: tabular-nums; }
.cc-headline-note{ display:block; font-size:12px; color:var(--cc-text-soft); margin-top:4px; font-style:italic; }

.cc-chart-wrap{ width:100%; height:160px; margin-bottom:20px; }
#cc-chart{ width:100%; height:100%; display:block; }

.cc-split{ margin-bottom:18px; }
.cc-split-bar{ display:flex; width:100%; height:14px; border-radius:999px; overflow:hidden; background:var(--cc-line); margin-bottom:12px; }
.cc-split-contributed{ background:#C7D0E0; height:100%; transition: width 0.25s ease; }
.cc-split-growth{ background: linear-gradient(90deg, var(--cc-mint-soft), var(--cc-mint)); height:100%; transition: width 0.25s ease; }
.cc-split-legend{ display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px; font-size:13px; color:var(--cc-text-soft); }
.cc-split-legend strong{ color:var(--cc-ink); font-variant-numeric: tabular-nums; }
.cc-dot{ display:inline-block; width:9px; height:9px; border-radius:50%; margin-right:6px; }
.cc-dot-contributed{ background:#C7D0E0; }
.cc-dot-growth{ background: var(--cc-mint); }

.cc-wow{
  text-align:center; font-size:15px; color:var(--cc-ink); background:#fff;
  border:1px dashed var(--cc-mint); border-radius:10px; padding:14px 16px; margin:0 0 14px;
}
.cc-wow strong{ color:var(--cc-mint); }

.cc-smart:empty{ display:none; }
.cc-smart{
  text-align:center; font-size:14px; color:var(--cc-ink); background: linear-gradient(135deg, #FFF6E8, #FFF);
  border:1px solid #FFE3B0; border-radius:10px; padding:14px 16px; margin:0;
}
.cc-smart strong{ color:var(--cc-gold); }

@media (max-width:600px){
  .cc-widget{ padding:22px; border-radius:14px; }
  .cc-headline strong{ font-size:32px; }
}

/* ---------------- Contact form ---------------- */
.monei-contact-form{
  font-family: -apple-system, 'Helvetica Neue', Arial, sans-serif;
  max-width:520px;
  margin:32px auto;
}
.monei-contact-form label{ display:block; font-size:13px; font-weight:600; color:#0B0F1A; margin:16px 0 6px; }
.monei-contact-form input[type="text"],
.monei-contact-form input[type="email"],
.monei-contact-form textarea{
  width:100%; padding:12px 14px; border:1px solid #E4E7ED; border-radius:10px;
  font-size:15px; font-family:inherit; color:#0B0F1A;
}
.monei-contact-form textarea{ resize:vertical; }
.monei-contact-form button{
  margin-top:22px; background:#00D9A3; color:#0B0F1A; border:none; border-radius:999px;
  padding:14px 30px; font-size:15px; font-weight:700; cursor:pointer;
  transition: background 0.15s ease, transform 0.15s ease;
}
.monei-contact-form button:hover{ background:#6EEFC4; transform:translateY(-2px); }
.monei-hp-field{ position:absolute; left:-9999px; top:-9999px; }
.monei-contact-success{
  background:#E9FBF5; color:#0B7A57; border:1px solid #B7EFDC; border-radius:10px;
  padding:16px 18px; font-size:14px;
}
.monei-contact-error{
  background:#FDECEC; color:#B23A3A; border:1px solid #F5C6C6; border-radius:10px;
  padding:14px 16px; font-size:14px; margin-bottom:12px;
}
