body.cd-registro { margin:0; background:#0b1220; color:#e2e8f0; min-height: 100dvh; overflow-x:hidden; overflow-y:auto; -webkit-overflow-scrolling: touch; }
.cd-registro { --cd-font: 'Poppins', system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif; }
.cd-registro, .cd-registro * { box-sizing:border-box; font-family: var(--cd-font); }
.cd-registro .dashicons { font-family: dashicons !important; }
.cd-registro-wrap { min-height:100dvh; display:flex; align-items:center; justify-content:center; padding:24px; background: radial-gradient(900px 600px at 20% 10%, rgba(59,130,246,0.28), transparent 60%), radial-gradient(900px 600px at 80% 10%, rgba(34,197,94,0.18), transparent 60%), linear-gradient(180deg, #070b14, #0b1220 42%, #0b1220); }
.cd-registro-card { width:min(720px, 100%); border-radius:24px; border:1px solid rgba(226,232,240,0.14); background: rgba(2,6,23,0.70); box-shadow: 0 24px 60px rgba(0,0,0,0.35); overflow:hidden; }
.cd-registro-split { width:min(1040px, 100%); display:grid; grid-template-columns: 380px 1fr; }
.cd-registro-side { padding:20px; background: linear-gradient(180deg, rgba(59,130,246,0.16), rgba(2,6,23,0.02)); border-right:1px solid rgba(226,232,240,0.10); }
.cd-registro-side-brand { display:flex; align-items:center; gap:12px; text-decoration:none; color:#f8fafc; }
.cd-registro-side-brand-text { display:flex; flex-direction:column; gap:2px; min-width:0; }
.cd-registro-side-brand-name { font-size:14px; font-weight:900; letter-spacing:-0.02em; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.cd-registro-side-brand-sub { font-size:11px; font-weight:700; color: rgba(226,232,240,0.65); letter-spacing:0.10em; text-transform:uppercase; }
.cd-registro-main { padding:22px; }
.cd-registro-main-head { margin-bottom:14px; }
.cd-registro-main-title { font-size:20px; font-weight:900; color:#f8fafc; letter-spacing:-0.02em; }
.cd-registro-main-sub { margin-top:6px; font-size:13px; font-weight:560; color: rgba(226,232,240,0.72); }
.cd-registro-head { padding:18px 20px; border-bottom:1px solid rgba(226,232,240,0.10); display:flex; align-items:center; justify-content:space-between; gap:12px; }
.cd-registro-brand { display:flex; align-items:center; gap:12px; text-decoration:none; color:#f8fafc; }
.cd-registro-logo { width:42px; height:42px; border-radius:14px; background: rgba(226,232,240,0.06); border:1px solid rgba(226,232,240,0.10); display:flex; align-items:center; justify-content:center; overflow:hidden; }
.cd-registro-title { margin:0; font-size:16px; font-weight:800; letter-spacing:-0.02em; }
.cd-registro-sub { margin:4px 0 0; font-size:12px; font-weight:560; color: rgba(226,232,240,0.70); }
.cd-pill { display:inline-flex; align-items:center; gap:8px; padding:8px 12px; border-radius:999px; font-size:12px; font-weight:700; border:1px solid rgba(226,232,240,0.14); background: rgba(226,232,240,0.06); color:#e2e8f0; }
.cd-body { padding:18px 20px 22px; }
.cd-grid { display:grid; grid-template-columns: 1fr 1fr; gap:12px; }
.cd-field { display:flex; flex-direction:column; gap:6px; }
.cd-field label { font-size:12px; font-weight:700; color: rgba(226,232,240,0.78); }
.cd-input { height:44px; border-radius:14px; padding:0 14px; border:1px solid rgba(226,232,240,0.14); background: rgba(15,23,42,0.45); color:#f8fafc; outline:none; }
.cd-input:focus { border-color: rgba(59,130,246,0.55); box-shadow: 0 0 0 3px rgba(59,130,246,0.18); }
.cd-full { grid-column: 1 / -1; }
.cd-actions { margin-top:14px; display:flex; gap:10px; flex-wrap:wrap; justify-content:flex-end; }
.cd-actions-left { justify-content:flex-start; }
.cd-btn { display:inline-flex; align-items:center; justify-content:center; gap:10px; padding:12px 16px; border-radius:14px; font-weight:750; text-decoration:none; border:1px solid rgba(226,232,240,0.16); background: rgba(15,23,42,0.40); color:#f8fafc; cursor:pointer; }
.cd-btn:hover { border-color: rgba(226,232,240,0.28); background: rgba(15,23,42,0.55); }
.cd-btn-primary { background: linear-gradient(180deg, rgba(59,130,246,0.98), rgba(37,99,235,0.92)); border-color: rgba(255,255,255,0.14); }
.cd-btn-primary:hover { background: linear-gradient(180deg, rgba(59,130,246,1), rgba(37,99,235,0.96)); }
.cd-btn-side { width:100%; margin-top:12px; }
.cd-msg { margin-top:12px; padding:12px 14px; border-radius:16px; border:1px solid rgba(226,232,240,0.14); background: rgba(226,232,240,0.06); color: rgba(226,232,240,0.84); font-weight:600; font-size:13px; }
.cd-msg.error { border-color: rgba(248,113,113,0.40); background: rgba(248,113,113,0.10); }
.cd-foot { padding:14px 20px; border-top:1px solid rgba(226,232,240,0.10); display:flex; justify-content:space-between; gap:10px; flex-wrap:wrap; }
.cd-foot a { color: rgba(226,232,240,0.80); text-decoration:none; font-weight:650; }
.cd-foot a:hover { color:#f8fafc; }

.cd-help { font-size:11px; font-weight:600; color: rgba(226,232,240,0.62); margin-top:2px; }

.cd-plan-card { margin-top:16px; border-radius:22px; border:1px solid rgba(226,232,240,0.14); background: rgba(2,6,23,0.62); padding:16px; }
.cd-plan-top { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.cd-plan-title { font-size:16px; font-weight:900; color:#f8fafc; letter-spacing:-0.02em; }
.cd-plan-desc { margin-top:6px; font-size:12px; font-weight:560; color: rgba(226,232,240,0.70); }
.cd-plan-badge { display:inline-flex; align-items:center; padding:7px 10px; border-radius:999px; border:1px solid rgba(226,232,240,0.14); background: rgba(226,232,240,0.06); color:#e2e8f0; font-size:11px; font-weight:800; white-space:nowrap; }
.cd-plan-price { margin-top:14px; font-size:30px; font-weight:900; color:#f8fafc; letter-spacing:-0.02em; }
.cd-plan-price-sub { font-size:12px; font-weight:700; color: rgba(226,232,240,0.62); letter-spacing:0.10em; text-transform:uppercase; margin-left:6px; }
.cd-plan-annual { margin-top:10px; font-size:12px; font-weight:700; color: rgba(226,232,240,0.80); display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.cd-plan-annual-badge { display:inline-flex; align-items:center; padding:5px 8px; border-radius:999px; border:1px solid rgba(34,197,94,0.25); background: rgba(34,197,94,0.10); color:#bbf7d0; font-size:11px; font-weight:900; }
.cd-plan-list { margin:14px 0 0; padding:0; list-style:none; display:flex; flex-direction:column; gap:10px; }
.cd-plan-list li { display:flex; gap:10px; align-items:flex-start; font-size:13px; font-weight:650; color: rgba(226,232,240,0.82); }
.cd-plan-list li.cd-off { color: rgba(248, 113, 113, 0.92); text-decoration: line-through; }
.cd-ico { width:24px; height:24px; border-radius:10px; display:flex; align-items:center; justify-content:center; flex:0 0 auto; font-weight:900; }
.cd-ico-ok { background: rgba(34,197,94,0.16); border:1px solid rgba(34,197,94,0.25); color:#22c55e; }
.cd-ico-off { background: rgba(248,113,113,0.14); border:1px solid rgba(248,113,113,0.28); color:#f87171; }
.cd-plan-note { margin-top:14px; border-radius:18px; border:1px solid rgba(226,232,240,0.12); background: rgba(226,232,240,0.04); padding:12px; }
.cd-plan-note-title { font-size:12px; font-weight:900; color:#f8fafc; }
.cd-plan-note-text { margin-top:6px; font-size:12px; font-weight:560; color: rgba(226,232,240,0.70); line-height:1.45; }

.cd-form { margin-top:6px; }
.cd-form-foot { margin-top:14px; padding-top:14px; border-top:1px solid rgba(226,232,240,0.10); }
.cd-form-foot a { color: rgba(226,232,240,0.80); text-decoration:none; font-weight:700; }
.cd-form-foot a:hover { color:#f8fafc; }

.cd-success { display:flex; gap:12px; align-items:flex-start; padding:14px; border-radius:18px; border:1px solid rgba(34,197,94,0.28); background: rgba(34,197,94,0.10); color: rgba(226,232,240,0.92); }
.cd-success-ico { width:34px; height:34px; border-radius:14px; display:flex; align-items:center; justify-content:center; background: rgba(34,197,94,0.16); border:1px solid rgba(34,197,94,0.25); color:#22c55e; font-weight:900; flex:0 0 auto; }
.cd-success-title { font-size:14px; font-weight:900; color:#f8fafc; }
.cd-success-text { margin-top:6px; font-size:13px; font-weight:560; color: rgba(226,232,240,0.80); line-height:1.45; }

@media (max-width: 900px) {
    .cd-registro-split { grid-template-columns: 1fr; }
    .cd-registro-side { border-right:0; border-bottom:1px solid rgba(226,232,240,0.10); }
    .cd-registro-wrap { align-items:flex-start; padding:14px; }
}
@media (max-width: 720px) { .cd-grid { grid-template-columns: 1fr; } .cd-actions { justify-content:stretch; } .cd-actions .cd-btn { width:100%; } }
