/* Carpet Features – Frontend CSS | زرشکی #8b1a2d */
:root {
  --cf-primary: var(--cf-color, #8b1a2d);
  --cf-radius: 10px;
  --cf-transition: 180ms cubic-bezier(0.16,1,0.3,1);
}
/* ---- Button ---- */
.cf-installment-wrap { display:inline-block; margin:8px 0; }
.cf-installment-btn {
  display:inline-flex; align-items:center; gap:8px;
  padding:12px 20px; background:var(--cf-btn-color,#8b1a2d);
  color:#fff!important; border-radius:var(--cf-radius);
  text-decoration:none!important; font-size:15px; font-weight:600;
  cursor:pointer; border:none; direction:rtl;
  transition:filter var(--cf-transition),transform var(--cf-transition),box-shadow var(--cf-transition);
  box-shadow:0 2px 10px rgba(139,26,45,.3);
}
.cf-installment-btn:hover { filter:brightness(0.88); transform:translateY(-1px); box-shadow:0 4px 18px rgba(139,26,45,.4); }
.cf-installment-btn:active { transform:translateY(0); }
.cf-btn-arrow { font-size:18px; transition:transform var(--cf-transition); }
.cf-installment-btn:hover .cf-btn-arrow { transform:translateX(-3px); }
/* ---- Calculator ---- */
.cf-calculator {
  background:#fff; border-radius:16px; padding:32px;
  box-shadow:0 4px 24px rgba(139,26,45,.1); max-width:820px;
  margin:0 auto; direction:rtl; font-family:inherit;
  border:1.5px solid rgba(139,26,45,.12);
}
.cf-calc-header { display:flex; align-items:center; gap:12px; margin-bottom:28px; padding-bottom:20px; border-bottom:2px solid rgba(139,26,45,.1); }
.cf-calc-icon { color:var(--cf-color,#8b1a2d); }
.cf-calc-title { font-size:clamp(1.1rem,3vw,1.4rem); font-weight:700; color:var(--cf-color,#8b1a2d); margin:0; }
.cf-calc-form { display:flex; flex-direction:column; gap:20px; }
.cf-form-row { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
@media(max-width:600px){ .cf-form-row{ grid-template-columns:1fr; } }
.cf-full-width { grid-column:1/-1; }
.cf-form-group { display:flex; flex-direction:column; gap:6px; }
.cf-form-group label { font-size:14px; font-weight:600; color:#333; }
.cf-required { color:var(--cf-color,#8b1a2d); }
.cf-field-hint { font-size:12px; color:#888; }
.cf-input,.cf-select { padding:10px 14px; border:1.5px solid #ddd; border-radius:8px; font-size:15px; font-family:inherit; background:#fafafa; transition:border-color var(--cf-transition),box-shadow var(--cf-transition); width:100%; direction:rtl; }
.cf-input:focus,.cf-select:focus { outline:none; border-color:var(--cf-color,#8b1a2d); box-shadow:0 0 0 3px rgba(139,26,45,.1); background:#fff; }
.cf-input.cf-input-error { border-color:#e53935!important; }
.cf-readonly-field { padding:10px 14px; background:#f4f4f4; border:1.5px solid #e5e5e5; border-radius:8px; font-size:15px; font-weight:600; color:var(--cf-color,#8b1a2d); }
.cf-select-wrap { position:relative; }
.cf-select { appearance:none; -webkit-appearance:none; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23666' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E"); background-repeat:no-repeat; background-position:left 12px center; padding-left:32px; }
.cf-radio-group { display:flex; gap:16px; flex-wrap:wrap; align-items:center; padding:4px 0; }
.cf-radio-label { display:flex; align-items:center; gap:8px; cursor:pointer; font-size:14px; user-select:none; }
.cf-radio { display:none; }
.cf-radio-custom { width:18px; height:18px; border:2px solid #ccc; border-radius:50%; flex-shrink:0; transition:border-color var(--cf-transition),background var(--cf-transition); position:relative; }
.cf-radio:checked + .cf-radio-custom { border-color:var(--cf-color,#8b1a2d); background:var(--cf-color,#8b1a2d); }
.cf-radio:checked + .cf-radio-custom::after { content:''; position:absolute; top:3px; left:3px; width:6px; height:6px; background:#fff; border-radius:50%; }
.cf-calc-submit { display:flex; align-items:center; justify-content:center; gap:8px; padding:13px 28px; background:var(--cf-color,#8b1a2d); color:#fff; border:none; border-radius:10px; font-size:16px; font-weight:700; font-family:inherit; cursor:pointer; transition:filter var(--cf-transition),transform var(--cf-transition); align-self:flex-start; }
.cf-calc-submit:hover { filter:brightness(.88); transform:translateY(-1px); }
.cf-calc-submit:active { transform:translateY(0); }
/* Results */
.cf-results { margin-top:28px; animation:cf-fadein .3s ease; }
@keyframes cf-fadein { from{opacity:0;transform:translateY(8px)} to{opacity:1;transform:translateY(0)} }
.cf-results-summary { display:grid; grid-template-columns:repeat(auto-fit,minmax(160px,1fr)); gap:12px; margin-bottom:20px; }
.cf-summary-card { background:#fafafa; border:1.5px solid #eee; border-radius:10px; padding:14px 16px; display:flex; flex-direction:column; gap:4px; }
.cf-summary-card.cf-summary-highlight { background:rgba(139,26,45,.07); border-color:var(--cf-color,#8b1a2d); }
.cf-summary-label { font-size:12px; color:#888; }
.cf-summary-value { font-size:18px; font-weight:700; color:var(--cf-color,#8b1a2d); }
.cf-warning { display:flex; align-items:center; gap:8px; padding:10px 14px; background:#fff8e1; border:1.5px solid #ffe082; border-radius:8px; font-size:13px; color:#7a5800; margin-bottom:16px; }
.cf-schedule-wrap { margin-bottom:28px; }
.cf-schedule-title { font-size:16px; font-weight:700; margin-bottom:12px; color:#333; }
.cf-table-wrap { overflow-x:auto; border-radius:10px; border:1.5px solid #eee; }
.cf-table { width:100%; border-collapse:collapse; font-size:14px; }
.cf-table th { background:var(--cf-color,#8b1a2d); color:#fff; padding:10px 14px; text-align:right; font-weight:600; }
.cf-table td { padding:9px 14px; border-bottom:1px solid #f0f0f0; }
.cf-table tbody tr:last-child td { border-bottom:none; }
.cf-table tbody tr:hover { background:#fafafa; }
.cf-table tbody tr:nth-child(even) { background:#fdf8f8; }
/* Request form */
.cf-request-form-wrap { background:#fdf8f9; border:1.5px solid rgba(139,26,45,.2); border-radius:12px; padding:24px; }
.cf-request-title { font-size:16px; font-weight:700; margin-bottom:6px; color:var(--cf-color,#8b1a2d); }
.cf-request-desc { font-size:13px; color:#666; margin-bottom:18px; }
.cf-request-submit { display:flex; align-items:center; justify-content:center; gap:8px; padding:12px 28px; background:var(--cf-color,#8b1a2d); color:#fff; border:none; border-radius:9px; font-size:15px; font-weight:700; font-family:inherit; cursor:pointer; transition:filter var(--cf-transition); margin-top:4px; width:100%; }
.cf-request-submit:hover { filter:brightness(.88); }
.cf-request-submit:disabled { opacity:.6; cursor:not-allowed; }
.cf-request-success { display:flex; flex-direction:column; align-items:center; gap:12px; padding:20px; color:#2e7d32; text-align:center; }
.cf-request-success svg { color:#43a047; }
@media(max-width:480px){ .cf-calculator{padding:20px 16px;} .cf-results-summary{grid-template-columns:1fr 1fr;} }
