/* CleaningArt gift card order widget — mounts into .ca-gc-mount on the gift cards page.
   Same visual language as lead-form.css (orange #ff6b00 accent, #eeeeee fields). */
.ca-gc-card{
  background:#fff; border-radius:24px; max-width:860px; width:100%; margin:0 auto;
  padding:36px 40px; box-sizing:border-box; font-family:inherit;
}
.ca-gc-grid{ display:grid; grid-template-columns:1fr 1fr; gap:0 36px; }
.ca-gc-col .ca-gc-section-title{ margin-top:0; }
.ca-gc-amounts{ display:flex; flex-wrap:wrap; gap:10px; margin-bottom:18px; max-width:520px; }
.ca-gc-tax-breakdown{ background:#f6f6f6; border-radius:14px; padding:12px 16px; margin-bottom:18px; max-width:320px; }
.ca-gc-tax-row{ display:flex; align-items:center; justify-content:space-between; font-size:13px; color:#666; padding:3px 0; }
.ca-gc-tax-row b{ font-weight:600; color:#333; }
.ca-gc-tax-row.ca-gc-tax-total{ border-top:1px solid #e0e0e0; margin-top:4px; padding-top:7px; font-size:14px; color:#111; }
.ca-gc-tax-row.ca-gc-tax-total b{ color:#ff6b00; font-size:15px; }
.ca-gc-amt{
  flex:1 1 auto; min-width:76px; text-align:center; padding:14px 10px; border-radius:14px;
  background:#eeeeee; color:#333; font-weight:700; font-size:16px; cursor:pointer;
  border:2px solid transparent; transition:background .15s,border-color .15s;
}
.ca-gc-amt:hover{ background:#e4e4e4; }
.ca-gc-amt.ca-gc-amt-active{ background:#fff3ea; border-color:#ff6b00; color:#ff6b00; }
.ca-gc-field{ margin-bottom:14px; }
.ca-gc-field label{ display:block; font-size:12px; font-weight:600; color:#444; margin-bottom:4px; text-transform:uppercase; letter-spacing:.03em; }
.ca-gc-field input, .ca-gc-field textarea{
  width:100%; padding:16px 20px; border:none; border-radius:14px;
  font-size:16px; font-family:inherit; box-sizing:border-box; background:#eeeeee; color:#333;
}
.ca-gc-field input::placeholder, .ca-gc-field textarea::placeholder{ color:#7a7a7a; }
.ca-gc-field input:focus, .ca-gc-field textarea:focus{ outline:none; background:#e4e4e4; }
.ca-gc-field textarea{ resize:vertical; height:84px; }
.ca-gc-section-title{ font-size:13px; font-weight:700; color:#111; text-transform:uppercase; letter-spacing:.04em; margin:22px 0 10px; }
.ca-gc-section-title:first-of-type{ margin-top:0; }
.ca-gc-hp{ position:absolute; left:-9999px; opacity:0; height:0; width:0; }
.ca-gc-submit{
  width:100%; background:#ff6b00; color:#fff; border:none; border-radius:14px;
  padding:18px; font-size:15px; font-weight:700; cursor:pointer; margin-top:8px;
  text-transform:uppercase; letter-spacing:.04em; transition:background .15s;
}
.ca-gc-submit:hover{ background:#e05f00; }
.ca-gc-submit:disabled{ opacity:.6; cursor:default; }
.ca-gc-status{ font-size:13.5px; margin-top:12px; text-align:center; display:none; }
.ca-gc-status.ca-gc-ok{ color:#2c8a4b; display:block; }
.ca-gc-status.ca-gc-err{ color:#c1503f; display:block; }
.ca-gc-done{ display:none; text-align:center; padding:12px 4px; }
.ca-gc-done.ca-gc-show{ display:block; }
.ca-gc-done h3{ margin:0 0 10px; font-size:20px; color:#111; }
.ca-gc-done p{ margin:0 0 8px; font-size:14px; color:#555; line-height:1.5; }
.ca-gc-note{ font-size:12px; color:#8a8a8a; margin-top:14px; text-align:center; line-height:1.5; }
.ca-gc-card-head{ display:flex; align-items:center; justify-content:space-between; margin:22px 0 10px; }
.ca-gc-card-head .ca-gc-section-title{ margin:0; }
.ca-gc-card-lock{ display:inline-flex; align-items:center; gap:5px; font-size:11px; font-weight:600; color:#8a8a8a; text-transform:none; letter-spacing:0; }
.ca-gc-card-lock svg{ width:12px; height:12px; flex:none; }
.ca-gc-card-visual{
  background:linear-gradient(135deg,#232020 0%,#161414 100%); border-radius:16px;
  padding:20px 22px 18px; margin-bottom:14px; color:#fff; position:relative; overflow:hidden;
  box-shadow:0 14px 28px -14px rgba(0,0,0,.5);
}
.ca-gc-card-visual::after{
  content:''; position:absolute; right:-40px; top:-60px; width:180px; height:180px; border-radius:50%;
  background:radial-gradient(circle,rgba(255,107,0,.35),transparent 70%);
}
.ca-gc-card-visual-row{ display:flex; align-items:center; justify-content:space-between; position:relative; z-index:1; }
.ca-gc-chip{ width:34px; height:25px; }
.ca-gc-card-visual-brand{ font-family:'Oswald',sans-serif; font-weight:700; text-transform:uppercase; font-size:13px; letter-spacing:.04em; color:#f1ece7; }
.ca-gc-card-visual-number{ font-family:'Courier New',monospace; font-size:21px; letter-spacing:3px; color:#f1ece7; margin:20px 0 18px; position:relative; z-index:1; font-variant-numeric:tabular-nums; white-space:pre; }
.ca-gc-card-visual-row--bottom{ align-items:flex-end; }
.ca-gc-card-visual-valid{ font-size:9px; letter-spacing:.06em; color:#a89f99; line-height:1.5; }
.ca-gc-card-visual-valid b{ font-size:12px; color:#f1ece7; font-weight:600; }
.ca-gc-card-visual-amt{ font-size:9px; letter-spacing:.06em; color:#a89f99; line-height:1.5; text-align:right; }
.ca-gc-card-visual-amt b{ font-size:16px; color:#ff8a3d; font-weight:700; transition:color .15s; }
.ca-gc-wallet-mount{
  margin-bottom:12px; min-height:56px; position:relative; overflow:hidden;
  width:100%; max-width:100%; box-sizing:border-box;
}
.ca-gc-wallet-mount:empty{ margin-bottom:0; min-height:0; }
.ca-gc-wallet-mount iframe{
  width:100% !important; max-width:100% !important; height:56px !important;
  border:none; display:block; position:absolute !important; left:0 !important; top:0 !important;
}
.ca-gc-card-mount{
  min-height:60px; border-radius:14px; overflow:hidden; background:#fff;
  border:1.5px solid #e4e4e4; padding:14px 16px 4px; transition:border-color .15s;
}
.ca-gc-card-mount:focus-within{ border-color:#ff6b00; }
.ca-gc-card-mount iframe{ width:100%; border:none; display:block; }
.ca-gc-card-loading{ padding:20px; text-align:center; font-size:13px; color:#8a8a8a; }
.ca-gc-card-error{ padding:16px 18px; text-align:center; font-size:13.5px; color:#c1503f; background:#fdf0ee; border-radius:14px; line-height:1.5; }
@media (max-width:680px){
  .ca-gc-card{ padding:26px 20px; border-radius:18px; }
  .ca-gc-grid{ grid-template-columns:1fr; gap:0; }
  .ca-gc-amounts{ max-width:none; }
}
