/* Diagnóstico de Claridad™ — ARO
   Mobile-first premium diagnosis tool */
:root{--bg:#0a0a0a;--surface:#141414;--surface2:#1c1c1c;--border:#2a2a2a;--text:#f5f5f5;--muted:#a0a0a0;--accent:#FF6B35;--accent-soft:rgba(255,107,53,.12);--ok:#00D4AA;--err:#EF4444}
*{box-sizing:border-box;margin:0;padding:0}
html,body{min-height:100%;background:var(--bg);color:var(--text);font-family:'Inter',system-ui,-apple-system,sans-serif;font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body{background:radial-gradient(ellipse at top,rgba(255,107,53,.08),transparent 55%),#0a0a0a;min-height:100vh;display:flex;flex-direction:column}

/* Top bar */
.dx-top{position:sticky;top:0;z-index:50;background:rgba(10,10,10,.85);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--border);padding:14px 20px;display:flex;align-items:center;justify-content:space-between}
.dx-top img{height:26px;display:block}
.dx-top .exit{color:var(--muted);text-decoration:none;font-size:.8rem;padding:6px 12px;border:1px solid var(--border);border-radius:99px;transition:all .2s}
.dx-top .exit:hover{color:var(--accent);border-color:var(--accent)}

/* Progress */
.dx-progress{position:sticky;top:54px;z-index:49;height:3px;background:#1a1a1a}
.dx-progress-bar{height:100%;background:linear-gradient(90deg,var(--accent),#ff8a5b);width:0;transition:width .35s cubic-bezier(.4,0,.2,1)}

/* Container */
.dx-container{flex:1;display:flex;align-items:center;justify-content:center;padding:40px 20px 60px}
.dx-card{width:100%;max-width:620px;margin:0 auto}

/* Step animation */
.dx-step{display:none;animation:dxFade .4s cubic-bezier(.16,1,.3,1)}
.dx-step.active{display:block}
@keyframes dxFade{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}

/* Typography */
.dx-pill{display:inline-block;background:var(--accent-soft);color:var(--accent);padding:6px 14px;border-radius:99px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:1.2px;margin-bottom:18px}
.dx-title{font-size:clamp(1.55rem,5vw,2.4rem);font-weight:800;letter-spacing:-.8px;line-height:1.15;margin-bottom:14px}
.dx-title .accent{color:var(--accent)}
.dx-lead{font-size:1.02rem;color:var(--muted);margin-bottom:28px;line-height:1.6;max-width:540px}

/* Inputs */
.dx-input,.dx-select{width:100%;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:16px 18px;color:#fff;font-size:1rem;font-family:inherit;outline:none;transition:border-color .2s,background .2s;-webkit-appearance:none;appearance:none}
.dx-input:focus,.dx-select:focus{border-color:var(--accent);background:var(--surface2)}
.dx-input::placeholder{color:#666}
.dx-select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23a0a0a0' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 18px center;padding-right:44px}

/* Radio cards */
.dx-options{display:flex;flex-direction:column;gap:10px;margin-bottom:8px}
.dx-option{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:16px 18px;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:14px;font-size:.98rem;line-height:1.4;user-select:none;-webkit-tap-highlight-color:transparent}
.dx-option:hover{border-color:#3a3a3a}
.dx-option input{position:absolute;opacity:0;pointer-events:none}
.dx-option .dx-radio{flex-shrink:0;width:20px;height:20px;border:2px solid #3a3a3a;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s}
.dx-option .dx-radio::after{content:"";width:8px;height:8px;border-radius:50%;background:var(--accent);transform:scale(0);transition:transform .2s}
.dx-option.selected{border-color:var(--accent);background:rgba(255,107,53,.06)}
.dx-option.selected .dx-radio{border-color:var(--accent)}
.dx-option.selected .dx-radio::after{transform:scale(1)}

/* Scale */
.dx-scale{display:flex;gap:8px;margin:6px 0 4px;justify-content:space-between}
.dx-scale-item{flex:1;aspect-ratio:1;max-width:68px;background:var(--surface);border:1px solid var(--border);border-radius:12px;color:#fff;font-size:1.15rem;font-weight:700;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;-webkit-tap-highlight-color:transparent}
.dx-scale-item:hover{border-color:#3a3a3a}
.dx-scale-item.selected{background:var(--accent);border-color:var(--accent);color:#fff;transform:scale(1.05)}
.dx-scale-labels{display:flex;justify-content:space-between;font-size:.72rem;color:#666;margin-top:10px;margin-bottom:8px}

/* Buttons */
.dx-actions{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap}
.dx-btn{background:var(--accent);color:#fff;border:none;border-radius:99px;padding:15px 32px;font-size:.95rem;font-weight:700;cursor:pointer;font-family:inherit;letter-spacing:.2px;transition:transform .2s,box-shadow .2s;display:inline-flex;align-items:center;gap:8px;text-decoration:none}
.dx-btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(255,107,53,.3)}
.dx-btn:disabled{opacity:.4;cursor:not-allowed;transform:none;box-shadow:none}
.dx-btn.ghost{background:transparent;border:1px solid var(--border);color:var(--muted)}
.dx-btn.ghost:hover{border-color:var(--accent);color:var(--accent);box-shadow:none}
.dx-btn.wa{background:#25D366}
.dx-btn.wa:hover{box-shadow:0 10px 24px rgba(37,211,102,.3)}

/* Meta under inputs */
.dx-helper{color:#666;font-size:.78rem;margin-top:8px}
.dx-error{color:var(--err);font-size:.82rem;margin-top:10px;display:none}
.dx-error.on{display:block}

/* Result screen */
.dx-result{padding:10px 0}
.dx-result-label{color:var(--accent);font-size:.78rem;text-transform:uppercase;letter-spacing:1.8px;font-weight:700;margin-bottom:12px}
.dx-result-title{font-size:clamp(1.6rem,5.5vw,2.6rem);font-weight:900;letter-spacing:-1px;line-height:1.1;margin-bottom:20px}
.dx-result-title .accent{color:var(--accent)}
.dx-result-diag{background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--accent);border-radius:14px;padding:26px 28px;margin:22px 0;line-height:1.65}
.dx-result-diag p{margin-bottom:12px;color:#e8e8e8}
.dx-result-diag p:last-child{margin-bottom:0}
.dx-result-diag strong{color:#fff}
.dx-result-section{margin:26px 0}
.dx-result-section h3{font-size:.78rem;text-transform:uppercase;letter-spacing:1.5px;color:var(--accent);font-weight:800;margin-bottom:12px}
.dx-result-section p,.dx-result-section li{color:#d8d8d8;line-height:1.6}
.dx-result-section ul{list-style:none;padding:0}
.dx-result-section li{padding:10px 0 10px 22px;border-bottom:1px solid #1f1f1f;position:relative}
.dx-result-section li:last-child{border-bottom:none}
.dx-result-section li::before{content:"→";position:absolute;left:0;color:var(--accent);font-weight:800}
.dx-services{display:grid;gap:12px;margin:14px 0}
.dx-service{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:20px 22px;text-decoration:none;color:inherit;display:block;transition:all .2s}
.dx-service:hover{border-color:var(--accent);transform:translateX(2px)}
.dx-service h4{color:#fff;font-size:1.05rem;font-weight:700;margin-bottom:6px}
.dx-service p{color:var(--muted);font-size:.88rem;margin:0;line-height:1.5}
.dx-service .arrow{color:var(--accent);font-weight:700;font-size:.8rem;margin-top:10px;display:inline-block}
.dx-service.primary{border-left:3px solid var(--accent);background:linear-gradient(180deg,rgba(255,107,53,.06),transparent 60%);margin-bottom:14px;display:block}
.dx-service.secondary{opacity:.92;display:block}
.dx-service-tag{display:inline-block;font-size:.65rem;text-transform:uppercase;letter-spacing:1.4px;color:var(--accent);font-weight:800;margin-bottom:8px}
.dx-service-tag.alt{color:#888}
.dx-service-desc{margin-bottom:10px!important}
.dx-service-why{color:#c8c8c8!important;font-size:.88rem!important;border-top:1px solid #1f1f1f;padding-top:10px;margin-top:10px!important;line-height:1.55!important}
.dx-service-why strong{color:var(--accent)}
.dx-work li{padding-left:44px!important}
.dx-work li::before{content:""!important}
.dx-work-num{position:absolute;left:0;top:12px;width:28px;height:28px;border-radius:50%;background:var(--accent);color:#0a0a0a;font-weight:800;font-size:.8rem;display:flex;align-items:center;justify-content:center}
.dx-risk h3{color:#ff9a6b!important}
.dx-opp h3{color:#6bffb5!important}

/* Final CTA */
.dx-cta{background:#141414;border:1px solid var(--border);border-left:4px solid var(--accent);border-radius:16px;padding:36px 30px;margin:30px 0 10px}
.dx-cta h2{color:#fff;font-size:1.5rem;font-weight:800;margin-bottom:10px;line-height:1.2}
.dx-cta p{color:var(--muted);font-size:.95rem;margin-bottom:18px;line-height:1.55}

/* Welcome screen */
.dx-welcome{text-align:left}
.dx-welcome .icon{width:54px;height:54px;border-radius:14px;background:var(--accent);display:flex;align-items:center;justify-content:center;font-size:1.7rem;margin-bottom:24px}
.dx-welcome-points{margin:20px 0 32px;padding:0;list-style:none}
.dx-welcome-points li{padding:10px 0;color:#d0d0d0;font-size:.95rem;display:flex;gap:12px;align-items:flex-start}
.dx-welcome-points li::before{content:"✓";color:var(--accent);font-weight:800;flex-shrink:0}

/* Submit loader */
.dx-loader{display:none;align-items:center;gap:10px;color:var(--muted);font-size:.88rem;margin-top:14px}
.dx-loader.on{display:flex}
.dx-loader .spin{width:16px;height:16px;border:2px solid #2a2a2a;border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}

/* Footer */
.dx-foot{padding:20px;text-align:center;color:#555;font-size:.75rem;border-top:1px solid #151515}
.dx-foot a{color:var(--accent);text-decoration:none}

/* Mobile tune */
@media(max-width:520px){
  .dx-container{padding:24px 16px 40px}
  .dx-top{padding:12px 16px}
  .dx-scale{gap:6px}
  .dx-scale-item{font-size:1rem}
  .dx-btn{width:100%;justify-content:center;padding:16px 24px}
  .dx-actions{flex-direction:column-reverse}
  .dx-actions .ghost{width:100%}
  .dx-cta{padding:28px 22px}
  .dx-result-diag{padding:22px}
}

/* Respect touch tap */
.dx-option,.dx-scale-item,.dx-btn{touch-action:manipulation}
