/* Cytadel · configurador del Hub (planes) */
.plans .plans-k{display:flex;align-items:center;gap:10px;color:var(--fg2);margin:0 0 18px}
.plans .plans-k:before{content:"";width:7px;height:7px;border-radius:50%;background:#22C55E;box-shadow:0 0 0 3px rgba(34,197,94,.18)}
.plans .plans-p{margin:0 0 6svh}
.cfg{--c-bg:#0A0C13;--c-card:#12141C;--c-card2:#171A23;--c-line:rgba(244,246,248,.11);--c-line2:rgba(244,246,248,.2);--c-fg:#F4F6F8;--c-mute:rgba(244,246,248,.62);--c-dim:rgba(244,246,248,.45);--c-ok:#22C55E;
  background:var(--c-bg);color:var(--c-fg);border-radius:28px;padding:28px;font-size:16px;line-height:1.45;text-align:left}
.cfg button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;padding:0;-webkit-tap-highlight-color:transparent}
.cfg button:disabled{cursor:not-allowed}
.cfg :focus-visible{outline:2px solid #8C99F6;outline-offset:2px}
.cfg-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* tarjetas de plan */
.cfg-plans{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}
.cfg .cfg-plan{position:relative;display:flex;flex-direction:column;align-items:flex-start;text-align:left;background:var(--c-card);border:1px solid var(--c-line);border-radius:20px;padding:24px 22px 22px;transition:border-color .3s,background .3s,transform .4s cubic-bezier(.22,.8,.2,1)}
.cfg .cfg-plan:hover{border-color:var(--c-line2)}
.cfg .cfg-plan.is-on{border-color:var(--c-ok);background:linear-gradient(180deg,rgba(34,197,94,.07),rgba(34,197,94,0) 60%),var(--c-card)}
.cfg-tag{position:absolute;top:-10px;right:16px;background:var(--c-ok);color:#06140B;font-size:11px;font-weight:600;letter-spacing:.04em;padding:4px 10px;border-radius:999px}
.cfg-plan-n{font-size:15px;font-weight:500;color:var(--c-mute)}
.cfg-plan.is-on .cfg-plan-n{color:var(--c-fg)}
.cfg-plan-p{font-size:clamp(28px,2.7vw,40px);font-weight:500;letter-spacing:-.035em;line-height:1.05;margin:10px 0 14px;font-variant-numeric:tabular-nums}
.cfg-plan-p small{font-size:14px;font-weight:400;letter-spacing:0;color:var(--c-mute)}
.cfg-plan-d{font-size:15px}
.cfg-plan-m{font-size:13.5px;color:var(--c-mute);margin-top:4px}

/* configurador + resumen */
.cfg-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:14px;align-items:start}
.cfg-l,.cfg-r{min-width:0;background:var(--c-card);border:1px solid var(--c-line);border-radius:20px;padding:24px 22px}
.cfg-r{position:sticky;top:96px}
.cfg-k,.cfg-k2{font-family:var(--mono,ui-monospace,Menlo,monospace);font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:var(--c-mute);margin:0 0 14px}
.cfg-k2{margin:0 0 6px}
.cfg-props{display:flex;flex-direction:column;gap:10px}
.cfg-prop{border:1px solid var(--c-line);border-radius:16px;background:var(--c-bg);transition:border-color .3s}
.cfg-prop.is-on{border-color:rgba(34,197,94,.55)}
.cfg-prop-h{display:flex;align-items:center;gap:10px;padding:12px 14px}
.cfg .cfg-pick{flex:none;width:22px;height:22px;border-radius:50%;border:1px solid var(--c-line2);display:grid;place-items:center}
.cfg-pick i{width:10px;height:10px;border-radius:50%;background:transparent;transition:background .25s}
.cfg-prop.is-on .cfg-pick{border-color:var(--c-ok)}
.cfg-prop.is-on .cfg-pick i{background:var(--c-ok)}
.cfg .cfg-name{flex:1 1 0;width:0;min-width:0;height:36px;background:transparent;border:0;border-bottom:1px solid transparent;border-radius:0;color:var(--c-fg);font:inherit;font-size:16px;font-weight:500;padding:0;transition:border-color .2s}
.cfg .cfg-name::placeholder{color:var(--c-fg);opacity:1}
.cfg .cfg-name:hover{border-bottom-color:var(--c-line)}
.cfg .cfg-name:focus{outline:none;border-bottom-color:var(--c-line2)}
.cfg .cfg-name:focus::placeholder{opacity:.4}
.cfg-prop-s{font-variant-numeric:tabular-nums;color:var(--c-mute);font-size:15px;white-space:nowrap}
.cfg .cfg-x{flex:none;width:32px;height:32px;border-radius:50%;color:var(--c-mute);font-size:20px;line-height:1;display:grid;place-items:center;transition:background .2s,color .2s}
.cfg .cfg-x:hover{background:rgba(244,246,248,.08);color:var(--c-fg)}
.cfg-prop-b{display:none;padding:2px 14px 16px}
.cfg-prop.is-on .cfg-prop-b{display:block}
.cfg-seg{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:4px;border-radius:12px;background:rgba(244,246,248,.05)}
.cfg .cfg-seg button{height:40px;border-radius:9px;font-size:14.5px;font-weight:500;color:var(--c-mute);transition:background .25s,color .25s}
.cfg .cfg-seg button.is-on{background:#F4F6F8;color:#0A0C13}
.cfg-extra{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:16px}
.cfg-extra-t{font-size:15px}
.cfg-extra-t small{display:block;font-size:13px;color:var(--c-mute);margin-top:2px}
.cfg-extra.is-off{opacity:.45}
.cfg-step{display:flex;align-items:center;gap:6px;flex:none}
.cfg .cfg-step button{width:40px;height:40px;border-radius:50%;border:1px solid var(--c-line2);font-size:20px;line-height:1;display:grid;place-items:center;transition:background .2s,border-color .2s,opacity .2s}
.cfg .cfg-step button:hover:not(:disabled){background:rgba(244,246,248,.08)}
.cfg .cfg-step button:disabled{opacity:.35}
.cfg-step output{min-width:28px;text-align:center;font-size:18px;font-weight:500;font-variant-numeric:tabular-nums}
.cfg-hint{margin:12px 0 0;font-size:14px;color:#F2B45A;display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px}
.cfg-hint.is-mute{color:var(--c-dim)}
.cfg .cfg-up{height:34px;padding:0 14px;border-radius:999px;border:1px solid rgba(242,180,90,.5);color:#F2B45A;font-size:13.5px;font-weight:500;transition:background .2s}
.cfg .cfg-up:hover{background:rgba(242,180,90,.12)}
.cfg .cfg-add{width:100%;height:50px;margin-top:10px;border-radius:14px;border:1px dashed var(--c-line2);font-size:15px;font-weight:500;color:var(--c-fg);transition:background .2s,border-color .2s}
.cfg .cfg-add:hover{background:rgba(244,246,248,.05);border-color:rgba(244,246,248,.4)}
.cfg-more{margin:14px 0 0;font-size:15px;color:var(--c-mute)}
.cfg .cfg-more a,.cy-root .cfg .cfg-more a,.mx .cfg .cfg-more a{color:var(--c-fg);border-bottom:1px solid currentColor}
.cfg-notes{list-style:none;margin:22px 0 0;padding:18px 0 0;border-top:1px solid var(--c-line);display:flex;flex-direction:column;gap:8px}
.cfg-notes li{font-size:13px;line-height:1.45;color:var(--c-mute)}

.cfg-lines{margin-bottom:20px}
.cfg-line{display:flex;justify-content:space-between;gap:14px;padding:9px 0;border-bottom:1px solid var(--c-line);font-size:14.5px;color:var(--c-mute)}
.cfg-line span{min-width:0;overflow-wrap:anywhere}
.cfg-line b{font-weight:500;color:var(--c-fg);font-variant-numeric:tabular-nums;white-space:nowrap}
.cfg-big{font-size:clamp(30px,2.9vw,42px);font-weight:500;letter-spacing:-.035em;line-height:1.05;font-variant-numeric:tabular-nums}
.cfg-big small{font-size:15px;font-weight:400;letter-spacing:0;color:var(--c-mute)}
.cfg-small{margin:6px 0 0;font-size:13.5px;color:var(--c-mute)}
.cfg-incl{margin:10px 0 0;font-size:13px;line-height:1.45;color:var(--c-dim)}
.cfg-rec{margin-top:20px;padding-top:20px;border-top:1px solid var(--c-line)}
.cfg .cfg-cta,.cy-root .cfg .cfg-cta,.mx .cfg .cfg-cta{position:relative;display:flex;align-items:center;justify-content:center;gap:10px;height:56px;margin-top:22px;border-radius:999px;background:#F4F6F8;color:#0A0C13;font-weight:600;font-size:16px;overflow:hidden;isolation:isolate;transition:color .3s}
.cfg .cfg-cta:before{content:"";position:absolute;inset:0;background:#5266EB;transform:translateY(101%);transition:transform .5s cubic-bezier(.22,.8,.2,1);z-index:-1}
.cfg .cfg-cta:hover,.cy-root .cfg .cfg-cta:hover{color:#fff}
.cfg .cfg-cta:hover:before{transform:none}

/* configuración dentro del formulario de evaluación */
.ef-cfg{margin-bottom:18px}
.ef-cfg>span:first-child{display:block;font-size:14px;font-weight:500;margin-bottom:8px}
.cfg-chip{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 12px 12px 16px;border-radius:14px;background:#0A0C13;color:#F4F6F8;font-size:14.5px;line-height:1.35}
.cfg-chip b{font-weight:500;min-width:0}
.eval-f .cfg-chip button{flex:none;width:30px;height:30px;border-radius:50%;background:rgba(244,246,248,.1);color:#F4F6F8;font-size:18px;line-height:1;display:grid;place-items:center;border:0;cursor:pointer;padding:0}

/* móvil y tablet */
@media (max-width:1040px){
  .cfg-grid{grid-template-columns:minmax(0,1fr)}
  .cfg-r{position:static}
}
@media (max-width:820px){
  .cfg{padding:14px;border-radius:24px}
  .cfg-plans{grid-template-columns:minmax(0,1fr);gap:12px}
  .cfg .cfg-plan{padding:20px 18px 18px}
  .cfg-plan-p{font-size:32px;margin:6px 0 10px}
  .cfg-l,.cfg-r{padding:20px 16px}
  .cfg-big{font-size:34px}
}
.cfg.cfg-m{margin:22px -8px 0;padding:12px;border-radius:24px}
.cfg-m .cfg-plans{grid-template-columns:minmax(0,1fr);gap:12px}
.cfg-m .cfg-grid{grid-template-columns:minmax(0,1fr)}
.cfg-m .cfg-r{position:static}
.cfg-m .cfg-plan{padding:20px 18px 18px}
.cfg-m .cfg-plan-p{font-size:32px;margin:6px 0 10px}
.cfg-m .cfg-l,.cfg-m .cfg-r{padding:20px 16px}
.cfg-m .cfg-big{font-size:34px}
.cfg-m .cfg-cta:before{display:none}

/* barra inferior fija (solo móvil, mientras se ven los planes) */
.cfg-bar{position:fixed;left:10px;right:10px;bottom:calc(10px + env(safe-area-inset-bottom,0px));z-index:60;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 10px 10px 18px;border-radius:999px;background:rgba(10,12,19,.92);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid rgba(244,246,248,.16);color:#F4F6F8;box-shadow:0 18px 50px -18px rgba(0,0,0,.7);font-family:var(--sans,system-ui,sans-serif);transform:translateY(140%);opacity:0;pointer-events:none;transition:transform .5s cubic-bezier(.22,.8,.2,1),opacity .3s}
.cfg-bar.is-on{transform:none;opacity:1;pointer-events:auto}
.cfg-bar-t{display:flex;flex-direction:column;min-width:0;line-height:1.2}
.cfg-bar-t b{font-size:16px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}
.cfg-bar-t small{font-size:12.5px;color:rgba(244,246,248,.65)}
.cfg-bar a{flex:none;display:flex;align-items:center;height:42px;padding:0 20px;border-radius:999px;background:#F4F6F8;color:#0A0C13!important;font-weight:600;font-size:15px;text-decoration:none}
@media (prefers-reduced-motion:reduce){.cfg *,.cfg-bar{transition:none!important}}
.cfg-static{margin:0;padding:6px 6px 6px 22px;display:flex;flex-direction:column;gap:8px;font-size:15px;color:rgba(244,246,248,.8)}
.cfg-static b{font-weight:600;color:#F4F6F8}
