/* Discover 0.20.0 · runtime público, vistas automáticas y resultados */
.discover-stage,.discover-result{width:100%}
.discover-result{scroll-margin-top:24px}
.dv-landing{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:24px;
  align-items:center;
  margin:0 0 16px;
  padding:clamp(22px,4vw,38px);
  overflow:hidden;
  border:1px solid var(--discover-border);
  border-radius:var(--discover-radius-lg);
  background:
    radial-gradient(circle at 12% 12%,rgba(31,95,191,.13),transparent 34%),
    radial-gradient(circle at 90% 10%,rgba(109,75,195,.10),transparent 28%),
    linear-gradient(145deg,#fff 0%,#f7faff 100%);
  box-shadow:var(--discover-shadow);
}
.dv-landing:after{content:"";position:absolute;inset:auto -70px -95px auto;width:220px;height:220px;border:42px solid rgba(31,95,191,.05);border-radius:50%;pointer-events:none}
.dv-landing-copy{position:relative;z-index:1;max-width:780px}
.dv-kicker{display:inline-flex;margin:0 0 10px;padding:5px 10px;border-radius:999px;background:var(--discover-accent-soft);color:var(--discover-accent-strong);font-size:11px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.dv-landing h2{margin:0;color:var(--discover-text);font-size:clamp(28px,4vw,46px);font-weight:850;line-height:1.04;letter-spacing:-.035em}
.dv-landing p{margin:12px 0 0;max-width:720px;color:#4a5870;font-size:clamp(14px,1.8vw,17px);line-height:1.55}
.dv-landing .discover-start{position:relative;z-index:1;min-width:132px}
.dv-landing.is-automatic{grid-template-columns:minmax(0,1fr);padding:clamp(18px,3vw,28px)}
.dv-landing.is-automatic .dv-landing-copy{max-width:900px}

.discover-toolbar{
  position:sticky;
  top:12px;
  z-index:12;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:14px;
  align-items:center;
  margin:0 0 16px;
  padding:11px 12px;
  border:1px solid rgba(219,227,238,.92);
  border-radius:18px;
  background:rgba(255,255,255,.94);
  box-shadow:var(--discover-shadow-sm);
  backdrop-filter:blur(12px);
}
.discover-toolbar-actions{display:flex;gap:8px;align-items:center}
.discover-selected{display:flex;align-items:center;gap:7px;flex-wrap:wrap;min-height:32px;max-height:96px;overflow:auto}
.discover-selected>strong{font-size:12px;color:#46546a}
.discover-selected-empty{color:var(--discover-muted);font-size:13px}
.discover-selected-chip{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:5px 6px 5px 9px;border:1px solid #cfe0fa;border-radius:999px;background:#f1f6ff;color:#234d88;font-size:12px;font-weight:750}
.discover-selection-remove{appearance:none;display:inline-grid;place-items:center;width:22px;height:22px;padding:0;border:0;border-radius:50%;background:rgba(31,95,191,.10);color:#234d88;font-size:16px;line-height:1;cursor:pointer}
.discover-selection-remove:hover{background:rgba(31,95,191,.20)}
.discover-bottom-action{display:flex;justify-content:flex-end;margin:16px 0 0}
.discover-layout-empty{display:grid;gap:6px;place-items:center;min-height:190px;padding:32px;border:1px dashed var(--discover-border-strong);border-radius:var(--discover-radius);background:var(--discover-surface-soft);text-align:center}
.discover-layout-empty strong{font-size:17px}.discover-layout-empty span{color:var(--discover-muted);font-size:13px}
.discover-debug,.discover-result-trace{margin-top:16px;border:1px solid var(--discover-border);border-radius:14px;background:#fff;overflow:hidden}
.discover-debug summary,.discover-result-trace summary{padding:11px 13px;cursor:pointer;font-size:12px;font-weight:800;color:#46546a}
.discover-debug pre,.discover-result-trace pre{max-height:320px;overflow:auto;margin:0;padding:14px;background:#172033;color:#edf2f8;font-size:11px;white-space:pre-wrap}

.discover-loading,.discover-error{
  display:flex;
  align-items:flex-start;
  gap:13px;
  margin-top:16px;
  padding:18px;
  border:1px solid var(--discover-border);
  border-radius:var(--discover-radius);
  background:#fff;
  box-shadow:var(--discover-shadow-sm);
}
.discover-loading strong,.discover-error strong{display:block;margin:0;color:var(--discover-text);font-size:15px}
.discover-loading span,.discover-error span,.discover-error small{display:block;margin-top:3px;color:var(--discover-muted);font-size:13px}
.discover-error{border-color:#f5c8c5;background:#fff8f7}
.discover-error strong{color:var(--discover-danger)}
.discover-spinner{flex:0 0 auto;width:24px;height:24px;margin-top:1px;border:3px solid #dbe7f8;border-top-color:var(--discover-accent);border-radius:50%;animation:discover-spin .8s linear infinite}
@keyframes discover-spin{to{transform:rotate(360deg)}}
.discover-box.is-busy .discover-layout{opacity:.72;pointer-events:none}

.discover-result-card{margin-top:18px;padding:18px;border:1px solid var(--discover-border);border-radius:18px;background:#fff;box-shadow:var(--discover-shadow-sm)}
.discover-result-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:14px;border-bottom:1px solid var(--discover-border)}
.discover-result-kicker{display:block;margin-bottom:3px;color:var(--discover-accent);font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}
.discover-result-header h2{margin:0;color:var(--discover-text);font-size:clamp(21px,2.4vw,28px);line-height:1.12;letter-spacing:-.02em}
.discover-result-header p{margin:4px 0 0;color:var(--discover-muted);font-size:12px}
.discover-result-reset{flex:0 0 auto}
.discover-result-role{margin-top:18px}
.discover-result-role>header{display:flex;align-items:flex-start;gap:9px;margin:0 0 9px}
.discover-result-role>header h3{margin:0;color:var(--discover-text);font-size:17px}
.discover-result-role>header p{margin:2px 0 0;color:var(--discover-muted);font-size:12px}
.discover-role-marker{flex:0 0 auto;width:6px;height:29px;border-radius:999px;background:var(--discover-accent)}
.discover-role-marker.complementary{background:var(--discover-secondary)}
.discover-result-complementary{margin-top:22px;padding-top:18px;border-top:1px solid var(--discover-border)}
.discover-result-section+.discover-result-section{margin-top:9px}
.discover-result-details{overflow:hidden;border:1px solid var(--discover-border);border-radius:12px;background:#fbfcfe}
.discover-result-details>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;cursor:pointer;list-style:none;color:#344054;font-size:12px;font-weight:700}
.discover-result-details>summary::-webkit-details-marker{display:none}
.discover-result-details>summary:before{content:"›";display:inline-grid;place-items:center;width:19px;height:19px;margin-right:5px;border-radius:50%;background:#eef3f9;color:#54657c;transform:rotate(90deg);transition:transform .16s ease}
.discover-result-details:not([open])>summary:before{transform:rotate(0)}
.discover-result-details>summary span{margin-right:auto}
.discover-result-details>summary strong{display:inline-grid;place-items:center;min-width:25px;height:23px;padding:0 7px;border-radius:999px;background:#eaf2ff;color:#234d88;font-size:11px}
.discover-items-grid{display:grid;gap:10px;padding:0 10px 10px}
.discover-result-item{min-width:0;overflow:hidden;border:1px solid var(--discover-border);border-radius:11px;background:#fff;box-shadow:0 3px 10px rgba(25,42,70,.045)}
.discover-result-extra{display:none}
.discover-result-section.is-expanded .discover-result-extra{display:grid}
.discover-result-image{margin:0;overflow:hidden;background:#edf2f7}
.discover-result-image img{display:block;width:100%;height:100%;object-fit:cover}
.discover-result-item-body{display:flex;min-width:0;flex-direction:column;align-items:flex-start;padding:12px}
.discover-result-source{display:inline-flex;margin:0 0 5px;padding:3px 6px;border-radius:999px;background:#eef3f9;color:#526177;font-size:9px;font-weight:800;letter-spacing:.035em;text-transform:uppercase}
.discover-result-item h4{margin:0;color:var(--discover-text);font-size:15px;line-height:1.25}
.discover-result-item p{margin:6px 0 0;color:#4c5b70;font-size:12px;line-height:1.42}
.discover-result-benefit{padding-top:7px;border-top:1px solid #eef2f6}
.discover-reason-line{color:#5e477f!important}
.discover-result-item .discover-cta{margin-top:auto;padding-top:7px;font-size:12px}
.discover-result-more{margin:0 10px 10px}

/* Orientación por vista */
.discover-result-card.is-orientation-horizontal .discover-items-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr))}
.discover-result-card.is-orientation-horizontal .discover-result-item{display:grid;grid-template-columns:104px minmax(0,1fr)}
.discover-result-card.is-orientation-horizontal .discover-result-item.no-image{grid-template-columns:1fr}
.discover-result-card.is-orientation-horizontal .discover-result-image{width:104px;height:100%;min-height:108px;aspect-ratio:auto}
.discover-result-card.is-orientation-horizontal .discover-result-item-body{padding:11px 12px}
.discover-result-card.is-orientation-vertical .discover-items-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}
.discover-result-card.is-orientation-vertical .discover-result-item{display:flex;flex-direction:column}
.discover-result-card.is-orientation-vertical .discover-result-image{aspect-ratio:16/9;max-height:150px}

/* Densidad por vista */
.discover-result-card.is-density-compact{padding:15px}
.discover-result-card.is-density-compact .discover-result-role{margin-top:15px}
.discover-result-card.is-density-compact .discover-result-item-body{padding:10px}
.discover-result-card.is-density-compact .discover-result-item h4{font-size:14px}
.discover-result-card.is-density-compact .discover-result-item p{margin-top:5px;font-size:11.5px;line-height:1.38}
.discover-result-card.is-density-compact.is-orientation-horizontal .discover-result-item{grid-template-columns:88px minmax(0,1fr)}
.discover-result-card.is-density-compact.is-orientation-horizontal .discover-result-item.no-image{grid-template-columns:1fr}
.discover-result-card.is-density-compact.is-orientation-horizontal .discover-result-image{width:88px;min-height:92px}
.discover-result-card.is-density-compact.is-orientation-vertical .discover-result-image{max-height:125px}
.discover-result-card.is-density-comfortable{padding:24px}
.discover-result-card.is-density-comfortable .discover-result-header{padding-bottom:18px}
.discover-result-card.is-density-comfortable .discover-result-role{margin-top:24px}
.discover-result-card.is-density-comfortable .discover-items-grid{gap:14px;padding:0 14px 14px}
.discover-result-card.is-density-comfortable .discover-result-item-body{padding:16px}
.discover-result-card.is-density-comfortable .discover-result-item h4{font-size:17px}
.discover-result-card.is-density-comfortable .discover-result-item p{font-size:13px;line-height:1.5}
.discover-result-card.is-density-comfortable.is-orientation-horizontal .discover-result-item{grid-template-columns:145px minmax(0,1fr)}
.discover-result-card.is-density-comfortable.is-orientation-horizontal .discover-result-item.no-image{grid-template-columns:1fr}
.discover-result-card.is-density-comfortable.is-orientation-horizontal .discover-result-image{width:145px;min-height:145px}
.discover-result-card.is-density-comfortable.is-orientation-vertical .discover-result-image{max-height:210px}

.discover-coverage{display:flex;align-items:center;gap:9px;margin-top:16px;padding:11px 13px;border:1px solid #cce8db;border-radius:11px;background:#f2fbf6;color:#286247}
.discover-coverage strong{font-size:11px;text-transform:uppercase;letter-spacing:.045em}.discover-coverage span{font-size:12px}
.discover-empty{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;margin-top:16px;padding:16px;border:1px dashed var(--discover-border-strong);border-radius:12px;background:var(--discover-surface-soft)}
.discover-empty>span{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#eef3f9;color:#637086;font-size:21px}
.discover-empty h3{margin:0;font-size:16px}.discover-empty p{margin:4px 0 0;color:var(--discover-muted);font-size:12px}

@container(max-width:760px){
  .dv-landing{grid-template-columns:1fr}
  .dv-landing .discover-start{justify-self:start}
  .discover-toolbar{position:static;grid-template-columns:1fr}
  .discover-toolbar-actions{width:100%}
  .discover-toolbar-actions button{flex:1}
  .discover-result-header{display:grid}
  .discover-result-reset{justify-self:start}
  .discover-empty{grid-template-columns:auto minmax(0,1fr)}
  .discover-empty .discover-clear{grid-column:1/-1}
}
@container(max-width:480px){
  .discover-box{padding:10px}
  .dv-landing{padding:20px}
  .discover-result-card{padding:14px}
  .discover-bottom-action{position:sticky;bottom:8px;z-index:10;padding:8px;border:1px solid rgba(219,227,238,.9);border-radius:14px;background:rgba(255,255,255,.94);backdrop-filter:blur(10px)}
  .discover-bottom-action .discover-evaluate{width:100%}
}

/* Modos de bloque compartidos */
.discover-block.is-mode-informational{border-style:dashed;background:#fafbfc}
.discover-block.is-mode-informational .discover-option-item,
.discover-block.is-mode-informational input,
.discover-block.is-mode-informational select,
.discover-block.is-mode-informational textarea{cursor:default;opacity:.72}

/* Discover 0.20.1 · Consulta perceptible y resultados dinámicos */
.discover-stage{transform-origin:50% 0;transition:opacity .3s ease,transform .38s cubic-bezier(.2,.8,.2,1),filter .3s ease}
.discover-box.is-busy .discover-stage{opacity:.34;transform:translateY(-8px) scale(.985);filter:saturate(.7);pointer-events:none}
.discover-box.is-busy .discover-result{position:relative;z-index:5}
.discover-loading{
  position:relative;
  align-items:center;
  min-height:150px;
  padding:24px;
  overflow:hidden;
  border-color:#cfdcf0;
  background:
    radial-gradient(circle at 8% 20%,rgba(31,95,191,.14),transparent 30%),
    radial-gradient(circle at 92% 80%,rgba(109,75,195,.12),transparent 32%),
    linear-gradient(135deg,#fff,#f7f9ff);
  box-shadow:0 22px 58px rgba(25,42,70,.13);
  animation:discover-loader-rise .38s cubic-bezier(.18,.82,.24,1) both;
}
.discover-loading:after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 25%,rgba(255,255,255,.7) 45%,transparent 65%);transform:translateX(-100%);animation:discover-loader-sheen 2.2s ease-in-out infinite;pointer-events:none}
@keyframes discover-loader-rise{from{opacity:0;transform:translateY(24px) scale(.985)}to{opacity:1;transform:none}}
@keyframes discover-loader-sheen{55%,100%{transform:translateX(100%)}}
.discover-loading-orbit{position:relative;flex:0 0 74px;width:74px;height:74px;border-radius:50%;background:radial-gradient(circle,#fff 0 24%,#eaf2ff 26% 48%,rgba(31,95,191,.08) 50% 100%);box-shadow:0 14px 36px rgba(31,95,191,.18),inset 0 0 0 1px rgba(31,95,191,.12);animation:discover-orbit-float 2.3s ease-in-out infinite}
.discover-loading-orbit:before{content:"";position:absolute;inset:21px;border-radius:50%;background:linear-gradient(145deg,var(--discover-accent),var(--discover-secondary));box-shadow:0 0 24px rgba(31,95,191,.32);animation:discover-orbit-pulse 1.4s ease-in-out infinite}
.discover-loading-orbit span,.discover-loading-orbit i,.discover-loading-orbit b{position:absolute;display:block;border-radius:50%;background:#fff;box-shadow:0 0 0 3px rgba(31,95,191,.12)}
.discover-loading-orbit span{width:9px;height:9px;top:6px;left:32px;transform-origin:5px 31px;animation:discover-orbit-spin 1.8s linear infinite}
.discover-loading-orbit i{width:7px;height:7px;right:7px;top:34px;transform-origin:-25px 3px;animation:discover-orbit-spin 2.4s linear infinite reverse}
.discover-loading-orbit b{width:6px;height:6px;left:10px;bottom:13px;transform-origin:27px -16px;animation:discover-orbit-spin 3s linear infinite}
@keyframes discover-orbit-spin{to{transform:rotate(360deg)}}
@keyframes discover-orbit-float{50%{transform:translateY(-5px)}}
@keyframes discover-orbit-pulse{50%{transform:scale(.86);filter:saturate(1.3)}}
.discover-loading-content{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 16px;align-items:end;min-width:0;flex:1}
.discover-loading-content>strong{grid-column:1/-1;font-size:17px}
.discover-loading-phase{grid-column:1/-1;min-height:20px;margin:0!important;font-weight:650}
.discover-loading-phase.is-changing{animation:discover-phase-change .32s ease both}
@keyframes discover-phase-change{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}
.discover-loading-meter{grid-column:1/-1;height:8px;margin-top:10px;border-radius:999px;background:#e2e9f3;box-shadow:inset 0 1px 2px rgba(24,46,82,.08);overflow:hidden}
.discover-loading-bar{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--discover-accent),#3f82dc,var(--discover-secondary));background-size:180% 100%;box-shadow:0 0 16px rgba(31,95,191,.28);transition:width .12s linear;animation:discover-loading-gradient 1.4s linear infinite}
@keyframes discover-loading-gradient{to{background-position:180% 0}}
.discover-loading-meta{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:2px}
.discover-loading-signal{margin:0!important;color:var(--discover-success)!important;font-size:11px!important;font-weight:850}
.discover-loading-signal:before{content:"✓";margin-right:5px}
.discover-loading-percent{font-size:12px!important;font-variant-numeric:tabular-nums}

.discover-result-card.is-entering{opacity:0;transform:translateY(34px) scale(.985);transform-origin:50% 0}
.discover-result-card.is-entering.is-visible{opacity:1;transform:none;transition:opacity .42s ease,transform .58s cubic-bezier(.18,.82,.24,1),box-shadow .3s ease}
.discover-result-card.is-entering .discover-reveal-node{opacity:0;transform:translateY(22px)}
.discover-result-card.is-entering.is-visible .discover-reveal-node{opacity:1;transform:none;transition:opacity .38s ease var(--discover-reveal-delay,70ms),transform .5s cubic-bezier(.18,.82,.24,1) var(--discover-reveal-delay,70ms)}
.discover-result-card.is-entering .discover-result-item{opacity:0;transform:translateY(28px) scale(.97)}
.discover-result-card.is-entering.is-visible .discover-result-item{opacity:1;transform:none;transition:opacity .36s ease var(--discover-card-delay,160ms),transform .48s cubic-bezier(.18,.82,.24,1) var(--discover-card-delay,160ms),border-color .2s ease,box-shadow .25s ease}
.discover-result-item{position:relative;isolation:isolate;transition:transform .24s ease,border-color .22s ease,box-shadow .24s ease}
.discover-result-item:after{content:"";position:absolute;z-index:-1;inset:0;border-radius:inherit;background:linear-gradient(135deg,rgba(31,95,191,.08),transparent 46%,rgba(109,75,195,.07));opacity:0;transition:opacity .24s ease}
.discover-result-item:hover{z-index:2;transform:translateY(-5px);border-color:#a9bedb;box-shadow:0 17px 34px rgba(25,42,70,.13)}
.discover-result-item:hover:after{opacity:1}
.discover-result-image img{transition:transform .45s cubic-bezier(.2,.8,.2,1),filter .35s ease}
.discover-result-item:hover .discover-result-image img{transform:scale(1.045);filter:saturate(1.08)}
.discover-result-details{transition:border-color .22s ease,box-shadow .25s ease,background-color .22s ease}
.discover-result-details[open]{border-color:#c9d7e8;background:#fff;box-shadow:0 10px 24px rgba(25,42,70,.055)}
.discover-result-details>summary{transition:background-color .2s ease,color .2s ease}
.discover-result-details>summary:hover{background:#f2f6fb;color:var(--discover-accent-strong)}
.discover-result-section.is-expanded .discover-result-extra{animation:discover-extra-result .42s cubic-bezier(.18,.82,.24,1) both}
@keyframes discover-extra-result{from{opacity:0;transform:translateY(18px) scale(.98)}to{opacity:1;transform:none}}
.discover-result-card.has-motion-complete{will-change:auto}

@container(max-width:620px){
  .discover-loading{align-items:flex-start;min-height:0;padding:18px}
  .discover-loading-orbit{flex-basis:58px;width:58px;height:58px}
  .discover-loading-orbit:before{inset:17px}
  .discover-loading-orbit span{top:4px;left:25px;transform-origin:4px 25px}
  .discover-loading-orbit i{right:5px;top:27px;transform-origin:-20px 3px}
  .discover-loading-orbit b{left:8px;bottom:10px;transform-origin:21px -13px}
  .discover-loading-content{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){
  .discover-result-card.is-entering,.discover-result-card.is-entering .discover-reveal-node,.discover-result-card.is-entering .discover-result-item{opacity:1!important;transform:none!important}
  .discover-loading:after,.discover-loading-orbit,.discover-loading-orbit:before,.discover-loading-orbit span,.discover-loading-orbit i,.discover-loading-orbit b,.discover-loading-bar{animation:none!important}
}

