*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
/* ── Nueva paleta SIAR Pro Sobrio ────────────────────────── */
--ink:#0F172A;--ink2:#334155;--ink3:#64748B;--ink4:#94A3B8;--ink5:#CBD5E1;
--bg:#F8FAFC;--surface:#FFFFFF;--surface-2:#F1F5F9;--surface-3:#E2E8F0;
--line:#E2E8F0;--line2:#CBD5E1;

/* Fases con identidad visual */
--phase0:#1E3A5F;--phase0-l:#EEF4FF;--phase0-b:#B8CCE0;
--phase1:#0F766E;--phase1-l:#ECFDF5;--phase1-b:#99E6DA;
--phase2:#4F46E5;--phase2-l:#EEF2FF;--phase2-b:#C7D2FE;
--phase3:#15803D;--phase3-l:#F0FDF4;--phase3-b:#BBF7D0;
--activos-c:#B45309;--activos-l:#FFF7ED;--activos-b:#FED7AA;
--profundizar-c:#6D28D9;--profundizar-l:#F5F3FF;--profundizar-b:#DDD6FE;

/* Semánticos */
--ok:#15803D;--ok-l:#F0FDF4;--ok-b:#BBF7D0;
--warn:#B45309;--warn-l:#FFF7ED;--warn-b:#FED7AA;
--err:#B91C1C;--err-l:#FEF2F2;--err-b:#FECACA;
--info:#1E3A5F;--info-l:#EEF4FF;--info-b:#B8CCE0;

/* Primario */
--primary:#1E3A5F;--primary-hover:#2D5280;

/* Compatibilidad con variables existentes */
--bg2:var(--surface-2);--bg3:var(--surface-3);--bg4:#D1D5DB;
--bg1:var(--surface);
--border:var(--line);
--ink1:var(--ink);
--accent:var(--primary);
--cta:var(--primary);--cta-mid:var(--primary-hover);
--cta-l:var(--phase0-l);--cta-b:var(--phase0-b);
--ctx:var(--phase1);--ctx-l:var(--phase1-l);--ctx-b:var(--phase1-b);
--ins:var(--phase0);--ins-l:var(--phase0-l);--ins-b:var(--phase0-b);
--opt:var(--activos-c);--opt-l:var(--activos-l);--opt-b:var(--activos-b);
--ex:var(--profundizar-c);--ex-l:var(--profundizar-l);--ex-b:var(--profundizar-b);
--prev:#0a4a3a;--prev-l:#e8f5f0;--prev-b:#9ad4c4;
--miedo-act:#7a1a1a;--miedo-act-l:#fdf0f0;--miedo-act-b:#e8b8b8;
--miedo-acord:#5a0a1a;--miedo-acord-l:#f8e8ec;--miedo-acord-b:#d49aaa;
--meta-verde:#0f4a1a;--meta-verde-l:#e8f5ec;
--meta-azul:var(--phase0);--meta-azul-l:var(--phase0-l);
--meta-morado:var(--profundizar-c);--meta-morado-l:var(--profundizar-l);
--funnel1:var(--phase0);--funnel2:var(--phase1);--funnel3:var(--phase3);--funnel4:#3a3a1a;--funnel5:var(--ink);
--canal:var(--phase0);--canal-l:var(--phase0-l);--canal-b:var(--phase0-b);
--input-bg:var(--surface);--input-border:#B0BEC5;--input-ph:var(--ink4);
--chip-bg:var(--surface-2);--chip-border:var(--line2);--chip-color:var(--ink2);
--chip-sel-bg:var(--ink2);--chip-sel-color:#fff;
--r:10px;--rs:7px;
--sh:0 1px 2px rgba(15,23,42,.04),0 2px 8px rgba(15,23,42,.06);
--sidebar-w:220px;
}
html{scroll-behavior:smooth}
body{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',system-ui,sans-serif;background:var(--bg);color:var(--ink);font-size:15px;line-height:1.65;min-height:100vh;-webkit-font-smoothing:antialiased}

/* AUTH */
#auth-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:24px;background:var(--bg)}
.auth-logo{font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--ink3);margin-bottom:48px}
.auth-card{width:100%;max-width:400px;background:var(--bg);border:1px solid var(--line);border-radius:var(--r);padding:36px;box-shadow:var(--sh)}
.auth-card h1{font-size:22px;font-weight:600;letter-spacing:-.02em;color:var(--ink);margin-bottom:6px}
.auth-card p{font-size:14px;color:var(--ink3);margin-bottom:28px;line-height:1.6}
.auth-btn{width:100%;padding:12px 20px;background:var(--ink);color:#fff;border:none;border-radius:var(--rs);font-size:14px;font-weight:500;cursor:pointer;transition:opacity .18s;font-family:inherit}
.auth-btn:hover{opacity:.85}
.auth-note{font-size:12px;color:var(--ink4);margin-top:16px;text-align:center;line-height:1.5}

/* LOADING */
#loading-overlay{position:fixed;inset:0;background:var(--bg);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:999;gap:14px}
.loading-spinner{width:28px;height:28px;border:2.5px solid var(--line);border-top-color:var(--ink);border-radius:50%;animation:spin .7s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.loading-text{font-size:13px;color:var(--ink4)}
#loading-overlay.hidden{display:none}

/* APP SHELL */
#app{display:none;min-height:100vh}
#app.visible{display:flex;flex-direction:column}

/* TOPBAR */
.topbar{height:52px;display:flex;align-items:center;justify-content:space-between;padding:0 20px;border-bottom:1.5px solid var(--line);background:var(--surface);position:sticky;top:0;z-index:100}
.topbar__brand{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--ink3)}
.topbar__right{display:flex;align-items:center;gap:8px}
.topbar__user-btn{display:flex;align-items:center;gap:7px;padding:5px 10px;border-radius:var(--rs);border:1px solid var(--line);background:var(--bg2);cursor:pointer;font-size:12px;color:var(--ink2);font-family:inherit;transition:all .15s}
.topbar__user-btn:hover{background:var(--bg3);border-color:var(--line2)}
.topbar__avatar{width:22px;height:22px;border-radius:50%;background:var(--ink);color:#fff;font-size:10px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.topbar__signout{font-size:12px;color:var(--ink4);background:none;border:none;cursor:pointer;padding:5px 9px;border-radius:6px;transition:background .15s;font-family:inherit}
.topbar__signout:hover{background:var(--bg3);color:var(--ink2)}
.save-status{font-size:11px;color:var(--ink4);display:flex;align-items:center;gap:5px;min-width:70px;justify-content:flex-end;transition:color .2s}
.save-status.saving{color:var(--warn);font-weight:600}.save-status.saved{color:var(--ok);font-weight:600}
.save-status.error{color:var(--err)}
.topbar__menu-btn{display:none;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--rs);border:1px solid var(--line);background:none;cursor:pointer;font-size:16px;color:var(--ink3);font-family:inherit}

/* BODY LAYOUT */
.app-body{display:flex;flex:1;min-height:0}

/* SIDEBAR */
.sidebar{width:var(--sidebar-w);flex-shrink:0;border-right:1.5px solid var(--line);background:var(--surface-2);padding:20px 0;position:sticky;top:52px;height:calc(100vh - 52px);overflow-y:auto}
.sidebar__label{font-size:9px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ink5);padding:0 16px;margin-bottom:6px}
.phase-nav{display:flex;flex-direction:column;gap:2px;padding:0 8px}
.phase-item{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:var(--rs);border:none;background:none;cursor:pointer;font-family:inherit;width:100%;text-align:left;transition:background .15s;position:relative}
.phase-item:hover:not(.locked){background:var(--surface-3)}
.phase-item.active{background:var(--surface-3);border-left:3px solid var(--ink);padding-left:7px}
.phase-item.locked{opacity:.45;cursor:not-allowed}
.phase-item__dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;background:var(--line2);transition:background .15s}
.phase-item.active .phase-item__dot{background:var(--ink)}
.phase-item__info{flex:1;min-width:0}
.phase-item__num{font-size:9px;font-weight:700;color:var(--ink4);letter-spacing:.06em;text-transform:uppercase;line-height:1}
.phase-item__name{font-size:13px;font-weight:500;color:var(--ink2);line-height:1.3;margin-top:1px}
.phase-item.active .phase-item__name{color:var(--ink);font-weight:600}
.phase-item__badge{font-size:9px;font-weight:600;padding:2px 6px;border-radius:4px;background:var(--bg4);color:var(--ink4);white-space:nowrap;flex-shrink:0}

/* MAIN CONTENT */
.main-content{flex:1;min-width:0;overflow-y:auto;background:var(--bg)}
.main-inner{max-width:700px;margin:0 auto;padding:0 24px 100px}

/* RESPONSIVE */
@media(max-width:768px){
  .sidebar{display:none}
  .sidebar.open{display:block;position:fixed;left:0;top:52px;height:calc(100vh - 52px);z-index:200;box-shadow:4px 0 20px rgba(0,0,0,.1)}
  .sidebar-backdrop{display:none;position:fixed;inset:0;top:52px;background:rgba(0,0,0,.3);z-index:199}
  .sidebar-backdrop.show{display:block}
  .topbar__menu-btn{display:flex}
}

/* PANEL */
.panel-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:300;align-items:flex-start;justify-content:flex-end;padding-top:52px}
.panel-overlay.open{display:flex}
.panel{width:100%;max-width:480px;height:calc(100vh - 52px);background:var(--bg);border-left:1px solid var(--line);display:flex;flex-direction:column;overflow:hidden}
.panel__hd{padding:20px 24px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;flex-shrink:0}
.panel__title{font-size:16px;font-weight:600;color:var(--ink);letter-spacing:-.01em}
.panel__close{width:28px;height:28px;border-radius:6px;border:1px solid var(--line);background:none;cursor:pointer;font-size:16px;color:var(--ink3);display:flex;align-items:center;justify-content:center;font-family:inherit;transition:background .15s}
.panel__close:hover{background:var(--bg3)}
.panel__body{flex:1;overflow-y:auto;padding:20px 24px}
.panel__footer{padding:16px 24px;border-top:1px solid var(--line);flex-shrink:0}
.panel-section{margin-bottom:22px}
.panel-section__title{font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink4);margin-bottom:10px}
.panel-field{margin-bottom:12px}
.panel-field label{font-size:12px;font-weight:500;color:var(--ink3);display:block;margin-bottom:5px}
.panel-field input{font-family:inherit;width:100%;padding:8px 12px;border:1.5px solid var(--input-border);border-radius:var(--rs);font-size:13px;background:var(--input-bg);color:var(--ink);transition:border-color .18s}
.panel-field input:focus{outline:none;border-color:var(--ink3)}

/* STRATEGY CARDS */
.strat-card{border:1px solid var(--line);border-radius:var(--rs);padding:12px 14px;margin-bottom:8px;cursor:pointer;transition:all .15s;display:flex;align-items:flex-start;gap:10px}
.strat-card:hover{border-color:var(--line2);background:var(--bg2)}
.strat-card.active-strat{border-color:var(--ink);background:var(--bg2)}
.strat-card__info{flex:1;min-width:0}
.strat-card__name{font-size:13px;font-weight:600;color:var(--ink);margin-bottom:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.strat-card__meta{font-size:11px;color:var(--ink4)}
.strat-card__fase{font-size:10px;font-weight:600;padding:2px 7px;border-radius:5px;background:var(--cta-l);color:var(--cta);flex-shrink:0;align-self:center}
.strat-card__del{width:24px;height:24px;border-radius:5px;border:none;background:none;cursor:pointer;color:var(--ink5);font-size:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s}
.strat-card__del:hover{background:var(--err-l);color:var(--err)}
.strat-card__export{width:24px;height:24px;border-radius:5px;border:none;background:none;cursor:pointer;color:var(--ink5);font-size:13px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s;margin-right:2px}
.strat-card__export:hover{background:var(--cta-l);color:var(--cta)}
.strats-section{margin-bottom:18px}
.strats-section__hdr{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ink4);padding:4px 0 8px;border-bottom:1px solid var(--line);margin-bottom:8px}
.strats-section__empty{font-size:12px;color:var(--ink5);padding:8px 0;font-style:italic}
.empty-state{text-align:center;padding:32px 16px;color:var(--ink4);font-size:13px;line-height:1.6}

/* PHASE LOCKED */
#phase-locked{display:none;padding:60px 24px;text-align:center;max-width:480px;margin:0 auto}
#phase-locked.visible{display:block}
.locked-icon{font-size:36px;margin-bottom:16px;opacity:.3}
.locked-title{font-size:20px;font-weight:600;color:var(--ink);margin-bottom:8px;letter-spacing:-.01em}
.locked-sub{font-size:14px;color:var(--ink3);line-height:1.7;margin-bottom:24px}
.locked-badge{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;padding:6px 14px;border-radius:20px;background:var(--bg3);color:var(--ink4);border:1px solid var(--line2)}

/* STRATEGY NAME BAR */
.strat-namebar{display:flex;align-items:center;gap:10px;padding:14px 0;border-bottom:1px solid var(--line);margin-bottom:24px}
.strat-namebar__input{flex:1;font-family:inherit;font-size:15px;font-weight:600;border:none;background:none;color:var(--ink);outline:none;letter-spacing:-.01em}
.strat-namebar__input::placeholder{color:var(--ink5);font-weight:400}
.strat-namebar__badge{font-size:10px;font-weight:700;padding:3px 10px;border-radius:5px;background:var(--ok-l);color:var(--ok);white-space:nowrap;flex-shrink:0;letter-spacing:.02em}
.strat-namebar__new{font-size:12px;color:var(--ink4);background:none;border:1px solid var(--line);border-radius:var(--rs);padding:5px 10px;cursor:pointer;font-family:inherit;transition:all .15s;white-space:nowrap}
.strat-namebar__new:hover{background:var(--bg2);color:var(--ink2)}

/* HEADER */
.hdr{padding:12px 0 24px;border-bottom:1.5px solid var(--line);margin-bottom:24px}
.hdr__phase{font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ink4);margin-bottom:8px}
.hdr__title{font-size:clamp(20px,4vw,28px);font-weight:700;letter-spacing:-.03em;line-height:1.15;color:var(--ink);margin-bottom:10px}
.hdr__title span{color:var(--ink3);font-weight:400}
.hdr__sub{font-size:14px;color:var(--ink3);max-width:480px;line-height:1.7}
.prog{display:flex;gap:5px;align-items:center;margin-top:20px}
.prog__s{height:2px;flex:1;border-radius:2px;background:var(--bg4);transition:background .3s}
.prog__s.done{background:var(--ink)}.prog__s.on{background:var(--ink3)}
.prog__lbl{font-size:11px;color:var(--ink4);padding-left:10px;white-space:nowrap}

/* STEPS */
.steps{display:flex;gap:0;margin-bottom:24px;border:1.5px solid var(--line);border-radius:var(--r);overflow:hidden;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.steps::-webkit-scrollbar{display:none}
.step{flex:0 0 auto;min-width:72px;font-size:12px;font-weight:500;padding:11px 10px;border:none;background:var(--bg2);color:var(--ink4);cursor:pointer;transition:all .18s;border-right:1px solid var(--line);display:flex;flex-direction:column;align-items:center;gap:2px;font-family:inherit;min-height:44px}
.step:last-child{border-right:none}
.step__num{font-size:10px;opacity:.7}
.step:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;z-index:1;position:relative}
.step:hover:not(.on){background:var(--bg3);color:var(--ink2)}
.step.on{background:var(--primary);color:#fff;font-weight:600}
.step.done{background:var(--bg3);color:var(--ink2)}
/* SECTIONS */
.sec{display:none}
.sec.on{display:block;animation:fadeUp .25s ease both}
@keyframes fadeUp{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}

/* CARDS */
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);margin-bottom:12px;overflow:hidden;box-shadow:0 1px 3px rgba(15,23,42,.06),0 4px 12px rgba(15,23,42,.04)}
.card__hd{padding:14px 18px;border-bottom:1px solid var(--line);display:flex;gap:12px;align-items:flex-start;background:var(--surface-2)}
.card__label{font-size:10px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--ink4);margin-bottom:3px}
.card__name{font-size:18px;font-weight:600;letter-spacing:-.02em;color:var(--ink);margin-bottom:3px}
.card__desc{font-size:12px;color:var(--ink3);line-height:1.55}
.card__bd{padding:20px}

/* CALLOUTS */
.callout{padding:12px 15px;border-radius:var(--rs);font-size:13px;line-height:1.7;border-left:3px solid;margin-bottom:14px}
.callout.info{background:var(--ins-l);border-color:var(--ins-b);color:var(--ins)}
.callout.ok{background:var(--ok-l);border-color:var(--ok-b);color:var(--ok)}
.callout.warn{background:var(--warn-l);border-color:var(--warn-b);color:var(--warn)}
.callout.neutral{background:#f9f9f9;border-color:#d8d8d8;color:var(--ink2)}

/* DIVIDER */
.dv{display:flex;align-items:center;gap:10px;margin:16px 0 12px}
.dv span{font-size:10px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--ink4);white-space:nowrap}
.dv::before,.dv::after{content:'';flex:1;height:1px;background:var(--line)}

/* FIELDS */
.f{margin-bottom:12px}
.f__lbl{font-size:13px;font-weight:600;color:var(--ink2);margin-bottom:5px;display:flex;align-items:center;gap:5px}
.req{color:var(--err);font-size:13px;font-weight:700;line-height:1;flex-shrink:0;margin-left:2px}
/* Screen-reader only utility */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}

/* Required fields note */
.required-note{font-size:12px;color:var(--ink4);margin-bottom:14px;line-height:1.5}
.required-note span{color:var(--err);font-weight:700}

/* Focus visible improvements for all interactive elements */
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:0;border-color:var(--accent)}

/* Modal accessibility - trap focus visually */
.modal-overlay:not(.open){visibility:hidden;pointer-events:none}
.modal-overlay.open{visibility:visible}

/* Sidebar: inert content behind open panel (CSS only - JS handles inert attr) */
.main-inner[aria-hidden="true"]{pointer-events:none;user-select:none}

/* Mobile: minimum touch target for interactive elements */
@media(max-width:768px){
  .phase-item{min-height:44px}
  .strat-namebar__new{min-height:36px;padding:6px 14px}
  .btn{min-height:40px}
  .chips{gap:8px}
  .chip{padding:7px 14px}
}

.f__hint{font-size:11px;color:var(--ink4);margin-bottom:5px;line-height:1.5}
.f__warn{font-size:11px;color:var(--warn);background:var(--warn-l);border-radius:4px;padding:5px 9px;margin-top:5px;display:none;line-height:1.5}
.f__warn.show{display:block}
.f2{display:grid;grid-template-columns:1fr 1fr;gap:0 14px}
@media(max-width:500px){.f2{grid-template-columns:1fr}}

input[type=text],input[type=email],input[type=number],select,textarea{
  font-family:inherit;width:100%;padding:9px 13px;
  border:1.5px solid var(--input-border);border-radius:var(--rs);font-size:14px;
  background:var(--input-bg);color:var(--ink);resize:vertical;
  transition:border-color .18s,box-shadow .18s;line-height:1.5;
  box-shadow:inset 0 1px 2px rgba(0,0,0,.04);
}
textarea{min-height:66px}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px rgba(30,58,95,.08)}
input::placeholder,textarea::placeholder{color:var(--input-ph)}

/* CHIPS */
.chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
.chip{font-size:12px;padding:5px 13px;border-radius:20px;border:1px solid var(--chip-border);background:var(--chip-bg);color:var(--chip-color);cursor:pointer;transition:all .15s;user-select:none;font-family:inherit;font-weight:500;
  /* button reset */
  line-height:1.4;display:inline-flex;align-items:center;appearance:none;-webkit-appearance:none}
.chip:hover:not(.sel){border-color:var(--ink3);color:var(--ink);background:var(--bg4)}
.chip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.chip.sel,.chip[aria-pressed="true"]{background:var(--primary);border-color:var(--primary);color:#fff}
.chip[aria-pressed="true"]:focus-visible{outline:2px solid var(--chip-sel-color);outline-offset:2px}
.chip.disabled{opacity:.3;cursor:not-allowed;pointer-events:none}
/* v40.9 — audiencia combinada sugerida en "¿a quién ayudas?" */
.chip--rec:not(.sel){border-color:var(--phase0);color:var(--phase0)}

/* PROFILE HINT */
.profile-hint{background:var(--ctx-l);border:1px solid var(--ctx-b);border-radius:var(--rs);padding:11px 14px;margin-bottom:12px;display:none}
.profile-hint.show{display:block}
.profile-hint__title{font-size:10px;font-weight:700;color:var(--ctx);letter-spacing:.06em;text-transform:uppercase;margin-bottom:7px}
.profile-hint__tags{display:flex;flex-wrap:wrap;gap:5px}
.profile-hint__tag{font-size:11px;padding:3px 9px;border-radius:8px;background:rgba(255,255,255,.8);border:1px solid var(--ctx-b);color:var(--ctx)}

/* MIEDOS */
.miedos-list{display:flex;flex-direction:column;gap:5px;margin-bottom:8px}
.miedo{display:flex;gap:10px;align-items:flex-start;padding:9px 13px;border-radius:var(--rs);border:1px solid var(--miedo-act-b);background:var(--miedo-act-l);cursor:pointer;transition:all .15s;font-size:13px;color:var(--miedo-act);font-family:inherit;text-align:left;width:100%}
.miedo:hover{border-color:var(--miedo-act);background:#fce8e8}
.miedo.on{background:#fad4d4;border-color:var(--miedo-act)}
.miedo__box{width:15px;height:15px;border-radius:4px;border:1.5px solid var(--miedo-act-b);flex-shrink:0;margin-top:2px;display:flex;align-items:center;justify-content:center;font-size:10px;transition:all .15s}
.miedo.on .miedo__box{background:var(--miedo-act);border-color:var(--miedo-act);color:#fff}
/* v40.8 — miedo recomendado + badge "Recomendado para este perfil" */
.miedo{align-items:center}
.miedo__txt{flex:1}
.miedo.rec{background:#fff;border-color:var(--miedo-act-b)}
.miedo.rec:hover{background:#fce8e8}
.miedo.rec.on{background:#fad4d4;border-color:var(--miedo-act)}
.miedo__badge{flex-shrink:0;margin-left:8px;font-size:10px;font-weight:600;letter-spacing:.01em;color:var(--miedo-act);background:#fce8e8;border:1px solid var(--miedo-act-b);padding:1px 8px;border-radius:999px;line-height:1.5}
.miedo.on .miedo__badge{background:#fff;border-color:var(--miedo-act)}

/* ACORDEON */
.acordeon{border:1px solid var(--miedo-acord-b);border-radius:var(--rs);overflow:hidden;margin-bottom:10px}
.acordeon__trigger{width:100%;display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:var(--miedo-acord-l);border:none;cursor:pointer;font-size:12px;font-weight:600;color:var(--miedo-acord);font-family:inherit;border-bottom:1px solid var(--miedo-acord-b)}
.acordeon__arrow{font-size:10px;transition:transform .22s}
.acordeon__trigger.open .acordeon__arrow{transform:rotate(180deg)}
.acordeon__body{display:none;padding:10px;border-top:1px solid var(--miedo-acord-b);background:var(--bg)}
.acordeon__body.open{display:flex;flex-direction:column;gap:5px}

/* CTX BLOCK */
.ctx-block{background:var(--ctx-l);border:1px solid var(--ctx-b);border-radius:var(--rs);padding:12px 14px;margin-bottom:14px}
.ctx-block__title{font-size:10px;font-weight:700;color:var(--ctx);text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}
.ctx-tags{display:flex;flex-wrap:wrap;gap:5px}
.ctx-tag{font-size:11px;padding:3px 10px;border-radius:8px;background:rgba(255,255,255,.8);border:1px solid var(--ctx-b);color:var(--ctx)}
.ctx-tag.empty{color:var(--ink4);font-style:italic;border-style:dashed;border-color:var(--line2);background:transparent}

/* EXAMPLE BOX */
.example-box{border:1px solid var(--phase0-b);border-left:3px solid var(--phase0);border-radius:var(--rs);padding:12px 15px;margin-bottom:16px;background:var(--phase0-l);background:color-mix(in srgb,var(--phase0) 6%,var(--surface))}
.example-box__label{font-size:10px;font-weight:700;color:var(--phase0);text-transform:uppercase;letter-spacing:.08em;margin-bottom:5px}
.example-box__text{font-size:13.5px;color:var(--ink2);line-height:1.65;font-style:normal;opacity:1;font-weight:500}

/* FORMULA */
.formula-step{margin-bottom:14px}
.formula-step__num{display:inline-flex;width:22px;height:22px;border-radius:50%;background:var(--ink);color:#fff;font-size:11px;font-weight:700;align-items:center;justify-content:center;margin-right:7px;flex-shrink:0;vertical-align:middle}
.formula-connector{text-align:center;font-size:11px;color:var(--ink5);padding:3px 0}

/* PREVIEW */
.preview-main{background:var(--prev-l);border:1px solid var(--prev-b);border-radius:var(--rs);padding:16px;margin-bottom:8px}
.preview-main__label{font-size:10px;font-weight:700;color:var(--prev);text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}
.preview-main__text{font-size:14px;color:var(--prev);line-height:1.75;font-style:italic;min-height:40px}
.preview-main__text.empty{color:var(--prev-b);font-size:12px;font-style:normal}
.preview-short{background:var(--bg3);border:1px solid var(--line);border-radius:var(--rs);padding:12px 14px;margin-bottom:14px}
.preview-short__label{font-size:10px;font-weight:600;color:var(--ink4);text-transform:uppercase;letter-spacing:.08em;margin-bottom:5px}
.preview-short__text{font-size:13px;color:var(--ink2);line-height:1.65;font-style:italic}
.uses-note{padding:0 0 14px;border-bottom:1px solid var(--line);margin-bottom:14px}
.uses-note__label{font-size:11px;color:var(--ink4);margin-bottom:6px}
.uses-grid{display:flex;flex-wrap:wrap;gap:5px}
.use-tag{font-size:11px;padding:2px 9px;border-radius:6px;background:var(--bg3);color:var(--ink4);border:1px solid var(--line)}

/* SAVE CTA */
.save-cta{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;background:var(--phase0-l);border:1px solid var(--phase0-b);border-radius:var(--rs);margin-bottom:12px}
.save-cta__title{font-size:13px;font-weight:600;color:var(--cta)}
.save-cta__sub{font-size:11px;color:var(--cta);opacity:.7;margin-top:2px}

/* VCHECKS */
.vcheck-item{display:flex;gap:10px;align-items:flex-start;padding:8px 0;border-bottom:1px solid var(--line);font-size:12px;color:var(--ink3);line-height:1.5}
.vcheck-item:last-child{border:none}
.vcheck-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;margin-top:5px;background:var(--line2);transition:background .2s}
.vcheck-dot.ok{background:var(--ok)}.vcheck-dot.fail{background:var(--err)}
.vcheck-label{flex:1}
.vcheck-status{font-size:10px;font-weight:600;padding:2px 7px;border-radius:6px;white-space:nowrap}
.vcheck-status.ok{background:var(--ok-l);color:var(--ok)}
.vcheck-status.fail{background:var(--err-l);color:var(--err)}

/* STRENGTH */
.strength-wrap{margin-bottom:16px}
.strength-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}
.strength-lbl{font-size:11px;font-weight:500;color:var(--ink3)}
.strength-badge{font-size:11px;font-weight:600;padding:3px 10px;border-radius:8px;transition:all .3s}
.strength-badge.weak{background:var(--err-l);color:var(--err)}
.strength-badge.ok{background:var(--warn-l);color:var(--warn)}
.strength-badge.good{background:var(--ins-l);color:var(--ins)}
.strength-badge.strong{background:var(--ok-l);color:var(--ok);font-weight:700}
.strength-track{height:4px;background:var(--bg3);border-radius:2px;overflow:hidden}
.strength-fill{height:100%;border-radius:2px;transition:width .5s,background .5s}

/* CALC */
.calc-inputs{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-bottom:18px}
@media(max-width:480px){.calc-inputs{grid-template-columns:1fr}}
.calc-input{background:var(--bg2);border:1px solid var(--line);border-radius:var(--rs);padding:12px 14px}
.calc-input__lbl{font-size:10px;font-weight:600;color:var(--ink4);text-transform:uppercase;letter-spacing:.08em;margin-bottom:5px}
.calc-input input{border:none;background:transparent;padding:0;font-size:22px;font-weight:600;color:var(--ink);width:100%;letter-spacing:-.02em}
.calc-input input:focus{outline:none;box-shadow:none}
.calc-input__unit{font-size:11px;color:var(--ink4);margin-top:3px}
.calc-input--verde{background:var(--meta-verde-l);border-color:#9ad4aa}
.calc-input--verde .calc-input__lbl{color:var(--meta-verde)}
.calc-input--verde input{color:var(--meta-verde)}
.calc-input--azul{background:var(--meta-azul-l);border-color:#9ab8f0}
.calc-input--azul .calc-input__lbl{color:var(--meta-azul)}
.calc-input--azul input{color:var(--meta-azul)}
.calc-input--morado{background:var(--meta-morado-l);border-color:#c4b8f0}
.calc-input--morado .calc-input__lbl{color:var(--meta-morado)}
.calc-input--morado input{color:var(--meta-morado)}

/* ROAS */
.roas-wrap{margin-bottom:18px}
.roas-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:8px}
.roas-lbl{font-size:12px;font-weight:500;color:var(--ink2)}
.roas-sub{font-size:11px;color:var(--ink4)}
.roas-val{font-size:22px;font-weight:600;color:var(--ink);letter-spacing:-.02em}
input[type=range]{width:100%;height:3px;border-radius:2px;-webkit-appearance:none;background:linear-gradient(to right,var(--ink) var(--pct,22%),var(--bg4) var(--pct,22%));cursor:pointer;border:none;padding:0}
input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;border-radius:50%;background:var(--ink);border:2px solid var(--bg);box-shadow:0 1px 4px rgba(0,0,0,.2)}
input[type=range]:focus{outline:none}
.roas-zones{display:flex;justify-content:space-between;font-size:10px;color:var(--ink5);margin-top:5px}

/* FUNNEL TABLE */
.funnel-table{margin-bottom:20px;display:flex;flex-direction:column;gap:6px}
.funnel-row{display:grid;grid-template-columns:1fr 70px 120px;align-items:center;gap:10px;padding:10px 14px;background:var(--bg2);border-radius:var(--rs);border:1px solid var(--line)}
@media(max-width:500px){.funnel-row{grid-template-columns:1fr 60px}.funnel-row__bar{display:none}}
.funnel-row--highlight{background:var(--bg3);border-color:var(--line2)}
.funnel-row__stage{font-size:13px;color:var(--ink2)}
.funnel-row--highlight .funnel-row__stage{font-weight:600;color:var(--ink)}
.funnel-row__num{font-size:18px;font-weight:600;color:var(--ink);text-align:right;letter-spacing:-.02em}
.funnel-row--highlight .funnel-row__num{font-size:22px}
.funnel-row__bar{height:6px;background:var(--bg4);border-radius:3px;overflow:hidden}
.funnel-row__fill{height:100%;border-radius:3px;transition:width .5s cubic-bezier(.4,0,.2,1)}
/* v40.10b — embudo de 7 etapas */
.funnel-row__rate{font-size:10px;font-weight:700;color:var(--ink4);background:var(--bg4);padding:1px 6px;border-radius:999px;margin-left:6px;letter-spacing:.02em}
.funnel-row.is-bottleneck{border-color:var(--miedo-act);background:#fdeeee}
.funnel-row.is-bottleneck .funnel-row__rate{color:#fff;background:var(--miedo-act)}
.funnel-edu{font-size:12px;color:var(--ink2);line-height:1.6;background:var(--bg2);border:1px solid var(--line);border-left:3px solid var(--phase0);border-radius:var(--rs);padding:10px 14px;margin-bottom:20px}
.funnel-edu:empty{display:none}
.tasas-canal-nota{font-size:11px;color:var(--ink4);margin-top:10px;line-height:1.5}
.tasas-canal-nota:empty{display:none}
.tasas-reset{margin-top:8px;font-size:11px;font-weight:600;color:var(--phase0);background:none;border:none;padding:0;cursor:pointer;font-family:inherit;text-decoration:underline}

/* KPIS */
.kpis-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:18px}
@media(max-width:480px){.kpis-grid{grid-template-columns:repeat(2,1fr)}}
.kpi-card{background:var(--bg2);border:1px solid var(--line);border-radius:var(--rs);padding:12px 14px;text-align:center}
.kpi-card.primary{background:var(--bg3);border-color:var(--line2)}
.kpi-card__num{font-size:20px;font-weight:600;color:var(--ink);letter-spacing:-.02em;line-height:1.1;margin-bottom:4px}
.kpi-card__lbl{font-size:11px;color:var(--ink3);line-height:1.3}

/* TASAS */
.tasas-summary{background:var(--ins-l);border:1px solid var(--ins-b);border-radius:var(--rs);padding:10px 14px;margin-bottom:0;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:8px}
.tasas-summary__label{font-size:12px;font-weight:600;color:var(--ins)}
.tasas-summary__sub{font-size:11px;color:var(--ins);opacity:.75}
.tasas-summary__arrow{font-size:10px;color:var(--ins);transition:transform .22s}
.tasas-summary.open .tasas-summary__arrow{transform:rotate(180deg)}
.tasas-body{display:none;padding:12px 14px;background:var(--ins-l);border:1px solid var(--ins-b);border-top:none;border-radius:0 0 var(--rs) var(--rs);margin-bottom:16px}
.tasas-body.open{display:block}

/* RESULT HIGHLIGHT */
.result-highlight{display:flex;gap:14px;align-items:flex-start;background:var(--ins-l);border:1px solid var(--ins-b);border-radius:var(--r);padding:16px 18px;margin-bottom:18px}
.result-highlight__icon{font-size:16px;color:var(--ins);opacity:.5;flex-shrink:0;margin-top:2px}
.result-highlight__text{font-size:13px;color:var(--ins);line-height:1.75}

/* CALC MODE */
.calc-mode-btn{font-family:inherit;font-size:12px;font-weight:500;padding:7px 16px;border-radius:var(--rs);cursor:pointer;border:1px solid var(--line2);background:var(--bg2);color:var(--ink3);transition:all .18s}
.calc-mode-btn.active{background:var(--ink);color:#fff;border-color:var(--ink)}
.calc-mode-btn:hover:not(.active){background:var(--bg3);color:var(--ink2)}

/* CANAL */
.canal-block{background:var(--canal-l);border:1px solid var(--canal-b);border-radius:var(--r);padding:16px 18px;margin-bottom:16px}
.canal-block__label{font-size:10px;font-weight:700;color:var(--canal);text-transform:uppercase;letter-spacing:.1em;margin-bottom:10px}
.canal-block__grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}
@media(max-width:480px){.canal-block__grid{grid-template-columns:1fr}}
.canal-item{background:#fff;border-radius:var(--rs);padding:12px 14px;border:1px solid var(--canal-b)}
.canal-item__badge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin-bottom:4px}
.canal-item__badge.principal{color:var(--canal)}
.canal-item__badge.secundario{color:var(--ink4)}
.canal-item__name{font-size:16px;font-weight:700;color:var(--ink)}
.canal-item.principal{border-color:var(--canal);border-width:2px}
.canal-item.secundario{opacity:.8}
.canal-justificacion{font-size:12px;color:var(--canal);line-height:1.65;border-top:1px solid var(--canal-b);padding-top:10px;font-style:italic}
/* v40.10 — factores + override de canal */
.canal-factores{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:10px}
.canal-factores:empty,.canal-override:empty{display:none}
.canal-factores__lbl{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ink4);margin-right:2px}
.canal-factor{font-size:11px;font-weight:600;color:var(--canal);background:#fff;border:1px solid var(--canal-b);padding:2px 9px;border-radius:999px}
.canal-override{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:12px;padding-top:12px;border-top:1px solid var(--canal-b)}
.canal-chip{font-size:11px;padding:4px 11px}
.canal-chip--rec:not(.sel)::after{content:" \2605";color:var(--canal);font-size:9px}
.canal-nota{font-size:11px;color:var(--ink4);line-height:1.5;margin-top:10px}

/* PROP BADGE */
.prop-badge{display:none;background:var(--bg2);border:1px solid var(--line2);border-radius:var(--rs);padding:9px 14px;margin-bottom:14px;font-size:12px;color:var(--ink2);align-items:center;gap:8px}
.prop-badge.show{display:flex}
.prop-badge__texto{flex:1;font-style:italic;line-height:1.5}

/* COMP */
.comp-trigger{width:100%;display:flex;align-items:center;gap:12px;padding:13px 16px;background:var(--opt-l);border:1px solid var(--opt-b);border-radius:var(--r);cursor:pointer;text-align:left;transition:background .15s;margin-bottom:12px;font-family:inherit}
.comp-trigger:hover{background:#fef9ee}
.comp-trigger__info{flex:1}
.comp-trigger__title{font-size:13px;font-weight:600;color:var(--opt)}
.comp-trigger__sub{font-size:11px;color:var(--opt);opacity:.7;margin-top:2px}
.comp-trigger__arrow{font-size:10px;color:var(--opt);transition:transform .22s;flex-shrink:0;opacity:.6}
.comp-trigger.open{border-bottom-left-radius:0;border-bottom-right-radius:0;margin-bottom:0}
.comp-trigger.open .comp-trigger__arrow{transform:rotate(180deg)}
.comp-body{display:none;background:var(--bg);border:1px solid var(--opt-b);border-top:none;border-bottom-left-radius:var(--r);border-bottom-right-radius:var(--r);padding:16px;margin-bottom:12px}
.comp-body.open{display:block}

/* PROMPT */
.prompt-selectors{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px}
@media(max-width:440px){.prompt-selectors{grid-template-columns:1fr}}
.prompt-sel-lbl{font-size:11px;font-weight:500;color:var(--ink3);margin-bottom:4px}
.prompt-box{background:var(--bg2);border:1px solid var(--line);border-radius:var(--rs);padding:11px 13px;font-size:11px;color:var(--ink3);line-height:1.75;max-height:180px;overflow-y:auto;margin-bottom:10px;font-family:monospace;white-space:pre-wrap}

/* ESTRATEGIA BASE */
.strat-header{padding:8px 0 24px;border-bottom:1px solid var(--line);margin-bottom:20px}
.strat-header__label{font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ink4);margin-bottom:8px}
.strat-header__title{font-size:clamp(22px,4vw,30px);font-weight:700;letter-spacing:-.03em;color:var(--ink);margin-bottom:8px;line-height:1.1}
.strat-header__sub{font-size:13px;color:var(--ink3);line-height:1.65;max-width:500px}
.strat-block{background:var(--bg);border:1px solid var(--line);border-radius:var(--r);margin-bottom:10px;overflow:hidden}
.strat-block--prop{border-left:3px solid var(--ink)}
.strat-block__hd{padding:12px 18px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:10px;background:var(--bg2)}
.strat-block__num{font-size:10px;font-weight:700;color:var(--ink4);letter-spacing:.08em}
.strat-block__title{font-size:13px;font-weight:600;color:var(--ink);letter-spacing:-.01em}
.strat-block__bd{padding:16px 18px}
.strat-para{font-size:13px;color:var(--ink2);line-height:1.7;padding:12px 0}
.strat-meta-chips{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}
.strat-meta-chip{font-size:12px;padding:4px 12px;border-radius:20px;background:var(--bg3);border:1px solid var(--line2);color:var(--ink2);font-weight:500}
.strat-meta-chip.hi{background:var(--ins-l);border-color:var(--ins-b);color:var(--ins)}
.strat-prop-full{font-size:15px;font-weight:400;color:var(--ink);line-height:1.75;font-style:italic;padding:8px 0 14px;border-bottom:1px solid var(--line);margin-bottom:14px}

/* EMBUDO VISUAL */
.strat-funnel{display:flex;flex-direction:column;align-items:center;gap:2px;margin-bottom:16px}
.strat-funnel__stage{width:100%;display:flex;justify-content:center}
.strat-funnel__stage:nth-child(1) .strat-funnel__bar{width:100%}
.strat-funnel__stage:nth-child(2) .strat-funnel__bar{width:80%}
.strat-funnel__stage:nth-child(3) .strat-funnel__bar{width:62%}
.strat-funnel__stage:nth-child(4) .strat-funnel__bar{width:46%}
.strat-funnel__stage:nth-child(5) .strat-funnel__bar{width:32%}
.strat-funnel__bar{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;border-radius:var(--rs);gap:8px}
.strat-funnel__stage:nth-child(1) .strat-funnel__bar{background:#e8e8e8}
.strat-funnel__stage:nth-child(2) .strat-funnel__bar{background:#dedede}
.strat-funnel__stage:nth-child(3) .strat-funnel__bar{background:#d4d4d4}
.strat-funnel__stage:nth-child(4) .strat-funnel__bar{background:#cacaca}
.strat-funnel__stage--final .strat-funnel__bar{background:var(--ink)!important}
.strat-funnel__label{font-size:12px;color:var(--ink2);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.strat-funnel__stage--final .strat-funnel__label{color:rgba(255,255,255,.75)}
.strat-funnel__num{font-size:16px;font-weight:700;color:var(--ink);letter-spacing:-.02em;white-space:nowrap;flex-shrink:0}
.strat-funnel__stage--final .strat-funnel__num{color:#fff;font-size:18px}
.strat-funnel-title{font-size:11px;font-weight:600;color:var(--ink4);text-transform:uppercase;letter-spacing:.08em;margin-bottom:14px}

/* STRAT KPIS */
.strat-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:16px 18px}
@media(max-width:480px){.strat-kpis{grid-template-columns:repeat(2,1fr)}}
.strat-kpi{background:var(--bg2);border:1px solid var(--line);border-radius:var(--rs);padding:12px;text-align:center}
.strat-kpi--main{background:var(--bg3);border-color:var(--line2)}
.strat-kpi__num{font-size:20px;font-weight:700;color:var(--ink);letter-spacing:-.03em;line-height:1;margin-bottom:5px}
.strat-kpi__lbl{font-size:11px;color:var(--ink3);line-height:1.3}

/* CHECKLIST */
.auto-ck-item{display:flex;align-items:center;gap:12px;padding:10px 18px;border-bottom:1px solid var(--line)}
.auto-ck-item:last-of-type{border:none}
.auto-ck__dot{width:8px;height:8px;border-radius:50%;background:var(--line2);flex-shrink:0;transition:background .25s}
.auto-ck-item.done .auto-ck__dot{background:var(--ok)}
.auto-ck__text{flex:1;font-size:13px;color:var(--ink3)}
.auto-ck-item.done .auto-ck__text{color:var(--ink)}
.auto-ck__status{font-size:10px;font-weight:600;padding:2px 8px;border-radius:8px;white-space:nowrap}
.auto-ck-item.done .auto-ck__status{background:var(--ok-l);color:var(--ok)}
.auto-ck-item.miss .auto-ck__status{background:var(--bg3);color:var(--ink4)}
.strat-ck-score{padding:12px 18px;font-size:12px;color:var(--ink3);display:flex;align-items:center;gap:8px;background:var(--bg2);border-top:1px solid var(--line)}
.strat-ck-badge{font-size:11px;font-weight:600;padding:2px 9px;border-radius:8px;background:var(--bg3);color:var(--ink3)}
.strat-ck-badge.complete{background:var(--ok-l);color:var(--ok)}

/* ACCIONES */
.strat-actions{margin-top:18px}
.strat-actions__hint{font-size:12px;color:var(--ink4);margin-bottom:8px;line-height:1.45}
.strat-actions__primary{display:flex;gap:8px;margin-bottom:10px}
@media(max-width:440px){.strat-actions__primary{flex-direction:column}}
.btn-outline-dark{background:transparent;color:var(--ink);border:1.5px solid var(--ink);font-family:inherit;font-size:13px;font-weight:500;padding:10px 20px;border-radius:var(--rs);cursor:pointer;transition:all .18s}
.btn-outline-dark:hover{background:var(--ink);color:#fff}
.strat-actions__nav{display:flex;justify-content:space-between;padding-top:12px;border-top:1px solid var(--line)}

/* NAV */
.nav{display:flex;justify-content:space-between;align-items:center;margin-top:20px;padding-top:18px;border-top:1px solid var(--line);flex-wrap:wrap;gap:10px}
.nav-hint{font-size:12px;color:var(--ink4)}

/* BUTTONS */
.btn{font-family:inherit;font-size:13px;font-weight:500;padding:10px 20px;border-radius:var(--rs);cursor:pointer;transition:all .18s;border:none}
.btn-dark{background:var(--ink);color:#fff}.btn-dark:hover{opacity:.85}
.btn-cta{background:var(--cta-mid);color:#fff}.btn-cta:hover{background:var(--cta)}
.btn-ghost{background:var(--bg2);color:var(--ink2);border:1px solid var(--line)}.btn-ghost:hover{border-color:var(--line2);background:var(--bg3)}
.btn-sm{padding:7px 14px;font-size:12px}
.btn-copy{background:var(--bg2);color:var(--ink3);border:1px solid var(--line);font-size:12px;padding:7px 14px}
.btn-copy.copied{background:var(--ok-l);color:var(--ok);border-color:var(--ok-b)}

/* TOAST */
.toast{position:fixed;bottom:22px;right:22px;background:var(--ink);color:#fff;padding:11px 18px;border-radius:var(--rs);font-size:13px;font-weight:500;opacity:0;transform:translateY(8px);transition:all .28s;pointer-events:none;z-index:999;max-width:300px}
.toast.show{opacity:1;transform:translateY(0)}

/* PDF OVERLAY */
.pdf-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:500;align-items:center;justify-content:center;flex-direction:column;gap:12px}
.pdf-overlay.show{display:flex}
.pdf-overlay .loading-spinner{border-color:rgba(255,255,255,.3);border-top-color:#fff}
.pdf-overlay .loading-text{color:#fff}

/* MODAL NOMBRE */
.modal-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:600;align-items:center;justify-content:center;padding:20px}
.modal-overlay.open{display:flex}
.modal-box{width:100%;max-width:440px;background:var(--bg);border-radius:var(--r);border:1px solid var(--line);box-shadow:0 8px 32px rgba(0,0,0,.18);overflow:hidden}
.modal-box__hd{padding:18px 22px 0;border-bottom:none}
.modal-box__title{font-size:16px;font-weight:600;color:var(--ink);letter-spacing:-.01em}
.modal-box__body{padding:14px 22px 0}
.modal-box__desc{font-size:13px;color:var(--ink3);line-height:1.6;margin-bottom:12px}
.modal-box__input{font-family:inherit;width:100%;padding:10px 13px;border:1.5px solid var(--input-border);border-radius:var(--rs);font-size:14px;background:var(--input-bg);color:var(--ink);transition:border-color .18s}
.modal-box__input:focus{outline:none;border-color:var(--ink3);box-shadow:0 0 0 3px rgba(0,0,0,.06)}
.modal-box__footer{padding:16px 22px;display:flex;justify-content:flex-end;gap:8px}

/* ═════════════════════════════════════════════════════════════
   v37 (Bloque 2B) — Panel de estrategias mejorado
   ═════════════════════════════════════════════════════════════ */

/* Toolbar del panel: búsqueda + filtros */
.sp-toolbar{display:flex;flex-direction:column;gap:10px;padding:0 0 14px;border-bottom:1px solid var(--line);margin-bottom:14px}
.sp-search{position:relative}
.sp-search input{width:100%;font-family:inherit;font-size:13px;padding:9px 12px 9px 34px;border:1px solid var(--line);border-radius:var(--rs);background:var(--bg);color:var(--ink);outline:none;transition:border-color .15s}
.sp-search input:focus{border-color:var(--ink4)}
.sp-search::before{content:"\1F50D";position:absolute;left:11px;top:50%;transform:translateY(-50%);font-size:13px;opacity:.5;pointer-events:none}
.sp-filters{display:flex;gap:6px;flex-wrap:wrap}
.sp-filter{font-size:11px;font-weight:600;padding:6px 11px;border-radius:6px;border:1px solid var(--line);background:var(--bg);color:var(--ink4);cursor:pointer;transition:all .15s}
.sp-filter:hover{border-color:var(--line2);color:var(--ink3)}
.sp-filter.on{background:var(--ink);color:var(--bg);border-color:var(--ink)}
.sp-count{margin-left:auto;font-size:11px;color:var(--ink5);align-self:center}

/* Card mejorada */
.strat-card{position:relative;align-items:center}
.strat-card.is-active{border-color:var(--primary);background:var(--phase0-l)}
.strat-card.is-active .strat-card__name{color:var(--cta)}
.strat-card__order{display:flex;flex-direction:column;gap:1px;flex-shrink:0;margin-right:2px}
.strat-card__order-btn{width:18px;height:14px;border:none;background:none;cursor:pointer;color:var(--ink5);font-size:10px;line-height:1;padding:0;border-radius:3px;transition:all .12s;display:flex;align-items:center;justify-content:center}
.strat-card__order-btn:hover:not(:disabled){background:var(--bg3);color:var(--ink)}
.strat-card__order-btn:disabled{opacity:.25;cursor:not-allowed}

.strat-card__name-row{display:flex;align-items:center;gap:6px;margin-bottom:3px}
.strat-card__name-row .strat-card__name{margin-bottom:0;flex:1;min-width:0}
.strat-card__active-badge{font-size:9px;font-weight:700;padding:2px 6px;border-radius:4px;background:var(--cta);color:#fff;letter-spacing:.04em;text-transform:uppercase;flex-shrink:0}

.strat-card__name-edit{flex:1;font-family:inherit;font-size:13px;font-weight:600;color:var(--ink);background:var(--bg);border:1px solid var(--cta);border-radius:5px;padding:3px 7px;outline:none;min-width:0;width:100%}

.strat-card__meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.strat-card__meta-sep{color:var(--line2)}

/* Kebab menu */
.strat-card__kebab{position:relative;flex-shrink:0;margin-left:auto}
.strat-card__kebab-btn{width:26px;height:26px;border-radius:5px;border:none;background:none;cursor:pointer;color:var(--ink4);font-size:16px;display:flex;align-items:center;justify-content:center;transition:all .12s;line-height:0;padding:0}
.strat-card__kebab-btn:hover{background:var(--bg3);color:var(--ink)}
.strat-card__menu{position:absolute;right:0;top:calc(100% + 4px);min-width:180px;background:var(--bg);border:1px solid var(--line);border-radius:8px;box-shadow:0 8px 24px rgba(0,0,0,.10);padding:5px;z-index:50;display:none}
.strat-card__menu.open{display:block}
.strat-card__menu-item{display:flex;align-items:center;gap:9px;width:100%;padding:8px 10px;border:none;background:none;font-family:inherit;font-size:13px;color:var(--ink);cursor:pointer;border-radius:5px;text-align:left;transition:background .1s}
.strat-card__menu-item:hover{background:var(--bg3)}
.strat-card__menu-item.danger{color:var(--err)}
.strat-card__menu-item.danger:hover{background:var(--err-l)}
.strat-card__menu-sep{height:1px;background:var(--line);margin:4px 0}
.strat-card__menu-ico{font-size:14px;width:16px;text-align:center;opacity:.7}

/* Quita los botones individuales — ahora viven en el menu */
.strat-card__del-legacy,.strat-card__export-legacy{display:none}

/* Modal confirmación destructiva */
.confirm-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);display:none;align-items:center;justify-content:center;z-index:200;padding:16px}
.confirm-overlay.open{display:flex}
.confirm-modal{background:var(--bg);border-radius:12px;max-width:380px;width:100%;padding:24px;box-shadow:0 12px 40px rgba(0,0,0,.18)}
.confirm-modal__title{font-size:16px;font-weight:700;color:var(--ink);margin-bottom:8px}
.confirm-modal__body{font-size:13px;color:var(--ink3);line-height:1.55;margin-bottom:18px}
.confirm-modal__actions{display:flex;gap:8px;justify-content:flex-end}
.confirm-modal__btn{font-family:inherit;font-size:13px;font-weight:600;padding:9px 16px;border-radius:7px;cursor:pointer;border:1px solid var(--line)}
.confirm-modal__btn.cancel{background:var(--bg);color:var(--ink3)}
.confirm-modal__btn.cancel:hover{background:var(--bg3)}
.confirm-modal__btn.danger{background:var(--err);color:#fff;border-color:var(--err)}
.confirm-modal__btn.danger:hover{filter:brightness(.95)}

/* Mobile: kebab más grande, search más alta */
@media (max-width:600px){
  .strat-card__kebab-btn{width:32px;height:32px;font-size:18px}
  .strat-card__order-btn{width:22px;height:18px;font-size:11px}
  .strat-card__menu{min-width:200px}
  .strat-card__menu-item{padding:11px 12px;font-size:14px}
}

/* ═════════════════════════════════════════════════════════════
   v39 (Bloque 5) — Banners de estado: offline y efímero
   ═════════════════════════════════════════════════════════════ */

/* Banner offline: fijo arriba, ámbar */
.offline-banner{
  position:fixed;top:0;left:0;right:0;z-index:300;
  background:#fff7ed;color:#9a3412;border-bottom:1px solid #fed7aa;
  padding:9px 16px;font-size:13px;font-weight:600;
  display:none;align-items:center;justify-content:center;gap:8px;
  text-align:center;
}
.offline-banner.show{display:flex}
.offline-banner__dot{
  width:8px;height:8px;border-radius:50%;background:#ea580c;
  animation:offline-pulse 1.4s ease-in-out infinite;flex-shrink:0;
}
@keyframes offline-pulse{
  0%,100%{opacity:1;transform:scale(1)}
  50%{opacity:.5;transform:scale(.85)}
}
body.has-offline-banner{padding-top:36px}

/* Banner efímero: informa que el trabajo en esa sección no se guarda */
.ephemeral-banner{
  background:#fffbeb;color:#854d0e;border:1px solid #fde68a;
  border-radius:8px;padding:10px 14px;margin:0 0 16px;
  font-size:12.5px;line-height:1.5;
  display:flex;align-items:flex-start;gap:10px;
}
.ephemeral-banner__ico{flex-shrink:0;font-size:14px;line-height:1.4;opacity:.85}
.ephemeral-banner__body{flex:1}
.ephemeral-banner__title{font-weight:700;margin-bottom:2px}
.ephemeral-banner__close{
  background:none;border:none;color:#854d0e;cursor:pointer;
  font-size:16px;line-height:1;padding:0 4px;opacity:.6;flex-shrink:0;
}
.ephemeral-banner__close:hover{opacity:1}
.ephemeral-banner.hidden{display:none}

/* ═══════════════════════════════════════════════════════════════
   SIAR Pro Sobrio — Mejoras visuales v40.4
═══════════════════════════════════════════════════════════════ */

/* ── Jerarquía de botones ─────────────────────────────────── */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;
  font-family:inherit;font-size:13px;font-weight:600;
  padding:9px 16px;border-radius:var(--rs);cursor:pointer;
  border:1.5px solid transparent;transition:all .15s;line-height:1;
  white-space:nowrap;
}
/* Primario */
.btn,.btn-primary{background:var(--primary);color:#fff;border-color:var(--primary)}
.btn:hover,.btn-primary:hover{background:var(--primary-hover);border-color:var(--primary-hover)}
/* Secundario */
.btn-secondary{background:var(--surface);color:var(--ink2);border-color:var(--line2)}
.btn-secondary:hover{background:var(--surface-2);border-color:var(--ink4)}
/* Terciario */
.btn-ghost,.btn-sm{background:none;color:var(--ink3);border-color:var(--line)}
.btn-ghost:hover,.btn-sm:hover{background:var(--surface-2);color:var(--ink2)}
/* Dark */
.btn-dark{background:var(--ink);color:#fff;border-color:var(--ink)}
.btn-dark:hover{background:var(--ink2);border-color:var(--ink2)}

/* ── Sidebar: estado activo premium (v40.9) ─────────────────
   Riel-pastilla animado + punto concéntrico por fase. Sustituye
   el border-left + fondo pálido genérico por una marca propia.
   color-mix da el tinte; los -l quedan como fallback. */
.phase-item{transition:background .15s, transform .15s}
.phase-item::before{
  content:"";position:absolute;left:3px;top:50%;
  transform:translateY(-50%) scaleY(0);transform-origin:center;
  width:3px;height:58%;border-radius:3px;background:var(--ink3);
  transition:transform .2s cubic-bezier(.34,1.2,.64,1);
}
.phase-item.active{background:var(--surface-3);border-left:none;padding-left:10px}
.phase-item.active::before{transform:translateY(-50%) scaleY(1)}
.phase-item:hover:not(.locked):not(.active){transform:translateX(2px)}
.phase-item.active .phase-item__name{font-weight:700}
.phase-item.active .phase-item__dot{box-shadow:0 0 0 3px var(--surface-2)}

/* Fase 0 — azul profundo */
.phase-item.fase0.active{background:var(--phase0-l);background:color-mix(in srgb,var(--phase0) 9%,var(--surface))}
.phase-item.fase0.active::before{background:var(--phase0)}
.phase-item.fase0.active .phase-item__name{color:var(--phase0)}
.phase-item.fase0.active .phase-item__num{color:var(--phase0);opacity:.8}
.phase-item.fase0.active .phase-item__dot{background:var(--phase0);box-shadow:0 0 0 3px color-mix(in srgb,var(--phase0) 18%,var(--surface))}

/* Fase 1 — teal */
.phase-item.fase1.active{background:var(--phase1-l);background:color-mix(in srgb,var(--phase1) 9%,var(--surface))}
.phase-item.fase1.active::before{background:var(--phase1)}
.phase-item.fase1.active .phase-item__name{color:var(--phase1)}
.phase-item.fase1.active .phase-item__num{color:var(--phase1);opacity:.8}
.phase-item.fase1.active .phase-item__dot{background:var(--phase1);box-shadow:0 0 0 3px color-mix(in srgb,var(--phase1) 18%,var(--surface))}

/* Fase 2 — índigo */
.phase-item.fase2.active{background:var(--phase2-l);background:color-mix(in srgb,var(--phase2) 9%,var(--surface))}
.phase-item.fase2.active::before{background:var(--phase2)}
.phase-item.fase2.active .phase-item__name{color:var(--phase2)}
.phase-item.fase2.active .phase-item__num{color:var(--phase2);opacity:.8}
.phase-item.fase2.active .phase-item__dot{background:var(--phase2);box-shadow:0 0 0 3px color-mix(in srgb,var(--phase2) 18%,var(--surface))}

/* Fase 3 — verde */
.phase-item.fase3.active{background:var(--phase3-l);background:color-mix(in srgb,var(--phase3) 9%,var(--surface))}
.phase-item.fase3.active::before{background:var(--phase3)}
.phase-item.fase3.active .phase-item__name{color:var(--phase3)}
.phase-item.fase3.active .phase-item__num{color:var(--phase3);opacity:.8}
.phase-item.fase3.active .phase-item__dot{background:var(--phase3);box-shadow:0 0 0 3px color-mix(in srgb,var(--phase3) 18%,var(--surface))}

/* Activos — ámbar */
.phase-item.activos.active{background:color-mix(in srgb,var(--activos-c) 9%,var(--surface))}
.phase-item.activos.active::before{background:var(--activos-c)}
.phase-item.activos.active .phase-item__name{color:var(--activos-c)}
.phase-item.activos.active .phase-item__num{color:var(--activos-c);opacity:.8}
.phase-item.activos.active .phase-item__dot{background:var(--activos-c);box-shadow:0 0 0 3px color-mix(in srgb,var(--activos-c) 18%,var(--surface))}

/* Profundizar — violeta */
.phase-item.profund.active{background:color-mix(in srgb,var(--profundizar-c) 9%,var(--surface))}
.phase-item.profund.active::before{background:var(--profundizar-c)}
.phase-item.profund.active .phase-item__name{color:var(--profundizar-c)}
.phase-item.profund.active .phase-item__num{color:var(--profundizar-c);opacity:.8}
.phase-item.profund.active .phase-item__dot{background:var(--profundizar-c);box-shadow:0 0 0 3px color-mix(in srgb,var(--profundizar-c) 18%,var(--surface))}

/* Fallback sin fase */
.phase-item.active::before{background:var(--ink)}

/* Dots de fases en reposo */
.phase-item.fase0 .phase-item__dot{background:var(--phase0-b)}
.phase-item.fase1 .phase-item__dot{background:var(--phase1-b)}
.phase-item.fase2 .phase-item__dot{background:var(--phase2-b)}
.phase-item.fase3 .phase-item__dot{background:var(--phase3-b)}

/* Respeta reduce-motion */
@media (prefers-reduced-motion: reduce){
  .phase-item, .phase-item::before{transition:none}
  .phase-item:hover:not(.locked):not(.active){transform:none}
}

/* ── Headers de fase con badge de color ────────────────────── */
.hdr__phase{
  display:inline-flex;align-items:center;gap:5px;
  font-size:10px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  padding:3px 10px;border-radius:20px;
  margin-bottom:12px;
}
/* Por defecto (Fase 0) */
#fase0-content .hdr__phase{background:var(--phase0-l);color:var(--phase0);border:1px solid var(--phase0-b)}
#fase1-content .hdr__phase{background:var(--phase1-l);color:var(--phase1);border:1px solid var(--phase1-b)}
#fase2-content .hdr__phase{background:var(--phase2-l);color:var(--phase2);border:1px solid var(--phase2-b)}
.activos-hdr__label{background:var(--activos-l);color:var(--activos-c);border-radius:20px;padding:3px 10px;display:inline-block}
.prof-hdr__label{background:var(--profundizar-l);color:var(--profundizar-c);border-radius:20px;padding:3px 10px;display:inline-block}

/* ── Steps/Tabs: diferenciar de chips ──────────────────────── */
/* Fase 0 steps */
#fase0-content .step.on{background:var(--phase0);color:#fff;border-color:var(--phase0)}
#fase1-content .step.on{background:var(--phase1);color:#fff;border-color:var(--phase1)}
.step{transition:background .15s,color .15s;font-weight:500}
.step:hover:not(.on){background:var(--surface-3);color:var(--ink2)}

/* Activos tabs */
.activos-tab.at-on{background:var(--activos-c) !important;color:#fff !important}
.activos-tab:hover:not(.at-on){background:var(--surface-3);color:var(--ink2)}

/* ── Fase 2 TRACK identity ─────────────────────────────────── */
#fase2-content .f2-tab-btn.on{
  background:var(--phase2);
  color:#fff;
  border-bottom-color:var(--phase2);
}
#fase2-content .f2-tab-btn.on .f2-tab-btn__letter{background:rgba(255,255,255,.25);color:#fff}
#fase2-content .f2-tab-btn:hover:not(.on){color:var(--phase2);background:var(--phase2-l)}
#fase2-content .f2-tab-nav{border-bottom-color:var(--phase2-b)}

/* TRACK matrices: más legibles */
.track-matrix th{
  background:var(--surface-2);
  color:var(--ink2);
  font-size:11px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.04em;
  padding:9px 10px;
}
.track-matrix td{padding:8px 9px;border-color:var(--line)}
.track-matrix tr:hover td{background:var(--phase2-l)}
.track-matrix td input,.track-matrix td textarea{
  background:transparent;
  border-radius:4px;
}
.track-matrix td input:focus,.track-matrix td textarea:focus{
  outline:1.5px solid var(--phase2);
  background:rgba(79,70,229,.03);
}
.track-matrix{border-radius:var(--rs);overflow:hidden;box-shadow:0 1px 3px rgba(15,23,42,.04)}

/* Botón guardar TRACK destacado */
#fase2-content .strat-namebar .btn,
#fase2-content .strat-namebar .btn-primary{
  background:var(--phase2);
  border-color:var(--phase2);
  color:#fff;
}
#fase2-content .strat-namebar .btn:hover,
#fase2-content .strat-namebar .btn-primary:hover{
  background:#4338CA;
  border-color:#4338CA;
}

/* ── Chips: más sutiles, distintos de tabs ─────────────────── */
.f2-chip{
  font-size:12px;
  padding:5px 12px;
  border-radius:20px;
  border:1.5px solid var(--line2);
  background:var(--surface);
  color:var(--ink3);
  cursor:pointer;
  font-weight:500;
  transition:all .15s;
  font-family:inherit;
  line-height:1.4;
}
.f2-chip:hover{border-color:var(--phase2);color:var(--phase2);background:var(--phase2-l)}
.f2-chip.sel{background:var(--phase2);border-color:var(--phase2);color:#fff}

/* Fase 1 chips */
#fase1-content .chip.sel{background:var(--phase1);border-color:var(--phase1)}
#fase1-content .f2-chip.sel{background:var(--phase1);border-color:var(--phase1)}

/* ── Cards: más separadas del fondo ────────────────────────── */
.gen-block{
  background:var(--surface);
  border:1px solid var(--line);
  border-radius:var(--r);
  margin-bottom:12px;
  overflow:hidden;
  box-shadow:0 1px 3px rgba(15,23,42,.05);
}
.gen-block__hd{background:var(--surface-2);padding:12px 16px}

/* ── Base selector: mejorado ─────────────────────────────── */
.base-selector{
  background:var(--phase0-l);
  border:1.5px solid var(--phase0-b);
  border-radius:var(--r);
  padding:14px 16px;
}
.base-selector__label{color:var(--phase0);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em}
.base-selector__select:focus{border-color:var(--phase0);box-shadow:0 0 0 3px rgba(30,58,95,.08)}

/* Fase 1 base selector */
#fase1-content .base-selector{background:var(--phase1-l);border-color:var(--phase1-b)}
#fase1-content .base-selector__label{color:var(--phase1)}
#fase1-content .base-inherited__tag{border-color:var(--phase1-b);color:var(--phase1)}

/* Fase 2 selector */
#fase2-content .base-selector{background:var(--phase2-l);border-color:var(--phase2-b)}
#fase2-content .base-selector__label{color:var(--phase2)}
#fase2-content .base-inherited__tag{border-color:var(--phase2-b);color:var(--phase2)}

/* ── f1-prereq styling ────────────────────────────────────── */
.f1-prereq{
  background:var(--warn-l);
  border:1.5px solid var(--warn-b);
  border-radius:var(--r);
  padding:14px 16px;
  display:flex;
  align-items:flex-start;
  gap:12px;
  margin-bottom:16px;
}
.f1-prereq__icon{color:var(--warn);font-size:18px;flex-shrink:0;margin-top:1px}
.f1-prereq__text{font-size:13px;color:var(--ink2);line-height:1.5;flex:1}
.f1-prereq__btn{
  font-family:inherit;font-size:12px;font-weight:600;
  padding:6px 12px;border-radius:var(--rs);cursor:pointer;
  background:var(--warn);color:#fff;border:none;
  flex-shrink:0;align-self:flex-start;
  transition:opacity .15s;
}
.f1-prereq__btn:hover{opacity:.88}

/* ── f2-ctx-grid mejorado ─────────────────────────────────── */
.f2-ctx-grid{border:1.5px solid var(--phase2-b)}
.f2-ctx-lbl{color:var(--phase2);opacity:.75}
.f2-section-hd{
  font-size:11px;font-weight:700;
  color:var(--ink3);
  text-transform:uppercase;letter-spacing:.06em;
  margin:20px 0 10px;
  padding-bottom:7px;
  border-bottom:1.5px solid var(--line);
}

/* ── Cadencia mejoras ─────────────────────────────────────── */
.cadencia-hd-cell{color:var(--ink3);font-weight:700}
.cadencia-row{border-bottom:1px solid var(--line)}
.cadencia-cell input:focus,.cadencia-cell textarea:focus{
  outline:1.5px solid var(--phase2);
  background:rgba(79,70,229,.03);
}

/* ── Checklist items ──────────────────────────────────────── */
.track-check-item.on{
  border-color:var(--ok);
  background:var(--ok-l);
}
.track-check-box{border-color:var(--line2)}
.track-check-item.on .track-check-box{border-color:var(--ok);color:var(--ok)}
.track-check-item.on .track-check-box::after{color:var(--ok)}

/* ── Baja items mejorado ──────────────────────────────────── */
.f2-baja-item.on{
  border-color:var(--err);
  background:var(--err-l);
  color:var(--err);
}

/* ── Strat namebar: más limpio ────────────────────────────── */
.strat-namebar{
  border-bottom:1.5px solid var(--line);
  padding:12px 0 14px;
  margin-bottom:20px;
  gap:10px;
}
.strat-namebar__input{font-size:15px;font-weight:600;color:var(--ink);letter-spacing:-.01em}
.strat-namebar__new{
  font-size:12px;color:var(--ink3);
  background:none;border:1px solid var(--line);
  border-radius:var(--rs);padding:5px 10px;
  cursor:pointer;font-family:inherit;
  transition:all .15s;
}
.strat-namebar__new:hover{background:var(--surface-2);border-color:var(--line2);color:var(--ink2)}

/* ── Callouts mejorados ───────────────────────────────────── */
.callout.info{background:var(--phase0-l);border-color:var(--phase0-b);color:var(--phase0)}
.callout.ok{background:var(--ok-l);border-color:var(--ok-b);color:var(--ok)}
.callout.warn{background:var(--warn-l);border-color:var(--warn-b);color:var(--warn)}

/* ── SP filters mejorados ─────────────────────────────────── */
.sp-filter.on{background:var(--primary);border-color:var(--primary)}
.strat-card.is-active{border-color:var(--primary);background:var(--phase0-l)}
.strat-card.is-active .strat-card__name{color:var(--primary)}

/* ── Progreso mejorado ────────────────────────────────────── */
.progreso-section{background:var(--primary)}
.progreso-item__check.done{background:var(--ok)}

/* ── Responsive: tabs con scroll ─────────────────────────── */
.f2-tab-nav{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-wrap:nowrap}
.f2-tab-nav::-webkit-scrollbar{display:none}
.f2-tab-btn{white-space:nowrap;flex-shrink:0}

/* Sidebar mobile */
@media(max-width:768px){
  .sidebar.open{background:var(--surface-2)}
}

/* ═══════════════════════════════════════════════════════════════
   v40.6 — Pulido UX/UI
═══════════════════════════════════════════════════════════════ */

/* ── 1. Ancho útil por módulo ─────────────────────────────── */
.main-inner.phase-fase2  { max-width: 980px; }
.main-inner.phase-activos,
.main-inner.phase-prof   { max-width: 920px; }

/* ── 2. Contraste de textos secundarios ───────────────────── */
.f__hint                 { color: var(--ink3); font-size: 12px; line-height: 1.6; }
.card__desc              { color: var(--ink3); }
.hdr__sub                { color: var(--ink2); font-size: 14px; }
.f2-tab-hd__sub          { color: var(--ink2); font-size: 13px; line-height: 1.6; }
.f2-field-hint           { color: var(--ink3); font-size: 12px; }
.base-inherited__note    { color: var(--ink3); font-size: 12px; }
.empty-state             { color: var(--ink3); }
.f2-section-hd           { color: var(--ink2); }

/* ── 3. Sticky TRACK tab nav ──────────────────────────────── */
#fase2-content .f2-tab-nav {
  position: sticky;
  top: 0;
  z-index: 40;
  background: var(--bg);
  padding: 6px 0 0;
  border-bottom: 1.5px solid var(--phase2-b);
  box-shadow: 0 2px 6px rgba(15,23,42,.05);
  margin-bottom: 16px;
}

/* ── 4. Fase 1 — alineación con --phase1 ─────────────────── */
#fase1-content .proc-sub-nav {
  border-bottom: 1.5px solid var(--phase1-b);
}
#fase1-content .proc-sub.on,
#fase1-content .btn-proc-sub.on,
#fase1-content .proc-sub-btn.on {
  background: var(--phase1);
  color: #fff;
  border-color: var(--phase1);
}
#fase1-content .btn-generate {
  background: var(--phase1);
  border-color: var(--phase1);
}
#fase1-content .btn-generate:hover { filter: brightness(.92); }
#fase1-content .btn-primary {
  background: var(--phase1);
  border-color: var(--phase1);
}
#fase1-content .btn-primary:hover { filter: brightness(.92); }
/* PROC layer letter bubble */
#fase1-content .f1-layer.on .f1-layer__letter,
#fase1-content .f1-layer.on .proc-letter {
  background: var(--phase1);
}
/* Step tabs activo en Fase 1 */
#fase1-content .proc-sub-nav .proc-sub.on {
  background: var(--phase1);
  color: #fff;
  border-bottom: 2px solid var(--phase1);
}
/* Canvas sections on */
#fase1-content .proc-sec.on { border-left-color: var(--phase1); }

/* ── 5. Chips: más sutiles que tabs ──────────────────────── */
.chip {
  font-size: 12px;
  padding: 4px 12px;
  border-radius: 20px;
  border: 1px solid var(--line2);
  background: var(--surface);
  color: var(--ink3);
  font-weight: 500;
}
.chip:hover:not(.sel) {
  border-color: var(--ink3);
  color: var(--ink2);
  background: var(--surface-2);
}
.chip.sel {
  background: var(--primary);
  border-color: var(--primary);
  color: #fff;
  font-weight: 600;
}

.f2-chip {
  font-size: 12px;
  padding: 4px 11px;
  border-radius: 16px;
  border: 1px solid var(--line2);
  background: var(--surface);
  color: var(--ink3);
  font-weight: 500;
}
.f2-chip:hover { border-color: var(--phase2); color: var(--phase2); background: var(--phase2-l); }
.f2-chip.sel { background: var(--phase2); border-color: var(--phase2); color: #fff; font-weight: 600; }

/* ── 6. Matrices: más espacio y overflow seguro ──────────── */
.track-matrix th {
  background: var(--surface-2);
  font-size: 11px;
  padding: 9px 10px;
  border-color: var(--line);
}
.track-matrix td {
  padding: 7px 9px;
  border-color: var(--line);
}
.track-matrix td textarea { min-height: 44px; }
.track-matrix { border-color: var(--line); }

/* Overflow wrapper para tablas en móvil */
.f2-tab .track-matrix,
#f2-triaje-matrix,
#f2-accion-matrix,
#f2-etapas-matrix,
#f2-objeciones-matrix,
#f2-kpis-matrix {
  min-width: 560px;
}
[style*="overflow-x:auto"] { -webkit-overflow-scrolling: touch; }

/* ── 7. Strat namebar — save badge more visible ──────────── */
.strat-namebar__badge {
  background: var(--ok-l);
  color: var(--ok);
  border: 1px solid var(--ok-b);
  font-size: 11px;
}

/* ── 8. Save status ───────────────────────────────────────── */
.save-status.saving { color: var(--warn); }
.save-status.saved  { color: var(--ok);   }
.save-status.error  { color: var(--err);  }

/* ── 9. Ancho export.css sin romper doc ──────────────────── */
/* (export tiene su propio CSS, no necesita override aquí) */

/* ── 10. Responsive overflow para cadencia ────────────────── */
#f2-cadencia-container { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.cadencia-hd, .cadencia-row { min-width: 480px; }

@media (max-width: 768px) {
  .main-inner.phase-fase2,
  .main-inner.phase-activos,
  .main-inner.phase-prof { max-width: 100%; }
  #fase2-content .f2-tab-nav { top: 52px; }
}

/* f1-track-prep with phase1 */
.f1-track-prep { border-color: var(--phase1); }
.f1-track-prep__hd { background: color-mix(in srgb, var(--phase1) 8%, transparent); border-bottom-color: color-mix(in srgb, var(--phase1) 20%, transparent); }
.f1-track-prep__icon { color: var(--phase1); }
.f1-track-prep__title { color: var(--phase1); }
.f1-track-prep__action { background: var(--phase1-l); border-top-color: var(--phase1-b); }

/* ═══════════════════════════════════════════════════════════════
   v40.12 — Pulido visual Fase 0 / Estrategia Comercial
   Ajustes scopeados para no afectar otras fases.
═══════════════════════════════════════════════════════════════ */

/* Encabezados internos con mayor jerarquía */
#fase0-content .card__hd{
  background:var(--phase0);
  border-bottom:0;
  padding:16px 18px;
}
#fase0-content .card__label{
  color:rgba(255,255,255,.64);
  letter-spacing:.13em;
}
#fase0-content .card__name{
  color:#fff;
}
#fase0-content .card__desc{
  color:rgba(255,255,255,.76);
  max-width:560px;
}

/* Navegación superior de pasos: más editorial y menos genérica */
#fase0-content .steps{
  border-radius:8px;
  border-color:#d6dee8;
  box-shadow:0 1px 2px rgba(15,23,42,.04);
}
#fase0-content .step{
  background:#fff;
}
#fase0-content .step.on{
  background:var(--phase0);
  color:#fff;
  box-shadow:inset 0 -3px 0 rgba(255,255,255,.24);
}
#fase0-content .step.done{
  background:#e9eff6;
  color:var(--phase0);
}

/* Selectores, chips, badges y cards pequeñas: esquinas sobrias */
#fase0-content .chip,
#fase0-content .miedo,
#fase0-content .miedo__badge,
#fase0-content .profile-hint,
#fase0-content .profile-hint__tag,
#fase0-content .ctx-tag,
#fase0-content .use-tag,
#fase0-content .prompt-box,
#fase0-content .calc-input,
#fase0-content .funnel-row,
#fase0-content .funnel-row__rate,
#fase0-content .kpi-card,
#fase0-content .tasas-summary,
#fase0-content .tasas-body,
#fase0-content .canal-block,
#fase0-content .canal-item,
#fase0-content .canal-factor,
#fase0-content .result-highlight,
#fase0-content .strat-block,
#fase0-content .strat-meta-chip,
#fase0-content .strat-kpi,
#fase0-content .strat-ck-badge,
#fase0-content .strat-channel-card{
  border-radius:7px;
}
#fase0-content .chip{
  padding:6px 12px;
  background:#fff;
}
#fase0-content .chip:hover:not(.sel){
  transform:translateY(-1px);
  box-shadow:0 2px 6px rgba(15,23,42,.06);
}
#fase0-content .chip.sel,
#fase0-content .chip[aria-pressed="true"]{
  background:var(--phase0);
  border-color:var(--phase0);
  color:#fff;
  box-shadow:none;
}
#fase0-content .chip--rec:not(.sel){
  background:#fff;
  border-color:var(--phase0-b);
  color:var(--phase0);
}

/* Frases estratégicas: insight/cita del sistema */
#fase0-content .callout--quote{
  background:var(--ink) !important;
  border:1px solid rgba(255,255,255,.08) !important;
  border-left:4px solid var(--phase0-b) !important;
  color:#fff !important;
  font-style:italic;
  line-height:1.75;
  padding:15px 17px;
  box-shadow:0 10px 24px rgba(15,23,42,.10);
}
#fase0-content .callout--quote em,
#fase0-content .callout--quote strong{
  color:#fff;
}

/* Miedos: selección más clara sin verse como alerta */
#fase0-content .miedo{
  background:#fff;
  border-color:#d9c7c7;
}
#fase0-content .miedo:hover{
  background:#fff7f7;
  border-color:var(--miedo-act);
}
#fase0-content .miedo.on{
  background:#fff0f0;
  border-color:var(--miedo-act);
  box-shadow:inset 3px 0 0 var(--miedo-act);
}
#fase0-content .miedo__badge{
  padding:2px 7px;
}

/* Funnel editable: bloques más firmes y tasas menos tipo píldora */
#fase0-content .funnel-row{
  background:#fff;
  border-color:#dbe3ec;
}
#fase0-content .funnel-row--highlight{
  background:#edf2f7;
  border-color:#c5d0dc;
}
#fase0-content .funnel-row__rate{
  padding:2px 6px;
  background:#e5ebf2;
}
#fase0-content .funnel-row.is-bottleneck .funnel-row__rate{
  border-radius:6px;
}

/* Resumen de estrategia: chips y cards más limpios */
#fase0-content .strat-block__hd{
  background:#eef3f8;
}
#fase0-content .strat-meta-chip{
  background:#fff;
  border-color:#d7e0ea;
  padding:5px 10px;
}
#fase0-content .strat-meta-chip.hi{
  background:#eef4ff;
  border-color:#b8cce0;
}
#fase0-content .strat-kpi{
  background:#fff;
  border-color:#dbe3ec;
}
#fase0-content .strat-kpi--main{
  background:#eef3f8;
  border-color:#cbd8e6;
}

/* Embudo del resumen: 7 etapas completas y consistentes */
#fase0-content .strat-funnel{
  gap:4px;
  margin-bottom:18px;
}
#fase0-content .strat-funnel__stage{
  width:100%;
  display:flex;
  justify-content:center;
}
#fase0-content .strat-funnel__bar{
  min-height:42px;
  border-radius:7px;
  padding:10px 15px;
  border:1px solid rgba(15,23,42,.06);
  box-shadow:0 1px 2px rgba(15,23,42,.035);
}
#fase0-content .strat-funnel__stage:nth-child(1) .strat-funnel__bar{width:100%;background:#edf1f5;}
#fase0-content .strat-funnel__stage:nth-child(2) .strat-funnel__bar{width:88%;background:#e2e8ef;}
#fase0-content .strat-funnel__stage:nth-child(3) .strat-funnel__bar{width:76%;background:#d7e0ea;}
#fase0-content .strat-funnel__stage:nth-child(4) .strat-funnel__bar{width:64%;background:#ccd8e4;}
#fase0-content .strat-funnel__stage:nth-child(5) .strat-funnel__bar{width:52%;background:#c1cfdd;}
#fase0-content .strat-funnel__stage:nth-child(6) .strat-funnel__bar{width:40%;background:#b6c6d6;}
#fase0-content .strat-funnel__stage:nth-child(7) .strat-funnel__bar,
#fase0-content .strat-funnel__stage--final .strat-funnel__bar{
  width:30%;
  min-width:210px;
  background:var(--ink) !important;
  border-color:var(--ink);
}
#fase0-content .strat-funnel__label{
  color:var(--ink2);
  font-weight:600;
}
#fase0-content .strat-funnel__num{
  color:var(--ink);
}
#fase0-content .strat-funnel__stage--final .strat-funnel__label{
  color:rgba(255,255,255,.78);
}
#fase0-content .strat-funnel__stage--final .strat-funnel__num{
  color:#fff;
}

/* Canal recomendado en resumen: elimina estilos inline y mejora responsive */
#fase0-content .strat-channel-cards{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-bottom:12px;
}
#fase0-content .strat-channel-card{
  padding:11px 12px;
  min-width:0;
}
#fase0-content .strat-channel-card--primary{
  background:var(--canal-l);
  border:2px solid var(--canal-b);
}
#fase0-content .strat-channel-card--secondary{
  background:#fff;
  border:1px solid var(--line2);
}
#fase0-content .strat-channel-card__label{
  font-size:10px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.08em;
  margin-bottom:3px;
}
#fase0-content .strat-channel-card--primary .strat-channel-card__label,
#fase0-content .strat-channel-card--primary .strat-channel-card__name{
  color:var(--canal);
}
#fase0-content .strat-channel-card--secondary .strat-channel-card__label{
  color:var(--ink4);
}
#fase0-content .strat-channel-card--secondary .strat-channel-card__name{
  color:var(--ink3);
}
#fase0-content .strat-channel-card__name{
  font-size:15px;
  font-weight:700;
  line-height:1.3;
}
#fase0-content .strat-channel-why{
  font-size:12px;
  color:var(--canal);
  font-style:italic;
  line-height:1.6;
}

/* Microajustes de simplicidad y navegación */
#fase0-content .dv span{
  background:var(--bg);
}
#fase0-content .card,
#fase0-content .strat-block{
  box-shadow:0 1px 2px rgba(15,23,42,.04),0 6px 18px rgba(15,23,42,.035);
}
#fase0-content input,
#fase0-content select,
#fase0-content textarea{
  border-radius:7px;
}

/* Sidebar activo menos genérico, manteniendo consistencia global */
.phase-item.active{
  background:#fff;
  border-left:0;
  padding-left:10px;
  box-shadow:inset 3px 0 0 var(--ink),0 1px 2px rgba(15,23,42,.05);
}
.phase-item.fase0.active{
  box-shadow:inset 3px 0 0 var(--phase0),0 1px 2px rgba(15,23,42,.05);
}
.phase-item.fase1.active{
  box-shadow:inset 3px 0 0 var(--phase1),0 1px 2px rgba(15,23,42,.05);
}
.phase-item.fase2.active{
  box-shadow:inset 3px 0 0 var(--phase2),0 1px 2px rgba(15,23,42,.05);
}
.phase-item.active .phase-item__dot{
  background:currentColor;
}

@media(max-width:560px){
  #fase0-content .strat-funnel__bar{
    width:100% !important;
    min-width:0 !important;
  }
  #fase0-content .strat-channel-cards{
    grid-template-columns:1fr;
  }
  #fase0-content .card__hd{
    padding:15px 16px;
  }
}

/* ═══════════════════════════════════════════════════════════════
   v40.13 — Pulido premium Fase 0 / Estrategia Comercial
   Remueve patrones genéricos tipo IA y refuerza jerarquía visual.
═══════════════════════════════════════════════════════════════ */

/* Eliminar líneas verticales/acento tipo IA en Fase 0 */
#fase0-content .callout,
#fase0-content .callout--quote,
#fase0-content .funnel-edu,
#fase0-content .example-box,
#fase0-content .strat-block--prop{
  border-left-width:1px !important;
  border-left-style:solid !important;
}
#fase0-content .callout--quote{
  border-color:rgba(255,255,255,.10) !important;
  background:linear-gradient(135deg,#070b14 0%,#0f172a 55%,#111827 100%) !important;
  color:#fff !important;
  box-shadow:0 14px 34px rgba(2,6,23,.18);
  position:relative;
}
#fase0-content .callout--quote::before{
  content:'Insight SIAR';
  display:block;
  width:max-content;
  margin-bottom:7px;
  padding:2px 7px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:6px;
  color:rgba(255,255,255,.72);
  font-size:9px;
  font-style:normal;
  font-weight:750;
  letter-spacing:.10em;
  text-transform:uppercase;
}
#fase0-content .miedo.on{
  box-shadow:0 8px 18px rgba(122,26,26,.10) !important;
}
#fase0-content .result-highlight__icon{
  display:none;
}

/* Jerarquía tipográfica: subsecciones más claras que las respuestas */
#fase0-content .card__bd{
  padding-top:20px;
}
#fase0-content .f{
  margin-bottom:18px;
}
#fase0-content .f__lbl,
#fase0-content label:not(.sr-only){
  font-size:14px;
  font-weight:760;
  color:var(--ink);
  letter-spacing:-.012em;
  line-height:1.3;
  margin-bottom:8px;
}
#fase0-content .f__hint,
#fase0-content .required-note,
#fase0-content .card__desc,
#fase0-content .calc-input__unit{
  font-size:12px;
  font-weight:440;
  line-height:1.55;
}
#fase0-content .chip{
  font-size:12px;
  font-weight:470;
  color:#475569;
  line-height:1.35;
}
#fase0-content .chip.sel,
#fase0-content .chip[aria-pressed="true"]{
  font-weight:690;
  color:#fff;
}
#fase0-content .dv{
  margin:24px 0 14px;
}
#fase0-content .dv::before,
#fase0-content .dv::after{
  display:none;
}
#fase0-content .dv span{
  display:inline-flex;
  align-items:center;
  padding:6px 10px;
  border-radius:7px;
  background:#e7edf5;
  color:#172033;
  font-size:11px;
  font-weight:780;
  letter-spacing:.08em;
}

/* Sidebar activo: sin línea lateral; bloque sólido por fase */
.phase-item::before{
  display:none !important;
}
.phase-item.active,
.phase-item.fase0.active,
.phase-item.fase1.active,
.phase-item.fase2.active,
.phase-item.fase3.active,
.phase-item.activos.active,
.phase-item.profund.active{
  border-left:0 !important;
  box-shadow:0 8px 18px rgba(15,23,42,.10) !important;
  transform:none !important;
}
.phase-item.fase0.active{background:var(--phase0) !important;}
.phase-item.fase1.active{background:var(--phase1) !important;}
.phase-item.fase2.active{background:var(--phase2) !important;}
.phase-item.fase3.active{background:var(--phase3) !important;}
.phase-item.activos.active{background:var(--activos-c) !important;}
.phase-item.profund.active{background:var(--profundizar-c) !important;}
.phase-item.active .phase-item__name,
.phase-item.active .phase-item__num,
.phase-item.active .phase-item__badge{
  color:#fff !important;
}
.phase-item.active .phase-item__num{opacity:.72 !important;}
.phase-item.active .phase-item__dot{
  background:#fff !important;
  box-shadow:none !important;
}
.phase-item.active .phase-item__badge{
  background:rgba(255,255,255,.14) !important;
  border-color:rgba(255,255,255,.18) !important;
}

/* Propuesta principal: CTA más visible sin confundirse con las citas negras */
#fase0-content .save-cta{
  background:linear-gradient(135deg,var(--phase0) 0%,#294f7d 100%);
  border-color:rgba(255,255,255,.10);
  box-shadow:0 12px 26px rgba(30,58,95,.18);
}
#fase0-content .save-cta__title,
#fase0-content .save-cta__sub{
  color:#fff;
}
#fase0-content .save-cta__sub{
  opacity:.74;
}
#fase0-content .save-cta .btn{
  background:#fff;
  color:var(--phase0);
  border-color:#fff;
  font-weight:760;
}
#fase0-content .prop-badge.show{
  background:#0f172a;
  color:#fff;
  border-color:#0f172a;
}
#fase0-content .prop-badge__texto{
  color:rgba(255,255,255,.74);
}

/* Inputs principales de meta: colores oscuros, lectura clara */
#fase0-content .calc-input--verde,
#fase0-content .calc-input--azul,
#fase0-content .calc-input--morado{
  border:0;
  box-shadow:0 12px 24px rgba(15,23,42,.10);
}
#fase0-content .calc-input--verde{
  background:linear-gradient(135deg,#0f4a1a,#176b2b);
}
#fase0-content .calc-input--azul{
  background:linear-gradient(135deg,var(--phase0),#315c8b);
}
#fase0-content .calc-input--morado{
  background:linear-gradient(135deg,var(--profundizar-c),#7c3aed);
}
#fase0-content .calc-input--verde .calc-input__lbl,
#fase0-content .calc-input--azul .calc-input__lbl,
#fase0-content .calc-input--morado .calc-input__lbl,
#fase0-content .calc-input--verde .calc-input__unit,
#fase0-content .calc-input--azul .calc-input__unit,
#fase0-content .calc-input--morado .calc-input__unit{
  color:rgba(255,255,255,.74);
}
#fase0-content .calc-input--verde input,
#fase0-content .calc-input--azul input,
#fase0-content .calc-input--morado input{
  color:#fff;
}
#fase0-content .calc-input--verde input::placeholder,
#fase0-content .calc-input--azul input::placeholder,
#fase0-content .calc-input--morado input::placeholder{
  color:rgba(255,255,255,.55);
}

/* Canal recomendado: bloques más llamativos y clases por canal */
#fase0-content .canal-block{
  background:#f8fafc;
  border-color:#dbe3ec;
}
#fase0-content .canal-item{
  border:0;
  box-shadow:0 9px 20px rgba(15,23,42,.08);
}
#fase0-content .canal-item.principal,
#fase0-content .strat-channel-card--primary{
  color:#fff;
  border:0;
}
#fase0-content .canal-item.principal .canal-item__badge,
#fase0-content .canal-item.principal .canal-item__name,
#fase0-content .strat-channel-card--primary .strat-channel-card__label,
#fase0-content .strat-channel-card--primary .strat-channel-card__name{
  color:#fff !important;
}
#fase0-content .channel-meta{
  background:linear-gradient(135deg,#0866ff 0%,#0d3f9f 100%) !important;
}
#fase0-content .channel-google{
  background:linear-gradient(135deg,#1a73e8 0%,#185abc 54%,#0f9d58 100%) !important;
}
#fase0-content .channel-combo{
  background:linear-gradient(135deg,#0866ff 0%,#1e3a8a 45%,#0f9d58 100%) !important;
}
#fase0-content .canal-item.secundario,
#fase0-content .strat-channel-card--secondary{
  background:#111827;
  border:0;
  color:#fff;
  opacity:1;
}
#fase0-content .canal-item.secundario .canal-item__badge,
#fase0-content .canal-item.secundario .canal-item__name,
#fase0-content .strat-channel-card--secondary .strat-channel-card__label,
#fase0-content .strat-channel-card--secondary .strat-channel-card__name{
  color:#fff !important;
}
#fase0-content .canal-justificacion,
#fase0-content .strat-channel-why{
  border-top:0;
  padding:12px 14px;
  border-radius:7px;
  background:#eef3f8;
  color:#1e3a5f;
}

/* Embudo dinámico: área de impacto visual */
#fase0-content .funnel-table{
  display:grid;
  gap:9px;
  padding:14px;
  margin-bottom:14px;
  border-radius:10px;
  background:linear-gradient(135deg,#07101f 0%,#0f172a 48%,#1e3a5f 100%);
  box-shadow:0 18px 40px rgba(2,6,23,.18);
}
#fase0-content .funnel-row{
  display:grid;
  grid-template-columns:minmax(160px,1.25fr) minmax(70px,.35fr) minmax(100px,1fr);
  gap:12px;
  align-items:center;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  color:#fff;
  box-shadow:none;
  backdrop-filter:blur(6px);
}
#fase0-content .funnel-row:hover{
  background:rgba(255,255,255,.12);
}
#fase0-content .funnel-row--highlight{
  background:#fff;
  border-color:#fff;
  color:var(--ink);
  box-shadow:0 12px 24px rgba(2,6,23,.18);
}
#fase0-content .funnel-row__stage{
  color:inherit;
  font-weight:720;
  letter-spacing:-.01em;
}
#fase0-content .funnel-row__num{
  color:inherit;
  font-size:18px;
  font-weight:780;
}
#fase0-content .funnel-row__rate{
  background:rgba(255,255,255,.14);
  color:rgba(255,255,255,.82);
  font-weight:760;
}
#fase0-content .funnel-row--highlight .funnel-row__rate{
  background:#e7edf5;
  color:var(--phase0);
}
#fase0-content .funnel-row__bar{
  background:rgba(255,255,255,.16);
  border-radius:6px;
  overflow:hidden;
}
#fase0-content .funnel-row__fill{
  min-height:8px;
  border-radius:6px;
}
#fase0-content .funnel-edu{
  background:#fff;
  border:1px solid #d7e0ea;
  color:#334155;
  box-shadow:0 8px 18px rgba(15,23,42,.05);
}

/* Indicadores clave: más contraste e impacto */
#fase0-content .kpis-grid,
#fase0-content .strat-kpis{
  gap:10px;
}
#fase0-content .kpi-card,
#fase0-content .strat-kpi{
  background:#fff;
  border:1px solid #dbe3ec;
  box-shadow:0 8px 18px rgba(15,23,42,.06);
}
#fase0-content .kpi-card.primary,
#fase0-content .strat-kpi--main{
  background:linear-gradient(135deg,var(--phase0),#0f172a);
  border-color:transparent;
  color:#fff;
}
#fase0-content .kpi-card.primary .kpi-card__num,
#fase0-content .kpi-card.primary .kpi-card__lbl,
#fase0-content .strat-kpi--main .strat-kpi__num,
#fase0-content .strat-kpi--main .strat-kpi__lbl{
  color:#fff;
}
#fase0-content .kpi-card:nth-child(4),
#fase0-content .strat-kpi:nth-child(4){
  background:linear-gradient(135deg,#0f766e,#115e59);
  border-color:transparent;
}
#fase0-content .kpi-card:nth-child(5),
#fase0-content .strat-kpi:nth-child(5){
  background:linear-gradient(135deg,#4f46e5,#312e81);
  border-color:transparent;
}
#fase0-content .kpi-card:nth-child(6),
#fase0-content .strat-kpi:nth-child(6){
  background:linear-gradient(135deg,#374151,#111827);
  border-color:transparent;
}
#fase0-content .kpi-card:nth-child(n+4) .kpi-card__num,
#fase0-content .kpi-card:nth-child(n+4) .kpi-card__lbl,
#fase0-content .strat-kpi:nth-child(n+4) .strat-kpi__num,
#fase0-content .strat-kpi:nth-child(n+4) .strat-kpi__lbl{
  color:#fff;
}
#fase0-content .kpi-card__lbl,
#fase0-content .strat-kpi__lbl{
  font-weight:560;
  opacity:.82;
}

/* Resultado del cálculo: mostrar la ruta completa, no solo inicio/fin */
#fase0-content .result-highlight{
  background:linear-gradient(135deg,#0f172a 0%,#1e3a5f 100%);
  border:0;
  color:#fff;
  box-shadow:0 18px 36px rgba(2,6,23,.16);
}
#fase0-content .result-highlight__text{
  color:#fff;
  font-size:13px;
  line-height:1.75;
}

/* Resumen: más editorial y menos aburrido */
#fase0-content .strat-block{
  background:#fff;
  border-color:#dbe3ec;
  box-shadow:0 12px 28px rgba(15,23,42,.06);
}
#fase0-content .strat-block__hd{
  background:#0f172a;
  border-bottom:0;
  padding:13px 18px;
}
#fase0-content .strat-block__num{
  color:rgba(255,255,255,.54);
}
#fase0-content .strat-block__title{
  color:#fff;
  font-size:13px;
  font-weight:760;
}
#fase0-content .strat-meta-chip{
  background:#101827;
  border-color:#101827;
  color:#fff;
  font-weight:700;
}
#fase0-content .strat-meta-chip.hi{
  background:var(--phase0);
  border-color:var(--phase0);
  color:#fff;
}
#fase0-content .strat-funnel-title{
  color:var(--ink);
  font-size:12px;
  font-weight:800;
}
#fase0-content .strat-funnel__bar{
  box-shadow:0 8px 18px rgba(15,23,42,.06);
  border:0;
}

@media(max-width:640px){
  #fase0-content .funnel-row{
    grid-template-columns:1fr;
    gap:6px;
  }
  #fase0-content .funnel-row__bar{
    width:100%;
  }
  #fase0-content .save-cta{
    align-items:flex-start;
  }
}

/* v40.13b — Ajustes finales de limpieza visual */
#fase0-content .callout--quote::before{
  content:none !important;
  display:none !important;
}

#fase0-content .calc-mode-btn{
  background:#fff;
  border-color:#cbd5e1;
  color:#334155;
  font-weight:650;
}
#fase0-content .calc-mode-btn.active{
  background:var(--phase0);
  border-color:var(--phase0);
  color:#fff;
  box-shadow:0 8px 18px rgba(30,58,95,.16);
}

#fase0-content .strat-funnel{
  background:linear-gradient(135deg,#07101f 0%,#0f172a 55%,#1e3a5f 100%);
  border-radius:10px;
  padding:14px;
  box-shadow:0 18px 40px rgba(2,6,23,.16);
}
#fase0-content .strat-funnel__stage:nth-child(1) .strat-funnel__bar,
#fase0-content .strat-funnel__stage:nth-child(2) .strat-funnel__bar,
#fase0-content .strat-funnel__stage:nth-child(3) .strat-funnel__bar,
#fase0-content .strat-funnel__stage:nth-child(4) .strat-funnel__bar,
#fase0-content .strat-funnel__stage:nth-child(5) .strat-funnel__bar,
#fase0-content .strat-funnel__stage:nth-child(6) .strat-funnel__bar{
  background:rgba(255,255,255,.10) !important;
  color:#fff;
  border:1px solid rgba(255,255,255,.10);
}
#fase0-content .strat-funnel__label,
#fase0-content .strat-funnel__num{
  color:#fff;
}
#fase0-content .strat-funnel__stage--final .strat-funnel__bar{
  background:#fff !important;
  border-color:#fff;
  box-shadow:0 12px 24px rgba(2,6,23,.22);
}
#fase0-content .strat-funnel__stage--final .strat-funnel__label{
  color:#475569;
}
#fase0-content .strat-funnel__stage--final .strat-funnel__num{
  color:#0f172a;
}

#fase0-content .strat-prop-full,
#fase0-content .preview-main{
  box-shadow:0 10px 22px rgba(15,23,42,.06);
}


/* ═══════════════════════════════════════════════════════════════
   v40.14 — Ajustes milimétricos Estrategia Comercial
   Limpieza de cabecera, jerarquía fina, embudo y resumen premium.
═══════════════════════════════════════════════════════════════ */

/* Topbar: la estrategia vive arriba, la vista de Fase 0 queda limpia */
.topbar__left{display:flex;align-items:center;gap:10px;flex-shrink:0}
.topbar__strategy{flex:1;max-width:460px;display:flex;align-items:center;gap:8px;margin:0 14px;padding:5px 7px 5px 11px;border:1px solid #d8e2ec;border-radius:9px;background:#fff;box-shadow:0 6px 18px rgba(15,23,42,.05)}
.topbar__strategy.is-hidden{display:none}
.topbar__strategy-input{font-size:13px;font-weight:670;min-width:160px;color:#172033}
.topbar__strategy-new{padding:5px 9px;background:#f8fafc;border-color:#dbe3ec;color:#334155;font-size:11px;font-weight:680}
.topbar__strategy-new:hover{background:#e7edf5;color:#0f172a}

/* Cabecera de Fase 0: sin etiqueta duplicada ni línea inferior innecesaria */
#fase0-content .hdr{padding:18px 0 20px;border-bottom:0;margin-bottom:18px}
#fase0-content .hdr__phase{display:none!important}
#fase0-content .hdr__title{font-size:clamp(24px,4.8vw,34px);font-weight:820;letter-spacing:-.045em;margin-bottom:8px;color:#0f172a}
#fase0-content .hdr__title span{font-weight:520;color:#315c8b}
#fase0-content .hdr__sub{font-size:14px;line-height:1.62;color:#475569;max-width:560px}
#fase0-content .prog{margin-top:18px;gap:7px}
#fase0-content .prog__s{height:5px;background:#d9e2ec;border-radius:999px;box-shadow:none}
#fase0-content .prog__s.done{background:linear-gradient(90deg,#1e3a5f,#2563eb)}
#fase0-content .prog__s.on{background:linear-gradient(90deg,#2563eb,#16a34a)}
#fase0-content .prog__lbl{font-size:11px;font-weight:720;color:#334155;padding-left:8px}
#fase0-content .steps{margin-bottom:20px;border-color:#d8e2ec;box-shadow:0 10px 24px rgba(15,23,42,.045)}
#fase0-content .step.on{background:linear-gradient(135deg,#1e3a5f,#315c8b);color:#fff}
#fase0-content .step.done{background:#e8eef6;color:#1e3a5f;font-weight:700}

/* Obligatorios: texto más claro y asterisco pegado al campo */
#fase0-content .required-note{background:#fff;border:1px solid #dbe3ec;border-radius:8px;padding:9px 12px;color:#475569;font-size:12px;margin-bottom:12px}
#fase0-content .required-note span{display:inline-block;margin:0 1px;color:#dc2626}
#fase0-content .f__lbl{gap:3px;font-size:14.5px;font-weight:790;color:#0f172a;margin-bottom:8px}
#fase0-content .req{margin-left:0;font-size:12px;color:#dc2626;transform:translateY(-1px)}
#fase0-content .chip{font-size:12px;font-weight:470;color:#516173}
#fase0-content .chip.sel,#fase0-content .chip[aria-pressed="true"]{font-weight:700}

/* Propuesta: constructor más minimalista */
#fase0-content .formula-step{margin-bottom:12px;padding-top:1px}
#fase0-content .formula-step__num{display:inline;width:auto;height:auto;padding:0;margin-right:4px;border-radius:0;background:none;color:#1e3a5f;font-size:16px;font-weight:840;vertical-align:baseline;line-height:1}
#fase0-content .formula-connector{height:12px;margin:-2px 0 7px;color:#cbd5e1;font-size:13px}
#fase0-content #sec1 .f__lbl{font-size:16px;letter-spacing:-.018em}
#fase0-content .example-box{background:#fff;border:1px solid #dbe3ec;box-shadow:0 8px 18px rgba(15,23,42,.045);padding:15px 16px;margin-bottom:14px}
#fase0-content .example-box__label{color:#1e3a5f;font-weight:820}
#fase0-content .example-box__text{color:#334155;font-size:13px;line-height:1.65}
#fase0-content .preview-main{background:linear-gradient(135deg,#f0fdf4,#e8f5ef);border-color:#b7dfc4;box-shadow:0 12px 26px rgba(15,118,110,.08)}
#fase0-content .preview-main__label{color:#0f766e;font-weight:820}
#fase0-content .preview-main__text{color:#0b513b;font-weight:560}
#fase0-content .preview-main__text.empty{color:#6b927d}
#fase0-content .preview-short{background:linear-gradient(135deg,#f8fafc,#eef4ff);border-color:#c8d7eb;box-shadow:0 10px 22px rgba(30,58,95,.06)}
#fase0-content .preview-short__label{color:#1e3a5f;font-weight:800}
#fase0-content .preview-short__text{color:#172033;font-weight:550}
#fase0-content .uses-note{padding:12px 14px;margin-bottom:14px;background:#f8fafc;border:1px solid #dbe3ec;border-radius:8px}
#fase0-content .uses-note__label{color:#334155;font-weight:700;font-size:12px;margin-bottom:8px}
#fase0-content .use-tag{background:#fff;border-color:#cbd5e1;color:#475569}
#fase0-content .save-cta{background:linear-gradient(135deg,#0f766e,#115e59)!important;border:0;box-shadow:0 14px 30px rgba(15,118,110,.20)}
#fase0-content .save-cta .btn{color:#0f766e;border-color:#fff}
#fase0-content .prop-badge.show{background:linear-gradient(135deg,#0f766e,#115e59);border:0;box-shadow:0 12px 26px rgba(15,118,110,.18)}

/* Meta y embudo: inputs con familia de degradados coherente */
#fase0-content .calc-input--verde{background:linear-gradient(135deg,#064e3b 0%,#0f766e 50%,#16a34a 100%)}
#fase0-content .calc-input--azul{background:linear-gradient(135deg,#1e3a5f 0%,#2563eb 58%,#38bdf8 100%)}
#fase0-content .calc-input--morado{background:linear-gradient(135deg,#4c1d95 0%,#7c3aed 56%,#c084fc 100%)}
#fase0-content .calc-input{box-shadow:0 14px 28px rgba(15,23,42,.12)}

/* Canal recomendado: principal sólido, secundario en segundo plano */
#fase0-content .canal-block{background:#ffffff;border-color:#d8e2ec;box-shadow:0 12px 28px rgba(15,23,42,.055)}
#fase0-content .canal-item.principal.channel-meta,
#fase0-content .strat-channel-card--primary.channel-meta{background:linear-gradient(135deg,#0866ff 0%,#2b4ef8 48%,#6d5dfc 100%)!important}
#fase0-content .canal-item.principal.channel-google,
#fase0-content .strat-channel-card--primary.channel-google{background:linear-gradient(135deg,#4285f4 0%,#1a73e8 42%,#34a853 100%)!important}
#fase0-content .canal-item.principal.channel-combo,
#fase0-content .strat-channel-card--primary.channel-combo{background:linear-gradient(135deg,#0866ff 0%,#7c3aed 45%,#34a853 100%)!important}
#fase0-content .canal-item.secundario,
#fase0-content .strat-channel-card--secondary{background:#f8fafc!important;border:1px solid #dbe3ec!important;box-shadow:none;color:#475569!important;opacity:.78}
#fase0-content .canal-item.secundario.channel-meta,
#fase0-content .strat-channel-card--secondary.channel-meta{background:rgba(8,102,255,.09)!important;border-color:rgba(8,102,255,.18)!important}
#fase0-content .canal-item.secundario.channel-google,
#fase0-content .strat-channel-card--secondary.channel-google{background:rgba(66,133,244,.10)!important;border-color:rgba(52,168,83,.20)!important}
#fase0-content .canal-item.secundario.channel-combo,
#fase0-content .strat-channel-card--secondary.channel-combo{background:rgba(124,58,237,.10)!important;border-color:rgba(8,102,255,.18)!important}
#fase0-content .canal-item.secundario .canal-item__badge,
#fase0-content .canal-item.secundario .canal-item__name,
#fase0-content .strat-channel-card--secondary .strat-channel-card__label,
#fase0-content .strat-channel-card--secondary .strat-channel-card__name{color:#334155!important}
#fase0-content .canal-item.principal .canal-item__name,
#fase0-content .strat-channel-card--primary .strat-channel-card__name{font-size:17px;font-weight:840;letter-spacing:-.02em}

/* Embudo dinámico: más contraste, barras visibles y cierre de logro */
#fase0-content .funnel-table{background:radial-gradient(circle at 20% 0%,rgba(56,189,248,.22),transparent 34%),linear-gradient(135deg,#020617 0%,#0f172a 48%,#1e3a5f 100%);gap:10px;padding:16px;border-radius:12px}
#fase0-content .funnel-row{grid-template-columns:minmax(178px,1.2fr) minmax(72px,.34fr) minmax(132px,1.05fr);background:rgba(255,255,255,.075);border-color:rgba(255,255,255,.13);border-radius:9px;padding:12px 13px}
#fase0-content .funnel-row__stage{font-size:13px;font-weight:760;color:inherit}
#fase0-content .funnel-row__num{font-size:19px;font-weight:850;color:inherit}
#fase0-content .funnel-row__bar{height:12px;background:rgba(255,255,255,.15);box-shadow:inset 0 1px 2px rgba(0,0,0,.20)}
#fase0-content .funnel-row__fill{min-height:12px;border-radius:6px;box-shadow:0 0 18px rgba(56,189,248,.22);min-width:28px}
#fase0-content #fb0{background:linear-gradient(90deg,#38bdf8,#2563eb)!important}
#fase0-content #fb1{background:linear-gradient(90deg,#38bdf8,#0ea5e9)!important}
#fase0-content #fb2{background:linear-gradient(90deg,#a78bfa,#7c3aed)!important}
#fase0-content #fb3{background:linear-gradient(90deg,#f59e0b,#f97316)!important}
#fase0-content #fb4{background:linear-gradient(90deg,#14b8a6,#22c55e)!important}
#fase0-content #fb5{background:linear-gradient(90deg,#fde047,#f59e0b)!important;min-width:52px}
#fase0-content #fb6{background:linear-gradient(90deg,#22c55e,#16a34a)!important;min-width:48px;box-shadow:0 0 22px rgba(34,197,94,.35)}
#fase0-content .funnel-row__rate{background:rgba(56,189,248,.14);border:1px solid rgba(56,189,248,.25);color:#bae6fd;border-radius:6px;padding:2px 7px}
#fase0-content #fr2 .funnel-row__rate{background:rgba(167,139,250,.15);border-color:rgba(167,139,250,.25);color:#ddd6fe}
#fase0-content #fr3 .funnel-row__rate{background:rgba(249,115,22,.15);border-color:rgba(249,115,22,.25);color:#fed7aa}
#fase0-content #fr4 .funnel-row__rate{background:rgba(20,184,166,.15);border-color:rgba(20,184,166,.25);color:#ccfbf1}
#fase0-content #fr5 .funnel-row__rate{background:rgba(245,158,11,.16);border-color:rgba(245,158,11,.30);color:#fef3c7}
#fase0-content .funnel-row--highlight{background:linear-gradient(135deg,#14532d,#16a34a);border-color:rgba(187,247,208,.34);color:#fff;box-shadow:0 16px 30px rgba(22,163,74,.24)}
#fase0-content .funnel-row--highlight .funnel-row__rate{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.22);color:#dcfce7}
#fase0-content .funnel-edu{background:#ffffff;border-color:#d8e2ec;color:#334155;font-weight:560}

/* Indicadores clave: paleta diferenciada por función */
#fase0-content .kpi-card,#fase0-content .strat-kpi{border:0;box-shadow:0 12px 24px rgba(15,23,42,.09)}
#fase0-content .kpi-card:nth-child(1),#fase0-content .strat-kpi:nth-child(1){background:linear-gradient(135deg,#2563eb,#1d4ed8)}
#fase0-content .kpi-card:nth-child(2),#fase0-content .strat-kpi:nth-child(2){background:linear-gradient(135deg,#0891b2,#0e7490)}
#fase0-content .kpi-card:nth-child(3),#fase0-content .strat-kpi:nth-child(3){background:linear-gradient(135deg,#7c3aed,#5b21b6)}
#fase0-content .kpi-card:nth-child(4),#fase0-content .strat-kpi:nth-child(4){background:linear-gradient(135deg,#f97316,#c2410c)}
#fase0-content .kpi-card:nth-child(5),#fase0-content .strat-kpi:nth-child(5){background:linear-gradient(135deg,#15803d,#166534)}
#fase0-content .kpi-card:nth-child(6),#fase0-content .strat-kpi:nth-child(6){background:linear-gradient(135deg,#16a34a,#065f46)}
#fase0-content .kpi-card .kpi-card__num,#fase0-content .kpi-card .kpi-card__lbl,
#fase0-content .strat-kpi .strat-kpi__num,#fase0-content .strat-kpi .strat-kpi__lbl{color:#fff!important}
#fase0-content .kpi-card__num,#fase0-content .strat-kpi__num{font-weight:880;letter-spacing:-.035em}
#fase0-content .kpi-card__lbl,#fase0-content .strat-kpi__lbl{opacity:.82;font-weight:620}

/* Resumen final hereda el nuevo sistema visual */
#fase0-content .strat-header{border:0;background:linear-gradient(135deg,#ffffff,#eef4ff);box-shadow:0 12px 28px rgba(15,23,42,.055)}
#fase0-content .strat-header__label{display:none!important}
#fase0-content .strat-block__hd{background:linear-gradient(135deg,#0f172a,#1e3a5f)}
#fase0-content .strat-meta-chip{border:0;background:#eef4ff;color:#1e3a5f;box-shadow:0 8px 18px rgba(30,58,95,.06)}
#fase0-content .strat-meta-chip.hi{background:linear-gradient(135deg,#f97316,#c2410c);color:#fff}
#fase0-content .strat-funnel{background:radial-gradient(circle at 20% 0%,rgba(56,189,248,.22),transparent 34%),linear-gradient(135deg,#020617 0%,#0f172a 55%,#1e3a5f 100%)}
#fase0-content .strat-funnel__stage:nth-child(1) .strat-funnel__bar{background:linear-gradient(90deg,#38bdf8,#2563eb)!important;width:100%}
#fase0-content .strat-funnel__stage:nth-child(2) .strat-funnel__bar{background:linear-gradient(90deg,#38bdf8,#0ea5e9)!important;width:88%}
#fase0-content .strat-funnel__stage:nth-child(3) .strat-funnel__bar{background:linear-gradient(90deg,#a78bfa,#7c3aed)!important;width:76%}
#fase0-content .strat-funnel__stage:nth-child(4) .strat-funnel__bar{background:linear-gradient(90deg,#f59e0b,#f97316)!important;width:64%}
#fase0-content .strat-funnel__stage:nth-child(5) .strat-funnel__bar{background:linear-gradient(90deg,#14b8a6,#22c55e)!important;width:52%}
#fase0-content .strat-funnel__stage:nth-child(6) .strat-funnel__bar{background:linear-gradient(90deg,#fde047,#f59e0b)!important;width:42%}
#fase0-content .strat-funnel__stage--final .strat-funnel__bar{background:linear-gradient(90deg,#22c55e,#16a34a)!important;width:34%;color:#fff;box-shadow:0 12px 24px rgba(22,163,74,.24)}
#fase0-content .strat-funnel__stage--final .strat-funnel__label,#fase0-content .strat-funnel__stage--final .strat-funnel__num{color:#fff}

@media(max-width:900px){
  .topbar__strategy{max-width:none;margin:0 8px;min-width:0}
  .topbar__strategy-new{display:none}
}
@media(max-width:640px){
  .topbar{padding:0 12px;gap:8px}
  .topbar__strategy{order:3;position:absolute;left:12px;right:12px;top:58px;margin:0;z-index:99;box-shadow:0 10px 24px rgba(15,23,42,.10)}
  .topbar__strategy.is-hidden{display:none}
  #fase0-content{padding-top:54px}
  #fase0-content .hdr{padding-top:12px}
  #fase0-content .funnel-row{grid-template-columns:1fr;gap:8px}
}

/* v40.14b — sin líneas laterales de recuadro tipo IA */
#fase0-content .callout,
#fase0-content .callout--quote,
#fase0-content .funnel-edu,
#fase0-content .example-box,
#fase0-content .strat-block--prop{
  border-width:1px!important;
  border-style:solid!important;
  border-left-width:1px!important;
}
#fase0-content .callout.info{border-color:#b8cce0!important}
#fase0-content .callout.ok{border-color:#bbf7d0!important}
#fase0-content .callout.warn{border-color:#fed7aa!important}
#fase0-content .callout--quote{border-color:rgba(255,255,255,.12)!important}

/* ═══════════════════════════════════════════════════════════════
   v40.15 — Ajustes puntuales solicitados Fase 0
   Scope estricto: topbar F0, espaciados, tabs, propuesta, embudo y resumen.
═══════════════════════════════════════════════════════════════ */

/* 1) Barra de estrategia en topbar: alineada con el contenido, sin caja pesada */
.topbar__strategy{
  position:absolute;
  left:max(calc(var(--sidebar-w) + 24px), calc(var(--sidebar-w) + (100vw - var(--sidebar-w) - 748px)/2 + 24px));
  width:min(560px, calc(100vw - var(--sidebar-w) - 360px));
  max-width:560px;
  height:34px;
  display:flex;
  align-items:center;
  gap:10px;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.topbar__strategy::before,
.topbar__strategy::after{
  content:'';
  width:24px;
  height:1px;
  background:#cbd5e1;
  flex:0 0 24px;
}
.topbar__strategy-input{
  min-width:0;
  flex:1;
  padding:4px 0;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  font-size:13px;
  font-weight:680;
  color:#172033;
}
.topbar__strategy-new{
  padding:4px 8px;
  min-height:26px;
  border-radius:7px;
  background:#fff;
  border-color:#dbe3ec;
  color:#334155;
  box-shadow:none;
}

/* 2) Cabecera Fase 0: más aire arriba y subtítulo con estilo anterior */
#fase0-content .hdr{
  padding:36px 0 14px;
  margin-bottom:12px;
  border-bottom:0;
}
#fase0-content .hdr__title{
  line-height:1.02;
  margin-bottom:10px;
  color:#0f172a;
}
#fase0-content .hdr__title span{
  color:var(--ink3);
  font-weight:400;
  letter-spacing:-.025em;
}
#fase0-content .hdr__sub{
  color:var(--ink3);
  line-height:1.62;
}
#fase0-content .prog{
  margin-top:14px;
}

/* 3) Tabs: sin línea inferior activa y borde general más fino/minimalista */
#fase0-content .steps{
  border:.5px solid #e1e7ef;
  box-shadow:none;
  margin-bottom:18px;
}
#fase0-content .step{
  border-right:.5px solid #e1e7ef;
}
#fase0-content .step.on{
  box-shadow:none!important;
}

/* 4) Etiquetas innecesarias en citas: sin badge interno */
#fase0-content .callout--quote::before{
  content:none!important;
  display:none!important;
}

/* 5) Miedos: evitar que el siguiente título caiga visualmente sobre la sombra */
#fase0-content #sec0 .callout--quote + .f__lbl{
  margin-top:22px!important;
}

/* 6) Propuesta: ejemplo vuelve a recuadro gris sobrio */
#fase0-content .example-box{
  background:#f8fafc!important;
  border:1px solid #dbe3ec!important;
  box-shadow:none!important;
}
#fase0-content .example-box__label{
  color:#334155!important;
}
#fase0-content .example-box__text{
  color:#475569!important;
}

/* 7) Meta y embudo: texto guía más legible */
#fase0-content #panel-modo-meta > .f__hint,
#fase0-content #panel-modo-presupuesto > .f__hint{
  font-size:14px;
  line-height:1.55;
  color:#0f172a;
  font-weight:650;
  margin-bottom:14px!important;
}

/* 8) Embudo dinámico: cierre final con barra blanca y verde más intenso */
#fase0-content .funnel-row--highlight{
  background:linear-gradient(135deg,#047857 0%,#16a34a 52%,#22c55e 100%)!important;
  border-color:rgba(187,247,208,.45)!important;
  box-shadow:0 18px 34px rgba(22,163,74,.28)!important;
}
#fase0-content #fr6 .funnel-row__bar{
  background:rgba(255,255,255,.22)!important;
  box-shadow:inset 0 1px 2px rgba(0,0,0,.16),0 0 0 1px rgba(255,255,255,.12);
}
#fase0-content #fb6{
  background:linear-gradient(90deg,#ffffff 0%,#ecfdf5 48%,#bbf7d0 100%)!important;
  min-width:62px!important;
  box-shadow:0 0 26px rgba(255,255,255,.35)!important;
}
#fase0-content #fb5{
  min-width:62px!important;
}
#fase0-content .funnel-row--highlight .funnel-row__rate{
  background:rgba(255,255,255,.18)!important;
  border-color:rgba(255,255,255,.32)!important;
  color:#fff!important;
}

/* 9) Indicadores clave: paleta solicitada, menos verdes repetidos */
#fase0-content .kpi-card:nth-child(1){background:linear-gradient(135deg,#2563eb,#1d4ed8)!important;}
#fase0-content .kpi-card:nth-child(2){background:linear-gradient(135deg,#020617,#111827)!important;}
#fase0-content .kpi-card:nth-child(3){background:linear-gradient(135deg,#7c3aed,#5b21b6)!important;}
#fase0-content .kpi-card:nth-child(4){background:linear-gradient(135deg,#f97316,#c2410c)!important;}
#fase0-content .kpi-card:nth-child(5){background:linear-gradient(135deg,#1f2937,#0f172a)!important;}
#fase0-content .kpi-card:nth-child(6){background:linear-gradient(135deg,#16a34a,#047857)!important;}

/* 10) Resumen final: embudo en progresión azul → verde, cierre más visible */
#fase0-content .strat-funnel__stage:nth-child(1) .strat-funnel__bar{background:linear-gradient(90deg,#1e3a8a,#2563eb)!important;width:100%;}
#fase0-content .strat-funnel__stage:nth-child(2) .strat-funnel__bar{background:linear-gradient(90deg,#2563eb,#0ea5e9)!important;width:88%;}
#fase0-content .strat-funnel__stage:nth-child(3) .strat-funnel__bar{background:linear-gradient(90deg,#0ea5e9,#06b6d4)!important;width:76%;}
#fase0-content .strat-funnel__stage:nth-child(4) .strat-funnel__bar{background:linear-gradient(90deg,#0891b2,#14b8a6)!important;width:64%;}
#fase0-content .strat-funnel__stage:nth-child(5) .strat-funnel__bar{background:linear-gradient(90deg,#0d9488,#22c55e)!important;width:54%;}
#fase0-content .strat-funnel__stage:nth-child(6) .strat-funnel__bar{background:linear-gradient(90deg,#16a34a,#22c55e)!important;width:46%;}
#fase0-content .strat-funnel__stage--final .strat-funnel__bar{
  background:linear-gradient(90deg,#22c55e,#16a34a,#047857)!important;
  width:42%!important;
  min-width:220px;
  color:#fff;
  box-shadow:0 14px 28px rgba(22,163,74,.30)!important;
}
#fase0-content .strat-funnel__stage--final .strat-funnel__label,
#fase0-content .strat-funnel__stage--final .strat-funnel__num{color:#fff!important;}

/* 11) Resumen final: KPIs con la misma lógica de color que la pantalla anterior */
#fase0-content .strat-kpi:nth-child(1){background:linear-gradient(135deg,#2563eb,#1d4ed8)!important;}
#fase0-content .strat-kpi:nth-child(2){background:linear-gradient(135deg,#020617,#111827)!important;}
#fase0-content .strat-kpi:nth-child(3){background:linear-gradient(135deg,#7c3aed,#5b21b6)!important;}
#fase0-content .strat-kpi:nth-child(4){background:linear-gradient(135deg,#f97316,#c2410c)!important;}
#fase0-content .strat-kpi:nth-child(5){background:linear-gradient(135deg,#1f2937,#0f172a)!important;}
#fase0-content .strat-kpi:nth-child(6){background:linear-gradient(135deg,#16a34a,#047857)!important;}

@media(max-width:1100px){
  .topbar__strategy{
    position:static;
    width:auto;
    max-width:none;
    flex:1;
    margin:0 8px;
  }
}
@media(max-width:640px){
  .topbar__strategy{
    position:absolute;
    left:12px;
    right:12px;
    top:58px;
    width:auto;
    max-width:none;
    margin:0;
    padding:0;
  }
  .topbar__strategy::before,
  .topbar__strategy::after{display:none;}
  #fase0-content .hdr{padding-top:18px;}
}


/* ═══════════════════════════════════════════════════════════════
   v40.16 — Sistema visual SIAR aplicado globalmente
   Normalización conservadora: jerarquía, espaciado, tabs, cards,
   chips, formularios y estados activos en todas las fases.
   No altera lógica funcional ni estructura de datos.
═══════════════════════════════════════════════════════════════ */

/* 1) Cabeceras generales: menos redundancia, más aire y jerarquía consistente */
#fase1-content .hdr,
#fase2-content .hdr,
#activos-content .hdr,
#profundizar-content .hdr{
  padding:36px 0 18px;
  margin-bottom:16px;
  border-bottom:0;
}
#fase1-content .hdr__phase,
#fase2-content .hdr__phase,
#activos-content .hdr__phase,
#profundizar-content .hdr__phase{
  display:none!important;
}
#fase1-content .hdr__title,
#fase2-content .hdr__title,
#activos-content .hdr__title,
#profundizar-content .hdr__title{
  font-size:clamp(24px,4.8vw,34px);
  line-height:1.02;
  margin-bottom:10px;
  letter-spacing:-.045em;
  font-weight:820;
  color:#0f172a;
}
#fase1-content .hdr__title span,
#fase2-content .hdr__title span,
#activos-content .hdr__title span,
#profundizar-content .hdr__title span{
  color:var(--ink3);
  font-weight:400;
  letter-spacing:-.025em;
}
#fase1-content .hdr__sub,
#fase2-content .hdr__sub,
#activos-content .hdr__sub,
#profundizar-content .hdr__sub{
  color:var(--ink3);
  font-size:14px;
  line-height:1.62;
  max-width:620px;
}

/* 2) Nombre/guardado en fases restantes: más liviano, sin caja pesada */
#fase1-content .strat-namebar,
#fase2-content .strat-namebar,
#activos-content .strat-namebar,
#profundizar-content .strat-namebar{
  padding:14px 0 16px;
  margin-bottom:22px;
  border:0;
  border-top:1px solid #dbe3ec;
  border-bottom:1px solid #dbe3ec;
  background:transparent;
  gap:10px;
}
#fase1-content .strat-namebar__input,
#fase2-content .strat-namebar__input,
#activos-content .strat-namebar__input,
#profundizar-content .strat-namebar__input{
  font-size:13.5px;
  font-weight:680;
  color:#172033;
  letter-spacing:-.01em;
}
#fase1-content .strat-namebar__badge,
#fase2-content .strat-namebar__badge,
#activos-content .strat-namebar__badge,
#profundizar-content .strat-namebar__badge{
  border-radius:7px;
  padding:3px 9px;
  font-size:10px;
  background:#ecfdf5;
  color:#047857;
}

/* 3) Cards y bloques: bordes sobrios, menos redondeo y headers con jerarquía */
.card,
.gen-block,
.f1-layer,
.proc-sec,
.launch-block,
.f1-track-prep,
.f2-resumen-box,
.recurso-item,
.base-selector,
.f2-ctx-grid,
.prompt-output,
.mve-side,
.track-check-item,
.f2-baja-item,
.auto-ck-item,
.vcheck-item,
.f1-cta,
.f1-intro{
  border-radius:var(--rs)!important;
  box-shadow:0 1px 2px rgba(15,23,42,.04),0 6px 18px rgba(15,23,42,.035);
}
.card__hd,
.gen-block__hd,
.f1-layer__hd,
.proc-sec__hd,
.launch-block__hd,
.f1-track-prep__hd,
.recurso-item__hd,
.prompt-output__hd{
  border-bottom:1px solid #dbe3ec;
  background:#f8fafc;
}
.card__label,
.gen-block__letter,
.f2-section-hd,
.panel-section__title,
.base-selector__label,
.f1-intro__label,
.launch-block__label{
  font-size:10.5px;
  font-weight:820;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.card__name,
.gen-block__title,
.f1-layer__title,
.proc-sec__title,
.launch-block__title,
.f1-track-prep__title,
.recurso-item__name,
.prompt-output__title,
.f2-tab-hd__title{
  font-weight:800;
  color:#0f172a;
  letter-spacing:-.018em;
}
.card__desc,
.f1-layer__q,
.f1-layer__out,
.proc-sec__desc,
.f1-track-prep__sub,
.f2-tab-hd__sub,
.recurso-item__type,
.prompt-output__box,
.f__hint,
.f2-field label + .f__hint{
  color:#64748b;
  line-height:1.56;
}

/* 4) Jerarquía de campos: etiquetas más fuertes que respuestas/opciones */
.f__lbl,
.f2-field label,
.panel-field label,
.color-field label{
  font-size:14px!important;
  font-weight:760!important;
  color:#0f172a!important;
  letter-spacing:-.012em;
  line-height:1.3;
  margin-bottom:8px!important;
}
.f2-ctx-lbl,
.f1-track-prep__lbl,
.mve-mini__lbl,
.canal-row__lbl,
.calc-input__lbl,
.kpi-card__lbl,
.strat-kpi__lbl,
.progreso-item__text,
.auto-ck__text,
.vcheck-label{
  font-weight:700;
}
.f2-ctx-val,
.f1-track-prep__val,
.mve-mini__val,
.canal-row__txt,
.track-check-text,
.cadencia-cell input,
.cadencia-cell textarea,
.track-matrix td input,
.track-matrix td textarea{
  font-weight:460;
  color:#334155;
}
.req{
  margin-left:2px!important;
  transform:translateY(-1px);
}

/* 5) Chips, badges, inputs y controles: menos forma de píldora */
.chip,
.f2-chip,
.use-tag,
.ctx-tag,
.profile-hint__tag,
.base-inherited__tag,
.strat-meta-chip,
.funnel-row__rate,
.phase-item__badge,
.strat-card__active-badge,
.activos-tab,
.sp-filter,
.proc-sub,
.f2-tab-btn,
.btn,
.btn-sm,
.btn-copy,
.btn-ghost,
.btn-outline-dark,
.f1-prereq__btn,
.f1-cta__btn,
.strat-namebar__new{
  border-radius:7px!important;
}
.chip,
.f2-chip{
  font-size:12px;
  line-height:1.35;
  font-weight:470;
  color:#475569;
  background:#fff;
  border-color:#cbd5e1;
}
.chip.sel,
.chip[aria-pressed="true"],
.f2-chip.sel{
  font-weight:700;
  color:#fff!important;
}
input,
select,
textarea,
.base-selector__select,
.f2-field input,
.f2-field textarea,
.f2-field select,
.panel-field input,
.color-field input{
  border-radius:7px!important;
}

/* 6) Navegaciones internas: quitar subrayados pesados y usar estados sólidos */
.proc-sub-nav,
.f2-tab-nav{
  border:.5px solid #e1e7ef!important;
  border-radius:var(--rs);
  overflow-x:auto;
  padding:0!important;
  background:#f8fafc;
  box-shadow:none;
}
.proc-sub,
.f2-tab-btn{
  border-bottom:0!important;
  margin-bottom:0!important;
  min-height:42px;
}
.proc-sub.on{
  background:var(--phase1)!important;
  color:#fff!important;
  font-weight:760!important;
}
.proc-sub.on .proc-sub__num{
  color:rgba(255,255,255,.76)!important;
}
#fase2-content .f2-tab-btn.on{
  background:var(--phase2)!important;
  color:#fff!important;
  font-weight:760!important;
  border-bottom:0!important;
}
#fase2-content .f2-tab-btn.on .f2-tab-btn__letter{
  background:rgba(255,255,255,.18)!important;
  color:#fff!important;
}
.proc-sub:hover:not(.on),
.f2-tab-btn:hover:not(.on){
  background:#eef2f7!important;
}

/* 7) Callouts globales: sin línea tipo IA, más sobrios */
.callout,
.funnel-edu,
.f1-prereq,
.base-selector,
.f2-ctx-grid,
.launch-block__ok,
.launch-block__warn,
.launch-block__fail{
  border-left-width:1px!important;
  border-left-style:solid!important;
  border-radius:var(--rs)!important;
}
#fase1-content .callout.info,
#fase2-content .callout.info{
  background:#f8fafc!important;
  border-color:#dbe3ec!important;
  color:#334155!important;
}
#fase1-content .callout strong,
#fase2-content .callout strong{
  color:#0f172a;
}

/* 8) Fase 1: bloques PROC con identidad más premium y consistente */
#fase1-content .f1-intro{
  border:1px solid #dbe3ec;
  background:linear-gradient(135deg,#ffffff,#ecfdf5);
  overflow:hidden;
}
#fase1-content .f1-intro__hd{
  background:linear-gradient(135deg,#0f766e,#115e59);
  color:#fff;
}
#fase1-content .f1-intro__mono,
#fase1-content .f1-intro__label,
#fase1-content .f1-intro__sub{
  color:#fff!important;
}
#fase1-content .f1-layer{
  border-color:#dbe3ec;
  background:#fff;
  transition:transform .15s,border-color .15s,box-shadow .15s;
}
#fase1-content .f1-layer:hover{
  transform:translateY(-1px);
  border-color:rgba(15,118,110,.35);
  box-shadow:0 10px 24px rgba(15,118,110,.08);
}
#fase1-content .f1-layer__letter,
#fase1-content .proc-sec__letter{
  border-radius:7px!important;
  background:var(--phase1)!important;
  color:#fff!important;
}
#fase1-content .f1-layer__q{
  color:#0f172a;
  font-weight:620;
}
#fase1-content .f1-layer__out{
  color:#475569;
}
#fase1-content .proc-sec{
  border-color:#dbe3ec;
  background:#fff;
}
#fase1-content .proc-sec__hd{
  background:linear-gradient(135deg,#f8fafc,#ecfdf5);
}
#fase1-content .proc-sec__status.ok{
  background:#ecfdf5;
  color:#047857;
  border-radius:7px;
}

/* 9) Fase 2/TRACK: matrices, contexto y checks con la misma lógica visual */
#fase2-content .f2-tab-hd{
  margin:24px 0 18px;
}
#fase2-content .f2-tab-hd__title{
  font-size:20px;
}
#fase2-content .f2-section-hd{
  border:0;
  padding:0;
  margin:24px 0 12px;
  color:#4f46e5;
}
#fase2-content .f2-ctx-grid{
  border-color:#dbe3ec!important;
  border-radius:var(--rs)!important;
  box-shadow:0 1px 2px rgba(15,23,42,.04),0 6px 18px rgba(15,23,42,.035);
}
#fase2-content .f2-ctx-item{
  background:#fff;
}
#fase2-content .f2-ctx-lbl{
  color:#4f46e5;
  opacity:.9;
}
#fase2-content .track-matrix{
  border-radius:var(--rs);
  overflow:hidden;
  box-shadow:0 1px 2px rgba(15,23,42,.04),0 6px 18px rgba(15,23,42,.035);
}
#fase2-content .track-matrix th{
  background:#eef2ff;
  color:#3730a3;
}
#fase2-content .track-check-item,
#fase2-content .auto-ck-item,
#fase2-content .vcheck-item{
  border-radius:var(--rs)!important;
  background:#fff;
}
#fase2-content .track-check-item.on,
#fase2-content .auto-ck-item.done,
#fase2-content .vcheck-item.done{
  background:#ecfdf5!important;
  border-color:#bbf7d0!important;
}

/* 10) Indicadores/progreso generales: más claros y sin verdes duplicados innecesarios */
.progreso-section{
  background:linear-gradient(135deg,#0f172a,#1e3a5f)!important;
  border-radius:var(--rs)!important;
}
.progreso-item__check.done{
  background:#22c55e!important;
}
.kpi-card,
.strat-kpi{
  border-radius:var(--rs)!important;
}

/* 11) Responsive de normalización global */
@media(max-width:640px){
  #fase1-content .hdr,
  #fase2-content .hdr,
  #activos-content .hdr,
  #profundizar-content .hdr{
    padding-top:22px;
  }
  .proc-sub-nav,
  .f2-tab-nav{
    margin-top:14px;
  }
  .proc-sub,
  .f2-tab-btn{
    min-height:38px;
    padding:8px 11px!important;
  }
}

/* ═══════════════════════════════════════════════════════════════
   v40.17 — Ajustes puntuales solicitados
   Alcance: padding resumen Fase 0, cabecera PROC y proporción visual del embudo.
═══════════════════════════════════════════════════════════════ */

/* 1) Resumen de estrategia: mismo aire interno que las secciones anteriores */
#fase0-content #sec3 .strat-header{
  padding:24px 26px 26px!important;
  margin:4px 0 22px!important;
  border-radius:var(--rs)!important;
  border:1px solid #dbe3ec!important;
  background:linear-gradient(135deg,#ffffff 0%,#eef4ff 100%)!important;
  box-shadow:0 10px 24px rgba(15,23,42,.045)!important;
}
#fase0-content #sec3 .strat-header__title{
  margin:0 0 8px!important;
}
#fase0-content #sec3 .strat-header__sub{
  margin:0!important;
  max-width:760px!important;
}

/* 2) PROC: el bloque principal debe sentirse como encabezado destacado, no como header oscuro dentro de caja blanca */
#fase1-content .f1-intro{
  padding:22px 24px!important;
  border:0!important;
  background:radial-gradient(circle at 16% 0%,rgba(45,212,191,.26),transparent 34%),linear-gradient(135deg,#064e3b 0%,#0f766e 58%,#115e59 100%)!important;
  box-shadow:0 18px 38px rgba(15,118,110,.18)!important;
  color:#fff!important;
}
#fase1-content .f1-intro__hd{
  padding:0 0 14px!important;
  margin:0 0 14px!important;
  border-bottom:1px solid rgba(255,255,255,.18)!important;
  background:transparent!important;
  color:#fff!important;
}
#fase1-content .f1-intro__mono,
#fase1-content .f1-intro__label,
#fase1-content .f1-intro__sub{
  color:#fff!important;
}
#fase1-content .f1-intro__label{
  opacity:.90;
}
#fase1-content .f1-intro__sub,
#fase1-content .f1-intro__desc{
  color:rgba(255,255,255,.82)!important;
}
#fase1-content .f1-intro__desc{
  max-width:880px;
}

/* 3) Embudo dinámico: mantener relación numérica y evitar distorsión por pisos visuales altos */
#fase0-content .funnel-row__fill{
  min-width:0!important;
}
#fase0-content #fb6{
  min-width:0!important;
  background:linear-gradient(90deg,#ffffff 0%,#f0fdf4 48%,#bbf7d0 100%)!important;
}
#fase0-content #fr6 .funnel-row__bar{
  background:rgba(255,255,255,.25)!important;
}
#fase0-content .funnel-row--highlight{
  background:linear-gradient(135deg,#047857 0%,#16a34a 48%,#22c55e 100%)!important;
}

/* 4) Resumen final: el embudo conserva proporción desde JS y cierres termina en verde, no negro */
#fase0-content .strat-funnel__stage--final .strat-funnel__bar{
  min-width:150px!important;
  background:linear-gradient(90deg,#22c55e 0%,#16a34a 52%,#047857 100%)!important;
  color:#fff!important;
  box-shadow:0 14px 30px rgba(22,163,74,.30)!important;
}
#fase0-content .strat-funnel__stage--final .strat-funnel__label,
#fase0-content .strat-funnel__stage--final .strat-funnel__num{
  color:#fff!important;
}
@media(max-width:640px){
  #fase0-content #sec3 .strat-header{
    padding:20px 18px 22px!important;
  }
  #fase1-content .f1-intro{
    padding:20px 18px!important;
  }
  #fase0-content .strat-funnel__stage--final .strat-funnel__bar{
    min-width:120px!important;
  }
}


/* v40.18 — Corrección final del embudo del resumen de Estrategia Comercial */
#fase0-content .strat-funnel .strat-funnel__stage:nth-child(1) .strat-funnel__bar{
  width:100%!important;
  background:linear-gradient(90deg,#172554 0%,#1d4ed8 100%)!important;
}
#fase0-content .strat-funnel .strat-funnel__stage:nth-child(2) .strat-funnel__bar{
  width:82%!important;
  background:linear-gradient(90deg,#1e40af 0%,#2563eb 100%)!important;
}
#fase0-content .strat-funnel .strat-funnel__stage:nth-child(3) .strat-funnel__bar{
  width:66%!important;
  background:linear-gradient(90deg,#2563eb 0%,#0ea5e9 100%)!important;
}
#fase0-content .strat-funnel .strat-funnel__stage:nth-child(4) .strat-funnel__bar{
  width:50%!important;
  background:linear-gradient(90deg,#0284c7 0%,#06b6d4 100%)!important;
}
#fase0-content .strat-funnel .strat-funnel__stage:nth-child(5) .strat-funnel__bar{
  width:38%!important;
  background:linear-gradient(90deg,#0891b2 0%,#14b8a6 100%)!important;
}
#fase0-content .strat-funnel .strat-funnel__stage:nth-child(6) .strat-funnel__bar{
  width:28%!important;
  background:linear-gradient(90deg,#0d9488 0%,#10b981 100%)!important;
}
#fase0-content .strat-funnel .strat-funnel__stage:nth-child(7) .strat-funnel__bar,
#fase0-content .strat-funnel .strat-funnel__stage--final .strat-funnel__bar{
  width:22%!important;
  min-width:124px!important;
  background:linear-gradient(90deg,#22c55e 0%,#16a34a 50%,#047857 100%)!important;
  color:#fff!important;
  box-shadow:0 14px 30px rgba(34,197,94,.32)!important;
}
#fase0-content .strat-funnel .strat-funnel__stage--final .strat-funnel__label,
#fase0-content .strat-funnel .strat-funnel__stage--final .strat-funnel__num{
  color:#fff!important;
}
@media(max-width:640px){
  #fase0-content .strat-funnel .strat-funnel__stage:nth-child(7) .strat-funnel__bar,
  #fase0-content .strat-funnel .strat-funnel__stage--final .strat-funnel__bar{
    min-width:108px!important;
  }
}


/* v40.21 — Ajuste milimétrico embudo dinámico Fase 0
   Solo elimina el mínimo fijo que hacía que Reservas se viera más ancho que Visitas. */
#fase0-content #fb5{
  min-width:0!important;
}

/* Fase 1 — selector de estrategia base en topbar */
.topbar__strategy-select{
  min-width:150px;
  max-width:190px;
  border:1px solid #dbe3ec;
  border-radius:7px;
  background:#fff;
  color:#334155;
  font-size:12px;
  font-weight:650;
  padding:5px 8px;
  outline:none;
}
#topbar-strategy-f1 .topbar__strategy-input{flex:1.1;}
#topbar-strategy-f1 .strat-namebar__badge{font-size:10.5px;white-space:nowrap;}
@media(max-width:980px){
  .topbar__strategy-select{min-width:120px;max-width:150px;font-size:11.5px;padding:4px 6px;}
}
@media(max-width:680px){
  #topbar-strategy-f1 .topbar__strategy-input{display:none;}
  .topbar__strategy-select{flex:1;max-width:none;}
}
