#diag-form .wiz-head {
            display: flex; align-items: center; justify-content: space-between;
            gap: 16px;
            margin-bottom: 28px;
            padding-bottom: 18px;
            border-bottom: 1px solid var(--borde-sutil);
          }
          #diag-form .wiz-meta {
            font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
            font-size: 11px;
            letter-spacing: .12em;
            text-transform: uppercase;
            color: var(--texto-suave);
          }
          #diag-form .wiz-meta b { color: var(--confianza); font-weight: 600; }
          #diag-form .wiz-meta .num { color: var(--accion); font-weight: 700; }
          #diag-form .wiz-save {
            display: inline-flex; align-items: center; gap: 8px;
            font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
            font-size: 10.5px;
            letter-spacing: .12em;
            text-transform: uppercase;
            color: var(--texto-suave);
            opacity: .65;
            transition: opacity .3s var(--ease-out);
          }
          #diag-form .wiz-save .led {
            width: 6px; height: 6px; border-radius: 999px;
            background: #2e7d52;
          }
          #diag-form .wiz-progress {
            position: relative;
            height: 3px;
            background: var(--borde-sutil);
            border-radius: 999px;
            overflow: hidden;
            margin-bottom: 28px;
          }
          #diag-form .wiz-progress-fill {
            position: absolute; left: 0; top: 0; bottom: 0;
            background: linear-gradient(90deg, var(--accion), var(--acento));
            width: 20%;
            transition: width .4s var(--ease-out);
          }

          #diag-form .wiz-step { display: none; }
          #diag-form .wiz-step.is-active { display: block; animation: wizRise .4s var(--ease-out) both; }
          @keyframes wizRise {
            from { opacity: 0; transform: translateY(8px); }
            to { opacity: 1; transform: translateY(0); }
          }

          #diag-form .wiz-step h3 {
            font-family: var(--font-display, "Georgia", serif);
            font-size: clamp(1.4rem, 2.6vw, 1.85rem);
            line-height: 1.2;
            letter-spacing: -.015em;
            color: var(--confianza);
            margin: 0 0 8px;
            font-weight: 600;
          }
          #diag-form .wiz-step h3 em {
            font-style: italic; color: var(--accion); font-weight: 500;
          }
          #diag-form .wiz-step .wiz-help {
            color: var(--texto-suave);
            font-size: .95rem;
            margin: 0 0 22px;
            max-width: 52ch;
          }

          #diag-form .wiz-options { display: grid; gap: 10px; }
          #diag-form .wiz-options.cols-2 { grid-template-columns: repeat(2, 1fr); }
          @media (max-width: 560px) { #diag-form .wiz-options.cols-2 { grid-template-columns: 1fr; } }

          #diag-form .wiz-opt {
            position: relative;
            display: flex; align-items: flex-start; gap: 14px;
            padding: 14px 16px;
            background: var(--fondo);
            border: 1px solid var(--borde-sutil);
            border-radius: 12px;
            cursor: pointer;
            transition: border-color .2s var(--ease-out), background .2s var(--ease-out), transform .15s var(--ease-out);
          }
          #diag-form .wiz-opt:hover { border-color: rgba(44, 62, 80, .25); background: #fff; }
          #diag-form .wiz-opt input { position: absolute; opacity: 0; pointer-events: none; }
          #diag-form .wiz-opt .ind {
            flex-shrink: 0;
            width: 20px; height: 20px;
            border: 1.5px solid rgba(44, 62, 80, .25);
            border-radius: 999px;
            background: #fff;
            display: inline-flex; align-items: center; justify-content: center;
            margin-top: 2px;
            transition: all .2s var(--ease-out);
          }
          #diag-form .wiz-opt .ind svg {
            width: 12px; height: 12px;
            opacity: 0; transform: scale(.6);
            transition: all .2s var(--ease-out);
            color: #fff;
          }
          #diag-form .wiz-opt .opt-text {
            flex: 1;
            font-size: .98rem;
            color: var(--confianza);
            line-height: 1.4;
          }
          #diag-form .wiz-opt .opt-text small {
            display: block; margin-top: 3px;
            color: var(--texto-suave);
            font-size: .82rem;
            line-height: 1.4;
          }
          #diag-form .wiz-opt input:checked ~ .ind {
            background: var(--accion);
            border-color: var(--accion);
          }
          #diag-form .wiz-opt input:checked ~ .ind svg { opacity: 1; transform: scale(1); }
          #diag-form .wiz-opt:has(input:checked) {
            border-color: var(--accion);
            background: rgba(232, 101, 26, .08);
          }

          #diag-form .wiz-field { margin-bottom: 16px; }
          #diag-form .wiz-field label {
            display: block;
            font-size: .8rem;
            font-weight: 600;
            color: var(--confianza);
            margin-bottom: 8px;
          }
          #diag-form .wiz-field label .opt {
            font-weight: 400; color: var(--texto-suave); margin-left: 6px; font-size: .78rem;
          }
          #diag-form .wiz-field input,
          #diag-form .wiz-field textarea {
            width: 100%;
            font: inherit;
            font-size: 1rem;
            color: var(--confianza);
            background: var(--fondo);
            border: 1px solid var(--borde-sutil);
            border-radius: 10px;
            padding: 12px 14px;
            transition: border-color .2s var(--ease-out), background .2s var(--ease-out), box-shadow .2s var(--ease-out);
          }
          #diag-form .wiz-field textarea {
            min-height: 100px; resize: vertical; line-height: 1.5;
          }
          #diag-form .wiz-field input:focus,
          #diag-form .wiz-field textarea:focus {
            outline: none;
            border-color: var(--accion);
            background: #fff;
            box-shadow: 0 0 0 3px rgba(232, 101, 26, .12);
          }
          #diag-form .wiz-field.has-error input,
          #diag-form .wiz-field.has-error textarea {
            border-color: #c0392b; background: #fef6f4;
          }
          #diag-form .wiz-field .wiz-err {
            display: none; margin-top: 6px; font-size: .82rem; color: #c0392b;
          }
          #diag-form .wiz-field.has-error .wiz-err { display: block; }

          #diag-form .wiz-options.has-error .wiz-opt {
            border-color: #c0392b;
            background: #fef6f4;
          }
          #diag-form .wiz-options.has-error::after {
            content: "Selecciona una opción para continuar.";
            display: block;
            margin-top: 10px;
            font-size: .82rem;
            color: #c0392b;
          }

          #diag-form .wiz-actions {
            display: flex; align-items: center; justify-content: space-between;
            gap: 12px;
            margin-top: 28px;
            padding-top: 22px;
            border-top: 1px solid var(--borde-sutil);
          }
          #diag-form .wiz-actions .right { display: inline-flex; gap: 10px; }
          #diag-form .wiz-btn {
            display: inline-flex; align-items: center; gap: 8px;
            padding: 12px 20px;
            font-family: inherit;
            font-size: .98rem;
            font-weight: 500;
            border-radius: 999px;
            border: 1px solid transparent;
            cursor: pointer;
            transition: transform .15s var(--ease-out), background .2s var(--ease-out), color .2s var(--ease-out), border-color .2s var(--ease-out);
          }
          #diag-form .wiz-btn svg { width: 15px; height: 15px; }
          #diag-form .wiz-primary {
            background: var(--confianza); color: #fff; border-color: var(--confianza);
          }
          #diag-form .wiz-primary:hover { background: var(--accion); border-color: var(--accion); transform: translateY(-1px); }
          #diag-form .wiz-primary:disabled { opacity: .35; cursor: not-allowed; transform: none; background: var(--confianza); }
          #diag-form .wiz-ghost {
            background: transparent; color: var(--confianza); border-color: rgba(44, 62, 80, .22);
          }
          #diag-form .wiz-ghost:hover { background: #fff; border-color: var(--confianza); }
          #diag-form .wiz-ghost:disabled { opacity: .35; cursor: not-allowed; }

          /* === Segment ramificador empresa/profesional === */
          #diag-form .wiz-segment {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 12px;
          }
          @media (max-width: 520px) { #diag-form .wiz-segment { grid-template-columns: 1fr; } }
          #diag-form .wiz-segment label {
            position: relative;
            display: flex; flex-direction: column; align-items: center;
            gap: 14px;
            padding: 28px 20px;
            background: var(--fondo);
            border: 1.5px solid var(--borde-sutil);
            border-radius: 14px;
            cursor: pointer;
            text-align: center;
            transition: all .25s var(--ease-out);
          }
          #diag-form .wiz-segment label:hover {
            border-color: rgba(44, 62, 80, .3); background: #fff;
            transform: translateY(-2px);
          }
          #diag-form .wiz-segment input { position: absolute; opacity: 0; pointer-events: none; }
          #diag-form .wiz-segment .ico {
            width: 56px; height: 56px;
            border-radius: 14px;
            background: rgba(232, 101, 26, .1);
            color: var(--accion);
            display: inline-flex; align-items: center; justify-content: center;
            transition: all .25s var(--ease-out);
          }
          #diag-form .wiz-segment .ico svg { width: 28px; height: 28px; }
          #diag-form .wiz-segment .seg-title { font-weight: 600; color: var(--confianza); font-size: 1.05rem; }
          #diag-form .wiz-segment .seg-sub { font-size: .85rem; color: var(--texto-suave); line-height: 1.4; }
          #diag-form .wiz-segment label:has(input:checked) {
            border-color: var(--accion);
            background: rgba(232, 101, 26, .06);
            box-shadow: 0 0 0 4px rgba(232, 101, 26, .08);
          }
          #diag-form .wiz-segment label:has(input:checked) .ico { background: var(--accion); color: #fff; }

          /* === Chips para red social y herramientas IA === */
          #diag-form .wiz-chips {
            display: flex; flex-wrap: wrap; gap: 8px;
            margin-top: 4px;
          }
          #diag-form .wiz-chip {
            position: relative;
            display: inline-flex; align-items: center; gap: 7px;
            padding: 9px 14px;
            background: var(--fondo);
            border: 1px solid var(--borde-sutil);
            border-radius: 999px;
            cursor: pointer;
            font-size: .9rem;
            color: var(--confianza);
            transition: all .2s var(--ease-out);
            user-select: none;
          }
          #diag-form .wiz-chip:hover { border-color: rgba(44, 62, 80, .3); background: #fff; }
          #diag-form .wiz-chip input { position: absolute; opacity: 0; pointer-events: none; }
          #diag-form .wiz-chip .chip-dot {
            width: 14px; height: 14px; border-radius: 999px;
            border: 1.5px solid rgba(44, 62, 80, .3);
            background: #fff;
            display: inline-flex; align-items: center; justify-content: center;
            transition: all .2s var(--ease-out);
            flex-shrink: 0;
          }
          #diag-form .wiz-chip .chip-dot svg {
            width: 9px; height: 9px; color: #fff; opacity: 0; transform: scale(.5);
            transition: all .2s var(--ease-out);
          }
          #diag-form .wiz-chip input:checked ~ .chip-dot { background: var(--accion); border-color: var(--accion); }
          #diag-form .wiz-chip input:checked ~ .chip-dot svg { opacity: 1; transform: scale(1); }
          #diag-form .wiz-chip:has(input:checked) {
            background: rgba(232, 101, 26, .08);
            border-color: var(--accion);
          }

          /* === IA level cards === */
          #diag-form .wiz-levels { display: grid; gap: 10px; }
          #diag-form .wiz-level {
            position: relative;
            display: flex; align-items: flex-start; gap: 14px;
            padding: 16px 18px;
            background: var(--fondo);
            border: 1px solid var(--borde-sutil);
            border-radius: 12px;
            cursor: pointer;
            transition: all .2s var(--ease-out);
          }
          #diag-form .wiz-level:hover { border-color: rgba(44, 62, 80, .25); background: #fff; }
          #diag-form .wiz-level input { position: absolute; opacity: 0; pointer-events: none; }
          #diag-form .wiz-level .emoji {
            font-size: 1.4rem; line-height: 1; flex-shrink: 0;
            width: 38px; height: 38px;
            display: inline-flex; align-items: center; justify-content: center;
            background: rgba(232, 101, 26, .08);
            border-radius: 10px;
          }
          #diag-form .wiz-level .lvl-body { flex: 1; }
          #diag-form .wiz-level .lvl-title { font-weight: 600; color: var(--confianza); font-size: .98rem; margin-bottom: 2px; }
          #diag-form .wiz-level .lvl-sub { font-size: .85rem; color: var(--texto-suave); line-height: 1.4; }
          #diag-form .wiz-level:has(input:checked) {
            border-color: var(--accion);
            background: rgba(232, 101, 26, .06);
          }

          /* === Red social handle input condicional === */
          #diag-form .wiz-rs-handle { margin-top: 12px; display: none; }
          #diag-form .wiz-rs-handle.is-visible { display: block; animation: wizRise .3s var(--ease-out) both; }

          /* === Step específico por ramificación === */
          #diag-form .wiz-step[data-only="empresa"],
          #diag-form .wiz-step[data-only="profesional"] { /* manejado por JS */ }
        
body{padding:0}main.container{max-width:940px;padding-top:32px;padding-bottom:40px}.preview-notice{padding:16px;background:#fff0df;color:#2c3e50}header{padding:20px 0}.diag-steps{display:flex;gap:16px;list-style:none;padding:0;margin:24px 0;flex-wrap:wrap}.diag-steps [aria-current=step]{color:var(--accion);font-weight:700}#diag-form fieldset{border:0;padding:0;margin:0 0 20px;min-width:0}#diag-form legend{font-weight:600;margin-bottom:12px}#diag-form select{font:inherit;width:100%;padding:12px 14px;border:1px solid var(--borde-sutil);border-radius:10px;background:var(--fondo);color:var(--confianza)}#diag-form .wiz-err{display:block;color:#a52820;font-size:.85rem}#diag-form .wiz-err:empty{display:none}#diag-form .wiz-opt:focus-within,#diag-form .wiz-chip:focus-within{outline:3px solid var(--accion);outline-offset:3px}#diag-form .likert-options{display:flex;justify-content:space-between;gap:8px}#diag-form .likert-options label{flex:1;justify-content:center;min-height:48px;padding:10px 0}#diag-form .likert-labels{display:flex;justify-content:space-between;gap:15px;font-size:.8rem;margin:5px 0 20px}#diag-form .likert-labels span:last-child{text-align:right}#diag-form [hidden]{display:none!important}.diag-error{color:#a52820}#diag-form .consent input{width:24px;height:24px;flex:none;accent-color:var(--accion)}#diag-form .consent{display:flex;align-items:start;gap:12px}#diag-form .consent label{font-size:.9rem} .preview-agenda{display:flex;gap:12px;flex-wrap:wrap}footer{margin:24px 0}.cta-card{max-width:100%;box-sizing:border-box}input,select,textarea{max-width:100%}@media(max-width:560px){main.container{padding:20px 16px}.cta-card{padding:20px 16px}#diag-form .wiz-actions{flex-wrap:wrap}#diag-form .wiz-btn{font-size:.9rem;padding:12px 16px}.diag-steps{font-size:.85rem;gap:12px}}