/* WONDA Site — Plataforma, Módulos y Decisiones. Extiende base.css + sections.css.
   Reglas: hairline 1px, naranja sólo en el foco, mono para toda cifra, cero borde-izquierdo de acento. */

/* ---------- Shot · slot de captura real de la app ---------- */
.shot{position:relative;margin:0;display:flex;flex-direction:column;gap:12px}
.shot .fr{position:relative;border:1px solid var(--border-1);border-radius:var(--radius-lg);overflow:hidden;background:var(--bg-elev);box-shadow:var(--shadow-3),var(--inset-line)}
.shot img{width:100%;height:auto;display:block}
.shot .ph{display:none}
.shot.pending img{display:none}
.shot.pending .ph{display:flex;flex-direction:column;justify-content:space-between;gap:26px;aspect-ratio:16/10;padding:clamp(18px,2.2vw,28px);background-color:var(--bg);background-image:radial-gradient(ellipse 55% 65% at 72% 12%,rgba(249,115,22,.07),transparent 64%),linear-gradient(rgba(150,150,156,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(150,150,156,.055) 1px,transparent 1px);background-size:auto,26px 26px,26px 26px}
[data-theme="light"] .shot.pending .ph{background-image:radial-gradient(ellipse 55% 65% at 72% 12%,rgba(249,115,22,.07),transparent 64%),linear-gradient(rgba(22,24,29,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(22,24,29,.05) 1px,transparent 1px)}
.shot .ph .k{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-ink);display:inline-flex;align-items:center;gap:9px}
.shot .ph .k::before{content:"";width:6px;height:6px;background:var(--accent);border-radius:1px;transform:rotate(45deg);flex:none;animation:shotb 6s var(--ease) infinite}
@keyframes shotb{0%,100%{opacity:.4}50%{opacity:1}}
.shot .ph p{font-size:clamp(14px,1.1vw,16.5px);color:var(--fg-2);line-height:1.55;max-width:44ch;margin:0}
.shot .ph .meta{display:flex;flex-wrap:wrap;gap:8px 18px;align-items:baseline;font-family:var(--font-mono);font-size:10px;letter-spacing:.07em;color:var(--fg-3)}
.shot .ph .meta .fn{color:var(--fg-2);border:1px solid var(--border-1);border-radius:var(--radius-sm);padding:4px 8px}
.shot figcaption{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.06em;color:var(--fg-3);line-height:1.6;display:flex;gap:9px;align-items:baseline}
.shot figcaption::before{content:"";width:14px;height:1px;background:var(--accent);flex:none;transform:translateY(-4px)}
.shot--hero .fr{border-radius:var(--radius-xl)}
/* Loop de vídeo real de la app */
.shot video{width:100%;height:auto;display:block}
.shot.pending video{display:none}

/* ---------- Arquitectura por capas · diagrama navegable ---------- */
.arch{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.82fr);gap:clamp(24px,4vw,64px);align-items:start}
.arch-stack{display:flex;flex-direction:column;border-top:1px solid var(--border-1)}
.arch-l{display:grid;grid-template-columns:44px minmax(0,1fr);gap:clamp(14px,2vw,26px);padding:clamp(18px,2.2vw,26px) 0;border-bottom:1px solid var(--border-1);cursor:default;transition:background var(--t-base) var(--ease)}
.arch-l .n{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.1em;color:var(--fg-3);padding-top:5px;transition:color var(--t-base) var(--ease)}
.arch-l h3{font-size:clamp(17px,1.35vw,20px);letter-spacing:-.015em;transition:color var(--t-base) var(--ease)}
.arch-l p{font-size:14px;color:var(--fg-3);line-height:1.6;margin-top:7px;max-width:50ch}
.arch-l .mods{display:flex;flex-wrap:wrap;gap:7px;margin-top:13px}
.arch-l .mods a{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--fg-3);border:1px solid var(--border-1);border-radius:var(--radius-full);padding:5px 11px;transition:all var(--t-fast) var(--ease)}
.arch-l .mods a:hover{border-color:var(--accent);color:var(--accent-ink);background:var(--accent-soft)}
.arch-l:hover .n,.arch-l:hover h3{color:var(--accent-ink)}
.arch-side{position:sticky;top:96px;border:1px solid var(--border-1);border-radius:var(--radius-xl);background:var(--bg-elev);box-shadow:var(--inset-line);overflow:hidden}
.arch-side .hd{padding:14px 20px;border-bottom:1px solid var(--border-1);background:var(--bg-deep);font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--fg-3);display:flex;justify-content:space-between;gap:12px}
.arch-side .hd b{color:var(--accent-ink);font-weight:500}
.arch-side .bd{padding:22px 20px;display:flex;flex-direction:column;gap:0}
.arch-flow{display:flex;flex-direction:column;gap:0}
.arch-fl{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:13px 14px;border:1px solid var(--border-1);border-radius:var(--radius-md);background:var(--bg);transition:border-color var(--t-base) var(--ease),background var(--t-base) var(--ease)}
[data-theme="light"] .arch-fl{background:var(--bg-elev-2)}
.arch-fl .t{font-size:13px;font-weight:600;color:var(--fg-1);letter-spacing:-.01em}
.arch-fl .s{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.06em;color:var(--fg-3);margin-top:3px;display:block;font-weight:400}
.arch-fl .v{font-family:var(--font-mono);font-size:11px;color:var(--accent-ink);letter-spacing:-.01em;white-space:nowrap}
.arch-conn{height:16px;margin-left:22px;border-left:1px dashed var(--border-1);position:relative}
.arch-conn::after{content:"";position:absolute;left:-3px;top:50%;width:5px;height:5px;border-radius:50%;background:var(--accent);opacity:.55;transform:translateY(-50%)}
.arch-side .ft{padding:14px 20px;border-top:1px solid var(--border-1);background:var(--bg-deep);font-family:var(--font-mono);font-size:10px;letter-spacing:.05em;color:var(--fg-3);line-height:1.7}
@media(max-width:960px){.arch{grid-template-columns:1fr}.arch-side{position:relative;top:0}}

/* ---------- Matriz de permisos de escritura ---------- */
.perm{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--border-1);border-radius:var(--radius-xl);overflow:hidden;background:var(--bg-elev);box-shadow:var(--inset-line)}
.perm>div{padding:clamp(18px,2.2vw,24px) clamp(18px,2.2vw,24px);display:flex;flex-direction:column;gap:7px;border-right:1px solid var(--border-1);border-bottom:1px solid var(--border-1)}
.perm>div:nth-child(3n){border-right:none}
.perm>div:nth-last-child(-n+3){border-bottom:none}
.perm .pa{font-size:15px;font-weight:600;letter-spacing:-.012em;color:var(--fg-1)}
.perm .ps{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.11em;text-transform:uppercase;display:inline-flex;align-items:center;gap:7px}
.perm .ps::before{content:"";width:5px;height:5px;border-radius:50%;background:currentColor;flex:none}
.perm .ps.auto{color:var(--accent-ink)}
.perm .ps.appr{color:var(--ok)}
.perm .pd{font-size:12.5px;color:var(--fg-3);line-height:1.55}
@media(max-width:860px){.perm{grid-template-columns:repeat(2,1fr)}.perm>div:nth-child(3n){border-right:1px solid var(--border-1)}.perm>div:nth-child(2n){border-right:none}.perm>div:nth-last-child(-n+3){border-bottom:1px solid var(--border-1)}.perm>div:last-child{border-bottom:none}}
@media(max-width:520px){.perm{grid-template-columns:1fr}.perm>div{border-right:none !important}}

/* ---------- Grid de módulos por área ---------- */
.area{margin-top:clamp(30px,4vw,48px)}
.area-h{display:flex;align-items:baseline;gap:16px;padding-bottom:16px;border-bottom:1px solid var(--border-1);margin-bottom:18px}
.area-h .an{font-family:var(--font-mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent-ink)}
.area-h .ad{font-size:13.5px;color:var(--fg-3);margin-left:auto;text-align:right}
.modgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.mod{position:relative;display:flex;flex-direction:column;gap:9px;padding:20px 22px 22px;border:1px solid var(--border-1);border-radius:var(--radius-lg);background:var(--bg-elev);box-shadow:var(--inset-line);transition:border-color 400ms var(--ease),box-shadow 400ms var(--ease)}
.mod:hover{border-color:rgba(249,115,22,.4);box-shadow:0 0 0 1px rgba(249,115,22,.28),0 26px 54px rgba(4,4,5,.45);color:inherit}
[data-theme="light"] .mod:hover{box-shadow:0 0 0 1px rgba(249,115,22,.3),0 22px 46px rgba(31,26,16,.13)}
.mod .mi{width:34px;height:34px;border-radius:var(--radius-sm);border:1px solid var(--border-1);background:var(--bg);display:flex;align-items:center;justify-content:center;color:var(--accent-ink);flex:none}
.mod .mi svg{width:17px;height:17px;stroke-width:1.7}
.mod h3{font-size:16.5px;letter-spacing:-.015em}
.mod p{font-size:13.5px;color:var(--fg-3);line-height:1.55;flex:1}
.mod .mg{font-family:var(--font-mono);font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:var(--fg-3);display:flex;align-items:center;gap:7px;margin-top:4px;transition:color var(--t-base) var(--ease)}
.mod:hover .mg{color:var(--accent-ink)}
.mod .mg svg{width:12px;height:12px;stroke-width:2;transition:transform var(--t-base) var(--ease)}
.mod:hover .mg svg{transform:translateX(4px)}
.mod .wave{position:absolute;top:18px;right:20px;font-family:var(--font-mono);font-size:8.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--fg-3);border:1px solid var(--border-1);border-radius:var(--radius-full);padding:3px 8px}
@media(max-width:1000px){.modgrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.modgrid{grid-template-columns:1fr}.area-h{flex-direction:column;gap:6px}.area-h .ad{margin-left:0;text-align:left}}

/* ---------- Operado, no entregado ---------- */
.opn{border:1px solid var(--border-1);border-radius:var(--radius-xl);background:var(--bg-elev);box-shadow:var(--inset-line);overflow:hidden}
.opn-top{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:14px;padding:16px clamp(22px,3vw,36px);border-bottom:1px solid var(--border-1);background:var(--bg-deep)}
.opn-top .l{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-ink)}
.opn-top .r{font-family:var(--font-mono);font-size:10px;letter-spacing:.09em;text-transform:uppercase;color:var(--fg-3)}
.opn-body{display:grid;grid-template-columns:repeat(3,1fr)}
.opn-c{padding:clamp(24px,3vw,34px) clamp(22px,2.6vw,32px);display:flex;flex-direction:column;gap:11px}
.opn-c+.opn-c{border-left:1px solid var(--border-1)}
.opn-c .who{font-family:var(--font-mono);font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--fg-3);display:flex;align-items:center;gap:8px}
.opn-c .who i{width:6px;height:6px;border-radius:50%;background:var(--fg-3);flex:none;font-style:normal}
.opn-c.ai .who{color:var(--accent-ink)}
.opn-c.ai .who i{background:var(--accent);box-shadow:0 0 9px rgba(249,115,22,.6)}
.opn-c.hum .who i{background:var(--ok)}
.opn-c h4,.opn-c h3{font-size:16.5px;letter-spacing:-.015em;margin:0}
.opn-c ul{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:9px}
.opn-c li{font-size:13.5px;color:var(--fg-3);line-height:1.55;padding-left:17px;position:relative}
.opn-c li::before{content:"";position:absolute;left:0;top:8px;width:6px;height:1px;background:var(--fg-3)}
.opn-c.ai li::before{background:var(--accent)}
@media(max-width:860px){.opn-body{grid-template-columns:1fr}.opn-c+.opn-c{border-left:0;border-top:1px solid var(--border-1)}}

/* ---------- Jobs to be done · bloques alternados ---------- */
.jtbd{display:flex;flex-direction:column;gap:clamp(52px,7vw,104px)}
/* La captura ocupa el ancho del contenedor: a 1440 pasa de 582 px a 1200 px,
   que es la medida a la que un detalle ampliado de la app se lee sin esfuerzo. */
.job{display:grid;grid-template-columns:minmax(0,1fr);gap:clamp(24px,3.4vw,44px);align-items:start}
.job>.rv,.job>div:last-child{width:100%}
.job-txt{display:flex;flex-direction:column;gap:14px}
.job-txt .jn{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.15em;text-transform:uppercase;color:var(--accent-ink);display:flex;align-items:center;gap:10px}
.job-txt .jn::before{content:"";width:20px;height:1px;background:var(--accent)}
.job-txt .prob{font-size:clamp(19px,1.7vw,25px);line-height:1.35;letter-spacing:-.02em;color:var(--fg-1);font-weight:600;max-width:24ch;text-wrap:balance}
.job-txt p{font-size:15px;line-height:1.68;color:var(--fg-2);max-width:62ch}
.job-txt p b{color:var(--fg-1);font-weight:600}
.job-txt .fx{margin-top:6px;padding-top:16px;border-top:1px solid var(--border-1);display:flex;flex-wrap:wrap;gap:8px 26px;max-width:none}
.job-txt .fx span{flex:1 1 260px}
.job-txt .fx span{font-family:var(--font-mono);font-size:11.5px;color:var(--fg-3);line-height:1.6;display:flex;gap:10px;align-items:baseline}
.job-txt .fx span::before{content:"↳";color:var(--accent-ink);flex:none}
.job-txt .fx span b{color:var(--fg-2);font-weight:500}
@media(max-width:900px){.job{grid-template-columns:1fr}.job-txt .fx span{flex:1 1 100%}}

/* ---------- Módulos hermanos + canales ---------- */
.sib{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.sibc{display:flex;flex-direction:column;gap:8px;padding:20px 22px;border:1px solid var(--border-1);border-radius:var(--radius-lg);background:var(--bg-elev);box-shadow:var(--inset-line);transition:border-color var(--t-base) var(--ease)}
.sibc:hover{border-color:rgba(249,115,22,.42);color:inherit}
.sibc .k{font-family:var(--font-mono);font-size:9.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--fg-3)}
.sibc h4,.sibc h3{font-size:16px;letter-spacing:-.015em;margin:0}
.sibc p{font-size:13px;color:var(--fg-3);line-height:1.55}
.sibc .go{font-family:var(--font-mono);font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:var(--accent-ink);display:flex;align-items:center;gap:6px;margin-top:2px}
.sibc .go svg{width:12px;height:12px;stroke-width:2;transition:transform var(--t-base) var(--ease)}
.sibc:hover .go svg{transform:translateX(4px)}
.chans{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}
.chan{font-family:var(--font-mono);font-size:11px;letter-spacing:.05em;color:var(--fg-2);border:1px solid var(--border-1);border-radius:var(--radius-full);padding:8px 14px;display:inline-flex;align-items:center;gap:8px;background:var(--bg-elev)}
.chan::before{content:"";width:5px;height:5px;border-radius:50%;background:var(--accent);opacity:.75;flex:none}
.chan.off::before{background:var(--fg-3);opacity:.5}
@media(max-width:900px){.sib{grid-template-columns:1fr}}

/* ---------- Tabla de decisión ---------- */
.dtab-wrap{border:1px solid var(--border-1);border-radius:var(--radius-xl);overflow:hidden;background:var(--bg-elev);box-shadow:var(--inset-line)}
.dtab{width:100%;border-collapse:collapse;font-size:14px}
.dtab th,.dtab td{text-align:left;vertical-align:top;padding:clamp(15px,1.8vw,20px) clamp(14px,2vw,24px);border-bottom:1px solid var(--border-1)}
.dtab thead th{background:var(--bg-deep);font-family:var(--font-mono);font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--fg-3);font-weight:500;white-space:nowrap;position:sticky;top:0;z-index:2}
.dtab thead th.us{color:var(--accent-ink)}
.dtab tbody th{font-weight:600;color:var(--fg-1);font-size:13.5px;letter-spacing:-.01em;width:20%}
.dtab td{color:var(--fg-3);line-height:1.55}
.dtab td.us{background:rgba(249,115,22,.045);color:var(--fg-2)}
[data-theme="light"] .dtab td.us{background:rgba(249,115,22,.06)}
.dtab .fig{display:block;font-family:var(--font-mono);font-size:clamp(15px,1.3vw,18px);letter-spacing:-.02em;color:var(--fg-1);font-variant-numeric:tabular-nums;margin-bottom:6px}
.dtab td.us .fig{color:var(--accent-ink)}
.dtab tr:last-child th,.dtab tr:last-child td{border-bottom:none}
.dtab-note{display:flex;flex-wrap:wrap;gap:8px 20px;align-items:baseline;padding:14px clamp(14px,2vw,24px);background:var(--bg-deep);border-top:1px solid var(--border-1);font-family:var(--font-mono);font-size:10px;letter-spacing:.05em;color:var(--fg-3);line-height:1.7}
.dtab-scroll{overflow-x:auto}
@media(max-width:760px){.dtab{min-width:640px}}

/* ---------- Honestidad · cuándo la alternativa gana ---------- */
.honest{border:1px solid rgba(34,197,94,.28);border-radius:var(--radius-xl);background:var(--bg-elev);overflow:hidden}
.honest-top{padding:16px clamp(22px,3vw,36px);border-bottom:1px solid var(--border-1);background:var(--ok-soft);display:flex;flex-wrap:wrap;gap:12px;align-items:baseline;justify-content:space-between}
.honest-top .l{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--ok)}
.honest-top .r{font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--fg-3)}
.honest-body{display:grid;grid-template-columns:repeat(2,1fr)}
.honest-i{padding:clamp(24px,3vw,32px);display:flex;flex-direction:column;gap:9px;border-bottom:1px solid var(--border-1)}
.honest-i:nth-child(odd){border-right:1px solid var(--border-1)}
.honest-i:nth-last-child(-n+2){border-bottom:none}
.honest-i .hn{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;color:var(--fg-3)}
.honest-i h4,.honest-i h3{font-size:17px;letter-spacing:-.018em;margin:0;max-width:26ch}
.honest-i p{font-size:14px;color:var(--fg-3);line-height:1.62;max-width:46ch}
.honest-foot{padding:clamp(20px,2.4vw,26px) clamp(22px,3vw,36px);border-top:1px solid var(--border-1);background:var(--bg-deep);font-size:14.5px;color:var(--fg-2);line-height:1.65}
.honest-foot b{color:var(--fg-1);font-weight:600}
@media(max-width:760px){.honest-body{grid-template-columns:1fr}.honest-i:nth-child(odd){border-right:none}.honest-i:nth-last-child(-n+2):not(:last-child){border-bottom:1px solid var(--border-1)}}

/* ---------- Límite estructural · el argumento que no se compra con presupuesto ---------- */
.limit{display:grid;grid-template-columns:minmax(0,190px) minmax(0,1fr);column-gap:clamp(22px,5vw,72px);row-gap:0;padding-top:28px;border-top:1px solid var(--border-1);margin-top:clamp(34px,4.5vw,52px)}
.limit .lt{font-family:var(--font-mono);font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--accent-ink);line-height:1.55;display:flex;flex-direction:column;gap:14px;align-self:start}
.limit .lt::before{content:"";width:8px;height:8px;background:var(--accent);border-radius:1px;transform:rotate(45deg)}
.limit>p:not(.lt){grid-column:2}
.limit p{margin:0;max-width:62ch;font-size:clamp(19px,1.5vw,25px);line-height:1.46;letter-spacing:-.011em;color:var(--fg-1)}
.limit p+p{margin-top:18px;font-size:clamp(15px,.9vw,16.5px);line-height:1.72;letter-spacing:0;color:var(--fg-2)}
.limit p b{color:var(--accent-ink);font-weight:600}
@media(max-width:720px){.limit{grid-template-columns:1fr;column-gap:0;row-gap:16px}.limit>p:not(.lt){grid-column:1}.limit .lt{flex-direction:row;align-items:center}}

/* ---------- Calculadora de fuga ---------- */
.calc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.92fr);gap:0;border:1px solid var(--border-1);border-radius:var(--radius-xl);overflow:hidden;background:var(--bg-elev);box-shadow:var(--inset-line)}
.calc-in{padding:clamp(26px,3.2vw,40px);display:flex;flex-direction:column;gap:22px}
.calc-f label{display:flex;justify-content:space-between;align-items:baseline;gap:14px;font-size:13.5px;font-weight:600;color:var(--fg-1);margin-bottom:10px}
.calc-f label .val{font-family:var(--font-mono);font-size:14px;color:var(--accent-ink);letter-spacing:-.01em;font-variant-numeric:tabular-nums}
.calc-f input[type=range]{width:100%;-webkit-appearance:none;appearance:none;height:3px;border-radius:999px;background:var(--border-1);outline:none}
.calc-f input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:17px;height:17px;border-radius:50%;background:var(--accent);cursor:pointer;border:3px solid var(--bg-elev);box-shadow:0 0 0 1px rgba(249,115,22,.5)}
.calc-f input[type=range]::-moz-range-thumb{width:17px;height:17px;border-radius:50%;background:var(--accent);cursor:pointer;border:3px solid var(--bg-elev);box-shadow:0 0 0 1px rgba(249,115,22,.5)}
.calc-f .hint{font-family:var(--font-mono);font-size:10px;letter-spacing:.05em;color:var(--fg-3);margin-top:8px;display:block}
.calc-out{border-left:1px solid var(--border-1);background:var(--bg-deep);padding:clamp(26px,3.2vw,40px);display:flex;flex-direction:column;gap:0;justify-content:center}
.calc-out .k{font-family:var(--font-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--fg-3)}
.calc-out .big{font-family:var(--font-mono);font-size:clamp(38px,4.6vw,66px);letter-spacing:-.04em;color:var(--accent-ink);line-height:1;margin-top:14px;font-variant-numeric:tabular-nums}
.calc-out .per{font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--fg-3);margin-top:12px}
.calc-rows{margin-top:26px;padding-top:20px;border-top:1px solid var(--border-1);display:flex;flex-direction:column;gap:0}
.calc-rows div{display:flex;justify-content:space-between;align-items:baseline;gap:14px;padding:10px 0;border-bottom:1px solid var(--border-1);font-size:13px;color:var(--fg-3)}
.calc-rows div:last-child{border-bottom:none}
.calc-rows div b{font-family:var(--font-mono);color:var(--fg-1);font-weight:500;font-variant-numeric:tabular-nums}
.calc-note{font-family:var(--font-mono);font-size:10px;letter-spacing:.05em;color:var(--fg-3);line-height:1.7;margin-top:20px}
@media(max-width:860px){.calc{grid-template-columns:1fr}.calc-out{border-left:none;border-top:1px solid var(--border-1)}}

/* ---------- Selector de país ---------- */
.cty{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:26px}
.cty button{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:9px 16px;border-radius:var(--radius-full);border:1px solid var(--border-1);background:transparent;color:var(--fg-3);transition:all var(--t-fast) var(--ease)}
.cty button:hover{color:var(--fg-1);border-color:var(--fg-3)}
.cty button.on{background:var(--accent-soft);border-color:rgba(249,115,22,.5);color:var(--accent-ink);box-shadow:0 0 0 1px rgba(249,115,22,.22)}

/* ---------- Última actualización + fuentes ---------- */
.upd{display:inline-flex;align-items:center;gap:9px;font-family:var(--font-mono);font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:var(--fg-3);border:1px solid var(--border-1);border-radius:var(--radius-full);padding:6px 13px}
.upd::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--ok);box-shadow:0 0 8px rgba(34,197,94,.6);flex:none}
.srcs{margin-top:clamp(28px,3.4vw,42px);padding-top:22px;border-top:1px solid var(--border-1);display:flex;flex-direction:column;gap:11px}
.srcs .sh{font-family:var(--font-mono);font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--fg-3)}
.srcs ol{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:8px;color:var(--fg-3);font-size:12.5px;line-height:1.6}
.srcs ol li::marker{font-family:var(--font-mono);font-size:11px;color:var(--fg-3)}
.srcs a{color:var(--fg-2);text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--border-1)}
.srcs a:hover{color:var(--accent-ink);text-decoration-color:var(--accent)}

/* ---------- Decisiones · cards del hub ---------- */
.dec{display:flex;flex-direction:column}
.dec-i{display:grid;grid-template-columns:minmax(0,64px) minmax(0,1.35fr) minmax(0,1fr) auto;gap:clamp(18px,3.4vw,52px);align-items:center;padding:clamp(26px,3.4vw,40px) 0;border-top:1px solid var(--border-1);transition:background var(--t-base) var(--ease)}
.dec-i:last-child{border-bottom:1px solid var(--border-1)}
.dec-i .dn{font-family:var(--font-mono);font-size:clamp(20px,2vw,28px);letter-spacing:-.03em;color:var(--fg-3);line-height:1;transition:color var(--t-base) var(--ease)}
.dec-i:hover .dn{color:var(--accent-ink)}
.dec-i h3{font-size:clamp(20px,1.8vw,27px);letter-spacing:-.022em;line-height:1.2;max-width:20ch}
.dec-i .alt{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-ink);margin-bottom:9px;display:block}
.dec-i p{font-size:14px;color:var(--fg-3);line-height:1.62;max-width:44ch}
.dec-i .go{width:40px;height:40px;border-radius:50%;border:1px solid var(--border-1);display:flex;align-items:center;justify-content:center;color:var(--fg-3);flex:none;transition:all var(--t-base) var(--ease)}
.dec-i .go svg{width:15px;height:15px;stroke-width:1.9}
.dec-i:hover .go{border-color:var(--accent);color:var(--accent-ink);background:var(--accent-soft)}
@media(max-width:900px){.dec-i{grid-template-columns:44px 1fr auto;gap:16px 20px}.dec-i p{grid-column:2/-1;max-width:none}}

/* ---------- Promesa de honestidad (hub decisiones) ---------- */
.promise{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--border-1);border-radius:var(--radius-xl);overflow:hidden;background:var(--bg-elev);box-shadow:var(--inset-line)}
.promise div{padding:clamp(24px,3vw,34px);display:flex;flex-direction:column;gap:10px}
.promise div+div{border-left:1px solid var(--border-1)}
.promise .pk{font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-ink)}
.promise h4,.promise h3{font-size:16.5px;letter-spacing:-.015em;margin:0}
.promise p{font-size:13.5px;color:var(--fg-3);line-height:1.6}
@media(max-width:820px){.promise{grid-template-columns:1fr}.promise div+div{border-left:0;border-top:1px solid var(--border-1)}}

/* ---------- Seguridad y control ---------- */
.sec-list{display:grid;grid-template-columns:repeat(2,1fr);gap:0 clamp(28px,4vw,56px)}
.sec-it{padding:clamp(20px,2.4vw,28px) 0;border-top:1px solid var(--border-1);display:flex;flex-direction:column;gap:8px}
.sec-it .sk{font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-ink)}
.sec-it h4,.sec-it h3{font-size:16.5px;letter-spacing:-.015em;margin:0}
.sec-it p{font-size:14px;color:var(--fg-3);line-height:1.62;max-width:48ch}
@media(max-width:760px){.sec-list{grid-template-columns:1fr}}

/* ---------- Prueba: WONDA sobre WONDA ---------- */
.dogfood{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border:1px solid var(--border-1);border-radius:var(--radius-xl);overflow:hidden;background:var(--bg-elev);box-shadow:var(--inset-line)}
.dogfood div{padding:clamp(22px,2.6vw,30px);display:flex;flex-direction:column;gap:8px}
.dogfood div+div{border-left:1px solid var(--border-1)}
.dogfood .dv{font-family:var(--font-mono);font-size:clamp(18px,1.6vw,23px);letter-spacing:-.02em;color:var(--accent-ink);line-height:1.1}
.dogfood .dl{font-size:13.5px;color:var(--fg-3);line-height:1.55}
.dogfood .dl b{color:var(--fg-2);font-weight:500}
@media(max-width:900px){.dogfood{grid-template-columns:repeat(2,1fr)}.dogfood div:nth-child(3){border-left:0}.dogfood div:nth-child(n+3){border-top:1px solid var(--border-1)}}
@media(max-width:520px){.dogfood{grid-template-columns:1fr}.dogfood div+div{border-left:0;border-top:1px solid var(--border-1)}}

/* ---------- Escenario tipo (mini-caso con números) ---------- */
.scen{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);gap:0;border:1px solid var(--border-1);border-radius:var(--radius-xl);overflow:hidden;background:var(--bg-elev)}
.scen-l{padding:clamp(28px,3.6vw,44px);display:flex;flex-direction:column;gap:14px}
.scen-l .sk{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.15em;text-transform:uppercase;color:var(--accent-ink)}
.scen-l h3{font-size:clamp(21px,1.8vw,29px);letter-spacing:-.022em;line-height:1.2;max-width:22ch}
.scen-l p{font-size:14.5px;color:var(--fg-2);line-height:1.68;max-width:50ch}
.scen-r{border-left:1px solid var(--border-1);background:var(--bg-deep);padding:clamp(24px,3vw,36px);display:flex;flex-direction:column;justify-content:center}
.scen-r>.rk{font-family:var(--font-mono);font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--fg-3);padding-bottom:14px;border-bottom:1px solid var(--border-1)}
.scen-row{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:14px 0;border-bottom:1px solid var(--border-1)}
.scen-row:last-child{border-bottom:none;padding-bottom:0}
.scen-row .l{font-size:13px;color:var(--fg-3);line-height:1.45;max-width:22ch}
.scen-row .v{font-family:var(--font-mono);font-size:clamp(16px,1.5vw,21px);letter-spacing:-.02em;color:var(--fg-1);white-space:nowrap;font-variant-numeric:tabular-nums}
.scen-row.hot .v{color:var(--accent-ink)}
@media(max-width:860px){.scen{grid-template-columns:1fr}.scen-r{border-left:0;border-top:1px solid var(--border-1)}}
/* Tema claro · el panel de datos se invierte a tinta: contraste real contra la sección y la tarjeta */
[data-theme="light"] .scen,[data-theme="light"] .calc{box-shadow:var(--shadow-2)}
[data-theme="light"] .scen-r,[data-theme="light"] .calc-out{--fg-1:#F7F6F2;--fg-2:#CFCCC4;--fg-3:#9C978E;--border-1:rgba(255,255,255,.13);background:#16181D;border-color:#16181D;box-shadow:inset 1px 0 0 rgba(255,255,255,.05)}

/* ---------- Paneles de módulo ----------
   Los slots de la sección Plataforma no muestran capturas: muestran el mismo panel de
   «sala de control» de la home, con los datos del módulo. Todo es HTML y SVG estáticos,
   escritos en la página: no hay imagen que cargar ni salto de maquetación que corregir. */
.shot .fr.is-panel{background:transparent;border:0;box-shadow:none;overflow:visible;border-radius:0}
.shot .fr.is-panel img{width:auto;height:auto}
.shot .fr.is-panel .cr-mark{width:22px;height:22px}
.shot .fr.is-panel .cr-fr .av img{width:100%;height:100%}
.cr--slot{max-width:none;transform:none;border-radius:var(--radius-lg)}
.cr--slot .cr-body{padding:clamp(14px,1.5vw,20px);gap:clamp(10px,1.2vw,14px)}
.cr--slot .cr-kpis{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}
.cr-cols{display:grid;gap:12px;align-items:start}
.cr-cols.c2{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.cr-cols.c21{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)}
@media (max-width:820px){.cr-cols.c2,.cr-cols.c21{grid-template-columns:minmax(0,1fr)}}
.cr-card{border:1px solid var(--border-1);border-radius:var(--radius-md);background:var(--bg);padding:13px}
[data-theme="light"] .cr-card{background:var(--bg-elev-2)}
.cr-ch{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:11px}
.cr-ch .ct{font-size:12px;font-weight:600;letter-spacing:-.01em}
.cr-ch .cs{font-family:var(--font-mono);font-size:9px;color:var(--fg-3)}
/* Tablero por columnas */
.cr-board{display:grid;grid-template-columns:repeat(var(--n,4),minmax(0,1fr));gap:9px}
@media (max-width:820px){.cr-board{grid-template-columns:repeat(2,minmax(0,1fr))}}
.cr-bcol{display:flex;flex-direction:column;gap:7px}
.cr-bh{display:flex;align-items:center;justify-content:space-between;font-family:var(--font-mono);font-size:8.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--fg-3);padding-bottom:6px;border-bottom:1px solid var(--border-1)}
.cr-bh b{color:var(--fg-2);font-weight:500}
.cr-cd{border:1px solid var(--border-1);border-radius:var(--radius-sm);background:var(--bg);padding:9px 10px;display:flex;flex-direction:column;gap:4px}
[data-theme="light"] .cr-cd{background:var(--bg-elev-2)}
.cr-cd.hot{border-color:rgba(249,115,22,.45)}
.cr-cd .t{font-size:11.5px;font-weight:600;letter-spacing:-.01em;line-height:1.25}
.cr-cd .m{font-family:var(--font-mono);font-size:9px;color:var(--fg-3);display:flex;gap:7px;flex-wrap:wrap}
.cr-cd .m .o{color:var(--accent-ink)}
/* Tabla de filas */
.cr-rows{display:flex;flex-direction:column}
.cr-rh,.cr-rw{display:grid;grid-template-columns:var(--g,1.6fr 1fr 1fr .8fr);gap:10px;align-items:center;padding:9px 2px}
.cr-rh{font-family:var(--font-mono);font-size:8.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--fg-3);border-bottom:1px solid var(--border-1);padding-top:0}
.cr-rw{border-bottom:1px solid var(--border-1);font-size:11.5px;color:var(--fg-2)}
.cr-rw:last-child{border-bottom:0;padding-bottom:0}
.cr-rw b{color:var(--fg-1);font-weight:600}
.cr-rw .mono{font-family:var(--font-mono);font-size:10.5px;color:var(--fg-3)}
.cr-rh>*,.cr-rw>*{min-width:0;overflow-wrap:break-word}
.cr-st{font-family:var(--font-mono);font-size:9px;letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--border-1);border-radius:var(--radius-full);padding:3px 8px;color:var(--fg-3);white-space:nowrap;justify-self:start}
.cr-st.ok{color:var(--ok);border-color:rgba(34,197,94,.35)}
.cr-st.hot{color:var(--accent-ink);border-color:rgba(249,115,22,.4)}
.cr-st.warn{color:var(--warn);border-color:rgba(234,179,8,.35)}
/* Pasos de una secuencia */
.cr-steps{display:flex;flex-direction:column;gap:0}
.cr-step{display:grid;grid-template-columns:26px 1fr auto;gap:11px;align-items:start;padding:10px 0;border-bottom:1px solid var(--border-1);position:relative}
.cr-step:last-child{border-bottom:0;padding-bottom:0}
.cr-step .n{font-family:var(--font-mono);font-size:9.5px;color:var(--accent-ink);border:1px solid var(--border-1);border-radius:var(--radius-sm);text-align:center;padding:3px 0}
.cr-step .t{font-size:11.5px;color:var(--fg-1);font-weight:600;letter-spacing:-.01em}
.cr-step .d{font-family:var(--font-mono);font-size:9.5px;color:var(--fg-3);margin-top:3px;line-height:1.5}
.cr-step .w{font-family:var(--font-mono);font-size:9px;color:var(--fg-3);white-space:nowrap}
/* Aros de avance */
.cr-rings{display:grid;grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:10px}
.cr-ring{border:1px solid var(--border-1);border-radius:var(--radius-md);background:var(--bg);padding:12px;display:flex;gap:12px;align-items:center}
[data-theme="light"] .cr-ring{background:var(--bg-elev-2)}
.cr-ring svg{width:44px;height:44px;flex:none}
.cr-ring .rt{display:flex;flex-direction:column;gap:4px;min-width:0}
.cr-ring .rl{display:block;font-size:11px;line-height:1.3;color:var(--fg-1);font-weight:600;letter-spacing:-.01em}
.cr-ring .rd{display:block;font-family:var(--font-mono);font-size:9px;line-height:1.45;color:var(--fg-3)}
.cr-ring .rnum{font-family:var(--font-mono);font-size:11px;fill:var(--fg-1)}
/* Semana de agenda */
.cr-cal{display:grid;grid-template-columns:34px repeat(var(--d,5),minmax(0,1fr));gap:4px}
.cr-cal .hd{font-family:var(--font-mono);font-size:8.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--fg-3);text-align:center;padding-bottom:4px}
.cr-cal .hr{font-family:var(--font-mono);font-size:8.5px;color:var(--fg-3);text-align:right;padding-right:4px;line-height:26px}
.cr-cal .cell{height:26px;border:1px solid var(--border-1);border-radius:var(--radius-sm);background:var(--bg)}
[data-theme="light"] .cr-cal .cell{background:var(--bg-elev-2)}
.cr-cal .ev{height:26px;border-radius:var(--radius-sm);border:1px solid rgba(249,115,22,.42);background:rgba(249,115,22,.12);color:var(--accent-ink);font-family:var(--font-mono);font-size:8.5px;display:flex;align-items:center;padding:0 6px;overflow:hidden;white-space:nowrap}
.cr-cal .ev.mut{border-color:var(--border-1);background:var(--bg-elev);color:var(--fg-3)}
/* Vista de móvil (link in bio) */
.cr-phone{border:1px solid var(--border-1);border-radius:20px;background:var(--bg);padding:14px 12px;max-width:212px;margin:0 auto;display:flex;flex-direction:column;gap:8px}
[data-theme="light"] .cr-phone{background:var(--bg-elev-2)}
.cr-phone .ph-b{width:38px;height:38px;border-radius:50%;background:var(--accent-soft);border:1px solid rgba(249,115,22,.4);margin:2px auto 0}
.cr-phone .ph-n{text-align:center;font-size:12px;font-weight:600;letter-spacing:-.01em}
.cr-phone .ph-s{text-align:center;font-family:var(--font-mono);font-size:8.5px;color:var(--fg-3);margin-top:-4px}
.cr-phone .ph-l{border:1px solid var(--border-1);border-radius:var(--radius-sm);padding:8px 10px;font-size:10.5px;display:flex;justify-content:space-between;gap:8px;align-items:center}
.cr-phone .ph-l .c{font-family:var(--font-mono);font-size:8.5px;color:var(--fg-3)}
.cr-phone .ph-l.hot{border-color:rgba(249,115,22,.45);color:var(--accent-ink)}
/* Nota al pie del panel */
.cr-note{font-family:var(--font-mono);font-size:9px;letter-spacing:.06em;color:var(--fg-3);display:flex;align-items:center;gap:8px;padding-top:2px}
.cr-note::before{content:"";width:5px;height:5px;background:var(--accent);border-radius:1px;transform:rotate(45deg);flex:none}
.cr--slot .cr-msg{max-width:min(82%,560px)}
