/* DIM Compra & Venta — front. Mismo sistema visual que GachaMID / dropsinmid.com:
   fondo blanco, negro, acento rosa #ff10f0, Montserrat + mono. */
.dim-cv-scope{
  --bg:#ffffff; --bg-soft:#f6f6f7; --bg-soft-2:#efeff0;
  --black:#0a0a0a; --border:#e6e6e8; --border-strong:#cfcfd3;
  --text:#0a0a0a; --text-body:#334155; --text-muted:#8a8a8a; --text-faint:#b7b7ba;
  --pink:#ff10f0; --pink-soft:#ffe6fc; --blue:#046bd2; --blue-soft:#e7f1fc;
  --green:#128a4a; --green-soft:#e5f6ec; --red:#e53935; --red-soft:#fdeceb;
  --font-display:'Montserrat',-apple-system,sans-serif;
  --font-label:'IBM Plex Mono','Courier New',monospace;
  --font-body:-apple-system,"system-ui","Segoe UI",Roboto,"Helvetica Neue",sans-serif;
  --r:12px; --r-sm:8px;
  color-scheme:light;
  background:var(--bg); color:var(--text-body); font-family:var(--font-body);
  -webkit-font-smoothing:antialiased; line-height:1.5;
}
.dim-cv-scope *,.dim-cv-scope *::before,.dim-cv-scope *::after{box-sizing:border-box;}
.dim-cv-scope [hidden]{display:none!important;}
.dim-cv-scope #dim-cv-root{max-width:1080px;margin:0 auto;padding:0 20px 80px;}
.dim-cv-scope h1,.dim-cv-scope h2,.dim-cv-scope h3,.dim-cv-scope h4{font-family:var(--font-display);color:var(--text);margin:0;letter-spacing:.2px;}
.dim-cv-scope p{margin:0;}
.dim-cv-scope button{font:inherit;cursor:pointer;}
.dim-cv-scope .pink{color:var(--pink);}
.dim-cv-scope .cv-ic{width:1.15em;height:1.15em;flex:none;vertical-align:-.2em;}

/* Etiquetas */
.dim-cv-scope .cv-eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-label);font-size:11px;font-weight:700;letter-spacing:1.2px;text-transform:uppercase;color:var(--black);background:#fff;border:1px solid var(--black);padding:6px 12px 6px 10px;border-radius:999px;}
.dim-cv-scope .cv-eyebrow .dot{width:7px;height:7px;border-radius:50%;background:var(--pink);animation:cv-pulse 1.6s ease-in-out infinite;}
@keyframes cv-pulse{0%,100%{opacity:1}50%{opacity:.25}}
.dim-cv-scope .cv-eyebrow-sm{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-label);font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--text-faint);margin-bottom:6px;}

/* Botones */
.dim-cv-scope .cv-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--font-display);font-weight:700;font-size:14px;letter-spacing:.3px;padding:12px 20px;border-radius:999px;border:1.5px solid var(--black);text-decoration:none;transition:transform .15s ease,background .15s ease,color .15s ease,box-shadow .15s ease;white-space:nowrap;}
.dim-cv-scope .cv-btn-primary{background:var(--black);color:#fff;}
.dim-cv-scope .cv-btn-primary:hover{background:#000;box-shadow:0 8px 24px -8px rgba(255,16,240,.55);transform:translateY(-1px);color:#fff;}
.dim-cv-scope .cv-btn-primary .cv-ic{color:var(--pink);}
.dim-cv-scope .cv-btn-ghost{background:#fff;color:var(--black);}
.dim-cv-scope .cv-btn-ghost:hover{background:var(--bg-soft);color:var(--black);}
.dim-cv-scope .cv-btn-lg{padding:15px 26px;font-size:15px;}
.dim-cv-scope .cv-btn[disabled]{opacity:.55;cursor:progress;transform:none;}
.dim-cv-scope .cv-link{background:none;border:0;padding:0;color:var(--text-muted);font-family:var(--font-label);font-size:12.5px;letter-spacing:.3px;display:inline-flex;align-items:center;gap:6px;text-decoration:none;}
.dim-cv-scope .cv-link:hover{color:var(--text);}

/* Modo prueba */
.dim-cv-scope .cv-testbar{display:flex;align-items:center;gap:8px;justify-content:center;font-family:var(--font-label);font-size:11.5px;letter-spacing:.4px;background:var(--black);color:#fff;padding:9px 14px;margin:0 0 6px;}
.dim-cv-scope .cv-testbar .cv-ic{color:var(--pink);}
.dim-cv-scope .cv-testbar b{color:var(--pink);font-weight:700;}
.dim-cv-scope .cv-soon{max-width:560px;margin:60px auto;text-align:center;padding:40px 24px;border:1px dashed var(--border-strong);border-radius:var(--r);}
.dim-cv-scope .cv-soon h2{font-size:34px;font-weight:800;text-transform:uppercase;margin:12px 0 8px;}
.dim-cv-scope .cv-soon a{color:var(--blue);}

/* ---------- LANDING ---------- */
.dim-cv-scope .cv-hero{display:grid;grid-template-columns:1.15fr .85fr;gap:36px;align-items:center;padding:56px 0 40px;}
.dim-cv-scope .cv-hero h1{font-size:clamp(38px,6vw,64px);font-weight:900;text-transform:uppercase;line-height:.98;margin:18px 0 16px;text-wrap:balance;}
.dim-cv-scope .cv-sub{font-size:16px;color:var(--text-body);max-width:52ch;line-height:1.6;}
.dim-cv-scope .cv-cta-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:26px;}
.dim-cv-scope .cv-trust{list-style:none;padding:0;margin:26px 0 0;display:flex;flex-wrap:wrap;gap:8px 20px;font-size:12.5px;color:var(--text-muted);font-family:var(--font-label);}
.dim-cv-scope .cv-trust li{display:inline-flex;align-items:center;gap:6px;}
.dim-cv-scope .cv-trust .cv-ic{color:var(--black);}

.dim-cv-scope .cv-hero-art{position:relative;height:320px;}
.dim-cv-scope .cv-art-card{position:absolute;width:132px;aspect-ratio:1;background:#fff;border:1px solid var(--border);border-radius:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;font-family:var(--font-label);font-size:11px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--text);box-shadow:0 18px 40px -20px rgba(10,10,10,.25);animation:cv-float 5s ease-in-out infinite;}
.dim-cv-scope .cv-art-card .cv-ic{width:36px;height:36px;color:var(--black);}
.dim-cv-scope .cv-art-card.c1{left:0;top:96px;background:var(--black);color:#fff;border-color:var(--black);}
.dim-cv-scope .cv-art-card.c1 .cv-ic{color:var(--pink);}
.dim-cv-scope .cv-art-card.c1.has-img{width:230px;height:340px;aspect-ratio:auto;top:-10px;left:-10px;background:transparent;border:0;box-shadow:none;padding:0;gap:10px;justify-content:flex-end;filter:drop-shadow(0 24px 30px rgba(255,16,240,.22)) drop-shadow(0 14px 24px rgba(10,10,10,.22));}
.dim-cv-scope .cv-art-card.c1.has-img img{width:100%;height:100%;object-fit:contain;object-position:center bottom;border-radius:0;background:transparent;flex:1;min-height:0;}
.dim-cv-scope .cv-art-card.c1.has-img span{color:var(--text);background:var(--black);color:var(--pink);padding:6px 12px;border-radius:999px;font-size:10px;letter-spacing:1px;}
.dim-cv-scope .cv-art-card.c1.has-img~.cv-art-arrow{left:auto;right:178px;}
.dim-cv-scope .cv-art-card.c2{right:0;top:0;animation-delay:-1.2s;}
.dim-cv-scope .cv-art-card.c3{right:36px;top:110px;animation-delay:-2.4s;border-color:var(--pink);}
.dim-cv-scope .cv-art-card.c4{right:0;top:220px;animation-delay:-3.6s;}
.dim-cv-scope .cv-art-arrow{position:absolute;left:150px;top:150px;width:60px;color:var(--pink);}
.dim-cv-scope .cv-art-arrow .cv-ic{width:44px;height:44px;}
@keyframes cv-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}

.dim-cv-scope .cv-marquee{overflow:hidden;margin:10px -20px 0;padding:14px 0;background:var(--bg-soft);border-top:1px solid var(--border);border-bottom:1px solid var(--border);}
.dim-cv-scope .cv-marquee-track{display:flex;align-items:center;gap:18px;width:max-content;animation:cv-marquee 40s linear infinite;padding-left:20px;}
.dim-cv-scope .cv-marquee:hover .cv-marquee-track{animation-play-state:paused;}
@keyframes cv-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.dim-cv-scope .cv-chip{font-family:var(--font-display);font-weight:800;font-size:15px;text-transform:uppercase;letter-spacing:1.5px;color:var(--text);}
.dim-cv-scope .cv-chip-dot{color:var(--pink);font-size:12px;}

.dim-cv-scope .cv-section{margin-top:64px;}
.dim-cv-scope .cv-section-head{margin-bottom:22px;}
.dim-cv-scope .cv-section-head h2{font-size:clamp(24px,3.4vw,32px);font-weight:800;text-transform:uppercase;}

.dim-cv-scope .cv-ops-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;}
.dim-cv-scope .cv-op-card{text-align:left;background:#fff;border:1px solid var(--border);border-radius:var(--r);padding:24px 22px 20px;display:flex;flex-direction:column;gap:10px;color:inherit;transition:border-color .15s,transform .15s,box-shadow .15s;position:relative;overflow:hidden;}
.dim-cv-scope .cv-op-card::after{content:"";position:absolute;inset:auto -30px -30px auto;width:90px;height:90px;border-radius:50%;background:var(--pink-soft);opacity:0;transition:opacity .2s;}
.dim-cv-scope .cv-op-card:hover{border-color:var(--black);transform:translateY(-2px);box-shadow:0 20px 40px -24px rgba(10,10,10,.35);}
.dim-cv-scope .cv-op-card:hover::after{opacity:1;}
.dim-cv-scope .cv-op-icon{width:46px;height:46px;border-radius:12px;background:var(--black);color:var(--pink);display:flex;align-items:center;justify-content:center;}
.dim-cv-scope .cv-op-icon .cv-ic{width:24px;height:24px;}
.dim-cv-scope .cv-op-card h3{font-size:18px;font-weight:800;text-transform:uppercase;}
.dim-cv-scope .cv-op-card p{font-size:13.5px;color:var(--text-muted);line-height:1.55;min-height:3.1em;}
.dim-cv-scope .cv-op-go{font-family:var(--font-label);font-size:11.5px;font-weight:700;letter-spacing:.6px;text-transform:uppercase;color:var(--text);display:inline-flex;gap:6px;align-items:center;margin-top:6px;position:relative;}

.dim-cv-scope .cv-how{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(5,1fr);gap:12px;counter-reset:s;}
.dim-cv-scope .cv-how li{position:relative;background:var(--bg-soft);border-radius:var(--r);padding:22px 18px 18px;display:flex;flex-direction:column;gap:8px;}
.dim-cv-scope .cv-how .n{font-family:var(--font-label);font-size:11px;font-weight:700;color:var(--pink);letter-spacing:1px;}
.dim-cv-scope .cv-how .cv-ic{width:26px;height:26px;color:var(--black);}
.dim-cv-scope .cv-how h4{font-size:14px;font-weight:800;text-transform:uppercase;line-height:1.25;}
.dim-cv-scope .cv-how p{font-size:12.5px;color:var(--text-muted);line-height:1.5;}

.dim-cv-scope .cv-two{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.dim-cv-scope .cv-panel{border:1px solid var(--border);border-radius:var(--r);padding:26px 24px;}
.dim-cv-scope .cv-panel h3{font-size:20px;font-weight:800;text-transform:uppercase;margin-bottom:14px;}
.dim-cv-scope .cv-panel ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px;font-size:14px;line-height:1.5;}
.dim-cv-scope .cv-panel li{display:flex;gap:10px;align-items:flex-start;}
.dim-cv-scope .cv-panel li .cv-ic{margin-top:3px;width:18px;height:18px;flex:none;border-radius:50%;padding:2px;}
.dim-cv-scope .cv-panel-yes li .cv-ic{background:var(--green-soft);color:var(--green);}
.dim-cv-scope .cv-panel-no{background:var(--bg-soft);}
.dim-cv-scope .cv-panel-no li .cv-ic{background:var(--red-soft);color:var(--red);}
.dim-cv-scope .cv-note{margin-top:16px;font-size:13px;color:var(--text);display:flex;gap:8px;align-items:center;font-weight:600;}
.dim-cv-scope .cv-note .cv-ic{color:var(--pink);}

.dim-cv-scope .cv-faq{border-top:1px solid var(--border);}
.dim-cv-scope .cv-faq details{border-bottom:1px solid var(--border);}
.dim-cv-scope .cv-faq summary{cursor:pointer;list-style:none;padding:16px 36px 16px 0;font-family:var(--font-display);font-weight:700;font-size:15px;color:var(--text);position:relative;}
.dim-cv-scope .cv-faq summary::-webkit-details-marker{display:none;}
.dim-cv-scope .cv-faq summary::after{content:"+";position:absolute;right:4px;top:12px;font-family:var(--font-label);font-size:22px;color:var(--pink);transition:transform .2s;}
.dim-cv-scope .cv-faq details[open] summary::after{transform:rotate(45deg);}
.dim-cv-scope .cv-faq p{padding:0 0 18px;font-size:14px;color:var(--text-body);max-width:70ch;line-height:1.6;}

/* Legales */
.dim-cv-scope .cv-hint{font-size:13.5px;color:var(--text-muted);max-width:70ch;margin-top:6px;line-height:1.55;}
.dim-cv-scope .cv-legal{border:1px solid var(--border);border-radius:var(--r);background:#fff;}
.dim-cv-scope .cv-legal summary{cursor:pointer;list-style:none;padding:14px 18px;font-family:var(--font-label);font-size:12px;font-weight:700;letter-spacing:.5px;text-transform:uppercase;color:var(--text);display:flex;align-items:center;gap:8px;}
.dim-cv-scope .cv-legal summary::-webkit-details-marker{display:none;}
.dim-cv-scope .cv-legal summary::after{content:"+";margin-left:auto;font-size:20px;color:var(--pink);line-height:1;}
.dim-cv-scope .cv-legal[open] summary::after{content:"–";}
.dim-cv-scope .cv-legal summary .cv-ic{color:var(--pink);}
.dim-cv-scope .cv-legal-body{padding:4px 18px 18px;max-height:340px;overflow:auto;font-size:13px;line-height:1.65;color:var(--text-body);border-top:1px solid var(--border);}
.dim-cv-scope .cv-legal-body p{margin:12px 0 0;}
.dim-cv-scope .cv-legal-inline{margin-bottom:12px;background:var(--bg-soft);border-color:transparent;}
.dim-cv-scope .cv-terms b{color:var(--text);}
.dim-cv-scope .cv-final{margin-top:64px;background:var(--black);color:#fff;border-radius:18px;padding:48px 32px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px;position:relative;overflow:hidden;}
.dim-cv-scope .cv-final::before{content:"";position:absolute;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(255,16,240,.35),transparent 65%);top:-200px;right:-120px;}
.dim-cv-scope .cv-final h2{color:#fff;font-size:clamp(28px,4vw,40px);font-weight:900;text-transform:uppercase;position:relative;}
.dim-cv-scope .cv-final p{color:#bdbdc2;position:relative;}
.dim-cv-scope .cv-final .cv-btn-primary{background:#fff;color:var(--black);border-color:#fff;margin-top:12px;position:relative;}
.dim-cv-scope .cv-final .cv-btn-primary .cv-ic{color:var(--pink);}
.dim-cv-scope .cv-ig-link{color:#fff;font-family:var(--font-label);font-size:12.5px;display:inline-flex;gap:6px;align-items:center;margin-top:8px;text-decoration:none;opacity:.8;position:relative;}
.dim-cv-scope .cv-ig-link:hover{opacity:1;color:#fff;}

/* ---------- WIZARD ---------- */
.dim-cv-scope .cv-wizard{padding-top:28px;}
.dim-cv-scope .cv-wiz-top{display:flex;align-items:center;gap:20px;flex-wrap:wrap;}
.dim-cv-scope .cv-progress{list-style:none;margin:0;padding:0;display:flex;gap:6px;flex:1;justify-content:center;}
.dim-cv-scope .cv-progress li{display:flex;align-items:center;gap:7px;font-family:var(--font-label);font-size:11.5px;letter-spacing:.3px;color:var(--text-faint);padding:4px 10px 4px 4px;border-radius:999px;}
.dim-cv-scope .cv-progress .dot{width:24px;height:24px;border-radius:50%;border:1.5px solid var(--border-strong);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:11px;color:var(--text-faint);background:#fff;transition:all .2s;}
.dim-cv-scope .cv-progress li.is-now{color:var(--text);}
.dim-cv-scope .cv-progress li.is-now .dot{background:var(--black);border-color:var(--black);color:var(--pink);}
.dim-cv-scope .cv-progress li.is-done{color:var(--text-muted);cursor:pointer;}
.dim-cv-scope .cv-progress li.is-done .dot{background:var(--pink);border-color:var(--pink);color:var(--black);}
.dim-cv-scope .cv-progress-count{font-family:var(--font-label);font-size:12px;color:var(--text-muted);}
.dim-cv-scope .cv-progress-count b{color:var(--text);}
.dim-cv-scope .cv-progress-bar{height:3px;background:var(--bg-soft-2);border-radius:3px;margin:14px 0 30px;overflow:hidden;}
.dim-cv-scope .cv-progress-bar span{display:block;height:100%;width:20%;background:linear-gradient(90deg,var(--black),var(--pink));transition:width .35s ease;}

.dim-cv-scope .cv-wiz-body{display:grid;grid-template-columns:1fr 300px;gap:32px;align-items:start;}
.dim-cv-scope .cv-form{min-width:0;}
.dim-cv-scope .cv-step{border:0;padding:0;margin:0;min-width:0;animation:cv-in .3s ease;}
@keyframes cv-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.dim-cv-scope .cv-step h2{font-size:clamp(24px,3.4vw,32px);font-weight:800;text-transform:uppercase;line-height:1.1;}
.dim-cv-scope .cv-help{font-size:14px;color:var(--text-muted);margin:8px 0 26px;}
.dim-cv-scope .cv-hp{position:absolute;left:-9999px;opacity:0;height:0;width:0;}

.dim-cv-scope .cv-field{margin-bottom:22px;}
.dim-cv-scope .cv-field>label,.dim-cv-scope .cv-field-half>div>label{display:block;font-family:var(--font-label);font-size:11.5px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--text);margin-bottom:8px;}
.dim-cv-scope .cv-field label small{font-weight:400;text-transform:none;letter-spacing:0;color:var(--text-muted);}
.dim-cv-scope .cv-field-half{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.dim-cv-scope .cv-scope input[type=text],
.dim-cv-scope input[type=text],.dim-cv-scope input[type=email],.dim-cv-scope input[type=tel],.dim-cv-scope textarea{width:100%;font:inherit;font-size:15px;color:var(--text);background:#fff;border:1.5px solid var(--border-strong);border-radius:var(--r-sm);padding:13px 14px;outline:none;transition:border-color .15s,box-shadow .15s;-webkit-appearance:none;}
.dim-cv-scope input:focus,.dim-cv-scope textarea:focus{border-color:var(--black);box-shadow:0 0 0 3px var(--pink-soft);}
.dim-cv-scope input::placeholder,.dim-cv-scope textarea::placeholder{color:var(--text-faint);}
.dim-cv-scope textarea{resize:vertical;min-height:100px;}
.dim-cv-scope .is-invalid input,.dim-cv-scope input.is-invalid,.dim-cv-scope textarea.is-invalid{border-color:var(--red)!important;box-shadow:0 0 0 3px var(--red-soft)!important;}
.dim-cv-scope .cv-input-prefix,.dim-cv-scope .cv-input-icon{position:relative;display:flex;align-items:center;}
.dim-cv-scope .cv-input-prefix>span{position:absolute;left:14px;font-family:var(--font-label);font-weight:700;color:var(--text-muted);display:inline-flex;align-items:center;gap:4px;pointer-events:none;}
.dim-cv-scope .cv-input-prefix input{padding-left:30px;}
.dim-cv-scope .cv-prefix-ig input{padding-left:52px;}
.dim-cv-scope .cv-input-icon .cv-ic{position:absolute;left:13px;color:var(--text-muted);pointer-events:none;}
.dim-cv-scope .cv-input-icon input{padding-left:40px;}

/* Tarjetas de elección */
.dim-cv-scope .cv-choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
.dim-cv-scope .cv-choice{position:relative;display:block;cursor:pointer;}
.dim-cv-scope .cv-choice input{position:absolute;opacity:0;pointer-events:none;}
.dim-cv-scope .cv-choice-box{display:flex;flex-direction:column;gap:8px;background:#fff;border:1.5px solid var(--border);border-radius:var(--r);padding:20px 18px;height:100%;transition:all .15s;position:relative;}
.dim-cv-scope .cv-choice-icon{width:40px;height:40px;border-radius:10px;background:var(--bg-soft);color:var(--black);display:flex;align-items:center;justify-content:center;transition:all .15s;}
.dim-cv-scope .cv-choice-icon .cv-ic{width:22px;height:22px;}
.dim-cv-scope .cv-choice-box b{font-family:var(--font-display);font-size:15px;text-transform:uppercase;color:var(--text);}
.dim-cv-scope .cv-choice-box small{font-size:12.5px;color:var(--text-muted);line-height:1.5;}
.dim-cv-scope .cv-choice-check{position:absolute;top:12px;right:12px;width:22px;height:22px;border-radius:50%;background:var(--pink);color:var(--black);display:flex;align-items:center;justify-content:center;opacity:0;transform:scale(.6);transition:all .18s;}
.dim-cv-scope .cv-choice-check .cv-ic{width:14px;height:14px;stroke-width:3;}
.dim-cv-scope .cv-choice:hover .cv-choice-box{border-color:var(--border-strong);}
.dim-cv-scope .cv-choice input:checked+.cv-choice-box{border-color:var(--black);box-shadow:0 0 0 1px var(--black),0 16px 32px -20px rgba(10,10,10,.4);}
.dim-cv-scope .cv-choice input:checked+.cv-choice-box .cv-choice-icon{background:var(--black);color:var(--pink);}
.dim-cv-scope .cv-choice input:checked+.cv-choice-box .cv-choice-check{opacity:1;transform:scale(1);}
.dim-cv-scope .cv-choice input:focus-visible+.cv-choice-box{box-shadow:0 0 0 3px var(--pink-soft);}
.dim-cv-scope .cv-choice-sm .cv-choice-box{padding:16px;}
.dim-cv-scope .cv-choice-sm b{font-size:13px;}

.dim-cv-scope .cv-pill-group{display:flex;flex-wrap:wrap;gap:8px;}
.dim-cv-scope .cv-pill{position:relative;cursor:pointer;}
.dim-cv-scope .cv-pill input{position:absolute;opacity:0;pointer-events:none;}
.dim-cv-scope .cv-pill span{display:inline-flex;align-items:center;gap:6px;font-size:13.5px;font-weight:600;color:var(--text);background:#fff;border:1.5px solid var(--border-strong);border-radius:999px;padding:9px 15px;transition:all .15s;}
.dim-cv-scope .cv-pill:hover span{border-color:var(--black);}
.dim-cv-scope .cv-pill input:checked+span{background:var(--black);color:#fff;border-color:var(--black);}
.dim-cv-scope .cv-pill input:checked+span .cv-ic{color:var(--pink);}
.dim-cv-scope .cv-pill input:focus-visible+span{box-shadow:0 0 0 3px var(--pink-soft);}
.dim-cv-scope .cv-pill-group.is-invalid span{border-color:var(--red);}

/* Fotos */
.dim-cv-scope .cv-drop{border:2px dashed var(--border-strong);border-radius:var(--r);padding:30px 20px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:6px;cursor:pointer;transition:all .15s;background:#fff;}
.dim-cv-scope .cv-drop .cv-ic{width:32px;height:32px;color:var(--black);margin-bottom:4px;}
.dim-cv-scope .cv-drop b{font-family:var(--font-display);font-size:14px;color:var(--text);}
.dim-cv-scope .cv-drop small{font-size:12.5px;color:var(--text-muted);}
.dim-cv-scope .cv-drop:hover,.dim-cv-scope .cv-drop.is-over{border-color:var(--pink);background:var(--pink-soft);}
.dim-cv-scope .cv-drop.is-invalid{border-color:var(--red);}
.dim-cv-scope .cv-previews{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px;}
.dim-cv-scope .cv-previews:empty{display:none;}
.dim-cv-scope .cv-prev{position:relative;width:92px;height:92px;border-radius:10px;overflow:hidden;border:1px solid var(--border);background:var(--bg-soft);}
.dim-cv-scope .cv-prev img{width:100%;height:100%;object-fit:cover;display:block;}
.dim-cv-scope .cv-prev button{position:absolute;top:4px;right:4px;width:22px;height:22px;border-radius:50%;border:0;background:var(--black);color:#fff;display:flex;align-items:center;justify-content:center;padding:0;}
.dim-cv-scope .cv-prev button .cv-ic{width:12px;height:12px;}
.dim-cv-scope .cv-prev.is-main::after{content:"Portada";position:absolute;left:0;right:0;bottom:0;background:rgba(10,10,10,.8);color:var(--pink);font-family:var(--font-label);font-size:9px;letter-spacing:.8px;text-transform:uppercase;text-align:center;padding:3px 0;}

/* Resumen */
.dim-cv-scope .cv-summary{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px;}
.dim-cv-scope .cv-sum-card{text-align:left;background:var(--bg-soft);border:1px solid transparent;border-radius:var(--r);padding:16px 18px;cursor:pointer;color:inherit;transition:all .15s;font:inherit;}
.dim-cv-scope .cv-sum-card:hover{border-color:var(--black);background:#fff;}
.dim-cv-scope .cv-sum-card .t{font-family:var(--font-label);font-size:10.5px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--text-faint);display:flex;justify-content:space-between;margin-bottom:8px;}
.dim-cv-scope .cv-sum-card .t i{font-style:normal;color:var(--blue);}
.dim-cv-scope .cv-sum-card dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:4px 12px;font-size:13.5px;}
.dim-cv-scope .cv-sum-card dt{color:var(--text-muted);}
.dim-cv-scope .cv-sum-card dd{margin:0;color:var(--text);font-weight:600;overflow-wrap:anywhere;}
.dim-cv-scope .cv-sum-card.wide{grid-column:1/-1;}
.dim-cv-scope .cv-sum-photos{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px;}
.dim-cv-scope .cv-sum-photos img{width:48px;height:48px;object-fit:cover;border-radius:6px;border:1px solid var(--border);}
.dim-cv-scope .cv-terms{display:flex;gap:12px;align-items:flex-start;font-size:13.5px;color:var(--text-body);line-height:1.5;cursor:pointer;padding:14px 16px;border:1.5px solid var(--border);border-radius:var(--r);}
.dim-cv-scope .cv-terms input{margin-top:3px;width:18px;height:18px;accent-color:var(--pink);flex:none;}
.dim-cv-scope .cv-terms.is-invalid{border-color:var(--red);}

.dim-cv-scope .cv-error{margin:16px 0 0;background:var(--red-soft);color:#9f1d1d;border-radius:var(--r-sm);padding:12px 14px;font-size:13.5px;font-weight:600;}
.dim-cv-scope .cv-nav{display:flex;align-items:center;gap:12px;margin-top:28px;padding-top:22px;border-top:1px solid var(--border);}
.dim-cv-scope .cv-nav-spacer{flex:1;}

/* Aside */
.dim-cv-scope .cv-aside{position:sticky;top:24px;display:flex;flex-direction:column;gap:14px;}
.dim-cv-scope .cv-aside-card{border:1px solid var(--border);border-radius:var(--r);padding:20px 20px 16px;background:#fff;}
.dim-cv-scope .cv-next{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;}
.dim-cv-scope .cv-next li{position:relative;padding:0 0 16px 30px;display:flex;flex-direction:column;gap:2px;}
.dim-cv-scope .cv-next li::before{content:"";position:absolute;left:8px;top:18px;bottom:-2px;width:1.5px;background:var(--border);}
.dim-cv-scope .cv-next li:last-child::before{display:none;}
.dim-cv-scope .cv-next li::after{content:"";position:absolute;left:3px;top:4px;width:12px;height:12px;border-radius:50%;border:1.5px solid var(--border-strong);background:#fff;transition:all .2s;}
.dim-cv-scope .cv-next b{font-family:var(--font-display);font-size:13px;color:var(--text-faint);text-transform:uppercase;letter-spacing:.2px;transition:color .2s;}
.dim-cv-scope .cv-next small{font-size:12px;color:var(--text-faint);line-height:1.45;}
.dim-cv-scope .cv-next li.is-now b{color:var(--text);}
.dim-cv-scope .cv-next li.is-now small{color:var(--text-muted);}
.dim-cv-scope .cv-next li.is-now::after{background:var(--black);border-color:var(--black);box-shadow:0 0 0 4px var(--pink-soft);}
.dim-cv-scope .cv-next li.is-done b{color:var(--text-muted);text-decoration:line-through;text-decoration-color:var(--pink);}
.dim-cv-scope .cv-next li.is-done::after{background:var(--pink);border-color:var(--pink);}
.dim-cv-scope .cv-next li.after b{color:var(--text-faint);}
.dim-cv-scope .cv-tip{background:var(--bg-soft);border-color:transparent;}
.dim-cv-scope .cv-tip .cv-eyebrow-sm{color:var(--text);}
.dim-cv-scope .cv-tip .cv-eyebrow-sm .cv-ic{color:var(--pink);}
.dim-cv-scope .cv-tip p{font-size:13px;color:var(--text-body);line-height:1.55;}
.dim-cv-scope .cv-login-hint p{font-size:12.5px;color:var(--text-muted);display:flex;gap:8px;align-items:flex-start;}
.dim-cv-scope .cv-login-hint a{color:var(--blue);font-weight:600;}

/* Éxito */
.dim-cv-scope .cv-success{text-align:center;max-width:640px;margin:20px auto 0;display:flex;flex-direction:column;align-items:center;gap:12px;animation:cv-in .4s ease;}
.dim-cv-scope .cv-success-badge{width:72px;height:72px;border-radius:50%;background:var(--black);color:var(--pink);display:flex;align-items:center;justify-content:center;margin-bottom:6px;box-shadow:0 0 0 10px var(--pink-soft);}
.dim-cv-scope .cv-success-badge .cv-ic{width:34px;height:34px;stroke-width:2.6;}
.dim-cv-scope .cv-success h2{font-size:clamp(28px,4.5vw,42px);font-weight:900;text-transform:uppercase;line-height:1.05;}
.dim-cv-scope .cv-folio{font-family:var(--font-label);background:var(--black);color:var(--pink);padding:3px 10px;border-radius:6px;letter-spacing:1px;}
.dim-cv-scope .cv-timeline{width:100%;text-align:left;margin:20px 0 8px;display:flex;flex-direction:column;}
.dim-cv-scope .cv-timeline>div{position:relative;display:grid;grid-template-columns:40px 1fr;grid-template-rows:auto auto;column-gap:14px;padding-bottom:20px;}
.dim-cv-scope .cv-timeline>div::before{content:"";position:absolute;left:19px;top:40px;bottom:0;width:2px;background:var(--border);}
.dim-cv-scope .cv-timeline>div:last-child::before{display:none;}
.dim-cv-scope .cv-timeline span{grid-row:1/3;width:40px;height:40px;border-radius:50%;border:1.5px solid var(--border-strong);background:#fff;display:flex;align-items:center;justify-content:center;color:var(--text-faint);}
.dim-cv-scope .cv-timeline span .cv-ic{width:18px;height:18px;}
.dim-cv-scope .cv-timeline b{font-family:var(--font-display);font-size:15px;color:var(--text-faint);text-transform:uppercase;align-self:end;}
.dim-cv-scope .cv-timeline small{font-size:12.5px;color:var(--text-faint);}
.dim-cv-scope .cv-timeline .done span{background:var(--pink);border-color:var(--pink);color:var(--black);}
.dim-cv-scope .cv-timeline .done b,.dim-cv-scope .cv-timeline .now b{color:var(--text);}
.dim-cv-scope .cv-timeline .done small,.dim-cv-scope .cv-timeline .now small{color:var(--text-muted);}
.dim-cv-scope .cv-timeline .now span{background:var(--black);border-color:var(--black);color:var(--pink);box-shadow:0 0 0 5px var(--pink-soft);animation:cv-pulse-ring 1.8s ease-in-out infinite;}
@keyframes cv-pulse-ring{0%,100%{box-shadow:0 0 0 5px var(--pink-soft)}50%{box-shadow:0 0 0 9px var(--pink-soft)}}
.dim-cv-scope .cv-success .cv-cta-row{justify-content:center;margin-top:6px;}

/* Responsive */
@media (max-width:900px){
  .dim-cv-scope .cv-hero{grid-template-columns:1fr;gap:20px;padding-top:34px;}
  .dim-cv-scope .cv-hero-art{height:230px;transform:scale(.8);transform-origin:left top;width:125%;}
  .dim-cv-scope .cv-how{grid-template-columns:repeat(2,1fr);}
  .dim-cv-scope .cv-wiz-body{grid-template-columns:1fr;}
  .dim-cv-scope .cv-aside{position:static;order:-1;}
  .dim-cv-scope .cv-aside-card.cv-tip,.dim-cv-scope .cv-login-hint{display:none;}
  .dim-cv-scope .cv-next{flex-direction:row;overflow-x:auto;gap:0;scrollbar-width:none;}
  .dim-cv-scope .cv-next li{flex:none;padding:14px 12px 0 0;min-width:110px;}
  .dim-cv-scope .cv-next li::before{left:14px;right:-4px;top:4px;bottom:auto;height:1.5px;width:auto;}
  .dim-cv-scope .cv-next li::after{top:-2px;}
  .dim-cv-scope .cv-next small{display:none;}
  .dim-cv-scope .cv-next b{font-size:11px;}
}
@media (max-width:640px){
  .dim-cv-scope #dim-cv-root{padding:0 16px 60px;}
  .dim-cv-scope .cv-marquee{margin:10px -16px 0;}
  .dim-cv-scope .cv-ops-grid,.dim-cv-scope .cv-two,.dim-cv-scope .cv-choice-grid,.dim-cv-scope .cv-field-half,.dim-cv-scope .cv-summary{grid-template-columns:1fr;}
  .dim-cv-scope .cv-how{grid-template-columns:1fr;}
  .dim-cv-scope .cv-progress .lbl{display:none;}
  .dim-cv-scope .cv-progress li{padding:4px;}
  .dim-cv-scope .cv-nav{flex-wrap:wrap;}
  .dim-cv-scope .cv-nav .cv-btn-primary{width:100%;order:-1;}
  .dim-cv-scope .cv-nav-spacer{display:none;}
  .dim-cv-scope .cv-final{padding:36px 20px;}
  .dim-cv-scope .cv-cta-row .cv-btn{width:100%;}
}
@media (prefers-reduced-motion:reduce){
  .dim-cv-scope *{animation:none!important;transition:none!important;}
}

/* Demo: marco de "Mi cuenta" ficticio */
.dim-cv-scope .cv-demo-account{padding-top:40px;}
.dim-cv-scope .cv-demo-acct-head{text-align:center;margin-bottom:34px;}
.dim-cv-scope .cv-demo-acct-head h1{font-size:32px;font-weight:800;text-transform:uppercase;letter-spacing:2px;margin:4px 0 18px;}
.dim-cv-scope .cv-demo-acct-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 28px;padding-bottom:18px;border-bottom:1px solid var(--border);}
.dim-cv-scope .cv-demo-acct-nav span{font-family:var(--font-display);font-weight:800;font-size:13px;letter-spacing:2px;text-transform:uppercase;color:var(--text-faint);padding:6px 2px;}
.dim-cv-scope .cv-demo-acct-nav span.is-on{color:var(--text);background:var(--bg-soft);padding:6px 10px;border-radius:6px;}
.dim-cv-scope .cv-demo-account .dim-cv-account{margin-top:30px;}
