
/* ===== base-0 ===== */
:root{--navy:#061a33;--navy2:#08284d;--blue:#0f62fe;--blue2:#2f8df5;--green:#0f9f6e;--orange:#f59e0b;--red:#ef4444;--purple:#7c3aed;--cyan:#06b6d4;--bg:#f4f7fb;--card:#fff;--text:#0b1730;--muted:#64748b;--line:#e2e8f0;--shadow:0 20px 50px rgba(8,40,77,.12);--radius:22px}*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:linear-gradient(180deg,#071b33 0,#071b33 118px,#f5f8fc 118px,#eef3f9 100%);color:var(--text)}button,input,select,textarea{font-family:inherit}.hidden{display:none!important}.app{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.side{background:linear-gradient(180deg,#06172d,#071f3d 55%,#031022);color:#fff;padding:20px 16px;position:sticky;top:0;height:100vh;overflow:auto}.brand{display:flex;align-items:center;gap:12px;margin-bottom:24px}.brand img{width:180px;max-height:74px;object-fit:contain;background:#fff;border-radius:10px;padding:6px}.brand-title{font-weight:900;line-height:1.1}.small{font-size:12px;color:#94a3b8}.menu{display:grid;gap:8px}.nav{border:0;background:transparent;color:#dbeafe;border-radius:14px;padding:13px 14px;text-align:left;font-weight:800;cursor:pointer;display:flex;gap:10px;align-items:center}.nav:hover,.nav.active{background:linear-gradient(135deg,#0f62fe,#0757d8);color:#fff;box-shadow:0 12px 24px rgba(15,98,254,.22)}.side-card{margin-top:18px;border:1px solid rgba(255,255,255,.15);border-radius:18px;padding:14px;background:rgba(255,255,255,.05)}.avatar{width:52px;height:52px;border-radius:50%;object-fit:cover;background:#e5e7eb}.main{padding:22px 28px 46px;overflow:auto}.top{height:96px;display:flex;justify-content:space-between;align-items:flex-start;color:#fff}.top h1{margin:0;font-size:32px;letter-spacing:-.5px}.top p{margin:6px 0 0;color:#dbeafe}.top-actions{display:flex;gap:10px;align-items:center}.btn{border:0;border-radius:13px;padding:11px 15px;font-weight:900;cursor:pointer;box-shadow:0 12px 24px rgba(15,98,254,.12)}.btn-primary{background:linear-gradient(135deg,#0f62fe,#2f8df5);color:#fff}.btn-dark{background:#0f172a;color:#fff}.btn-green{background:linear-gradient(135deg,#0f9f6e,#22c55e);color:#fff}.btn-gold{background:linear-gradient(135deg,#f59e0b,#facc15);color:#241a00}.btn-soft{background:#eef6ff;color:#0f62fe}.btn-danger{background:#fee2e2;color:#b91c1c}.pill{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:900}.pill.green{background:#dcfce7;color:#166534}.pill.yellow{background:#fef3c7;color:#92400e}.pill.red{background:#fee2e2;color:#991b1b}.pill.blue{background:#dbeafe;color:#1d4ed8}.pill.purple{background:#ede9fe;color:#6d28d9}.grid{display:grid;gap:16px}.g2{grid-template-columns:repeat(2,1fr)}.g3{grid-template-columns:repeat(3,1fr)}.g4{grid-template-columns:repeat(4,1fr)}.g5{grid-template-columns:repeat(5,1fr)}.layout{display:grid;grid-template-columns:1.2fr .8fr;gap:16px}.card{background:rgba(255,255,255,.96);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px}.card h2,.card h3{margin:0 0 12px;color:#0b1730}.metric{min-height:112px;display:flex;flex-direction:column;justify-content:space-between}.metric .label{font-size:12px;font-weight:900;color:#334155;text-transform:uppercase}.metric .value{font-size:28px;font-weight:950}.field{display:grid;gap:6px}.field label{font-size:12px;font-weight:900;color:#475569}.field input,.field select,.field textarea{width:100%;border:1px solid #d9e4ef;border-radius:13px;background:#fbfdff;padding:11px;color:#0f172a}.field textarea{min-height:90px;resize:vertical}.logo-preview{height:64px;max-width:220px;object-fit:contain;background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:6px}.question{border:1px solid #e2e8f0;border-radius:18px;padding:16px;margin-bottom:12px;background:linear-gradient(180deg,#fff,#f8fbff)}.question-title{font-weight:900;line-height:1.45;margin-bottom:12px}.opt-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.option{border:1px solid #dbe5ef;border-radius:14px;background:#fff;padding:10px;font-size:12px;cursor:pointer;min-height:80px}.option.selected{border-color:#0f62fe;background:#eff6ff;box-shadow:0 0 0 2px rgba(15,98,254,.15)}.option b{display:block;margin-bottom:4px}.radar-box{height:330px}.bar{height:9px;background:#e5edf6;border-radius:999px;overflow:hidden}.bar span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#0f62fe,#22c55e)}.dim-row{display:grid;grid-template-columns:130px 1fr 48px 120px;gap:12px;align-items:center;padding:10px;border-bottom:1px solid #eef2f7}.arch{display:grid;grid-template-columns:1fr 60px 1fr;gap:12px;align-items:stretch}.arch-panel{border-radius:20px;border:1px solid #e2e8f0;padding:16px;background:#fff}.arch-panel.current{background:linear-gradient(180deg,#fff7f7,#fff)}.arch-panel.target{background:linear-gradient(180deg,#f0fdf4,#fff)}.node-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.node{border:1px solid #dbe5ef;border-radius:14px;padding:13px;background:#fff;text-align:center;font-weight:900;font-size:12px;min-height:74px}.node.warn{border-color:#fecaca;background:#fff5f5}.node.good{border-color:#bbf7d0;background:#f0fdf4}.arrow{display:flex;justify-content:center;align-items:center}.arrow div{width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#0f62fe,#2f8df5);color:#fff;font-size:26px;font-weight:900}.road{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid #dbe5ef;border-radius:20px;overflow:hidden}.stage{padding:16px;background:#fff;border-right:1px solid #e2e8f0}.stage:last-child{border-right:0}.stage h3{font-size:16px}.initiative{border:1px solid #e2e8f0;border-radius:14px;padding:12px;margin-top:10px;background:#f8fbff}.scenario-card{border:1px solid #dbe5ef;border-radius:20px;padding:16px;background:#fff;cursor:pointer}.scenario-card.active{border-color:#0f62fe;box-shadow:0 0 0 3px rgba(15,98,254,.12)}.table{width:100%;border-collapse:collapse;font-size:13px}.table th,.table td{border-bottom:1px solid #e5edf6;padding:10px;text-align:left}.table th{color:#475569;font-size:12px;text-transform:uppercase}.login{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:radial-gradient(circle at 20% 10%,rgba(47,141,245,.25),transparent 24%),linear-gradient(135deg,#06172d,#0a3565)}.login-box{width:min(980px,100%);display:grid;grid-template-columns:1fr 1fr;background:#fff;border-radius:30px;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.26)}.login-hero{background:linear-gradient(135deg,#06172d,#0f62fe);color:#fff;padding:34px}.login-hero img{width:260px;background:#fff;border-radius:14px;padding:8px}.login-form{padding:34px}.canvas-card{display:grid;grid-template-columns:1fr 1fr;gap:16px}.flow-chip{border-radius:999px;background:#eef6ff;color:#0757d8;font-size:12px;font-weight:900;padding:8px 12px;display:inline-flex;margin:4px}.alert{border-left:5px solid #0f62fe;background:#eff6ff;padding:14px;border-radius:14px;color:#123}.impact-img{border-radius:20px;overflow:hidden;border:1px solid #dbe5ef;background:linear-gradient(135deg,#071b33,#0f62fe);min-height:150px;color:#fff;padding:16px;position:relative}.impact-img:after{content:"";position:absolute;width:160px;height:160px;border-radius:50%;right:-45px;top:-45px;background:rgba(255,255,255,.10)}.impact-img h3{color:#fff;position:relative;z-index:1}.impact-img p{position:relative;z-index:1;color:#dbeafe}.footer{color:#64748b;text-align:center;font-size:12px;margin-top:22px}.range{accent-color:#0f62fe}.tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.tab{border:1px solid #dbe5ef;background:#fff;border-radius:999px;padding:9px 12px;font-weight:900;cursor:pointer}.tab.active{background:#0f62fe;color:#fff;border-color:#0f62fe}.kpi-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.view{display:none}.view.active{display:block}@media(max-width:1100px){.app{grid-template-columns:1fr}.side{position:relative;height:auto}.layout,.g2,.g3,.g4,.g5,.kpi-strip,.arch,.canvas-card,.login-box{grid-template-columns:1fr}.opt-grid,.node-grid,.road{grid-template-columns:1fr}.top{height:auto;margin-bottom:16px}.main{padding:16px}.arrow{display:none}}

/* ===== login-v24-clean-professional ===== */
#login.login-v24 {
    min-height:100vh;
    width:100vw;
    position:relative;
    overflow:hidden;
    background:#06172d;
    font-family:Inter,Segoe UI,Arial,sans-serif;
  }
  #login.login-v24.hidden { display:none!important; }

  .login-bg-atmos-v24 {
    position:absolute;
    inset:0;
    background-image:url('../img/login-bg.png');
    background-size:cover;
    background-position:center center;
    background-repeat:no-repeat;
    filter:blur(2px) saturate(.95);
    transform:scale(1.02);
    opacity:.28;
    z-index:0;
  }

  .login-gradient-v24 {
    position:absolute;
    inset:0;
    z-index:1;
    background:
      radial-gradient(circle at 20% 30%, rgba(15,98,254,.16), transparent 28%),
      radial-gradient(circle at 75% 25%, rgba(255,255,255,.35), transparent 24%),
      linear-gradient(90deg, #031022 0%, #06172d 47%, #eaf3fb 47.2%, #ffffff 100%);
  }

  .login-brand-v24 {
    position:relative;
    z-index:3;
    display:flex;
    align-items:flex-start;
    gap:28px;
    padding:34px 46px 0;
    color:#fff;
  }
  .login-brand-v24 img {
    width:300px;
    max-height:112px;
    object-fit:contain;
    background:transparent!important;
    border-radius:0!important;
    box-shadow:none!important;
    padding:0!important;
    filter:drop-shadow(0 10px 22px rgba(0,0,0,.28));
  }
  .brand-separator-v24 {
    width:1px;
    height:112px;
    background:rgba(255,255,255,.42);
  }
  .login-brand-v24 h1 {
    margin:0;
    color:#fff;
    font-size:32px;
    line-height:1.08;
    font-weight:950;
    letter-spacing:.3px;
  }
  .login-brand-v24 p {
    margin:16px 0 0;
    color:#fff;
    font-size:18px;
    line-height:1.3;
  }

  .login-content-v24 {
    position:relative;
    z-index:4;
    display:grid;
    grid-template-columns:1fr 112px 1fr;
    gap:48px;
    align-items:center;
    padding:78px 9vw 122px;
  }

  .login-card-v24 {
    width:min(470px,100%);
    border-radius:24px;
    padding:30px;
    box-shadow:0 28px 80px rgba(0,0,0,.27);
  }
  .card-consultor-v24 {
    justify-self:center;
    background:linear-gradient(145deg,rgba(3,16,34,.96),rgba(7,31,61,.94));
    border:1px solid rgba(255,255,255,.23);
    color:#fff;
  }
  .card-empresario-v24 {
    justify-self:center;
    background:rgba(255,255,255,.985);
    border:1px solid rgba(226,232,240,.96);
    color:#0b1730;
  }

  .login-icon-v24 {
    width:72px;
    height:72px;
    margin:0 auto 18px;
    border-radius:50%;
    border:2px solid #1267f1;
    display:grid;
    place-items:center;
    font-size:34px;
    background:rgba(15,98,254,.10);
  }
  .business-v24 { color:#1267f1;background:#fff; }

  .login-card-v24 h2 {
    margin:0 0 8px;
    color:inherit;
    text-align:center;
    font-size:24px;
    font-weight:950;
    letter-spacing:.2px;
  }
  .login-card-v24 p {
    margin:0 0 24px;
    text-align:center;
    font-size:15px;
    line-height:1.4;
  }
  .card-consultor-v24 p { color:#dbeafe; }
  .card-empresario-v24 p { color:#334155; }

  .login-card-v24 label {
    display:block;
    margin:14px 0 8px;
    font-size:14px;
    font-weight:800;
    color:inherit;
  }

  .input-box-v24 {
    height:48px;
    border-radius:12px;
    display:flex;
    align-items:center;
    gap:10px;
    padding:0 14px;
  }
  .input-dark-v24 {
    background:#06172d;
    border:1px solid rgba(148,163,184,.55);
    color:#fff;
  }
  .input-light-v24 {
    background:#fff;
    border:1px solid #cbd5e1;
    color:#0f172a;
  }
  .input-box-v24 input {
    width:100%;
    height:100%;
    border:0!important;
    outline:0!important;
    background:transparent!important;
    color:inherit!important;
    font-size:14px!important;
    font-weight:700!important;
    padding:0!important;
  }
  .input-dark-v24 input::placeholder { color:#94a3b8; }
  .input-light-v24 input::placeholder { color:#94a3b8; }

  .login-row-v24 {
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:14px;
    margin:16px 0 20px;
    font-size:13px;
    color:#e2e8f0;
  }
  .row-light-v24 { color:#0f172a; }
  .login-row-v24 a,.login-card-v24 small a {
    color:#1d8cff;
    text-decoration:none;
    font-weight:800;
  }
  .login-card-v24 button {
    width:100%;
    height:52px;
    border:0;
    border-radius:12px;
    cursor:pointer;
    background:linear-gradient(135deg,#1267f1,#0757d8);
    color:#fff;
    font-weight:950;
    letter-spacing:.2px;
    box-shadow:0 12px 24px rgba(15,98,254,.25);
  }
  .login-card-v24 button:hover { filter:brightness(1.04); }
  .login-card-v24 small {
    display:block;
    margin-top:18px;
    text-align:center;
    font-size:14px;
    color:inherit;
  }

  .target-v24 {
    width:112px;
    height:112px;
    border-radius:50%;
    background:#fff;
    border:8px solid rgba(30,64,175,.72);
    box-shadow:0 22px 60px rgba(0,0,0,.25);
    position:relative;
    justify-self:center;
  }
  .target-v24:before {
    content:"";
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%);
    width:74px;
    height:74px;
    border-radius:50%;
    background:#fff;
    border:12px solid #183f9e;
  }
  .target-v24:after {
    content:"";
    position:absolute;
    left:62px;
    top:18px;
    width:34px;
    height:34px;
    background:#c8102e;
    clip-path:polygon(0 45%,100% 0,55% 100%);
    transform:rotate(-8deg);
  }

  .value-strip-v24 {
    position:absolute;
    z-index:5;
    left:36px;
    right:36px;
    bottom:28px;
    min-height:96px;
    display:grid;
    grid-template-columns:repeat(5,1fr);
    background:rgba(3,16,34,.96);
    border:1px solid rgba(255,255,255,.20);
    border-radius:20px;
    box-shadow:0 24px 60px rgba(0,0,0,.35);
    backdrop-filter:blur(8px);
    padding:17px 22px;
  }
  .value-strip-v24 div {
    position:relative;
    padding:0 20px 0 58px;
    border-right:1px solid rgba(255,255,255,.22);
    color:#fff;
  }
  .value-strip-v24 div:last-child { border-right:0; }
  .value-strip-v24 i {
    position:absolute;
    left:12px;
    top:11px;
    width:34px;
    height:34px;
    display:grid;
    place-items:center;
    border:1px solid rgba(255,255,255,.78);
    border-radius:50%;
    font-style:normal;
    font-size:18px;
  }
  .value-strip-v24 b {
    display:block;
    color:#fff;
    font-size:14px;
    line-height:1.1;
    margin-bottom:6px;
  }
  .value-strip-v24 span {
    display:block;
    color:#e2e8f0;
    font-size:13px;
    line-height:1.25;
  }

  @media(max-width:1200px){
    #login.login-v24 { overflow:auto; }
    .login-gradient-v24 {
      background:linear-gradient(180deg,#031022 0%,#06172d 48%,#f8fbff 48.2%,#fff 100%);
    }
    .login-brand-v24 {
      display:grid;
      gap:16px;
      padding:28px 22px 0;
    }
    .brand-separator-v24,.target-v24 { display:none; }
    .login-brand-v24 img { width:260px; }
    .login-brand-v24 h1 { font-size:28px; }
    .login-brand-v24 p { font-size:16px; }
    .login-content-v24 {
      grid-template-columns:1fr;
      padding:40px 22px 160px;
      gap:28px;
    }
    .value-strip-v24 {
      position:relative;
      left:auto;
      right:auto;
      bottom:auto;
      margin:28px 20px;
      grid-template-columns:1fr;
      gap:12px;
    }
    .value-strip-v24 div {
      border-right:0;
      border-bottom:1px solid rgba(255,255,255,.16);
      padding-bottom:12px;
    }
    .value-strip-v24 div:last-child { border-bottom:0; }
  }

/* ===== login-impact-v25 ===== */
/* Reintegra imágenes de impacto sin duplicar las credenciales */
  .login-bg-atmos-v24{
    opacity:.20!important;
    filter:blur(2px) saturate(.90)!important;
  }

  .impact-layer-v25{
    position:absolute;
    z-index:2;
    pointer-events:none;
    overflow:hidden;
    border-radius:22px;
    opacity:.82;
  }

  .impact-layer-v25 img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
  }

  .impact-left-v25{
    left:7.2vw;
    top:150px;
    width:43vw;
    height:260px;
    border:1px solid rgba(255,255,255,.10);
    box-shadow:0 28px 80px rgba(0,0,0,.24);
    mask-image:linear-gradient(90deg, black 0%, black 72%, transparent 100%);
    -webkit-mask-image:linear-gradient(90deg, black 0%, black 72%, transparent 100%);
  }

  .impact-right-v25{
    right:5.4vw;
    top:42px;
    width:45vw;
    height:330px;
    opacity:.62;
    border-radius:0;
    mask-image:linear-gradient(180deg, black 0%, black 68%, transparent 100%);
    -webkit-mask-image:linear-gradient(180deg, black 0%, black 68%, transparent 100%);
  }

  .login-brand-v24,
  .login-content-v24,
  .value-strip-v24{
    position:relative;
    z-index:5;
  }

  .login-content-v24{
    padding-top:96px!important;
  }

  @media(max-width:1200px){
    .impact-layer-v25{display:none!important;}
  }

/* ===== layout-v26-ajustes-consultor ===== */
.side .brand{
    align-items:center!important;
    gap:10px!important;
  }
  .side .brand img{
    width:132px!important;
    max-width:132px!important;
    height:auto!important;
    object-fit:contain!important;
    flex:0 0 auto!important;
  }
  .side .brand > div{
    min-width:0!important;
    overflow:visible!important;
  }
  .side .brand-title{
    font-size:13px!important;
    line-height:1.05!important;
    white-space:normal!important;
    overflow:visible!important;
    max-width:96px!important;
    word-break:normal!important;
  }
  .side .brand .small{
    font-size:10px!important;
    line-height:1.15!important;
    white-space:normal!important;
    max-width:96px!important;
    overflow:visible!important;
  }
  .side-card.company-summary-hidden-v26{
    display:none!important;
  }
  .company-cell-v26{
    display:flex;
    align-items:center;
    gap:12px;
  }
  .company-logo-v26{
    width:54px;
    height:42px;
    border-radius:10px;
    object-fit:contain;
    background:#f8fafc;
    border:1px solid #dbe7f3;
    padding:4px;
  }
  .sector-pill-v26{
    display:inline-block;
    padding:6px 10px;
    border-radius:999px;
    background:#eef6ff;
    color:#0f62fe;
    font-weight:800;
    font-size:12px;
  }

/* ===== master-premium-v27 ===== */
.master-hero-v27{
    background:linear-gradient(135deg,#ffffff 0%,#f8fbff 100%);
    border:1px solid #dbe7f3;
    border-radius:26px;
    padding:24px;
    box-shadow:0 18px 50px rgba(15,23,42,.07);
  }
  .master-hero-v27 h2{
    margin:0 0 8px;
    font-size:28px;
    letter-spacing:-.4px;
    color:#071b33;
  }
  .master-hero-v27 p{
    margin:0;
    color:#64748b;
    font-size:15px;
  }
  .master-kpis-v27{
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:14px;
    margin-top:20px;
  }
  .master-kpi-v27{
    background:#fff;
    border:1px solid #dbe7f3;
    border-radius:18px;
    padding:16px;
    display:flex;
    gap:14px;
    align-items:center;
    box-shadow:0 12px 30px rgba(15,23,42,.05);
  }
  .master-kpi-v27 .ico{
    width:48px;height:48px;border-radius:16px;
    display:grid;place-items:center;
    font-size:24px;
    background:#eef6ff;color:#0f62fe;
    flex:0 0 auto;
  }
  .master-kpi-v27:nth-child(2) .ico{background:#f3e8ff;color:#7c3aed;}
  .master-kpi-v27:nth-child(3) .ico{background:#dcfce7;color:#16a34a;}
  .master-kpi-v27:nth-child(4) .ico{background:#ffedd5;color:#ea580c;}
  .master-kpi-v27:nth-child(5) .ico{background:#ccfbf1;color:#0f766e;}
  .master-kpi-v27 small{display:block;text-transform:uppercase;font-weight:900;color:#64748b;font-size:11px;}
  .master-kpi-v27 b{display:block;font-size:24px;color:#071b33;line-height:1.1;margin:3px 0;}
  .master-kpi-v27 span{font-size:12px;color:#64748b;}

  .sector-panel-v27{
    margin-top:16px;
    background:#fff;
    border:1px solid #dbe7f3;
    border-radius:24px;
    padding:20px;
    box-shadow:0 18px 50px rgba(15,23,42,.06);
  }
  .sector-head-v27{
    display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:16px;
  }
  .sector-head-v27 h3{margin:0;color:#071b33;font-size:19px;}
  .sector-head-v27 p{margin:4px 0 0;color:#64748b;}
  .sector-grid-v27{
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:12px;
  }
  .sector-card-v27{
    border:1px solid #dbe7f3;
    border-radius:18px;
    background:#fff;
    padding:16px;
    cursor:pointer;
    transition:.18s ease;
  }
  .sector-card-v27:hover{transform:translateY(-2px);box-shadow:0 16px 36px rgba(15,98,254,.10);}
  .sector-card-v27.active{
    border-color:#0f62fe;
    box-shadow:0 0 0 2px rgba(15,98,254,.12);
  }
  .sector-title-v27{
    display:flex;align-items:center;gap:10px;margin-bottom:12px;
    font-weight:900;color:#071b33;
  }
  .sector-title-v27 i{
    width:38px;height:38px;border-radius:14px;display:grid;place-items:center;background:#eef6ff;font-style:normal;
  }
  .sector-card-v27 .small-row{font-size:12px;color:#64748b;line-height:1.7;}
  .sector-progress-v27{
    height:7px;background:#e2e8f0;border-radius:999px;overflow:hidden;margin-top:12px;
  }
  .sector-progress-v27 span{display:block;height:100%;background:linear-gradient(90deg,#0f62fe,#38bdf8);border-radius:999px;}

  .master-body-v27{
    display:grid;
    grid-template-columns:1.05fr 1.65fr 1.2fr;
    gap:16px;
    margin-top:16px;
  }
  .premium-card-v27{
    background:#fff;
    border:1px solid #dbe7f3;
    border-radius:22px;
    padding:20px;
    box-shadow:0 18px 50px rgba(15,23,42,.06);
  }
  .premium-card-v27 h3{
    margin:0 0 12px;color:#071b33;font-size:18px;
  }
  .radar-v27{
    height:260px;display:grid;place-items:center;
  }
  .radar-v27 svg{max-width:100%;height:240px;}
  .bank-toolbar-v27{
    display:flex;gap:10px;align-items:center;margin-bottom:14px;
  }
  .bank-toolbar-v27 input,.bank-toolbar-v27 select{
    height:42px;border:1px solid #cbd5e1;border-radius:12px;padding:0 12px;background:#fff;color:#0f172a;
  }
  .bank-toolbar-v27 input{flex:1;}
  .question-card-v27{
    border:1px solid #dbe7f3;
    border-radius:16px;
    padding:14px;
    margin-bottom:12px;
    background:linear-gradient(180deg,#fff,#fbfdff);
  }
  .question-top-v27{display:flex;justify-content:space-between;gap:10px;margin-bottom:8px;align-items:center;}
  .question-code-v27{background:#dbeafe;color:#0f62fe;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:900;}
  .question-text-v27{color:#071b33;font-weight:750;line-height:1.35;margin-bottom:8px;}
  .stars-v27{color:#f59e0b;letter-spacing:1px;}
  .impact-pill-v27{
    display:inline-block;padding:5px 9px;border-radius:999px;background:#dcfce7;color:#15803d;font-size:12px;font-weight:900;
  }
  .impact-pill-v27.med{background:#fef3c7;color:#b45309;}
  .q-actions-v27{display:flex;gap:8px;}
  .q-actions-v27 button{
    width:34px;height:34px;border-radius:10px;border:1px solid #dbe7f3;background:#fff;cursor:pointer;
  }
  .impact-table-v27{width:100%;border-collapse:collapse;font-size:13px;}
  .impact-table-v27 th{text-align:left;color:#334155;font-size:12px;text-transform:uppercase;padding:9px;border-bottom:1px solid #e2e8f0;}
  .impact-table-v27 td{padding:10px 9px;border-bottom:1px solid #eef2f7;color:#071b33;}
  .tag-v27{padding:4px 8px;border-radius:999px;font-size:11px;font-weight:900;}
  .tag-green{background:#dcfce7;color:#15803d;}
  .tag-yellow{background:#fef3c7;color:#b45309;}
  .tag-blue{background:#dbeafe;color:#0f62fe;}
  .ai-box-v27{
    margin-top:16px;border:1px solid #e9d5ff;background:linear-gradient(135deg,#faf5ff,#fff);
    border-radius:18px;padding:16px;
  }
  .ai-box-v27 h3{display:flex;align-items:center;gap:8px;}
  .ai-grid-v27{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px;}
  .ai-grid-v27 input,.ai-grid-v27 select{
    height:42px;border:1px solid #d8b4fe;border-radius:12px;padding:0 12px;background:#fff;
  }
  .ai-box-v27 button{
    margin-top:12px;width:100%;height:44px;border:0;border-radius:12px;background:linear-gradient(135deg,#7c3aed,#9333ea);color:#fff;font-weight:900;cursor:pointer;
  }
  .master-footer-note-v27{
    margin-top:14px;background:#eef6ff;border:1px solid #dbeafe;color:#334155;border-radius:18px;padding:14px 18px;display:flex;justify-content:space-between;gap:12px;align-items:center;
  }
  @media(max-width:1300px){
    .master-kpis-v27{grid-template-columns:repeat(2,1fr);}
    .sector-grid-v27{grid-template-columns:repeat(3,1fr);}
    .master-body-v27{grid-template-columns:1fr;}
  }

/* ===== companies-premium-v28 ===== */
.companies-premium-wrap-v28{
    display:grid;
    gap:20px;
  }
  .companies-kpi-grid-v28{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:16px;
  }
  .companies-kpi-v28{
    background:#fff;
    border:1px solid #dbe7f3;
    border-radius:22px;
    padding:20px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    min-height:116px;
    box-shadow:0 18px 50px rgba(15,23,42,.06);
  }
  .companies-kpi-left-v28{
    display:flex;
    align-items:center;
    gap:16px;
  }
  .companies-kpi-icon-v28{
    width:58px;
    height:58px;
    border-radius:18px;
    display:grid;
    place-items:center;
    font-size:28px;
    background:#eef6ff;
    color:#0f62fe;
  }
  .companies-kpi-v28:nth-child(2) .companies-kpi-icon-v28{background:#f3e8ff;color:#7c3aed;}
  .companies-kpi-v28:nth-child(3) .companies-kpi-icon-v28{background:#dcfce7;color:#16a34a;}
  .companies-kpi-v28:nth-child(4) .companies-kpi-icon-v28{background:#ffedd5;color:#ea580c;}
  .companies-kpi-v28 small{
    display:block;
    font-size:12px;
    color:#64748b;
    text-transform:uppercase;
    font-weight:900;
    letter-spacing:.25px;
  }
  .companies-kpi-v28 b{
    display:block;
    font-size:30px;
    color:#071b33;
    line-height:1.05;
    margin:4px 0;
  }
  .companies-kpi-v28 span{
    color:#64748b;
    font-size:14px;
  }
  .mini-ring-v28{
    width:58px;
    height:58px;
    border-radius:50%;
    display:grid;
    place-items:center;
    font-size:12px;
    font-weight:900;
    color:#0f62fe;
    background:
      radial-gradient(closest-side,#fff 72%,transparent 73%),
      conic-gradient(#0f62fe 0 100%,#e2e8f0 0);
  }
  .mini-chart-v28{
    width:78px;
    height:52px;
    background:linear-gradient(180deg,transparent 0 58%,rgba(124,58,237,.12) 58%);
    border-radius:12px;
    position:relative;
    overflow:hidden;
  }
  .mini-chart-v28:before{
    content:"";
    position:absolute;
    inset:9px 6px 8px;
    background:linear-gradient(135deg,transparent 0 18%,#a78bfa 18% 22%,transparent 22% 45%,#8b5cf6 45% 50%,transparent 50% 72%,#7c3aed 72% 77%,transparent 77%);
  }
  .mini-pie-v28{
    width:58px;
    height:58px;
    border-radius:50%;
    background:conic-gradient(#22c55e 0 72%,#bbf7d0 72% 100%);
    box-shadow:inset 0 0 0 12px rgba(255,255,255,.65);
  }

  .portfolio-card-v28{
    background:#fff;
    border:1px solid #dbe7f3;
    border-radius:26px;
    padding:26px;
    box-shadow:0 18px 50px rgba(15,23,42,.06);
  }
  .portfolio-head-v28{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:18px;
    margin-bottom:22px;
  }
  .portfolio-head-v28 h2{
    margin:0;
    color:#071b33;
    font-size:28px;
    letter-spacing:-.4px;
  }
  .portfolio-tools-v28{
    display:flex;
    align-items:center;
    gap:12px;
    flex-wrap:wrap;
    margin-bottom:22px;
  }
  .search-v28,.select-v28{
    height:46px;
    border:1px solid #dbe7f3;
    border-radius:14px;
    background:#fff;
    color:#0f172a;
    padding:0 14px;
    box-shadow:0 8px 22px rgba(15,23,42,.04);
  }
  .search-v28{
    min-width:320px;
    flex:1;
  }
  .select-v28{
    min-width:210px;
  }
  .new-company-v28{
    margin-left:auto;
    height:46px;
    border:1px solid #0f62fe;
    background:#fff;
    color:#0f62fe;
    border-radius:14px;
    padding:0 18px;
    font-weight:900;
    cursor:pointer;
  }
  .companies-table-v28{
    width:100%;
    border-collapse:separate;
    border-spacing:0;
    border:1px solid #e2e8f0;
    border-radius:18px;
    overflow:hidden;
    background:#fff;
  }
  .companies-table-v28 th{
    text-align:left;
    padding:16px 18px;
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:.2px;
    color:#475569;
    background:#f8fbff;
    border-bottom:1px solid #e2e8f0;
  }
  .companies-table-v28 td{
    padding:16px;
    border-bottom:1px solid #eef2f7;
    color:#071b33;
    vertical-align:middle;
  }
  .companies-table-v28 tr:last-child td{border-bottom:0;}
  .company-info-v28{
    display:flex;
    align-items:center;
    gap:14px;
  }
  .company-logo-v28{
    width:62px;
    height:52px;
    border:1px solid #dbe7f3;
    border-radius:12px;
    background:#f8fafc;
    object-fit:contain;
    padding:5px;
    flex:0 0 auto;
  }
  .company-info-v28 b{
    display:block;
    font-size:16px;
    color:#071b33;
  }
  .company-info-v28 span{
    display:block;
    color:#64748b;
    font-size:13px;
    margin-top:3px;
  }
  .sector-badge-v28{
    display:inline-flex;
    align-items:center;
    gap:7px;
    padding:8px 12px;
    border-radius:999px;
    background:#eef6ff;
    color:#0f62fe;
    font-weight:900;
    font-size:13px;
  }
  .maturity-box-v28 b{
    font-size:18px;
    color:#071b33;
  }
  .maturity-bar-v28{
    width:78px;
    height:8px;
    background:#e2e8f0;
    border-radius:999px;
    overflow:hidden;
    margin:8px 0 4px;
  }
  .maturity-bar-v28 span{
    display:block;
    height:100%;
    border-radius:999px;
    background:linear-gradient(90deg,#0f62fe,#38bdf8);
  }
  .maturity-box-v28 small{
    color:#0f62fe;
    font-size:12px;
  }
  .status-v28{
    display:inline-flex;
    align-items:center;
    gap:7px;
    padding:8px 12px;
    border-radius:999px;
    background:#fef3c7;
    color:#92400e;
    font-weight:900;
    font-size:13px;
  }
  .status-v28:before{
    content:"";
    width:8px;
    height:8px;
    border-radius:50%;
    background:#22c55e;
  }
  .status-sub-v28{
    margin-top:6px;
    color:#64748b;
    font-size:12px;
  }
  .open-btn-v28{
    border:0;
    background:#eef6ff;
    color:#0f62fe;
    border-radius:14px;
    padding:12px 18px;
    font-weight:900;
    cursor:pointer;
  }
  .more-btn-v28{
    border:1px solid #dbe7f3;
    background:#fff;
    color:#334155;
    border-radius:14px;
    width:42px;
    height:42px;
    font-weight:900;
    cursor:pointer;
    margin-left:8px;
  }
  @media(max-width:1300px){
    .companies-kpi-grid-v28{grid-template-columns:repeat(2,1fr);}
    .companies-table-v28{font-size:13px;}
    .search-v28{min-width:220px;}
  }

/* ===== companies-pagination-v29 ===== */
.companies-pagination-v29{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin-top:18px;
    padding:14px 4px 0;
    color:#64748b;
    font-size:13px;
  }
  .pagination-actions-v29{
    display:flex;
    align-items:center;
    gap:8px;
  }
  .pagination-btn-v29{
    min-width:38px;
    height:38px;
    border:1px solid #dbe7f3;
    background:#fff;
    color:#0f62fe;
    border-radius:12px;
    font-weight:900;
    cursor:pointer;
    box-shadow:0 8px 20px rgba(15,23,42,.04);
  }
  .pagination-btn-v29.active{
    background:#0f62fe;
    color:#fff;
    border-color:#0f62fe;
  }
  .pagination-btn-v29:disabled{
    opacity:.45;
    cursor:not-allowed;
  }

/* ===== setup-premium-v30 ===== */
.setup-premium-v30{
    display:grid;
    grid-template-columns:1.6fr .95fr;
    gap:24px;
    align-items:start;
  }
  .setup-card-v30{
    background:#fff;
    border:1px solid #dbe7f3;
    border-radius:26px;
    padding:28px;
    box-shadow:0 18px 50px rgba(15,23,42,.06);
  }
  .setup-card-v30 h2{
    margin:0;
    font-size:28px;
    color:#071b33;
    letter-spacing:-.4px;
  }
  .setup-card-v30 .sub-v30{
    color:#64748b;
    margin:6px 0 24px;
    font-size:15px;
  }
  .setup-form-grid-v30{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:16px;
  }
  .setup-field-v30{
    min-height:76px;
    border:1px solid #dbe7f3;
    background:linear-gradient(180deg,#fff,#fbfdff);
    border-radius:18px;
    padding:14px 16px;
    display:grid;
    grid-template-columns:34px 1fr;
    gap:12px;
    align-items:center;
  }
  .setup-field-v30 .ico-v30{
    width:34px;
    height:34px;
    border-radius:12px;
    background:#eef6ff;
    color:#0f62fe;
    display:grid;
    place-items:center;
    font-size:19px;
  }
  .setup-field-v30 label{
    display:block;
    margin:0 0 5px;
    color:#071b33;
    font-weight:900;
    font-size:13px;
  }
  .setup-field-v30 input,
  .setup-field-v30 select{
    width:100%;
    border:0!important;
    outline:0!important;
    padding:0!important;
    background:transparent!important;
    color:#0f172a;
    font-size:14px;
  }
  .setup-field-v30 input[type="file"]{
    font-size:12px;
  }
  .setup-actions-v30{
    display:flex;
    gap:12px;
    margin-top:24px;
  }
  .setup-actions-v30 .btn{
    height:50px;
    border-radius:14px;
    padding:0 20px;
    font-weight:900;
  }
  .flow-card-v30{
    background:#fff;
    border:1px solid #dbe7f3;
    border-radius:26px;
    padding:28px;
    box-shadow:0 18px 50px rgba(15,23,42,.06);
  }
  .flow-card-v30 h2{
    margin:0;
    color:#071b33;
    font-size:28px;
    letter-spacing:-.4px;
  }
  .flow-card-v30 .sub-v30{
    color:#64748b;
    margin:6px 0 20px;
  }
  .flow-step-v30{
    display:grid;
    grid-template-columns:76px 1fr;
    gap:18px;
    align-items:center;
    border:1px solid #dbe7f3;
    border-radius:20px;
    padding:16px;
    margin-bottom:16px;
    background:#fff;
  }
  .flow-step-v30 .flow-icon-v30{
    width:76px;
    height:76px;
    border-radius:18px;
    background:linear-gradient(145deg,#06172d,#0f62fe);
    display:grid;
    place-items:center;
    color:#fff;
    font-size:34px;
    box-shadow:0 12px 28px rgba(15,98,254,.20);
  }
  .flow-step-v30 h3{
    margin:0 0 8px;
    color:#071b33;
    font-size:20px;
  }
  .flow-step-v30 p{
    margin:0;
    color:#475569;
    line-height:1.45;
  }
  .setup-summary-v30{
    margin-top:24px;
    background:#fff;
    border:1px solid #dbe7f3;
    border-radius:24px;
    padding:20px;
    box-shadow:0 18px 50px rgba(15,23,42,.06);
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:16px;
  }
  .setup-summary-item-v30{
    display:flex;
    align-items:center;
    gap:14px;
    border-right:1px solid #e2e8f0;
    min-height:78px;
  }
  .setup-summary-item-v30:last-child{
    border-right:0;
  }
  .setup-summary-icon-v30{
    width:58px;
    height:58px;
    border-radius:18px;
    display:grid;
    place-items:center;
    font-size:28px;
    background:#eef6ff;
    color:#0f62fe;
    flex:0 0 auto;
  }
  .setup-summary-item-v30:nth-child(2) .setup-summary-icon-v30{background:#f3e8ff;color:#7c3aed;}
  .setup-summary-item-v30:nth-child(3) .setup-summary-icon-v30{background:#dcfce7;color:#16a34a;}
  .setup-summary-item-v30:nth-child(4) .setup-summary-icon-v30{background:#ffedd5;color:#ea580c;}
  .setup-summary-item-v30 small{
    display:block;
    color:#64748b;
    font-weight:900;
    text-transform:uppercase;
    font-size:11px;
  }
  .setup-summary-item-v30 b{
    display:block;
    color:#071b33;
    font-size:20px;
    margin:4px 0;
  }
  .setup-summary-item-v30 span{
    color:#64748b;
    font-size:12px;
  }
  @media(max-width:1300px){
    .setup-premium-v30{grid-template-columns:1fr;}
    .setup-form-grid-v30{grid-template-columns:repeat(2,1fr);}
    .setup-summary-v30{grid-template-columns:repeat(2,1fr);}
    .setup-summary-item-v30:nth-child(2){border-right:0;}
  }

/* ===== evaluation-workflow-v31 ===== */
.start-eval-v31{
    border:0;
    background:linear-gradient(135deg,#0f62fe,#0757d8);
    color:#fff;
    border-radius:14px;
    padding:12px 18px;
    font-weight:900;
    cursor:pointer;
    box-shadow:0 12px 24px rgba(15,98,254,.22);
  }
  .pdf-btn-v31{
    border:0;
    background:#f8fafc;
    color:#0f62fe;
    border-radius:14px;
    padding:12px 16px;
    font-weight:900;
    cursor:pointer;
    margin-left:8px;
    border:1px solid #dbe7f3;
  }
  .eval-status-v31{
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:8px 12px;
    border-radius:999px;
    background:#ecfdf5;
    color:#047857;
    font-weight:900;
    font-size:12px;
    margin-left:10px;
  }

/* ===== executive-premium-v34 ===== */
.exec-filters-v34{background:#fff;border:1px solid #dbe7f3;border-radius:18px;padding:14px;box-shadow:0 18px 50px rgba(15,23,42,.06);display:grid;grid-template-columns:repeat(5,1fr) 150px;gap:12px;margin-bottom:16px}
.exec-filter-v34{border:1px solid #dbe7f3;border-radius:14px;background:#fff;min-height:56px;padding:8px 12px}.exec-filter-v34 label{display:block;font-size:11px;color:#334155;font-weight:900;margin-bottom:5px}.exec-filter-v34 select{border:0;outline:0;background:transparent;width:100%;color:#0f172a;font-weight:750}.exec-clean-v34{border:1px solid #dbe7f3;background:#eef6ff;color:#0f62fe;border-radius:14px;font-weight:900;cursor:pointer}
.exec-kpis-v34{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-bottom:16px}.exec-kpi-v34{background:#fff;border:1px solid #dbe7f3;border-radius:22px;padding:20px;display:flex;gap:16px;align-items:center;box-shadow:0 18px 50px rgba(15,23,42,.06);min-height:142px}.exec-ring-v34{width:86px;height:86px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(closest-side,#fff 70%,transparent 71%),conic-gradient(#0f62fe var(--p),#e2e8f0 0);color:#071b33;font-size:28px;font-weight:950}.exec-icon-v34{width:58px;height:58px;border-radius:20px;display:grid;place-items:center;font-size:28px;background:#dcfce7;color:#059669;flex:0 0 auto}.exec-kpi-v34:nth-child(3) .exec-icon-v34{background:#f3e8ff;color:#7c3aed}.exec-kpi-v34:nth-child(4) .exec-icon-v34{background:#ffedd5;color:#ea580c}.exec-kpi-v34:nth-child(5) .exec-icon-v34{background:#ccfbf1;color:#0f766e}.exec-kpi-v34 small{display:block;text-transform:uppercase;color:#334155;font-weight:900;font-size:11px}.exec-kpi-v34 b{display:block;color:#071b33;font-size:30px;margin:6px 0;line-height:1.05}.exec-kpi-v34 span{color:#64748b;font-size:13px}
.exec-main-grid-v34{display:grid;grid-template-columns:1.05fr 1.05fr 1.15fr;gap:16px;margin-bottom:16px}.exec-card-v34{background:#fff;border:1px solid #dbe7f3;border-radius:22px;padding:20px;box-shadow:0 18px 50px rgba(15,23,42,.06)}.exec-card-v34 h3{margin:0 0 14px;color:#071b33;text-transform:uppercase;font-size:14px;letter-spacing:.2px}.exec-radar-v34{min-height:310px;display:grid;place-items:center}.exec-radar-v34 svg{width:100%;max-width:340px;height:300px}
.exec-opportunity-v34{display:grid;grid-template-columns:38px 56px 1fr 110px;gap:12px;align-items:center;border:1px solid #e2e8f0;border-radius:18px;padding:12px;margin-bottom:10px}.exec-rank-v34{width:30px;height:30px;border-radius:9px;background:#0f62fe;color:#fff;display:grid;place-items:center;font-weight:950}.exec-opp-icon-v34{width:54px;height:54px;border-radius:18px;background:#dcfce7;color:#059669;display:grid;place-items:center;font-size:26px}.exec-opportunity-v34:nth-child(3) .exec-opp-icon-v34{background:#ede9fe;color:#7c3aed}.exec-opportunity-v34:nth-child(4) .exec-opp-icon-v34{background:#dbeafe;color:#0f62fe}.exec-opportunity-v34 b{display:block;color:#071b33;font-size:14px}.exec-opportunity-v34 span{display:block;color:#64748b;font-size:12px;margin-top:3px}.exec-complexity-v34{color:#059669;font-weight:900;font-size:13px}
.exec-rec-v34{background:linear-gradient(135deg,#06172d,#0f3d83 64%,#0f62fe);color:#fff;border:1px solid rgba(255,255,255,.12);border-radius:24px;padding:22px;min-height:100%;position:relative;overflow:hidden}.exec-rec-v34:after{content:"";position:absolute;right:-80px;bottom:-80px;width:230px;height:230px;border-radius:50%;background:rgba(255,255,255,.07)}.exec-rec-v34 h3{color:#fff;margin:0 0 18px;text-transform:uppercase;font-size:14px;position:relative;z-index:1}.exec-rec-v34 h2{color:#fff;margin:0 0 12px;font-size:25px;line-height:1.18;position:relative;z-index:1}.exec-rec-v34 p{color:#dbeafe;line-height:1.45;position:relative;z-index:1}.exec-rec-grid-v34{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:18px;padding-top:18px;border-top:1px solid rgba(255,255,255,.2);position:relative;z-index:1}.exec-rec-grid-v34 small{display:block;color:#93c5fd;margin-bottom:5px}.exec-rec-grid-v34 b{font-size:20px}.exec-rec-btn-v34{margin-top:18px;width:100%;height:44px;border-radius:13px;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.05);color:#fff;font-weight:900;cursor:pointer;position:relative;z-index:1}
.exec-bottom-grid-v34{display:grid;grid-template-columns:1fr 1.1fr 1.15fr;gap:16px}.exec-impact-layout-v34{display:grid;grid-template-columns:130px 1fr;gap:14px;align-items:center}.exec-donut-v34{width:128px;height:128px;border-radius:50%;display:grid;place-items:center;text-align:center;font-weight:950;color:#071b33;background:radial-gradient(closest-side,#fff 61%,transparent 62%),conic-gradient(#22c55e 0 43%,#0ea5e9 43% 72%,#f97316 72% 86%,#f59e0b 86% 100%)}.exec-impact-list-v34 div{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px solid #eef2f7;color:#334155;font-size:13px}.exec-roadmap-v34{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.exec-stage-v34{border-right:1px solid #e2e8f0;padding-right:10px}.exec-stage-v34:last-child{border-right:0}.exec-stage-v34 small{color:#334155;font-weight:900}.exec-stage-v34 b{display:block;color:#071b33;margin:8px 0}.exec-stage-v34 .exec-bar-v34{height:9px;background:#e2e8f0;border-radius:999px;overflow:hidden;margin:8px 0}.exec-stage-v34 .exec-bar-v34 span{display:block;height:100%;border-radius:999px;background:#0f62fe}.exec-stage-v34 p{margin:0;color:#64748b;font-size:12px;line-height:1.35}.exec-benchmark-v34 .row{display:grid;grid-template-columns:1fr 120px 48px;gap:10px;align-items:center;margin:12px 0}.exec-benchmark-v34 .line{height:9px;background:#e2e8f0;border-radius:999px;overflow:hidden}.exec-benchmark-v34 .line span{display:block;height:100%;border-radius:999px;background:#0f62fe}.exec-benchmark-v34 .line.green span{background:#22c55e}.exec-benchmark-v34 .line.purple span{background:#7c3aed}.exec-benchmark-footer-v34{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px;padding-top:14px;border-top:1px solid #eef2f7}.exec-benchmark-footer-v34 b{display:block;font-size:26px}
@media(max-width:1400px){.exec-filters-v34,.exec-kpis-v34{grid-template-columns:repeat(2,1fr)}.exec-main-grid-v34,.exec-bottom-grid-v34{grid-template-columns:1fr}}

/* ===== executive-filters-v36 ===== */
.exec-filter-v34 select{cursor:pointer}
.exec-clean-v34:hover{filter:brightness(.98);box-shadow:0 8px 18px rgba(15,98,254,.12)}
.exec-filter-hint-v36{font-size:11px;color:#64748b;margin-top:4px}

/* ===== evaluation-sectorial-recover-v37 ===== */
.eval-premium-v37{display:grid;gap:18px}
.eval-context-v37{display:flex;gap:22px;flex-wrap:wrap;color:#dbeafe;font-weight:700;margin-top:8px}
.eval-kpis-v37{display:grid;grid-template-columns:repeat(5,1fr) 1.35fr;gap:14px}
.eval-kpi-v37{background:#fff;border:1px solid #dbe7f3;border-radius:20px;padding:16px;box-shadow:0 18px 50px rgba(15,23,42,.06);min-height:126px}
.eval-kpi-v37 small{display:block;text-transform:uppercase;color:#334155;font-weight:900;font-size:11px}
.eval-kpi-v37 b{display:block;font-size:30px;color:#071b33;margin:8px 0 10px;line-height:1.05}
.eval-blue-v37{color:#0f62fe}.eval-green-v37{color:#059669}.eval-purple-v37{color:#7c3aed}.eval-orange-v37{color:#ea580c}.eval-teal-v37{color:#0f766e}
.eval-bar-v37{height:8px;background:#e2e8f0;border-radius:999px;overflow:hidden}
.eval-bar-v37 span{display:block;height:100%;background:linear-gradient(90deg,#0f62fe,#38bdf8);border-radius:999px}
.eval-note-v37{font-size:12px;color:#64748b;margin-top:10px}
.eval-radar-v37{background:#fff;border:1px solid #dbe7f3;border-radius:20px;padding:16px;text-align:center;box-shadow:0 18px 50px rgba(15,23,42,.06)}
.eval-radar-v37 h3{margin:0 0 8px;color:#071b33;font-size:14px;text-transform:uppercase}
.eval-radar-v37 svg{height:150px;max-width:100%}
.eval-grid-v37{display:grid;grid-template-columns:1fr 340px;gap:18px}
.eval-work-v37{background:#fff;border:1px solid #dbe7f3;border-radius:24px;box-shadow:0 18px 50px rgba(15,23,42,.06);overflow:hidden}
.eval-tabs-v37{display:flex;gap:5px;padding:12px 16px;border-bottom:1px solid #e2e8f0;background:#fbfdff;overflow:auto}
.eval-tab-v37{border:0;background:transparent;padding:11px 14px;border-radius:12px;color:#334155;font-weight:900;cursor:pointer;white-space:nowrap}
.eval-tab-v37.active{background:#0f62fe;color:#fff;box-shadow:0 10px 20px rgba(15,98,254,.18)}
.eval-dim-head-v37{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 22px 10px}
.eval-dim-title-v37{display:flex;align-items:center;gap:14px}
.eval-dim-icon-v37{width:50px;height:50px;border-radius:16px;background:#eef6ff;color:#0f62fe;display:grid;place-items:center;font-size:28px}
.eval-dim-title-v37 h2{margin:0;color:#0f62fe}
.eval-dim-title-v37 p{margin:4px 0 0;color:#64748b}
.eval-question-v37{margin:12px 22px 18px;border:1px solid #dbe7f3;border-radius:20px;padding:16px;background:linear-gradient(180deg,#fff,#fbfdff)}
.eval-question-head-v37{display:grid;grid-template-columns:50px 1fr;gap:14px;align-items:start;margin-bottom:16px}
.eval-number-v37{width:46px;height:46px;border-radius:14px;background:#eef6ff;color:#0f62fe;display:grid;place-items:center;font-size:21px;font-weight:950}
.eval-question-text-v37{font-size:17px;font-weight:900;color:#071b33;line-height:1.35}
.eval-options-v37{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.eval-option-v37{border:1px solid #dbe7f3;border-radius:16px;padding:14px;cursor:pointer;background:#fff;min-height:124px;transition:.18s ease}
.eval-option-v37:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(15,98,254,.08)}
.eval-option-v37.selected{border-color:#0f62fe;box-shadow:0 0 0 2px rgba(15,98,254,.12);background:#f8fbff}
.eval-option-v37 .opt-title{font-weight:950;color:#071b33;margin-bottom:7px;display:flex;gap:8px;align-items:center}
.eval-option-v37 p{margin:0;color:#334155;font-size:12.5px;line-height:1.35}
.eval-option-v37 b{display:block;margin-top:8px;color:#0f62fe}
.opt-dot-v37{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;border:2px solid #cbd5e1;color:#64748b;font-size:12px}
.eval-option-v37.selected .opt-dot-v37{border-color:#0f62fe;color:#0f62fe}
.eval-nav-v37{display:flex;justify-content:space-between;align-items:center;padding:0 22px 20px}
.eval-nav-v37 button{height:42px;border-radius:12px;border:1px solid #dbe7f3;background:#fff;color:#0f62fe;font-weight:900;padding:0 20px;cursor:pointer}
.eval-nav-v37 .next{background:#0f62fe;color:#fff;border-color:#0f62fe}
.eval-side-v37{display:grid;gap:14px}
.eval-side-card-v37{background:#fff;border:1px solid #dbe7f3;border-radius:20px;padding:16px;box-shadow:0 18px 50px rgba(15,23,42,.06)}
.eval-side-card-v37 h3{margin:0 0 12px;color:#071b33;text-transform:uppercase;font-size:13px;letter-spacing:.2px}
.benchmark-row-v37{display:grid;grid-template-columns:1fr 70px;gap:10px;align-items:center;margin:10px 0}
.benchmark-row-v37 span{color:#334155;font-size:13px}
.benchmark-row-v37 b{font-size:20px}
.green-text{color:#059669}.blue-text{color:#0f62fe}.red-text{color:#dc2626}
.mini-line-v37{height:8px;background:#e2e8f0;border-radius:999px;overflow:hidden}
.mini-line-v37 span{display:block;height:100%;border-radius:999px;background:#0f62fe}
.mini-line-v37.green span{background:#22c55e}
.insight-list-v37{list-style:none;padding:0;margin:0}
.insight-list-v37 li{margin:8px 0;color:#334155;font-size:13px}
.insight-list-v37 li:before{content:"✓";color:#16a34a;font-weight:900;margin-right:8px}
.roadmap-mini-v37{display:grid;gap:9px}
.roadmap-mini-v37 div{display:grid;grid-template-columns:88px 1fr;gap:10px;align-items:center;font-size:13px;color:#334155}
.roadmap-mini-v37 b{color:#0f62fe}
@media(max-width:1400px){.eval-kpis-v37{grid-template-columns:repeat(3,1fr)}.eval-grid-v37{grid-template-columns:1fr}.eval-options-v37{grid-template-columns:repeat(2,1fr)}}

/* ===== evaluation-filters-tabs-v38 ===== */
.eval-filters-v38{
  background:#fff;
  border:1px solid #dbe7f3;
  border-radius:18px;
  padding:14px;
  box-shadow:0 18px 50px rgba(15,23,42,.06);
  display:grid;
  grid-template-columns:repeat(5,1fr) 150px;
  gap:12px;
  margin-bottom:16px;
}
.eval-filter-v38{
  border:1px solid #dbe7f3;
  border-radius:14px;
  background:#fff;
  min-height:56px;
  padding:8px 12px;
}
.eval-filter-v38 label{
  display:block;
  font-size:11px;
  color:#334155;
  font-weight:900;
  margin-bottom:5px;
}
.eval-filter-v38 select{
  border:0;
  outline:0;
  background:transparent;
  width:100%;
  color:#0f172a;
  font-weight:750;
  cursor:pointer;
}
.eval-filter-v38 .hint{
  font-size:11px;
  color:#64748b;
  margin-top:4px;
}
.eval-clear-v38{
  border:1px solid #dbe7f3;
  background:#eef6ff;
  color:#0f62fe;
  border-radius:14px;
  font-weight:900;
  cursor:pointer;
}
.eval-tab-v37{
  position:relative;
  z-index:3;
}
@media(max-width:1400px){
  .eval-filters-v38{grid-template-columns:repeat(2,1fr)}
}

/* ===== sector-tabs-only-fix-v43 ===== */
/* Solo ajusta la zona de perspectivas/dimensiones de Evaluación Sectorial */
  #evaluation .eval-tabs-v37{
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    gap:10px!important;
    overflow:visible!important;
    padding:14px 16px!important;
    min-height:auto!important;
  }
  #evaluation .eval-tab-v37{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    min-height:46px!important;
    padding:11px 16px!important;
    border-radius:14px!important;
    border:0!important;
    background:transparent!important;
    color:#334155!important;
    font-weight:900!important;
    cursor:pointer!important;
    white-space:nowrap!important;
    user-select:none!important;
    position:relative!important;
    z-index:50!important;
    pointer-events:auto!important;
  }
  #evaluation .eval-tab-v37:hover{
    background:#eef6ff!important;
    color:#0f62fe!important;
  }
  #evaluation .eval-tab-v37.active{
    background:#0f62fe!important;
    color:#fff!important;
    box-shadow:0 12px 24px rgba(15,98,254,.20)!important;
  }
  #evaluation .eval-tab-v37.active:hover{
    background:#0f62fe!important;
    color:#fff!important;
  }

/* ===== companies-premium-v49 ===== */
.consultor-v49{display:grid;gap:18px}
.consultor-filters-v49{
  background:#fff;border:1px solid #dbe7f3;border-radius:18px;padding:14px;
  box-shadow:0 18px 50px rgba(15,23,42,.06);
  display:grid;grid-template-columns:1.05fr 1fr 1fr 1fr 1fr 1fr 160px;gap:12px;
}
.consultor-filter-v49{border:1px solid #dbe7f3;border-radius:14px;background:#fff;min-height:56px;padding:8px 12px}
.consultor-filter-v49 label{display:block;font-size:11px;color:#334155;font-weight:900;margin-bottom:5px}
.consultor-filter-v49 select,.consultor-filter-v49 input{border:0;outline:0;background:transparent;width:100%;color:#0f172a;font-weight:750}
.consultor-clear-v49{border:1px solid #dbe7f3;background:#eef6ff;color:#0f62fe;border-radius:14px;font-weight:900;cursor:pointer}
.consultor-kpis-v49{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}
.consultor-kpi-v49{
  background:#fff;border:1px solid #dbe7f3;border-radius:20px;padding:16px;
  box-shadow:0 18px 50px rgba(15,23,42,.06);display:flex;gap:14px;align-items:center;min-height:124px
}
.consultor-kpi-icon-v49{width:56px;height:56px;border-radius:18px;display:grid;place-items:center;font-size:26px;background:#dbeafe;color:#0f62fe;flex:0 0 auto}
.consultor-kpi-v49:nth-child(2) .consultor-kpi-icon-v49{background:#dcfce7;color:#059669}
.consultor-kpi-v49:nth-child(3) .consultor-kpi-icon-v49{background:#f3e8ff;color:#7c3aed}
.consultor-kpi-v49:nth-child(4) .consultor-kpi-icon-v49{background:#ffedd5;color:#ea580c}
.consultor-kpi-v49:nth-child(5) .consultor-kpi-icon-v49{background:#ccfbf1;color:#0f766e}
.consultor-kpi-v49:nth-child(6) .consultor-kpi-icon-v49{background:#ffe4e6;color:#e11d48}
.consultor-kpi-v49 small{display:block;text-transform:uppercase;color:#334155;font-weight:900;font-size:11px}
.consultor-kpi-v49 b{display:block;color:#071b33;font-size:29px;line-height:1;margin:8px 0}
.consultor-kpi-v49 span{color:#64748b;font-size:12px}
.consultor-kpi-v49 .up{color:#16a34a;font-weight:900}.consultor-kpi-v49 .down{color:#ef4444;font-weight:900}.consultor-kpi-v49 .mid{color:#f59e0b;font-weight:900}
.consultor-main-v49{display:grid;grid-template-columns:1.05fr 1fr .78fr;gap:16px}
.consultor-card-v49{background:#fff;border:1px solid #dbe7f3;border-radius:20px;padding:16px;box-shadow:0 18px 50px rgba(15,23,42,.06)}
.consultor-card-v49 h3{margin:0 0 14px;color:#071b33;text-transform:uppercase;font-size:13px;letter-spacing:.2px}
.maturity-wrap-v49{display:grid;grid-template-columns:180px 1fr;gap:20px;align-items:center}
.donut-v49{
  width:170px;height:170px;border-radius:50%;display:grid;place-items:center;text-align:center;
  background:radial-gradient(closest-side,#fff 58%,transparent 59%),conic-gradient(#16a34a 0 22%,#86efac 22% 51%,#facc15 51% 87%,#fb923c 87% 95%,#ef4444 95% 100%);
  color:#071b33;font-weight:950;font-size:30px
}
.donut-v49 span{display:block;font-size:12px}
.legend-row-v49{display:grid;grid-template-columns:18px 1fr 70px;gap:8px;align-items:center;margin:9px 0;color:#334155;font-size:13px}
.legend-dot-v49{width:14px;height:14px;border-radius:50%}
.breach-row-v49{display:grid;grid-template-columns:1fr 150px 52px;gap:12px;align-items:center;margin:14px 0;font-size:13px;color:#071b33;font-weight:850}
.progress-v49{height:9px;background:#e2e8f0;border-radius:999px;overflow:hidden}.progress-v49 span{display:block;height:100%;background:#0f62fe;border-radius:999px}
.initiative-v49{display:grid;grid-template-columns:46px 1fr 58px;gap:12px;align-items:center;margin:12px 0}
.initiative-icon-v49{width:42px;height:42px;border-radius:15px;background:#ede9fe;color:#7c3aed;display:grid;place-items:center;font-size:21px}
.initiative-v49:nth-child(3) .initiative-icon-v49{background:#dcfce7;color:#059669}
.initiative-v49:nth-child(4) .initiative-icon-v49{background:#ccfbf1;color:#0f766e}
.initiative-v49:nth-child(5) .initiative-icon-v49{background:#ffedd5;color:#ea580c}
.initiative-v49:nth-child(6) .initiative-icon-v49{background:#dbeafe;color:#0f62fe}
.initiative-v49 b{display:block;color:#071b33;font-size:13px}.initiative-v49 span{font-size:12px;color:#64748b}
.badge-v49{border-radius:999px;padding:5px 9px;font-size:11px;font-weight:950;text-align:center}.badge-high-v49{background:#dcfce7;color:#15803d}.badge-med-v49{background:#fef3c7;color:#b45309}.badge-low-v49{background:#dbeafe;color:#1d4ed8}
.consultor-side-v49{display:grid;gap:16px}
.consultor-profile-v49{text-align:center}.avatar-v49{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#eef6ff;color:#0f62fe;font-weight:950;font-size:20px;margin:auto}
.profile-metric-v49{border-top:1px solid #e2e8f0;padding-top:11px;margin-top:11px;text-align:left;color:#334155;font-size:13px}.profile-metric-v49 b{display:block;color:#071b33;font-size:20px}
.quick-v49{display:grid;gap:10px}.quick-v49 button{height:38px;border:1px solid #dbe7f3;background:#fff;border-radius:12px;color:#0f62fe;font-weight:900;text-align:left;padding:0 12px;cursor:pointer}
.quick-v49 button:hover{background:#eef6ff}
.portfolio-v49{background:#fff;border:1px solid #dbe7f3;border-radius:20px;padding:16px;box-shadow:0 18px 50px rgba(15,23,42,.06)}
.portfolio-v49 h3{margin:0 0 14px;color:#071b33;text-transform:uppercase;font-size:13px}
.table-v49{width:100%;border-collapse:collapse;font-size:13px}
.table-v49 th{color:#334155;text-align:left;padding:12px;border-bottom:1px solid #e2e8f0;text-transform:uppercase;font-size:11px}
.table-v49 td{padding:12px;border-bottom:1px solid #eef2f7;color:#0f172a;vertical-align:middle}
.company-cell-v49{display:flex;gap:10px;align-items:center}.company-avatar-v49{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#0f62fe;color:#fff;font-weight:950;font-size:12px;overflow:hidden}.company-avatar-v49 img{width:100%;height:100%;object-fit:cover}
.company-cell-v49 b{display:block}.company-cell-v49 span{display:block;color:#64748b;font-size:12px}
.score-line-v49{display:grid;gap:4px}.score-line-v49 b{font-size:13px}.mini-progress-v49{height:7px;background:#e2e8f0;border-radius:999px;overflow:hidden;width:90px}.mini-progress-v49 span{display:block;height:100%;border-radius:999px;background:#22c55e}.mini-progress-v49.warn span{background:#f59e0b}.mini-progress-v49.bad span{background:#ef4444}
.status-v49{display:inline-flex;align-items:center;gap:6px;font-weight:850;font-size:12px}.status-v49:before{content:"";width:9px;height:9px;border-radius:50%;background:#22c55e}.status-progress-v49:before{background:#0f62fe}.status-pending-v49:before{background:#f59e0b}.status-risk-v49:before{background:#ef4444}
.actions-v49{display:flex;gap:7px}.actions-v49 button{width:32px;height:32px;border-radius:9px;border:1px solid #dbe7f3;background:#f8fbff;color:#0f62fe;font-weight:950;cursor:pointer}
.pager-v49{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;color:#334155;font-size:13px}
.pages-v49{display:flex;align-items:center;gap:6px}.pages-v49 button{min-width:34px;height:34px;border-radius:9px;border:1px solid #dbe7f3;background:#fff;color:#0f62fe;font-weight:900;cursor:pointer}.pages-v49 button.active{background:#0f62fe;color:#fff}.pages-v49 select{height:34px;border:1px solid #dbe7f3;border-radius:9px;padding:0 8px}
@media(max-width:1500px){.consultor-filters-v49{grid-template-columns:repeat(3,1fr)}.consultor-kpis-v49{grid-template-columns:repeat(3,1fr)}.consultor-main-v49{grid-template-columns:1fr}.consultor-side-v49{grid-template-columns:1fr 1fr}.maturity-wrap-v49{grid-template-columns:1fr}.table-v49{font-size:12px}}

/* ===== companies-actions-v50 ===== */
.actions-v49{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  align-items:center;
}
.actions-v49 button{
  min-width:34px;
  height:34px;
  border-radius:10px;
  border:1px solid #dbe7f3;
  background:#f8fbff;
  color:#0f62fe;
  font-weight:950;
  cursor:pointer;
  display:grid;
  place-items:center;
}
.actions-v49 button:hover{background:#eef6ff;transform:translateY(-1px)}
.actions-v49 .edit{color:#7c3aed;background:#f5f3ff}
.actions-v49 .pdf{color:#059669;background:#ecfdf5}
.actions-v49 .delete{color:#dc2626;background:#fef2f2}
.actions-v49 .delete:hover{background:#fee2e2}
.action-label-v50{
  display:inline-flex;
  align-items:center;
  gap:6px;
  border:1px solid #dbe7f3;
  background:#fff;
  color:#334155;
  border-radius:999px;
  padding:6px 10px;
  font-size:11px;
  font-weight:900;
}
.company-toolbar-v50{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  margin-bottom:12px;
}
.company-toolbar-v50 p{
  margin:0;
  color:#64748b;
  font-size:13px;
}
.company-toolbar-v50 .toolbar-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.company-toolbar-v50 button{
  height:36px;
  border-radius:11px;
  border:1px solid #dbe7f3;
  background:#f8fbff;
  color:#0f62fe;
  font-weight:900;
  padding:0 12px;
  cursor:pointer;
}
.company-toolbar-v50 button:hover{background:#eef6ff}
@media print{
  .no-print-v50{display:none!important}
}

/* ===== companies-functional-v51 ===== */
.company-toolbar-v51{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}
.company-toolbar-v51 p{margin:0;color:#64748b;font-size:13px}
.company-toolbar-v51 .toolbar-actions{display:flex;gap:8px;flex-wrap:wrap}
.company-toolbar-v51 button{height:36px;border-radius:11px;border:1px solid #dbe7f3;background:#f8fbff;color:#0f62fe;font-weight:900;padding:0 12px;cursor:pointer}
.company-toolbar-v51 button:hover{background:#eef6ff}
.actions-v51{display:flex;gap:7px;align-items:center;flex-wrap:wrap}
.actions-v51 button{width:34px;height:34px;border-radius:10px;border:1px solid #dbe7f3;background:#f8fbff;color:#0f62fe;font-weight:950;cursor:pointer;display:grid;place-items:center}
.actions-v51 button:hover{background:#eef6ff;transform:translateY(-1px)}
.actions-v51 .edit{background:#f5f3ff;color:#7c3aed}
.actions-v51 .eval{background:#fff7ed;color:#ea580c}
.actions-v51 .pdf{background:#ecfdf5;color:#059669}
.actions-v51 .delete{background:#fef2f2;color:#dc2626}
.actions-v51 .delete:hover{background:#fee2e2}
.empty-companies-v51{padding:26px;text-align:center;color:#64748b;border:1px dashed #cbd5e1;border-radius:18px;background:#f8fbff}

/* ===== companies-eval-fix-v52 ===== */
.actions-v51 button{position:relative}
.actions-v51 button[title]:hover:after{
  content:attr(title);
  position:absolute;
  bottom:110%;
  left:50%;
  transform:translateX(-50%);
  background:#071b33;
  color:#fff;
  border-radius:8px;
  padding:5px 8px;
  font-size:10px;
  white-space:nowrap;
  z-index:50;
}

/* ===== evaluation-questions-v53 ===== */
#evaluation .eval-empty-v53{
    background:#fff;
    border:1px dashed #cbd5e1;
    border-radius:18px;
    padding:24px;
    color:#64748b;
    text-align:center;
    margin:14px 24px 22px;
  }

/* ===== company-evaluation-engine-v56 ===== */
.company-eval-v56{display:grid;gap:18px}
.company-eval-hero-v56{
  background:linear-gradient(135deg,#06172d,#0f3d83 62%,#0f62fe);
  color:#fff;border-radius:24px;padding:24px 26px;
  display:flex;justify-content:space-between;gap:18px;align-items:center;
  box-shadow:0 24px 70px rgba(15,23,42,.16);
}
.company-eval-hero-v56 h2{margin:0;font-size:28px}
.company-eval-hero-v56 p{margin:8px 0 0;color:#dbeafe}
.company-eval-hero-v56 .company-chip-v56{
  display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:8px 12px;font-weight:900;
}
.eval-kpis-v56{display:grid;grid-template-columns:repeat(5,1fr) 1.35fr;gap:14px}
.eval-kpi-v56{
  background:#fff;border:1px solid #dbe7f3;border-radius:20px;padding:16px;
  box-shadow:0 18px 50px rgba(15,23,42,.06);min-height:126px;
}
.eval-kpi-v56 small{display:block;text-transform:uppercase;color:#334155;font-weight:900;font-size:11px}
.eval-kpi-v56 b{display:block;font-size:30px;color:#071b33;margin:8px 0 10px;line-height:1.05}
.eval-blue-v56{color:#0f62fe}.eval-green-v56{color:#059669}.eval-purple-v56{color:#7c3aed}.eval-orange-v56{color:#ea580c}.eval-teal-v56{color:#0f766e}
.eval-bar-v56{height:8px;background:#e2e8f0;border-radius:999px;overflow:hidden}
.eval-bar-v56 span{display:block;height:100%;background:linear-gradient(90deg,#0f62fe,#38bdf8);border-radius:999px}
.eval-note-v56{font-size:12px;color:#64748b;margin-top:10px}
.eval-radar-v56{
  background:#fff;border:1px solid #dbe7f3;border-radius:20px;padding:16px;text-align:center;
  box-shadow:0 18px 50px rgba(15,23,42,.06)
}
.eval-radar-v56 h3{margin:0 0 8px;color:#071b33;font-size:14px;text-transform:uppercase}
.eval-radar-v56 svg{height:150px;max-width:100%}
.eval-main-grid-v56{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px;align-items:start}
.eval-work-v56{
  background:#fff;border:1px solid #dbe7f3;border-radius:24px;box-shadow:0 18px 50px rgba(15,23,42,.06);overflow:hidden;
}
.eval-tabs-v56{display:flex;flex-wrap:wrap;gap:10px;padding:16px 18px;border-bottom:1px solid #e2e8f0;background:#fbfdff}
.eval-tab-v56{
  display:inline-flex;align-items:center;gap:8px;border:0;background:transparent;color:#334155;
  border-radius:14px;padding:11px 16px;font-weight:900;cursor:pointer;white-space:nowrap;
}
.eval-tab-v56:hover{background:#eef6ff;color:#0f62fe}
.eval-tab-v56.active{background:#0f62fe;color:#fff;box-shadow:0 12px 24px rgba(15,98,254,.20)}
.eval-dim-head-v56{
  display:flex;align-items:center;justify-content:space-between;gap:18px;padding:24px 26px 10px;
}
.eval-dim-title-v56{display:flex;align-items:center;gap:14px}
.eval-dim-icon-v56{width:54px;height:54px;border-radius:17px;background:#eef6ff;color:#0f62fe;display:grid;place-items:center;font-size:28px}
.eval-dim-title-v56 h2{margin:0;color:#0f62fe;font-size:28px}
.eval-dim-title-v56 p{margin:4px 0 0;color:#64748b;font-size:15px}
.eval-question-v56{margin:14px 26px 20px;border:1px solid #dbe7f3;border-radius:20px;padding:16px;background:linear-gradient(180deg,#fff,#fbfdff)}
.eval-question-head-v56{display:grid;grid-template-columns:54px 1fr;gap:14px;align-items:start;margin-bottom:16px}
.eval-number-v56{width:48px;height:48px;border-radius:14px;background:#eef6ff;color:#0f62fe;display:grid;place-items:center;font-size:21px;font-weight:950}
.eval-question-text-v56{font-size:17px;font-weight:900;color:#071b33;line-height:1.35}
.eval-options-v56{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}
.eval-option-v56{
  border:1px solid #dbe7f3;border-radius:16px;padding:14px;cursor:pointer;background:#fff;min-height:124px;transition:.18s ease;
}
.eval-option-v56:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(15,98,254,.08)}
.eval-option-v56.selected{border-color:#0f62fe;box-shadow:0 0 0 2px rgba(15,98,254,.12);background:#f8fbff}
.eval-option-v56 .opt-title{font-weight:950;color:#071b33;margin-bottom:7px;display:flex;gap:8px;align-items:center}
.eval-option-v56 p{margin:0;color:#334155;font-size:12.5px;line-height:1.35}
.eval-option-v56 b{display:block;margin-top:8px;color:#0f62fe}
.opt-dot-v56{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;border:2px solid #cbd5e1;color:#64748b;font-size:12px;flex:0 0 auto}
.eval-option-v56.selected .opt-dot-v56{border-color:#0f62fe;color:#0f62fe}
.eval-nav-v56{display:flex;justify-content:space-between;align-items:center;padding:0 26px 12px}
.eval-nav-v56 button{height:42px;border-radius:12px;border:1px solid #dbe7f3;background:#fff;color:#0f62fe;font-weight:900;padding:0 20px;cursor:pointer}
.eval-nav-v56 .next{background:#0f62fe;color:#fff;border-color:#0f62fe}
.eval-actions-v56{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap;padding:0 26px 24px}
.eval-actions-v56 button{height:42px;border-radius:12px;border:1px solid #dbe7f3;background:#fff;color:#0f62fe;font-weight:900;padding:0 18px;cursor:pointer}
.eval-actions-v56 .green{background:#16a34a;color:#fff;border-color:#16a34a}
.eval-side-v56{display:grid;gap:14px}
.eval-side-card-v56{background:#fff;border:1px solid #dbe7f3;border-radius:20px;padding:16px;box-shadow:0 18px 50px rgba(15,23,42,.06)}
.eval-side-card-v56 h3{margin:0 0 12px;color:#071b33;text-transform:uppercase;font-size:13px;letter-spacing:.2px}
.eval-side-row-v56{display:grid;grid-template-columns:1fr 72px;gap:10px;align-items:center;margin:10px 0;color:#334155}
.eval-side-row-v56 b{font-size:18px;color:#071b33;text-align:right}
.eval-line-v56{height:8px;background:#e2e8f0;border-radius:999px;overflow:hidden;margin-bottom:8px}
.eval-line-v56 span{display:block;height:100%;background:#0f62fe;border-radius:999px}
.eval-empty-v56{margin:14px 26px 20px;border:1px dashed #cbd5e1;border-radius:18px;padding:24px;text-align:center;color:#64748b;background:#f8fbff}
@media(max-width:1400px){.eval-kpis-v56{grid-template-columns:repeat(2,1fr)}.eval-main-grid-v56{grid-template-columns:1fr}.eval-options-v56{grid-template-columns:repeat(2,1fr)}}

/* ===== evaluation-filters-v57 ===== */
.eval-filters-v57{
  background:#fff;
  border:1px solid #dbe7f3;
  border-radius:18px;
  padding:14px;
  box-shadow:0 18px 50px rgba(15,23,42,.06);
  display:grid;
  grid-template-columns:repeat(5,1fr) 150px;
  gap:12px;
  margin-bottom:18px;
}
.eval-filter-v57{
  border:1px solid #dbe7f3;
  border-radius:14px;
  background:#fff;
  min-height:56px;
  padding:8px 12px;
}
.eval-filter-v57 label{
  display:block;
  font-size:11px;
  color:#334155;
  font-weight:900;
  margin-bottom:5px;
}
.eval-filter-v57 select{
  border:0;
  outline:0;
  background:transparent;
  width:100%;
  color:#0f172a;
  font-weight:750;
  cursor:pointer;
}
.eval-filter-v57 .hint{
  font-size:11px;
  color:#64748b;
  margin-top:4px;
}
.eval-clear-v57{
  border:1px solid #dbe7f3;
  background:#eef6ff;
  color:#0f62fe;
  border-radius:14px;
  font-weight:900;
  cursor:pointer;
}
.eval-clear-v57:hover{background:#dbeafe}
@media(max-width:1400px){
  .eval-filters-v57{grid-template-columns:repeat(2,1fr)}
}

/* ===== evaluation-sector-panel-v58 ===== */
.eval-sector-panel-v58{
  background:#fff;
  border:1px solid #dbe7f3;
  border-radius:22px;
  padding:16px;
  box-shadow:0 18px 50px rgba(15,23,42,.06);
  margin-bottom:18px;
}
.eval-sector-head-v58{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:14px;
  margin-bottom:16px;
}
.eval-sector-head-v58 h3{
  margin:0;
  color:#071b33;
  font-size:22px;
}
.eval-sector-head-v58 p{
  margin:6px 0 0;
  color:#64748b;
  font-size:14px;
}
.eval-sector-badge-v58{
  background:#eef6ff;
  color:#0f62fe;
  border:1px solid #dbe7f3;
  border-radius:999px;
  padding:8px 12px;
  font-weight:900;
  white-space:nowrap;
}
.eval-sector-kpis-v58{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:12px;
  margin-bottom:16px;
}
.eval-sector-kpi-v58{
  border:1px solid #dbe7f3;
  background:#f8fbff;
  border-radius:16px;
  padding:14px;
}
.eval-sector-kpi-v58 small{
  display:block;
  color:#64748b;
  text-transform:uppercase;
  font-size:11px;
  font-weight:900;
}
.eval-sector-kpi-v58 b{
  display:block;
  margin-top:6px;
  color:#071b33;
  font-size:26px;
}
.eval-sector-table-v58{
  width:100%;
  border-collapse:collapse;
  font-size:13px;
}
.eval-sector-table-v58 th{
  color:#334155;
  text-align:left;
  padding:12px;
  border-bottom:1px solid #e2e8f0;
  text-transform:uppercase;
  font-size:11px;
}
.eval-sector-table-v58 td{
  padding:12px;
  border-bottom:1px solid #eef2f7;
  color:#0f172a;
  vertical-align:middle;
}
.eval-company-mini-v58{
  display:flex;
  align-items:center;
  gap:10px;
}
.eval-avatar-v58{
  width:34px;
  height:34px;
  border-radius:50%;
  background:#0f62fe;
  color:#fff;
  display:grid;
  place-items:center;
  font-weight:950;
  font-size:12px;
  flex:0 0 auto;
}
.eval-company-mini-v58 b{display:block;color:#071b33}
.eval-company-mini-v58 span{display:block;color:#64748b;font-size:12px}
.eval-score-v58{display:grid;gap:5px}
.eval-score-line-v58{
  height:7px;
  width:90px;
  background:#e2e8f0;
  border-radius:999px;
  overflow:hidden;
}
.eval-score-line-v58 span{
  display:block;
  height:100%;
  background:#0f62fe;
  border-radius:999px;
}
.eval-status-v58{
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-weight:850;
  font-size:12px;
}
.eval-status-v58:before{
  content:"";
  width:9px;
  height:9px;
  border-radius:50%;
  background:#22c55e;
}
.eval-status-v58.progress:before{background:#0f62fe}
.eval-status-v58.pending:before{background:#f59e0b}
.eval-actions-v58{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}
.eval-actions-v58 button{
  height:34px;
  border-radius:10px;
  border:1px solid #dbe7f3;
  background:#f8fbff;
  color:#0f62fe;
  font-weight:900;
  padding:0 10px;
  cursor:pointer;
}
.eval-actions-v58 button:hover{background:#eef6ff}
.eval-actions-v58 .primary{background:#0f62fe;color:#fff;border-color:#0f62fe}
.eval-empty-sector-v58{
  border:1px dashed #cbd5e1;
  border-radius:16px;
  background:#f8fbff;
  padding:22px;
  text-align:center;
  color:#64748b;
}
@media(max-width:1400px){
  .eval-sector-kpis-v58{grid-template-columns:repeat(2,1fr)}
}

/* ===== evaluation-independent-v59 ===== */
.eval-mode-actions-v59{
  display:flex; align-items:center; justify-content:space-between; gap:12px;
  background:#fff; border:1px solid #dbe7f3; border-radius:18px;
  padding:14px 16px; box-shadow:0 18px 50px rgba(15,23,42,.06); margin-bottom:18px;
}
.eval-mode-actions-v59 h3{margin:0;color:#071b33;font-size:20px}
.eval-mode-actions-v59 p{margin:4px 0 0;color:#64748b;font-size:13px}
.eval-mode-buttons-v59{display:flex;gap:8px;flex-wrap:wrap}
.eval-mode-buttons-v59 button,.eval-actions-v58 .delete-v59,.eval-sector-head-v58 button{
  height:36px; border-radius:11px; border:1px solid #dbe7f3;
  background:#f8fbff; color:#0f62fe; font-weight:900; padding:0 12px; cursor:pointer;
}
.eval-mode-buttons-v59 button:hover,.eval-actions-v58 .delete-v59:hover,.eval-sector-head-v58 button:hover{background:#eef6ff}
.eval-mode-buttons-v59 .danger,.eval-actions-v58 .delete-v59{background:#fef2f2;color:#dc2626;border-color:#fecaca}
.eval-mode-buttons-v59 .danger:hover,.eval-actions-v58 .delete-v59:hover{background:#fee2e2}
.eval-mode-buttons-v59 .primary,.eval-sector-head-v58 .primary-v59{background:#0f62fe;color:#fff;border-color:#0f62fe}
.eval-mode-buttons-v59 .primary:hover,.eval-sector-head-v58 .primary-v59:hover{background:#0353e9}
.eval-independent-hidden-v59{display:none!important}

/* ===== sector-analytics-v60 ===== */
.sector-analytics-v60{display:grid;gap:18px}
.sector-analytics-card-v60{
  background:#fff;border:1px solid #dbe7f3;border-radius:22px;padding:16px;
  box-shadow:0 18px 50px rgba(15,23,42,.06)
}
.sector-analytics-head-v60{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:16px}
.sector-analytics-head-v60 h3{margin:0;color:#071b33;font-size:22px}
.sector-analytics-head-v60 p{margin:6px 0 0;color:#64748b;font-size:14px}
.sector-analytics-head-v60 button{
  height:38px;border-radius:12px;border:1px solid #0f62fe;background:#0f62fe;color:#fff;
  font-weight:900;padding:0 14px;cursor:pointer
}
.sector-kpis-v60{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.sector-kpi-v60{background:#f8fbff;border:1px solid #dbe7f3;border-radius:18px;padding:16px;min-height:108px}
.sector-kpi-v60 small{display:block;color:#64748b;text-transform:uppercase;font-weight:900;font-size:11px}
.sector-kpi-v60 b{display:block;margin:8px 0;color:#071b33;font-size:27px}
.sector-kpi-v60 span{color:#64748b;font-size:12px}
.sector-analytics-grid-v60{display:grid;grid-template-columns:1.05fr 1fr 1fr;gap:16px}
.sector-chart-v60 h4{margin:0 0 14px;color:#071b33;text-transform:uppercase;font-size:13px}
.sector-bar-row-v60{display:grid;grid-template-columns:132px 1fr 46px;gap:10px;align-items:center;margin:10px 0;color:#334155;font-size:13px}
.sector-bar-v60{height:9px;background:#e2e8f0;border-radius:999px;overflow:hidden}
.sector-bar-v60 span{display:block;height:100%;background:#0f62fe;border-radius:999px}
.sector-bar-v60.green span{background:#22c55e}.sector-bar-v60.orange span{background:#f59e0b}.sector-bar-v60.red span{background:#ef4444}
.sector-donut-wrap-v60{display:grid;grid-template-columns:150px 1fr;gap:18px;align-items:center}
.sector-donut-v60{
  width:145px;height:145px;border-radius:50%;display:grid;place-items:center;text-align:center;
  background:radial-gradient(closest-side,#fff 58%,transparent 59%),conic-gradient(#16a34a 0 25%,#86efac 25% 50%,#facc15 50% 75%,#fb923c 75% 92%,#ef4444 92% 100%);
  font-weight:950;font-size:26px;color:#071b33
}
.sector-donut-v60 span{display:block;font-size:11px;color:#64748b}
.sector-legend-v60{display:grid;gap:8px}
.sector-legend-v60 div{display:grid;grid-template-columns:14px 1fr 44px;gap:8px;align-items:center;color:#334155;font-size:12px}
.sector-dot-v60{width:12px;height:12px;border-radius:50%}
.sector-table-head-v60{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}
.sector-table-head-v60 h3{margin:0;color:#071b33;font-size:21px}
.sector-table-head-v60 p{margin:4px 0 0;color:#64748b;font-size:13px}
.sector-table-v60{width:100%;border-collapse:collapse;font-size:13px}
.sector-table-v60 th{color:#334155;text-align:left;padding:12px;border-bottom:1px solid #e2e8f0;text-transform:uppercase;font-size:11px}
.sector-table-v60 td{padding:12px;border-bottom:1px solid #eef2f7;color:#0f172a;vertical-align:middle}
.sector-company-v60{display:flex;gap:10px;align-items:center}
.sector-avatar-v60{width:36px;height:36px;border-radius:50%;background:#0f62fe;color:#fff;display:grid;place-items:center;font-weight:950;font-size:12px;flex:0 0 auto}
.sector-company-v60 b{display:block;color:#071b33}.sector-company-v60 span{display:block;color:#64748b;font-size:12px}
.sector-score-v60{display:grid;gap:5px}.sector-score-v60 b{font-size:13px}
.sector-mini-line-v60{width:92px;height:7px;background:#e2e8f0;border-radius:999px;overflow:hidden}
.sector-mini-line-v60 span{display:block;height:100%;background:#0f62fe;border-radius:999px}
.sector-status-v60{display:inline-flex;align-items:center;gap:6px;font-weight:850;font-size:12px}
.sector-status-v60:before{content:"";width:9px;height:9px;border-radius:50%;background:#22c55e}
.sector-status-v60.progress:before{background:#0f62fe}.sector-status-v60.pending:before{background:#f59e0b}.sector-status-v60.risk:before{background:#ef4444}
.sector-actions-v60{display:flex;gap:7px;flex-wrap:wrap}
.sector-actions-v60 button{height:34px;border-radius:10px;border:1px solid #dbe7f3;background:#f8fbff;color:#0f62fe;font-weight:900;padding:0 10px;cursor:pointer}
.sector-actions-v60 button:hover{background:#eef6ff}
.sector-actions-v60 .primary{background:#0f62fe;color:#fff;border-color:#0f62fe}
.sector-actions-v60 .danger{background:#fef2f2;color:#dc2626;border-color:#fecaca}
.sector-pager-v60{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;color:#334155;font-size:13px}
.sector-pages-v60{display:flex;gap:6px;align-items:center}
.sector-pages-v60 button{min-width:34px;height:34px;border-radius:9px;border:1px solid #dbe7f3;background:#fff;color:#0f62fe;font-weight:900;cursor:pointer}
.sector-pages-v60 button.active{background:#0f62fe;color:#fff}
.sector-empty-v60{border:1px dashed #cbd5e1;border-radius:16px;background:#f8fbff;padding:24px;text-align:center;color:#64748b}
.eval-independent-hidden-v60{display:none!important}
@media(max-width:1500px){
  .sector-kpis-v60{grid-template-columns:repeat(3,1fr)}
  .sector-analytics-grid-v60{grid-template-columns:1fr}
}

/* ===== sector-dynamic-exec-v61 ===== */
.sector-empty-mini-v61{
  border:1px dashed #cbd5e1;
  background:#f8fbff;
  border-radius:14px;
  padding:16px;
  color:#64748b;
  text-align:center;
  font-size:13px;
}

/* ===== executive-single-company-v62 ===== */
.exec-company-banner-v62{
  background:linear-gradient(135deg,#06172d,#0f3d83 62%,#0f62fe);
  color:#fff;
  border-radius:22px;
  padding:22px 24px;
  margin-bottom:18px;
  box-shadow:0 24px 70px rgba(15,23,42,.16);
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
}
.exec-company-banner-v62 h2{
  margin:0;
  font-size:26px;
}
.exec-company-banner-v62 p{
  margin:7px 0 0;
  color:#dbeafe;
  font-size:14px;
}
.exec-company-banner-v62 .chip-v62{
  display:inline-flex;
  align-items:center;
  gap:8px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.25);
  border-radius:999px;
  padding:8px 12px;
  font-weight:900;
  white-space:nowrap;
}
.exec-back-v62{
  height:36px;
  border-radius:11px;
  border:1px solid rgba(255,255,255,.35);
  background:rgba(255,255,255,.10);
  color:#fff;
  font-weight:900;
  padding:0 12px;
  cursor:pointer;
}
.exec-back-v62:hover{background:rgba(255,255,255,.18)}
.exec-single-hidden-v62{display:none!important}

/* ===== maturity-map-premium-v63 ===== */
.maturity-v63{display:grid;gap:18px}
.maturity-filters-v63{background:#fff;border:1px solid #dbe7f3;border-radius:18px;padding:14px;box-shadow:0 18px 50px rgba(15,23,42,.06);display:grid;grid-template-columns:repeat(5,1fr) 150px;gap:12px}
.maturity-filter-v63{border:1px solid #dbe7f3;border-radius:14px;background:#fff;min-height:56px;padding:8px 12px}
.maturity-filter-v63 label{display:block;font-size:11px;color:#334155;font-weight:900;margin-bottom:5px}.maturity-filter-v63 select{border:0;outline:0;background:transparent;width:100%;color:#0f172a;font-weight:750;cursor:pointer}.maturity-filter-v63 .hint{font-size:11px;color:#64748b;margin-top:4px}
.maturity-clear-v63{border:1px solid #dbe7f3;background:#eef6ff;color:#0f62fe;border-radius:14px;font-weight:900;cursor:pointer}.maturity-clear-v63:hover{background:#dbeafe}
.maturity-kpis-v63{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}.maturity-kpi-v63{background:#fff;border:1px solid #dbe7f3;border-radius:20px;padding:16px;box-shadow:0 18px 50px rgba(15,23,42,.06);min-height:128px;position:relative;overflow:hidden}.maturity-kpi-v63:after{content:"";position:absolute;right:-24px;bottom:-26px;width:92px;height:92px;border-radius:50%;background:rgba(15,98,254,.08)}
.maturity-kpi-v63 small{display:block;text-transform:uppercase;color:#334155;font-weight:900;font-size:11px}.maturity-kpi-v63 b{display:block;font-size:29px;color:#071b33;margin:8px 0}.maturity-kpi-v63 span{color:#64748b;font-size:12px}.maturity-kpi-v63 .green{color:#059669}.maturity-kpi-v63 .red{color:#dc2626}.maturity-kpi-v63 .blue{color:#0f62fe}.maturity-spark-v63{height:7px;background:#e2e8f0;border-radius:999px;overflow:hidden;margin-top:10px}.maturity-spark-v63 i{display:block;height:100%;background:#0f62fe;border-radius:999px}
.maturity-layout-v63{display:grid;grid-template-columns:1.25fr 1fr;gap:18px}.maturity-card-v63{background:#fff;border:1px solid #dbe7f3;border-radius:22px;padding:16px;box-shadow:0 18px 50px rgba(15,23,42,.06)}.maturity-card-v63 h3{margin:0 0 14px;color:#071b33;text-transform:uppercase;font-size:14px}.maturity-sub-v63{font-size:12px;text-transform:none;font-weight:600;color:#64748b}
.maturity-map-v63{height:320px;border-radius:18px;border:1px solid #dbe7f3;background:linear-gradient(180deg,rgba(34,197,94,.16) 0 25%,rgba(59,130,246,.12) 25% 55%,rgba(250,204,21,.18) 55% 78%,rgba(239,68,68,.14) 78% 100%);position:relative;overflow:hidden}.maturity-map-v63:before{content:"";position:absolute;left:70px;right:28px;top:40px;bottom:45px;background:repeating-linear-gradient(to right,rgba(15,23,42,.08) 0 1px,transparent 1px 16.66%),repeating-linear-gradient(to bottom,rgba(15,23,42,.08) 0 1px,transparent 1px 25%);border-left:2px solid rgba(15,23,42,.20);border-bottom:2px solid rgba(15,23,42,.20)}
.axis-y-v63{position:absolute;left:18px;top:40px;bottom:45px;display:flex;flex-direction:column;justify-content:space-between;color:#64748b;font-size:11px}.axis-x-v63{position:absolute;left:70px;right:28px;bottom:18px;display:flex;justify-content:space-between;color:#64748b;font-size:11px}.maturity-dot-v63{position:absolute;width:16px;height:16px;border-radius:50%;border:3px solid #fff;box-shadow:0 8px 18px rgba(15,23,42,.20);cursor:pointer;transform:translate(-50%,-50%)}.maturity-dot-v63:hover{transform:translate(-50%,-50%) scale(1.25);z-index:5}.maturity-dot-v63 .tip{display:none;position:absolute;left:18px;bottom:18px;background:#071b33;color:#fff;border-radius:10px;padding:10px;min-width:160px;font-size:11px;box-shadow:0 18px 40px rgba(15,23,42,.30)}.maturity-dot-v63:hover .tip{display:block}.maturity-dot-v63 .tip b{display:block;font-size:13px;margin-bottom:4px}.legend-v63{display:flex;gap:16px;flex-wrap:wrap;justify-content:center;margin-bottom:10px}.legend-v63 span{display:inline-flex;align-items:center;gap:6px;color:#334155;font-size:12px}.legend-v63 i{width:10px;height:10px;border-radius:50%;display:inline-block}
.maturity-bar-row-v63{display:grid;grid-template-columns:160px 1fr 70px;gap:12px;align-items:center;margin:14px 0;color:#334155;font-size:13px}.maturity-bar-v63{height:16px;background:#eef2f7;border-radius:999px;overflow:hidden}.maturity-bar-v63 span{display:block;height:100%;border-radius:999px}.level-pill-v63{display:inline-flex;padding:6px 10px;border-radius:999px;font-size:11px;font-weight:900}.pill-leader{background:#f3e8ff;color:#7c3aed}.pill-advanced{background:#dcfce7;color:#15803d}.pill-mid{background:#dbeafe;color:#1d4ed8}.pill-basic{background:#ffedd5;color:#c2410c}.pill-initial{background:#fee2e2;color:#dc2626}
.maturity-table-card-v63{background:#fff;border:1px solid #dbe7f3;border-radius:22px;padding:16px;box-shadow:0 18px 50px rgba(15,23,42,.06)}.maturity-table-head-v63{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.maturity-table-head-v63 h3{margin:0;color:#071b33;font-size:21px}.maturity-table-head-v63 p{margin:4px 0 0;color:#64748b;font-size:13px}.maturity-page-size-v63{display:flex;align-items:center;gap:8px;color:#334155;font-size:13px}.maturity-page-size-v63 select{height:36px;border:1px solid #dbe7f3;border-radius:10px;padding:0 8px;background:#fff}
.maturity-table-v63{width:100%;border-collapse:collapse;font-size:13px}.maturity-table-v63 th{color:#334155;text-align:left;padding:12px;border-bottom:1px solid #e2e8f0;text-transform:uppercase;font-size:11px}.maturity-table-v63 td{padding:12px;border-bottom:1px solid #eef2f7;color:#0f172a;vertical-align:middle}.maturity-company-v63{display:flex;gap:10px;align-items:center}.maturity-avatar-v63{width:36px;height:36px;border-radius:50%;background:#0f62fe;color:#fff;display:grid;place-items:center;font-weight:950;font-size:12px;flex:0 0 auto}.maturity-company-v63 b{display:block;color:#071b33}.maturity-company-v63 span{display:block;color:#64748b;font-size:12px}.maturity-score-v63{display:grid;gap:5px}.maturity-score-line-v63{width:92px;height:7px;background:#e2e8f0;border-radius:999px;overflow:hidden}.maturity-score-line-v63 span{display:block;height:100%;background:#0f62fe;border-radius:999px}.maturity-actions-v63{display:flex;gap:7px;flex-wrap:wrap}.maturity-actions-v63 button{height:34px;border-radius:10px;border:1px solid #dbe7f3;background:#f8fbff;color:#0f62fe;font-weight:900;padding:0 10px;cursor:pointer}.maturity-actions-v63 button:hover{background:#eef6ff}.maturity-actions-v63 .primary{background:#0f62fe;color:#fff;border-color:#0f62fe}.maturity-actions-v63 .danger{background:#fef2f2;color:#dc2626;border-color:#fecaca}.maturity-pager-v63{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;color:#334155;font-size:13px}.maturity-pages-v63{display:flex;gap:6px;align-items:center}.maturity-pages-v63 button{min-width:34px;height:34px;border-radius:9px;border:1px solid #dbe7f3;background:#fff;color:#0f62fe;font-weight:900;cursor:pointer}.maturity-pages-v63 button.active{background:#0f62fe;color:#fff}.maturity-empty-v63{border:1px dashed #cbd5e1;border-radius:16px;background:#f8fbff;padding:24px;text-align:center;color:#64748b}
@media(max-width:1500px){.maturity-filters-v63{grid-template-columns:repeat(2,1fr)}.maturity-kpis-v63{grid-template-columns:repeat(3,1fr)}.maturity-layout-v63{grid-template-columns:1fr}}

/* ===== architecture-module-v66 ===== */
.arch66{display:grid;gap:18px}
.arch66-card{background:#fff;border:1px solid #dbe7f3;border-radius:22px;padding:16px;box-shadow:0 18px 50px rgba(15,23,42,.06)}
.arch66-filters{display:grid;grid-template-columns:repeat(4,1fr) 150px;gap:12px}
.arch66-filter{border:1px solid #dbe7f3;border-radius:14px;background:#fff;min-height:56px;padding:8px 12px}
.arch66-filter label{display:block;font-size:11px;color:#334155;font-weight:900;margin-bottom:5px}
.arch66-filter select{border:0;outline:0;background:transparent;width:100%;color:#0f172a;font-weight:800}
.arch66-clear{border:1px solid #dbe7f3;background:#eef6ff;color:#0f62fe;border-radius:14px;font-weight:900;cursor:pointer}
.arch66-kpis{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.arch66-kpi{background:#fff;border:1px solid #dbe7f3;border-radius:20px;padding:16px;box-shadow:0 18px 50px rgba(15,23,42,.06);min-height:112px;position:relative;overflow:hidden}
.arch66-kpi small{display:block;text-transform:uppercase;color:#334155;font-weight:900;font-size:11px}.arch66-kpi b{display:block;font-size:28px;color:#071b33;margin:8px 0 6px}.arch66-kpi span{color:#64748b;font-size:12px}.arch66-kpi:after{content:"";position:absolute;right:14px;bottom:14px;width:42px;height:42px;border-radius:14px;background:#eef6ff}
.arch66-analytics{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:16px}.arch66-card h3{margin:0 0 14px;color:#071b33;text-transform:uppercase;font-size:13px;letter-spacing:.2px}
.arch66-donut-wrap{display:grid;grid-template-columns:145px 1fr;gap:18px;align-items:center}.arch66-donut{width:140px;height:140px;border-radius:50%;display:grid;place-items:center;text-align:center;background:radial-gradient(closest-side,#fff 58%,transparent 59%),conic-gradient(#22c55e 0 35%,#f59e0b 35% 72%,#ef4444 72% 100%);font-weight:950;font-size:25px;color:#071b33}.arch66-donut span{display:block;color:#64748b;font-size:11px}.arch66-legend{display:grid;gap:8px}.arch66-legend div{display:grid;grid-template-columns:14px 1fr 44px;gap:8px;align-items:center;color:#334155;font-size:12px}.arch66-dot{width:12px;height:12px;border-radius:50%}
.arch66-bar-row{display:grid;grid-template-columns:150px 1fr 45px;gap:10px;align-items:center;margin:10px 0;color:#334155;font-size:13px}.arch66-bar{height:9px;background:#e2e8f0;border-radius:999px;overflow:hidden}.arch66-bar span{display:block;height:100%;background:#0f62fe;border-radius:999px}.arch66-bar.green span{background:#22c55e}.arch66-bar.orange span{background:#f59e0b}.arch66-bar.red span{background:#ef4444}
.arch66-table-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.arch66-table-head h2{margin:0;color:#071b33;font-size:21px}.arch66-table-head p{margin:4px 0 0;color:#64748b;font-size:13px}
.arch66-table{width:100%;border-collapse:collapse;font-size:13px}.arch66-table th{color:#334155;text-align:left;padding:12px;border-bottom:1px solid #e2e8f0;text-transform:uppercase;font-size:11px}.arch66-table td{padding:12px;border-bottom:1px solid #eef2f7;color:#0f172a;vertical-align:middle}
.arch66-company{display:flex;align-items:center;gap:10px}.arch66-avatar{width:36px;height:36px;border-radius:50%;background:#0f62fe;color:#fff;display:grid;place-items:center;font-weight:950;font-size:12px}.arch66-company b{display:block;color:#071b33}.arch66-company span{display:block;color:#64748b;font-size:12px}
.arch66-mini-line{height:7px;background:#e2e8f0;border-radius:999px;overflow:hidden;width:90px;margin-top:5px}.arch66-mini-line span{display:block;height:100%;background:#0f62fe;border-radius:999px}.arch66-mini-line.orange span{background:#f59e0b}.arch66-mini-line.red span{background:#ef4444}
.arch66-actions{display:flex;gap:7px;flex-wrap:wrap}.arch66-actions button,.arch66-primary,.arch66-back{height:34px;border-radius:10px;border:1px solid #dbe7f3;background:#f8fbff;color:#0f62fe;font-weight:900;padding:0 10px;cursor:pointer}.arch66-actions .primary,.arch66-primary{background:#0f62fe;color:#fff;border-color:#0f62fe}
.arch66-pager{display:flex;justify-content:space-between;align-items:center;margin-top:14px;color:#334155;font-size:13px}.arch66-pages{display:flex;gap:6px}.arch66-pages button{min-width:34px;height:34px;border-radius:9px;border:1px solid #dbe7f3;background:#fff;color:#0f62fe;font-weight:900}.arch66-pages button.active{background:#0f62fe;color:#fff}
.arch66-quick{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}.arch66-quick .arch66-card{display:grid;grid-template-columns:56px 1fr;gap:14px;align-items:center}.arch66-qicon{width:52px;height:52px;border-radius:15px;background:#eef6ff;display:grid;place-items:center;font-size:26px;color:#0f62fe}
.arch66-head{background:#fff;border:1px solid #dbe7f3;border-radius:22px;padding:16px;box-shadow:0 18px 50px rgba(15,23,42,.06);display:grid;grid-template-columns:1.5fr repeat(5,1fr);gap:14px;align-items:center}
.arch66-title{display:flex;gap:12px;align-items:center}.arch66-logo{width:62px;height:62px;border-radius:16px;background:#eef6ff;display:grid;place-items:center;color:#0f62fe;font-weight:950}.arch66-title h2{margin:0;color:#071b33;font-size:22px}.arch66-title p{margin:5px 0 0;color:#64748b}.arch66-metric{border-left:1px solid #e2e8f0;padding-left:14px}.arch66-metric small{display:block;color:#64748b;font-weight:900;font-size:11px;text-transform:uppercase}.arch66-metric b{font-size:20px;color:#071b33}
.arch66-tabs{display:flex;gap:12px;border-bottom:1px solid #dbe7f3}.arch66-tabs button{border:0;background:transparent;color:#334155;font-weight:900;padding:12px 14px;cursor:pointer}.arch66-tabs button.active{color:#0f62fe;border-bottom:3px solid #0f62fe}
.arch66-diagrams{display:grid;grid-template-columns:1fr 1fr;gap:18px}.arch66-diagram{background:#fff;border:1px solid #dbe7f3;border-radius:22px;padding:16px;box-shadow:0 18px 50px rgba(15,23,42,.06);position:relative}.arch66-diagram.current{background:linear-gradient(180deg,#fff,#fff7f7)}.arch66-diagram.target{background:linear-gradient(180deg,#fff,#f0fff7)}
.arch66-diagram-title{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}.arch66-diagram-title h3{margin:0;font-size:18px}.arch66-diagram.current h3{color:#dc2626}.arch66-diagram.target h3{color:#059669}.arch66-diagram-title p{margin:5px 0 0;color:#64748b;font-size:12px}.arch66-diagram-title button{height:32px;border-radius:10px;border:1px solid #dbe7f3;background:#0f62fe;color:#fff;font-weight:900;padding:0 10px;cursor:pointer}
.arch66-legend-inline{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:#334155;margin-bottom:12px}.arch66-line{display:inline-flex;align-items:center;gap:6px}.arch66-line:before{content:"";width:28px;height:0;border-top:2px solid #22c55e}.arch66-line.manual:before{border-top:2px dashed #f59e0b}.arch66-line.broken:before{border-top:2px dashed #ef4444}
.arch66-flow{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;position:relative}.arch66-col{background:rgba(255,255,255,.72);border:1px solid #e2e8f0;border-radius:18px;padding:12px;min-height:330px}.arch66-col h4{text-align:center;color:#0f3d83;text-transform:uppercase;font-size:11px;margin:0 0 12px}
.arch66-tool{background:#fff;border:1px solid #dbe7f3;border-radius:14px;padding:10px;margin-bottom:10px;display:grid;grid-template-columns:36px 1fr 22px;gap:9px;align-items:center;min-height:54px;position:relative}.arch66-tool.manual{border-color:#fed7aa}.arch66-tool.broken{border-color:#fecaca;background:#fff7f7}.arch66-tool-icon{width:34px;height:34px;border-radius:10px;background:#eef6ff;display:grid;place-items:center;color:#0f62fe;font-size:19px}.arch66-tool b{font-size:12px;color:#071b33;display:block}.arch66-tool span{font-size:10.5px;color:#64748b}.arch66-tool-actions{display:grid;gap:4px}.arch66-tool-actions button{width:22px;height:22px;border:1px solid #dbe7f3;background:#f8fbff;border-radius:7px;color:#0f62fe;cursor:pointer;font-size:11px}.arch66-tool-actions .del{color:#dc2626;background:#fff1f2}
.arch66-conn{position:absolute;height:2px;background:#22c55e;transform-origin:left center;z-index:2}.arch66-conn.manual{background:transparent;border-top:2px dashed #f59e0b}.arch66-conn.broken{background:transparent;border-top:2px dashed #ef4444}.arch66-conn:after{content:"";position:absolute;right:-3px;top:-4px;border-left:7px solid currentColor;border-top:4px solid transparent;border-bottom:4px solid transparent;color:#22c55e}.arch66-conn.manual:after{color:#f59e0b}.arch66-conn.broken:after{color:#ef4444}
.arch66-add{border:1px dashed #cbd5e1;border-radius:14px;padding:14px;margin-top:8px;text-align:center;color:#0f62fe;font-weight:900;cursor:pointer;background:#fbfdff}.arch66-add:hover{background:#eef6ff}
.arch66-alert{margin-top:12px;border-radius:16px;padding:12px 14px;display:flex;gap:10px;align-items:center;font-weight:800}.arch66-alert.red{background:#fef2f2;color:#dc2626}.arch66-alert.green{background:#ecfdf5;color:#059669}
.arch66-bottom{display:grid;grid-template-columns:1fr 1fr 1fr 1.2fr;gap:16px}.arch66-quickrow{display:grid;grid-template-columns:42px 1fr;gap:10px;align-items:center;margin:10px 0}.arch66-quickicon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#eef6ff;color:#0f62fe;font-size:20px}.arch66-note textarea{width:100%;min-height:112px;border:1px solid #dbe7f3;border-radius:14px;padding:12px;resize:vertical;outline:none}.arch66-note button{height:34px;border:0;background:#0f62fe;color:#fff;border-radius:10px;font-weight:900;padding:0 12px;float:right;margin-top:8px}
.arch66-modal{position:fixed;inset:0;background:rgba(2,12,27,.55);display:none;align-items:center;justify-content:center;z-index:99999;padding:24px}.arch66-modal.active{display:flex}.arch66-modal-card{background:#fff;border-radius:22px;padding:22px;box-shadow:0 40px 100px rgba(0,0,0,.35);width:min(520px,94vw)}.arch66-modal-card h3{margin:0 0 14px;color:#071b33}.arch66-form{display:grid;gap:10px}.arch66-form label{font-size:12px;font-weight:900;color:#334155}.arch66-form input,.arch66-form select{height:40px;border:1px solid #dbe7f3;border-radius:12px;padding:0 12px}.arch66-modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}.arch66-modal-actions button{height:36px;border-radius:10px;border:1px solid #dbe7f3;background:#f8fbff;color:#0f62fe;font-weight:900;padding:0 12px;cursor:pointer}.arch66-modal-actions .primary{background:#0f62fe;color:#fff;border-color:#0f62fe}
@media(max-width:1500px){.arch66-kpis{grid-template-columns:repeat(3,1fr)}.arch66-analytics,.arch66-diagrams,.arch66-bottom,.arch66-quick{grid-template-columns:1fr}.arch66-head{grid-template-columns:1fr 1fr}.arch66-flow{grid-template-columns:1fr}.arch66-filters{grid-template-columns:1fr 1fr}}

/* ===== architecture-first-view-v67 ===== */
/* Ajuste puntual SOLO para la primera vista del módulo Arquitectura */
.arch-v65{
  gap:18px;
}

/* Filtros superiores tipo referencia */
.arch-filters-v65{
  background:#fff;
  border:1px solid #dbe7f3;
  border-radius:20px;
  padding:16px;
  box-shadow:0 18px 50px rgba(15,23,42,.06);
  display:grid;
  grid-template-columns:repeat(4,1fr) 160px;
  gap:14px;
}
.arch-filter-v65{
  border:1px solid #dbe7f3;
  border-radius:14px;
  background:#fff;
  min-height:60px;
  padding:9px 13px;
}
.arch-filter-v65 label{
  display:block;
  font-size:11px;
  color:#334155;
  font-weight:900;
  margin-bottom:6px;
}
.arch-filter-v65 select{
  border:0;
  outline:0;
  background:transparent;
  width:100%;
  color:#0f172a;
  font-weight:760;
}
.arch-clear-v65{
  border:1px solid #bcd7ff;
  background:#f5fbff;
  color:#0f62fe;
  border-radius:14px;
  font-weight:900;
  cursor:pointer;
}

/* KPI cards alineados a la referencia */
.arch-kpis-v65{
  display:grid;
  grid-template-columns:repeat(6,1fr);
  gap:14px;
}
.arch-kpi-v65{
  background:#fff;
  border:1px solid #dbe7f3;
  border-radius:18px;
  padding:16px;
  box-shadow:0 18px 50px rgba(15,23,42,.06);
  min-height:122px;
  position:relative;
  overflow:hidden;
}
.arch-kpi-v65:after{
  content:"";
  position:absolute;
  right:16px;
  bottom:16px;
  width:54px;
  height:54px;
  border-radius:16px;
  background:linear-gradient(135deg,#e8f2ff,#f8fbff);
}
.arch-kpi-v65 small{
  display:block;
  text-transform:uppercase;
  color:#1e3354;
  font-weight:950;
  font-size:11px;
  letter-spacing:.2px;
  position:relative;
  z-index:1;
}
.arch-kpi-v65 b{
  display:block;
  font-size:28px;
  color:#071b33;
  margin:9px 0 7px;
  position:relative;
  z-index:1;
}
.arch-kpi-v65 span{
  color:#64748b;
  font-size:12px;
  position:relative;
  z-index:1;
}

/* Panel analítico principal */
.arch-analytics-v65{
  display:grid;
  grid-template-columns:1.1fr 1fr 1fr;
  gap:16px;
}
.arch-card-v65{
  background:#fff;
  border:1px solid #dbe7f3;
  border-radius:22px;
  padding:20px;
  box-shadow:0 18px 50px rgba(15,23,42,.06);
}
.arch-card-v65 h3{
  margin:0 0 14px;
  color:#071b33;
  text-transform:uppercase;
  font-size:13px;
  letter-spacing:.2px;
}

/* Donut más parecido a la referencia */
.arch-donut-wrap-v65{
  display:grid;
  grid-template-columns:170px 1fr;
  gap:18px;
  align-items:center;
}
.arch-donut-v65{
  width:160px;
  height:160px;
  border-radius:50%;
  display:grid;
  place-items:center;
  text-align:center;
  background:
    radial-gradient(closest-side,#fff 58%,transparent 59%),
    conic-gradient(#22c55e 0 22%,#facc15 22% 59%,#fb923c 59% 84%,#ef4444 84% 100%);
  font-weight:950;
  font-size:27px;
  color:#071b33;
}
.arch-donut-v65 span{
  display:block;
  color:#64748b;
  font-size:11px;
}
.arch-legend-v65{
  display:grid;
  gap:10px;
}
.arch-legend-v65 div{
  display:grid;
  grid-template-columns:14px 1fr 52px;
  gap:8px;
  align-items:center;
  color:#334155;
  font-size:12.5px;
}
.arch-dot-v65{
  width:12px;
  height:12px;
  border-radius:50%;
}

/* Barras / gráfico */
.arch-bar-row-v65{
  display:grid;
  grid-template-columns:150px 1fr 45px;
  gap:10px;
  align-items:center;
  margin:12px 0;
  color:#334155;
  font-size:13px;
}
.arch-bar-v65{
  height:10px;
  background:#e2e8f0;
  border-radius:999px;
  overflow:hidden;
}
.arch-bar-v65 span{
  display:block;
  height:100%;
  background:#0f62fe;
  border-radius:999px;
}
.arch-bar-v65.green span{background:#22c55e}
.arch-bar-v65.orange span{background:#f59e0b}
.arch-bar-v65.red span{background:#ef4444}

/* Tabla inferior */
.arch-table-card-v65{
  background:#fff;
  border:1px solid #dbe7f3;
  border-radius:22px;
  padding:16px;
  box-shadow:0 18px 50px rgba(15,23,42,.06);
}
.arch-table-head-v65{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  margin-bottom:12px;
}
.arch-table-head-v65 h3{
  margin:0;
  color:#071b33;
  font-size:20px;
  text-transform:uppercase;
}
.arch-table-head-v65 p{
  margin:4px 0 0;
  color:#64748b;
  font-size:13px;
}
.arch-table-v65{
  width:100%;
  border-collapse:collapse;
  font-size:13px;
}
.arch-table-v65 th{
  color:#334155;
  text-align:left;
  padding:12px;
  border-bottom:1px solid #e2e8f0;
  text-transform:uppercase;
  font-size:11px;
}
.arch-table-v65 td{
  padding:12px;
  border-bottom:1px solid #eef2f7;
  color:#0f172a;
}
.arch-company-v65{
  display:flex;
  align-items:center;
  gap:10px;
}
.arch-avatar-v65{
  width:36px;
  height:36px;
  border-radius:50%;
  background:#0f62fe;
  color:#fff;
  display:grid;
  place-items:center;
  font-weight:950;
  font-size:12px;
}
.arch-company-v65 b{display:block;color:#071b33}
.arch-company-v65 span{display:block;color:#64748b;font-size:12px}

/* Barra de brecha en tabla */
.arch-gap-table-v67{
  display:grid;
  grid-template-columns:42px 1fr;
  gap:10px;
  align-items:center;
}
.arch-gap-line-v67{
  height:8px;
  background:#e2e8f0;
  border-radius:999px;
  overflow:hidden;
  min-width:80px;
}
.arch-gap-line-v67 span{
  display:block;
  height:100%;
  border-radius:999px;
  background:#f59e0b;
}
.arch-gap-line-v67.high span{background:#ef4444}
.arch-gap-line-v67.low span{background:#22c55e}

/* Acciones */
.arch-actions-v65{
  display:flex;
  gap:7px;
  flex-wrap:wrap;
}
.arch-actions-v65 button,
.arch-table-head-v65 button,
.arch-primary-v65{
  height:34px;
  border-radius:10px;
  border:1px solid #dbe7f3;
  background:#f8fbff;
  color:#0f62fe;
  font-weight:900;
  padding:0 10px;
  cursor:pointer;
}
.arch-actions-v65 .primary,
.arch-primary-v65{
  background:#0f62fe;
  color:#fff;
  border-color:#0f62fe;
}

/* Tarjetas inferiores */
.arch-shortcuts-v67{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
}
.arch-shortcut-v67{
  background:#fff;
  border:1px solid #dbe7f3;
  border-radius:22px;
  padding:16px;
  box-shadow:0 18px 50px rgba(15,23,42,.06);
  display:grid;
  grid-template-columns:58px 1fr;
  gap:14px;
  align-items:center;
}
.arch-shortcut-icon-v67{
  width:54px;
  height:54px;
  border-radius:16px;
  display:grid;
  place-items:center;
  font-size:28px;
  background:#eef6ff;
  color:#0f62fe;
}
.arch-shortcut-v67 h3{
  margin:0 0 5px;
  color:#071b33;
  font-size:16px;
}
.arch-shortcut-v67 p{
  margin:0 0 10px;
  color:#64748b;
  font-size:13px;
}
.arch-shortcut-v67 button{
  height:32px;
  border-radius:9px;
  border:1px solid #0f62fe;
  background:#fff;
  color:#0f62fe;
  font-weight:900;
  padding:0 12px;
  cursor:pointer;
}

@media(max-width:1500px){
  .arch-kpis-v65{grid-template-columns:repeat(3,1fr)}
  .arch-analytics-v65{grid-template-columns:1fr}
  .arch-shortcuts-v67{grid-template-columns:1fr}
}

/* ===== architecture-detail-actions-v68 ===== */
/* Ajuste puntual SOLO para acciones y vista detalle de Arquitectura */
.arch-actions-v65 .danger-v68{
  background:#fff1f2;
  color:#dc2626;
  border-color:#fecaca;
}
.arch-actions-v65 .danger-v68:hover{background:#fee2e2}

.arch-company-header-v68{
  background:#fff;
  border:1px solid #dbe7f3;
  border-radius:22px;
  padding:16px;
  box-shadow:0 18px 50px rgba(15,23,42,.06);
  display:grid;
  grid-template-columns:1.5fr repeat(5,1fr);
  gap:14px;
  align-items:center;
}
.arch-company-title-v68{display:flex;gap:12px;align-items:center}
.arch-company-logo-v68{
  width:62px;height:62px;border-radius:16px;background:#eef6ff;
  display:grid;place-items:center;color:#0f62fe;font-weight:950;
}
.arch-company-title-v68 h3{margin:0;color:#071b33;font-size:22px}
.arch-company-title-v68 p{margin:5px 0 0;color:#64748b}
.arch-metric-v68{border-left:1px solid #e2e8f0;padding-left:14px}
.arch-metric-v68 small{display:block;color:#64748b;font-weight:900;font-size:11px;text-transform:uppercase}
.arch-metric-v68 b{font-size:20px;color:#071b33}

.arch-detail-toolbar-v68{
  display:flex;justify-content:space-between;align-items:center;gap:14px;
  background:#fff;border:1px solid #dbe7f3;border-radius:18px;
  padding:14px 16px;box-shadow:0 18px 50px rgba(15,23,42,.06);
}
.arch-detail-toolbar-v68 button{
  height:36px;border-radius:11px;border:1px solid #dbe7f3;
  background:#f8fbff;color:#0f62fe;font-weight:900;padding:0 12px;cursor:pointer;
}
.arch-detail-toolbar-v68 .primary{background:#0f62fe;color:#fff;border-color:#0f62fe}
.arch-detail-toolbar-v68 .danger{background:#fff1f2;color:#dc2626;border-color:#fecaca}

.arch-diagrams-v68{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.arch-diagram-v68{
  background:#fff;border:1px solid #dbe7f3;border-radius:22px;padding:16px;
  box-shadow:0 18px 50px rgba(15,23,42,.06);position:relative;overflow:hidden;
}
.arch-diagram-v68.current{background:linear-gradient(180deg,#fff,#fff7f7)}
.arch-diagram-v68.target{background:linear-gradient(180deg,#fff,#f0fff7)}
.arch-diagram-title-v68{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}
.arch-diagram-title-v68 h3{margin:0;font-size:18px}
.arch-diagram-v68.current h3{color:#dc2626}
.arch-diagram-v68.target h3{color:#059669}
.arch-diagram-title-v68 p{margin:5px 0 0;color:#64748b;font-size:12px}
.arch-diagram-title-v68 button{
  height:32px;border-radius:10px;border:1px solid #dbe7f3;background:#0f62fe;
  color:#fff;font-weight:900;padding:0 10px;cursor:pointer;
}
.arch-legend-inline-v68{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:#334155;margin-bottom:12px}
.legend-line-v68{display:inline-flex;align-items:center;gap:6px}
.legend-line-v68:before{content:"";width:28px;height:0;border-top:2px solid #22c55e}
.legend-manual-v68:before{border-top:2px dashed #f59e0b}
.legend-broken-v68:before{border-top:2px dashed #ef4444}

.arch-flow-v68{display:grid;grid-template-columns:1fr 1fr 1fr;gap:18px;position:relative}
.arch-col-v68{
  background:rgba(255,255,255,.72);border:1px solid #e2e8f0;
  border-radius:18px;padding:12px;min-height:330px;
}
.arch-col-v68 h4{text-align:center;color:#0f3d83;text-transform:uppercase;font-size:11px;margin:0 0 12px}
.tool-card-v68{
  background:#fff;border:1px solid #dbe7f3;border-radius:14px;padding:10px;margin-bottom:10px;
  display:grid;grid-template-columns:36px 1fr 48px;gap:9px;align-items:center;min-height:54px;position:relative;
}
.tool-card-v68.manual{border-color:#fed7aa}
.tool-card-v68.broken{border-color:#fecaca;background:#fff7f7}
.tool-icon-v68{width:34px;height:34px;border-radius:10px;background:#eef6ff;display:grid;place-items:center;color:#0f62fe;font-size:19px}
.tool-card-v68 b{font-size:12px;color:#071b33;display:block}
.tool-card-v68 span{font-size:10.5px;color:#64748b}
.tool-actions-v68{display:grid;grid-template-columns:1fr 1fr;gap:4px}
.tool-actions-v68 button{
  width:22px;height:22px;border:1px solid #dbe7f3;background:#f8fbff;
  border-radius:7px;color:#0f62fe;cursor:pointer;font-size:11px;
}
.tool-actions-v68 .del{color:#dc2626;background:#fff1f2}
.tool-actions-v68 .conn{color:#059669;background:#f0fdf4}

.add-tool-v68{
  border:1px dashed #cbd5e1;border-radius:14px;padding:14px;margin-top:8px;text-align:center;
  color:#0f62fe;font-weight:900;cursor:pointer;background:#fbfdff;
}
.add-tool-v68:hover{background:#eef6ff}

.connection-v68{position:absolute;height:2px;background:#22c55e;transform-origin:left center;z-index:2}
.connection-v68.manual{background:transparent;border-top:2px dashed #f59e0b}
.connection-v68.broken{background:transparent;border-top:2px dashed #ef4444}
.connection-v68:after{
  content:"";position:absolute;right:-3px;top:-4px;border-left:7px solid currentColor;
  border-top:4px solid transparent;border-bottom:4px solid transparent;color:#22c55e;
}
.connection-v68.manual:after{color:#f59e0b}
.connection-v68.broken:after{color:#ef4444}

.arch-alert-v68{margin-top:12px;border-radius:16px;padding:12px 14px;display:flex;gap:10px;align-items:center;font-weight:800}
.arch-alert-v68.red{background:#fef2f2;color:#dc2626}
.arch-alert-v68.green{background:#ecfdf5;color:#059669}

.arch-bottom-v68{display:grid;grid-template-columns:1fr 1fr 1fr 1.2fr;gap:16px}
.arch-card-v68{background:#fff;border:1px solid #dbe7f3;border-radius:22px;padding:16px;box-shadow:0 18px 50px rgba(15,23,42,.06)}
.arch-card-v68 h3{margin:0 0 14px;color:#071b33;text-transform:uppercase;font-size:13px}
.arch-note-v68 textarea{width:100%;min-height:112px;border:1px solid #dbe7f3;border-radius:14px;padding:12px;resize:vertical;outline:none}
.arch-note-v68 button{height:34px;border:0;background:#0f62fe;color:#fff;border-radius:10px;font-weight:900;padding:0 12px;float:right;margin-top:8px}

.arch-modal-v68{position:fixed;inset:0;background:rgba(2,12,27,.55);display:none;align-items:center;justify-content:center;z-index:99999;padding:24px}
.arch-modal-v68.active{display:flex}
.arch-modal-card-v68{background:#fff;border-radius:22px;padding:22px;box-shadow:0 40px 100px rgba(0,0,0,.35);width:min(540px,94vw)}
.arch-modal-card-v68 h3{margin:0 0 14px;color:#071b33}
.arch-form-v68{display:grid;gap:10px}
.arch-form-v68 label{font-size:12px;font-weight:900;color:#334155}
.arch-form-v68 input,.arch-form-v68 select{height:40px;border:1px solid #dbe7f3;border-radius:12px;padding:0 12px}
.arch-modal-actions-v68{display:flex;justify-content:flex-end;gap:8px;margin-top:14px}
.arch-modal-actions-v68 button{height:36px;border-radius:10px;border:1px solid #dbe7f3;background:#f8fbff;color:#0f62fe;font-weight:900;padding:0 12px;cursor:pointer}
.arch-modal-actions-v68 .primary{background:#0f62fe;color:#fff;border-color:#0f62fe}

@media(max-width:1500px){
  .arch-diagrams-v68,.arch-bottom-v68{grid-template-columns:1fr}
  .arch-company-header-v68{grid-template-columns:1fr 1fr}
  .arch-flow-v68{grid-template-columns:1fr}
}

/* ===== architecture-logo-tools-v69 ===== */
.tool-card-v68{
  grid-template-columns:46px 1fr;
  gap:11px;
  padding:12px;
  border-radius:16px;
  min-height:94px;
}
.tool-logo-v69{
  width:42px;
  height:42px;
  border-radius:13px;
  background:#eef6ff;
  display:grid;
  place-items:center;
  overflow:hidden;
  color:#0f62fe;
  font-size:22px;
}
.tool-logo-v69 img{
  width:100%;
  height:100%;
  object-fit:contain;
  padding:5px;
  box-sizing:border-box;
  background:#fff;
}
.tool-info-v69{min-width:0}
.tool-info-v69 b{font-size:13px;line-height:1.2}
.tool-info-v69 span{display:block;margin-top:4px}
.tool-actions-premium-v69{
  grid-column:1 / -1;
  display:flex;
  gap:7px;
  flex-wrap:wrap;
  padding-top:6px;
}
.tool-actions-premium-v69 button{
  min-height:28px;
  border-radius:999px;
  border:1px solid #dbe7f3;
  background:#f8fbff;
  color:#0f62fe;
  font-weight:900;
  font-size:11px;
  padding:0 9px;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  gap:5px;
}
.tool-actions-premium-v69 button:hover{background:#eef6ff}
.tool-actions-premium-v69 .status-connected{background:#ecfdf5;color:#059669;border-color:#bbf7d0}
.tool-actions-premium-v69 .status-manual{background:#fffbeb;color:#d97706;border-color:#fde68a}
.tool-actions-premium-v69 .status-broken{background:#fef2f2;color:#dc2626;border-color:#fecaca}
.tool-actions-premium-v69 .delete{background:#fff1f2;color:#dc2626;border-color:#fecaca}
.arch-upload-v69{
  border:1px dashed #bcd7ff;
  background:#f8fbff;
  border-radius:14px;
  padding:14px;
  display:grid;
  gap:8px;
}
.arch-upload-v69 input[type=file]{height:auto;border:0;padding:0}
.arch-upload-preview-v69{
  display:flex;
  align-items:center;
  gap:10px;
  color:#64748b;
  font-size:12px;
}
.arch-upload-preview-v69 img{
  width:44px;
  height:44px;
  object-fit:contain;
  border:1px solid #dbe7f3;
  border-radius:12px;
  background:#fff;
  padding:5px;
}
.arch-form-v68 .emoji-fallback-v69{
  display:grid;
  grid-template-columns:1fr 110px;
  gap:10px;
  align-items:end;
}

/* ===== architecture-buttons-pdf-v70 ===== */
.tool-actions-premium-v69{grid-column:1 / -1;display:flex;gap:8px;flex-wrap:wrap;padding-top:8px;border-top:1px solid rgba(226,232,240,.75);margin-top:4px}.tool-actions-premium-v69 button{min-height:30px;border-radius:10px;border:1px solid #dbe7f3;background:#fff;color:#0f62fe;font-weight:900;font-size:11px;padding:0 10px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;box-shadow:0 8px 18px rgba(15,23,42,.05);transition:.16s ease}.tool-actions-premium-v69 button:hover{transform:translateY(-1px);box-shadow:0 12px 24px rgba(15,23,42,.09)}.tool-actions-premium-v69 button:first-child{background:#eef6ff;border-color:#bfdbfe;color:#0f62fe}.tool-actions-premium-v69 .status-connected{background:#ecfdf5;color:#047857;border-color:#bbf7d0}.tool-actions-premium-v69 .status-manual{background:#fffbeb;color:#b45309;border-color:#fde68a}.tool-actions-premium-v69 .status-broken{background:#fef2f2;color:#dc2626;border-color:#fecaca}.tool-actions-premium-v69 .delete{background:#fff7f7;color:#dc2626;border-color:#fecaca}.tool-actions-premium-v69 .delete:hover{background:#fee2e2}.arch-detail-toolbar-v68{align-items:center}.arch-detail-toolbar-v68 button{height:38px;border-radius:12px;border:1px solid #dbe7f3;background:#fff;color:#0f62fe;font-weight:950;padding:0 14px;box-shadow:0 10px 22px rgba(15,23,42,.05)}.arch-detail-toolbar-v68 button:hover{background:#eef6ff}.arch-detail-toolbar-v68 .primary{background:#0f62fe;color:#fff;border-color:#0f62fe;box-shadow:0 14px 30px rgba(15,98,254,.18)}.arch-detail-toolbar-v68 .danger{background:#fff1f2;color:#dc2626;border-color:#fecaca}.arch-detail-toolbar-v68 .pdf-v70{background:#071b33;color:#fff;border-color:#071b33}.arch-detail-toolbar-v68 .pdf-v70:hover{background:#0b2d55}.arch-tabs-v65 button{height:36px;border-radius:999px!important;border:1px solid #dbe7f3!important;background:#fff!important;color:#334155!important;padding:0 14px!important;font-weight:900!important}.arch-tabs-v65 button.active{background:#0f62fe!important;color:#fff!important;border-color:#0f62fe!important}@media print{body *{visibility:hidden!important}#architecture,#architecture *{visibility:visible!important}#architecture{position:absolute!important;left:0!important;top:0!important;width:100%!important}.sidebar,.app-sidebar,.arch-detail-toolbar-v68,.arch-tabs-v65,.tool-actions-premium-v69,.add-tool-v68,.arch-diagram-title-v68 button,.arch-note-v68 button{display:none!important}}

/* ===== architecture-v71-fixes ===== */
/* SOLO Arquitectura: PDF, brechas editables y arquitectura optimizada */
.arch-tabs-v71{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  border-bottom:1px solid #dbe7f3;
  padding-bottom:10px;
}
.arch-tabs-v71 button{
  height:38px;
  border-radius:999px;
  border:1px solid #dbe7f3;
  background:#fff;
  color:#334155;
  font-weight:950;
  padding:0 16px;
  cursor:pointer;
  box-shadow:0 8px 18px rgba(15,23,42,.04);
}
.arch-tabs-v71 button.active{
  background:#0f62fe;
  color:#fff;
  border-color:#0f62fe;
}
.arch-tab-panel-v71{display:grid;gap:18px}
.arch-rec-grid-v71{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}
.arch-rec-card-v71{
  background:#fff;
  border:1px solid #dbe7f3;
  border-radius:22px;
  padding:16px;
  box-shadow:0 18px 50px rgba(15,23,42,.06);
}
.arch-rec-card-v71 h3{
  margin:0 0 14px;
  color:#071b33;
  text-transform:uppercase;
  font-size:13px;
}
.arch-breach-item-v71{
  border:1px solid #e2e8f0;
  border-radius:16px;
  padding:12px;
  margin-bottom:10px;
  background:#f8fbff;
}
.arch-breach-item-v71 b{display:block;color:#071b33;margin-bottom:5px}
.arch-breach-item-v71 span{color:#64748b;font-size:13px}
.arch-breach-tag-v71{
  display:inline-flex;
  margin-top:8px;
  border-radius:999px;
  padding:5px 9px;
  font-weight:900;
  font-size:11px;
}
.arch-breach-tag-v71.red{background:#fef2f2;color:#dc2626}
.arch-breach-tag-v71.orange{background:#fffbeb;color:#b45309}
.arch-breach-tag-v71.green{background:#ecfdf5;color:#047857}
.arch-rec-card-v71 textarea{
  width:100%;
  min-height:220px;
  border:1px solid #dbe7f3;
  border-radius:16px;
  padding:14px;
  outline:none;
  resize:vertical;
  color:#0f172a;
  line-height:1.45;
}
.arch-rec-card-v71 button,
.arch-v71-btn{
  height:38px;
  border-radius:12px;
  border:1px solid #0f62fe;
  background:#0f62fe;
  color:#fff;
  font-weight:950;
  padding:0 14px;
  cursor:pointer;
}
.arch-optimized-wrap-v71{
  display:grid;
  grid-template-columns:1fr;
  gap:18px;
}
.arch-diagram-v68.optimized{
  background:linear-gradient(180deg,#fff,#f5f3ff);
}
.arch-diagram-v68.optimized h3{
  color:#7c3aed;
}
.arch-alert-v68.purple{
  background:#f5f3ff;
  color:#7c3aed;
}
.tool-actions-premium-v69 button{
  border-radius:10px!important;
  min-height:30px!important;
  box-shadow:0 8px 18px rgba(15,23,42,.05);
}
.arch-detail-toolbar-v68 .pdf-v71{
  background:#071b33!important;
  color:#fff!important;
  border-color:#071b33!important;
}
.arch-detail-toolbar-v68 .pdf-v71:hover{background:#0b2d55!important}
@media(max-width:1300px){
  .arch-rec-grid-v71{grid-template-columns:1fr}
}
@media print{
  body{background:#fff!important}
  body *{visibility:hidden!important}
  #printRootV71, #printRootV71 *{visibility:visible!important}
  #printRootV71{position:absolute!important;left:0!important;top:0!important;width:100%!important}
}

/* ===== architecture-clean-buttons-v72 ===== */
/* SOLO Arquitectura: limpiar botones superiores y eliminar mensaje redundante */
.arch-detail-toolbar-v68 > div:last-child{
  gap:10px!important;
  align-items:center!important;
}
.arch-detail-toolbar-v68 .primary{
  display:none!important;
}
.arch-detail-toolbar-v68 .pdf-v71{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
}
.arch-detail-toolbar-v68 .danger{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
}
.arch-diagram-v68.target .arch-alert-v68.green{
  display:none!important;
}

/* ===== architecture-table-buttons-v73 ===== */
/* SOLO primera vista de Arquitectura: estética botones tabla y títulos centrados */
#architecture .arch-table-v65 th{
  text-align:center!important;
  vertical-align:middle!important;
  letter-spacing:.25px;
}
#architecture .arch-table-v65 td{
  vertical-align:middle!important;
}
#architecture .arch-table-v65 td:not(:first-child){
  text-align:center!important;
}
#architecture .arch-table-v65 td:first-child{
  text-align:left!important;
}
#architecture .arch-actions-v65{
  justify-content:center!important;
  align-items:center!important;
  gap:8px!important;
}
#architecture .arch-actions-v65 button{
  height:36px!important;
  min-width:82px!important;
  border-radius:12px!important;
  font-size:12px!important;
  font-weight:950!important;
  padding:0 13px!important;
  border:1px solid #dbe7f3!important;
  box-shadow:0 10px 22px rgba(15,23,42,.06)!important;
  transition:transform .15s ease, box-shadow .15s ease, background .15s ease!important;
}
#architecture .arch-actions-v65 button:hover{
  transform:translateY(-1px)!important;
  box-shadow:0 14px 28px rgba(15,23,42,.10)!important;
}
#architecture .arch-actions-v65 button:not(.primary):not(.danger-v68){
  background:#eef6ff!important;
  color:#0f62fe!important;
  border-color:#bfdbfe!important;
}
#architecture .arch-actions-v65 .primary{
  background:#0f62fe!important;
  color:#fff!important;
  border-color:#0f62fe!important;
}
#architecture .arch-actions-v65 .danger-v68{
  background:#fff1f2!important;
  color:#dc2626!important;
  border-color:#fecaca!important;
}
#architecture .arch-actions-v65 .danger-v68:hover{
  background:#fee2e2!important;
}
#architecture .arch-gap-table-v67{
  justify-content:center!important;
  grid-template-columns:44px 92px!important;
}
#architecture .arch-company-v65{
  justify-content:flex-start!important;
}

/* ===== architecture-pagination-v74 ===== */
/* SOLO primera vista de Arquitectura: paginación premium */
#architecture .arch-pager-v65{
  display:flex!important;
  justify-content:space-between!important;
  align-items:center!important;
  gap:16px!important;
  margin-top:18px!important;
  padding:14px 4px 4px!important;
  color:#475569!important;
  font-size:13px!important;
  border-top:1px solid #eef2f7!important;
}
#architecture .arch-pager-v65 > span{
  font-weight:700!important;
  color:#334155!important;
}
#architecture .arch-pages-v65{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
}
#architecture .arch-pages-v65 button{
  min-width:38px!important;
  height:38px!important;
  border-radius:12px!important;
  border:1px solid #dbe7f3!important;
  background:#fff!important;
  color:#0f62fe!important;
  font-weight:950!important;
  box-shadow:0 10px 22px rgba(15,23,42,.05)!important;
  cursor:pointer!important;
  transition:transform .15s ease, box-shadow .15s ease, background .15s ease!important;
}
#architecture .arch-pages-v65 button:hover{
  transform:translateY(-1px)!important;
  background:#eef6ff!important;
  box-shadow:0 14px 28px rgba(15,23,42,.09)!important;
}
#architecture .arch-pages-v65 button.active{
  background:#0f62fe!important;
  color:#fff!important;
  border-color:#0f62fe!important;
  box-shadow:0 16px 32px rgba(15,98,254,.22)!important;
}
#architecture .arch-pages-v65 span{
  min-width:30px!important;
  height:38px!important;
  display:grid!important;
  place-items:center!important;
  color:#64748b!important;
  font-weight:900!important;
}

/* ===== architecture-pagination-controls-v75 ===== */
/* SOLO primera vista de Arquitectura: controles « ‹ 1 › » */
#architecture .arch-pager-v65{
  justify-content:space-between!important;
}
#architecture .arch-pages-v65{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
}
#architecture .arch-pages-v65 button{
  min-width:42px!important;
  height:42px!important;
  border-radius:13px!important;
  border:1px solid #dbe7f3!important;
  background:#fff!important;
  color:#0f62fe!important;
  font-weight:950!important;
  box-shadow:0 10px 22px rgba(15,23,42,.06)!important;
}
#architecture .arch-pages-v65 button.active{
  background:#0f62fe!important;
  color:#fff!important;
  border-color:#0f62fe!important;
  box-shadow:0 16px 32px rgba(15,98,254,.22)!important;
}

/* ===== companies-filters-dynamic-v76 ===== */
/* SOLO Empresas evaluadas: apoyo visual para filtros dinámicos */
#companies .companies-empty-v76{
  border:1px dashed #cbd5e1;
  background:#f8fbff;
  border-radius:16px;
  padding:22px;
  text-align:center;
  color:#64748b;
  font-weight:700;
}

/* ===== roadmap-premium-v77 ===== */
/* SOLO Roadmap: nueva vista premium listado + detalle por empresa */
#roadmap .roadmap-v77{display:grid;gap:18px}
#roadmap .roadmap-filters-v77{
  background:#fff;border:1px solid #dbe7f3;border-radius:20px;padding:16px;
  box-shadow:0 18px 50px rgba(15,23,42,.06);
  display:grid;grid-template-columns:repeat(6,1fr) 160px;gap:12px;align-items:end;
}
#roadmap .roadmap-filter-v77{border:1px solid #dbe7f3;border-radius:14px;background:#fff;min-height:60px;padding:9px 13px}
#roadmap .roadmap-filter-v77 label{display:block;font-size:11px;color:#334155;font-weight:900;margin-bottom:6px}
#roadmap .roadmap-filter-v77 select,#roadmap .roadmap-filter-v77 input{border:0;outline:0;background:transparent;width:100%;color:#0f172a;font-weight:800}
#roadmap .roadmap-clear-v77{height:60px;border:1px solid #bcd7ff;background:#f5fbff;color:#0f62fe;border-radius:14px;font-weight:950;cursor:pointer}
#roadmap .roadmap-table-card-v77{background:#fff;border:1px solid #dbe7f3;border-radius:22px;padding:16px;box-shadow:0 18px 50px rgba(15,23,42,.06)}
#roadmap .roadmap-table-v77{width:100%;border-collapse:collapse;font-size:13px}
#roadmap .roadmap-table-v77 th{text-align:center;color:#334155;padding:13px;border-bottom:1px solid #e2e8f0;text-transform:uppercase;font-size:11px;letter-spacing:.25px}
#roadmap .roadmap-table-v77 td{text-align:center;padding:13px;border-bottom:1px solid #eef2f7;color:#0f172a;vertical-align:middle}
#roadmap .roadmap-table-v77 td:first-child{text-align:left}
#roadmap .road-company-v77{display:flex;align-items:center;gap:10px}
#roadmap .road-avatar-v77{width:36px;height:36px;border-radius:50%;background:#0f62fe;color:#fff;display:grid;place-items:center;font-weight:950;font-size:12px}
#roadmap .road-company-v77 b{display:block;color:#071b33}
#roadmap .road-company-v77 span{display:block;color:#64748b;font-size:12px}
#roadmap .road-status-v77{display:inline-flex;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:950}
#roadmap .road-status-v77.done{background:#dcfce7;color:#047857}
#roadmap .road-status-v77.progress{background:#dbeafe;color:#0f62fe}
#roadmap .road-status-v77.pending{background:#fef3c7;color:#b45309}
#roadmap .road-thumb-v77{width:54px;height:34px;border:1px solid #dbe7f3;border-radius:8px;background:#f8fbff;object-fit:cover}
#roadmap .road-actions-v77{display:flex;gap:8px;justify-content:center;align-items:center}
#roadmap .road-actions-v77 button,.road-btn-v77{
  height:36px;border-radius:12px;border:1px solid #bfdbfe;background:#eef6ff;color:#0f62fe;
  font-weight:950;padding:0 13px;cursor:pointer;box-shadow:0 10px 22px rgba(15,23,42,.05)
}
#roadmap .road-actions-v77 .primary,.road-btn-v77.primary{background:#0f62fe;color:#fff;border-color:#0f62fe}
#roadmap .road-actions-v77 .danger,.road-btn-v77.danger{background:#fff1f2;color:#dc2626;border-color:#fecaca}
#roadmap .road-pager-v77{display:flex;justify-content:space-between;align-items:center;margin-top:16px;padding-top:14px;border-top:1px solid #eef2f7;color:#334155;font-size:13px}
#roadmap .road-pages-v77{display:flex;gap:8px;align-items:center}
#roadmap .road-pages-v77 button{min-width:42px;height:42px;border-radius:13px;border:1px solid #dbe7f3;background:#fff;color:#0f62fe;font-weight:950;box-shadow:0 10px 22px rgba(15,23,42,.06);cursor:pointer}
#roadmap .road-pages-v77 button.active{background:#0f62fe;color:#fff;border-color:#0f62fe}
#roadmap .road-detail-card-v77{background:#fff;border:1px solid #dbe7f3;border-radius:22px;padding:16px;box-shadow:0 18px 50px rgba(15,23,42,.06)}
#roadmap .road-detail-head-v77{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}
#roadmap .road-detail-title-v77{display:flex;align-items:center;gap:12px}
#roadmap .road-detail-title-v77 h3{margin:0;color:#071b33;font-size:22px}
#roadmap .road-detail-title-v77 p{margin:4px 0 0;color:#64748b}
#roadmap .road-detail-actions-v77{display:flex;gap:10px;flex-wrap:wrap}
#roadmap .road-detail-grid-v77{display:grid;grid-template-columns:290px 1fr;gap:16px}
#roadmap .road-side-v77{border:1px solid #dbe7f3;border-radius:18px;padding:16px;background:#fff}
#roadmap .road-side-logo-v77{width:64px;height:64px;border-radius:16px;background:#eef6ff;display:grid;place-items:center;color:#0f62fe;font-weight:950;font-size:20px;margin-bottom:12px;overflow:hidden}
#roadmap .road-side-logo-v77 img{width:100%;height:100%;object-fit:contain;padding:6px;background:#fff;box-sizing:border-box}
#roadmap .road-side-v77 h4{margin:0 0 6px;color:#071b33;font-size:19px}
#roadmap .road-side-v77 p{margin:0 0 14px;color:#64748b}
#roadmap .road-side-row-v77{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid #eef2f7;font-size:13px}
#roadmap .road-side-row-v77 b{color:#071b33}
#roadmap .road-upload-v77{border:1px dashed #bcd7ff;border-radius:14px;padding:12px;background:#f8fbff;margin-top:14px}
#roadmap .road-upload-v77 input{width:100%;font-size:12px}
#roadmap .road-visual-v77{border:1px solid #dbe7f3;border-radius:18px;padding:16px;background:#fff}
#roadmap .road-visual-head-v77{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}
#roadmap .road-visual-head-v77 h4{margin:0;color:#071b33}
#roadmap .road-view-toggle-v77{display:flex;gap:8px;align-items:center}
#roadmap .road-view-toggle-v77 button{height:34px;border-radius:10px;border:1px solid #dbe7f3;background:#fff;color:#0f62fe;font-weight:900;padding:0 10px}
#roadmap .road-timeline-v77{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;position:relative}
#roadmap .road-stage-v77{border-radius:18px;padding:16px;min-height:170px;border:1px solid #dbe7f3}
#roadmap .road-stage-v77:nth-child(1){background:#f0f7ff}
#roadmap .road-stage-v77:nth-child(2){background:#f0fdf4}
#roadmap .road-stage-v77:nth-child(3){background:#faf5ff}
#roadmap .road-stage-v77:nth-child(4){background:#fff7ed}
#roadmap .road-stage-v77 h5{margin:0;color:#071b33;font-size:16px;text-align:center}
#roadmap .road-stage-v77 small{display:block;text-align:center;color:#64748b;margin:6px 0 14px}
#roadmap .road-initiative-v77{background:rgba(255,255,255,.75);border:1px solid #e2e8f0;border-radius:14px;padding:12px}
#roadmap .road-initiative-v77 b{display:block;color:#071b33;margin-bottom:8px}
#roadmap .road-initiative-meta-v77{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;font-size:12px}
#roadmap .road-img-v77{width:100%;max-height:520px;object-fit:contain;border:1px solid #dbe7f3;border-radius:18px;background:#f8fbff}
#roadmap .road-empty-v77{border:1px dashed #cbd5e1;border-radius:18px;background:#f8fbff;min-height:260px;display:grid;place-items:center;text-align:center;color:#64748b;padding:20px}
@media(max-width:1400px){
  #roadmap .roadmap-filters-v77{grid-template-columns:repeat(3,1fr)}
  #roadmap .road-detail-grid-v77{grid-template-columns:1fr}
  #roadmap .road-timeline-v77{grid-template-columns:1fr 1fr}
}

/* ===== roadmap-edit-pdf-v78 ===== */
#roadmap .road-view-toggle-v77{display:none!important}
#roadmap .road-stage-actions-v78{margin-top:12px;display:flex;gap:8px;flex-wrap:wrap}
#roadmap .road-stage-actions-v78 button{height:32px;border-radius:10px;border:1px solid #bfdbfe;background:#eef6ff;color:#0f62fe;font-weight:950;padding:0 11px;cursor:pointer;box-shadow:0 8px 18px rgba(15,23,42,.05)}
#roadmap .road-stage-actions-v78 .danger{background:#fff1f2;color:#dc2626;border-color:#fecaca}
#roadmap .road-btn-v77.pdf-v78{background:#071b33;color:#fff;border-color:#071b33}
#roadmap .road-modal-v78{position:fixed;inset:0;background:rgba(2,12,27,.55);display:none;align-items:center;justify-content:center;z-index:99999;padding:24px}
#roadmap .road-modal-v78.active{display:flex}
#roadmap .road-modal-card-v78{width:min(620px,94vw);background:#fff;border-radius:22px;padding:22px;box-shadow:0 40px 100px rgba(0,0,0,.35)}
#roadmap .road-modal-card-v78 h3{margin:0 0 14px;color:#071b33}
#roadmap .road-form-v78{display:grid;grid-template-columns:1fr 1fr;gap:12px}
#roadmap .road-form-v78 label{display:block;font-size:12px;font-weight:900;color:#334155;margin-bottom:6px}
#roadmap .road-form-v78 input,#roadmap .road-form-v78 select{width:100%;border:1px solid #dbe7f3;border-radius:12px;padding:10px 12px;outline:none;box-sizing:border-box}
#roadmap .road-form-v78 .full{grid-column:1 / -1}
#roadmap .road-modal-actions-v78{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}
#roadmap .road-modal-actions-v78 button{height:38px;border-radius:11px;border:1px solid #dbe7f3;background:#f8fbff;color:#0f62fe;font-weight:950;padding:0 14px;cursor:pointer}
#roadmap .road-modal-actions-v78 .primary{background:#0f62fe;color:#fff;border-color:#0f62fe}
@media print{body *{visibility:hidden!important}#roadmapPrintV78,#roadmapPrintV78 *{visibility:visible!important}#roadmapPrintV78{position:absolute!important;left:0!important;top:0!important;width:100%!important}}

/* ===== architecture-remove-shortcuts-v79 ===== */
/* SOLO Arquitectura: ocultar tarjetas inferiores redundantes */
#architecture .arch-shortcuts-v67{
  display:none!important;
}

/* ===== executive-editable-v81 ===== */
/* SOLO Vista Ejecutiva: valor potencial, ROI, detalle recomendación y brechas */
#exec .exec-edit-btn-v81{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  height:30px;
  margin-top:9px;
  border-radius:999px;
  border:1px solid #bfdbfe;
  background:#eef6ff;
  color:#0f62fe;
  font-size:12px;
  font-weight:950;
  padding:0 11px;
  cursor:pointer;
  box-shadow:0 8px 18px rgba(15,23,42,.05);
}
#exec .exec-edit-btn-v81:hover{
  background:#dbeafe;
}
#exec .exec-rec-detail-v81,
#exec .exec-breaches-detail-v81{
  margin-top:14px;
  background:#ffffff;
  color:#071b33;
  border:1px solid rgba(219,231,243,.45);
  border-radius:18px;
  padding:16px;
  box-shadow:0 14px 30px rgba(15,23,42,.08);
}
#exec .exec-rec-v34 .exec-rec-detail-v81{
  background:rgba(255,255,255,.10);
  color:#fff;
  border-color:rgba(255,255,255,.20);
}
#exec .exec-rec-v34 .exec-rec-detail-v81 p,
#exec .exec-rec-v34 .exec-rec-detail-v81 li{
  color:#eaf2ff;
}
#exec .exec-rec-detail-v81 h4,
#exec .exec-breaches-detail-v81 h4{
  margin:0 0 10px;
  color:inherit;
}
#exec .exec-rec-detail-v81 ul,
#exec .exec-breaches-detail-v81 ul{
  margin:8px 0 0 20px;
  line-height:1.45;
}
.exec-modal-v81{
  position:fixed;
  inset:0;
  background:rgba(2,12,27,.55);
  display:none;
  align-items:center;
  justify-content:center;
  z-index:99999;
  padding:24px;
}
.exec-modal-v81.active{
  display:flex;
}
.exec-modal-card-v81{
  width:min(650px,94vw);
  background:#fff;
  border-radius:22px;
  padding:22px;
  box-shadow:0 40px 100px rgba(0,0,0,.35);
}
.exec-modal-card-v81 h3{
  margin:0 0 8px;
  color:#071b33;
  font-size:24px;
}
.exec-modal-card-v81 p{
  margin:0 0 16px;
  color:#64748b;
}
.exec-form-v81{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.exec-form-v81 label{
  display:block;
  font-size:12px;
  font-weight:900;
  color:#334155;
  margin-bottom:6px;
}
.exec-form-v81 input,
.exec-form-v81 textarea{
  width:100%;
  border:1px solid #dbe7f3;
  border-radius:12px;
  padding:11px 12px;
  outline:none;
  box-sizing:border-box;
}
.exec-form-v81 textarea{
  min-height:115px;
  resize:vertical;
}
.exec-form-v81 .full{
  grid-column:1/-1;
}
.exec-modal-actions-v81{
  display:flex;
  justify-content:flex-end;
  gap:8px;
  margin-top:16px;
}
.exec-modal-actions-v81 button{
  height:38px;
  border-radius:11px;
  border:1px solid #dbe7f3;
  background:#f8fbff;
  color:#0f62fe;
  font-weight:950;
  padding:0 14px;
  cursor:pointer;
}
.exec-modal-actions-v81 .primary{
  background:#0f62fe;
  color:#fff;
  border-color:#0f62fe;
}

/* ===== exec-companies-filters-v82 ===== */
/* SOLO Empresas evaluadas + Vista Ejecutiva: filtros dinámicos y botones más premium */
#exec .exec-edit-btn-v81{
  height:34px!important;
  min-width:112px!important;
  border-radius:14px!important;
  border:1px solid #bfdbfe!important;
  background:linear-gradient(135deg,#eef6ff,#ffffff)!important;
  color:#0f62fe!important;
  font-size:12px!important;
  font-weight:950!important;
  padding:0 13px!important;
  box-shadow:0 12px 26px rgba(15,98,254,.12)!important;
}
#exec .exec-edit-btn-v81:hover{
  background:#dbeafe!important;
  transform:translateY(-1px);
}
#exec .exec-kpi-v34{
  position:relative;
}
#exec .exec-kpi-v34 .exec-edit-btn-v81{
  position:absolute;
  right:16px;
  bottom:16px;
}
#companies .companies-empty-v82{
  border:1px dashed #cbd5e1;
  background:#f8fbff;
  border-radius:16px;
  padding:22px;
  text-align:center;
  color:#64748b;
  font-weight:800;
  margin-top:12px;
}

/* ===== exec-stable-filters-v84 ===== */
/* SOLO Vista Ejecutiva: estabilidad visual y botones sin tapar contenido */
#exec .exec-kpi-v34{
  position:relative!important;
  overflow:visible!important;
  padding-bottom:22px!important;
}
#exec .exec-kpi-v34 .exec-edit-btn-v81{
  position:relative!important;
  right:auto!important;
  bottom:auto!important;
  left:auto!important;
  top:auto!important;
  display:flex!important;
  width:max-content!important;
  min-width:130px!important;
  height:34px!important;
  margin:14px auto 0!important;
  border-radius:14px!important;
  justify-content:center!important;
  align-items:center!important;
  white-space:nowrap!important;
}
#exec .exec-kpi-v34 .value,
#exec .exec-kpi-v34 b,
#exec .exec-kpi-v34 strong,
#exec .exec-kpi-v34 h2,
#exec .exec-kpi-v34 h3{
  word-break:normal!important;
}
#exec .exec-rec-v34{
  overflow:visible!important;
}

/* ===== exec-filters-dedup-v85 ===== */
/* SOLO Vista Ejecutiva: quitar duplicados y estabilizar botones */
#exec .exec-kpi-v34 .exec-edit-btn-v81{
  position:relative!important;
  right:auto!important;
  bottom:auto!important;
  left:auto!important;
  top:auto!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:14px auto 0!important;
  min-width:132px!important;
  height:34px!important;
  white-space:nowrap!important;
}
#exec .exec-kpi-v34{
  overflow:visible!important;
  padding-bottom:22px!important;
}

/* ===== exec-final-clean-edit-v87 ===== */
/* SOLO Vista Ejecutiva: quitar duplicados y editar Impacto/Roadmap */
#exec .exec-bottom-edit-v87{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  height:34px;
  border-radius:14px;
  border:1px solid #bfdbfe;
  background:#eef6ff;
  color:#0f62fe;
  font-size:12px;
  font-weight:950;
  padding:0 13px;
  cursor:pointer;
  box-shadow:0 10px 22px rgba(15,98,254,.10);
  margin-top:12px;
}
#exec .exec-bottom-edit-v87:hover{
  background:#dbeafe;
  transform:translateY(-1px);
}
#exec .exec-card-v34 .exec-bottom-actions-v87{
  display:flex;
  justify-content:flex-end;
  margin-top:12px;
}
.exec-modal-v87{
  position:fixed;
  inset:0;
  background:rgba(2,12,27,.55);
  display:none;
  align-items:center;
  justify-content:center;
  z-index:99999;
  padding:24px;
}
.exec-modal-v87.active{display:flex}
.exec-modal-card-v87{
  width:min(820px,94vw);
  max-height:90vh;
  overflow:auto;
  background:#fff;
  border-radius:22px;
  padding:22px;
  box-shadow:0 40px 100px rgba(0,0,0,.35);
}
.exec-modal-card-v87 h3{
  margin:0 0 8px;
  color:#071b33;
  font-size:24px;
}
.exec-modal-card-v87 p{
  margin:0 0 16px;
  color:#64748b;
}
.exec-form-v87{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
}
.exec-form-v87 label{
  display:block;
  font-size:12px;
  font-weight:900;
  color:#334155;
  margin-bottom:6px;
}
.exec-form-v87 input,
.exec-form-v87 textarea{
  width:100%;
  border:1px solid #dbe7f3;
  border-radius:12px;
  padding:10px 12px;
  outline:none;
  box-sizing:border-box;
}
.exec-form-v87 textarea{
  min-height:76px;
  resize:vertical;
}
.exec-form-v87 .full{grid-column:1/-1}
.exec-modal-actions-v87{
  display:flex;
  justify-content:flex-end;
  gap:8px;
  margin-top:16px;
}
.exec-modal-actions-v87 button{
  height:38px;
  border-radius:11px;
  border:1px solid #dbe7f3;
  background:#f8fbff;
  color:#0f62fe;
  font-weight:950;
  padding:0 14px;
  cursor:pointer;
}
.exec-modal-actions-v87 .primary{
  background:#0f62fe;
  color:#fff;
  border-color:#0f62fe;
}

/* ===== architecture-arrows-contrast-v91 ===== */
/* SOLO Arquitectura: mayor diferenciación visual entre flechas manuales y sin conexión */
#architecture svg line[stroke="#f59e0b"],
#architecture svg path[stroke="#f59e0b"],
#architecture svg polyline[stroke="#f59e0b"],
#architecture svg line[stroke="orange"],
#architecture svg path[stroke="orange"],
#architecture svg polyline[stroke="orange"]{
  stroke:#f97316!important;
  stroke-width:3.5!important;
  stroke-dasharray:8 5!important;
  filter:drop-shadow(0 1px 2px rgba(249,115,22,.45));
}

#architecture svg line[stroke="#ef4444"],
#architecture svg path[stroke="#ef4444"],
#architecture svg polyline[stroke="#ef4444"],
#architecture svg line[stroke="red"],
#architecture svg path[stroke="red"],
#architecture svg polyline[stroke="red"]{
  stroke:#dc2626!important;
  stroke-width:3.8!important;
  stroke-dasharray:3 5!important;
  filter:drop-shadow(0 1px 2px rgba(220,38,38,.55));
}

/* Refuerzo para líneas dibujadas con clases del módulo */
#architecture .manual,
#architecture .manual-connection,
#architecture .arch-manual,
#architecture .connection-manual{
  border-color:#f97316!important;
  color:#c2410c!important;
  stroke:#f97316!important;
  stroke-width:3.5!important;
  stroke-dasharray:8 5!important;
}

#architecture .no-connection,
#architecture .sin-conexion,
#architecture .arch-disconnected,
#architecture .connection-off{
  border-color:#dc2626!important;
  color:#b91c1c!important;
  stroke:#dc2626!important;
  stroke-width:3.8!important;
  stroke-dasharray:3 5!important;
}

/* Leyenda más clara sin alterar estructura */
#architecture .arch-legend-v67,
#architecture .arch-legend,
#architecture .legend{
  gap:14px!important;
}

#architecture .arch-legend-v67 span,
#architecture .arch-legend span,
#architecture .legend span{
  font-weight:800!important;
}

#architecture .arch-legend-v67 span:has(+ small),
#architecture .arch-legend span:has(+ small),
#architecture .legend span:has(+ small){
  white-space:nowrap;
}

/* ===== companies-breaches-initiatives-pdf-v94 ===== */
/* SOLO Empresas Evaluadas: detalle iniciativas + PDF */
#companies .companies-init-detail-v94{
  margin-top:14px;
  border:1px solid #dbe7f3;
  background:#f8fbff;
  border-radius:18px;
  padding:14px;
}
#companies .companies-init-detail-v94 h4{
  margin:0 0 10px;
  color:#071b33;
}
#companies .companies-init-detail-v94 table{
  width:100%;
  border-collapse:collapse;
  font-size:13px;
}
#companies .companies-init-detail-v94 th,
#companies .companies-init-detail-v94 td{
  border-bottom:1px solid #e2e8f0;
  padding:8px;
  text-align:left;
}
#companies .companies-init-detail-v94 th{
  color:#334155;
  font-weight:900;
}

/* ===== simulator-list-front-v1 ===== */
/* SOLO Simulador de Escenarios - Pantalla 1 */
#simulator .sim-wrap-v1{display:flex;flex-direction:column;gap:18px;}
#simulator .sim-info-v1{display:flex;align-items:center;gap:14px;background:linear-gradient(180deg,#f8fbff,#ffffff);border:1px solid #d8e6f7;border-radius:16px;padding:16px 18px;color:#334155;box-shadow:0 10px 28px rgba(15,23,42,.04);}
#simulator .sim-info-icon-v1{width:38px;height:38px;border-radius:12px;background:#0f62fe;color:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;box-shadow:0 10px 18px rgba(15,98,254,.25);}
#simulator .sim-filters-v1{display:grid;grid-template-columns:repeat(5,minmax(160px,1fr)) 170px;gap:12px;align-items:end;}
#simulator .sim-filter-v1{background:#fff;border:1px solid #d8e6f7;border-radius:16px;padding:12px 14px;box-shadow:0 10px 26px rgba(15,23,42,.04);}
#simulator .sim-filter-v1 label{display:block;font-size:12px;font-weight:900;color:#0f2144;margin-bottom:8px;}
#simulator .sim-filter-v1 select,#simulator .sim-search-v1 input{width:100%;border:0;background:transparent;font-weight:800;color:#0b1f3a;outline:none;font-size:14px;}
#simulator .sim-clear-v1{height:58px;border:1px solid #cfe0f5;border-radius:16px;background:#eef6ff;color:#0f62fe;font-weight:950;cursor:pointer;}
#simulator .sim-search-v1{width:320px;background:#fff;border:1px solid #d8e6f7;border-radius:14px;padding:13px 16px;display:flex;align-items:center;gap:10px;box-shadow:0 10px 24px rgba(15,23,42,.04);}
#simulator .sim-search-v1 span{color:#64748b;}
#simulator .sim-table-card-v1{background:#fff;border:1px solid #d8e6f7;border-radius:20px;overflow:hidden;box-shadow:0 18px 40px rgba(15,23,42,.06);}
#simulator .sim-table-v1{width:100%;border-collapse:collapse;}
#simulator .sim-table-v1 th{font-size:12px;text-transform:uppercase;letter-spacing:.02em;color:#243855;background:#fff;border-bottom:1px solid #dbe7f3;padding:16px 18px;text-align:center;}
#simulator .sim-table-v1 td{border-bottom:1px solid #eef2f7;padding:16px 18px;text-align:center;color:#0b1f3a;vertical-align:middle;}
#simulator .sim-table-v1 tr:hover{background:#f8fbff;}
#simulator .sim-company-v1{display:flex;align-items:center;gap:13px;text-align:left;}
#simulator .sim-logo-v1{width:50px;height:50px;border-radius:14px;background:#eff6ff;color:#0f62fe;display:flex;align-items:center;justify-content:center;font-weight:950;font-size:16px;overflow:hidden;border:1px solid #dbeafe;}
#simulator .sim-logo-v1 img{width:100%;height:100%;object-fit:contain;padding:5px;box-sizing:border-box;}
#simulator .sim-company-v1 b{display:block;font-size:14px;color:#071b33;}
#simulator .sim-company-v1 small{display:block;color:#64748b;margin-top:3px;}
#simulator .sim-gauge-v1{display:flex;flex-direction:column;align-items:center;gap:3px;font-weight:950;}
#simulator .sim-arc-v1{--val:50;--clr:#0f62fe;width:52px;height:28px;border-radius:52px 52px 0 0;background:conic-gradient(from 270deg at 50% 100%,var(--clr) calc(var(--val)*.5%),#e5edf6 0 50%,transparent 0);position:relative;display:flex;align-items:flex-end;justify-content:center;color:#0b1f3a;}
#simulator .sim-arc-v1::after{content:'';position:absolute;left:9px;right:9px;bottom:0;height:18px;border-radius:38px 38px 0 0;background:#fff;}
#simulator .sim-arc-v1 span{position:relative;z-index:1;font-size:15px;line-height:1;}
#simulator .sim-level-v1{font-size:11px;color:#334155;}
#simulator .sim-pill-v1{display:inline-flex;min-width:42px;height:30px;align-items:center;justify-content:center;border-radius:10px;background:#f1e8ff;color:#6d28d9;font-weight:950;}
#simulator .sim-roi-v1{font-size:17px;font-weight:950;color:#f97316;}
#simulator .sim-money-v1{font-size:17px;font-weight:950;color:#059669;}
#simulator .sim-action-v1{height:38px;border-radius:12px;border:1px solid #cfe0f5;background:#eef6ff;color:#0f62fe;font-weight:950;padding:0 16px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;}
#simulator .sim-action-v1:hover{background:#0f62fe;color:#fff;box-shadow:0 10px 24px rgba(15,98,254,.22);transform:translateY(-1px);}
#simulator .sim-footer-v1{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:#fff;}
#simulator .sim-pages-v1{display:flex;gap:8px;align-items:center;}
#simulator .sim-page-v1{width:38px;height:38px;border-radius:11px;border:1px solid #d8e6f7;background:#fff;color:#0f62fe;font-weight:950;cursor:pointer;}
#simulator .sim-page-v1.active{background:#0f62fe;color:#fff;border-color:#0f62fe;box-shadow:0 10px 24px rgba(15,98,254,.24);}
#simulator .sim-perpage-v1{height:38px;border:1px solid #d8e6f7;border-radius:11px;padding:0 10px;color:#334155;font-weight:800;}
@media(max-width:1200px){#simulator .sim-filters-v1{grid-template-columns:repeat(2,1fr);}#simulator .sim-search-v1{width:100%;}#simulator .sim-table-card-v1{overflow-x:auto;}}

/* ===== simulador-executive-polish-v113 ===== */
#simulator footer,#simulator .sim-footer-once-v108,#simulator .sim-final-footer-v109,#simulator .sim110-footer,#simulator .sim111-footer,#simulator .sim112-footer{display:none!important}
#simulator .sim113-wrap{padding-bottom:28px}
#simulator .sim113-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:18px}
#simulator .sim113-btn{min-height:44px;border-radius:15px;border:1px solid #c7d8ee;background:#f3f8ff;color:#0f62fe;font-weight:950;padding:0 18px;cursor:pointer;box-shadow:0 10px 24px rgba(15,98,254,.08)}
#simulator .sim113-btn.primary{background:#0f62fe;color:#fff;border-color:#0f62fe}
#simulator .sim113-btn.green{background:#0f9f5a;color:#fff;border-color:#0f9f5a}
#simulator .sim113-btn.dark{background:#071b33;color:#fff;border-color:#071b33}
#simulator .sim113-hero{background:linear-gradient(135deg,#fff 0%,#f8fbff 52%,#eef6ff 100%);border:1px solid #dbe7f3;border-radius:30px;padding:26px 28px;display:grid;grid-template-columns:minmax(520px,1.55fr) repeat(5,minmax(115px,1fr));gap:18px;align-items:center;box-shadow:0 26px 65px rgba(15,23,42,.08);margin-bottom:18px;position:relative;overflow:hidden}
#simulator .sim113-hero:before{content:"";position:absolute;left:0;top:0;bottom:0;width:10px;background:linear-gradient(#0f62fe,#0f9f5a)}
#simulator .sim113-hero-main{display:grid;grid-template-columns:140px 1fr;gap:24px;align-items:center;position:relative;z-index:1}
#simulator .sim113-logo,#simulator .sim113-logo-placeholder{width:140px;height:140px;border-radius:28px;background:#fff;border:1px solid #dbe7f3;box-shadow:0 22px 42px rgba(15,23,42,.10)}
#simulator .sim113-logo{object-fit:contain;padding:14px}
#simulator .sim113-logo-placeholder{display:grid;place-items:center;color:#0f62fe;font-size:34px;font-weight:950}
#simulator .sim113-eyebrow{display:inline-flex;padding:7px 12px;border-radius:999px;background:#eaf3ff;color:#0f62fe;font-weight:950;font-size:12px;margin-bottom:10px}
#simulator .sim113-hero h1{margin:0;color:#071b33;font-size:31px;line-height:1.08;letter-spacing:-.025em}
#simulator .sim113-company{font-size:33px!important;margin-top:4px!important;overflow-wrap:anywhere}
#simulator .sim113-hero p{margin:10px 0 0;color:#53647a;font-size:15px;max-width:600px;line-height:1.45}
#simulator .sim113-kpi{border-left:1px solid #dbe7f3;padding-left:16px;min-height:72px;display:flex;flex-direction:column;justify-content:center}
#simulator .sim113-kpi small{color:#64748b;font-size:12px;font-weight:950;text-transform:uppercase;letter-spacing:.04em}
#simulator .sim113-kpi b{font-size:22px;color:#071b33;line-height:1.1}
#simulator .sim113-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}
#simulator .sim113-card{background:#fff;border:1px solid #dbe7f3;border-radius:26px;padding:22px;box-shadow:0 22px 55px rgba(15,23,42,.07)}
#simulator .sim113-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}
#simulator .sim113-title h3{margin:0;color:#071b33;font-size:22px}
#simulator .sim113-title span{color:#64748b;font-size:13px;font-weight:750}
#simulator .sim113-metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
#simulator .sim113-metric{border-radius:20px;padding:16px;background:linear-gradient(180deg,#f8fbff,#fff);border:1px solid #dbe7f3}
#simulator .sim113-metric small{font-weight:950;color:#64748b}
#simulator .sim113-metric b{display:block;font-size:30px;color:#071b33;margin-top:8px}
#simulator .green{color:#0f9f5a}.blue{color:#0f62fe}.orange{color:#f97316}
#simulator .sim113-scenarios{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
#simulator .sim113-scenario{border:1px solid #dbe7f3;border-radius:24px;padding:16px;background:linear-gradient(180deg,#fff,#f8fbff);cursor:pointer;transition:.2s}
#simulator .sim113-scenario:hover{transform:translateY(-2px);box-shadow:0 20px 45px rgba(15,98,254,.10)}
#simulator .sim113-scenario.active{border-color:#0f62fe;box-shadow:0 0 0 4px rgba(15,98,254,.14)}
#simulator .sim113-rank{display:inline-flex;padding:7px 10px;border-radius:999px;background:#dcfce7;color:#047857;font-size:12px;font-weight:950}
#simulator .sim113-scenario h4{font-size:22px;margin:12px 0 8px;color:#071b33}
#simulator .sim113-scenario p{color:#64748b;min-height:58px;line-height:1.42}
#simulator .sim113-money{font-size:33px;font-weight:950;color:#0f9f5a;margin:12px 0}
#simulator .sim113-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;border-top:1px solid #e2e8f0;padding-top:10px}
#simulator .sim113-meta small{display:block;color:#64748b;font-size:10px;font-weight:900}
#simulator .sim113-meta b{font-size:15px;color:#071b33}
#simulator .sim113-edit{width:100%;height:38px;margin-top:12px;border-radius:14px;border:1px solid #bfdbfe;background:#eef6ff;color:#0f62fe;font-weight:900;cursor:pointer}
#simulator .sim113-custom{display:grid;gap:12px}
#simulator .sim113-slider-value{font-size:38px;color:#0f62fe;font-weight:950}
#simulator .sim113-custom input[type=range]{width:100%;accent-color:#0f62fe}
#simulator .sim113-radio{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}
#simulator .sim113-radio label{background:#f8fbff;border:1px solid #dbe7f3;padding:12px;border-radius:14px;font-weight:900;cursor:pointer}
#simulator .sim113-radio label.active{background:#eef6ff;border-color:#0f62fe;color:#0f62fe}
#simulator .sim113-insight{border:1px solid #dbe7f3;background:#fff;border-radius:18px;padding:14px;display:grid;grid-template-columns:36px 1fr auto;gap:12px;align-items:flex-start;margin-bottom:10px}
#simulator .sim113-insight .icon{width:36px;height:36px;border-radius:13px;background:#dcfce7;color:#0f9f5a;display:grid;place-items:center;font-weight:950}
#simulator .sim113-insight b{display:block;color:#071b33;margin-bottom:4px}
#simulator .sim113-insight .text{color:#334155;line-height:1.45}
#simulator .sim113-badge{border-radius:999px;padding:7px 10px;font-size:12px;font-weight:950}
#simulator .sim113-badge.high{background:#dcfce7;color:#047857}.sim113-badge.medium{background:#fef3c7;color:#b45309}.sim113-badge.low{background:#dbeafe;color:#1d4ed8}
#simulator .sim113-maturity{display:grid;grid-template-columns:175px 1fr;gap:18px;align-items:center}
#simulator .sim113-ring{width:160px;height:160px;border-radius:50%;background:conic-gradient(#0f62fe var(--pct),#e2e8f0 0);display:grid;place-items:center;position:relative}
#simulator .sim113-ring:after{content:"";position:absolute;width:102px;height:102px;border-radius:50%;background:#fff}
#simulator .sim113-ring span{position:relative;z-index:1;text-align:center;font-size:28px;font-weight:950;color:#071b33}
#simulator .sim113-timeline{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;align-items:end;min-height:190px;border-left:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;padding:12px 10px 4px}
#simulator .sim113-point{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:7px}
#simulator .sim113-bar{width:28px;border-radius:999px 999px 6px 6px;background:linear-gradient(180deg,#0f62fe,#60a5fa)}
#simulator .sim113-point small{font-weight:900;color:#64748b;text-align:center}
#simulator .sim113-point b{color:#071b33}
#simulator .sim113-impact{display:grid;grid-template-columns:200px 1fr;gap:18px;align-items:center}
#simulator .sim113-donut{width:180px;height:150px;border-radius:50%;background:conic-gradient(#16a34a 0 38%,#0f62fe 38% 69%,#f97316 69% 90%,#7c3aed 90% 100%);display:grid;place-items:center;position:relative}
#simulator .sim113-donut:after{content:"";position:absolute;width:104px;height:104px;border-radius:50%;background:#fff}
#simulator .sim113-donut span{position:relative;z-index:1;text-align:center;font-size:23px;font-weight:950;color:#071b33}
#simulator .sim113-impact-list div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #e2e8f0;padding:10px 0}
#simulator .sim113-road{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
#simulator .sim113-stage{border:1px solid #dbe7f3;border-radius:22px;padding:16px;min-height:225px;background:#fff}
#simulator .sim113-stage:nth-child(1){background:linear-gradient(180deg,#eef6ff,#fff)}
#simulator .sim113-stage:nth-child(2){background:linear-gradient(180deg,#effdf5,#fff)}
#simulator .sim113-stage:nth-child(3){background:linear-gradient(180deg,#f5f3ff,#fff)}
#simulator .sim113-stage:nth-child(4){background:linear-gradient(180deg,#fff7ed,#fff)}
#simulator .sim113-stage small{font-weight:950;color:#0f62fe}
#simulator .sim113-stage h4{font-size:20px;margin:10px 0;color:#071b33}
#simulator .sim113-stage ul{margin:8px 0 0 18px;padding:0;color:#475569}
#simulator .sim113-stage li{margin:6px 0}
#simulator .sim113-compare{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
#simulator .sim113-comp{border:1px solid #dbe7f3;border-radius:20px;padding:16px;background:#fff}
#simulator .sim113-comp.recommended{border-color:#0f62fe;background:#eef6ff}
#simulator .sim113-comp h4{margin:0 0 8px;color:#071b33}
#simulator .sim113-comp .score{font-size:28px;color:#0f62fe;font-weight:950}
#simulator .sim113-arch{display:grid;grid-template-columns:1fr 72px 1fr;gap:14px;align-items:stretch}
#simulator .sim113-arch-box{border-radius:18px;border:1px solid #dbe7f3;padding:16px;background:#fff}
#simulator .sim113-arch-box.current{background:#fff5f5;border-color:#fecaca}.sim113-arch-box.target{background:#f0fdf4;border-color:#bbf7d0}
#simulator .sim113-arch-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:12px}
#simulator .sim113-chip{border:1px solid #dbe7f3;border-radius:12px;padding:10px;background:#fff;font-weight:800}
#simulator .sim113-arrow{display:grid;place-items:center;font-size:38px;color:#0f62fe}
#simulator .sim113-questions{max-height:270px;overflow:auto;border:1px solid #e2e8f0;border-radius:16px}
#simulator .sim113-questions table{width:100%;border-collapse:collapse;font-size:13px}
#simulator .sim113-questions th,#simulator .sim113-questions td{padding:10px;border-bottom:1px solid #e2e8f0;text-align:left}
#simulator .sim113-questions th{background:#f8fbff;color:#334155;font-weight:950}
#simulator .sim113-modal{position:fixed;inset:0;background:rgba(2,12,27,.58);display:none;align-items:center;justify-content:center;z-index:99999;padding:24px}
#simulator .sim113-modal.active{display:flex}
#simulator .sim113-modal-card{width:min(920px,94vw);max-height:90vh;overflow:auto;background:#fff;border-radius:28px;padding:24px;box-shadow:0 42px 120px rgba(0,0,0,.34)}
#simulator .sim113-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}
#simulator .sim113-form label{font-size:12px;font-weight:950;color:#334155}
#simulator .sim113-form input,#simulator .sim113-form textarea,#simulator .sim113-form select{width:100%;box-sizing:border-box;border:1px solid #dbe7f3;border-radius:13px;padding:10px}
#simulator .sim113-form textarea{min-height:82px;resize:vertical}
#simulator .sim113-form .full{grid-column:1/-1}
#simulator .sim113-modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}
#simulator .sim113-footer{color:#64748b;text-align:center;margin:22px 0 0;font-size:14px}
@media(max-width:1300px){
  #simulator .sim113-hero{grid-template-columns:1fr 1fr}
  #simulator .sim113-scenarios,#simulator .sim113-compare,#simulator .sim113-road{grid-template-columns:1fr 1fr}
  #simulator .sim113-impact,#simulator .sim113-maturity{grid-template-columns:1fr}
}

/* ===== simulador-ajustes-finales-v114 ===== */
/* SOLO ajustes finales del módulo Simulador */
#simulator .footer{display:none!important}
#simulator .sim113-btn.dark{display:none!important}
#simulator .sim113-hero{
  background:linear-gradient(135deg,#ffffff 0%,#f8fbff 52%,#edf5ff 100%)!important;
  color:#071b33!important;
  grid-template-columns:minmax(520px,1.6fr) repeat(5,minmax(110px,1fr))!important;
  border:1px solid #dbe7f3!important;
  border-radius:30px!important;
  box-shadow:0 26px 65px rgba(15,23,42,.08)!important;
  padding:26px 28px!important;
}
#simulator .sim113-hero:before{content:"";position:absolute;left:0;top:0;bottom:0;width:10px;background:linear-gradient(#0f62fe,#0f9f5a)}
#simulator .sim113-hero-main{display:grid!important;grid-template-columns:138px 1fr!important;gap:22px!important;align-items:center!important}
#simulator .sim113-logo{width:138px!important;height:138px!important;border-radius:26px!important;border:1px solid #dbe7f3!important;box-shadow:0 22px 42px rgba(15,23,42,.10)!important}
#simulator .sim113-logo-placeholder{width:138px!important;height:138px!important;border-radius:26px!important}
#simulator .sim113-hero h1{color:#071b33!important;font-size:30px!important;line-height:1.08!important;letter-spacing:-.025em!important}
#simulator .sim113-company{font-size:32px!important;word-break:normal!important;overflow-wrap:anywhere!important}
#simulator .sim113-hero p{color:#53647a!important;max-width:620px!important}
#simulator .sim113-kpi{border-left:1px solid #dbe7f3!important;color:#071b33!important;min-height:72px!important;display:flex!important;flex-direction:column!important;justify-content:center!important}
#simulator .sim113-kpi small{color:#64748b!important}
#simulator .sim113-kpi b{color:#071b33!important;font-size:22px!important}
#simulator .sim114-impact-table{width:100%;border-collapse:separate;border-spacing:0 8px}
#simulator .sim114-impact-table th{font-size:12px;text-transform:uppercase;color:#64748b;text-align:left;padding:6px}
#simulator .sim114-impact-table td{background:#f8fbff;border-top:1px solid #dbe7f3;border-bottom:1px solid #dbe7f3;padding:11px 8px;font-weight:850}
#simulator .sim114-impact-table td:first-child{border-left:1px solid #dbe7f3;border-radius:14px 0 0 14px;color:#071b33}
#simulator .sim114-impact-table td:last-child{border-right:1px solid #dbe7f3;border-radius:0 14px 14px 0;color:#0f9f5a;font-size:18px}
#simulator .sim114-impact-total{margin-top:12px;border-radius:20px;background:linear-gradient(135deg,#dcfce7,#f0fdf4);padding:16px;display:flex;justify-content:space-between;align-items:center;gap:14px}
#simulator .sim114-impact-total small{color:#047857;font-weight:950;text-transform:uppercase}
#simulator .sim114-impact-total b{font-size:34px;color:#0f9f5a}

/* ===== simulador-ajustes-graficas-pdf-v115 ===== */
/* SOLO módulo Simulador: ajustes visuales y PDF */
#simulator .sim114-card{overflow:hidden!important;box-sizing:border-box!important}
#simulator .sim114-maturity{grid-template-columns:145px minmax(0,1fr)!important;gap:14px!important;width:100%!important;max-width:100%!important;overflow:hidden!important}
#simulator .sim114-ring{width:138px!important;height:138px!important}#simulator .sim114-ring:after{width:88px!important;height:88px!important}#simulator .sim114-ring span{font-size:24px!important}
#simulator .sim114-timeline{min-width:0!important;width:100%!important;max-width:100%!important;overflow:hidden!important;gap:4px!important;padding:10px 4px 4px!important}
#simulator .sim114-point{min-width:0!important;font-size:12px!important}#simulator .sim114-point b{font-size:14px!important}#simulator .sim114-point small{font-size:11px!important;white-space:nowrap}#simulator .sim114-bar{width:22px!important}
#simulator .sim114-arch{grid-template-columns:minmax(0,1fr) 42px minmax(0,1fr)!important;gap:10px!important;width:100%!important;max-width:100%!important;overflow:hidden!important}
#simulator .sim114-arch-box{min-width:0!important;max-width:100%!important;box-sizing:border-box!important;padding:14px!important}#simulator .sim114-arch-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
#simulator .sim114-chip{min-width:0!important;padding:8px!important;font-size:13px!important;line-height:1.25!important;word-break:break-word!important}#simulator .sim114-arrow{font-size:30px!important}
#simulator .sim114-radio label{display:flex!important;align-items:center!important;gap:8px!important;min-height:46px!important;line-height:1.2!important}#simulator .sim114-radio input{flex:0 0 auto!important}

/* ===== simulador-fix-final-v116 ===== */
/* SOLO Simulador: layout y PDF final */
#simulator footer,#simulator .sim-footer-once-v108,#simulator .sim-final-footer-v109,#simulator .sim110-footer,#simulator .sim111-footer,#simulator .sim113-footer,#simulator .sim114-footer{display:none!important}
#simulator .sim116-footer{color:#64748b;text-align:center;margin:24px 0 0;font-size:14px}
#simulator .sim114-card{overflow:hidden!important;box-sizing:border-box!important}
#simulator .sim114-maturity{grid-template-columns:128px minmax(0,1fr)!important;gap:10px!important;width:100%!important;max-width:100%!important;overflow:hidden!important;align-items:center!important}
#simulator .sim114-ring{width:120px!important;height:120px!important;flex:0 0 120px!important}
#simulator .sim114-ring:after{width:76px!important;height:76px!important}
#simulator .sim114-ring span{font-size:22px!important}
#simulator .sim114-timeline{min-width:0!important;width:100%!important;max-width:100%!important;overflow:hidden!important;gap:3px!important;padding:10px 2px 4px!important;min-height:160px!important}
#simulator .sim114-point{min-width:0!important;font-size:11px!important}.sim114-point b{font-size:13px!important}.sim114-point small{font-size:10px!important;white-space:nowrap!important}.sim114-bar{width:18px!important}
#simulator .sim114-arch{grid-template-columns:minmax(0,1fr) 32px minmax(0,1fr)!important;gap:7px!important;width:100%!important;max-width:100%!important;overflow:hidden!important;align-items:center!important}
#simulator .sim114-arch-box{min-width:0!important;max-width:100%!important;box-sizing:border-box!important;padding:11px!important}
#simulator .sim114-arch-box h4{margin:0 0 10px!important;font-size:16px!important}
#simulator .sim114-arch-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}
#simulator .sim114-chip{min-width:0!important;padding:8px 7px!important;font-size:12px!important;line-height:1.2!important;word-break:break-word!important;overflow-wrap:anywhere!important;text-align:left!important}
#simulator .sim114-arrow{font-size:26px!important;min-width:0!important}
#simulator .sim114-radio label{display:flex!important;align-items:center!important;gap:8px!important;min-height:46px!important;line-height:1.2!important}

/* ===== simulador-decision-polish-v119 ===== */
/* SOLO SIMULADOR - V119: sin popup, sin botón redundante, arquitectura/insights/PDF premium */

/* Eliminar footer duplicado únicamente dentro del simulador */
#simulator footer,
#simulator [class*="footer"]:not(.sim119-footer),
#simulator .sim-footer-once-v108,
#simulator .sim-final-footer-v109,
#simulator .sim110-footer,
#simulator .sim111-footer,
#simulator .sim113-footer,
#simulator .sim114-footer,
#simulator .sim116-footer,
#simulator .sim117-footer,
#simulator .sim118-footer{
  display:none!important;
}
#simulator .sim119-footer{
  display:block!important;
  color:#64748b!important;
  text-align:center!important;
  margin:24px 0 0!important;
  font-size:14px!important;
  font-weight:500!important;
}

/* Ocultar botones redundantes de comparativo/editar escenarios al final */
#simulator .sim119-hidden-btn{display:none!important}

/* Tarjetas sin desborde */
#simulator .sim114-card,
#simulator .sim113-card,
#simulator .sim111-card,
#simulator .sim110-card{
  overflow:hidden!important;
  box-sizing:border-box!important;
  max-width:100%!important;
}

/* Evolución de madurez reemplazada por bloque premium */
#simulator .sim119-maturity-wrap{
  display:grid;
  grid-template-columns:150px minmax(0,1fr);
  gap:16px;
  align-items:center;
  width:100%;
}
#simulator .sim119-ring{
  width:140px;
  height:140px;
  border-radius:50%;
  background:conic-gradient(#0f62fe var(--pct),#e2e8f0 0);
  display:grid;
  place-items:center;
  position:relative;
}
#simulator .sim119-ring:after{
  content:"";
  position:absolute;
  width:88px;
  height:88px;
  border-radius:50%;
  background:#fff;
}
#simulator .sim119-ring span{
  position:relative;
  z-index:1;
  font-size:28px;
  font-weight:950;
  line-height:1.05;
  text-align:center;
  color:#071b33;
}
#simulator .sim119-bars{
  min-width:0;
  width:100%;
  height:178px;
  border-left:1px solid #dbe7f3;
  border-bottom:1px solid #dbe7f3;
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:6px;
  align-items:end;
  padding:10px 4px 4px;
  overflow:hidden;
}
#simulator .sim119-baritem{
  min-width:0;
  text-align:center;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-end;
  gap:5px;
}
#simulator .sim119-baritem b{
  color:#071b33;
  font-size:13px;
}
#simulator .sim119-baritem small{
  color:#64748b;
  font-size:10px;
  font-weight:900;
  white-space:nowrap;
}
#simulator .sim119-bar{
  width:22px;
  max-height:124px;
  border-radius:12px 12px 4px 4px;
  background:linear-gradient(180deg,#0f62fe,#60a5fa);
}

/* Arquitectura premium compacta */
#simulator .sim119-arch-premium{
  display:grid;
  grid-template-columns:minmax(0,1fr) 54px minmax(0,1fr);
  gap:14px;
  align-items:stretch;
  width:100%;
}
#simulator .sim119-arch-box{
  min-width:0;
  border-radius:22px;
  padding:16px;
  border:1px solid #dbe7f3;
}
#simulator .sim119-arch-box.current{
  background:linear-gradient(180deg,#fff7f7,#fff);
  border-color:#fecaca;
}
#simulator .sim119-arch-box.target{
  background:linear-gradient(180deg,#f0fdf4,#fff);
  border-color:#bbf7d0;
}
#simulator .sim119-arch-box h4{
  margin:0 0 14px;
  font-size:17px;
  color:#071b33;
}
#simulator .sim119-chip-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:9px;
}
#simulator .sim119-chip{
  min-width:0;
  border:1px solid #dbe7f3;
  border-radius:14px;
  padding:10px;
  background:#fff;
  color:#071b33;
  font-weight:900;
  font-size:13px;
  line-height:1.25;
  overflow-wrap:anywhere;
}
#simulator .sim119-arrow{
  display:grid;
  place-items:center;
  color:#0f62fe;
  font-size:30px;
  font-weight:950;
}

/* Insights más pro */
#simulator .sim114-insight,
#simulator .sim113-insight,
#simulator .sim111-insight,
#simulator .sim110-insight{
  background:linear-gradient(180deg,#ffffff,#f8fbff)!important;
  border:1px solid #dbe7f3!important;
  border-left:5px solid #0f62fe!important;
  border-radius:18px!important;
  box-shadow:0 14px 30px rgba(15,23,42,.055)!important;
}
#simulator .sim114-insight .icon,
#simulator .sim113-insight .icon,
#simulator .sim111-insight .icon,
#simulator .sim110-insight .icon{
  background:#dcfce7!important;
  color:#0f9f5a!important;
}

/* Imagen del roadmap en simulador */
#simulator .sim119-roadmap-image{
  display:block;
  width:100%;
  max-height:380px;
  object-fit:contain;
  border:1px solid #dbe7f3;
  border-radius:22px;
  background:#fff;
  padding:12px;
  margin:0 0 16px;
  box-shadow:0 18px 42px rgba(15,23,42,.07);
}

@media(max-width:1500px){
  #simulator .sim119-arch-premium{
    grid-template-columns:1fr;
  }
  #simulator .sim119-arrow{
    transform:rotate(90deg);
    min-height:28px;
  }
}

/* ===== simulador-v120-ajuste-final ===== */
/* SOLO SIMULADOR */
#simulator footer,
#simulator [class*="footer"]:not(.sim120-footer),
#simulator .sim-footer-once-v108,
#simulator .sim-final-footer-v109,
#simulator .sim110-footer,
#simulator .sim111-footer,
#simulator .sim113-footer,
#simulator .sim114-footer,
#simulator .sim116-footer,
#simulator .sim117-footer,
#simulator .sim118-footer,
#simulator .sim119-footer{display:none!important}

#simulator .sim120-footer{display:block!important;color:#64748b!important;text-align:center!important;margin:24px 0 0!important;font-size:14px!important;font-weight:500!important}

#simulator .sim120-mini-btn{min-height:38px;border-radius:14px;border:1px solid #bfdbfe;background:#eef6ff;color:#0f62fe;font-weight:950;padding:0 14px;cursor:pointer}
#simulator .sim120-compare-actions{display:flex;justify-content:flex-end;margin-top:14px}
#simulator .sim120-history{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
#simulator .sim120-history-card{border:1px solid #dbe7f3;border-radius:18px;padding:14px;background:linear-gradient(180deg,#fff,#f8fbff)}
#simulator .sim120-history-card b{display:block;color:#071b33;margin-bottom:6px}
#simulator .sim120-history-card span{color:#64748b;font-size:13px}

#simulator .sim120-modal{position:fixed;inset:0;background:rgba(2,12,27,.58);z-index:999999;display:none;align-items:center;justify-content:center;padding:22px}
#simulator .sim120-modal.active{display:flex}
#simulator .sim120-modal-card{width:min(980px,94vw);max-height:90vh;overflow:auto;background:#fff;border-radius:28px;padding:24px;box-shadow:0 42px 120px rgba(0,0,0,.34)}
#simulator .sim120-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
#simulator .sim120-form label{font-size:12px;font-weight:950;color:#334155}
#simulator .sim120-form input,#simulator .sim120-form textarea{width:100%;box-sizing:border-box;border:1px solid #dbe7f3;border-radius:13px;padding:10px}
#simulator .sim120-form textarea{min-height:88px;resize:vertical}
#simulator .sim120-form .full{grid-column:1/-1}
#simulator .sim120-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}

/* Arquitectura: que no se corte */
#simulator .sim119-chip,#simulator .sim114-chip,#simulator .sim113-chip{overflow-wrap:anywhere!important;word-break:break-word!important;font-size:12px!important;line-height:1.16!important}
#simulator .sim119-arch-premium{grid-template-columns:minmax(0,1fr) 40px minmax(0,1fr)!important;gap:10px!important}
#simulator .sim119-chip-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
@media(max-width:1500px){#simulator .sim119-arch-premium{grid-template-columns:1fr!important}#simulator .sim119-arrow{transform:rotate(90deg)!important}}

/* Imagen roadmap si existe */
#simulator .sim120-roadmap-image{display:block;width:100%;max-height:380px;object-fit:contain;border:1px solid #dbe7f3;border-radius:22px;background:#fff;padding:12px;margin:0 0 16px;box-shadow:0 18px 42px rgba(15,23,42,.07)}

/* ===== simulador-v121-editables-pdf-premium ===== */
#simulator footer,#simulator [class*="footer"]:not(.sim121-footer),#simulator .sim120-footer,#simulator .sim119-footer,#simulator .sim118-footer,#simulator .sim117-footer,#simulator .sim116-footer,#simulator .sim114-footer{display:none!important}
#simulator .sim121-footer{display:block!important;color:#64748b!important;text-align:center!important;margin:24px 0 0!important;font-size:14px!important;font-weight:500!important}
#simulator .sim121-mini-btn{min-height:38px;border-radius:14px;border:1px solid #bfdbfe;background:#eef6ff;color:#0f62fe;font-weight:950;padding:0 14px;cursor:pointer;box-shadow:0 10px 20px rgba(15,98,254,.06)}
#simulator .sim121-section-actions{display:flex;justify-content:flex-end;gap:10px;margin:12px 0 0}
#simulator .sim121-modal{position:fixed;inset:0;background:rgba(2,12,27,.58);z-index:999999;display:none;align-items:center;justify-content:center;padding:22px}
#simulator .sim121-modal.active{display:flex}
#simulator .sim121-modal-card{width:min(980px,94vw);max-height:90vh;overflow:auto;background:#fff;border-radius:28px;padding:24px;box-shadow:0 42px 120px rgba(0,0,0,.34)}
#simulator .sim121-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
#simulator .sim121-form label{font-size:12px;font-weight:950;color:#334155}
#simulator .sim121-form input,#simulator .sim121-form textarea{width:100%;box-sizing:border-box;border:1px solid #dbe7f3;border-radius:13px;padding:10px}
#simulator .sim121-form textarea{min-height:82px;resize:vertical}
#simulator .sim121-form .full{grid-column:1/-1}
#simulator .sim121-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}
#simulator .sim119-chip,#simulator .sim114-chip,#simulator .sim113-chip{overflow-wrap:anywhere!important;word-break:break-word!important;font-size:12px!important;line-height:1.16!important}
#simulator .sim119-arch-premium{grid-template-columns:minmax(0,1fr) 42px minmax(0,1fr)!important;gap:12px!important}
#simulator .sim121-history{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
#simulator .sim121-history-card{border:1px solid #dbe7f3;border-radius:18px;padding:14px;background:linear-gradient(180deg,#fff,#f8fbff)}

/* ===== simulador-v122-lite ===== */
#simulator footer,#simulator [class*="footer"]:not(.sim122-footer){display:none!important}
#simulator .sim122-footer{display:block!important;color:#64748b!important;text-align:center!important;margin:24px 0 0!important;font-size:14px!important;font-weight:500!important}
#simulator .sim122-btn{min-height:38px;border-radius:14px;border:1px solid #bfdbfe;background:#eef6ff;color:#0f62fe;font-weight:950;padding:0 14px;cursor:pointer;box-shadow:0 10px 20px rgba(15,98,254,.06)}
#simulator .sim122-actions-row{display:flex;justify-content:flex-end;gap:10px;margin-top:12px}
#simulator .sim122-modal{position:fixed;inset:0;background:rgba(2,12,27,.58);z-index:999999;display:none;align-items:center;justify-content:center;padding:22px}
#simulator .sim122-modal.active{display:flex}.sim122-modal-card{width:min(980px,94vw);max-height:90vh;overflow:auto;background:#fff;border-radius:28px;padding:24px;box-shadow:0 42px 120px rgba(0,0,0,.34)}
#simulator .sim122-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}#simulator .sim122-form .full{grid-column:1/-1}#simulator .sim122-form label{font-size:12px;font-weight:950;color:#334155}#simulator .sim122-form input,#simulator .sim122-form textarea,#simulator .sim122-form select{width:100%;box-sizing:border-box;border:1px solid #dbe7f3;border-radius:13px;padding:10px}#simulator .sim122-form textarea{min-height:82px;resize:vertical}
#simulator .sim122-modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}
#simulator .sim122-arch-board{border:1px solid #dbe7f3;border-radius:24px;padding:16px;background:linear-gradient(180deg,#fff,#f8fbff);overflow:hidden}.sim122-arch-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.sim122-arch-brand{display:flex;align-items:center;gap:12px}.sim122-company-logo{width:50px;height:50px;border-radius:16px;object-fit:contain;background:#fff;border:1px solid #dbe7f3;padding:6px}.sim122-logo-fallback{width:50px;height:50px;border-radius:16px;display:grid;place-items:center;background:#eef6ff;color:#0f62fe;font-weight:950;border:1px solid #dbe7f3}.sim122-legend{display:flex;gap:12px;flex-wrap:wrap;color:#475569;font-size:12px}.sim122-line{width:24px;height:2px;display:inline-block}.sim122-line.connected{background:#22c55e}.sim122-line.manual{border-top:2px dashed #f59e0b}.sim122-line.offline{border-top:2px dashed #ef4444}
#simulator .sim122-arch-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.sim122-col{border:1px solid #dbe7f3;border-radius:20px;padding:14px;background:#fff}.sim122-col h4{margin:0 0 12px;text-align:center;color:#0f3d75;font-size:13px;text-transform:uppercase}.sim122-tool{border:1px solid #dbe7f3;border-radius:17px;padding:12px;background:#fff;margin-bottom:12px;min-height:112px}.sim122-tool.connected{border-color:#bbf7d0;background:#f8fffb}.sim122-tool.manual{border-color:#fed7aa;background:#fffaf4}.sim122-tool.offline{border-color:#fecaca;background:#fff7f7}.sim122-tool-title{font-weight:950;color:#071b33;margin-bottom:4px;line-height:1.15}.sim122-tool-sub{color:#64748b;font-size:12px;min-height:28px}.sim122-status{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:950;margin-top:8px}.sim122-status.connected{background:#dcfce7;color:#047857}.sim122-status.manual{background:#fef3c7;color:#b45309}.sim122-status.offline{background:#fee2e2;color:#dc2626}.sim122-dot{width:10px;height:10px;border-radius:50%;display:inline-block}.sim122-dot.connected{background:#22c55e}.sim122-dot.manual{background:#f59e0b}.sim122-dot.offline{background:#ef4444}
@media(max-width:1500px){#simulator .sim122-arch-grid{grid-template-columns:1fr}}

/* ===== simulador-v123-fix-edicion-arquitectura-pdf ===== */
/* SOLO SIMULADOR - V123 */
#simulator footer,#simulator [class*="footer"]:not(.sim123-footer),#simulator .sim-footer-once-v108,#simulator .sim-final-footer-v109,#simulator .sim110-footer,#simulator .sim111-footer,#simulator .sim113-footer,#simulator .sim114-footer,#simulator .sim116-footer,#simulator .sim117-footer,#simulator .sim118-footer,#simulator .sim119-footer,#simulator .sim120-footer,#simulator .sim121-footer,#simulator .sim122-footer{display:none!important}
#simulator .sim123-footer{display:block!important;color:#64748b!important;text-align:center!important;margin:24px 0 0!important;font-size:14px!important;font-weight:500!important}
#simulator .sim123-btn{min-height:38px;border-radius:14px;border:1px solid #bfdbfe;background:#eef6ff;color:#0f62fe;font-weight:950;padding:0 14px;cursor:pointer;box-shadow:0 10px 20px rgba(15,98,254,.06)}
#simulator .sim123-modal{position:fixed;inset:0;background:rgba(2,12,27,.58);z-index:999999;display:none;align-items:center;justify-content:center;padding:22px}
#simulator .sim123-modal.active{display:flex}
#simulator .sim123-modal-card{width:min(1060px,94vw);max-height:90vh;overflow:auto;background:#fff;border-radius:28px;padding:24px;box-shadow:0 42px 120px rgba(0,0,0,.34)}
#simulator .sim123-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
#simulator .sim123-form label{font-size:12px;font-weight:950;color:#334155;display:block;margin:6px 0 4px}
#simulator .sim123-form input,#simulator .sim123-form select{width:100%;box-sizing:border-box;border:1px solid #dbe7f3;border-radius:13px;padding:10px}
#simulator .sim123-form .full{grid-column:1/-1}
#simulator .sim123-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}
#simulator .sim123-arch-card{border:1px solid #dbe7f3;border-radius:26px;padding:20px;background:linear-gradient(180deg,#ffffff,#f8fbff);overflow:hidden}
#simulator .sim123-arch-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:16px}
#simulator .sim123-brand{display:flex;align-items:center;gap:12px}
#simulator .sim123-logo{width:58px;height:58px;border-radius:18px;object-fit:contain;background:#fff;border:1px solid #dbe7f3;padding:6px}
#simulator .sim123-logo-fallback{width:58px;height:58px;border-radius:18px;background:#eef6ff;color:#0f62fe;display:grid;place-items:center;font-weight:950;border:1px solid #dbe7f3}
#simulator .sim123-legend{display:flex;gap:12px;flex-wrap:wrap;color:#475569;font-size:12px}
#simulator .sim123-legend span{display:inline-flex;align-items:center;gap:6px}
#simulator .sim123-line{width:24px;height:2px;display:inline-block}.sim123-line.connected{background:#22c55e}.sim123-line.manual{border-top:2px dashed #f59e0b}.sim123-line.offline{border-top:2px dashed #ef4444}
#simulator .sim123-arch-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
#simulator .sim123-col{border:1px solid #dbe7f3;border-radius:22px;padding:14px;background:#fff;position:relative}
#simulator .sim123-col h4{margin:0 0 12px;text-align:center;color:#0f3d75;text-transform:uppercase;font-size:13px}
#simulator .sim123-tool{border:1px solid #dbe7f3;border-radius:18px;padding:13px;background:#fff;margin-bottom:12px;position:relative;min-height:116px}
#simulator .sim123-tool.connected{border-color:#bbf7d0;background:#f8fffb}#simulator .sim123-tool.manual{border-color:#fed7aa;background:#fffaf4}#simulator .sim123-tool.offline{border-color:#fecaca;background:#fff7f7}
#simulator .sim123-tool-title{font-weight:950;color:#071b33;margin-bottom:4px;line-height:1.15}#simulator .sim123-tool-sub{color:#64748b;font-size:12px;min-height:30px}
#simulator .sim123-status{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:950;margin-top:8px}
#simulator .sim123-status.connected{background:#dcfce7;color:#047857}#simulator .sim123-status.manual{background:#fef3c7;color:#b45309}#simulator .sim123-status.offline{background:#fee2e2;color:#dc2626}
#simulator .sim123-dot{width:10px;height:10px;border-radius:50%;display:inline-block}.sim123-dot.connected{background:#22c55e}.sim123-dot.manual{background:#f59e0b}.sim123-dot.offline{background:#ef4444}
@media(max-width:1300px){#simulator .sim123-arch-grid{grid-template-columns:1fr}}

/* ===== simulador-v124-ajustes-finales-ceo ===== */
/* SOLO SIMULADOR - V124 */
#simulator footer,#simulator [class*="footer"]:not(.sim124-footer),#simulator .sim-footer-once-v108,#simulator .sim-final-footer-v109,#simulator .sim110-footer,#simulator .sim111-footer,#simulator .sim113-footer,#simulator .sim114-footer,#simulator .sim116-footer,#simulator .sim117-footer,#simulator .sim118-footer,#simulator .sim119-footer,#simulator .sim120-footer,#simulator .sim121-footer,#simulator .sim122-footer,#simulator .sim123-footer{display:none!important}
#simulator .sim124-footer{display:block!important;color:#64748b!important;text-align:center!important;margin:24px 0 0!important;font-size:14px!important;font-weight:500!important}
#simulator .sim124-btn{min-height:38px;border-radius:14px;border:1px solid #bfdbfe;background:#eef6ff;color:#0f62fe;font-weight:950;padding:0 14px;cursor:pointer;box-shadow:0 10px 20px rgba(15,98,254,.06)}
#simulator .sim124-title-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}
#simulator .sim124-modal{position:fixed;inset:0;background:rgba(2,12,27,.58);z-index:999999;display:none;align-items:center;justify-content:center;padding:22px}
#simulator .sim124-modal.active{display:flex}
#simulator .sim124-modal-card{width:min(1040px,94vw);max-height:90vh;overflow:auto;background:#fff;border-radius:28px;padding:24px;box-shadow:0 42px 120px rgba(0,0,0,.34)}
#simulator .sim124-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
#simulator .sim124-form label{font-size:12px;font-weight:950;color:#334155}
#simulator .sim124-form input,#simulator .sim124-form textarea,#simulator .sim124-form select{width:100%;box-sizing:border-box;border:1px solid #dbe7f3;border-radius:13px;padding:10px}
#simulator .sim124-form textarea{min-height:80px;resize:vertical}
#simulator .sim124-form .full{grid-column:1/-1}
#simulator .sim124-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}
#simulator .sim124-maturity-panel{display:grid;grid-template-columns:210px minmax(0,1fr);gap:18px;align-items:center;margin:8px 0 18px;padding:16px;border:1px solid #dbe7f3;border-radius:22px;background:linear-gradient(180deg,#fff,#f8fbff)}
#simulator .sim124-ring{width:170px;height:170px;border-radius:50%;background:conic-gradient(#0f62fe var(--pct),#e2e8f0 0);display:grid;place-items:center;position:relative;margin:auto}
#simulator .sim124-ring:after{content:"";position:absolute;width:108px;height:108px;border-radius:50%;background:#fff}
#simulator .sim124-ring span{position:relative;z-index:1;text-align:center;font-size:31px;font-weight:950;color:#071b33;line-height:1.05}
#simulator .sim124-bars{height:210px;border-left:1px solid #dbe7f3;border-bottom:1px solid #dbe7f3;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;align-items:end;padding:12px;overflow:hidden}
#simulator .sim124-baritem{text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:6px;min-width:0}
#simulator .sim124-baritem b{font-size:13px;color:#071b33}
#simulator .sim124-baritem small{font-size:11px;color:#64748b;font-weight:900;white-space:nowrap}
#simulator .sim124-bar{width:28px;border-radius:12px 12px 4px 4px;background:linear-gradient(180deg,#0f62fe,#60a5fa)}
#simulator .sim124-impact-table{width:100%;border-collapse:separate;border-spacing:0 10px}
#simulator .sim124-impact-table th{font-size:12px;text-transform:uppercase;color:#64748b;text-align:left;padding:6px}
#simulator .sim124-impact-table td{background:#f8fbff;border-top:1px solid #dbe7f3;border-bottom:1px solid #dbe7f3;padding:12px 10px;font-weight:850}
#simulator .sim124-impact-table td:first-child{border-left:1px solid #dbe7f3;border-radius:15px 0 0 15px;color:#071b33}
#simulator .sim124-impact-table td:last-child{border-right:1px solid #dbe7f3;border-radius:0 15px 15px 0;color:#0f9f5a;font-size:18px}
#simulator .sim124-impact-total{margin-top:14px;border-radius:22px;background:linear-gradient(135deg,#dcfce7,#f0fdf4);padding:20px;display:flex;justify-content:space-between;align-items:center;gap:14px}
#simulator .sim124-impact-total small{display:block;color:#047857;font-weight:950;text-transform:uppercase}
#simulator .sim124-impact-total b{font-size:38px;color:#0f9f5a;line-height:1.05}
#simulator .sim124-compare-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
#simulator .sim124-scenario-card{border:1px solid #dbe7f3;border-radius:22px;padding:16px;background:#fff;cursor:pointer;transition:.18s;min-height:230px}
#simulator .sim124-scenario-card:hover{transform:translateY(-2px);box-shadow:0 18px 42px rgba(15,98,254,.10)}
#simulator .sim124-scenario-card.active{background:#eef6ff;border-color:#0f62fe;box-shadow:0 0 0 4px rgba(15,98,254,.10)}
#simulator .sim124-scenario-card h4{margin:0 0 10px;color:#071b33;font-size:19px}
#simulator .sim124-scenario-card .money{font-size:30px;color:#0f62fe;font-weight:950;margin:8px 0}
#simulator .sim124-scenario-card p{line-height:1.42;color:#334155}
#simulator .sim124-chip{display:inline-flex;border-radius:999px;background:#dcfce7;color:#047857;padding:6px 10px;font-size:12px;font-weight:950;margin-bottom:8px}
#simulator .sim124-report-note{font-size:12px;color:#64748b;text-align:right;margin-top:8px}
@media(max-width:1300px){#simulator .sim124-maturity-panel{grid-template-columns:1fr}#simulator .sim124-compare-grid{grid-template-columns:1fr 1fr}}

/* ===== simulador-v125-listado-paginacion-pdf-premium ===== */
/* SOLO SIMULADOR - V125 */

/* Oculta botón superior global Imprimir/PDF únicamente en Simulador */
body:has(#simulator) #simulator ~ * .btn-print,
body:has(#simulator) button[onclick*="print"]:not(.sim125-keep),
body:has(#simulator) button:has(span){
}

/* Dentro del módulo simulador ocultar acciones de imprimir/pdf globales de cabecera */
#simulator button,
#simulator a{}

/* Paginación listado escenarios */
#simulator .sim125-pagination{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  gap:8px;
  margin:18px 0 0;
}
#simulator .sim125-page-btn{
  width:52px;
  height:52px;
  border-radius:14px;
  border:1px solid #d4e3f5;
  background:#fff;
  color:#0f62fe;
  font-weight:950;
  cursor:pointer;
  box-shadow:0 12px 28px rgba(15,23,42,.04);
}
#simulator .sim125-page-btn.active{
  background:#0f62fe;
  color:#fff;
  border-color:#0f62fe;
}
#simulator .sim125-page-btn:disabled{
  opacity:.45;
  cursor:not-allowed;
}
#simulator .sim125-page-info{
  margin-right:auto;
  color:#071b33;
  font-weight:850;
}

/* Ocultar botón Imprimir/PDF de parte superior derecha del simulador */
#simulator .sim125-hide-print,
#simulator button.sim125-hide-print,
#simulator a.sim125-hide-print{
  display:none!important;
}

/* Botón PDF ejecutivo en pantalla 2 */
#simulator .sim125-pdf-btn{
  min-height:44px;
  border-radius:16px;
  border:1px solid #0f62fe;
  background:linear-gradient(135deg,#0f62fe,#2563eb);
  color:#fff;
  font-weight:950;
  padding:0 18px;
  cursor:pointer;
  box-shadow:0 18px 38px rgba(15,98,254,.22);
}

/* ===== simulador-v132-pdf-centering-hotfix ===== */
#sim131-report,#sim130-report,#sim129-report,#sim128-report,#sim127-report{
  width:612px!important;
  max-width:612px!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}
#sim131-report .pdfPage,#sim130-report .pdfPage,#sim129-report .pdfPage,#sim128-report .pdfPage,#sim127-report .pdfPage{
  width:590px!important;
  max-width:590px!important;
  margin:0 auto 6px!important;
  padding:16px!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}
#sim131-report .chartGrid .card,#sim130-report .chartGrid .card,#sim129-report .chartGrid .card{
  height:150px!important;
  overflow:hidden!important;
}
#sim131-report svg,#sim130-report svg,#sim129-report svg{
  max-width:100%!important;
  height:112px!important;
  display:block!important;
  margin:0 auto!important;
}
#sim131-report .roadmapImg,#sim130-report .roadmapImg,#sim129-report .roadmapImg{
  width:100%!important;
  max-width:100%!important;
  max-height:260px!important;
  object-fit:contain!important;
}

/* ===== simulador-v142-pdf-estable-premium-only ===== */
.pdf-export-temp,.html2pdf__container,.jspdf-temp,.sim-pdf-temp,.pdf-temp,.export-temp,[id^="sim"][id$="-report"]{pointer-events:none!important}

/* ===== v150-iniciativas-inline-premium-style ===== */
/* V150 - SOLO estética del detalle desplegable de iniciativas */
.v149-inline-initiatives{
  margin-top:16px!important;
  border:1px solid #dbe7f3!important;
  border-radius:24px!important;
  background:linear-gradient(180deg,#f8fbff 0%,#eef6ff 100%)!important;
  padding:16px!important;
  box-shadow:0 18px 42px rgba(8,40,77,.10)!important;
}
.v149-inline-initiatives h3{
  margin:0 0 12px!important;
  color:#071b33!important;
  font-size:17px!important;
  line-height:1.2!important;
  letter-spacing:-.2px!important;
}
.v149-inline-initiatives table,
.v149-inline-initiatives thead,
.v149-inline-initiatives tbody,
.v149-inline-initiatives tr,
.v149-inline-initiatives th,
.v149-inline-initiatives td{
  display:block!important;
  width:100%!important;
  border:0!important;
  padding:0!important;
}
.v149-inline-initiatives thead{
  display:none!important;
}
.v149-inline-initiatives tbody{
  display:grid!important;
  gap:10px!important;
}
.v149-inline-initiatives tr{
  position:relative!important;
  background:#fff!important;
  border:1px solid #dbe7f3!important;
  border-radius:18px!important;
  padding:12px 12px 12px 48px!important;
  box-shadow:0 10px 24px rgba(8,40,77,.07)!important;
  min-height:72px!important;
}
.v149-inline-initiatives tr:before{
  content:"📊";
  position:absolute;
  left:12px;
  top:15px;
  width:28px;
  height:28px;
  border-radius:10px;
  background:#eef2ff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:15px;
}
.v149-inline-initiatives tr:nth-child(2):before{content:"🗄";background:#dcfce7}
.v149-inline-initiatives tr:nth-child(3):before{content:"⏱";background:#ccfbf1}
.v149-inline-initiatives tr:nth-child(4):before{content:"🔗";background:#fef3c7}
.v149-inline-initiatives tr:nth-child(5):before{content:"🧠";background:#dbeafe}
.v149-inline-initiatives tr:nth-child(6):before{content:"📄";background:#ede9fe}
.v149-inline-initiatives tr:nth-child(7):before{content:"🔌";background:#dcfce7}
.v149-inline-initiatives tr:nth-child(8):before{content:"🛡";background:#e0f2fe}
.v149-inline-initiatives td{
  font-size:12.5px!important;
  line-height:1.25!important;
  color:#0b1730!important;
}
.v149-inline-initiatives td:first-child{
  font-size:13.5px!important;
  font-weight:900!important;
  color:#071b33!important;
  padding-right:78px!important;
  margin-bottom:5px!important;
}
.v149-inline-initiatives td:nth-child(2){
  font-size:12px!important;
  color:#64748b!important;
}
.v149-inline-initiatives td:nth-child(2):before{
  content:"Impacto: ";
  color:#64748b;
}
.v149-inline-initiatives td:nth-child(2){
  font-weight:800!important;
}
.v149-inline-initiatives td:nth-child(3){
  position:absolute!important;
  right:10px!important;
  top:12px!important;
  width:auto!important;
  min-width:58px!important;
  text-align:center!important;
  border-radius:999px!important;
  padding:6px 10px!important;
  font-size:11.5px!important;
  font-weight:900!important;
  color:#64748b!important;
  background:#dbeafe!important;
}
.v149-inline-initiatives td:nth-child(3){
  color:#334155!important;
}
.v149-inline-initiatives td:nth-child(3):contains("Alta"){
  background:#dcfce7!important;
  color:#166534!important;
}
.v149-inline-initiatives tr:hover{
  transform:translateY(-1px);
  box-shadow:0 14px 30px rgba(8,40,77,.10)!important;
  transition:.18s ease;
}

/* ===== v151-mapa-madurez-cx-only ===== */
/* V151 - SOLO ajuste del eje X del Mapa de Madurez para incluir Experiencia Cliente */
.axis-x-v63.axis-x-cx-v151{
  left:70px!important;
  right:28px!important;
  bottom:14px!important;
  display:grid!important;
  grid-template-columns:repeat(5,1fr)!important;
  align-items:end!important;
  gap:8px!important;
}
.axis-x-v63.axis-x-cx-v151 span{
  text-align:center!important;
  font-size:11px!important;
  line-height:1.15!important;
  white-space:normal!important;
}

/* ===== v152-mapa-madurez-puntos-cx-only ===== */
/* V152 - SOLO mejora de distribución de puntos del Mapa de Madurez */
.axis-x-v63.axis-x-cx-v152{
  left:70px!important;
  right:28px!important;
  bottom:14px!important;
  display:grid!important;
  grid-template-columns:repeat(5,1fr)!important;
  align-items:end!important;
  gap:8px!important;
}
.axis-x-v63.axis-x-cx-v152 span{
  text-align:center!important;
  font-size:11px!important;
  line-height:1.15!important;
  white-space:normal!important;
}
.maturity-map-v63 .maturity-dot-v63{
  z-index:2;
}

/* ===== v155-simulador-cx-dentro-grafica-only ===== */
/* V155 - SOLO Simulador sección 7: Experiencia Cliente dentro de la gráfica */
#simulator .sim155-maturity-panel{
  grid-template-columns:170px minmax(0,1fr)!important;
  gap:16px!important;
}
#simulator .sim155-bars{
  grid-template-columns:repeat(7,minmax(0,1fr))!important;
  gap:8px!important;
  padding:12px 8px 22px!important;
  overflow:visible!important;
  height:218px!important;
}
#simulator .sim155-baritem{
  min-width:0!important;
}
#simulator .sim155-baritem .sim124-bar{
  width:24px!important;
}
#simulator .sim155-baritem small{
  font-size:10px!important;
  line-height:1.05!important;
  white-space:normal!important;
  text-align:center!important;
  max-width:62px!important;
  display:block!important;
  min-height:22px!important;
}
#simulator .sim155-cx-row td{
  background:#f8fbff!important;
}
#simulator .sim155-cx-row td:first-child{
  color:#0f62fe!important;
  font-weight:950!important;
}
#simulator .sim155-maturity-table{
  margin-top:10px!important;
}
@media(max-width:1200px){
  #simulator .sim155-maturity-panel{
    grid-template-columns:1fr!important;
  }
}

/* ===== v157-simulador-cx-color-normal-only ===== */
/* V157 - SOLO normaliza color de Experiencia Cliente en Simulador */
#simulator .sim155-cx-row td{
  background:transparent!important;
}
#simulator .sim155-cx-row td:first-child{
  color:#071b33!important;
  font-weight:400!important;
}
#simulator .sim155-cx-row td:first-child *{
  color:#071b33!important;
  font-weight:400!important;
}

/* ===== v158-arquitectura-objetivo-espaciado-only ===== */
/* V158 - SOLO estética de Arquitectura Objetivo: evita sobremontado de tarjetas */
.arch-vista3 .arch-column,
.architecture-vista3 .arch-column,
.arch-target-column,
.arch-column-target,
#architecture .arch-column,
#arquitectura .arch-column{
  min-width:0!important;
}

.arch-vista3 .tool-card,
.architecture-vista3 .tool-card,
#architecture .tool-card,
#arquitectura .tool-card,
.arch-card-tool,
.arch-tool-card{
  min-height:168px!important;
  height:auto!important;
  padding:18px!important;
  box-sizing:border-box!important;
  overflow:visible!important;
  display:flex!important;
  flex-direction:column!important;
  gap:12px!important;
}

.arch-vista3 .tool-card .tool-header,
.architecture-vista3 .tool-card .tool-header,
#architecture .tool-card .tool-header,
#arquitectura .tool-card .tool-header{
  display:flex!important;
  align-items:flex-start!important;
  gap:14px!important;
  min-width:0!important;
}

.arch-vista3 .tool-card h4,
.architecture-vista3 .tool-card h4,
#architecture .tool-card h4,
#arquitectura .tool-card h4,
.arch-tool-card h4,
.arch-card-tool h4{
  margin:0!important;
  line-height:1.18!important;
  font-size:15.5px!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
  max-width:100%!important;
}

.arch-vista3 .tool-card p,
.architecture-vista3 .tool-card p,
#architecture .tool-card p,
#arquitectura .tool-card p,
.arch-tool-card p,
.arch-card-tool p{
  margin:0!important;
  line-height:1.25!important;
  font-size:12.5px!important;
  color:#64748b!important;
  overflow-wrap:anywhere!important;
}

.arch-vista3 .tool-card .actions,
.architecture-vista3 .tool-card .actions,
#architecture .tool-card .actions,
#arquitectura .tool-card .actions,
.arch-actions{
  margin-top:auto!important;
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  align-items:center!important;
}

.arch-vista3 .tool-card button,
.architecture-vista3 .tool-card button,
#architecture .tool-card button,
#arquitectura .tool-card button,
.arch-tool-card button,
.arch-card-tool button{
  white-space:nowrap!important;
  max-width:100%!important;
}

/* Ajuste específico para columnas objetivo/salidas cuando hay nombres largos */
#architecture [class*="salida"] .tool-card,
#architecture [class*="objetivo"] .tool-card,
#arquitectura [class*="salida"] .tool-card,
#arquitectura [class*="objetivo"] .tool-card{
  min-height:176px!important;
}

/* Mantiene el botón agregar separado y sin montarse */
.arch-vista3 .add-tool,
.architecture-vista3 .add-tool,
#architecture .add-tool,
#arquitectura .add-tool,
.arch-add-tool{
  margin-top:14px!important;
  min-height:58px!important;
}

/* ===== v160-arquitectura-restaurar-botones-only ===== */
/* V160 - SOLO Arquitectura: restaura estética de botones y ajusta lectura de títulos largos */

/* No tocar botones de arquitectura: vuelven a tomar el estilo original del aplicativo */
#architecture button,
#arquitectura button{
  font-size:inherit;
  padding:inherit;
}

/* Ajuste mínimo para que títulos largos respiren sin dañar botones */
#architecture .arch-tool-card h3,
#architecture .arch-tool-card h4,
#architecture .tool-card h3,
#architecture .tool-card h4,
#architecture [class*="tool-card"] h3,
#architecture [class*="tool-card"] h4,
#arquitectura .arch-tool-card h3,
#arquitectura .arch-tool-card h4,
#arquitectura .tool-card h3,
#arquitectura .tool-card h4,
#arquitectura [class*="tool-card"] h3,
#arquitectura [class*="tool-card"] h4{
  line-height:1.18!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
  hyphens:none!important;
}

/* Dar un poco más de aire vertical a tarjetas sin modificar los controles */
#architecture .arch-tool-card,
#architecture .tool-card,
#architecture [class*="tool-card"],
#arquitectura .arch-tool-card,
#arquitectura .tool-card,
#arquitectura [class*="tool-card"]{
  height:auto!important;
  overflow:visible!important;
}

/* Mantener separación visual limpia entre tarjetas y botón agregar */
#architecture [class*="add"],
#arquitectura [class*="add"]{
  margin-top:12px;
}

/* ===== v165-procesos-criticos-clean-premium-only ===== */
#critical .crit165-head,#critical .crit165-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:18px}
#critical .crit165-head h2{margin:0 0 6px;font-size:28px;color:#071b33}
#critical .crit165-head p{margin:0;color:#64748b}
#critical .crit165-card,#critical .crit165-hero,#critical .crit165-kpis>div{background:#fff;border:1px solid #dbe7f3;border-radius:22px;padding:20px;box-shadow:0 18px 42px rgba(8,40,77,.08);margin-bottom:16px}
#critical .crit165-filters{display:grid;grid-template-columns:1.25fr 1fr 1fr 1fr;gap:16px 18px;align-items:end}
#critical label{display:block;font-size:12px;font-weight:900;color:#334155;margin-bottom:7px}
#critical input,#critical select{width:100%;box-sizing:border-box;border:1px solid #cfe0f2;border-radius:10px;padding:12px 13px;font-weight:700}
#critical .crit165-actions{display:flex;gap:12px}
#critical .crit165-primary,#critical .crit165-actions button,#critical .crit165-back,#critical .crit165-export{border:1px solid #cfe0f2;background:#f8fbff;color:#0f62fe;border-radius:10px;padding:12px 16px;font-weight:950;cursor:pointer}
#critical .crit165-primary{background:#0f62fe!important;color:#fff!important;border-color:#0f62fe!important}
#critical .crit165-table-head{display:flex;justify-content:space-between;align-items:center}
#critical .crit165-count{background:#f0f7ff;border:1px solid #dbe7f3;border-radius:12px;padding:8px 14px;text-align:center;font-weight:950}
#critical .crit165-table{width:100%;border-collapse:collapse}
#critical .crit165-table th{text-align:left;font-size:11px;text-transform:uppercase;color:#334155;padding:12px 8px;border-bottom:1px solid #dbe7f3}
#critical .crit165-table td{padding:12px 8px;border-bottom:1px solid #eef2f7;font-size:13px;vertical-align:middle}
#critical .crit165-company{display:flex;gap:12px;align-items:center}
#critical .crit165-company img,#critical .crit165-company-hero img{width:44px;height:44px;border-radius:14px;border:1px solid #dbe7f3;object-fit:cover}
#critical .crit165-company b{display:block;color:#071b33}
#critical .crit165-company small{color:#64748b}
#critical .crit165-score,.crit165-mini{display:flex;gap:10px;align-items:center;font-weight:950}
#critical .crit165-score i,#critical .crit165-mini i{width:38px;height:38px;border-radius:50%;background:conic-gradient(#0f62fe var(--pct),#e2e8f0 0)}
#critical .crit165-pill{display:inline-flex;border-radius:999px;padding:6px 10px;font-weight:950;font-size:11px}
#critical .crit165-pill.red{background:#fee2e2;color:#dc2626}.crit165-pill.orange{background:#ffedd5;color:#f97316}.crit165-pill.green{background:#dcfce7;color:#0f9f5a}.crit165-pill.blue{background:#dbeafe;color:#0f62fe}.crit165-pill.purple{background:#ede9fe;color:#7c3aed}
#critical .crit165-money{color:#0f9f5a}
#critical .crit165-view{border:1px solid #b9d6ff;background:#f8fbff;color:#0f62fe;border-radius:10px;padding:9px 12px;font-weight:950;cursor:pointer}
#critical .crit165-pager{display:flex;justify-content:space-between;align-items:center;margin-top:14px;color:#64748b}
#critical .crit165-pager button{min-width:34px;height:34px;border:1px solid #dbe7f3;background:#fff;border-radius:9px;color:#0f62fe;font-weight:900;margin-left:6px}
#critical .crit165-pager button.active{background:#0f62fe;color:#fff}
#critical .crit165-hero{display:grid;grid-template-columns:1.2fr .35fr .35fr;gap:18px}
#critical .crit165-company-hero{display:flex;gap:16px;align-items:center}
#critical .crit165-company-hero h2{margin:0;color:#071b33}
#critical .crit165-company-hero p{margin:5px 0 0;color:#64748b}
#critical .crit165-kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
#critical .crit165-kpis small{display:block;color:#64748b;font-weight:900;margin-bottom:8px}
#critical .crit165-kpis b{font-size:22px;color:#0f9f5a}.crit165-kpis .orange{color:#f97316}.crit165-kpis .purple{color:#7c3aed}
#critical .crit165-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:18px}
#critical .crit165-add{float:right}.crit165-tabs{display:flex;gap:12px;border-bottom:1px solid #e2e8f0;margin-bottom:12px}.crit165-tabs span{padding:12px 16px;color:#64748b;font-weight:950}.crit165-tabs .active{color:#0f62fe;border-bottom:3px solid #0f62fe;background:#f0f7ff;border-radius:12px 12px 0 0}
#critical .crit165-donut{width:145px;height:145px;border-radius:50%;margin:0 auto 14px;background:conic-gradient(#16a34a 0 35%,#0f62fe 35% 60%,#f97316 60% 85%,#7c3aed 85% 100%);position:relative}.crit165-donut:after{content:"";position:absolute;inset:36px;background:#fff;border-radius:50%}
#critical .crit165-legend{display:grid;gap:9px}.crit165-legend div{display:flex;justify-content:space-between;color:#334155;font-size:13px}.crit165-bar{height:9px;border-radius:999px;background:linear-gradient(90deg,#16a34a 0 25%,#f97316 25% 62%,#0f62fe 62% 100%);margin:12px 0}.crit165-note{background:#f0f7ff;border:1px solid #dbe7f3;border-radius:14px;padding:14px;color:#334155;margin-top:14px}
@media(max-width:1300px){#critical .crit165-detail-grid{grid-template-columns:1fr}#critical .crit165-kpis{grid-template-columns:repeat(2,1fr)}#critical .crit165-hero{grid-template-columns:1fr}#critical .crit165-filters{grid-template-columns:1fr 1fr}}

/* ===== v167-procesos-criticos-modal-edicion-only ===== */
/* V167 - SOLO Procesos Críticos: alineación Responsable/Estado y modal para editar/agregar todos los campos */
#critical .crit165-table.detail{
  table-layout:fixed!important;
}
#critical .crit165-table.detail th:nth-child(1),
#critical .crit165-table.detail td:nth-child(1){width:30px!important;text-align:center!important}
#critical .crit165-table.detail th:nth-child(2),
#critical .crit165-table.detail td:nth-child(2){width:18%!important}
#critical .crit165-table.detail th:nth-child(3),
#critical .crit165-table.detail td:nth-child(3){width:17%!important}
#critical .crit165-table.detail th:nth-child(4),
#critical .crit165-table.detail td:nth-child(4){width:10%!important}
#critical .crit165-table.detail th:nth-child(5),
#critical .crit165-table.detail td:nth-child(5){width:9%!important}
#critical .crit165-table.detail th:nth-child(6),
#critical .crit165-table.detail td:nth-child(6){width:8%!important}
#critical .crit165-table.detail th:nth-child(7),
#critical .crit165-table.detail td:nth-child(7){width:9%!important}
#critical .crit165-table.detail th:nth-child(8),
#critical .crit165-table.detail td:nth-child(8){
  width:12%!important;
  text-align:center!important;
  padding-left:8px!important;
  padding-right:8px!important;
}
#critical .crit165-table.detail th:nth-child(9),
#critical .crit165-table.detail td:nth-child(9){
  width:12%!important;
  text-align:left!important;
  padding-left:18px!important;
  padding-right:12px!important;
  white-space:normal!important;
  line-height:1.15!important;
}
#critical .crit165-table.detail th:nth-child(10),
#critical .crit165-table.detail td:nth-child(10){
  width:86px!important;
  text-align:center!important;
}
#critical .crit165-table.detail td{
  vertical-align:middle!important;
  line-height:1.25!important;
}
#critical .crit165-table.detail .crit165-pill{
  white-space:normal!important;
  text-align:center!important;
  line-height:1.05!important;
  max-width:100%!important;
}
#critical .crit165-table.detail td:nth-child(8) .crit165-pill{
  min-width:96px!important;
}
#critical .crit165-table.detail td:last-child .crit165-view{
  min-width:74px!important;
  width:76px!important;
  padding:8px 10px!important;
  font-size:12px!important;
  display:inline-flex!important;
  justify-content:center!important;
}

/* Modal edición/agregar */
.crit167-overlay{
  position:fixed;
  inset:0;
  background:rgba(7,27,51,.45);
  z-index:99999;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
}
.crit167-modal{
  width:min(820px,96vw);
  background:#fff;
  border:1px solid #dbe7f3;
  border-radius:24px;
  box-shadow:0 30px 80px rgba(7,27,51,.28);
  overflow:hidden;
}
.crit167-modal-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:20px 24px;
  background:linear-gradient(135deg,#071b33,#0f62fe);
  color:#fff;
}
.crit167-modal-head h3{
  margin:0;
  font-size:22px;
}
.crit167-modal-head button{
  width:36px;
  height:36px;
  border:0;
  border-radius:12px;
  background:rgba(255,255,255,.16);
  color:#fff;
  font-size:24px;
  cursor:pointer;
}
.crit167-form{
  padding:22px 24px;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}
.crit167-form label{
  display:block;
  font-size:12px;
  font-weight:900;
  color:#334155;
  margin-bottom:7px;
}
.crit167-form input,
.crit167-form select{
  width:100%;
  box-sizing:border-box;
  border:1px solid #cfe0f2;
  border-radius:12px;
  padding:12px 13px;
  font-weight:750;
  color:#071b33;
  outline:none;
  background:#fff;
}
.crit167-actions{
  padding:18px 24px 22px;
  display:flex;
  justify-content:flex-end;
  gap:12px;
  background:#f8fbff;
}
.crit167-cancel,
.crit167-save{
  border:1px solid #cfe0f2;
  border-radius:12px;
  padding:12px 18px;
  font-weight:950;
  cursor:pointer;
}
.crit167-cancel{
  background:#fff;
  color:#0f62fe;
}
.crit167-save{
  background:#0f62fe;
  color:#fff;
  border-color:#0f62fe;
}
@media(max-width:900px){
  .crit167-form{grid-template-columns:1fr}
}

/* ===== v168-procesos-criticos-tabla-centrada-only ===== */
/* V168 - SOLO Procesos Críticos pantalla 2: centrado visual de títulos y contenido */
#critical .crit165-table.detail th{
  text-align:center!important;
  vertical-align:middle!important;
}
#critical .crit165-table.detail td{
  vertical-align:middle!important;
}
#critical .crit165-table.detail th:nth-child(2),
#critical .crit165-table.detail th:nth-child(3){
  text-align:left!important;
}
#critical .crit165-table.detail td:nth-child(1),
#critical .crit165-table.detail td:nth-child(4),
#critical .crit165-table.detail td:nth-child(5),
#critical .crit165-table.detail td:nth-child(6),
#critical .crit165-table.detail td:nth-child(7),
#critical .crit165-table.detail td:nth-child(8),
#critical .crit165-table.detail td:nth-child(9),
#critical .crit165-table.detail td:nth-child(10){
  text-align:center!important;
}
#critical .crit165-table.detail td:nth-child(2),
#critical .crit165-table.detail td:nth-child(3){
  text-align:left!important;
}
#critical .crit165-table.detail td:nth-child(4) .crit165-pill,
#critical .crit165-table.detail td:nth-child(6) .crit165-pill,
#critical .crit165-table.detail td:nth-child(7) .crit165-pill,
#critical .crit165-table.detail td:nth-child(8) .crit165-pill{
  margin-left:auto!important;
  margin-right:auto!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
}
#critical .crit165-table.detail td:nth-child(5) .crit165-money{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  white-space:nowrap!important;
}
#critical .crit165-table.detail td:nth-child(9){
  white-space:normal!important;
  line-height:1.2!important;
}
#critical .crit165-table.detail td:nth-child(10) .crit165-view{
  margin-left:auto!important;
  margin-right:auto!important;
}

/* ===== v169-procesos-criticos-quitar-botones-only ===== */
/* V169 - SOLO Procesos Críticos pantalla 1: eliminar Nueva iniciativa personalizada y Aplicar filtros */
#critical .crit165-head > .crit165-primary{
  display:none!important;
}
#critical .crit165-actions .crit165-primary{
  display:none!important;
}
#critical .crit165-actions{
  justify-content:flex-start!important;
}
#critical .crit165-actions button:not(.crit165-primary){
  width:100%!important;
}

/* ===== v170-simulador-madurez-9dim-only ===== */
/* V170 - SOLO Simulador sección 7: gráfica premium con 9 dimensiones */
#simulator .sim170-title-row{
  align-items:center!important;
}
#simulator .sim170-maturity-card{
  border:1px solid #dbe7f3;
  border-radius:24px;
  padding:22px;
  background:#fff;
  display:grid;
  grid-template-columns:280px minmax(0,1fr);
  gap:24px;
  box-shadow:0 18px 42px rgba(8,40,77,.06);
}
#simulator .sim170-left{
  border-right:1px solid #dbe7f3;
  padding:18px 24px 18px 8px;
  text-align:center;
}
#simulator .sim170-left h4,
#simulator .sim170-right h4{
  margin:0 0 18px;
  color:#334155;
  font-size:16px;
  font-weight:950;
}
#simulator .sim170-ring{
  --pct:35%;
  width:210px;
  height:210px;
  border-radius:50%;
  margin:0 auto 18px;
  background:conic-gradient(#0f62fe var(--pct),#e2e8f0 0);
  display:grid;
  place-items:center;
  box-shadow:inset 0 0 0 0 transparent;
}
#simulator .sim170-ring span{
  width:130px;
  height:130px;
  border-radius:50%;
  background:#fff;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
}
#simulator .sim170-ring b{
  font-size:42px;
  color:#071b33;
  line-height:1;
}
#simulator .sim170-ring small{
  font-size:24px;
  font-weight:900;
  color:#64748b;
}
#simulator .sim170-level{
  display:inline-flex;
  gap:6px;
  background:#eef6ff;
  border:1px solid #dbe7f3;
  color:#64748b;
  border-radius:999px;
  padding:8px 16px;
  font-weight:900;
  margin-bottom:12px;
}
#simulator .sim170-level b{color:#0f62fe}
#simulator .sim170-left p{
  margin:0 auto;
  max-width:220px;
  color:#64748b;
  line-height:1.35;
}
#simulator .sim170-right{
  padding:18px 4px 8px;
  overflow:hidden;
}
#simulator .sim170-bars{
  height:295px;
  display:grid;
  grid-template-columns:repeat(9,minmax(0,1fr));
  gap:12px;
  align-items:end;
  border-bottom:1px solid #dbe7f3;
  position:relative;
  padding:18px 4px 0;
}
#simulator .sim170-bars:before{
  content:"";
  position:absolute;
  left:0;
  right:0;
  top:95px;
  border-top:1px dashed #dbe7f3;
}
#simulator .sim170-baritem{
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:flex-end;
  gap:7px;
  position:relative;
  z-index:1;
}
#simulator .sim170-baritem b{
  color:#0f62fe;
  font-size:14px;
  font-weight:950;
  line-height:1;
}
#simulator .sim170-bar{
  width:32px;
  border-radius:17px 17px 7px 7px;
  background:linear-gradient(180deg,#0f62fe 0%,#60a5fa 100%);
  box-shadow:0 10px 20px rgba(15,98,254,.18);
}
#simulator .sim170-baritem i{
  width:38px;
  height:38px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#fff;
  border:1px solid #dbe7f3;
  color:#0f62fe;
  font-style:normal;
  font-size:17px;
  box-shadow:0 8px 18px rgba(8,40,77,.08);
}
#simulator .sim170-baritem small{
  min-height:32px;
  color:#475569;
  text-align:center;
  font-size:11px;
  font-weight:950;
  line-height:1.1;
  max-width:82px;
  white-space:normal;
}
#simulator .sim170-note{
  grid-column:1/-1;
  background:#f0f7ff;
  border-radius:16px;
  padding:14px 18px;
  color:#64748b;
  font-size:14px;
  border:1px solid #e4eefb;
}
#simulator .sim170-maturity-table{
  margin-top:14px!important;
}
@media(max-width:1200px){
  #simulator .sim170-maturity-card{grid-template-columns:1fr}
  #simulator .sim170-left{border-right:0;border-bottom:1px solid #dbe7f3;padding-bottom:22px}
}

/* ===== v171-simulador-madurez-9dim-estetica-fix-only ===== */
/* V171 - SOLO Simulador sección 7: corregir distorsión de gráfica de madurez 9 dimensiones */
#simulator .sim171-maturity-wide-card{
  grid-column:1 / -1!important;
  width:100%!important;
  max-width:100%!important;
}
#simulator .sim171-maturity-wide-card .sim170-maturity-card{
  grid-template-columns:260px minmax(720px,1fr)!important;
  gap:28px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
}
#simulator .sim171-maturity-wide-card .sim170-left{
  min-width:240px!important;
}
#simulator .sim171-maturity-wide-card .sim170-right{
  min-width:720px!important;
  overflow:visible!important;
}
#simulator .sim171-maturity-wide-card .sim170-bars{
  height:315px!important;
  grid-template-columns:repeat(9,minmax(68px,1fr))!important;
  gap:14px!important;
  padding:20px 10px 0!important;
}
#simulator .sim171-maturity-wide-card .sim170-bar{
  width:30px!important;
}
#simulator .sim171-maturity-wide-card .sim170-baritem i{
  width:34px!important;
  height:34px!important;
  font-size:15px!important;
}
#simulator .sim171-maturity-wide-card .sim170-baritem small{
  font-size:10.5px!important;
  line-height:1.08!important;
  max-width:72px!important;
  min-height:34px!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}
#simulator .sim171-maturity-wide-card .sim170-baritem b{
  font-size:13px!important;
}
@media(max-width:1200px){
  #simulator .sim171-maturity-wide-card .sim170-maturity-card{
    grid-template-columns:1fr!important;
  }
  #simulator .sim171-maturity-wide-card .sim170-right{
    min-width:720px!important;
  }
}

/* ===== v173-simulador-madurez-premium-fix-only ===== */
/* V173 - SOLO Simulador sección 7: gráfica de madurez premium estable con 9 dimensiones */
#simulator .sim173-maturity-card-host{
  width:100%!important;
  min-width:0!important;
  overflow:visible!important;
}

#simulator .sim173-maturity-card-host .sim170-maturity-card{
  display:grid!important;
  grid-template-columns:260px minmax(0,1fr)!important;
  gap:24px!important;
  padding:24px!important;
  border:1px solid #dbe7f3!important;
  border-radius:24px!important;
  background:#fff!important;
  box-shadow:0 18px 42px rgba(8,40,77,.06)!important;
  overflow:hidden!important;
}

#simulator .sim173-maturity-card-host .sim170-left{
  min-width:0!important;
  padding:18px 22px 18px 4px!important;
  border-right:1px solid #dbe7f3!important;
  border-bottom:0!important;
  text-align:center!important;
}

#simulator .sim173-maturity-card-host .sim170-left h4,
#simulator .sim173-maturity-card-host .sim170-right h4{
  margin:0 0 16px!important;
  color:#071b33!important;
  font-size:17px!important;
  font-weight:950!important;
}

#simulator .sim173-maturity-card-host .sim170-ring{
  width:180px!important;
  height:180px!important;
  margin:0 auto 16px!important;
}

#simulator .sim173-maturity-card-host .sim170-ring span{
  width:112px!important;
  height:112px!important;
}

#simulator .sim173-maturity-card-host .sim170-ring b{
  font-size:38px!important;
}

#simulator .sim173-maturity-card-host .sim170-ring small{
  font-size:20px!important;
}

#simulator .sim173-maturity-card-host .sim170-level{
  font-size:13px!important;
  padding:7px 14px!important;
}

#simulator .sim173-maturity-card-host .sim170-left p{
  max-width:210px!important;
  font-size:13px!important;
}

#simulator .sim173-maturity-card-host .sim170-right{
  min-width:0!important;
  width:100%!important;
  overflow:visible!important;
  padding:18px 4px 8px!important;
}

#simulator .sim173-maturity-card-host .sim170-bars{
  width:100%!important;
  height:300px!important;
  display:grid!important;
  grid-template-columns:repeat(9,minmax(0,1fr))!important;
  gap:10px!important;
  align-items:end!important;
  padding:28px 8px 6px!important;
  border-bottom:1px solid #dbe7f3!important;
  overflow:visible!important;
}

#simulator .sim173-maturity-card-host .sim170-bars:before{
  top:88px!important;
  left:0!important;
  right:0!important;
  border-top:1px dashed #dbe7f3!important;
}

#simulator .sim173-maturity-card-host .sim170-baritem{
  min-width:0!important;
  gap:6px!important;
}

#simulator .sim173-maturity-card-host .sim170-baritem b{
  font-size:13px!important;
  color:#0f62fe!important;
  line-height:1!important;
}

#simulator .sim173-maturity-card-host .sim170-bar{
  width:26px!important;
  max-width:70%!important;
  border-radius:16px 16px 7px 7px!important;
}

#simulator .sim173-maturity-card-host .sim170-baritem i{
  width:32px!important;
  height:32px!important;
  min-width:32px!important;
  font-size:13px!important;
}

#simulator .sim173-maturity-card-host .sim170-baritem small{
  width:100%!important;
  max-width:74px!important;
  min-height:36px!important;
  font-size:9.5px!important;
  line-height:1.08!important;
  text-align:center!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  color:#475569!important;
}

#simulator .sim173-maturity-card-host .sim170-note{
  grid-column:1/-1!important;
  margin-top:2px!important;
  padding:13px 16px!important;
  border-radius:16px!important;
  font-size:13px!important;
}

#simulator .sim173-maturity-card-host .sim170-maturity-table,
#simulator .sim173-maturity-card-host + .sim170-maturity-table,
#simulator .sim173-maturity-card-host .sim155-maturity-table{
  margin-top:14px!important;
}

@media(max-width:1300px){
  #simulator .sim173-maturity-card-host .sim170-maturity-card{
    grid-template-columns:1fr!important;
  }
  #simulator .sim173-maturity-card-host .sim170-left{
    border-right:0!important;
    border-bottom:1px solid #dbe7f3!important;
    padding-right:0!important;
  }
  #simulator .sim173-maturity-card-host .sim170-bars{
    min-width:760px!important;
  }
  #simulator .sim173-maturity-card-host .sim170-right{
    overflow-x:auto!important;
    padding-bottom:12px!important;
  }
}

/* ===== v174-simulador-madurez-pro-estetica-only ===== */
/* V174 - SOLO Simulador sección 7: gráfica y tabla de madurez con estética pro */

/* La tarjeta de madurez ocupa la fila completa para evitar compresión */
#simulator .sim173-maturity-card-host{
  grid-column:1 / -1!important;
  width:100%!important;
  max-width:100%!important;
  overflow:visible!important;
}

/* Layout limpio: donut arriba/izquierda y gráfica con espacio real */
#simulator .sim173-maturity-card-host .sim170-maturity-card{
  display:grid!important;
  grid-template-columns:260px minmax(0,1fr)!important;
  gap:24px!important;
  padding:24px!important;
  overflow:hidden!important;
}

/* Donut más compacto para liberar ancho */
#simulator .sim173-maturity-card-host .sim170-left{
  min-width:230px!important;
  padding:16px 22px 16px 4px!important;
}
#simulator .sim173-maturity-card-host .sim170-ring{
  width:168px!important;
  height:168px!important;
}
#simulator .sim173-maturity-card-host .sim170-ring span{
  width:104px!important;
  height:104px!important;
}
#simulator .sim173-maturity-card-host .sim170-ring b{
  font-size:36px!important;
}
#simulator .sim173-maturity-card-host .sim170-ring small{
  font-size:18px!important;
}

/* Gráfica con 9 columnas proporcionadas, sin texto montado */
#simulator .sim173-maturity-card-host .sim170-right{
  min-width:0!important;
  width:100%!important;
  overflow:visible!important;
}
#simulator .sim173-maturity-card-host .sim170-bars{
  width:100%!important;
  height:310px!important;
  display:grid!important;
  grid-template-columns:repeat(9,minmax(64px,1fr))!important;
  gap:10px!important;
  align-items:end!important;
  padding:28px 8px 8px!important;
  overflow:visible!important;
}
#simulator .sim173-maturity-card-host .sim170-bar{
  width:28px!important;
  border-radius:16px 16px 7px 7px!important;
}
#simulator .sim173-maturity-card-host .sim170-baritem{
  min-width:0!important;
  gap:6px!important;
}
#simulator .sim173-maturity-card-host .sim170-baritem b{
  font-size:13px!important;
}
#simulator .sim173-maturity-card-host .sim170-baritem i{
  width:32px!important;
  height:32px!important;
  min-width:32px!important;
  font-size:13px!important;
}
#simulator .sim173-maturity-card-host .sim170-baritem small{
  display:block!important;
  width:100%!important;
  max-width:76px!important;
  min-height:34px!important;
  font-size:9.8px!important;
  line-height:1.08!important;
  text-align:center!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  color:#475569!important;
}

/* En anchos medianos/pequeños, se apila para que nunca se comprima */
@media(max-width:1500px){
  #simulator .sim173-maturity-card-host .sim170-maturity-card{
    grid-template-columns:1fr!important;
  }
  #simulator .sim173-maturity-card-host .sim170-left{
    border-right:0!important;
    border-bottom:1px solid #dbe7f3!important;
    padding-right:0!important;
    padding-bottom:20px!important;
  }
  #simulator .sim173-maturity-card-host .sim170-right{
    overflow-x:auto!important;
    padding-bottom:12px!important;
  }
  #simulator .sim173-maturity-card-host .sim170-bars{
    min-width:720px!important;
    grid-template-columns:repeat(9,72px)!important;
    justify-content:start!important;
  }
}

/* Tabla de madurez más compacta y ejecutiva */
#simulator .sim173-maturity-card-host .sim170-maturity-table,
#simulator .sim173-maturity-card-host + .sim170-maturity-table,
#simulator .sim173-maturity-card-host .sim155-maturity-table,
#simulator .sim170-maturity-table,
#simulator .sim155-maturity-table{
  width:100%!important;
  border-collapse:collapse!important;
  margin-top:16px!important;
  border:1px solid #dbe7f3!important;
  border-radius:18px!important;
  overflow:hidden!important;
  background:#fff!important;
}
#simulator .sim155-maturity-table th,
#simulator .sim170-maturity-table th{
  background:#f8fbff!important;
  color:#334155!important;
  font-size:12px!important;
  text-align:left!important;
  padding:10px 12px!important;
  border-bottom:1px solid #dbe7f3!important;
}
#simulator .sim155-maturity-table td,
#simulator .sim170-maturity-table td{
  font-size:13px!important;
  line-height:1.25!important;
  padding:9px 12px!important;
  border-bottom:1px solid #eef2f7!important;
  vertical-align:top!important;
}
#simulator .sim155-maturity-table td:nth-child(1),
#simulator .sim170-maturity-table td:nth-child(1){
  width:20%!important;
  font-weight:800!important;
}
#simulator .sim155-maturity-table td:nth-child(2),
#simulator .sim170-maturity-table td:nth-child(2){
  width:90px!important;
  white-space:nowrap!important;
  font-weight:800!important;
}

/* ===== v175-simulador-arquitectura-tabla-pro-only ===== */
/* V175 - SOLO Simulador: ampliar arquitectura y mejorar tabla de dimensiones */

/* Arquitectura empresarial en simulador: mismo ancho visual de madurez */
#simulator .sim175-architecture-wide-card{
  grid-column:1 / -1!important;
  width:100%!important;
  max-width:100%!important;
}

#simulator .sim175-architecture-wide-card .sim123-arch-card{
  width:100%!important;
  box-sizing:border-box!important;
  border-radius:24px!important;
  padding:22px 24px!important;
  background:#fff!important;
  border:1px solid #dbe7f3!important;
  box-shadow:0 18px 42px rgba(8,40,77,.06)!important;
}

#simulator .sim175-architecture-wide-card .sim123-arch-head{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:22px!important;
  align-items:center!important;
  margin-bottom:22px!important;
  padding-bottom:16px!important;
  border-bottom:1px solid #e8f0f8!important;
}

#simulator .sim175-architecture-wide-card .sim123-brand{
  min-width:0!important;
  display:flex!important;
  align-items:center!important;
  gap:14px!important;
}

#simulator .sim175-architecture-wide-card .sim123-logo,
#simulator .sim175-architecture-wide-card .sim123-logo-fallback{
  width:58px!important;
  height:58px!important;
  border-radius:16px!important;
}

#simulator .sim175-architecture-wide-card .sim123-brand b{
  font-size:18px!important;
  color:#071b33!important;
}

#simulator .sim175-architecture-wide-card .sim123-brand small{
  color:#475569!important;
  font-size:13px!important;
}

#simulator .sim175-architecture-wide-card .sim123-legend{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:14px 20px!important;
  align-items:center!important;
  justify-content:flex-end!important;
  color:#334155!important;
  font-size:13px!important;
}

#simulator .sim175-architecture-wide-card .sim123-arch-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:22px!important;
  align-items:stretch!important;
}

#simulator .sim175-architecture-wide-card .sim123-col{
  min-width:0!important;
  border-radius:22px!important;
  padding:20px!important;
  background:linear-gradient(180deg,#ffffff,#f8fbff)!important;
  border:1px solid #dbe7f3!important;
}

#simulator .sim175-architecture-wide-card .sim123-col h4{
  text-align:center!important;
  color:#0b3a78!important;
  font-size:13px!important;
  letter-spacing:.4px!important;
  text-transform:uppercase!important;
  margin:0 0 16px!important;
}

#simulator .sim175-architecture-wide-card .sim123-tool{
  min-height:96px!important;
  padding:16px!important;
  border-radius:18px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:space-between!important;
  gap:8px!important;
}

#simulator .sim175-architecture-wide-card .sim123-tool-title{
  font-size:16px!important;
  line-height:1.15!important;
  color:#071b33!important;
  font-weight:950!important;
}

#simulator .sim175-architecture-wide-card .sim123-tool-sub{
  font-size:12.5px!important;
  line-height:1.25!important;
  color:#64748b!important;
}

#simulator .sim175-architecture-wide-card .sim123-status{
  align-self:flex-start!important;
  font-size:12px!important;
  padding:7px 12px!important;
}

/* Tabla de dimensiones premium */
#simulator .sim155-maturity-table,
#simulator .sim170-maturity-table{
  margin-top:16px!important;
  width:100%!important;
  border-collapse:separate!important;
  border-spacing:0!important;
  border:1px solid #dbe7f3!important;
  border-radius:20px!important;
  overflow:hidden!important;
  background:#fff!important;
  box-shadow:0 14px 30px rgba(8,40,77,.05)!important;
}

#simulator .sim155-maturity-table thead th,
#simulator .sim170-maturity-table thead th{
  background:#f0f7ff!important;
  color:#071b33!important;
  font-size:12px!important;
  font-weight:950!important;
  text-transform:uppercase!important;
  letter-spacing:.25px!important;
  padding:13px 16px!important;
  border-bottom:1px solid #dbe7f3!important;
}

#simulator .sim155-maturity-table tbody td,
#simulator .sim170-maturity-table tbody td{
  padding:12px 16px!important;
  font-size:13.5px!important;
  line-height:1.3!important;
  border-bottom:1px solid #eef2f7!important;
  vertical-align:middle!important;
  color:#071b33!important;
}

#simulator .sim155-maturity-table tbody tr:last-child td,
#simulator .sim170-maturity-table tbody tr:last-child td{
  border-bottom:0!important;
}

#simulator .sim155-maturity-table tbody tr:nth-child(even) td,
#simulator .sim170-maturity-table tbody tr:nth-child(even) td{
  background:#f8fbff!important;
}

#simulator .sim155-maturity-table td:nth-child(1),
#simulator .sim170-maturity-table td:nth-child(1){
  width:22%!important;
  font-weight:950!important;
}

#simulator .sim155-maturity-table td:nth-child(2),
#simulator .sim170-maturity-table td:nth-child(2){
  width:110px!important;
  text-align:center!important;
  font-weight:950!important;
  color:#0f62fe!important;
  white-space:nowrap!important;
}

#simulator .sim155-maturity-table td:nth-child(3),
#simulator .sim170-maturity-table td:nth-child(3){
  color:#334155!important;
}

/* Responsivo seguro solo en el simulador */
@media(max-width:1200px){
  #simulator .sim175-architecture-wide-card .sim123-arch-head{
    grid-template-columns:1fr!important;
  }
  #simulator .sim175-architecture-wide-card .sim123-legend{
    justify-content:flex-start!important;
  }
  #simulator .sim175-architecture-wide-card .sim123-arch-grid{
    grid-template-columns:1fr!important;
  }
}

/* ===== v176-simulador-historial-timeline-only ===== */
/* V176 - SOLO Simulador historial: timeline premium con agregar hito */
#simulator .sim176-history-section{
  border-radius:24px!important;
  padding:24px!important;
  background:#fff!important;
  border:1px solid #dbe7f3!important;
  box-shadow:0 18px 42px rgba(8,40,77,.06)!important;
}
#simulator .sim176-title{
  display:flex!important;
  justify-content:space-between!important;
  align-items:flex-start!important;
  gap:18px!important;
  margin-bottom:26px!important;
}
#simulator .sim176-title h3{
  margin:0 0 6px!important;
  font-size:24px!important;
  color:#071b33!important;
}
#simulator .sim176-title p{
  margin:0!important;
  color:#64748b!important;
  font-size:14px!important;
}
#simulator .sim176-add{
  border:1px solid #b9d6ff!important;
  background:#f8fbff!important;
  color:#0f62fe!important;
  border-radius:14px!important;
  padding:12px 18px!important;
  font-weight:950!important;
  cursor:pointer!important;
}
#simulator .sim176-history-wrap{
  position:relative!important;
}
#simulator .sim176-line{
  position:absolute!important;
  left:8%!important;
  right:8%!important;
  top:36px!important;
  height:3px!important;
  background:linear-gradient(90deg,#93c5fd,#dbeafe,#93c5fd)!important;
  border-radius:999px!important;
}
#simulator .sim176-items{
  display:grid!important;
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
  gap:18px!important;
  position:relative!important;
  z-index:1!important;
}
#simulator .sim176-item{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  gap:16px!important;
}
#simulator .sim176-icon{
  width:58px!important;
  height:58px!important;
  border-radius:50%!important;
  display:grid!important;
  place-items:center!important;
  font-size:24px!important;
  border:1px solid #dbe7f3!important;
  background:#eef6ff!important;
  box-shadow:0 10px 24px rgba(8,40,77,.08)!important;
}
#simulator .sim176-item.green .sim176-icon{background:#dcfce7!important}
#simulator .sim176-item.orange .sim176-icon{background:#ffedd5!important}
#simulator .sim176-item.purple .sim176-icon{background:#ede9fe!important}
#simulator .sim176-card{
  width:100%!important;
  min-height:285px!important;
  border:1px solid #dbe7f3!important;
  border-radius:20px!important;
  padding:18px!important;
  background:#fff!important;
  box-shadow:0 12px 28px rgba(8,40,77,.05)!important;
  box-sizing:border-box!important;
  display:flex!important;
  flex-direction:column!important;
}
#simulator .sim176-num{
  align-self:flex-start!important;
  color:#fff!important;
  background:#0f62fe!important;
  border-radius:999px!important;
  padding:4px 12px!important;
  font-size:12px!important;
  font-weight:950!important;
}
#simulator .sim176-item.green .sim176-num{background:#0f9f5a!important}
#simulator .sim176-item.orange .sim176-num{background:#d97706!important}
#simulator .sim176-item.purple .sim176-num{background:#7c3aed!important}
#simulator .sim176-card h4{
  margin:14px 0 8px!important;
  color:#071b33!important;
  font-size:18px!important;
  line-height:1.18!important;
}
#simulator .sim176-card p{
  margin:0 0 14px!important;
  color:#475569!important;
  font-size:13px!important;
  line-height:1.35!important;
}
#simulator .sim176-date{
  color:#64748b!important;
  font-size:12.5px!important;
  margin-top:auto!important;
}
#simulator .sim176-sep{
  height:1px!important;
  background:#e2e8f0!important;
  margin:14px 0!important;
}
#simulator .sim176-card small{
  color:#64748b!important;
  font-size:11px!important;
  margin-bottom:8px!important;
}
#simulator .sim176-owner{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  margin-bottom:14px!important;
}
#simulator .sim176-owner span{
  width:34px!important;
  height:34px!important;
  border-radius:50%!important;
  display:grid!important;
  place-items:center!important;
  background:#dbeafe!important;
  color:#0f62fe!important;
  font-size:12px!important;
  font-weight:950!important;
}
#simulator .sim176-owner b{
  display:block!important;
  color:#071b33!important;
  font-size:13px!important;
}
#simulator .sim176-owner em{
  display:block!important;
  color:#64748b!important;
  font-size:12px!important;
  font-style:normal!important;
}
#simulator .sim176-status{
  border-radius:999px!important;
  padding:9px 12px!important;
  text-align:center!important;
  font-weight:950!important;
  font-size:12px!important;
}
#simulator .sim176-status.green{background:#dcfce7!important;color:#0f9f5a!important}
#simulator .sim176-status.orange{background:#ffedd5!important;color:#d97706!important}
#simulator .sim176-status.blue{background:#f0f7ff!important;color:#0f62fe!important}
#simulator .sim176-note{
  margin-top:22px!important;
  background:#f0f7ff!important;
  border:1px solid #e4eefb!important;
  border-radius:18px!important;
  padding:18px 22px!important;
  display:flex!important;
  justify-content:space-between!important;
  gap:18px!important;
  color:#475569!important;
}
#simulator .sim176-note b{color:#071b33!important}

/* Modal agregar hito */
.sim176-overlay{
  position:fixed!important;
  inset:0!important;
  background:rgba(7,27,51,.45)!important;
  z-index:99999!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:24px!important;
}
.sim176-modal{
  width:min(860px,96vw)!important;
  background:#fff!important;
  border-radius:24px!important;
  overflow:hidden!important;
  box-shadow:0 30px 80px rgba(7,27,51,.28)!important;
}
.sim176-modal-head{
  padding:20px 24px!important;
  background:linear-gradient(135deg,#071b33,#0f62fe)!important;
  color:#fff!important;
  display:flex!important;
  justify-content:space-between!important;
  align-items:center!important;
}
.sim176-modal-head h3{margin:0!important}
.sim176-modal-head button{
  width:36px!important;height:36px!important;border:0!important;border-radius:12px!important;
  background:rgba(255,255,255,.16)!important;color:#fff!important;font-size:24px!important;cursor:pointer!important;
}
.sim176-form{
  padding:22px 24px!important;
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:16px!important;
}
.sim176-form .full{grid-column:1/-1!important}
.sim176-form label{
  display:block!important;font-size:12px!important;font-weight:950!important;color:#334155!important;margin-bottom:7px!important;
}
.sim176-form input,.sim176-form select,.sim176-form textarea{
  width:100%!important;box-sizing:border-box!important;border:1px solid #cfe0f2!important;border-radius:12px!important;
  padding:12px 13px!important;font-weight:750!important;color:#071b33!important;outline:none!important;background:#fff!important;
}
.sim176-form textarea{min-height:90px!important;resize:vertical!important}
.sim176-modal-actions{
  padding:18px 24px 22px!important;background:#f8fbff!important;display:flex!important;justify-content:flex-end!important;gap:12px!important;
}
.sim176-modal-actions button{
  border:1px solid #cfe0f2!important;border-radius:12px!important;padding:12px 18px!important;font-weight:950!important;cursor:pointer!important;background:#fff!important;color:#0f62fe!important;
}
.sim176-modal-actions .primary{background:#0f62fe!important;color:#fff!important;border-color:#0f62fe!important}

@media(max-width:1300px){
  #simulator .sim176-items{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  #simulator .sim176-line{display:none!important}
}
@media(max-width:800px){
  #simulator .sim176-items{grid-template-columns:1fr!important}
  #simulator .sim176-note{flex-direction:column!important}
  .sim176-form{grid-template-columns:1fr!important}
}

/* ===== v177-procesos-criticos-matriz-valor-complejidad-only ===== */
/* V177 - SOLO Procesos Críticos: Matriz valor vs complejidad funcional y editable */
#critical .crit177-tabs span{
  cursor:pointer!important;
}
#critical .crit177-wide-grid{
  grid-template-columns:1fr!important;
}
#critical .crit177-hide-side{
  display:none!important;
}
#critical .crit177-matrix-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin:14px 0 20px;
}
#critical .crit177-matrix-head h3{
  margin:0 0 6px;
  color:#071b33;
  font-size:24px;
}
#critical .crit177-matrix-head p{
  margin:0;
  color:#64748b;
  font-size:14px;
}
#critical .crit177-matrix-actions{
  display:flex;
  gap:12px;
}
#critical .crit177-matrix-actions button,
#critical .crit177-matrix-actions select{
  border:1px solid #dbe7f3;
  background:#fff;
  color:#0f62fe;
  border-radius:12px;
  padding:10px 14px;
  font-weight:900;
}
#critical .crit177-matrix-layout{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(360px,.9fr);
  gap:20px;
  align-items:stretch;
}
#critical .crit177-quadrant-wrap{
  position:relative;
  padding:6px 0 0 46px;
}
#critical .crit177-axis-y{
  position:absolute;
  left:0;
  top:38px;
  bottom:68px;
  width:38px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  align-items:center;
  color:#071b33;
  font-size:12px;
  font-weight:900;
}
#critical .crit177-axis-y b{
  writing-mode:vertical-rl;
  transform:rotate(180deg);
  letter-spacing:.8px;
}
#critical .crit177-axis-x{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin:12px 22px 0 0;
  color:#071b33;
  font-size:12px;
  font-weight:900;
}
#critical .crit177-axis-x b{
  flex:1;
  text-align:center;
  letter-spacing:.8px;
}
#critical .crit177-quadrant{
  height:470px;
  border:1px solid #dbe7f3;
  border-radius:22px;
  overflow:hidden;
  position:relative;
  display:grid;
  grid-template-columns:1fr 1fr;
  grid-template-rows:1fr 1fr;
  background:#fff;
}
#critical .crit177-quadrant:before{
  content:"";
  position:absolute;
  top:50%;
  left:0;
  right:0;
  border-top:1px dashed #c7d7ea;
}
#critical .crit177-quadrant:after{
  content:"";
  position:absolute;
  left:50%;
  top:0;
  bottom:0;
  border-left:1px dashed #c7d7ea;
}
#critical .crit177-quadrant .q{
  padding:24px 28px;
}
#critical .crit177-quadrant .q h4{
  margin:0 0 6px;
  font-size:16px;
}
#critical .crit177-quadrant .q p{
  margin:0;
  color:#64748b;
  font-size:13px;
}
#critical .crit177-quadrant .q1{background:linear-gradient(135deg,#effdf5,#ffffff)}
#critical .crit177-quadrant .q2{background:linear-gradient(135deg,#eff6ff,#ffffff)}
#critical .crit177-quadrant .q3{background:linear-gradient(135deg,#fffbeb,#ffffff)}
#critical .crit177-quadrant .q4{background:linear-gradient(135deg,#fff1f2,#ffffff)}
#critical .crit177-quadrant .q1 h4{color:#0f9f5a}
#critical .crit177-quadrant .q2 h4{color:#0f62fe}
#critical .crit177-quadrant .q3 h4{color:#d97706}
#critical .crit177-quadrant .q4 h4{color:#e11d48}
#critical .crit177-dot{
  position:absolute;
  transform:translate(-50%,50%);
  z-index:3;
  width:34px;
  height:34px;
  border-radius:50%;
  border:3px solid rgba(255,255,255,.86);
  color:#fff;
  font-weight:950;
  cursor:pointer;
  box-shadow:0 12px 26px rgba(8,40,77,.18);
}
#critical .crit177-dot.green,#critical .crit177-num.green{background:#22c55e}
#critical .crit177-dot.blue,#critical .crit177-num.blue{background:#3b82f6}
#critical .crit177-dot.yellow,#critical .crit177-num.yellow{background:#facc15;color:#071b33}
#critical .crit177-dot.red,#critical .crit177-num.red{background:#fb7185}
#critical .crit177-legend{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:16px 0 0 6px;
}
#critical .crit177-legend span{
  border:1px solid #dbe7f3;
  background:#fff;
  border-radius:999px;
  padding:8px 12px;
  font-size:12px;
  color:#334155;
}
#critical .crit177-legend .green{color:#0f9f5a}
#critical .crit177-legend .blue{color:#0f62fe}
#critical .crit177-legend .yellow{color:#d97706}
#critical .crit177-legend .red{color:#e11d48}
#critical .crit177-list-card{
  border:1px solid #dbe7f3;
  border-radius:22px;
  padding:20px;
  background:#fff;
}
#critical .crit177-list-card h3{
  margin:0 0 16px;
  color:#071b33;
}
#critical .crit177-list{
  width:100%;
  border-collapse:collapse;
}
#critical .crit177-list th{
  color:#64748b;
  font-size:11px;
  text-transform:uppercase;
  text-align:left;
  padding:10px 8px;
}
#critical .crit177-list td{
  padding:11px 8px;
  border-top:1px solid #eef2f7;
  color:#071b33;
  font-size:13px;
}
#critical .crit177-num{
  display:inline-grid;
  place-items:center;
  width:28px;
  height:28px;
  border-radius:50%;
  color:#fff;
  font-weight:950;
}
#critical .crit177-priority{
  display:inline-flex;
  border-radius:999px;
  padding:7px 10px;
  font-size:11px;
  font-weight:950;
  white-space:nowrap;
}
#critical .crit177-priority.green{background:#dcfce7;color:#0f9f5a}
#critical .crit177-priority.blue{background:#dbeafe;color:#0f62fe}
#critical .crit177-priority.yellow{background:#fef3c7;color:#d97706}
#critical .crit177-priority.red{background:#ffe4e6;color:#e11d48}
#critical .crit177-list button{
  border:1px solid #b9d6ff;
  background:#f8fbff;
  color:#0f62fe;
  border-radius:9px;
  padding:7px 10px;
  font-weight:900;
  cursor:pointer;
}
#critical .crit177-summary{
  margin-top:18px;
  border:1px solid #dbe7f3;
  border-radius:18px;
  padding:16px;
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:14px;
  background:#fff;
}
#critical .crit177-summary div{
  display:flex;
  align-items:center;
  gap:12px;
}
#critical .crit177-summary span{
  width:42px;
  height:42px;
  border-radius:14px;
  display:grid;
  place-items:center;
  background:#eef6ff;
}
#critical .crit177-summary p{
  margin:0;
  color:#64748b;
  font-size:12px;
}
#critical .crit177-summary b{
  color:#071b33;
  font-size:22px;
}
#critical .crit177-empty{
  min-height:360px;
  display:grid;
  place-items:center;
  text-align:center;
  color:#64748b;
  background:#f8fbff;
  border:1px dashed #cfe0f2;
  border-radius:18px;
}
#critical .crit177-form{
  grid-template-columns:1fr 1fr!important;
}
@media(max-width:1300px){
  #critical .crit177-matrix-layout{grid-template-columns:1fr}
  #critical .crit177-summary{grid-template-columns:repeat(2,1fr)}
}

/* ===== v178-procesos-criticos-matriz-estetica-pro-only ===== */
/* V178 - SOLO Procesos Críticos: estética pro de Matriz valor vs complejidad */
#critical .crit177-wide-grid{
  grid-template-columns:1fr!important;
  width:100%!important;
  overflow:hidden!important;
}
#critical .crit177-wide-grid > .crit165-card{
  overflow:hidden!important;
}
#critical .crit177-matrix-head{
  align-items:flex-start!important;
  padding:4px 2px 8px!important;
}
#critical .crit177-matrix-head h3{
  font-size:22px!important;
  line-height:1.15!important;
  margin-bottom:8px!important;
}
#critical .crit177-matrix-head p{
  max-width:720px!important;
  line-height:1.35!important;
}
#critical .crit177-matrix-actions button,
#critical .crit177-matrix-actions select{
  min-width:150px!important;
  height:44px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
}
#critical .crit177-matrix-layout{
  grid-template-columns:minmax(0,1.22fr) minmax(420px,.78fr)!important;
  gap:18px!important;
  align-items:start!important;
  width:100%!important;
  box-sizing:border-box!important;
}
#critical .crit177-quadrant-wrap{
  min-width:0!important;
  padding-left:42px!important;
  padding-right:4px!important;
  box-sizing:border-box!important;
}
#critical .crit177-quadrant{
  height:445px!important;
  width:100%!important;
  box-sizing:border-box!important;
}
#critical .crit177-quadrant .q{
  padding:22px 24px!important;
  overflow:hidden!important;
}
#critical .crit177-quadrant .q h4{
  font-size:15px!important;
  line-height:1.15!important;
  max-width:88%!important;
}
#critical .crit177-quadrant .q p{
  font-size:12.2px!important;
  line-height:1.25!important;
  max-width:90%!important;
}
#critical .crit177-dot{
  width:32px!important;
  height:32px!important;
  font-size:13px!important;
  box-shadow:0 12px 24px rgba(8,40,77,.16)!important;
}
#critical .crit177-list-card{
  min-width:0!important;
  width:100%!important;
  box-sizing:border-box!important;
  padding:18px!important;
  overflow:hidden!important;
}
#critical .crit177-list-card h3{
  font-size:18px!important;
  margin-bottom:14px!important;
}
#critical .crit177-list{
  table-layout:fixed!important;
  width:100%!important;
}
#critical .crit177-list th,
#critical .crit177-list td{
  box-sizing:border-box!important;
}
#critical .crit177-list th{
  font-size:10px!important;
  padding:9px 6px!important;
  white-space:normal!important;
}
#critical .crit177-list td{
  padding:10px 6px!important;
  font-size:12.3px!important;
  line-height:1.25!important;
  vertical-align:middle!important;
}
#critical .crit177-list th:nth-child(1),
#critical .crit177-list td:nth-child(1){
  width:42px!important;
  text-align:center!important;
}
#critical .crit177-list th:nth-child(2),
#critical .crit177-list td:nth-child(2){
  width:31%!important;
}
#critical .crit177-list th:nth-child(3),
#critical .crit177-list td:nth-child(3){
  width:54px!important;
  text-align:center!important;
}
#critical .crit177-list th:nth-child(4),
#critical .crit177-list td:nth-child(4){
  width:78px!important;
  text-align:center!important;
}
#critical .crit177-list th:nth-child(5),
#critical .crit177-list td:nth-child(5){
  width:132px!important;
  text-align:center!important;
}
#critical .crit177-list th:nth-child(6),
#critical .crit177-list td:nth-child(6){
  width:76px!important;
  text-align:center!important;
}
#critical .crit177-num{
  width:28px!important;
  height:28px!important;
  font-size:12px!important;
}
#critical .crit177-priority{
  width:112px!important;
  max-width:112px!important;
  min-height:28px!important;
  padding:6px 8px!important;
  font-size:10.5px!important;
  line-height:1.05!important;
  white-space:normal!important;
  text-align:center!important;
  align-items:center!important;
  justify-content:center!important;
}
#critical .crit177-list button{
  width:64px!important;
  padding:7px 8px!important;
  font-size:11px!important;
  box-sizing:border-box!important;
}
#critical .crit177-legend{
  gap:8px!important;
  margin-top:14px!important;
}
#critical .crit177-legend span{
  padding:7px 10px!important;
  font-size:11.5px!important;
}
#critical .crit177-summary{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
  padding:14px!important;
}
#critical .crit177-summary div{
  min-width:0!important;
}
#critical .crit177-summary span{
  width:38px!important;
  height:38px!important;
  flex:0 0 auto!important;
}
#critical .crit177-summary b{
  font-size:20px!important;
}
#critical .crit177-tabs{
  align-items:center!important;
  gap:8px!important;
}
#critical .crit177-tabs span{
  font-size:14px!important;
  line-height:1.2!important;
}
@media(max-width:1450px){
  #critical .crit177-matrix-layout{
    grid-template-columns:1fr!important;
  }
  #critical .crit177-list-card{
    max-width:100%!important;
  }
  #critical .crit177-list th:nth-child(2),
  #critical .crit177-list td:nth-child(2){
    width:38%!important;
  }
}
@media(max-width:900px){
  #critical .crit177-matrix-head{
    flex-direction:column!important;
  }
  #critical .crit177-matrix-actions{
    width:100%!important;
  }
  #critical .crit177-matrix-actions button,
  #critical .crit177-matrix-actions select{
    width:100%!important;
  }
  #critical .crit177-quadrant-wrap{
    padding-left:34px!important;
    overflow-x:auto!important;
  }
  #critical .crit177-quadrant{
    min-width:720px!important;
  }
  #critical .crit177-axis-x{
    min-width:720px!important;
  }
  #critical .crit177-summary{
    grid-template-columns:1fr 1fr!important;
  }
}

/* ===== v179-procesos-criticos-matriz-fix-sobremontado-only ===== */
/* V179 - SOLO Matriz valor vs complejidad: corregir textos sobremontados y tabla lateral */

/* Más aire para el panel y proporción más limpia */
#critical .crit177-matrix-layout{
  grid-template-columns:minmax(0,1.1fr) minmax(520px,.9fr)!important;
  gap:24px!important;
}

/* Cuadrante: títulos protegidos para no chocar con puntos */
#critical .crit177-quadrant{
  height:470px!important;
}
#critical .crit177-quadrant .q{
  padding:26px 32px!important;
}
#critical .crit177-quadrant .q h4{
  font-size:15.5px!important;
  line-height:1.18!important;
  max-width:78%!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
}
#critical .crit177-quadrant .q p{
  max-width:80%!important;
  font-size:12.5px!important;
}

/* Aleja visualmente los puntos del texto interno */
#critical .crit177-dot{
  z-index:4!important;
}
#critical .crit177-quadrant .crit177-dot:nth-of-type(2){
  margin-top:28px!important;
  margin-left:22px!important;
}
#critical .crit177-quadrant .crit177-dot:nth-of-type(4){
  margin-top:10px!important;
  margin-left:18px!important;
}
#critical .crit177-quadrant .crit177-dot:nth-of-type(5){
  margin-left:12px!important;
}

/* Tabla lateral completamente legible */
#critical .crit177-list-card{
  padding:22px!important;
}
#critical .crit177-list{
  table-layout:fixed!important;
  width:100%!important;
}
#critical .crit177-list th,
#critical .crit177-list td{
  text-align:left!important;
  vertical-align:middle!important;
}
#critical .crit177-list th{
  font-size:10.5px!important;
  letter-spacing:.15px!important;
  padding:10px 8px!important;
}
#critical .crit177-list td{
  font-size:12.8px!important;
  padding:12px 8px!important;
}
#critical .crit177-list th:nth-child(1),
#critical .crit177-list td:nth-child(1){
  width:42px!important;
  text-align:center!important;
}
#critical .crit177-list th:nth-child(2),
#critical .crit177-list td:nth-child(2){
  width:34%!important;
}
#critical .crit177-list th:nth-child(3),
#critical .crit177-list td:nth-child(3){
  width:60px!important;
  text-align:center!important;
}
#critical .crit177-list th:nth-child(4),
#critical .crit177-list td:nth-child(4){
  width:86px!important;
  text-align:center!important;
}
#critical .crit177-list th:nth-child(5),
#critical .crit177-list td:nth-child(5){
  width:138px!important;
  text-align:center!important;
}
#critical .crit177-list th:nth-child(6),
#critical .crit177-list td:nth-child(6){
  width:80px!important;
  text-align:center!important;
}

/* Encabezados separados y sin montarse */
#critical .crit177-list th:nth-child(2)::after{
  content:""!important;
}
#critical .crit177-list td:nth-child(2){
  line-height:1.25!important;
  overflow-wrap:break-word!important;
}

/* Badges y botón dentro de margen */
#critical .crit177-priority{
  width:120px!important;
  max-width:120px!important;
  min-height:30px!important;
  margin:0 auto!important;
  display:inline-flex!important;
}
#critical .crit177-list button{
  width:66px!important;
  max-width:66px!important;
  margin:0 auto!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
}

/* Número redondo alineado */
#critical .crit177-num{
  margin:0 auto!important;
}

/* En pantallas no tan anchas, apila la tabla debajo de la matriz para evitar compresión */
@media(max-width:1550px){
  #critical .crit177-matrix-layout{
    grid-template-columns:1fr!important;
  }
  #critical .crit177-list-card{
    width:100%!important;
  }
  #critical .crit177-list th:nth-child(2),
  #critical .crit177-list td:nth-child(2){
    width:42%!important;
  }
}

/* Mantiene la matriz con scroll horizontal solo si la pantalla es muy pequeña */
@media(max-width:900px){
  #critical .crit177-quadrant{
    min-width:760px!important;
  }
}

/* ===== v180-procesos-criticos-matriz-nodos-limpios-only ===== */
/* V180 - SOLO Matriz valor vs complejidad: nodos sin sobreposición en títulos ni entre ellos */

/* Reserva visual para títulos de cuadrantes */
#critical .crit177-quadrant .q{
  position:relative!important;
}
#critical .crit177-quadrant .q h4,
#critical .crit177-quadrant .q p{
  position:relative!important;
  z-index:8!important;
  background:transparent!important;
}

/* Nodos siempre por encima del plano, pero separados de los títulos */
#critical .crit177-dot{
  z-index:12!important;
  transform:translate(-50%,50%)!important;
}

/* Ajuste manual fino por nodo para evitar choques visuales */
#critical .crit177-quadrant button.crit177-dot:nth-of-type(1){
  margin-left:0!important;
  margin-top:0!important;
}
#critical .crit177-quadrant button.crit177-dot:nth-of-type(2){
  margin-left:92px!important;
  margin-top:72px!important;
}
#critical .crit177-quadrant button.crit177-dot:nth-of-type(3){
  margin-left:26px!important;
  margin-top:34px!important;
}
#critical .crit177-quadrant button.crit177-dot:nth-of-type(4){
  margin-left:-52px!important;
  margin-top:46px!important;
}
#critical .crit177-quadrant button.crit177-dot:nth-of-type(5){
  margin-left:86px!important;
  margin-top:48px!important;
}
#critical .crit177-quadrant button.crit177-dot:nth-of-type(6){
  margin-left:54px!important;
  margin-top:18px!important;
}
#critical .crit177-quadrant button.crit177-dot:nth-of-type(7){
  margin-left:-46px!important;
  margin-top:-8px!important;
}
#critical .crit177-quadrant button.crit177-dot:nth-of-type(8){
  margin-left:0!important;
  margin-top:0!important;
}

/* Mejora de lectura donde antes los nodos caían sobre títulos */
#critical .crit177-quadrant .q4 h4,
#critical .crit177-quadrant .q4 p{
  max-width:72%!important;
}
#critical .crit177-quadrant .q2 h4,
#critical .crit177-quadrant .q2 p{
  max-width:68%!important;
}

/* Número más legible */
#critical .crit177-dot{
  box-shadow:0 14px 28px rgba(8,40,77,.18)!important;
  border-width:3px!important;
  font-size:13px!important;
  font-weight:950!important;
}

/* ===== v181-procesos-criticos-mapa-brechas-only ===== */
#critical .crit181-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin:14px 0 20px}
#critical .crit181-head h3{margin:0 0 6px;color:#071b33;font-size:24px}#critical .crit181-head p{margin:0;color:#64748b;font-size:14px}
#critical .crit181-actions{display:flex;gap:12px}#critical .crit181-actions button,#critical .crit181-actions select{border:1px solid #dbe7f3;background:#fff;color:#0f62fe;border-radius:12px;padding:10px 14px;font-weight:900}
#critical .crit181-layout{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(420px,.88fr);gap:20px}
#critical .crit181-card{border:1px solid #dbe7f3;border-radius:22px;padding:20px;background:#fff;box-shadow:0 12px 28px rgba(8,40,77,.05)}
#critical .crit181-card h4{margin:0 0 16px;color:#071b33;font-size:17px}
#critical .crit181-gap-table{width:100%;border-collapse:collapse;table-layout:fixed}
#critical .crit181-gap-table th{text-align:left;color:#334155;font-size:11px;text-transform:uppercase;padding:10px 8px;border-bottom:1px solid #e8f0f8}
#critical .crit181-gap-table td{padding:12px 8px;border-bottom:1px solid #eef2f7;vertical-align:middle;font-size:13px;color:#071b33}
#critical .crit181-gap-table th:nth-child(1),#critical .crit181-gap-table td:nth-child(1){width:38%}
#critical .crit181-gap-table th:nth-child(2),#critical .crit181-gap-table td:nth-child(2){width:36%}
#critical .crit181-gap-table th:nth-child(3),#critical .crit181-gap-table td:nth-child(3){width:12%;text-align:center}
#critical .crit181-gap-table th:nth-child(4),#critical .crit181-gap-table td:nth-child(4){width:14%;text-align:center}
#critical .crit181-dim{display:flex;align-items:center;gap:12px}#critical .crit181-dim span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center}
#critical .crit181-dim span.red{background:#fee2e2}#critical .crit181-dim span.orange{background:#ffedd5}#critical .crit181-dim span.yellow{background:#fef3c7}#critical .crit181-dim span.green{background:#dcfce7}
#critical .crit181-dim b{display:block;font-weight:950}#critical .crit181-dim small{display:block;color:#64748b;font-size:11.5px;margin-top:3px}
#critical .crit181-progress{display:inline-block;width:72%;height:8px;border-radius:999px;background:#e8eef6;margin-right:10px;vertical-align:middle;overflow:hidden}
#critical .crit181-progress i{display:block;height:100%;border-radius:999px}
#critical .crit181-progress i.red{background:#f43f5e}#critical .crit181-progress i.orange{background:#fb923c}#critical .crit181-progress i.yellow{background:#facc15}#critical .crit181-progress i.green{background:#22c55e}
#critical .crit181-gap-table em,#critical .crit181-gap-table strong{display:inline-flex;border-radius:10px;padding:7px 12px;font-style:normal;font-weight:950;font-size:12px}
#critical .crit181-gap-table em.red,#critical .crit181-gap-table strong.red{background:#fee2e2;color:#dc2626}#critical .crit181-gap-table em.orange,#critical .crit181-gap-table strong.orange{background:#ffedd5;color:#f97316}#critical .crit181-gap-table em.yellow,#critical .crit181-gap-table strong.yellow{background:#fef3c7;color:#ca8a04}#critical .crit181-gap-table em.green,#critical .crit181-gap-table strong.green{background:#dcfce7;color:#0f9f5a}
#critical .crit181-legend{display:flex;flex-wrap:wrap;gap:16px;margin-top:16px;color:#64748b;font-size:12px}
#critical .crit181-legend .red{color:#dc2626}.crit181-legend .orange{color:#f97316}.crit181-legend .yellow{color:#ca8a04}.crit181-legend .green{color:#0f9f5a}
#critical .crit181-side{display:grid;gap:18px}.crit181-summary-top{display:grid;grid-template-columns:130px 1fr 220px;gap:18px;align-items:center}
#critical .crit181-ring{width:122px;height:122px;border-radius:50%;background:conic-gradient(#0f62fe var(--pct),#e2e8f0 0);display:grid;place-items:center}
#critical .crit181-ring span{width:78px;height:78px;border-radius:50%;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center}
#critical .crit181-ring b{font-size:30px;color:#071b33}.crit181-ring small{font-size:14px;color:#64748b;font-weight:900}
#critical .crit181-summary-top p{margin:6px 0;color:#071b33;font-weight:900}#critical .crit181-summary-top label{display:inline-flex;background:#dbeafe;color:#0f62fe;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:950}#critical .crit181-summary-top em{display:inline-flex;background:#fee2e2;color:#dc2626;border-radius:999px;padding:7px 12px;font-size:12px;font-weight:950;font-style:normal}
#critical .crit181-radar{width:220px;height:190px}#critical .crit181-radar circle{fill:none;stroke:#dbe7f3;stroke-width:1}.crit181-radar-axis{stroke:#e2e8f0;stroke-width:1}.crit181-radar polygon{fill:rgba(15,98,254,.18);stroke:#0f62fe;stroke-width:3}.crit181-radar-label{font-size:8.5px;fill:#334155;text-anchor:middle;font-weight:800}
#critical .crit181-insights{display:grid;gap:16px;margin-bottom:18px}.crit181-insights div{display:flex;gap:14px;align-items:flex-start}.crit181-insights span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;flex:0 0 auto}.crit181-insights span.red{background:#fee2e2}.crit181-insights span.orange{background:#ffedd5}.crit181-insights span.green{background:#dcfce7}.crit181-insights p{margin:0}.crit181-insights b{display:block;color:#071b33}.crit181-insights small{display:block;color:#64748b;line-height:1.35;margin-top:4px}
#critical .crit181-rec{background:#fff5f5;border:1px solid #fecaca;border-radius:16px;padding:16px}.crit181-rec h5{margin:0 0 8px;color:#dc2626;font-size:15px}.crit181-rec p{margin:0 0 10px;color:#475569;line-height:1.35}.crit181-rec ul{margin:8px 0 14px;padding-left:18px;color:#475569}.crit181-rec button{width:100%;border:0;background:#0f62fe;color:#fff;border-radius:10px;padding:11px 14px;font-weight:950;cursor:pointer}
#critical .crit181-note{margin-top:18px;background:#f0f7ff;border:1px solid #dbe7f3;border-radius:16px;padding:14px 16px;color:#64748b;font-size:13px}
@media(max-width:1300px){#critical .crit181-layout{grid-template-columns:1fr}#critical .crit181-summary-top{grid-template-columns:130px 1fr}#critical .crit181-radar{grid-column:1/-1;margin:auto}}

/* ===== v182-procesos-criticos-mapa-brechas-estetica-editar-only ===== */
/* V182 - SOLO Procesos Críticos: Mapa de brechas pro + edición */

/* La vista de mapa debe ocupar el ancho completo, sin panel lateral del resumen de impacto */
#critical .crit177-wide-grid:has(.crit181-layout){
  grid-template-columns:1fr!important;
}
#critical .crit177-wide-grid:has(.crit181-layout) > div:last-child,
#critical .crit177-wide-grid .crit177-hide-side{
  display:none!important;
}

/* Encabezado más limpio */
#critical .crit181-head{
  align-items:flex-start!important;
  margin:16px 0 22px!important;
  padding-right:2px!important;
}
#critical .crit181-head h3{
  font-size:26px!important;
  line-height:1.1!important;
}
#critical .crit181-head p{
  max-width:760px!important;
  line-height:1.35!important;
}
#critical .crit181-actions{
  flex-wrap:wrap!important;
  justify-content:flex-end!important;
}
#critical .crit181-actions button,
#critical .crit181-actions select{
  min-height:44px!important;
  border-radius:14px!important;
  box-shadow:0 10px 22px rgba(8,40,77,.04)!important;
}

/* Layout balanceado y sin sobreposición */
#critical .crit181-layout{
  grid-template-columns:minmax(620px,1.08fr) minmax(520px,.92fr)!important;
  gap:22px!important;
  align-items:start!important;
}
#critical .crit181-card{
  overflow:hidden!important;
}

/* Tabla izquierda más gerencial */
#critical .crit181-gap-table{
  table-layout:fixed!important;
}
#critical .crit181-gap-table th{
  letter-spacing:.15px!important;
}
#critical .crit181-gap-table th:nth-child(1),
#critical .crit181-gap-table td:nth-child(1){width:36%!important}
#critical .crit181-gap-table th:nth-child(2),
#critical .crit181-gap-table td:nth-child(2){width:36%!important}
#critical .crit181-gap-table th:nth-child(3),
#critical .crit181-gap-table td:nth-child(3){width:13%!important;text-align:center!important}
#critical .crit181-gap-table th:nth-child(4),
#critical .crit181-gap-table td:nth-child(4){width:15%!important;text-align:center!important}
#critical .crit181-progress{
  width:64%!important;
  max-width:220px!important;
}
#critical .crit181-gap-table td:nth-child(2) b{
  display:inline-block!important;
  min-width:48px!important;
  text-align:left!important;
}

/* Panel derecho: resumen arriba y radar no invade */
#critical .crit181-side{
  display:grid!important;
  gap:18px!important;
}
#critical .crit181-summary-top{
  grid-template-columns:120px minmax(145px,1fr) 210px!important;
  gap:16px!important;
  align-items:center!important;
}
#critical .crit181-radar{
  width:210px!important;
  height:184px!important;
  justify-self:end!important;
  overflow:visible!important;
}
#critical .crit181-radar-label{
  font-size:7.6px!important;
}

/* Insights más compactos */
#critical .crit181-insights{
  grid-template-columns:1fr!important;
  gap:14px!important;
}
#critical .crit181-rec{
  margin-top:4px!important;
}

/* Nota inferior */
#critical .crit181-note{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
}

/* Modal de edición */
.crit182-overlay{
  position:fixed!important;
  inset:0!important;
  z-index:99999!important;
  background:rgba(7,27,51,.45)!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:24px!important;
}
.crit182-modal{
  width:min(760px,96vw)!important;
  background:#fff!important;
  border-radius:24px!important;
  overflow:hidden!important;
  box-shadow:0 30px 80px rgba(7,27,51,.28)!important;
  border:1px solid #dbe7f3!important;
}
.crit182-modal-head{
  background:linear-gradient(135deg,#071b33,#0f62fe)!important;
  color:#fff!important;
  padding:20px 24px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
}
.crit182-modal-head h3{margin:0!important;font-size:22px!important}
.crit182-modal-head button{
  width:36px!important;height:36px!important;border:0!important;border-radius:12px!important;
  background:rgba(255,255,255,.16)!important;color:#fff!important;font-size:24px!important;cursor:pointer!important;
}
.crit182-form{
  padding:22px 24px!important;
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:14px!important;
  max-height:62vh!important;
  overflow:auto!important;
}
.crit182-row{
  border:1px solid #dbe7f3!important;
  border-radius:16px!important;
  padding:14px!important;
  display:grid!important;
  grid-template-columns:1fr 80px 42px!important;
  gap:10px!important;
  align-items:center!important;
  background:#f8fbff!important;
}
.crit182-row b{display:block!important;color:#071b33!important}
.crit182-row small{display:block!important;color:#64748b!important;font-size:11px!important;margin-top:3px!important}
.crit182-row input{
  width:80px!important;
  border:1px solid #cfe0f2!important;
  border-radius:10px!important;
  padding:10px!important;
  font-weight:900!important;
  text-align:center!important;
}
.crit182-row span{color:#64748b!important;font-weight:900!important}
.crit182-modal-actions{
  padding:18px 24px 22px!important;
  background:#f8fbff!important;
  display:flex!important;
  justify-content:flex-end!important;
  gap:12px!important;
}
.crit182-modal-actions button{
  border:1px solid #cfe0f2!important;
  border-radius:12px!important;
  padding:12px 18px!important;
  font-weight:950!important;
  cursor:pointer!important;
  background:#fff!important;
  color:#0f62fe!important;
}
.crit182-modal-actions .primary{
  background:#0f62fe!important;
  color:#fff!important;
  border-color:#0f62fe!important;
}

/* Responsivo seguro */
@media(max-width:1500px){
  #critical .crit181-layout{
    grid-template-columns:1fr!important;
  }
  #critical .crit181-summary-top{
    grid-template-columns:130px 1fr 260px!important;
  }
  #critical .crit181-radar{
    width:240px!important;
    justify-self:end!important;
  }
}
@media(max-width:900px){
  #critical .crit181-head{
    flex-direction:column!important;
  }
  #critical .crit181-actions{
    width:100%!important;
    justify-content:flex-start!important;
  }
  #critical .crit181-summary-top{
    grid-template-columns:1fr!important;
    text-align:center!important;
  }
  #critical .crit181-ring,
  #critical .crit181-radar{
    justify-self:center!important;
    margin:auto!important;
  }
  .crit182-form{
    grid-template-columns:1fr!important;
  }
}

/* ===== v184-procesos-criticos-mapa-brechas-layout-pro-only ===== */
/* V184 - SOLO Procesos Críticos / Mapa de Brechas: layout pro sin superposición */

/* Cuando está activo Mapa de brechas, elimina el panel lateral externo y usa todo el ancho */
#critical .crit177-wide-grid{
  grid-template-columns:1fr!important;
}
#critical .crit177-hide-side{
  display:none!important;
}

/* Contenedor principal del mapa */
#critical .crit181-layout{
  display:grid!important;
  grid-template-columns:minmax(620px,1.05fr) minmax(520px,.95fr)!important;
  gap:24px!important;
  align-items:start!important;
  width:100%!important;
  box-sizing:border-box!important;
}
#critical .crit181-card{
  width:100%!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}

/* Encabezado del mapa más ordenado */
#critical .crit181-head{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:start!important;
  gap:18px!important;
}
#critical .crit181-actions{
  display:flex!important;
  flex-wrap:wrap!important;
  justify-content:flex-end!important;
  max-width:420px!important;
}
#critical .crit181-actions button,
#critical .crit181-actions select{
  min-width:160px!important;
  max-width:200px!important;
}

/* Tabla izquierda: evita columnas apretadas */
#critical .crit181-gap-table th:nth-child(1),
#critical .crit181-gap-table td:nth-child(1){
  width:40%!important;
}
#critical .crit181-gap-table th:nth-child(2),
#critical .crit181-gap-table td:nth-child(2){
  width:34%!important;
}
#critical .crit181-gap-table th:nth-child(3),
#critical .crit181-gap-table td:nth-child(3){
  width:12%!important;
  text-align:center!important;
}
#critical .crit181-gap-table th:nth-child(4),
#critical .crit181-gap-table td:nth-child(4){
  width:14%!important;
  text-align:center!important;
}
#critical .crit181-progress{
  width:58%!important;
  max-width:190px!important;
}
#critical .crit181-gap-table td:nth-child(2) b{
  display:inline-block!important;
  width:52px!important;
  text-align:left!important;
}

/* Panel derecho: resumen y radar sin montarse */
#critical .crit181-side{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:18px!important;
}
#critical .crit181-summary-top{
  display:grid!important;
  grid-template-columns:130px minmax(150px,1fr) 260px!important;
  gap:18px!important;
  align-items:center!important;
}
#critical .crit181-summary-top > div:nth-child(2){
  min-width:0!important;
}
#critical .crit181-radar{
  width:250px!important;
  height:205px!important;
  justify-self:end!important;
  overflow:visible!important;
}
#critical .crit181-radar-label{
  font-size:7.5px!important;
}

/* Insights más ejecutivo y sin invadir el panel derecho */
#critical .crit181-insights{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:14px!important;
}
#critical .crit181-insights div{
  min-width:0!important;
}
#critical .crit181-rec{
  margin-top:8px!important;
}

/* Botón editar claro y funcional */
#critical .crit181-actions button:first-child{
  background:#f8fbff!important;
  color:#0f62fe!important;
  border-color:#b9d6ff!important;
}

/* Responsivo seguro */
@media(max-width:1500px){
  #critical .crit181-layout{
    grid-template-columns:1fr!important;
  }
  #critical .crit181-summary-top{
    grid-template-columns:130px minmax(180px,1fr) 280px!important;
  }
  #critical .crit181-radar{
    width:270px!important;
  }
}
@media(max-width:900px){
  #critical .crit181-head{
    grid-template-columns:1fr!important;
  }
  #critical .crit181-actions{
    justify-content:flex-start!important;
    max-width:100%!important;
  }
  #critical .crit181-summary-top{
    grid-template-columns:1fr!important;
    text-align:center!important;
  }
  #critical .crit181-ring,
  #critical .crit181-radar{
    justify-self:center!important;
    margin:auto!important;
  }
}

/* ===== v185-procesos-criticos-radar-no-cortado-only ===== */
/* V185 - SOLO Mapa de brechas: radar completo sin recorte */
#critical .crit181-summary-top{
  grid-template-columns:130px minmax(150px,1fr) 320px!important;
}
#critical .crit181-radar{
  width:310px!important;
  height:250px!important;
  justify-self:center!important;
  overflow:visible!important;
}
#critical .crit181-radar-label{
  font-size:7.2px!important;
}
#critical .crit181-card{
  overflow:visible!important;
}
#critical .crit181-side .crit181-card:first-child{
  overflow:visible!important;
  padding-right:26px!important;
}
@media(max-width:1500px){
  #critical .crit181-summary-top{
    grid-template-columns:130px minmax(180px,1fr) 320px!important;
  }
  #critical .crit181-radar{
    width:310px!important;
    height:250px!important;
  }
}
@media(max-width:900px){
  #critical .crit181-summary-top{
    grid-template-columns:1fr!important;
  }
  #critical .crit181-radar{
    width:300px!important;
    height:245px!important;
    margin:auto!important;
  }
}

/* ===== v186-procesos-criticos-radar-scroll-only ===== */
/* V186 - SOLO Mapa de brechas: radar con desplazamiento horizontal sin afectar otros módulos */
#critical .crit181-side .crit181-card:first-child{
  overflow:hidden!important;
}
#critical .crit181-summary-top{
  grid-template-columns:130px minmax(160px,1fr) minmax(330px,360px)!important;
  gap:18px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  padding-bottom:10px!important;
  scrollbar-width:thin!important;
}
#critical .crit181-summary-top::-webkit-scrollbar{
  height:8px!important;
}
#critical .crit181-summary-top::-webkit-scrollbar-track{
  background:#eef6ff!important;
  border-radius:999px!important;
}
#critical .crit181-summary-top::-webkit-scrollbar-thumb{
  background:#b9d6ff!important;
  border-radius:999px!important;
}
#critical .crit181-radar{
  width:330px!important;
  min-width:330px!important;
  height:255px!important;
  justify-self:start!important;
  overflow:visible!important;
}
#critical .crit181-radar-label{
  font-size:6.9px!important;
}
@media(max-width:1500px){
  #critical .crit181-summary-top{
    grid-template-columns:130px minmax(180px,1fr) minmax(330px,360px)!important;
  }
  #critical .crit181-radar{
    width:330px!important;
    min-width:330px!important;
  }
}
@media(max-width:900px){
  #critical .crit181-summary-top{
    grid-template-columns:130px 180px 330px!important;
    text-align:left!important;
  }
}

/* ===== v187-procesos-criticos-mapa-brechas-botones-funcionales-only ===== */
/* V187 - SOLO Mapa de Brechas: funcionalidad de Metodología, Dimensión y Nivel */
#critical .crit187-actions{
  max-width:620px!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(180px,1fr))!important;
  gap:10px!important;
}
#critical .crit187-actions button,
#critical .crit187-actions select{
  width:100%!important;
  max-width:none!important;
  min-height:44px!important;
  box-sizing:border-box!important;
}
#critical .crit187-active{
  display:inline-flex!important;
  margin-top:10px!important;
  padding:7px 12px!important;
  border-radius:999px!important;
  background:#f0f7ff!important;
  color:#0f62fe!important;
  font-weight:900!important;
  border:1px solid #dbe7f3!important;
}
#critical .crit187-empty-filter{
  padding:24px!important;
  text-align:center!important;
  color:#64748b!important;
  background:#f8fbff!important;
  border-radius:14px!important;
  font-weight:850!important;
}

/* Modal metodología */
.crit187-overlay{
  position:fixed!important;
  inset:0!important;
  z-index:99999!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:24px!important;
  background:rgba(7,27,51,.45)!important;
}
.crit187-modal{
  width:min(780px,96vw)!important;
  background:#fff!important;
  border-radius:24px!important;
  overflow:hidden!important;
  box-shadow:0 30px 80px rgba(7,27,51,.28)!important;
  border:1px solid #dbe7f3!important;
}
.crit187-modal-head{
  padding:20px 24px!important;
  display:flex!important;
  justify-content:space-between!important;
  align-items:center!important;
  background:linear-gradient(135deg,#071b33,#0f62fe)!important;
  color:#fff!important;
}
.crit187-modal-head h3{
  margin:0!important;
  font-size:22px!important;
}
.crit187-modal-head button{
  width:36px!important;
  height:36px!important;
  border:0!important;
  border-radius:12px!important;
  background:rgba(255,255,255,.16)!important;
  color:#fff!important;
  font-size:24px!important;
  cursor:pointer!important;
}
.crit187-method-body{
  padding:22px 24px!important;
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:14px!important;
}
.crit187-method-card{
  border:1px solid #dbe7f3!important;
  border-radius:16px!important;
  padding:16px!important;
  background:#f8fbff!important;
}
.crit187-method-card b{
  color:#071b33!important;
  display:block!important;
  margin-bottom:8px!important;
}
.crit187-method-card p{
  margin:0!important;
  color:#475569!important;
  line-height:1.4!important;
}
.crit187-modal-actions{
  padding:18px 24px 22px!important;
  display:flex!important;
  justify-content:flex-end!important;
  background:#f8fbff!important;
}
.crit187-modal-actions button{
  border:0!important;
  border-radius:12px!important;
  padding:12px 18px!important;
  font-weight:950!important;
  color:#fff!important;
  background:#0f62fe!important;
  cursor:pointer!important;
}
@media(max-width:900px){
  #critical .crit187-actions{
    grid-template-columns:1fr!important;
  }
  .crit187-method-body{
    grid-template-columns:1fr!important;
  }
}

/* ===== v188-arquitectura-botones-estetica-pro-only ===== */
/* V188 - SOLO Arquitectura detalle: estética premium para botones sin tocar funcionalidad */

/* Botones superiores de gestión */
#architecture button,
#architecture .arch66-clear,
#architecture .arch123-add,
#architecture .sim123-add,
#architecture [onclick*="architecture"],
#architecture [onclick*="arch"]{
  font-family:inherit!important;
}

/* Botones dentro de tarjetas de herramientas */
#architecture .sim123-tool button,
#architecture .arch123-tool button,
#architecture .arch66-tool button,
#architecture .sim123-tool .btn,
#architecture .arch123-tool .btn{
  min-height:34px!important;
  border-radius:12px!important;
  padding:8px 12px!important;
  font-size:12px!important;
  font-weight:950!important;
  line-height:1!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  white-space:nowrap!important;
  box-sizing:border-box!important;
  box-shadow:0 8px 18px rgba(8,40,77,.06)!important;
}

/* Restaurar estética de editar */
#architecture .sim123-tool button:first-of-type,
#architecture .arch123-tool button:first-of-type,
#architecture .arch66-tool button:first-of-type{
  background:linear-gradient(180deg,#f8fbff,#eef6ff)!important;
  color:#0f62fe!important;
  border:1px solid #b9d6ff!important;
}

/* Botón eliminar */
#architecture .sim123-tool button[onclick*="delete"],
#architecture .sim123-tool button[onclick*="Delete"],
#architecture .sim123-tool button[onclick*="eliminar"],
#architecture .arch123-tool button[onclick*="delete"],
#architecture .arch66-tool button[onclick*="delete"],
#architecture .sim123-tool .danger,
#architecture .arch123-tool .danger{
  background:#fff7f7!important;
  color:#dc2626!important;
  border:1px solid #fecaca!important;
}

/* Badges de estado: texto limpio, centrado y sin montarse */
#architecture .sim123-status,
#architecture .arch123-status,
#architecture .arch66-status,
#architecture .sim123-tool .status,
#architecture .arch123-tool .status{
  min-height:34px!important;
  border-radius:999px!important;
  padding:8px 12px!important;
  font-size:12px!important;
  font-weight:950!important;
  line-height:1.05!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  white-space:nowrap!important;
  box-sizing:border-box!important;
  max-width:100%!important;
  box-shadow:0 8px 18px rgba(8,40,77,.05)!important;
}

/* Contenedor de acciones dentro de cada herramienta: grid ordenado */
#architecture .sim123-actions,
#architecture .arch123-actions,
#architecture .arch66-actions,
#architecture .sim123-tool-actions,
#architecture .arch123-tool-actions{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:8px!important;
  align-items:center!important;
  margin-top:10px!important;
}
#architecture .sim123-actions > *,
#architecture .arch123-actions > *,
#architecture .arch66-actions > *,
#architecture .sim123-tool-actions > *,
#architecture .arch123-tool-actions > *{
  width:100%!important;
}

/* Si no existe contenedor de acciones, mejora el flujo visual de botones directos */
#architecture .sim123-tool,
#architecture .arch123-tool,
#architecture .arch66-tool{
  overflow:hidden!important;
}
#architecture .sim123-tool button,
#architecture .arch123-tool button,
#architecture .arch66-tool button,
#architecture .sim123-status,
#architecture .arch123-status,
#architecture .arch66-status{
  margin:4px 3px!important;
  vertical-align:middle!important;
}

/* Tarjetas más limpias para que los botones respiren */
#architecture .sim123-tool,
#architecture .arch123-tool,
#architecture .arch66-tool{
  padding:15px!important;
  border-radius:18px!important;
}
#architecture .sim123-tool-title,
#architecture .arch123-tool-title,
#architecture .arch66-tool-title{
  line-height:1.15!important;
  margin-bottom:5px!important;
}
#architecture .sim123-tool-sub,
#architecture .arch123-tool-sub,
#architecture .arch66-tool-sub{
  line-height:1.25!important;
  margin-bottom:9px!important;
}

/* Botones grandes + Agregar herramienta / + Agregar */
#architecture button[onclick*="add"],
#architecture button[onclick*="Add"],
#architecture .sim123-add,
#architecture .arch123-add,
#architecture .arch66-add{
  border-radius:14px!important;
  font-weight:950!important;
  min-height:42px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
}

/* Pestañas de arquitectura */
#architecture .tabs button,
#architecture .arch-tabs button,
#architecture .arch66-tabs button{
  border-radius:999px!important;
  padding:10px 16px!important;
  font-weight:950!important;
  line-height:1!important;
}

/* Botones de cabecera: PDF, volver, eliminar arquitectura */
#architecture > div:first-child button,
#architecture .arch66-top button,
#architecture .arch123-top button{
  min-height:40px!important;
  border-radius:14px!important;
  padding:10px 14px!important;
  font-weight:950!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
}

/* Evita que flechas o líneas tapen botones */
#architecture svg,
#architecture .arch-line,
#architecture .sim123-line{
  pointer-events:none!important;
}

/* Ajuste responsivo seguro */
@media(max-width:1300px){
  #architecture .sim123-actions,
  #architecture .arch123-actions,
  #architecture .arch66-actions,
  #architecture .sim123-tool-actions,
  #architecture .arch123-tool-actions{
    grid-template-columns:1fr!important;
  }
  #architecture .sim123-tool button,
  #architecture .arch123-tool button,
  #architecture .arch66-tool button,
  #architecture .sim123-status,
  #architecture .arch123-status,
  #architecture .arch66-status{
    width:100%!important;
  }
}

/* ===== v189-arquitectura-botones-compactos-pro-only ===== */
/* V189 - SOLO Arquitectura detalle: botones compactos, alineados y sin montarse */

#architecture .sim123-tool,
#architecture .arch123-tool,
#architecture .arch66-tool{
  padding:14px 14px 16px!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}

#architecture .sim123-tool button,
#architecture .arch123-tool button,
#architecture .arch66-tool button,
#architecture .sim123-status,
#architecture .arch123-status,
#architecture .arch66-status{
  width:auto!important;
  max-width:100%!important;
  min-width:0!important;
  min-height:30px!important;
  height:30px!important;
  padding:6px 10px!important;
  margin:3px 4px 3px 0!important;
  border-radius:10px!important;
  font-size:11.5px!important;
  font-weight:850!important;
  line-height:1!important;
  letter-spacing:0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:5px!important;
  white-space:nowrap!important;
  box-sizing:border-box!important;
  box-shadow:none!important;
  vertical-align:middle!important;
}

#architecture .sim123-status,
#architecture .arch123-status,
#architecture .arch66-status{
  font-size:11.5px!important;
  font-weight:900!important;
  padding:6px 11px!important;
  border-radius:999px!important;
}

#architecture .sim123-tool button:first-of-type,
#architecture .arch123-tool button:first-of-type,
#architecture .arch66-tool button:first-of-type{
  background:#eef6ff!important;
  color:#0f62fe!important;
  border:1px solid #b9d6ff!important;
}

#architecture .sim123-tool button:last-of-type,
#architecture .arch123-tool button:last-of-type,
#architecture .arch66-tool button:last-of-type{
  background:#fff7f7!important;
  color:#dc2626!important;
  border:1px solid #fecaca!important;
}

#architecture .sim123-tool > div,
#architecture .arch123-tool > div,
#architecture .arch66-tool > div{
  max-width:100%!important;
}

#architecture .sim123-tool hr,
#architecture .arch123-tool hr,
#architecture .arch66-tool hr{
  margin:10px 0!important;
}

#architecture .sim123-tool-title,
#architecture .arch123-tool-title,
#architecture .arch66-tool-title{
  font-size:14px!important;
  line-height:1.12!important;
  margin-bottom:4px!important;
}

#architecture .sim123-tool-sub,
#architecture .arch123-tool-sub,
#architecture .arch66-tool-sub{
  font-size:11.5px!important;
  line-height:1.22!important;
  margin-bottom:8px!important;
}

#architecture .sim123-col button,
#architecture .arch123-col button,
#architecture .arch66-col button{
  font-size:12.5px!important;
}

#architecture .sim123-add,
#architecture .arch123-add,
#architecture .arch66-add{
  white-space:nowrap!important;
}

#architecture button[onclick*="add"],
#architecture button[onclick*="Add"]{
  border-radius:12px!important;
  font-size:12.5px!important;
  font-weight:900!important;
}

#architecture svg,
#architecture .sim123-line,
#architecture .arch123-line,
#architecture .arch66-line{
  pointer-events:none!important;
}

@media(max-width:1500px){
  #architecture .sim123-tool button,
  #architecture .arch123-tool button,
  #architecture .arch66-tool button,
  #architecture .sim123-status,
  #architecture .arch123-status,
  #architecture .arch66-status{
    font-size:11px!important;
    padding:6px 8px!important;
  }
}

/* ===== v193-arquitectura-solo-dos-titulos-long-safe ===== */
/* V193 - SOLO Arquitectura: ajustar títulos de dos tarjetas específicas */
#architecture .ee-arch-long-card{
  grid-template-columns:38px minmax(0,1fr)!important;
  gap:8px!important;
}
#architecture .ee-arch-long-card .tool-logo-v69{
  width:38px!important;
  height:38px!important;
  border-radius:12px!important;
  font-size:20px!important;
}
#architecture .ee-arch-long-title{
  display:block!important;
  max-width:96px!important;
  font-size:12px!important;
  line-height:1.12!important;
  letter-spacing:-0.25px!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  hyphens:none!important;
  box-sizing:border-box!important;
}
#architecture .ee-arch-long-title + span{
  font-size:10.5px!important;
  line-height:1.2!important;
}
@media(min-width:1500px){
  #architecture .ee-arch-long-title{
    max-width:104px!important;
    font-size:12.2px!important;
  }
}

/* ===== v194-simulador-arquitectura-igual-modulo-only ===== */
#simulator .sim123-arch-card.ee-sim-arch-v194{
  border:1px solid #dbe7f3!important;border-radius:26px!important;background:#fff!important;
  padding:24px!important;box-shadow:0 18px 50px rgba(15,23,42,.06)!important;
}
#simulator .ee-sim-arch-v194 .sim123-arch-head{
  display:grid!important;grid-template-columns:auto 1fr auto!important;gap:18px!important;
  align-items:center!important;padding:0 0 18px!important;margin-bottom:22px!important;border-bottom:1px solid #e8f0f8!important;
}
#simulator .ee-sim-arch-v194 .sim123-arch-head img{
  width:72px!important;height:72px!important;object-fit:contain!important;border:1px solid #dbe7f3!important;
  border-radius:18px!important;padding:8px!important;background:#fff!important;
}
#simulator .ee-sim-arch-v194 .sim123-arch-head b{font-size:22px!important;color:#071b33!important}
#simulator .ee-sim-arch-v194 .sim123-arch-head span{display:block!important;margin-top:6px!important;color:#64748b!important;font-size:14px!important}
#simulator .ee-sim-arch-v194 .sim123-legend{display:flex!important;gap:18px!important;flex-wrap:wrap!important;align-items:center!important;color:#334155!important;font-size:13px!important}
#simulator .ee-sim-arch-v194 .sim123-arch-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:26px!important;align-items:stretch!important}
#simulator .ee-sim-arch-v194 .sim123-col{
  border:1px solid #dbe7f3!important;border-radius:22px!important;padding:22px!important;background:linear-gradient(180deg,#fff,#f8fbff)!important;min-height:390px!important;
}
#simulator .ee-sim-arch-v194 .sim123-col h4{text-align:center!important;text-transform:uppercase!important;color:#0f3d83!important;font-size:13px!important;letter-spacing:.2px!important;margin:0 0 18px!important}
#simulator .ee-sim-arch-v194 .sim123-tool{
  border:1px solid #dbe7f3!important;border-radius:18px!important;padding:20px!important;margin-bottom:18px!important;min-height:155px!important;background:#fff!important;box-shadow:0 10px 26px rgba(15,23,42,.035)!important;
}
#simulator .ee-sim-arch-v194 .sim123-tool.manual{border-color:#fed7aa!important;background:#fffaf4!important}
#simulator .ee-sim-arch-v194 .sim123-tool.offline{border-color:#fecaca!important;background:#fff7f7!important}
#simulator .ee-sim-arch-v194 .sim123-tool.connected{border-color:#bbf7d0!important;background:#f8fffb!important}
#simulator .ee-sim-arch-v194 .sim123-tool-title{font-size:19px!important;line-height:1.12!important;font-weight:950!important;color:#071b33!important;margin-bottom:10px!important}
#simulator .ee-sim-arch-v194 .sim123-tool-sub{color:#64748b!important;font-size:14px!important;line-height:1.3!important;min-height:34px!important}
#simulator .ee-sim-arch-v194 .sim123-status{margin-top:16px!important;min-height:34px!important;border-radius:999px!important;padding:8px 14px!important;font-size:13px!important;font-weight:950!important}
#simulator .ee-sim-arch-v194 .ee-sim-tool-actions-v194{
  display:flex!important;gap:10px!important;flex-wrap:wrap!important;padding-top:14px!important;margin-top:14px!important;border-top:1px solid #e8f0f8!important;
}
#simulator .ee-sim-arch-v194 .ee-sim-tool-actions-v194 button{
  min-height:38px!important;border-radius:13px!important;border:1px solid #b9d6ff!important;background:#eef6ff!important;color:#0f62fe!important;font-weight:950!important;padding:8px 14px!important;cursor:pointer!important;
}
#simulator .ee-sim-arch-v194 .ee-sim-tool-actions-v194 button.del{background:#fff7f7!important;color:#dc2626!important;border-color:#fecaca!important}
#simulator .ee-sim-arch-v194 .ee-sim-tool-actions-v194 button.status{background:#f8fbff!important;color:#334155!important;border-color:#dbe7f3!important}
#simulator .ee-sim-arch-v194 .ee-sim-arch-add-v194{
  border:1px dashed #cbd5e1!important;border-radius:18px!important;padding:17px!important;text-align:center!important;color:#0f62fe!important;font-weight:950!important;background:#fbfdff!important;cursor:pointer!important;margin-top:12px!important;
}
@media(max-width:1300px){#simulator .ee-sim-arch-v194 .sim123-arch-grid{grid-template-columns:1fr!important}#simulator .ee-sim-arch-v194 .sim123-arch-head{grid-template-columns:1fr!important}}

/* ===== v195-simulador-arquitectura-misma-del-modulo-only ===== */
#simulator .sim-arch66-wrapper-v195{width:100%!important}
#simulator .sim-arch66-wrapper-v195 .arch66-detail{display:grid!important;gap:18px!important}
#simulator .sim-arch66-wrapper-v195 .arch66-diagrams{display:grid!important;grid-template-columns:1fr 1fr!important;gap:18px!important}
#simulator .sim-arch66-wrapper-v195 .arch66-diagram{width:100%!important}
#simulator .sim-arch66-wrapper-v195 .arch66-flow{grid-template-columns:repeat(3,minmax(0,1fr))!important}
#simulator .sim-arch66-wrapper-v195 .arch66-tool b{font-size:12px!important;line-height:1.15!important}
#simulator .sim-arch66-wrapper-v195 .arch66-tool span{font-size:10.5px!important;line-height:1.2!important}
#simulator .sim-arch66-wrapper-v195 .arch66-add,#simulator .sim-arch66-wrapper-v195 .arch66-diagram-title button{cursor:pointer!important}
@media(max-width:1500px){#simulator .sim-arch66-wrapper-v195 .arch66-diagrams{grid-template-columns:1fr!important}}

/* ===== v198-simulador-arquitectura-identica-modulo ===== */
/* V198 - SOLO Simulador: arquitectura actual vs objetivo igual al módulo Arquitectura */
#simulator .sim-v198-wrapper{
  width:100%!important;
}
#simulator .sim-v198-wrapper .arch-diagrams-v68{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:18px!important;
}
#simulator .sim-v198-wrapper .arch-flow-v68{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
#simulator .sim-v198-wrapper .arch-diagram-v68{
  position:relative!important;
  overflow:hidden!important;
}
#simulator .sim-v198-wrapper .tool-card-v68{
  min-height:94px!important;
}
#simulator .sim-v198-wrapper .tool-info-v69 b{
  line-height:1.15!important;
}
#simulator .sim-v198-wrapper .tool-actions-premium-v69 button{
  pointer-events:auto!important;
}
#simulator .sim-v198-wrapper .add-tool-v68,
#simulator .sim-v198-wrapper .arch-diagram-title-v68 button{
  cursor:pointer!important;
}
#simulator #simArchModalV198.active{
  display:flex!important;
}
@media(max-width:1500px){
  #simulator .sim-v198-wrapper .arch-diagrams-v68{
    grid-template-columns:1fr!important;
  }
}

/* ===== v199-simulador-arquitectura-mismo-dato-modulo ===== */
/* V199 - SOLO Simulador: usar exactamente la arquitectura guardada por empresa en el módulo Arquitectura */
#simulator .sim-v199-wrapper{
  width:100%!important;
}
#simulator .sim-v199-wrapper .arch-diagrams-v68{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:18px!important;
}
#simulator .sim-v199-wrapper .arch-flow-v68{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}
#simulator .sim-v199-wrapper .arch-diagram-v68{
  position:relative!important;
  overflow:hidden!important;
}
#simulator .sim-v199-wrapper .tool-actions-premium-v69 button,
#simulator .sim-v199-wrapper .add-tool-v68,
#simulator .sim-v199-wrapper .arch-diagram-title-v68 button{
  pointer-events:auto!important;
  cursor:pointer!important;
}
#simulator #simArchModalV199.active{
  display:flex!important;
}
@media(max-width:1500px){
  #simulator .sim-v199-wrapper .arch-diagrams-v68{
    grid-template-columns:1fr!important;
  }
}

/* ===== v200-simulador-arquitectura-estetica-persistencia-only ===== */
/* V200 - SOLO Simulador / Arquitectura: estética textos dentro del recuadro + persistencia al reabrir */

/* Evita que los nombres largos se salgan de la tarjeta */
#simulator .sim-v199-wrapper .tool-card-v68{
  grid-template-columns:42px minmax(0,1fr)!important;
  gap:10px!important;
  align-items:start!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
}

#simulator .sim-v199-wrapper .tool-logo-v69{
  width:42px!important;
  height:42px!important;
  flex:0 0 42px!important;
}

#simulator .sim-v199-wrapper .tool-info-v69{
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
}

#simulator .sim-v199-wrapper .tool-info-v69 b{
  display:block!important;
  max-width:100%!important;
  font-size:12.2px!important;
  line-height:1.15!important;
  letter-spacing:-.12px!important;
  white-space:normal!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
  hyphens:none!important;
  color:#071b33!important;
}

#simulator .sim-v199-wrapper .tool-info-v69 span{
  display:block!important;
  max-width:100%!important;
  font-size:10.8px!important;
  line-height:1.22!important;
  white-space:normal!important;
  overflow-wrap:break-word!important;
}

/* Acciones siempre debajo, como en el módulo de Arquitectura */
#simulator .sim-v199-wrapper .tool-actions-premium-v69{
  grid-column:1 / -1!important;
  display:flex!important;
  flex-wrap:wrap!important;
  gap:6px!important;
  padding-top:8px!important;
  border-top:1px solid #e8f0f8!important;
}

#simulator .sim-v199-wrapper .tool-actions-premium-v69 button{
  min-height:28px!important;
  height:auto!important;
  border-radius:999px!important;
  padding:6px 9px!important;
  font-size:10.6px!important;
  line-height:1!important;
  white-space:nowrap!important;
  max-width:100%!important;
}

/* Columnas con aire suficiente para que no se corten títulos */
#simulator .sim-v199-wrapper .arch-col-v68{
  min-width:0!important;
  overflow:hidden!important;
  padding:12px!important;
}

/* Títulos largos específicos con salto elegante */
#simulator .sim-v199-wrapper .tool-info-v69 b br{
  display:block!important;
}

/* Ajuste para pantallas de ancho medio */
@media(max-width:1500px){
  #simulator .sim-v199-wrapper .tool-info-v69 b{
    font-size:11.8px!important;
  }
  #simulator .sim-v199-wrapper .tool-actions-premium-v69 button{
    font-size:10.2px!important;
    padding:6px 8px!important;
  }
}

/* ===== v203-simulador-arquitectura-textos-dentro-recuadro-only ===== */
/* V203 - SOLO Simulador / Arquitectura: nombres largos completos dentro del recuadro */
#simulator .sim-v199-wrapper .tool-card-v68{
  grid-template-columns:38px minmax(0,1fr)!important;
  gap:9px!important;
  align-items:start!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
  padding:12px!important;
}
#simulator .sim-v199-wrapper .tool-logo-v69{
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  flex:0 0 38px!important;
}
#simulator .sim-v199-wrapper .tool-info-v69{
  min-width:0!important;
  max-width:100%!important;
  overflow:hidden!important;
}
#simulator .sim-v199-wrapper .tool-info-v69 b{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  font-size:11.2px!important;
  line-height:1.14!important;
  letter-spacing:-.2px!important;
  white-space:normal!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
  hyphens:none!important;
  color:#071b33!important;
}
#simulator .sim-v199-wrapper .tool-info-v69 span{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  font-size:10px!important;
  line-height:1.18!important;
  white-space:normal!important;
  overflow-wrap:break-word!important;
  word-break:normal!important;
}
#simulator .sim-v199-wrapper .tool-actions-premium-v69{
  grid-column:1 / -1!important;
  display:flex!important;
  flex-wrap:wrap!important;
  gap:5px!important;
  padding-top:8px!important;
  margin-top:8px!important;
  border-top:1px solid #e8f0f8!important;
}
#simulator .sim-v199-wrapper .tool-actions-premium-v69 button{
  min-height:27px!important;
  height:auto!important;
  border-radius:999px!important;
  padding:6px 8px!important;
  font-size:10px!important;
  line-height:1!important;
  white-space:nowrap!important;
}
#simulator .sim-v199-wrapper .arch-col-v68{
  min-width:0!important;
  overflow:hidden!important;
  padding:11px!important;
}
@media(max-width:1600px){
  #simulator .sim-v199-wrapper .tool-card-v68{
    grid-template-columns:36px minmax(0,1fr)!important;
    gap:8px!important;
    padding:11px!important;
  }
  #simulator .sim-v199-wrapper .tool-logo-v69{
    width:36px!important;
    height:36px!important;
    min-width:36px!important;
  }
  #simulator .sim-v199-wrapper .tool-info-v69 b{
    font-size:10.8px!important;
    line-height:1.12!important;
  }
  #simulator .sim-v199-wrapper .tool-info-v69 span{
    font-size:9.7px!important;
  }
}

/* ===== v204-procesos-criticos-matriz-metodologia-filtro-only ===== */
/* V204 - SOLO Procesos Críticos / Matriz valor vs complejidad: metodología + filtro */

#critical .crit204-method-modal{
  position:fixed!important;
  inset:0!important;
  z-index:99999!important;
  background:rgba(7,27,51,.48)!important;
  display:none!important;
  align-items:center!important;
  justify-content:center!important;
  padding:24px!important;
}
#critical .crit204-method-modal.active{
  display:flex!important;
}
#critical .crit204-modal-card{
  width:min(820px,94vw)!important;
  background:#fff!important;
  border:1px solid #dbe7f3!important;
  border-radius:26px!important;
  box-shadow:0 30px 90px rgba(7,27,51,.28)!important;
  overflow:hidden!important;
}
#critical .crit204-modal-head{
  background:linear-gradient(135deg,#071b33,#0f62fe)!important;
  color:#fff!important;
  padding:22px 26px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
}
#critical .crit204-modal-head h3{
  margin:0!important;
  font-size:24px!important;
  line-height:1.1!important;
}
#critical .crit204-modal-head button{
  border:0!important;
  width:36px!important;
  height:36px!important;
  border-radius:12px!important;
  background:rgba(255,255,255,.16)!important;
  color:#fff!important;
  font-size:24px!important;
  cursor:pointer!important;
}
#critical .crit204-modal-body{
  padding:24px 26px!important;
}
#critical .crit204-method-grid{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:14px!important;
  margin:16px 0!important;
}
#critical .crit204-method-item{
  border:1px solid #dbe7f3!important;
  border-radius:18px!important;
  padding:16px!important;
  background:#f8fbff!important;
}
#critical .crit204-method-item b{
  display:block!important;
  color:#071b33!important;
  margin-bottom:8px!important;
}
#critical .crit204-method-item p{
  margin:0!important;
  color:#64748b!important;
  line-height:1.38!important;
}
#critical .crit204-quadrants{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:10px!important;
  margin-top:16px!important;
}
#critical .crit204-quad{
  border-radius:16px!important;
  padding:12px 14px!important;
  font-weight:900!important;
  border:1px solid #e2e8f0!important;
}
#critical .crit204-quad small{
  display:block!important;
  margin-top:4px!important;
  font-weight:700!important;
  color:#64748b!important;
}
#critical .crit204-quad.green{background:#f0fdf4!important;color:#059669!important;border-color:#bbf7d0!important}
#critical .crit204-quad.blue{background:#eff6ff!important;color:#0f62fe!important;border-color:#bfdbfe!important}
#critical .crit204-quad.yellow{background:#fffbeb!important;color:#d97706!important;border-color:#fde68a!important}
#critical .crit204-quad.red{background:#fff1f2!important;color:#e11d48!important;border-color:#fecdd3!important}
#critical .crit204-modal-actions{
  display:flex!important;
  justify-content:flex-end!important;
  padding:18px 26px 24px!important;
  background:#f8fbff!important;
}
#critical .crit204-modal-actions button{
  border:0!important;
  border-radius:14px!important;
  background:#0f62fe!important;
  color:#fff!important;
  padding:12px 20px!important;
  font-weight:950!important;
  cursor:pointer!important;
}

/* Dropdown funcional del filtro */
#critical .crit204-filter-select{
  min-height:44px!important;
  border-radius:16px!important;
  border:1px solid #dbe7f3!important;
  background:#fff!important;
  color:#0f62fe!important;
  font-weight:950!important;
  padding:0 42px 0 16px!important;
  cursor:pointer!important;
}

/* Oculta iniciativas filtradas sin afectar el diseño original */
#critical .crit204-hidden{
  display:none!important;
}

/* Mensaje de filtro vacío */
#critical .crit204-empty{
  border:1px dashed #cbd5e1!important;
  border-radius:18px!important;
  padding:22px!important;
  text-align:center!important;
  color:#64748b!important;
  font-weight:850!important;
  background:#f8fbff!important;
  margin:16px 0!important;
}

@media(max-width:900px){
  #critical .crit204-method-grid,
  #critical .crit204-quadrants{
    grid-template-columns:1fr!important;
  }
}

/* ===== v205-maestro-preguntas-radar-labels-only ===== */
/* V205 - SOLO Maestro Preguntas: mejorar legibilidad del gráfico Cobertura por dimensión */
#questions svg,
#questions canvas,
#question svg,
#question canvas,
#masterQuestions svg,
#masterQuestions canvas{
  overflow:visible!important;
}

#questions .coverage-card,
#questions .radar-card,
#questions [class*="coverage"],
#questions [class*="radar"],
#masterQuestions .coverage-card,
#masterQuestions .radar-card,
#masterQuestions [class*="coverage"],
#masterQuestions [class*="radar"]{
  overflow:visible!important;
}

/* Más aire visual en la tarjeta del radar sin tocar otros módulos */
#questions .consultor-card-v49:has(svg),
#questions .consultor-card-v49:has(canvas),
#masterQuestions .consultor-card-v49:has(svg),
#masterQuestions .consultor-card-v49:has(canvas){
  overflow:visible!important;
  padding-left:22px!important;
  padding-right:22px!important;
}

/* ===== v211-evaluacion-sectorial-radar-labels-only ===== */
/* V211 - SOLO Evaluación sectorial: etiquetas completas en Madurez por dimensión */
#evaluation svg,
#evaluation canvas{
  overflow:visible!important;
}
#evaluation .card:has(svg),
#evaluation .card:has(canvas),
#evaluation [class*="radar"]:has(svg),
#evaluation [class*="radar"]:has(canvas),
#evaluation [class*="maturity"]:has(svg),
#evaluation [class*="maturity"]:has(canvas){
  overflow:visible!important;
}
#evaluation .eval211-radar-safe{
  overflow:visible!important;
  padding-left:18px!important;
  padding-right:18px!important;
}
#evaluation .eval211-radar-safe svg{
  max-width:100%!important;
  overflow:visible!important;
}

/* ===== v214-credenciales-limpio-style ===== */
#users .cred214-wrap{display:grid!important;gap:22px!important}
#users .cred214-section{background:#fff!important;border:1px solid #dbe7f3!important;border-radius:24px!important;padding:22px!important;box-shadow:0 18px 55px rgba(15,23,42,.07)!important}
#users .cred214-head{display:flex!important;justify-content:space-between!important;align-items:flex-start!important;gap:18px!important;margin-bottom:18px!important}
#users .cred214-title{display:flex!important;gap:14px!important;align-items:flex-start!important}
#users .cred214-icon{width:48px!important;height:48px!important;border-radius:16px!important;display:grid!important;place-items:center!important;background:#eef6ff!important;color:#0f62fe!important;font-size:24px!important;flex:0 0 48px!important}
#users .cred214-title h2,#users .cred214-title h3{margin:0 0 4px!important;color:#071b33!important;line-height:1.12!important}
#users .cred214-title h2{font-size:25px!important}#users .cred214-title h3{font-size:23px!important}
#users .cred214-title p{margin:0!important;color:#64748b!important;line-height:1.38!important}
#users .cred214-btn{border:1px solid #0f62fe!important;background:#0f62fe!important;color:#fff!important;border-radius:14px!important;padding:12px 18px!important;min-height:44px!important;font-weight:950!important;cursor:pointer!important;box-shadow:0 12px 26px rgba(15,98,254,.18)!important;white-space:nowrap!important}
#users .cred214-btn.secondary{border-color:#dbe7f3!important;background:#fff!important;color:#0f62fe!important;box-shadow:none!important}
#users .cred214-kpis{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important;margin:16px 0!important}
#users .cred214-kpi{display:flex!important;gap:14px!important;align-items:center!important;border:1px solid #dbe7f3!important;border-radius:16px!important;background:linear-gradient(180deg,#fff,#f8fbff)!important;padding:16px!important}
#users .cred214-kpi-ico{width:52px!important;height:52px!important;border-radius:16px!important;display:grid!important;place-items:center!important;font-size:24px!important;background:#eef6ff!important}
#users .cred214-kpi b{display:block!important;color:#071b33!important;font-size:24px!important;line-height:1!important}
#users .cred214-kpi span{display:block!important;color:#64748b!important;font-size:12px!important;margin-top:5px!important;font-weight:800!important}
#users .cred214-toolbar{display:grid!important;grid-template-columns:1.2fr .55fr auto!important;gap:10px!important;margin:16px 0 12px!important}
#users .cred214-toolbar input,#users .cred214-toolbar select,#users .cred214-form input,#users .cred214-form select{width:100%!important;height:42px!important;border:1px solid #dbe7f3!important;border-radius:13px!important;padding:0 13px!important;color:#071b33!important;background:#fff!important;font-weight:700!important;box-sizing:border-box!important}
#users .cred214-form{display:none!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:12px!important;background:#f8fbff!important;border:1px solid #dbe7f3!important;border-radius:18px!important;padding:16px!important;margin:14px 0!important}
#users .cred214-form.active{display:grid!important}
#users .cred214-field label{display:block!important;font-size:12px!important;font-weight:900!important;color:#334155!important;margin:0 0 6px!important}
#users .cred214-field.full{grid-column:1 / -1!important}
#users .cred214-table{width:100%!important;border-collapse:collapse!important}
#users .cred214-table th{text-align:left!important;color:#475569!important;font-size:11px!important;text-transform:uppercase!important;letter-spacing:.35px!important;padding:12px!important;background:#f8fbff!important;border-bottom:1px solid #e8f0f8!important}
#users .cred214-table td{padding:13px 12px!important;border-bottom:1px solid #edf2f7!important;vertical-align:middle!important;color:#071b33!important;font-size:13px!important}
#users .cred214-person{display:flex!important;align-items:center!important;gap:10px!important}
#users .cred214-avatar{width:38px!important;height:38px!important;border-radius:50%!important;display:grid!important;place-items:center!important;flex:0 0 38px!important;font-weight:950!important;color:#071b33!important;background:#e0f2fe!important}
#users .cred214-person b{display:block!important;color:#071b33!important;font-size:13px!important}
#users .cred214-person small{display:block!important;color:#64748b!important;font-size:11px!important}
#users .cred214-pill{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:26px!important;padding:5px 10px!important;border-radius:999px!important;font-size:11px!important;font-weight:950!important;white-space:nowrap!important}
#users .cred214-pill.green{background:#dcfce7!important;color:#059669!important}.cred214-pill.orange{background:#ffedd5!important;color:#f97316!important}.cred214-pill.blue{background:#dbeafe!important;color:#0f62fe!important}.cred214-pill.purple{background:#ede9fe!important;color:#7c3aed!important}
#users .cred214-row-actions{display:flex!important;gap:8px!important}
#users .cred214-mini{width:34px!important;height:34px!important;border:1px solid #dbe7f3!important;border-radius:10px!important;background:#fff!important;color:#0f62fe!important;display:grid!important;place-items:center!important;cursor:pointer!important;font-weight:900!important}
#users .cred214-mini.danger{color:#dc2626!important;border-color:#fecaca!important;background:#fff7f7!important}
#users .cred214-footer{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:12px!important;color:#64748b!important;font-size:13px!important;padding-top:14px!important}
#users .cred214-pages{display:flex!important;gap:8px!important}
#users .cred214-page{width:34px!important;height:34px!important;border:1px solid #dbe7f3!important;border-radius:10px!important;background:#fff!important;color:#071b33!important;font-weight:900!important}
#users .cred214-page.active{background:#0f62fe!important;color:#fff!important;border-color:#0f62fe!important}
#users .cred214-modal{position:fixed!important;inset:0!important;background:rgba(7,27,51,.48)!important;z-index:99999!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:24px!important}
#users .cred214-modal-card{width:min(560px,94vw)!important;background:#fff!important;border:1px solid #dbe7f3!important;border-radius:24px!important;box-shadow:0 30px 90px rgba(7,27,51,.25)!important;padding:24px!important}
#users .cred214-modal-card h3{margin:0 0 12px!important;color:#071b33!important;font-size:24px!important}
#users .cred214-modal-row{display:grid!important;grid-template-columns:150px 1fr!important;gap:10px!important;padding:10px 0!important;border-bottom:1px solid #edf2f7!important}
#users .cred214-modal-actions{display:flex!important;justify-content:flex-end!important;margin-top:18px!important}
#users .cred214-modal-actions button{border:0!important;background:#0f62fe!important;color:#fff!important;border-radius:14px!important;padding:12px 18px!important;font-weight:950!important;cursor:pointer!important}
@media(max-width:1200px){#users .cred214-kpis{grid-template-columns:repeat(2,1fr)!important}#users .cred214-toolbar{grid-template-columns:1fr!important}#users .cred214-form{grid-template-columns:1fr!important}}
@media(max-width:760px){#users .cred214-head{flex-direction:column!important}#users .cred214-kpis{grid-template-columns:1fr!important}}
