/* Autofacturación */
.cd-fac { display: flex; flex-direction: column; gap: 16px; max-width: 760px; }
.cd-fac h1 { margin: 0; font-size: clamp(26px, 4vw, 36px); }
.cd-fac__head { display: flex; flex-direction: column; gap: 4px; }
.cd-fac__head h2 { margin: 0; font-size: 22px; }
.cd-fac__head .mono { color: var(--cd-muted, #5A6371); font-size: 14px; }
.cd-fac__lead { margin: 0; color: var(--cd-muted, #5A6371); }
.cd-fac__find, .cd-fac__form { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px 14px; background: #fff; border: 1px solid var(--cd-line, #DDE1E7); border-radius: 14px; padding: 18px; }
.cd-fac__find { grid-template-columns: 1fr 1.4fr auto; align-items: end; }
.cd-fac label { display: flex; flex-direction: column; gap: 6px; min-width: 0; }
.cd-fac label > span { font-size: 13px; font-weight: 600; color: var(--cd-ink, #201E1E); }
.cd-fac label small { font-weight: 400; color: var(--cd-muted, #5A6371); }
.cd-fac input, .cd-fac select { width: 100%; box-sizing: border-box; border: 1.5px solid var(--cd-line, #DDE1E7); border-radius: 10px; padding: 11px 12px; font-size: 16px; background: #fff; color: var(--cd-ink, #201E1E); }
.cd-fac input:focus, .cd-fac select:focus { border-color: var(--cd-mag, #C8006A); outline: none; box-shadow: 0 0 0 3px var(--cd-mag-soft, #FFEAF5); }
.cd-fac input[name=rfc], .cd-fac input[name=nombre] { text-transform: uppercase; }
.cd-fac .w2 { grid-column: span 2; }
.cd-fac .w3 { grid-column: 1 / -1; justify-content: center; }
.cd-fac__form .cd-btn, .cd-fac__find .cd-btn { display: inline-flex; align-items: center; gap: 8px; }
.cd-fac__err { background: #FDE2E0; color: #8A1F18; border-radius: 10px; padding: 12px 14px; font-size: 14px; margin: 0; }
.cd-fac__note { background: #FFF4D6; color: #3D2A00; border-radius: 10px; padding: 12px 14px; margin: 0; }
.cd-fac__hint { margin: 0; font-size: 14px; color: var(--cd-muted, #5A6371); }
.cd-fac__hint a { display: inline-flex; align-items: center; gap: 6px; }
.cd-fac__done, .cd-fac__cta { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; background: #fff; border: 1px solid var(--cd-line, #DDE1E7); border-radius: 14px; padding: 14px 16px; }
.cd-fac__done div, .cd-fac__cta div { display: flex; flex-direction: column; gap: 2px; }
.cd-fac__done small, .cd-fac__cta small { color: var(--cd-muted, #5A6371); font-size: 13px; }
.cd-fac__ok { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: var(--cd-ok-soft, #E3F4EA); color: var(--cd-ok, #1E7A45); flex: none; }
.cd-fac__cta > span:first-child { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; background: var(--cd-mag-soft, #FFEAF5); color: var(--cd-mag, #C8006A); flex: none; }
.cd-fac__cta .cd-btn { margin-left: auto; }
.cd-fac__sp { flex: 1; }
.cd-fac__test { font-style: normal; font: 600 11px var(--wp--preset--font-family--mono, monospace); background: #FFF4D6; color: #9A5B00; padding: 2px 6px; border-radius: 6px; margin-left: 6px; }
.cd-thanks__pay .cd-fac__done, .cd-thanks__pay .cd-fac__cta { border: 0; padding: 0; margin-top: 8px; }
.cd-pill--mag { background: var(--cd-mag-soft, #FFEAF5); color: var(--cd-mag, #C8006A); }
@media (max-width: 640px) {
	.cd-fac__find, .cd-fac__form { grid-template-columns: 1fr; }
	.cd-fac .w2 { grid-column: auto; }
}
/* Facturar en un clic */
.cd-fac__quick { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; background: #fff; border: 1.5px solid var(--cd-mag, #C8006A); border-radius: 14px; padding: 16px 18px; }
.cd-fac__quick > div:not(.cd-fac__qa) { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.cd-fac__quick strong { font-size: 18px; }
.cd-fac__quick small { color: var(--cd-muted, #5A6371); font-size: 13px; }
.cd-fac__qa { display: flex; flex-direction: column; align-items: center; gap: 8px; }
.cd-fac__qa .cd-btn { display: inline-flex; align-items: center; gap: 8px; }
.cd-fac__qa a { font-size: 13px; color: var(--cd-muted, #5A6371); }
.cd-fac__okmsg { display: flex; align-items: center; gap: 6px; margin: 0; color: var(--cd-ok, #1E7A45); font-weight: 600; }
.cd-fac__del { margin: 0; }
.cd-fac__del button { background: none; border: 0; padding: 0; color: var(--cd-muted, #5A6371); font-size: 13px; text-decoration: underline; cursor: pointer; }
@media (max-width: 640px) { .cd-fac__qa { width: 100%; } .cd-fac__qa .cd-btn { width: 100%; justify-content: center; } }
.cd-fac__h { margin: 22px 0 10px; font-size: 18px; }
.cd-fac__quick { margin-bottom: 10px; }
.cd-fac__delbtn { background: none; border: 1px solid #DDE1E7; border-radius: 8px; padding: 6px 12px; color: #B8322A; cursor: pointer; }
.cd-dirs-acct { margin-top: 28px; }
.cd-dirs-acct h3 { font-size: 18px; margin: 0 0 10px; }
.cd-dirs-acct__it { display: flex; justify-content: space-between; align-items: center; gap: 12px; border: 1px solid #DDE1E7; border-radius: 10px; padding: 12px 14px; margin-bottom: 8px; background: #fff; font-size: 14px; }
.cd-dirs-acct__it button { background: none; border: 1px solid #DDE1E7; border-radius: 8px; padding: 6px 12px; color: #B8322A; cursor: pointer; }
.cd-fac__warn { display: flex; flex-direction: column; gap: 4px; padding: 14px 16px; border-radius: 12px; background: #FFF4E5; border-left: 4px solid #F59E0B; color: var(--cd-ink, #201E1E); }
.cd-fac__warn strong { font-size: 15px; font-weight: 700; }
.cd-fac__warn span { font-size: 14px; color: var(--cd-muted, #5A6371); line-height: 1.5; }
.cd-fchk { margin: -4px 0 2px; font-size: 14px; line-height: 1.45; color: var(--cd-muted, #5A6371); }
.cd-fchk:empty { display: none; }
.cd-fchk.is-ok { color: #1E7A45; font-weight: 600; }
.cd-fchk.is-bad { color: #8A1F18; }
.cd-fchk.is-tip { color: #8A5A00; }
.cd-fchk.is-wait { color: var(--cd-muted, #5A6371); }
.cd-fchk-ok { border-color: #1E7A45 !important; }
.cd-fchk-bad { border-color: #B8322A !important; box-shadow: 0 0 0 3px #FBE5E3 !important; }
/* Mi cuenta → Mis facturas */
.cd-mf { --mf-ink: var(--cd-ink, #201E1E); --mf-mut: var(--cd-muted, #5A6371); --mf-line: var(--cd-line, #DDE1E7); display: flex; flex-direction: column; gap: 14px; }
.cd-mf__sub { margin: 0; color: var(--mf-mut); }
.cd-mf__bar { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; margin: 0; }
.cd-mf__sel { appearance: none; border: 1.5px solid var(--mf-line); border-radius: 99px; padding: 9px 34px 9px 14px; font: 500 14px Rubik, system-ui, sans-serif; color: var(--mf-ink); background: #fff 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='%23201E1E' stroke-width='2.5'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 12px center; }
.cd-mf__zip { margin-left: auto; display: inline-flex; align-items: center; gap: 8px; border-radius: 99px; background: var(--mf-ink); color: #fff !important; padding: 10px 16px; font: 700 14px Rubik, system-ui, sans-serif; text-decoration: none; }
.cd-mf__pend { display: flex; align-items: center; gap: 12px; background: #FFF4E5; border-left: 4px solid #F59E0B; border-radius: 12px; padding: 12px 14px; }
.cd-mf__pend div { flex: 1; min-width: 0; } .cd-mf__pend strong { display: block; font-size: 15px; } .cd-mf__pend span { font-size: 13.5px; color: var(--mf-mut); }
.cd-mf__pend a { flex: none; background: var(--cd-mag, #C8006A); color: #fff !important; text-decoration: none; border-radius: 99px; padding: 9px 14px; font-weight: 700; font-size: 14px; }
.cd-mf__list { background: #fff; border: 1px solid var(--mf-line); border-radius: 16px; overflow: hidden; }
.cd-mf__row { display: grid; grid-template-columns: 44px 1.1fr .9fr 1.4fr .8fr auto; gap: 12px; align-items: center; padding: 14px 16px; border-top: 1px solid #EEF0F3; }
.cd-mf__row:first-child { border-top: 0; }
.cd-mf__row.h { background: #F6F7F9; font-size: 12px; font-weight: 700; color: var(--mf-mut); text-transform: uppercase; letter-spacing: .05em; padding: 10px 16px; }
.cd-mf__row .r, .cd-mf__t { text-align: right; } .cd-mf__t { font-weight: 700; }
.cd-mf__ic { width: 36px; height: 36px; border-radius: 10px; display: grid; place-items: center; background: #E7F5EC; color: #1E7A45; }
.cd-mf__f b { font-weight: 800; } .cd-mf__f small, .cd-mf__d small { display: block; color: var(--mf-mut); font-size: 12.5px; }
.cd-mf__po { font-style: normal; display: none; }
.cd-mf__r { color: var(--mf-ink); text-decoration: none; font-size: 13.5px; }
.cd-mf__a { display: flex; gap: 6px; }
.cd-mf__b { display: inline-flex; align-items: center; border: 1.5px solid var(--mf-line); border-radius: 99px; padding: 6px 11px; font: 600 13px Rubik, system-ui, sans-serif; color: var(--mf-ink) !important; text-decoration: none; background: #fff; }
.cd-mf__b.p { background: var(--cd-mag, #C8006A); border-color: var(--cd-mag, #C8006A); color: #fff !important; }
.cd-mf__empty { color: var(--mf-mut); margin: 0; }
.cd-mf__foot { color: var(--mf-mut); font-size: 13px; margin: 0; }
@media (max-width: 760px) {
  .cd-mf__zip { margin-left: 0; width: 100%; justify-content: center; } .cd-mf__sel { flex: 1; }
  .cd-mf__row.h { display: none; }
  .cd-mf__row { grid-template-columns: 40px 1fr auto; grid-template-areas: "i f t" "i d d" "a a a"; row-gap: 6px; }
  .cd-mf__ic { grid-area: i; align-self: start; } .cd-mf__f { grid-area: f; } .cd-mf__t { grid-area: t; } .cd-mf__d { grid-area: d; } .cd-mf__r { display: none; } .cd-mf__a { grid-area: a; padding-left: 52px; }
  .cd-mf__po { display: inline; }
}
.cd-csf { display: flex; flex-direction: column; gap: 6px; }
.cd-csf button { display: inline-flex; align-items: center; justify-content: center; gap: 8px; border: 1.5px dashed var(--cd-mag, #C8006A); background: #FFF5FA; color: var(--cd-mag, #C8006A); border-radius: 12px; padding: 12px 14px; font: 700 14.5px Rubik, system-ui, sans-serif; cursor: pointer; }
.cd-csf button:disabled { opacity: .7; cursor: progress; }
.cd-csf small { font-size: 12.5px; color: var(--cd-muted, #5A6371); }
.cd-fac__spin { width: 22px; height: 22px; border-radius: 50%; border: 3px solid #EAEEF2; border-top-color: var(--cd-mag, #C8006A); animation: cdfspin .8s linear infinite; flex: none; }
@keyframes cdfspin { to { transform: rotate(360deg); } }
.cd-mf__late { background: #fff; border: 1px solid var(--cd-line, #DDE1E7); border-radius: 14px; padding: 12px 14px; display: flex; flex-direction: column; gap: 8px; }
.cd-mf__late strong { font-size: 15px; }
.cd-mf__late div { display: flex; flex-wrap: wrap; gap: 8px; }
.cd-mf__late a, .cd-mf__lk { display: inline-flex; gap: 6px; align-items: center; border: 1.5px solid var(--cd-line, #DDE1E7); border-radius: 99px; padding: 7px 12px; font-size: 14px; color: var(--cd-ink, #201E1E); text-decoration: none; }
.cd-mf__late a span { color: var(--cd-mag, #C8006A); font-weight: 700; }
.cd-mf__fix { grid-column: 1 / -1; margin: 0; font-size: 13px; }
.cd-mf__fix summary { cursor: pointer; color: var(--cd-muted, #5A6371); list-style: none; display: inline-block; text-decoration: underline; }
.cd-mf__fix summary::-webkit-details-marker { display: none; }
.cd-mf__fix form { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; align-items: flex-start; }
.cd-mf__fix textarea { flex: 1 1 260px; border: 1.5px solid var(--cd-line, #DDE1E7); border-radius: 10px; padding: 8px 10px; font: 14px Rubik, system-ui, sans-serif; }
@media (max-width: 760px) { .cd-mf__row { grid-template-areas: "i f t" "i d d" "a a a" "x x x"; } .cd-mf__fix { grid-area: x; padding-left: 52px; } }
