.cpr-app [hidden]{display:none!important}.cpr-app{--cpr-primary:#101827;--cpr-accent:#f2c500;--cpr-border:#dfe4ec;--cpr-muted:#647084;--cpr-radius:16px;font-family:inherit;color:#151b28;max-width:940px;margin:32px auto}.cpr-app *{box-sizing:border-box}.cpr-form{background:#fff;border:1px solid #e5e9f0;border-radius:var(--cpr-radius);box-shadow:0 18px 55px rgba(16,24,39,.1);overflow:hidden}.cpr-header{background:var(--cpr-primary);color:#fff;padding:38px 44px 32px}.cpr-header h2{color:#fff;font-size:clamp(29px,4vw,42px);line-height:1.08;margin:5px 0 10px}.cpr-kicker{text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:800;margin:0;color:var(--cpr-accent)}.cpr-subtitle{margin:0;color:rgba(255,255,255,.78);max-width:700px;font-size:16px}.cpr-progress{padding:26px 44px 10px;background:#fff}.cpr-progress-bar{height:4px;background:#edf0f4;margin:0 28px -16px;position:relative}.cpr-progress-bar span{display:block;height:100%;width:0;background:var(--cpr-accent);transition:width .25s ease}.cpr-progress ol{display:flex;justify-content:space-between;list-style:none;margin:0;padding:0;position:relative}.cpr-progress li{display:grid;justify-items:center;gap:7px;color:#8b94a4;font-weight:700;font-size:12px}.cpr-progress li span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#eef1f5;border:3px solid #fff;box-shadow:0 0 0 1px #dde2e9}.cpr-progress li.is-active span,.cpr-progress li.is-complete span{background:var(--cpr-primary);color:#fff;box-shadow:0 0 0 2px var(--cpr-primary)}.cpr-progress li.is-complete span{background:var(--cpr-accent);color:#111}.cpr-step{padding:32px 44px 22px}.cpr-step-heading>span{font-size:13px;font-weight:800;color:var(--cpr-muted)}.cpr-step-heading h3{font-size:28px;margin:5px 0 4px;color:#151b28}.cpr-step-heading p{margin:0 0 26px;color:var(--cpr-muted)}.cpr-brand-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.cpr-brand-card{position:relative;border:2px solid var(--cpr-border);border-radius:12px;padding:22px 18px;display:flex;align-items:center;gap:13px;cursor:pointer;background:#fff;transition:.18s ease}.cpr-brand-card:hover{border-color:#9ba6b7;transform:translateY(-1px)}.cpr-brand-card input{position:absolute;opacity:0}.cpr-brand-card:has(input:checked){border-color:var(--cpr-primary);box-shadow:0 0 0 3px rgba(16,24,39,.08)}.cpr-brand-mark{width:42px;height:42px;border-radius:9px;background:var(--cpr-primary);color:#fff;display:grid;place-items:center;font-size:12px;font-weight:900}.cpr-check{margin-left:auto;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:var(--cpr-accent);color:#111;font-weight:900;opacity:0}.cpr-brand-card:has(input:checked) .cpr-check{opacity:1}.cpr-other-brand{margin-top:18px;max-width:430px}.cpr-items{display:grid;gap:18px}.cpr-item-card{border:1px solid var(--cpr-border);border-radius:14px;padding:22px;background:#fbfcfe}.cpr-item-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.cpr-item-head h4{margin:0;font-size:19px}.cpr-remove-item{border:0;background:none;color:#a12222;font-weight:700;cursor:pointer}.cpr-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.cpr-field{display:grid;gap:7px}.cpr-span-2{grid-column:span 2}.cpr-field label,.cpr-customer-type legend{font-size:14px;font-weight:750;color:#273044}.cpr-field input,.cpr-field textarea,.cpr-field select{width:100%;border:1px solid #cfd6e0;border-radius:8px;background:#fff;padding:12px 13px;font:inherit;color:#151b28;min-height:47px}.cpr-field textarea{resize:vertical}.cpr-field input:focus,.cpr-field textarea:focus{outline:3px solid rgba(16,24,39,.12);border-color:var(--cpr-primary)}.cpr-field input.is-invalid,.cpr-field textarea.is-invalid{border-color:#b42318;box-shadow:0 0 0 3px rgba(180,35,24,.1)}.cpr-field small{color:var(--cpr-muted)}.cpr-quantity{display:grid;grid-template-columns:44px 1fr 44px}.cpr-quantity button{border:1px solid #cfd6e0;background:#f3f5f8;font-size:21px;cursor:pointer}.cpr-quantity button:first-child{border-radius:8px 0 0 8px}.cpr-quantity button:last-child{border-radius:0 8px 8px 0}.cpr-quantity input{border-radius:0;text-align:center;border-left:0;border-right:0}.cpr-add-item{margin-top:17px;border:1px dashed #8792a5;background:#fff;border-radius:9px;padding:13px 17px;font-weight:800;color:var(--cpr-primary);cursor:pointer}.cpr-customer-type{border:0;padding:0;margin:0 0 22px;display:flex;gap:12px;flex-wrap:wrap}.cpr-customer-type legend{width:100%;margin-bottom:7px}.cpr-customer-type label{border:1px solid var(--cpr-border);padding:12px 15px;border-radius:9px;cursor:pointer}.cpr-checkbox,.cpr-legal-check{display:flex!important;align-items:flex-start;gap:10px}.cpr-customer-number{margin-top:12px}.cpr-summary{display:grid;gap:14px}.cpr-summary-block{border:1px solid var(--cpr-border);border-radius:12px;padding:18px}.cpr-summary-block>div:first-child{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.cpr-summary-block>div:first-child span{text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:900;color:var(--cpr-muted)}.cpr-summary-block button{border:0;background:none;text-decoration:underline;color:var(--cpr-primary);cursor:pointer}.cpr-summary-block p{margin:5px 0}.cpr-legal-check{margin-top:22px;font-size:14px}.cpr-legal-check a{color:inherit;font-weight:800;text-decoration:underline}.cpr-actions{display:flex;justify-content:space-between;gap:12px;padding:20px 44px 34px}.cpr-btn{border:0;border-radius:8px;padding:14px 24px;font:inherit;font-weight:850;cursor:pointer;min-width:155px}.cpr-btn-primary{background:var(--cpr-primary);color:#fff}.cpr-btn-primary:hover{filter:brightness(1.08)}.cpr-btn-secondary{background:#edf0f4;color:#263044}.cpr-btn:disabled{opacity:.6;cursor:wait}.cpr-alert{margin:20px 44px 0;padding:13px 15px;border:1px solid #f2b8b5;background:#fff3f2;color:#8a1c13;border-radius:8px}.cpr-honeypot{position:absolute!important;left:-9999px!important}.cpr-success{text-align:center;padding:64px 32px}.cpr-success-icon{width:66px;height:66px;display:grid;place-items:center;border-radius:50%;background:var(--cpr-accent);font-size:32px;font-weight:900;margin:0 auto 18px}.cpr-success h2{font-size:34px;margin:8px 0}.cpr-request-number{display:inline-block;font-size:22px;background:#f2f4f7;border-radius:8px;padding:10px 16px;margin:3px 0 12px}.cpr-success .cpr-btn{margin-top:14px}
@media(max-width:760px){.cpr-app{margin:16px 0}.cpr-form{border-radius:12px}.cpr-header,.cpr-step,.cpr-actions{padding-left:20px;padding-right:20px}.cpr-header{padding-top:28px}.cpr-progress{padding-left:18px;padding-right:18px}.cpr-progress li small{display:none}.cpr-brand-grid{grid-template-columns:1fr 1fr}.cpr-fields{grid-template-columns:1fr}.cpr-span-2{grid-column:auto}.cpr-actions{position:sticky;bottom:0;background:#fff;border-top:1px solid #e8ebf0;z-index:5;padding-top:14px;padding-bottom:14px}.cpr-btn{min-width:0;flex:1}.cpr-alert{margin-left:20px;margin-right:20px}.cpr-customer-type{display:grid;grid-template-columns:1fr}.cpr-step-heading h3{font-size:24px}}
@media(max-width:450px){.cpr-brand-grid{grid-template-columns:1fr}.cpr-header h2{font-size:30px}}

/* Ajustes de campos fiscales y cliente existente */
.cpr-compact-field{width:100%;max-width:260px}
.cpr-existing-customer{justify-items:start;align-content:start}
.cpr-existing-customer .cpr-checkbox{width:auto;justify-self:start;align-items:center;gap:9px;cursor:pointer}
.cpr-existing-customer .cpr-checkbox input[type=checkbox]{appearance:auto;-webkit-appearance:checkbox;width:18px!important;height:18px!important;min-width:18px!important;min-height:18px!important;max-width:18px!important;padding:0!important;margin:0!important;flex:0 0 18px;border:1px solid #9aa4b2;border-radius:3px;box-shadow:none;accent-color:var(--cpr-primary)}
.cpr-customer-number{width:100%;max-width:280px;margin-top:14px}
.cpr-customer-number input{width:100%;max-width:280px}
.cpr-field select:focus{outline:3px solid rgba(16,24,39,.12);border-color:var(--cpr-primary)}
.cpr-field select.is-invalid{border-color:#b42318;box-shadow:0 0 0 3px rgba(180,35,24,.1)}
@media(max-width:760px){.cpr-compact-field,.cpr-customer-number,.cpr-customer-number input{max-width:100%}}
