:root {
  --bg:#061027;
  --panel:rgba(7,20,48,.72);
  --panel-deep:rgba(4,15,37,.88);
  --line:rgba(154,220,255,.46);
  --line-soft:rgba(170,210,255,.18);
  --text:#f5f7ff;
  --muted:#b8c5df;
  --cyan:#7ee8ff;
  --blue:#57a7ff;
  --violet:#b690ff;
  --magenta:#e2a6ff;
  --glow:0 0 30px rgba(77,184,255,.18), inset 0 1px 0 rgba(255,255,255,.06);
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;font-family:'Manrope',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;background:var(--bg);color:var(--text)}
button,input,textarea{font:inherit}
button{color:inherit}
body{overflow-x:hidden}
.ambient{position:fixed;inset:0;overflow:hidden;z-index:0;background:#081027}
.ambient__bg{position:absolute;inset:-4%;background:url('assets/casa-codigo-bg.jpg') center/cover no-repeat;transform:scale(1.03);filter:saturate(1.08) brightness(1.04);animation:bgBreath 14s ease-in-out infinite alternate}
.ambient__veil{position:absolute;inset:0;background:linear-gradient(90deg,rgba(2,9,25,.58) 0%,rgba(3,11,28,.24) 42%,rgba(1,8,22,.12) 100%),radial-gradient(circle at 65% 45%,rgba(113,173,255,.08),transparent 35%)}
.stars{position:absolute;inset:0;background-image:radial-gradient(circle at 12% 18%,rgba(255,255,255,.7) 0 1px,transparent 2px),radial-gradient(circle at 82% 26%,rgba(140,220,255,.75) 0 1px,transparent 2px),radial-gradient(circle at 68% 74%,rgba(211,165,255,.7) 0 1px,transparent 2px),radial-gradient(circle at 42% 36%,rgba(255,255,255,.55) 0 1px,transparent 2px);background-size:220px 180px,260px 210px,300px 260px,360px 300px;opacity:.36;animation:starDrift 24s linear infinite}
.synapse{position:absolute;width:34vw;height:2px;background:linear-gradient(90deg,transparent,rgba(126,232,255,.8),rgba(192,144,255,.7),transparent);filter:blur(.2px);opacity:.22;border-radius:999px;transform-origin:center;animation:synapse 7s ease-in-out infinite}
.synapse:after{content:'';position:absolute;right:30%;top:50%;width:8px;height:8px;border-radius:50%;background:#c8eaff;box-shadow:0 0 18px #8bdfff}
.synapse--1{top:20%;left:55%;transform:rotate(-18deg)}
.synapse--2{top:48%;left:48%;transform:rotate(10deg);animation-delay:2s}
.synapse--3{top:69%;left:57%;transform:rotate(-7deg);animation-delay:4s}
@keyframes bgBreath{from{transform:scale(1.03) translate3d(0,0,0)}to{transform:scale(1.055) translate3d(-.5%,.3%,0)}}
@keyframes starDrift{to{transform:translate3d(-20px,18px,0)}}
@keyframes synapse{0%,100%{opacity:.08;transform:scaleX(.75)}45%{opacity:.38;transform:scaleX(1)}}
.intro{position:fixed;inset:0;z-index:20;display:grid;place-items:center;text-align:center;transition:opacity 1s ease,visibility 1s ease}
.intro--hidden{opacity:0;visibility:hidden;pointer-events:none}
.intro__scrim{position:absolute;inset:0;background:radial-gradient(circle at 50% 50%,rgba(13,24,55,.28),rgba(2,7,20,.76) 75%);backdrop-filter:blur(2px)}
.intro__content{position:relative;z-index:2;max-width:760px;padding:48px 30px;animation:introIn 1.6s ease both}
.brand-mark{width:60px;height:60px;border:1px solid rgba(183,228,255,.6);border-radius:50%;display:grid;place-items:center;margin:0 auto 20px;box-shadow:0 0 30px rgba(112,207,255,.22);color:var(--cyan)}
.brand-mark--small{width:34px;height:34px;margin:0;font-size:13px}
.eyebrow{font-size:12px;letter-spacing:.19em;color:#c9d8ef;margin:0 0 14px;text-transform:uppercase}
.intro h1{font-size:clamp(38px,5vw,72px);font-weight:300;line-height:1.05;margin:0 0 24px}
.intro__line{margin:7px 0;color:#e7edff;font-size:17px;opacity:0;animation:fadeUp .9s ease 1.2s forwards}
.intro__line--delay{animation-delay:2.2s}
.btn--intro{margin-top:30px;opacity:0;animation:fadeUp .9s ease 3.2s forwards}
.text-btn--light{display:block;margin:14px auto 0;opacity:0;animation:fadeUp .9s ease 3.4s forwards}
@keyframes introIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@keyframes fadeUp{to{opacity:1;transform:none}from{opacity:0;transform:translateY(10px)}}
.app{position:relative;z-index:5;min-height:100vh;padding:24px 28px 28px;transition:opacity .7s ease,transform .8s ease;transform:none}
.app--hidden{opacity:0;pointer-events:none;visibility:hidden}
.app--entering{opacity:0;transform:translateY(8px) scale(1.004);pointer-events:none;visibility:visible}
.app--entering.app--revealed{opacity:1;transform:none;pointer-events:auto}
.topbar{height:62px;display:flex;align-items:center;justify-content:space-between;padding:10px 18px;max-width:1540px;margin:0 auto 22px;border-radius:20px}
.glass-min,.glass-panel{background:linear-gradient(135deg,rgba(5,17,42,.82),rgba(8,24,54,.64));border:1px solid var(--line);box-shadow:var(--glow);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.topbar__brand{display:flex;align-items:center;gap:10px}
.topbar__title{font-size:16px;font-weight:600;letter-spacing:.08em}
.topbar__sub{font-size:10px;color:var(--muted);margin-top:2px}
.topbar__nav{display:flex;gap:8px;align-items:center}
.text-btn,.icon-btn{border:0;background:transparent;color:#e8eeff;padding:8px 10px;cursor:pointer;opacity:.83;transition:.25s ease}
.text-btn:hover,.icon-btn:hover{opacity:1;text-shadow:0 0 14px rgba(126,232,255,.7)}
.icon-btn{font-size:24px;line-height:1}
.screen{display:none;max-width:1540px;margin:0 auto;min-height:calc(100vh - 112px)}
.screen--active{display:block;animation:screenIn .55s ease both}
@keyframes screenIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.layout{display:grid;grid-template-columns:minmax(460px,660px) 1fr;gap:28px;min-height:calc(100vh - 120px);align-items:center}
.layout--wide{grid-template-columns:minmax(650px,830px) 1fr}
.glass-panel{border-radius:28px;padding:34px 36px}
.hero-panel{align-self:center;max-width:670px}
.work-panel{max-width:760px}
.work-panel--wide{max-width:860px}
.hero-panel h2{font-size:34px;font-weight:300;margin:0 0 6px}
.hero-panel h1,.work-panel h1{font-size:clamp(34px,3.4vw,58px);line-height:1.04;font-weight:300;margin:0 0 18px;letter-spacing:-.03em}
.hero-panel h1 span,.work-panel h1 span{background:linear-gradient(90deg,var(--cyan),var(--violet),var(--magenta));-webkit-background-clip:text;background-clip:text;color:transparent}
.lead{color:#d6def0;font-size:15px;line-height:1.62;margin:0 0 24px;max-width:680px}
.lead--small{font-size:13px}
.status-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:10px;margin:22px 0 10px}
.status-card,.expanded-card,.metric-card,.ai-note,.engine-banner,.book-wrap,.entity-preview,.trajectory-panel,.summary-strip{border:1px solid var(--line-soft);background:linear-gradient(135deg,rgba(21,43,78,.48),rgba(5,20,48,.58));box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.status-card{padding:18px;border-radius:18px;min-height:112px}
.status-card__label,.field-label,.metric-card span,.engine-banner span{font-size:10px;letter-spacing:.13em;color:#d7e2f5;text-transform:uppercase}
.status-card__value{font-size:27px;margin-top:7px;font-weight:500}
.status-card__value--small{font-size:15px;line-height:1.25;margin-top:9px}
.status-card__hint,.hint{font-size:11px;line-height:1.4;color:#aebbd1;margin-top:8px}
.expanded-card{border-radius:18px;padding:17px 20px;display:flex;align-items:center;justify-content:space-between;margin-bottom:22px}
.expanded-card__value{font-size:42px;letter-spacing:.14em;background:linear-gradient(90deg,var(--cyan),var(--magenta));-webkit-background-clip:text;background-clip:text;color:transparent;margin-top:3px}
.expanded-card__letters{font-size:12px;letter-spacing:.5em;color:#bdd0ed}
.expanded-card__tag{font-size:12px;color:#c9d5ea;border-left:1px solid var(--line-soft);padding-left:24px;line-height:1.35}
.actions{display:flex;gap:12px;align-items:center;margin-top:22px;flex-wrap:wrap}
.btn{border-radius:999px;border:1px solid rgba(164,224,255,.44);padding:14px 22px;cursor:pointer;transition:.25s ease;display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:48px}
.btn--primary{background:linear-gradient(90deg,rgba(48,128,218,.66),rgba(64,123,194,.36));box-shadow:0 0 24px rgba(80,190,255,.2),inset 0 1px 0 rgba(255,255,255,.16)}
.btn--primary:hover{border-color:var(--cyan);box-shadow:0 0 34px rgba(92,208,255,.35),inset 0 1px 0 rgba(255,255,255,.22);transform:translateY(-1px)}
.btn--ghost{background:rgba(7,20,48,.28)}
.btn--ghost:hover{background:rgba(25,50,86,.45);border-color:rgba(165,224,255,.7)}
.btn:disabled{opacity:.4;cursor:not-allowed;transform:none;box-shadow:none}
.btn--full{width:100%;margin-top:20px}
.footer-whisper{font-size:9px;letter-spacing:.16em;color:#cedbf1;margin:26px 0 0;border-top:1px solid rgba(255,255,255,.1);padding-top:16px}
.scene-copy{position:relative;min-height:620px;display:flex;align-items:flex-end;justify-content:flex-end;padding:30px}
.scene-copy__kicker{position:absolute;right:16px;bottom:16px;font-size:10px;letter-spacing:.16em;color:#eef5ff;text-shadow:0 0 18px rgba(88,180,255,.5);max-width:220px;text-align:right}
.hub-pulse{position:absolute;left:28%;top:37%;width:200px;height:200px;display:grid;place-items:center;opacity:.7}
.hub-pulse__ring{position:absolute;width:100%;height:100%;border:1px solid rgba(130,213,255,.55);border-radius:50%;animation:pulseRing 4s ease-out infinite}
.hub-pulse__ring--2{animation-delay:2s}
.hub-pulse__core{width:18px;height:18px;border-radius:50%;background:#dff7ff;box-shadow:0 0 28px 10px rgba(101,198,255,.65)}
@keyframes pulseRing{0%{transform:scale(.55);opacity:.1}55%{opacity:.65}100%{transform:scale(1.35);opacity:0}}
.step-row{display:flex;gap:12px;align-items:center;margin-bottom:20px;color:#dfeaff;letter-spacing:.09em}
.step-row span{font-size:28px;color:var(--cyan);font-weight:300}.step-row strong{font-size:12px}
.choice-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}
.choice-chip{border:1px solid var(--line-soft);background:rgba(7,20,48,.46);padding:10px 14px;border-radius:999px;cursor:pointer;font-size:12px;color:#c9d5ea}
.choice-chip--active{border-color:var(--cyan);color:#fff;box-shadow:0 0 18px rgba(77,190,255,.16)}
.field-label{display:block;margin:12px 0 8px}
.input-area,.input-line{width:100%;border:1px solid var(--line-soft);background:rgba(3,13,35,.55);color:#fff;border-radius:17px;padding:16px 18px;outline:none;transition:.2s ease;resize:vertical}
.input-area:focus,.input-line:focus{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(95,204,255,.08)}
.helper-row{display:flex;justify-content:space-between;gap:16px;color:#9eacc3;font-size:10px;margin-top:6px}
.ai-note{display:flex;gap:12px;border-radius:16px;padding:15px 16px;margin-top:18px}.ai-note__orb{font-size:24px;color:var(--violet)}.ai-note strong{font-size:12px}.ai-note p{font-size:11px;color:#aebbd1;margin:4px 0 0;line-height:1.45}
.trajectory-panel{align-self:center;border-radius:24px;padding:22px;max-width:360px;margin-left:auto}.trajectory-panel__label{font-size:10px;letter-spacing:.16em}.trajectory-line{display:flex;align-items:center;gap:0;margin:18px 0}.trajectory-line:before{content:'';height:1px;background:var(--line);flex:1;order:1}.trajectory-node{width:12px;height:12px;border-radius:50%;border:1px solid var(--line);background:#122447;z-index:2}.trajectory-node--active{background:var(--cyan);box-shadow:0 0 20px var(--cyan)}.trajectory-copy{display:flex;flex-direction:column;gap:3px}.trajectory-copy strong{font-size:14px}.trajectory-copy span{font-size:11px;color:#aebbd1}
.engine-banner{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;border-radius:18px;overflow:hidden;margin:18px 0}.engine-banner>div{padding:14px 16px;background:rgba(5,18,45,.5)}.engine-banner strong{display:block;font-size:20px;margin-top:5px}
.book-wrap{border-radius:18px;padding:16px;margin-top:12px}.book-head{display:flex;justify-content:space-between;gap:20px;align-items:end}.book-head strong{display:block;font-size:15px;margin-top:4px}.engine-state{font-size:10px;color:#9dcce9;border:1px solid rgba(126,232,255,.25);padding:6px 9px;border-radius:999px}.book-rail{display:flex;gap:7px;overflow-x:auto;padding:16px 2px 5px;scrollbar-width:thin}.book-letter{min-width:54px;border:1px solid rgba(170,210,255,.13);border-radius:12px;padding:9px 8px;text-align:center;background:rgba(6,18,44,.48);position:relative}.book-letter strong{display:block;font-size:18px}.book-letter span{font-size:9px;color:#8fa3bf}.book-letter--current{border-color:var(--cyan);box-shadow:0 0 24px rgba(91,207,255,.28);background:rgba(31,81,129,.45)}.book-letter--selected{background:linear-gradient(180deg,rgba(79,108,182,.48),rgba(64,36,104,.4));border-color:rgba(194,146,255,.52)}.book-letter--current:after{content:'0';position:absolute;top:-8px;right:-6px;width:18px;height:18px;border-radius:50%;background:#dff8ff;color:#07142d;font-size:9px;display:grid;place-items:center;font-weight:700}
.expand-controls{display:grid;grid-template-columns:1fr auto;gap:20px;align-items:end;margin:18px 0}.range-line{display:flex;align-items:center;gap:12px}.range-line input{width:100%;accent-color:#7ee8ff}.range-bubble{font-size:12px;white-space:nowrap;color:#dce8ff}
.expansion-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:14px}.metric-card{padding:14px;border-radius:15px}.metric-card strong{display:block;font-size:18px;margin-top:6px;word-break:break-word}.metric-card--highlight{border-color:rgba(219,155,255,.55);box-shadow:0 0 24px rgba(164,111,255,.12)}
.entity-preview{display:flex;gap:18px;align-items:center;border-radius:18px;padding:18px;margin-top:14px}.entity-preview__orbit{width:64px;height:64px;border-radius:50%;border:1px solid rgba(126,232,255,.6);box-shadow:0 0 22px rgba(109,195,255,.25),inset 0 0 18px rgba(112,158,255,.18);position:relative;flex:0 0 auto}.entity-preview__orbit:before{content:'';position:absolute;inset:14px;border:1px solid rgba(195,147,255,.7);border-radius:50%;transform:rotate(55deg)}.entity-preview strong{display:block;font-size:30px;letter-spacing:.14em;margin-top:3px;background:linear-gradient(90deg,var(--cyan),var(--magenta));-webkit-background-clip:text;background-clip:text;color:transparent}.entity-preview p{margin:4px 0 0;color:#aebbd1;font-size:11px}
.orbital-stage{min-height:650px;display:grid;place-items:center;position:relative}.orbital-stage__orb{width:min(42vw,490px);aspect-ratio:1;border-radius:50%;border:1px solid rgba(154,220,255,.42);background:radial-gradient(circle at 50% 42%,rgba(84,152,239,.28),rgba(20,21,78,.45) 40%,rgba(5,14,35,.7) 70%);display:grid;place-items:center;box-shadow:0 0 80px rgba(91,174,255,.28),inset 0 0 60px rgba(95,163,255,.18);position:relative;backdrop-filter:blur(4px)}.orbital-stage__orbit{position:absolute;border:1px solid rgba(133,218,255,.34);border-radius:50%;inset:13%;animation:orbitSpin 11s linear infinite}.orbital-stage__orbit--2{inset:22% 7%;transform:rotate(55deg);animation-duration:15s}.orbital-stage__orbit--3{inset:8% 25%;transform:rotate(-55deg);animation-duration:17s}.orbital-stage__orbit:after{content:'';position:absolute;width:10px;height:10px;border-radius:50%;background:#dff8ff;box-shadow:0 0 15px #83dfff;top:-5px;left:48%}@keyframes orbitSpin{to{transform:rotate(360deg)}}.orbital-stage__label{font-size:clamp(32px,5vw,72px);font-weight:400;letter-spacing:.14em;z-index:2}.orbital-stage__sub{position:absolute;top:58%;font-size:11px;letter-spacing:.2em;color:#c5d4ea}.orbital-stage__phrase{position:absolute;bottom:8%;text-align:center;font-size:11px;letter-spacing:.05em;color:#dce7fb;line-height:1.55}
.completion-orb{width:230px;height:230px;border-radius:50%;margin:28px auto;background:radial-gradient(circle,rgba(95,179,255,.32),rgba(50,30,94,.47) 55%,rgba(3,10,28,.6));border:1px solid rgba(154,220,255,.5);display:grid;place-items:center;box-shadow:0 0 65px rgba(96,179,255,.3),inset 0 0 45px rgba(166,105,255,.18)}.completion-orb span{font-size:34px;letter-spacing:.15em}.summary-strip{display:grid;grid-template-columns:1fr 1fr;border-radius:16px;overflow:hidden}.summary-strip>div{padding:16px}.summary-strip span{display:block;font-size:10px;letter-spacing:.12em;color:#aebbd1}.summary-strip strong{display:block;margin-top:5px;font-size:15px}
.modal{position:fixed;inset:0;z-index:40;display:none;place-items:center;padding:20px}.modal--open{display:grid}.modal__scrim{position:absolute;inset:0;background:rgba(2,7,19,.7);backdrop-filter:blur(8px)}.modal__card{position:relative;z-index:2;width:min(560px,100%);padding:30px}.modal__card h2{font-size:32px;font-weight:300;margin:0 0 10px}.modal__close{position:absolute;top:14px;right:16px;background:transparent;border:0;color:#fff;font-size:28px;cursor:pointer}.input-line{height:50px;margin-bottom:10px}.modal__note{font-size:11px;color:#aebbd1;margin-top:4px}.error-box{margin-top:12px;padding:12px 14px;border-radius:12px;background:rgba(130,30,53,.34);border:1px solid rgba(255,132,159,.4);color:#ffd9e3;font-size:12px}
.toast{position:fixed;right:22px;bottom:22px;z-index:60;background:rgba(6,19,45,.92);border:1px solid var(--line);border-radius:14px;padding:13px 16px;color:#eef6ff;box-shadow:var(--glow);opacity:0;transform:translateY(10px);pointer-events:none;transition:.25s ease;font-size:12px}.toast--show{opacity:1;transform:none}
@media(max-width:980px){.app{padding:12px}.topbar{margin-bottom:12px}.layout,.layout--wide{grid-template-columns:1fr}.scene-copy,.orbital-stage{min-height:420px}.glass-panel{padding:24px}.hero-panel,.work-panel,.work-panel--wide{max-width:none}.engine-banner{grid-template-columns:1fr 1fr}.expansion-grid{grid-template-columns:1fr 1fr}.expand-controls{grid-template-columns:1fr}.orbital-stage__orb{width:min(80vw,450px)}}
@media(max-width:600px){.topbar__sub,.topbar__nav .text-btn{display:none}.glass-panel{border-radius:20px;padding:20px}.hero-panel h1,.work-panel h1{font-size:36px}.status-grid{grid-template-columns:1fr}.engine-banner{grid-template-columns:1fr 1fr}.expansion-grid{grid-template-columns:1fr 1fr}.actions{display:grid;grid-template-columns:1fr}.btn{width:100%}.expanded-card__value{font-size:30px}.ambient__veil{background:rgba(3,10,26,.46)}}
@media(prefers-reduced-motion:reduce){*{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}}

/* ─────────────────────────────────────────────────────────────
   V2 · INTRO CINEMATOGRÁFICA → UMBRAL → CASA
   Coherencia de familia con Casa EGRYS, identidad propia Código.
   ───────────────────────────────────────────────────────────── */
.intro--video{display:block;background:#061027;overflow:hidden;opacity:1;visibility:visible;transition:opacity .72s ease,visibility .72s ease}
.intro--video video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.015);filter:saturate(1.04) brightness(.99);opacity:1;animation:introFlow 10.6s linear both;will-change:transform,opacity}
.intro--video.intro--ending{pointer-events:none}
.intro--video.intro--ending video{opacity:.16;transition:opacity .52s ease}
@keyframes introFlow{from{transform:scale(1.015) translate3d(0,0,0)}to{transform:scale(1.055) translate3d(0,-.35%,0)}}
.intro__video-veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(2,7,18,.08),rgba(2,7,18,.1) 58%,rgba(2,7,18,.38)),radial-gradient(circle at 50% 45%,transparent 20%,rgba(3,10,27,.15) 78%);pointer-events:none}
.skip-btn{position:absolute;z-index:3;top:22px;right:24px;border:1px solid rgba(197,228,255,.32);background:rgba(4,16,39,.42);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:999px;padding:10px 14px;color:#eef7ff;font-size:10px;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:.25s ease}
.skip-btn:hover{border-color:rgba(126,232,255,.75);box-shadow:0 0 22px rgba(95,204,255,.18);background:rgba(9,29,62,.58)}

.threshold{position:fixed;inset:0;z-index:24;display:grid;place-items:end center;text-align:center;overflow:hidden;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .72s ease,visibility .72s ease,filter .72s ease,transform .9s ease;will-change:opacity,transform,filter}
.threshold--show{opacity:1;visibility:visible;pointer-events:auto}
.threshold--hidden{opacity:0;visibility:hidden;pointer-events:none}
.threshold--entering{opacity:0!important;visibility:visible!important;pointer-events:none!important;filter:blur(2px);transform:scale(1.018)}
.threshold__bg{position:absolute;inset:-3%;background:url('assets/intro-poster-v35.jpg') center/cover no-repeat;transform:scale(1.035);filter:saturate(1.07) brightness(.97);animation:thresholdBreath 13s ease-in-out infinite alternate;transition:transform .95s ease,filter .7s ease}
.threshold--entering .threshold__bg{transform:scale(1.105);filter:saturate(1.04) brightness(.82)}
.threshold__veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(2,8,21,.02) 0%,rgba(2,8,21,.08) 28%,rgba(3,9,25,.34) 50%,rgba(2,8,21,.68) 70%,rgba(2,7,19,.94) 100%),radial-gradient(circle at 50% 42%,rgba(81,169,255,.02),rgba(3,9,24,.44) 82%)}
.threshold__content{position:relative;z-index:2;width:min(900px,92vw);padding:42px 28px clamp(92px,12vh,148px);animation:thresholdIn 1s ease both;transition:opacity .48s ease,transform .65s ease}
.threshold--entering .threshold__content{opacity:0;transform:translateY(-10px)}
.threshold__content .brand-mark{margin-bottom:16px;background:rgba(6,20,46,.34);backdrop-filter:blur(10px)}
.threshold h1{font-size:clamp(48px,7vw,92px);font-weight:250;letter-spacing:.06em;margin:0;text-shadow:0 10px 38px rgba(1,6,18,.96),0 0 18px rgba(110,199,255,.16)}
.threshold__lead{font-size:clamp(18px,2vw,25px);margin:13px 0 8px;color:#f6f9ff;font-weight:300;text-shadow:0 4px 18px rgba(1,7,20,.94)}
.threshold__sub{width:min(690px,90%);margin:0 auto;color:#d5dfef;font-size:13px;line-height:1.65;text-shadow:0 4px 16px rgba(1,7,20,.92)}
.threshold__enter{margin-top:24px;min-width:245px;background:linear-gradient(90deg,rgba(42,131,225,.82),rgba(85,82,179,.6));box-shadow:0 0 38px rgba(81,189,255,.24)}
@keyframes thresholdIn{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
@keyframes thresholdBreath{from{transform:scale(1.03)}to{transform:scale(1.055) translateY(-.25%)}}

/* 00 · Tu Libro: la primera interacción ya no se esconde en un modal. */
.book-entry-panel{max-width:720px}
.book-entry-form{border:1px solid var(--line-soft);background:linear-gradient(135deg,rgba(17,39,75,.5),rgba(5,19,46,.66));border-radius:22px;padding:20px;margin-top:18px;box-shadow:inset 0 1px 0 rgba(255,255,255,.035)}
.input-line--large{height:58px;font-size:15px;background:rgba(2,13,34,.64);border-color:rgba(170,220,255,.28)}
.input-line--large::placeholder{color:#8295b3}
.book-readout{margin-top:18px;border:1px solid rgba(126,232,255,.35);background:linear-gradient(135deg,rgba(16,50,86,.52),rgba(16,23,65,.7));border-radius:22px;padding:20px;box-shadow:0 0 34px rgba(83,191,255,.11),inset 0 1px 0 rgba(255,255,255,.05);animation:screenIn .55s ease both}
.book-readout__head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding-bottom:14px;border-bottom:1px solid var(--line-soft)}
.book-readout__head strong{display:block;font-size:17px;margin-top:5px}
.book-readout__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:14px}
.book-readout__grid>div{min-height:83px;border:1px solid rgba(174,219,255,.12);border-radius:15px;padding:12px;background:rgba(4,17,43,.36)}
.book-readout__grid span{display:block;font-size:9px;letter-spacing:.11em;color:#b8c8e1;text-transform:uppercase}
.book-readout__grid strong{display:block;font-size:23px;margin-top:8px;font-weight:450}
.book-readout__note{margin:14px 0 0;font-size:11px;color:#b9cae2;line-height:1.55}
.scene-copy--book:before{content:'TU LIBRO';position:absolute;right:15px;top:14px;font-size:9px;letter-spacing:.2em;color:rgba(232,246,255,.72)}

@media(max-width:760px){
  .skip-btn{top:14px;right:14px}
  .threshold__content{padding-bottom:86px}
  .threshold h1{font-size:48px}
  .threshold__lead{font-size:18px}
  .threshold__sub{font-size:12px}
  .book-readout__grid{grid-template-columns:1fr 1fr}
}

/* ─────────────────────────────────────────────────────────────
   V2.3 · FLUJO CORREGIDO según Casa EGRYS
   VIDEO → UMBRAL → WORKSPACE. Nunca al revés.
   ───────────────────────────────────────────────────────────── */
.intro--video{z-index:50;background:#061027;opacity:1;visibility:visible;transition:opacity .76s ease,visibility .76s ease}
.intro--video.intro--ending{opacity:0;visibility:visible;pointer-events:none}
.intro--video.intro--ending video{opacity:1;transition:none}
.intro__video-veil{opacity:.18;transition:opacity .4s ease;background:linear-gradient(180deg,rgba(2,7,18,.025),rgba(2,7,18,.04) 60%,rgba(2,7,18,.20)),radial-gradient(circle at 50% 45%,transparent 20%,rgba(3,10,27,.08) 82%)}
.intro--boot .intro__video-veil{opacity:0}

/* Umbral quieto: legible, un poco más alto y con oscuridad que sube. */
.threshold{z-index:24}
.threshold__veil{background:linear-gradient(180deg,rgba(2,8,21,.01) 0%,rgba(2,8,21,.035) 22%,rgba(3,9,25,.18) 38%,rgba(2,8,21,.50) 57%,rgba(2,7,19,.82) 76%,rgba(2,7,19,.97) 100%),radial-gradient(circle at 50% 42%,rgba(81,169,255,.015),rgba(3,9,24,.38) 82%)}
.threshold__content{padding:34px 28px clamp(145px,17vh,210px);opacity:0;transform:translateY(14px);animation:none;transition:none}
.threshold--show .threshold__content{animation:thresholdIn .82s ease .12s forwards}
.threshold h1{text-shadow:0 10px 44px rgba(1,6,18,1),0 0 22px rgba(110,199,255,.20)}
.threshold__lead,.threshold__sub,.threshold .eyebrow{text-shadow:0 5px 20px rgba(1,7,20,1),0 1px 2px rgba(0,0,0,.85)}

/* Entrar no vuelve a animar la escena: solo revela el workspace. */
.app{opacity:1;transform:none;transition:opacity .62s ease}
.app--hidden{opacity:0;visibility:hidden;pointer-events:none}
.app--show{opacity:1;visibility:visible;pointer-events:auto;animation:workspaceReveal .62s ease both}
@keyframes workspaceReveal{from{opacity:0}to{opacity:1}}
.threshold--entering{opacity:1!important;visibility:visible!important;filter:none!important;transform:none!important}
.threshold--entering .threshold__bg{transform:scale(1.035);filter:saturate(1.07) brightness(.97)}
.threshold--entering .threshold__content{opacity:1;transform:none}

@media(max-width:760px){
  .threshold__content{padding-bottom:120px}
}

/* ─────────────────────────────────────────────────────────────
   V2.4 · VIDEO MAESTRO SIN FUNDIDO
   Calidad original + faststart + continuidad por frame real.
   ───────────────────────────────────────────────────────────── */
.intro--video video{
  transform:none!important;
  filter:none!important;
  animation:none!important;
  opacity:1!important;
  background:#061027;
}
.intro__video-veil{display:none!important}
.intro--video{transition:opacity .34s ease,visibility .34s ease!important}
.intro--video.intro--ending{opacity:0!important;visibility:visible!important}
.threshold__bg{
  background-image:url('assets/threshold-bg-v35.jpg')!important;
  background-position:center!important;
  background-size:cover!important;
  transform:scale(1.002)!important;
  filter:none!important;
  animation:none!important;
}
.threshold--show .threshold__bg{transform:scale(1.002)!important}
.threshold__veil{
  background:linear-gradient(180deg,
    rgba(2,8,21,0) 0%,
    rgba(2,8,21,.02) 20%,
    rgba(3,9,25,.14) 37%,
    rgba(2,8,21,.47) 56%,
    rgba(2,7,19,.82) 75%,
    rgba(2,7,19,.97) 100%),
    radial-gradient(circle at 50% 42%,rgba(81,169,255,.01),rgba(3,9,24,.34) 82%)!important;
}

/* V2.5 · Libro completo separado de Código Expandido */
.book-architecture{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:16px}
.book-architecture__item{min-height:118px;border:1px solid rgba(174,219,255,.14);border-radius:17px;padding:15px;background:linear-gradient(150deg,rgba(9,30,63,.48),rgba(4,17,43,.34));display:flex;flex-direction:column;justify-content:flex-start}
.book-architecture__item span,.book-current__item span{display:block;font-size:9px;letter-spacing:.12em;color:#b9cce6;text-transform:uppercase}
.book-architecture__item strong{display:block;font-size:31px;margin-top:9px;font-weight:420;letter-spacing:-.02em}
.book-architecture__item small,.book-current__item small{display:block;margin-top:7px;color:#9fb4d2;font-size:10px;line-height:1.4}
.book-current{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:9px}
.book-current__item{min-height:118px;border:1px solid rgba(174,219,255,.14);border-radius:17px;padding:15px;background:rgba(4,17,43,.34)}
.book-current__item--primary{border-color:rgba(126,232,255,.38);box-shadow:0 0 28px rgba(83,191,255,.08),inset 0 1px 0 rgba(255,255,255,.035)}
.book-current__item strong{display:block;font-size:25px;margin-top:9px;font-weight:440;letter-spacing:-.02em}
.engine-banner--expanded{grid-template-columns:.8fr 1fr 1.8fr}
.engine-banner--expanded .engine-banner__mpi strong{font-size:14px;line-height:1.35;font-weight:420;white-space:normal}
@media(max-width:760px){.book-architecture{grid-template-columns:1fr}.book-current{grid-template-columns:1fr}.engine-banner--expanded{grid-template-columns:1fr}}


/* ─────────────────────────────────────────────────────────────
   V2.6 · ARRANQUE DE VIDEO SIN TIRON
   El poster queda encima hasta que el clip tiene buffer y movimiento real.
   ───────────────────────────────────────────────────────────── */
.intro__start-cover{
  position:absolute;inset:0;z-index:2;
  background:#061027 url('assets/intro-poster-v35.jpg') center/cover no-repeat;
  opacity:1;visibility:visible;pointer-events:none;
  transition:opacity .28s ease,visibility .28s ease;
  will-change:opacity;
}
.intro__start-cover--hide{opacity:0;visibility:hidden}
.intro--video video{z-index:1}
.skip-btn{z-index:4}


/* V2.7 · INTRO ESTABLE · patrón Casa EGRYS */
.intro--video{
  z-index:50;
  background:#061027;
  opacity:1;
  visibility:visible;
  transition:opacity 1.2s ease,visibility 1.2s ease!important;
}
.intro--video video{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  transform:scale(1.01)!important;
  filter:saturate(.99) brightness(.98)!important;
  opacity:1!important;
  animation:none!important;
}
.intro--video.intro--ending{opacity:0!important;visibility:visible!important;pointer-events:none}
.intro--video.intro--ending video{opacity:1!important}
.intro__video-veil{display:block!important;opacity:1;background:radial-gradient(circle at 50% 50%,rgba(88,152,255,.08),rgba(3,9,24,.34) 72%,rgba(2,7,19,.52));transition:opacity 1.3s ease}
.intro--boot .intro__video-veil{opacity:0}
.intro__start-cover{display:none!important}
.skip-btn{z-index:60!important;pointer-events:auto!important}

/* ─────────────────────────────────────────────────────────────
   V2.9 · HANDOFF ORGÁNICO DETERMINISTA
   Umbral prerenderizado debajo del video + fade directo.
   ───────────────────────────────────────────────────────────── */
.threshold--prewarm{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:none!important;
}
.threshold--prewarm .threshold__content{
  opacity:0!important;
  transform:translateY(12px)!important;
  animation:none!important;
}
.threshold--prewarm .threshold__bg{
  opacity:1!important;
}
.intro--video{
  background:#061027!important;
  transition:opacity .62s ease!important;
}
.intro--video.intro--ending{
  opacity:0!important;
  visibility:visible!important;
  pointer-events:none!important;
}
.intro--video.intro--ending video{
  opacity:1!important;
}
.threshold--show .threshold__content{
  animation:thresholdIn .78s ease .16s forwards!important;
}


/* ============================================================
   V3.0 · INTRO CANÓNICA CASA CÓDIGO
   Réplica estructural del patrón estable de Casa EGRYS.
   Este bloque neutraliza explícitamente los experimentos V2.x.
   ============================================================ */
#intro.intro--video{
  position:fixed!important;
  inset:0!important;
  z-index:50!important;
  display:block!important;
  background:#061027!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:none!important;
  filter:none!important;
  transition:opacity 1.2s ease,visibility 1.2s ease!important;
  overflow:hidden!important;
}
#intro.intro--video video{
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  transform:scale(1.02)!important;
  filter:saturate(.99) brightness(.97)!important;
  opacity:1!important;
  animation:none!important;
  transition:opacity 1.2s ease!important;
  background:#061027!important;
}
#intro.intro--video .intro__video-veil{
  display:block!important;
  position:absolute!important;
  inset:0!important;
  z-index:2!important;
  opacity:1!important;
  visibility:visible!important;
  pointer-events:none!important;
  background:radial-gradient(circle at 50% 50%,rgba(88,152,255,.09),rgba(3,9,24,.40) 62%,rgba(2,7,19,.66))!important;
  transition:opacity 2s ease!important;
}
#intro.intro--video.intro--boot .intro__video-veil{opacity:0!important}
#intro.intro--video.intro--ending video{opacity:0!important}
#intro.intro--video.intro--ending{opacity:1!important;visibility:visible!important;pointer-events:none!important}
#intro.intro--video.intro--done{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
#intro .skip-btn{
  z-index:3!important;
  pointer-events:auto!important;
  top:18px!important;
  right:18px!important;
}

#threshold.threshold{
  position:fixed!important;
  inset:0!important;
  z-index:24!important;
  display:grid!important;
  place-items:end center!important;
  text-align:center!important;
  overflow:hidden!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transform:translateY(10px)!important;
  filter:none!important;
  transition:opacity 1s ease,transform 1s ease,visibility 1s ease!important;
}
#threshold.threshold--hidden{
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
#threshold.threshold--show{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:none!important;
}
#threshold .threshold__bg{
  position:absolute!important;
  inset:0!important;
  background:#061027 url('assets/threshold-bg-v35.jpg') center/cover no-repeat!important;
  transform:scale(1.015)!important;
  filter:none!important;
  animation:none!important;
  opacity:1!important;
}
#threshold .threshold__veil{
  position:absolute!important;
  inset:0!important;
  background:linear-gradient(180deg,
    rgba(2,8,21,.02) 0%,
    rgba(2,8,21,.06) 26%,
    rgba(3,9,25,.20) 42%,
    rgba(2,8,21,.54) 62%,
    rgba(2,7,19,.88) 82%,
    rgba(2,7,19,.98) 100%)!important;
}
#threshold .threshold__content{
  position:relative!important;
  z-index:2!important;
  width:min(900px,92vw)!important;
  padding:34px 28px clamp(135px,16vh,195px)!important;
  opacity:1!important;
  transform:none!important;
  animation:none!important;
  transition:none!important;
}

/* eliminar estados experimentales antiguos */
#threshold.threshold--prewarm,
#threshold.threshold--entering{
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  transform:none!important;
  filter:none!important;
}
#threshold.threshold--show.threshold--prewarm,
#threshold.threshold--show.threshold--entering{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
}

/* ─────────────────────────────────────────────────────────────
   V3.3 · BIO-LIBRO: amplitud → código macro → arquitectura → posición
   ───────────────────────────────────────────────────────────── */
.book-summary-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:16px;
}
.book-summary-card{
  min-height:142px;
  border:1px solid rgba(174,219,255,.14);
  border-radius:18px;
  padding:16px 17px;
  background:linear-gradient(150deg,rgba(9,30,63,.50),rgba(4,17,43,.36));
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  position:relative;
  overflow:hidden;
}
.book-summary-card::after{
  content:"";
  position:absolute;
  inset:auto -35% -55% 15%;
  height:90px;
  background:radial-gradient(ellipse,rgba(75,190,255,.09),transparent 68%);
  pointer-events:none;
}
.book-summary-card>span,
.book-summary-card__topline>span{
  display:block;
  font-size:9px;
  letter-spacing:.14em;
  color:#b9cce6;
  text-transform:uppercase;
}
.book-summary-card>strong{
  display:block;
  margin-top:10px;
  font-size:30px;
  line-height:1.04;
  font-weight:430;
  letter-spacing:-.025em;
}
.book-summary-card>small{
  display:block;
  margin-top:auto;
  padding-top:10px;
  color:#9fb4d2;
  font-size:10px;
  line-height:1.4;
}
.book-summary-card--macro{
  border-color:rgba(187,141,255,.26);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035),0 0 32px rgba(135,74,255,.055);
}
.book-summary-card--architecture .book-summary-card__equivalence{
  display:flex;
  align-items:baseline;
  gap:8px;
  margin-top:7px;
  color:#c9dcf3;
}
.book-summary-card__equivalence span{
  font-size:15px;
  color:#7ee8ff;
}
.book-summary-card__equivalence b{
  font-size:13px;
  line-height:1.25;
  font-weight:520;
  color:#dceaff;
}
.book-summary-card--position{
  border-color:rgba(126,232,255,.40);
  box-shadow:0 0 30px rgba(83,191,255,.075),inset 0 1px 0 rgba(255,255,255,.04);
}
.book-summary-card__topline{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.book-summary-card__topline time{
  font-size:9px;
  letter-spacing:.06em;
  color:#8fb8d9;
  white-space:nowrap;
}
.book-summary-card--position>strong{
  color:#eaf9ff;
  text-shadow:0 0 20px rgba(89,216,255,.16);
}
.book-summary-card--position>b{
  display:block;
  margin-top:7px;
  font-size:13px;
  font-weight:520;
  color:#cde4f8;
}
@media(max-width:760px){
  .book-summary-grid{grid-template-columns:1fr}
  .book-summary-card{min-height:124px}
}

/* ============================================================
   V3.5 · INTRO ESTABLE · master streaming-friendly
   La lógica visual replica Casa EGRYS y neutraliza experimentos previos.
   ============================================================ */
body #intro.intro--video{
  position:fixed!important;inset:0!important;z-index:50!important;display:block!important;
  background:#061027!important;opacity:1!important;visibility:visible!important;
  pointer-events:auto!important;overflow:hidden!important;transform:none!important;filter:none!important;
  transition:opacity 1.2s ease,visibility 1.2s ease!important;
}
body #intro.intro--video video{
  position:absolute!important;inset:0!important;z-index:1!important;width:100%!important;height:100%!important;
  object-fit:cover!important;transform:scale(1.01)!important;filter:saturate(.99) brightness(.98)!important;
  opacity:1!important;animation:none!important;transition:opacity 1.2s ease!important;background:#061027!important;
  will-change:auto!important;
}
body #intro.intro--video .intro__video-veil{
  display:block!important;position:absolute!important;inset:0!important;z-index:2!important;pointer-events:none!important;
  opacity:1!important;visibility:visible!important;
  background:radial-gradient(circle at 50% 50%,rgba(88,152,255,.08),rgba(3,9,24,.34) 72%,rgba(2,7,19,.52))!important;
  transition:opacity 2s ease!important;
}
body #intro.intro--video.intro--boot .intro__video-veil{opacity:0!important}
body #intro.intro--video.intro--ending{opacity:1!important;visibility:visible!important;pointer-events:none!important}
body #intro.intro--video.intro--ending video{opacity:0!important}
body #intro.intro--video.intro--done{opacity:0!important;visibility:hidden!important;pointer-events:none!important}
body #intro .skip-btn{z-index:3!important;pointer-events:auto!important;top:18px!important;right:18px!important}
body #threshold .threshold__bg{
  background:#061027 url('assets/threshold-bg-v35.jpg') center/cover no-repeat!important;
  transform:scale(1.012)!important;filter:none!important;animation:none!important;
}


/* ============================================================
   V3.6 · DICTADO UNIVERSAL EN CAMPOS DE TEXTO
   Un mismo gesto de voz para nombre, MPI y futuros campos textuales.
   ============================================================ */
.dictation-field{position:relative;display:flex;align-items:stretch;gap:10px;width:100%}
.dictation-field>.input-line{flex:1;min-width:0}
.dictation-field--area{align-items:flex-start}
.dictation-field--area>.input-area{flex:1;min-width:0;padding-right:108px}
.dictate-btn{flex:0 0 auto;min-width:94px;height:58px;border:1px solid rgba(126,232,255,.34);border-radius:16px;background:linear-gradient(145deg,rgba(20,56,98,.66),rgba(8,23,55,.82));color:#eaf8ff;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 15px;cursor:pointer;box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 0 24px rgba(86,190,255,.08);transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease,background .2s ease}
.dictate-btn:hover{border-color:rgba(126,232,255,.72);box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 0 26px rgba(86,190,255,.18);transform:translateY(-1px)}
.dictate-btn__icon{width:11px;height:11px;border-radius:50%;background:var(--cyan);box-shadow:0 0 12px rgba(126,232,255,.75);font-size:0}
.dictate-btn__label{font-size:12px;letter-spacing:.02em}
.dictate-btn--area{position:absolute;right:11px;top:11px;height:38px;min-width:86px;border-radius:12px;z-index:2}
.dictate-btn--active{border-color:rgba(226,166,255,.86);background:linear-gradient(145deg,rgba(79,44,106,.82),rgba(22,28,72,.92));box-shadow:0 0 30px rgba(190,128,255,.28)}
.dictate-btn--active .dictate-btn__icon{background:#efc6ff;box-shadow:0 0 0 5px rgba(226,166,255,.12),0 0 18px rgba(226,166,255,.85);animation:dictatePulse 1.15s ease-in-out infinite}
.dictate-btn--unsupported{opacity:.45;cursor:not-allowed;filter:grayscale(.25)}
@keyframes dictatePulse{0%,100%{transform:scale(.84);opacity:.72}50%{transform:scale(1.15);opacity:1}}
@media(max-width:760px){
  .dictation-field:not(.dictation-field--area){flex-direction:column;gap:8px}
  .dictation-field:not(.dictation-field--area) .dictate-btn{width:100%;height:46px}
  .dictation-field--area>.input-area{padding-right:18px;padding-top:60px}
  .dictate-btn--area{left:11px;right:auto;top:11px}
}


/* ─────────────────────────────────────────────────────────
   V3.8 · ENTIDAD DE CÓDIGO VIVA
   ORIAN respira, orbita y expresa la cantidad de códigos
   que componen la expansión confirmada.
   ───────────────────────────────────────────────────────── */
.entity-orbit-stage{
  --entity-size:290px;
  width:var(--entity-size);
  height:var(--entity-size);
  margin:28px auto 34px;
  position:relative;
  display:grid;
  place-items:center;
  isolation:isolate;
  filter:drop-shadow(0 0 28px rgba(87,182,255,.16));
}
.entity-orbit-stage__aura{
  position:absolute;
  inset:11%;
  border-radius:50%;
  background:
    radial-gradient(circle at 46% 40%, rgba(124,211,255,.23), transparent 28%),
    radial-gradient(circle at 55% 58%, rgba(181,113,255,.24), transparent 46%),
    radial-gradient(circle, rgba(21,52,106,.22), rgba(10,14,48,.04) 68%, transparent 72%);
  filter:blur(14px);
  animation:entityAura 5.8s ease-in-out infinite;
}
.entity-orbit-stage__ring{
  position:absolute;
  left:50%;
  top:50%;
  border:1px solid rgba(140,221,255,.38);
  border-radius:50%;
  pointer-events:none;
  box-shadow:inset 0 0 14px rgba(84,178,255,.08),0 0 14px rgba(84,178,255,.08);
}
.entity-orbit-stage__ring::after{
  content:'';
  position:absolute;
  width:7px;
  height:7px;
  border-radius:50%;
  top:-4px;
  left:49%;
  background:#dcf8ff;
  box-shadow:0 0 13px rgba(128,222,255,.92),0 0 24px rgba(188,131,255,.5);
}
.entity-orbit-stage__ring--outer{
  width:88%;height:42%;
  margin-left:-44%;margin-top:-21%;
  transform:rotate(-19deg);
  animation:entityOrbitOuter 13s linear infinite;
}
.entity-orbit-stage__ring--mid{
  width:72%;height:72%;
  margin-left:-36%;margin-top:-36%;
  border-color:rgba(193,145,255,.34);
  animation:entityOrbitMid 18s linear infinite reverse;
}
.entity-orbit-stage__ring--inner{
  width:43%;height:82%;
  margin-left:-21.5%;margin-top:-41%;
  transform:rotate(42deg);
  border-color:rgba(117,219,255,.25);
  animation:entityOrbitInner 21s linear infinite;
}
.entity-orbit-stage__nodes{
  position:absolute;
  inset:0;
  animation:entityNodeSystem 22s linear infinite;
  pointer-events:none;
}
.entity-orbit-node{
  --angle:0deg;
  position:absolute;
  left:50%;top:50%;
  width:17px;height:17px;
  margin:-8.5px;
  border-radius:50%;
  transform:rotate(var(--angle)) translateX(calc(var(--entity-size) * .43));
  background:radial-gradient(circle at 35% 30%, #fff 0 11%, #9ae9ff 18%, #6c9dff 42%, rgba(172,100,255,.88) 68%, rgba(52,53,115,.25) 100%);
  border:1px solid rgba(218,248,255,.7);
  box-shadow:0 0 8px rgba(127,227,255,.95),0 0 20px rgba(117,166,255,.63),0 0 32px rgba(172,99,255,.32);
  animation:entityNodePulse 3.6s ease-in-out infinite;
  animation-delay:var(--delay,0s);
}
.entity-orbit-node::before{
  content:'';
  position:absolute;
  inset:-8px;
  border:1px solid rgba(133,218,255,.15);
  border-radius:50%;
  animation:entityNodeHalo 3.6s ease-out infinite;
  animation-delay:var(--delay,0s);
}
.entity-orbit-stage__core{
  position:relative;
  z-index:5;
  width:58%;
  aspect-ratio:1;
  border-radius:50%;
  display:grid;
  place-content:center;
  text-align:center;
  background:
    radial-gradient(circle at 47% 34%, rgba(126,217,255,.21), transparent 24%),
    radial-gradient(circle at 51% 51%, rgba(88,99,205,.3), rgba(50,28,99,.45) 56%, rgba(4,12,34,.76) 76%);
  border:1px solid rgba(148,225,255,.52);
  box-shadow:
    0 0 42px rgba(95,190,255,.25),
    0 0 85px rgba(165,89,255,.12),
    inset 0 0 42px rgba(120,174,255,.2),
    inset 0 1px 0 rgba(255,255,255,.18);
  backdrop-filter:blur(5px);
  animation:entityCoreBreath 5.8s ease-in-out infinite;
}
.entity-orbit-stage__core::before{
  content:'';
  position:absolute;
  inset:10%;
  border-radius:50%;
  border:1px solid rgba(208,242,255,.13);
  box-shadow:inset 0 0 16px rgba(202,135,255,.13);
}
.entity-orbit-stage__core span{
  position:relative;
  z-index:2;
  font-size:clamp(26px,3.1vw,42px);
  letter-spacing:.18em;
  margin-left:.18em;
  font-weight:400;
  color:#f4f8ff;
  text-shadow:0 0 16px rgba(117,220,255,.35),0 0 28px rgba(184,119,255,.22);
}
.entity-orbit-stage__core small{
  position:relative;
  z-index:2;
  display:block;
  margin-top:9px;
  font-size:9px;
  letter-spacing:.17em;
  text-transform:uppercase;
  color:rgba(199,220,243,.7);
}
.entity-orbit-stage__microglow{
  position:absolute;
  width:5px;height:5px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 0 14px #8edfff,0 0 28px #ba78ff;
  opacity:.65;
}
.entity-orbit-stage__microglow--1{left:16%;top:32%;animation:microFloat1 7s ease-in-out infinite}
.entity-orbit-stage__microglow--2{right:13%;bottom:29%;animation:microFloat2 8.4s ease-in-out infinite}
.entity-orbit-stage--energize .entity-orbit-stage__core{animation:entityCoreEnergize .8s ease-out,entityCoreBreath 5.8s .8s ease-in-out infinite}
.entity-orbit-stage--energize .entity-orbit-node{animation:entityNodeEnergize .72s ease-out,entityNodePulse 3.6s .72s ease-in-out infinite}
.entity-orbit-stage:hover .entity-orbit-stage__ring{border-color:rgba(167,233,255,.53)}
.entity-orbit-stage:hover .entity-orbit-stage__core{box-shadow:0 0 50px rgba(95,203,255,.33),0 0 105px rgba(174,94,255,.16),inset 0 0 45px rgba(120,174,255,.22)}

@keyframes entityAura{0%,100%{transform:scale(.96);opacity:.66}50%{transform:scale(1.06);opacity:1}}
@keyframes entityCoreBreath{0%,100%{transform:scale(.985);filter:brightness(.96)}50%{transform:scale(1.018);filter:brightness(1.1)}}
@keyframes entityOrbitOuter{from{transform:rotate(-19deg) rotate(0deg)}to{transform:rotate(-19deg) rotate(360deg)}}
@keyframes entityOrbitMid{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
@keyframes entityOrbitInner{from{transform:rotate(42deg) rotate(0deg)}to{transform:rotate(42deg) rotate(360deg)}}
@keyframes entityNodeSystem{to{transform:rotate(360deg)}}
@keyframes entityNodePulse{0%,100%{opacity:.66;filter:brightness(.9);box-shadow:0 0 7px rgba(127,227,255,.72),0 0 16px rgba(117,166,255,.42)}50%{opacity:1;filter:brightness(1.2);box-shadow:0 0 10px rgba(169,239,255,1),0 0 24px rgba(117,166,255,.72),0 0 38px rgba(172,99,255,.38)}}
@keyframes entityNodeHalo{0%{transform:scale(.55);opacity:.4}70%,100%{transform:scale(1.55);opacity:0}}
@keyframes microFloat1{0%,100%{transform:translate(0,0);opacity:.35}45%{transform:translate(12px,-10px);opacity:.9}}
@keyframes microFloat2{0%,100%{transform:translate(0,0);opacity:.3}55%{transform:translate(-10px,12px);opacity:.85}}
@keyframes entityCoreEnergize{0%{transform:scale(.9);filter:brightness(.8)}45%{transform:scale(1.075);filter:brightness(1.35)}100%{transform:scale(1);filter:brightness(1)}}
@keyframes entityNodeEnergize{0%{transform:rotate(var(--angle)) translateX(calc(var(--entity-size) * .25)) scale(.4);opacity:0}70%{opacity:1}100%{transform:rotate(var(--angle)) translateX(calc(var(--entity-size) * .43)) scale(1);opacity:.8}}

@media (prefers-reduced-motion:reduce){
  .entity-orbit-stage__aura,.entity-orbit-stage__ring,.entity-orbit-stage__nodes,.entity-orbit-node,.entity-orbit-node::before,.entity-orbit-stage__core,.entity-orbit-stage__microglow{animation:none!important}
}
@media(max-width:700px){.entity-orbit-stage{--entity-size:240px;margin:22px auto 28px}}

/* V3.9 · Continuidad cíclica del Bio-Libro + Entidad pedagógica real */
.book-cycle-divider{
  min-width:112px;display:flex;align-items:center;justify-content:center;text-align:center;
  font-size:9px;letter-spacing:.13em;text-transform:uppercase;color:#b8ddff;
  border-left:1px solid rgba(126,232,255,.42);border-right:1px solid rgba(194,146,255,.2);
  background:linear-gradient(90deg,rgba(89,205,255,.04),rgba(170,91,255,.08),rgba(89,205,255,.04));
  border-radius:12px;padding:0 10px;line-height:1.35
}
.book-continuation{margin-top:10px;padding:10px 12px;border-radius:12px;border:1px solid rgba(126,232,255,.2);background:rgba(9,25,55,.38);font-size:11px;color:#bcd9ef}
.book-continuation strong{color:#e8f7ff;font-weight:600}
.book-letter[data-cycle-offset="1"],.book-letter[data-cycle-offset="2"],.book-letter[data-cycle-offset="3"]{box-shadow:inset 0 0 0 1px rgba(168,111,255,.08)}
.layout--entity{grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);align-items:start}
.entity-work-panel{max-width:none}
.entity-context-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0 20px}
.entity-context-strip>div{padding:13px 14px;border-radius:14px;border:1px solid rgba(159,205,255,.16);background:rgba(6,18,44,.38)}
.entity-context-strip span{display:block;font-size:9px;letter-spacing:.12em;color:#91a9c6;margin-bottom:6px}
.entity-context-strip strong{font-size:16px;font-weight:600;color:#ecf8ff}
.entity-question-block{margin-top:18px;padding:18px;border-radius:18px;border:1px solid rgba(139,202,255,.16);background:linear-gradient(180deg,rgba(9,27,61,.58),rgba(7,18,42,.38))}
.entity-prompt{font-size:15px;line-height:1.5;margin:8px 0 12px;color:#eef6ff;max-width:720px}
.input-line--entity{font-size:24px;letter-spacing:.16em;text-transform:uppercase}
.dictation-field--textarea{align-items:flex-start}
.textarea-line{resize:vertical;min-height:108px;padding-right:120px;line-height:1.45}
.dictate-btn--textarea{top:12px;bottom:auto}
.entity-recognition-status{margin-top:18px;padding:17px 18px;border-radius:17px;border:1px solid rgba(126,232,255,.34);background:linear-gradient(135deg,rgba(42,118,165,.24),rgba(100,52,145,.18));box-shadow:0 0 35px rgba(93,199,255,.08)}
.entity-recognition-status span{display:block;font-size:9px;letter-spacing:.15em;color:#9fdcff;margin-bottom:5px}
.entity-recognition-status strong{display:block;font-size:25px;letter-spacing:.16em;color:#ecfbff}
.entity-recognition-status p{margin:7px 0 0;color:#bdd5ea;font-size:12px}
.orbital-stage--entity{position:sticky;top:90px;min-height:620px}
.summary-strip--entity{max-width:430px;margin:16px auto 0}
@media(max-width:980px){.layout--entity{grid-template-columns:1fr}.orbital-stage--entity{position:relative;top:auto;min-height:auto}.entity-context-strip{grid-template-columns:1fr}}

/* ============================================================
   V4.2 · 03 CAMPO DE RESONANCIA / PAISAJE DE CÓDIGO
   ============================================================ */
.expansion-commitment{
  display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;
  margin:18px 0 8px;padding:18px 20px;border-radius:20px;
  border:1px solid rgba(126,232,255,.28);
  background:linear-gradient(135deg,rgba(20,53,95,.58),rgba(11,23,58,.72));
  box-shadow:0 0 32px rgba(81,188,255,.10),inset 0 1px 0 rgba(255,255,255,.05)
}
.expansion-commitment strong{display:block;font-size:34px;font-weight:320;letter-spacing:.08em;margin-top:5px;background:linear-gradient(90deg,#fff,var(--cyan),var(--magenta));-webkit-background-clip:text;background-clip:text;color:transparent}
.expansion-commitment p{margin:5px 0 0;color:#b9cce5;font-size:12px;letter-spacing:.04em}
.expansion-commitment__seal{font-size:9px;letter-spacing:.14em;border:1px solid rgba(126,232,255,.28);border-radius:999px;padding:9px 12px;color:#dff7ff;background:rgba(43,113,164,.16)}

.layout--resonance{grid-template-columns:minmax(650px,860px) 1fr;gap:34px}
.resonance-work-panel{max-width:900px}
.resonance-work-panel .lead strong{color:#fff;font-weight:600}
.resonance-summary{display:grid;grid-template-columns:1.1fr .7fr 1.35fr 1fr;gap:9px;margin:22px 0 14px}
.resonance-summary>div{min-height:96px;border:1px solid rgba(165,222,255,.15);border-radius:17px;padding:14px 15px;background:linear-gradient(145deg,rgba(18,40,75,.48),rgba(5,18,44,.58))}
.resonance-summary span{display:block;font-size:8px;letter-spacing:.13em;color:#aebfda;text-transform:uppercase;margin-bottom:8px}
.resonance-summary strong{display:block;font-size:17px;font-weight:420;line-height:1.25;color:#f6f8ff;overflow-wrap:anywhere}

.resonance-reading{margin:14px 0 16px;padding:18px;border-radius:22px;border:1px solid rgba(168,217,255,.16);background:linear-gradient(145deg,rgba(8,28,62,.66),rgba(5,17,43,.76));box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.resonance-reading__head{display:flex;gap:13px;align-items:center;padding-bottom:13px;border-bottom:1px solid rgba(255,255,255,.08)}
.resonance-reading__orb{width:38px;height:38px;border:1px solid rgba(142,224,255,.38);border-radius:50%;display:grid;place-items:center;color:var(--cyan);box-shadow:0 0 25px rgba(93,195,255,.16);animation:resonanceBreath 3.8s ease-in-out infinite}
.resonance-reading__head span{display:block;font-size:8px;letter-spacing:.14em;color:#91abc9;margin-bottom:3px}
.resonance-reading__head strong{font-size:13px;font-weight:450;color:#eef6ff}
@keyframes resonanceBreath{0%,100%{transform:scale(.96);box-shadow:0 0 18px rgba(93,195,255,.10)}50%{transform:scale(1.06);box-shadow:0 0 32px rgba(160,119,255,.23)}}
.resonance-layers{display:grid;gap:8px;margin-top:12px}
.resonance-layer{padding:12px 13px;border-radius:14px;border:1px solid rgba(160,216,255,.11);background:rgba(21,45,78,.26);opacity:0;transform:translateY(6px);animation:resonanceLayerIn .55s ease forwards;animation-delay:var(--delay)}
@keyframes resonanceLayerIn{to{opacity:1;transform:none}}
.resonance-layer span{font-size:8px;letter-spacing:.13em;color:#9fb4d1;text-transform:uppercase}
.resonance-layer p{margin:5px 0 0;font-size:11.5px;line-height:1.5;color:#d8e3f4}

.landscape-proposal{margin-top:14px;padding:20px;border-radius:22px;border:1px solid rgba(187,149,255,.26);background:linear-gradient(145deg,rgba(31,28,72,.58),rgba(6,22,48,.76));box-shadow:0 0 34px rgba(157,103,255,.09),inset 0 1px 0 rgba(255,255,255,.04)}
.landscape-proposal__head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:8px}
.landscape-proposal__head h2{font-size:30px;font-weight:320;letter-spacing:.08em;margin:4px 0 0;background:linear-gradient(90deg,#fff,var(--cyan),var(--magenta));-webkit-background-clip:text;background-clip:text;color:transparent}
.landscape-proposal__note{font-size:11px;line-height:1.5;color:#aebbd0;margin:0 0 12px}
.input-area--landscape{min-height:162px;line-height:1.62}
.landscape-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}

.code-landscape-stage{min-height:650px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;position:relative}
.code-landscape-stage__field{position:relative;width:min(460px,35vw);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;isolation:isolate;filter:drop-shadow(0 0 42px rgba(99,151,255,.12))}
.code-landscape-stage__field:before{content:'';position:absolute;inset:12%;border-radius:50%;background:radial-gradient(circle,rgba(122,105,255,.18),rgba(68,150,255,.08) 38%,transparent 68%);filter:blur(10px);animation:landscapePulse 5s ease-in-out infinite}
@keyframes landscapePulse{0%,100%{transform:scale(.93);opacity:.62}50%{transform:scale(1.04);opacity:1}}
.code-landscape-stage__orbit{position:absolute;inset:16%;border:1px solid rgba(136,223,255,.30);border-radius:50%;animation:landscapeOrbit 12s linear infinite;transform:rotateX(64deg) rotateZ(10deg)}
.code-landscape-stage__orbit.orbit--b{inset:25%;border-color:rgba(214,159,255,.28);animation-duration:9s;animation-direction:reverse;transform:rotateX(67deg) rotateZ(72deg)}
@keyframes landscapeOrbit{to{transform:rotateX(64deg) rotateZ(370deg)}}
.code-landscape-stage__signal{position:absolute;left:50%;top:50%;width:66%;height:1px;transform-origin:0 50%;background:linear-gradient(90deg,rgba(126,232,255,.02),rgba(126,232,255,.55),transparent);opacity:.44;filter:drop-shadow(0 0 8px rgba(126,232,255,.3));animation:signalSweep 6s ease-in-out infinite}
.code-landscape-stage__signal.signal--1{transform:rotate(-28deg)}
.code-landscape-stage__signal.signal--2{transform:rotate(18deg);animation-delay:-2s}
.code-landscape-stage__signal.signal--3{transform:rotate(68deg);animation-delay:-4s}
@keyframes signalSweep{0%,100%{opacity:.12;transform-origin:0 50%;scale:.7 1}50%{opacity:.65;scale:1.04 1}}
.code-landscape-stage__core{position:relative;z-index:4;width:180px;height:180px;border-radius:50%;display:grid;place-items:center;align-content:center;text-align:center;border:1px solid rgba(182,219,255,.34);background:radial-gradient(circle at 45% 38%,rgba(228,236,255,.15),rgba(83,75,182,.24) 36%,rgba(9,24,58,.84) 72%);box-shadow:0 0 54px rgba(118,106,255,.23),inset 0 0 40px rgba(113,190,255,.11);animation:coreFloat 4.4s ease-in-out infinite}
@keyframes coreFloat{0%,100%{transform:translateY(0) scale(.985)}50%{transform:translateY(-4px) scale(1.015)}}
.code-landscape-stage__core span{font-size:27px;letter-spacing:.16em;font-weight:350;background:linear-gradient(90deg,#fff,var(--cyan),var(--magenta));-webkit-background-clip:text;background-clip:text;color:transparent;padding-left:.16em}
.code-landscape-stage__core small{margin-top:8px;font-size:8px;letter-spacing:.13em;color:#9fb4d2}
.code-landscape-stage__nodes{position:absolute;inset:0;z-index:5;animation:nodeFieldRotate 26s linear infinite}
@keyframes nodeFieldRotate{to{transform:rotate(360deg)}}
.code-landscape-node{--radius:42%;position:absolute;left:50%;top:50%;width:8px;height:8px;border-radius:50%;background:#dff8ff;box-shadow:0 0 12px 3px rgba(105,211,255,.60),0 0 30px rgba(186,127,255,.30);transform:rotate(var(--angle)) translateX(var(--radius)) rotate(calc(var(--angle) * -1));animation:landscapeNode 2.8s ease-in-out infinite;animation-delay:var(--delay)}
@keyframes landscapeNode{0%,100%{opacity:.46;scale:.78}50%{opacity:1;scale:1.18}}
.code-landscape-stage__frequency{width:min(430px,36vw);padding:11px 14px;border-radius:16px;border:1px solid rgba(161,215,255,.14);background:rgba(4,17,43,.38);backdrop-filter:blur(12px)}
.code-landscape-stage__frequency>span{display:block;text-align:center;font-size:8px;letter-spacing:.16em;color:#98aecb;margin-bottom:7px}
.frequency-bars{height:28px;display:flex;align-items:flex-end;justify-content:center;gap:5px}
.frequency-bars i{display:block;width:3px;border-radius:8px;background:linear-gradient(180deg,var(--cyan),var(--violet));height:var(--h,45%);animation:freq 1.7s ease-in-out infinite alternate}
.frequency-bars i:nth-child(1){--h:30%;animation-delay:-.2s}.frequency-bars i:nth-child(2){--h:60%;animation-delay:-.9s}.frequency-bars i:nth-child(3){--h:42%;animation-delay:-.5s}.frequency-bars i:nth-child(4){--h:82%;animation-delay:-1.1s}.frequency-bars i:nth-child(5){--h:52%;animation-delay:-.4s}.frequency-bars i:nth-child(6){--h:95%;animation-delay:-1.4s}.frequency-bars i:nth-child(7){--h:57%;animation-delay:-.8s}.frequency-bars i:nth-child(8){--h:72%;animation-delay:-1.2s}.frequency-bars i:nth-child(9){--h:38%;animation-delay:-.1s}
@keyframes freq{to{height:calc(var(--h) * .55);opacity:.58}}

.archive-card{width:min(720px,92vw);max-height:82vh;overflow:auto}
.archive-list{display:grid;gap:9px;margin-top:16px}
.archive-entry{display:grid;grid-template-columns:1fr auto;gap:4px 16px;padding:13px 14px;border:1px solid rgba(165,220,255,.13);border-radius:15px;background:rgba(10,30,62,.42)}
.archive-entry strong{font-size:12px;font-weight:520}.archive-entry time{font-size:9px;color:#91a7c4}.archive-entry p{grid-column:1/-1;margin:2px 0 0;color:#aebdd3;font-size:10px}
.archive-empty{color:#aab8ce;font-size:12px;line-height:1.5}

@media(max-width:980px){
  .layout--resonance{grid-template-columns:1fr}
  .resonance-summary{grid-template-columns:1fr 1fr}
  .code-landscape-stage{min-height:480px}
  .code-landscape-stage__field{width:min(430px,82vw)}
  .code-landscape-stage__frequency{width:min(430px,82vw)}
}
@media(max-width:620px){
  .resonance-summary{grid-template-columns:1fr}
  .expansion-commitment{grid-template-columns:1fr}
}

/* ============================================================
   V4.3 · MPI → EGRYS → CÓDIGO → PROYECTO EXPANDIDO
   ============================================================ */
.layout--egrys,.layout--project{grid-template-columns:minmax(620px,860px) minmax(330px,.8fr);gap:34px;align-items:start}
.egrys-work-panel,.project-work-panel{max-width:none}
.context-banner{display:grid;gap:10px;margin:18px 0 20px;padding:15px 17px;border-radius:18px;border:1px solid rgba(149,215,255,.16);background:linear-gradient(145deg,rgba(12,35,72,.52),rgba(7,21,49,.58))}
.context-banner span,.project-triad-card span,.resonance-project-strip span{display:block;font-size:8px;letter-spacing:.14em;text-transform:uppercase;color:#94abc7;margin-bottom:7px}
.context-banner strong{font-size:14px;font-weight:440;line-height:1.45;color:#edf7ff}

.triad-stage{position:sticky;top:88px;min-height:620px;display:grid;place-items:center;isolation:isolate}
.triad-stage:before{content:'';position:absolute;inset:18%;border-radius:50%;background:radial-gradient(circle,rgba(115,119,255,.16),rgba(74,173,255,.06) 42%,transparent 70%);filter:blur(8px);animation:triadBreath 5.5s ease-in-out infinite}
@keyframes triadBreath{0%,100%{transform:scale(.94);opacity:.55}50%{transform:scale(1.04);opacity:1}}
.triad-stage__node{position:absolute;width:145px;min-height:92px;border:1px solid rgba(148,219,255,.24);border-radius:50%;display:grid;place-content:center;text-align:center;padding:14px;background:radial-gradient(circle at 50% 38%,rgba(110,186,255,.17),rgba(20,34,77,.62) 58%,rgba(8,16,40,.78));box-shadow:0 0 28px rgba(80,174,255,.08),inset 0 0 24px rgba(123,191,255,.06);backdrop-filter:blur(10px)}
.triad-stage__node span{font-size:14px;letter-spacing:.12em;color:#eef9ff;text-transform:uppercase}
.triad-stage__node small{font-size:7px;letter-spacing:.12em;color:#91abc9;margin-top:7px}
.triad-stage__node--active{border-color:rgba(125,231,255,.48);box-shadow:0 0 36px rgba(88,204,255,.18),0 0 62px rgba(169,99,255,.08),inset 0 0 28px rgba(123,191,255,.10)}
.triad-stage__node--top{left:50%;top:14%;transform:translateX(-50%)}
.triad-stage__node--left{left:9%;bottom:22%}
.triad-stage__node--right{right:9%;bottom:22%}
.triad-stage__center{position:relative;z-index:3;width:170px;height:170px;border-radius:50%;display:grid;place-content:center;text-align:center;border:1px solid rgba(182,219,255,.35);background:radial-gradient(circle at 45% 36%,rgba(217,234,255,.14),rgba(83,75,182,.24) 38%,rgba(8,22,54,.85) 74%);box-shadow:0 0 50px rgba(109,125,255,.18),inset 0 0 38px rgba(118,189,255,.10);animation:coreFloat 4.6s ease-in-out infinite}
.triad-stage__center span{font-size:15px;letter-spacing:.14em;color:#f4f9ff}
.triad-stage__center small{font-size:8px;letter-spacing:.14em;color:#a3b7d2;margin-top:7px}
.triad-stage__center--project{border-color:rgba(203,159,255,.45);box-shadow:0 0 55px rgba(175,108,255,.18),0 0 75px rgba(75,194,255,.09),inset 0 0 38px rgba(118,189,255,.10)}
.triad-stage__line{position:absolute;width:34%;height:1px;top:39%;background:linear-gradient(90deg,transparent,rgba(130,221,255,.42),transparent);transform-origin:left center;opacity:.75}
.triad-stage__line--left{left:29%;transform:rotate(124deg)}
.triad-stage__line--right{left:50%;transform:rotate(56deg)}
.triad-stage .orbital-stage__phrase{position:absolute;bottom:7%;width:100%;text-align:center}

.engine-banner--four{grid-template-columns:.72fr .82fr 1.25fr .9fr}

.project-triad-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:20px 0}
.project-triad-card{min-height:124px;padding:15px 16px;border-radius:17px;border:1px solid rgba(157,215,255,.15);background:linear-gradient(145deg,rgba(16,40,78,.50),rgba(7,21,50,.61))}
.project-triad-card strong{display:block;font-size:13px;line-height:1.42;font-weight:450;color:#eff8ff;max-height:78px;overflow:auto}
.project-triad-card small{display:block;margin-top:8px;font-size:8px;letter-spacing:.09em;color:#8fa8c6;text-transform:uppercase}
.project-question-block{background:linear-gradient(145deg,rgba(13,33,69,.6),rgba(15,19,53,.48))}
.resonance-project-strip{margin:18px 0 10px;padding:15px 17px;border-radius:17px;border:1px solid rgba(198,159,255,.2);background:linear-gradient(135deg,rgba(73,46,117,.28),rgba(9,31,65,.48))}
.resonance-project-strip strong{display:block;font-size:14px;line-height:1.5;font-weight:430;color:#eff6ff}
.entity-context-strip--four{grid-template-columns:1fr 1fr .8fr 1.45fr}
.entity-context-strip--four>div:last-child strong{font-size:12px;line-height:1.4}

@media(max-width:1080px){
  .layout--egrys,.layout--project{grid-template-columns:1fr}
  .triad-stage{position:relative;top:auto;min-height:520px}
  .engine-banner--four{grid-template-columns:1fr 1fr}
  .project-triad-grid{grid-template-columns:1fr}
}
@media(max-width:700px){
  .engine-banner--four{grid-template-columns:1fr}
  .entity-context-strip--four{grid-template-columns:1fr}
  .triad-stage__node{width:118px;min-height:78px}
  .triad-stage__node--left{left:2%}.triad-stage__node--right{right:2%}
}

/* ──────────────────────────────────────────────────────────
   V4.4 · Proyecto Expandido + Proyección de Código
   ────────────────────────────────────────────────────────── */
.project-triad-stack{display:flex;flex-direction:column;gap:8px;margin:20px 0 14px}
.project-triad-line{display:grid;grid-template-columns:150px minmax(0,1fr);gap:16px;align-items:start;padding:15px 16px;border-radius:17px;border:1px solid rgba(157,215,255,.15);background:linear-gradient(145deg,rgba(16,40,78,.50),rgba(7,21,50,.61));box-shadow:inset 0 1px 0 rgba(255,255,255,.035)}
.project-triad-line>span{font-size:8px;letter-spacing:.14em;text-transform:uppercase;color:#9bc1dc;padding-top:3px}
.project-triad-line strong{display:block;font-size:13px;line-height:1.5;font-weight:450;color:#f4f9ff;overflow-wrap:anywhere}
.project-triad-line small{display:block;margin-top:5px;font-size:9px;line-height:1.4;color:#8ea7c4;letter-spacing:.035em}
.project-emergence-callout{margin:15px 0 20px;padding:17px 18px;border-radius:18px;border:1px solid rgba(183,149,255,.22);background:linear-gradient(110deg,rgba(37,30,80,.54),rgba(7,29,61,.68));box-shadow:0 0 28px rgba(127,84,255,.07)}
.project-emergence-callout span{display:block;font-size:8px;letter-spacing:.16em;color:#aa9cec;margin-bottom:7px}
.project-emergence-callout strong{display:block;font-size:16px;line-height:1.45;font-weight:380;color:#f7f7ff}
.ai-note--project{margin-top:18px}

.projection-work-panel{position:relative}
.projection-context-strip{margin:20px 0 14px;padding:14px 16px;border-radius:16px;border:1px solid rgba(142,218,255,.14);background:rgba(7,25,55,.50)}
.projection-context-strip span{display:block;font-size:8px;letter-spacing:.14em;color:#91abc7;margin-bottom:6px}
.projection-context-strip strong{display:block;font-size:13px;line-height:1.45;font-weight:450;color:#eef8ff;max-height:72px;overflow:auto}
.projection-building{display:flex;align-items:center;gap:17px;margin:18px 0;padding:22px;border-radius:22px;border:1px solid rgba(154,222,255,.20);background:linear-gradient(135deg,rgba(10,31,65,.74),rgba(18,20,58,.78));box-shadow:0 0 42px rgba(83,178,255,.08),inset 0 1px 0 rgba(255,255,255,.04);transition:opacity .4s ease,transform .4s ease}
.projection-building--complete{opacity:.35;transform:scale(.985)}
.projection-building__orb{width:54px;height:54px;flex:0 0 54px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(130,221,255,.42);color:#bcf3ff;font-size:18px;box-shadow:0 0 35px rgba(83,198,255,.18),inset 0 0 25px rgba(139,90,255,.10);animation:resonanceBreath 3.3s ease-in-out infinite}
.projection-building span{display:block;font-size:8px;letter-spacing:.16em;color:#91b7d2;margin-bottom:5px}
.projection-building strong{display:block;font-size:16px;font-weight:420;color:#f6fbff;margin-bottom:5px}
.projection-building p{margin:0;font-size:10px;letter-spacing:.05em;color:#8ba4c1}

.projection-proposal{margin:16px 0 0;padding:24px;border-radius:24px;border:1px solid rgba(199,155,255,.30);background:linear-gradient(145deg,rgba(35,25,77,.74),rgba(6,25,54,.82));box-shadow:0 0 48px rgba(156,94,255,.12),inset 0 1px 0 rgba(255,255,255,.05);animation:projectionReveal .72s cubic-bezier(.22,.72,.18,1) both}
@keyframes projectionReveal{from{opacity:0;transform:translateY(14px) scale(.985);filter:blur(3px)}to{opacity:1;transform:none;filter:none}}
.projection-proposal__intro{display:grid;grid-template-columns:1fr auto;gap:10px 16px;align-items:start;margin-bottom:12px}
.projection-proposal__intro .field-label{grid-column:1/-1;margin:0}
.projection-proposal__intro h2{margin:0;font-size:36px;font-weight:300;letter-spacing:.10em;background:linear-gradient(90deg,#fff,#9deeff,#ca9dff);-webkit-background-clip:text;background-clip:text;color:transparent}
.projection-proposal__lead{margin:8px 0 18px;font-size:12px;line-height:1.62;color:#c7d2e2}
.projection-proposal__lead strong{color:#fff;font-weight:500}
.projection-landscape-card{padding:19px 20px;border-radius:18px;border:1px solid rgba(122,215,255,.20);background:linear-gradient(130deg,rgba(9,38,70,.66),rgba(11,20,48,.68));box-shadow:inset 0 1px 0 rgba(255,255,255,.035)}
.projection-landscape-text{margin:9px 0 0;font-size:14px;line-height:1.7;color:#f0f5fd;font-weight:350;white-space:pre-wrap}
.projection-feedback{margin:16px 0 0;padding:21px 22px;border-radius:22px;border:1px solid rgba(150,214,255,.15);background:linear-gradient(145deg,rgba(8,30,61,.65),rgba(7,20,47,.76));animation:projectionReveal .6s .08s ease both}
.projection-feedback__head h3{font-size:22px;font-weight:330;margin:5px 0 5px;color:#f7f9ff}
.projection-feedback__head p{font-size:11px;line-height:1.5;color:#a9b7cc;margin:0 0 13px}
.projection-editor{margin-top:14px;padding-top:14px;border-top:1px solid rgba(255,255,255,.08)}

@media(max-width:820px){
  .project-triad-line{grid-template-columns:1fr;gap:6px}
  .projection-proposal__intro{grid-template-columns:1fr}
}

/* ─────────────────────────────────────────────────────────────
   V4.5 · PROYECCIÓN DE CÓDIGO
   Síntesis explícita de lo expresado + narración opcional.
   ───────────────────────────────────────────────────────────── */
.expression-summary-card{
  margin:20px 0 14px;
  padding:18px 18px 16px;
  border-radius:20px;
  border:1px solid rgba(142,218,255,.18);
  background:linear-gradient(145deg,rgba(7,28,60,.74),rgba(6,20,47,.82));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 10px 34px rgba(3,10,30,.16);
}
.expression-summary-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}
.expression-summary-card__head small{display:block;margin-top:5px;font-size:8px;letter-spacing:.12em;color:#7f98b8}
.expression-summary-card__text{margin:0;font-size:13px;line-height:1.68;color:#edf7ff;max-height:176px;overflow:auto;padding-right:5px}
.expression-summary-card__note{margin:12px 0 0;padding-top:11px;border-top:1px solid rgba(155,209,255,.10);font-size:10px;line-height:1.5;color:#91a8c5}
.projection-audio-row{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:4px 0 15px;padding:12px 14px;border-radius:15px;border:1px solid rgba(186,153,255,.14);background:rgba(18,19,54,.42)}
.projection-audio-row p{margin:0;font-size:10px;line-height:1.45;color:#aebbd0;max-width:62%}
.narrate-btn{appearance:none;border:1px solid rgba(130,218,255,.27);background:rgba(7,30,62,.72);color:#eaf9ff;border-radius:999px;padding:9px 13px;display:inline-flex;align-items:center;gap:9px;cursor:pointer;font:inherit;font-size:10px;white-space:nowrap;box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 0 0 0 rgba(104,218,255,0);transition:border-color .25s ease,background .25s ease,box-shadow .25s ease,transform .25s ease}
.narrate-btn:hover{border-color:rgba(149,229,255,.62);background:rgba(13,45,84,.86);box-shadow:0 0 24px rgba(90,210,255,.12);transform:translateY(-1px)}
.narrate-btn--accent{border-color:rgba(202,157,255,.34);background:linear-gradient(90deg,rgba(39,30,83,.78),rgba(8,45,78,.74))}
.narrate-btn__bars{display:flex;align-items:center;justify-content:center;gap:2px;width:15px;height:15px}
.narrate-btn__bars i{display:block;width:2px;height:5px;border-radius:2px;background:#7eeaff;box-shadow:0 0 8px rgba(126,234,255,.45)}
.narrate-btn__bars i:nth-child(2){height:10px;background:#c7a0ff}
.narrate-btn__bars i:nth-child(3){height:7px}
.narrate-btn--speaking{border-color:rgba(136,235,255,.84);background:rgba(14,55,92,.90);box-shadow:0 0 30px rgba(83,218,255,.18)}
.narrate-btn--speaking .narrate-btn__bars i{animation:narrationBars .72s ease-in-out infinite alternate}
.narrate-btn--speaking .narrate-btn__bars i:nth-child(2){animation-delay:-.31s}
.narrate-btn--speaking .narrate-btn__bars i:nth-child(3){animation-delay:-.16s}
@keyframes narrationBars{from{transform:scaleY(.52);opacity:.62}to{transform:scaleY(1.35);opacity:1}}
@media(max-width:760px){
  .expression-summary-card__head,.projection-audio-row{flex-direction:column;align-items:stretch}
  .projection-audio-row p{max-width:none}
  .narrate-btn{align-self:flex-start}
}

/* V4.6 · Campo de Resonancia teatral: durante la lectura desaparece la interfaz de trabajo. */
.resonance-main--hidden{opacity:0;visibility:hidden;pointer-events:none;transform:scale(.992);transition:opacity .45s ease,transform .5s ease,visibility .45s ease}
#resonanceMainLayout{transition:opacity .58s ease,transform .58s ease,visibility .58s ease}
.resonance-theater{min-height:calc(100vh - 122px);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:26px;position:relative;padding:54px 24px 70px;isolation:isolate;animation:theaterIn .7s ease both}
.resonance-theater[hidden]{display:none!important}
.resonance-theater:before{content:'';position:absolute;inset:5% 10%;border-radius:50%;background:radial-gradient(circle at center,rgba(74,149,255,.11),rgba(108,65,190,.07) 35%,transparent 70%);filter:blur(18px);z-index:-1;animation:theaterAura 4.5s ease-in-out infinite}
.resonance-theater--leaving{animation:theaterOut .58s ease both}
.resonance-theater__hub{position:relative;width:min(520px,62vw);aspect-ratio:1;display:grid;place-items:center}
.resonance-theater__ring{position:absolute;border-radius:50%;border:1px solid rgba(143,225,255,.36);box-shadow:0 0 40px rgba(86,190,255,.09),inset 0 0 35px rgba(124,109,255,.07);animation:theaterOrbit 11s linear infinite}
.resonance-theater__ring--a{inset:7%;transform:rotateX(68deg) rotateZ(17deg)}
.resonance-theater__ring--b{inset:18%;border-color:rgba(216,170,255,.31);animation-duration:8s;animation-direction:reverse;transform:rotateX(71deg) rotateZ(76deg)}
.resonance-theater__pulse{position:absolute;inset:27%;border-radius:50%;border:1px solid rgba(121,229,255,.3);animation:theaterPulse 2.1s ease-out infinite}
.resonance-theater__core{width:min(310px,42vw);aspect-ratio:1;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:38px;background:radial-gradient(circle at 46% 38%,rgba(235,243,255,.15),rgba(66,71,163,.27) 40%,rgba(3,18,45,.72) 75%);border:1px solid rgba(162,222,255,.43);box-shadow:0 0 74px rgba(73,182,255,.17),inset 0 0 55px rgba(127,94,255,.12);backdrop-filter:blur(15px);-webkit-backdrop-filter:blur(15px);animation:theaterBreathe 3.1s ease-in-out infinite}
.resonance-theater__core span{font-size:10px;letter-spacing:.22em;color:#91c9e5;margin-bottom:13px}
.resonance-theater__core strong{font-size:clamp(24px,2.4vw,38px);font-weight:300;line-height:1.12;background:linear-gradient(90deg,#fff,var(--cyan),var(--violet));-webkit-background-clip:text;background-clip:text;color:transparent}
.resonance-theater__core p{font-size:13px;line-height:1.45;color:#dbe8f8;min-height:42px;margin:15px 0 0;max-width:240px;transition:opacity .22s ease,transform .22s ease}
.resonance-theater__core p.is-changing{opacity:0;transform:translateY(4px)}
.resonance-theater__trace{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px;color:#9fb6d0;font-size:9px;letter-spacing:.14em;text-transform:uppercase}
.resonance-theater__trace i{width:28px;height:1px;background:linear-gradient(90deg,transparent,rgba(126,232,255,.72),transparent);animation:traceGlow 1.9s ease-in-out infinite}
.resonance-theater__caption{margin:0;color:#9fb0c7;font-size:12px;line-height:1.5;max-width:620px}
@keyframes theaterIn{from{opacity:0;transform:scale(.985)}to{opacity:1;transform:none}}
@keyframes theaterOut{to{opacity:0;transform:scale(1.012)}}
@keyframes theaterAura{50%{opacity:.55;transform:scale(1.04)}}
@keyframes theaterOrbit{to{transform:rotateX(68deg) rotateZ(377deg)}}
@keyframes theaterPulse{0%{opacity:.65;transform:scale(.72)}85%,100%{opacity:0;transform:scale(1.62)}}
@keyframes theaterBreathe{50%{transform:scale(1.018);box-shadow:0 0 92px rgba(89,202,255,.23),inset 0 0 64px rgba(151,105,255,.17)}}
@keyframes traceGlow{50%{opacity:.28}}
@media(max-width:900px){.resonance-theater__hub{width:min(500px,88vw)}.resonance-theater__core{width:min(290px,58vw)}.resonance-theater__trace{max-width:90vw}.resonance-theater__caption{max-width:86vw}}

/* V4.7 · voz española seleccionable + segundo umbral teatral hacia Entidad */
.projection-audio-row__copy{display:flex;flex-direction:column;gap:8px;min-width:0}
.voice-picker-label{font-size:8px;letter-spacing:.14em;color:#93b6cf;text-transform:uppercase}
.voice-picker{appearance:none;-webkit-appearance:none;min-width:220px;max-width:320px;padding:9px 34px 9px 12px;border-radius:12px;border:1px solid rgba(149,210,255,.22);background:linear-gradient(135deg,rgba(9,28,62,.82),rgba(20,24,58,.82));color:#eef9ff;font:inherit;font-size:11px;outline:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.04);cursor:pointer}
.voice-picker:focus{border-color:rgba(117,226,255,.55);box-shadow:0 0 0 3px rgba(83,190,255,.08),inset 0 1px 0 rgba(255,255,255,.05)}
.voice-picker:disabled{opacity:.45;cursor:not-allowed}
.voice-picker option{background:#07152f;color:#eef9ff}

.entity-reveal-theater{min-height:calc(100vh - 118px)}
.entity-reveal-theater:before{inset:2% 4%;background:radial-gradient(circle at center,rgba(69,184,255,.14),rgba(131,70,220,.09) 37%,transparent 72%)}
.entity-reveal-theater__hub{width:min(620px,70vw)}
.entity-reveal-theater__core{width:min(350px,46vw);min-height:350px}
.entity-reveal-theater__name{display:block;margin-top:15px;font-style:normal;font-size:clamp(34px,5vw,72px);font-weight:300;letter-spacing:.18em;line-height:1;background:linear-gradient(90deg,#fff,#78ecff,#d4a7ff);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 0 32px rgba(93,211,255,.18);animation:entityRevealName 1.15s cubic-bezier(.2,.8,.2,1) both}
.entity-reveal-theater--named .resonance-theater__ring{border-color:rgba(151,231,255,.54);box-shadow:0 0 58px rgba(86,190,255,.17),inset 0 0 46px rgba(154,92,255,.12)}
.entity-reveal-theater--named .resonance-theater__pulse{animation-duration:1.45s}
.entity-reveal-theater--named .entity-reveal-theater__core{box-shadow:0 0 105px rgba(75,191,255,.23),0 0 170px rgba(161,87,255,.12),inset 0 0 72px rgba(127,94,255,.16)}
@keyframes entityRevealName{0%{opacity:0;transform:scale(.78);letter-spacing:.34em;filter:blur(8px)}55%{opacity:1;filter:blur(0)}100%{opacity:1;transform:scale(1);letter-spacing:.18em}}

@media(max-width:900px){
  .projection-audio-row{align-items:flex-start}
  .projection-audio-row__copy{width:100%}
  .voice-picker{width:100%;max-width:none}
  .entity-reveal-theater__hub{width:min(540px,90vw)}
  .entity-reveal-theater__core{width:min(310px,62vw);min-height:310px}
}

/* =========================================================
   V6.37 · PANTALLA 07 · PAISAJE ÚNICO Y SÍNTESIS ACTUAL
   El paisaje ocupa toda la escena; se retira la antigua
   triangulación MPI/EGRYS/Entidad y la tercera superficie.
   ========================================================= */
.screen--final-integration{
  overflow:visible;
  isolation:isolate;
}
.screen--final-integration .final-integration-backdrop{
  position:fixed;
  inset:0;
  z-index:-2;
  transform:none;
  filter:saturate(1.02);
}
.screen--final-integration .final-integration-backdrop::after{
  background:
    linear-gradient(90deg,rgba(2,8,26,.70),rgba(3,10,31,.40) 48%,rgba(3,9,27,.52)),
    linear-gradient(180deg,rgba(2,7,22,.28),rgba(2,8,25,.66));
}
.screen--final-integration .final-integration-layout{
  grid-template-columns:minmax(420px,.88fr) minmax(520px,1.12fr);
  gap:clamp(24px,3vw,48px);
}
.screen--final-integration .final-project-panel{
  background:linear-gradient(180deg,rgba(5,18,48,.82),rgba(3,13,38,.76));
  backdrop-filter:blur(18px) saturate(.88);
  -webkit-backdrop-filter:blur(18px) saturate(.88);
}
.screen--final-integration .final-integration-visual{
  display:flex;
  align-items:flex-end;
  min-height:760px;
  padding:clamp(28px,4vw,56px);
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
  overflow:visible;
}
.screen--final-integration .final-integration-visual::before,
.screen--final-integration .final-triad{display:none!important}
.screen--final-integration .final-project-identity{
  position:relative;
  left:auto;
  right:auto;
  bottom:auto;
  width:min(680px,100%);
  margin:0 0 clamp(16px,5vh,68px) auto;
  padding:clamp(26px,3vw,42px);
  border:1px solid rgba(151,220,255,.24);
  border-radius:30px;
  background:linear-gradient(135deg,rgba(5,20,51,.68),rgba(26,25,76,.58));
  backdrop-filter:blur(22px) saturate(.82);
  -webkit-backdrop-filter:blur(22px) saturate(.82);
  box-shadow:0 28px 90px rgba(0,0,0,.25),inset 0 0 70px rgba(97,159,255,.05);
}
.screen--final-integration .final-project-identity>span{
  color:#91eaff;
  letter-spacing:.22em;
}
.screen--final-integration .final-project-identity>strong{
  margin-top:12px;
  font-size:clamp(34px,4.2vw,68px);
  line-height:1.02;
  letter-spacing:-.025em;
}
.screen--final-integration .final-project-identity>small{
  margin-top:10px;
  font-size:clamp(14px,1.3vw,18px);
}
.screen--final-integration .final-project-identity>p{
  max-width:58ch;
  margin:22px 0 0;
  color:rgba(235,244,255,.82);
  font-size:clamp(15px,1.25vw,18px);
  line-height:1.6;
}
.final-project-identity__code{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:5px 18px;
  align-items:center;
  margin-top:28px;
  padding-top:20px;
  border-top:1px solid rgba(157,211,255,.18);
}
.final-project-identity__code span{
  grid-column:1/-1;
  color:rgba(190,224,255,.66);
  font-size:9px;
  letter-spacing:.18em;
}
.final-project-identity__code strong{
  color:#fff;
  font-size:clamp(20px,2vw,30px);
  font-weight:400;
  letter-spacing:.08em;
}
.final-project-identity__code small{
  color:rgba(226,239,255,.72);
  font-size:13px;
  line-height:1.45;
}
@media(max-width:1080px){
  .screen--final-integration .final-integration-layout{grid-template-columns:1fr}
  .screen--final-integration .final-integration-visual{min-height:420px;padding:0 0 24px}
  .screen--final-integration .final-project-identity{margin:0 auto}
}
@media(max-width:620px){
  .screen--final-integration .final-project-identity{padding:24px 20px;border-radius:24px}
  .final-project-identity__code{grid-template-columns:1fr}
}

/* ============================================================
   V4.8 · PROYECCIÓN → CAMPO DE RESONANCIA → PAISAJE DE CÓDIGO
   ============================================================ */
.projection-reading-card,.context-clarifications-card,.landscape-ai-state{
  margin:14px 0;padding:17px 18px;border-radius:18px;border:1px solid rgba(154,216,255,.16);
  background:linear-gradient(145deg,rgba(8,31,66,.68),rgba(7,20,48,.78));box-shadow:inset 0 1px 0 rgba(255,255,255,.035)
}
.projection-reading-card h2{margin:7px 0 8px;font-size:28px;font-weight:320;letter-spacing:.08em;background:linear-gradient(90deg,#fff,var(--cyan),var(--violet));-webkit-background-clip:text;background-clip:text;color:transparent}
.projection-reading-card p,.context-clarifications-card p,.landscape-ai-state p{margin:0;font-size:12px;line-height:1.68;color:#d9e6f6}
.context-clarifications-card__head{margin-bottom:12px}.actions--projection-build{margin-top:18px}
.code-landscape-stage--projection{min-height:660px}

.screen--landscape{position:relative;min-height:calc(100vh - 100px)}
.landscape-generation-theater{min-height:calc(100vh - 104px)}
.landscape-generation-theater:before{inset:0 2%;background:radial-gradient(circle at center,rgba(65,191,255,.14),rgba(119,65,212,.09) 36%,transparent 72%)}
.landscape-generation-theater__hub{width:min(660px,74vw)}
.landscape-generation-theater__core{width:min(360px,46vw);min-height:360px}

.landscape-result-layout{position:relative;min-height:calc(100vh - 108px);display:grid;grid-template-columns:minmax(0,1.48fr) minmax(390px,.72fr);gap:26px;align-items:stretch}
.landscape-result-layout[hidden]{display:none!important}
.landscape-visual{position:relative;min-height:760px;border-radius:30px;overflow:hidden;border:1px solid rgba(161,220,255,.18);background:url('assets/casa-codigo-bg.jpg') center/cover no-repeat;box-shadow:0 24px 80px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.05)}
.landscape-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;animation:landscapeImageIn 1.2s ease both}
@keyframes landscapeImageIn{from{opacity:0;transform:scale(1.025);filter:blur(9px)}to{opacity:1;transform:scale(1);filter:none}}
.landscape-visual__veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,10,30,.04),rgba(4,12,35,.08) 45%,rgba(4,12,35,.56));pointer-events:none}
.landscape-visual__label{position:absolute;left:34px;right:34px;bottom:30px;z-index:3;padding:18px 20px;border-radius:18px;border:1px solid rgba(191,228,255,.18);background:rgba(5,20,48,.42);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.landscape-visual__label span{display:block;font-size:9px;letter-spacing:.18em;color:#a7c7df;margin-bottom:7px}.landscape-visual__label strong{font-size:clamp(30px,3vw,52px);font-weight:300;letter-spacing:.13em;color:#f4fbff}
.landscape-result-panel{align-self:start;position:sticky;top:86px;max-height:calc(100vh - 112px);overflow:auto}
.landscape-result-panel h1{font-size:clamp(38px,4vw,66px);line-height:1.02}
.landscape-ai-state{border-color:rgba(192,154,255,.24);background:linear-gradient(145deg,rgba(44,30,88,.40),rgba(7,25,55,.74))}
.projection-audio-row--landscape{margin:12px 0}.projection-landscape-card--result{max-height:280px;overflow:auto}
.landscape-image-fallback{position:absolute;inset:0;display:grid;place-items:center;background:radial-gradient(circle at 52% 45%,rgba(91,92,200,.18),transparent 32%),linear-gradient(180deg,rgba(3,10,30,.06),rgba(3,10,30,.30)),url('assets/casa-codigo-bg.jpg') center/cover no-repeat}
.landscape-image-fallback[hidden]{display:none!important}.landscape-image-fallback__orbit{position:absolute;width:420px;height:420px;border-radius:50%;border:1px solid rgba(129,225,255,.32);box-shadow:0 0 70px rgba(83,186,255,.12),inset 0 0 65px rgba(151,97,255,.10);animation:fallbackOrbit 9s linear infinite}.landscape-image-fallback__orbit:before,.landscape-image-fallback__orbit:after{content:'';position:absolute;inset:12%;border-radius:50%;border:1px solid rgba(206,160,255,.23);transform:rotateX(68deg)}.landscape-image-fallback__orbit:after{inset:26%;transform:rotateX(73deg) rotateZ(62deg);border-color:rgba(115,230,255,.28)}
@keyframes fallbackOrbit{to{transform:rotate(360deg)}}
.landscape-image-fallback__copy{position:relative;z-index:2;text-align:center;padding:24px 32px;border-radius:24px;background:rgba(6,20,49,.46);border:1px solid rgba(178,225,255,.20);backdrop-filter:blur(15px)}
.landscape-image-fallback__copy span,.landscape-image-fallback__copy small{display:block;color:#9fb8d5;letter-spacing:.16em;font-size:9px}.landscape-image-fallback__copy strong{display:block;margin:10px 0;font-size:48px;font-weight:300;letter-spacing:.17em;background:linear-gradient(90deg,#fff,var(--cyan),var(--violet));-webkit-background-clip:text;background-clip:text;color:transparent}

.screen--entity-landscape{position:relative;isolation:isolate}.entity-landscape-backdrop{position:absolute;inset:-40px -4vw;z-index:-2;background-position:center;background-size:cover;opacity:.30;filter:saturate(.94) contrast(1.05)}.screen--entity-landscape:after{content:'';position:absolute;inset:-40px -4vw;z-index:-1;background:linear-gradient(180deg,rgba(2,11,30,.38),rgba(3,12,32,.68));pointer-events:none}

@media(max-width:1080px){.landscape-result-layout{grid-template-columns:1fr}.landscape-result-panel{position:relative;top:auto;max-height:none}.landscape-visual{min-height:620px}.landscape-generation-theater__hub{width:min(600px,88vw)}}
@media(max-width:700px){.landscape-visual{min-height:520px;border-radius:22px}.landscape-visual__label{left:18px;right:18px;bottom:18px}.landscape-image-fallback__orbit{width:310px;height:310px}.landscape-image-fallback__copy strong{font-size:36px}}


/* V5.0 · Campo de Resonancia + diagnóstico de IA */
.landscape-generation-theater__core{
  width:min(410px,52vw);
  min-height:410px;
  padding:52px 48px 60px;
}
.landscape-generation-theater__core strong{
  font-size:clamp(23px,2.45vw,36px);
  line-height:1.18;
  padding-bottom:.14em;
  overflow:visible;
}
.landscape-generation-theater__core p{margin-top:18px;min-height:48px;}
.resonance-theater__caption{max-width:620px;line-height:1.55;}
.landscape-result-panel h1{font-size:clamp(34px,3.25vw,54px);line-height:1.04;}
.projection-work-panel--minimal{max-width:820px;margin-inline:auto;}
.landscape-error-panel{
  width:min(760px,calc(100vw - 48px));
  margin:7vh auto 0;
  padding:clamp(30px,4vw,56px);
  position:relative;
  z-index:5;
}
.landscape-error-panel h2{font-size:clamp(34px,4vw,58px);font-weight:300;line-height:1.04;margin:18px 0 16px;}
.ai-diagnostic-card{margin:28px 0;padding:22px 24px;border:1px solid rgba(119,216,255,.24);border-radius:20px;background:rgba(4,18,45,.55);}
.ai-diagnostic-card strong{display:block;font-size:18px;margin:8px 0;color:#e7f7ff;}
.ai-diagnostic-card p{font-size:14px;line-height:1.55;color:#aebfd2;word-break:break-word;}
.actions--wrap{flex-wrap:wrap;}
@media(max-width:760px){
 .landscape-generation-theater__core{width:min(340px,78vw);min-height:340px;padding:42px 34px 48px;}
 .landscape-error-panel{width:calc(100vw - 26px);margin-top:3vh;}
}

/* ─────────────────────────────────────────────────────────
   V5.3 · refinamiento visual + legibilidad + entidad trina
   ───────────────────────────────────────────────────────── */
.scene-copy__kicker{
  right:42px;
  bottom:78px;
  max-width:330px;
  padding:18px 20px;
  border-radius:20px;
  border:1px solid rgba(146,220,255,.24);
  background:linear-gradient(145deg,rgba(4,17,43,.72),rgba(13,31,67,.58));
  box-shadow:0 18px 44px rgba(0,9,28,.22),inset 0 1px 0 rgba(255,255,255,.05);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  font-size:13px;
  line-height:1.55;
  letter-spacing:.12em;
  text-align:left;
  text-shadow:0 0 18px rgba(88,180,255,.28);
}

.triad-stage--egrys .triad-stage__center{
  width:220px;height:220px;
  box-shadow:0 0 72px rgba(109,125,255,.24),0 0 120px rgba(97,192,255,.08),inset 0 0 44px rgba(118,189,255,.12);
}
.triad-stage--egrys .triad-stage__center span{font-size:20px}
.triad-stage--egrys .triad-stage__center small{font-size:9px}
.triad-stage--egrys .triad-stage__node{width:168px;min-height:108px}
.triad-stage--egrys .triad-stage__node span{font-size:16px}
.triad-stage--egrys .triad-stage__node small{font-size:8px}
.triad-stage .orbital-stage__phrase{
  width:auto;
  min-width:280px;
  max-width:370px;
  left:50%;
  transform:translateX(-50%);
  bottom:4.5%;
  padding:15px 20px;
  border-radius:18px;
  border:1px solid rgba(148,219,255,.22);
  background:linear-gradient(145deg,rgba(4,17,43,.72),rgba(13,31,67,.56));
  box-shadow:0 15px 38px rgba(0,8,28,.22),inset 0 1px 0 rgba(255,255,255,.04);
  backdrop-filter:blur(15px);
  -webkit-backdrop-filter:blur(15px);
  font-size:13px;
  line-height:1.55;
  letter-spacing:.035em;
  color:#f2f7ff;
}

.resonance-theater__caption{
  max-width:760px;
  padding:15px 22px;
  border-radius:18px;
  border:1px solid rgba(146,220,255,.20);
  background:linear-gradient(145deg,rgba(4,17,43,.66),rgba(13,31,67,.54));
  box-shadow:0 15px 40px rgba(0,8,28,.20),inset 0 1px 0 rgba(255,255,255,.04);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  color:#ecf4ff;
  font-size:13px;
  line-height:1.55;
  text-align:center;
}
.landscape-generation-theater__hub{width:min(730px,78vw)}
.landscape-generation-theater__core{width:min(430px,49vw);min-height:430px}
.landscape-generation-theater__core strong{font-size:clamp(25px,2.7vw,40px)}

.landscape-result-panel h1{
  font-size:clamp(29px,2.5vw,43px);
  line-height:1.07;
  max-width:520px;
}
.landscape-visual__label span,
.landscape-image-fallback__copy span{font-size:10px;letter-spacing:.13em;color:#b8dbf2}
.landscape-visual__label strong{font-size:clamp(34px,4vw,58px);font-weight:300}
.projection-landscape-card--result .field-label{color:#b5dfff}

.entity-hero-title{margin-bottom:18px!important}
.entity-hero-title>span{display:block;font-size:clamp(42px,5.4vw,76px);letter-spacing:.11em;font-weight:300;color:#f5f8ff}
.entity-hero-title>small{display:block;margin-top:4px;font-size:clamp(26px,3vw,46px);font-weight:300;letter-spacing:-.02em;color:#f5f8ff}

.entity-orbit-stage{--entity-size:360px;margin-top:34px;margin-bottom:54px}
.entity-orbit-satellite{
  position:absolute;
  z-index:8;
  width:116px;
  aspect-ratio:1;
  border-radius:50%;
  display:grid;
  place-content:center;
  text-align:center;
  padding:12px;
  border:1px solid rgba(151,226,255,.48);
  background:radial-gradient(circle at 44% 36%,rgba(132,215,255,.22),rgba(77,63,166,.30) 42%,rgba(7,18,47,.82) 74%);
  box-shadow:0 0 30px rgba(90,190,255,.20),0 0 56px rgba(168,95,255,.10),inset 0 0 24px rgba(129,193,255,.09);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  animation:satelliteFloat 5.8s ease-in-out infinite;
}
.entity-orbit-satellite strong{font-size:19px;letter-spacing:.12em;font-weight:400;color:#f5f8ff}
.entity-orbit-satellite small{font-size:7px;line-height:1.25;letter-spacing:.11em;color:#a9c2df;margin-top:6px}
.entity-orbit-satellite--mpi{left:-22px;top:8%;animation-delay:-1.1s}
.entity-orbit-satellite--egrys{right:-26px;bottom:8%;animation-delay:-3.2s}
@keyframes satelliteFloat{0%,100%{transform:translateY(0) scale(.98)}50%{transform:translateY(-8px) scale(1.02)}}

@media(max-width:980px){
  .scene-copy__kicker{right:24px;bottom:36px;max-width:290px;font-size:12px}
  .triad-stage--egrys .triad-stage__center{width:185px;height:185px}
  .triad-stage--egrys .triad-stage__node{width:140px;min-height:92px}
  .entity-orbit-stage{--entity-size:300px}
  .entity-orbit-satellite{width:96px}
  .entity-orbit-satellite--mpi{left:-4px}.entity-orbit-satellite--egrys{right:-4px}
}
@media(max-width:700px){
  .scene-copy__kicker{position:relative;right:auto;bottom:auto;max-width:none;margin-top:auto}
  .triad-stage .orbital-stage__phrase{min-width:0;width:86%;font-size:12px}
  .resonance-theater__caption{width:88%;font-size:12px}
  .entity-orbit-stage{--entity-size:255px}
  .entity-orbit-satellite{width:82px}
  .entity-orbit-satellite strong{font-size:14px}
}

/* ──────────────────────────────────────────────────────────
   V5.4 · INTEGRACIÓN FINAL · Nombre → Forma → Paisaje
   Reemplaza la antigua pantalla interrogativa de Entidad.
   ────────────────────────────────────────────────────────── */
.screen--final-integration{position:relative;min-height:100vh;overflow:hidden;padding:92px 4.5vw 56px}
.final-integration-backdrop{position:absolute;inset:0;background-image:linear-gradient(180deg,rgba(3,9,28,.34),rgba(3,9,28,.72)),var(--cc-bg);background-size:cover;background-position:center;filter:saturate(1.05);transform:scale(1.02);z-index:0}
.final-integration-backdrop::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 65% 42%,rgba(100,220,255,.08),transparent 34%),linear-gradient(90deg,rgba(2,8,26,.18),rgba(2,8,26,.04) 50%,rgba(2,8,26,.18))}
.final-integration-layout{position:relative;z-index:2;display:grid;grid-template-columns:minmax(380px,.82fr) minmax(520px,1.18fr);gap:30px;align-items:stretch;max-width:1580px;margin:0 auto}
.final-project-panel{padding:34px 34px 30px;background:linear-gradient(180deg,rgba(7,21,54,.90),rgba(4,14,40,.84));border-color:rgba(121,223,255,.30);box-shadow:0 24px 90px rgba(0,0,0,.34)}
.final-project-panel h1{font-size:clamp(36px,4.2vw,64px);line-height:.98;margin:16px 0 20px;font-weight:300;letter-spacing:-.04em}
.final-project-panel .lead{font-size:17px;line-height:1.55;color:rgba(240,248,255,.86)}
.final-synthesis-block{margin-top:24px;padding:20px 20px 18px;border:1px solid rgba(118,221,255,.18);border-radius:24px;background:rgba(3,15,43,.44)}
.input-line--final-title{font-size:24px;letter-spacing:.01em}
.final-synthesis-hint{margin:8px 0 13px;color:rgba(235,245,255,.66);font-size:14px;line-height:1.45}
.final-form-options{display:flex;flex-wrap:wrap;gap:10px}
.final-form-chip{font-size:14px}
.final-form-custom{margin-top:12px}
.final-essence-card{margin-top:18px;padding:18px 20px;border-radius:22px;background:linear-gradient(135deg,rgba(28,56,100,.44),rgba(59,31,95,.34));border:1px solid rgba(192,154,255,.26)}
.final-essence-card p{margin:7px 0 0;font-size:17px;line-height:1.55;color:#f1f7ff}
.final-code-summary{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;margin-top:18px}
.final-code-summary>div{padding:15px 14px;border:1px solid rgba(117,219,255,.16);border-radius:18px;background:rgba(4,14,40,.44)}
.final-code-summary span{display:block;font-size:10px;letter-spacing:.14em;color:rgba(214,236,255,.62)}
.final-code-summary strong{display:block;margin-top:7px;font-size:16px;color:#fff}
.final-completion{margin-top:20px;padding:18px 20px;border-radius:22px;border:1px solid rgba(110,237,255,.34);background:linear-gradient(135deg,rgba(19,86,119,.28),rgba(66,40,120,.32));box-shadow:0 0 40px rgba(82,207,255,.08)}
.final-completion span{display:block;font-size:10px;letter-spacing:.18em;color:#7ee8ff}
.final-completion strong{display:block;margin-top:7px;font-size:21px;font-weight:500;color:#fff}
.final-completion p{margin:6px 0 0;color:rgba(237,247,255,.76)}

.final-integration-visual{position:relative;min-height:760px;border-radius:34px;border:1px solid rgba(118,222,255,.24);background:linear-gradient(180deg,rgba(4,14,39,.16),rgba(4,12,34,.52));backdrop-filter:blur(8px);overflow:hidden;box-shadow:inset 0 0 100px rgba(52,125,255,.04),0 28px 90px rgba(0,0,0,.25)}
.final-integration-visual::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 49% 42%,rgba(75,178,255,.13),transparent 30%),radial-gradient(circle at 78% 58%,rgba(200,99,255,.09),transparent 24%);pointer-events:none}
.final-triad{position:absolute;left:10%;top:10%;width:61%;aspect-ratio:1/1;display:grid;place-items:center}
.final-triad__orbit{position:absolute;border:1px solid rgba(139,215,255,.40);border-radius:50%;box-shadow:0 0 24px rgba(103,194,255,.10)}
.final-triad__orbit--a{width:82%;height:50%;transform:rotate(-12deg);animation:finalOrbitA 18s linear infinite}
.final-triad__orbit--b{width:58%;height:86%;transform:rotate(18deg);border-color:rgba(202,145,255,.28);animation:finalOrbitB 24s linear infinite}
.final-triad__core{position:relative;width:48%;aspect-ratio:1;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at 45% 35%,rgba(71,138,248,.38),rgba(21,36,86,.84) 58%,rgba(11,18,52,.96));border:1px solid rgba(142,222,255,.58);box-shadow:0 0 48px rgba(80,191,255,.24),inset 0 0 52px rgba(107,92,255,.18);z-index:2}
.final-triad__core::after{content:"";position:absolute;inset:-10%;border-radius:50%;border:1px solid rgba(173,125,255,.25);animation:finalPulse 4.8s ease-in-out infinite}
.final-triad__core strong{font-size:clamp(30px,4.2vw,64px);font-weight:300;letter-spacing:.12em;color:#fff;text-shadow:0 0 18px rgba(124,220,255,.28)}
.final-triad__core small{margin-top:9px;font-size:10px;letter-spacing:.22em;color:rgba(220,240,255,.68)}
.final-triad__core p{max-width:78%;margin:12px 0 0;font-size:clamp(10px,1vw,14px);line-height:1.35;color:rgba(240,248,255,.86);text-align:center;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.final-triad__satellite{position:absolute;width:22%;aspect-ratio:1;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgba(15,28,71,.77);border:1px solid rgba(129,220,255,.46);box-shadow:0 0 28px rgba(82,191,255,.14);z-index:3;text-align:center}
.final-triad__satellite strong{font-size:18px;letter-spacing:.08em;color:#fff}
.final-triad__satellite small{margin-top:5px;font-size:8px;letter-spacing:.14em;color:rgba(224,241,255,.58)}
.final-triad__satellite--mpi{left:39%;top:-3%}
.final-triad__satellite--egrys{left:-1%;bottom:14%}

.final-egrys-card{position:absolute;right:5%;top:15%;width:29%;min-height:400px;padding:24px 18px;border-radius:30px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:linear-gradient(160deg,rgba(24,35,88,.90),rgba(10,19,53,.94));border:1px solid rgba(173,152,255,.42);box-shadow:0 0 48px rgba(134,84,255,.18),inset 0 0 36px rgba(115,87,255,.10);overflow:hidden}
.final-egrys-card__halo{position:absolute;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(154,120,255,.24),transparent 65%);filter:blur(4px)}
.final-egrys-card__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.74}
.final-egrys-card--with-image::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,8,28,.22),rgba(4,9,31,.78))}
.final-egrys-card>*{position:relative;z-index:2}
.final-egrys-card__sigil{margin:30px 0 26px;width:114px;height:114px;border-radius:50%;display:grid;place-items:center;font-size:50px;color:#fff;border:1px solid rgba(150,220,255,.45);box-shadow:0 0 42px rgba(112,204,255,.16),inset 0 0 34px rgba(188,121,255,.14)}
.final-egrys-card strong{font-size:29px;font-weight:400;letter-spacing:.08em;color:#fff}
.final-egrys-card small{margin-top:5px;color:rgba(233,243,255,.70)}
.final-egrys-card p{margin-top:auto;max-width:92%;font-size:11px;line-height:1.45;letter-spacing:.08em;color:rgba(214,232,255,.76);display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
.final-project-identity{position:absolute;left:7%;right:7%;bottom:5%;padding:18px 24px;border-radius:24px;background:rgba(3,13,38,.76);border:1px solid rgba(124,220,255,.28);backdrop-filter:blur(12px)}
.final-project-identity span{font-size:10px;letter-spacing:.18em;color:#7fe9ff}
.final-project-identity strong{display:block;margin-top:7px;font-size:clamp(24px,3vw,42px);font-weight:300;color:#fff;letter-spacing:.01em}
.final-project-identity small{display:block;margin-top:4px;font-size:14px;color:rgba(231,243,255,.70)}

@keyframes finalPulse{0%,100%{transform:scale(.98);opacity:.55}50%{transform:scale(1.05);opacity:1}}
@keyframes finalOrbitA{to{transform:rotate(348deg)}}
@keyframes finalOrbitB{to{transform:rotate(378deg)}}

@media(max-width:1080px){
  .final-integration-layout{grid-template-columns:1fr}
  .final-integration-visual{min-height:690px}
  .final-triad{left:4%;top:6%;width:66%}
  .final-egrys-card{right:4%;top:12%;width:30%;min-height:360px}
}
@media(max-width:720px){
  .screen--final-integration{padding:78px 16px 34px}
  .final-project-panel{padding:24px 18px}
  .final-code-summary{grid-template-columns:1fr}
  .final-integration-visual{min-height:830px}
  .final-triad{left:4%;top:4%;width:92%}
  .final-egrys-card{left:12%;right:12%;top:auto;bottom:18%;width:auto;min-height:260px}
  .final-project-identity{bottom:3%}
}

/* V5.6 · flechas internas siempre por encima de overlays visuales */
.actions{position:relative;z-index:30}
.actions .btn,[data-back-to]{position:relative;z-index:31;pointer-events:auto!important}


/* V5.7 · Música cinematográfica de apertura */
#intro .sound-btn{position:absolute;z-index:61;top:18px;right:176px;border:1px solid rgba(197,228,255,.26);background:rgba(4,16,39,.34);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:999px;padding:10px 14px;color:#eef7ff;font-size:10px;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;transition:.25s ease;pointer-events:auto}
#intro .sound-btn:hover{border-color:rgba(126,232,255,.72);box-shadow:0 0 22px rgba(95,204,255,.18);background:rgba(9,29,62,.56)}
#intro .sound-btn[hidden]{display:none!important}
@media (max-width:720px){#intro .sound-btn{top:58px;right:14px}}

/* ──────────────────────────────────────────────────────────
   V6.0 · PANTALLA 02 · TRAYECTORIA HÍBRIDA
   Asset orbital transparente + HTML vivo por encima.
   La trayectoria deja de parecer una barra de progreso y pasa
   a leerse como campo relacional activo.
   ────────────────────────────────────────────────────────── */
.hybrid-trajectory{
  position:sticky;
  top:82px;
  min-height:720px;
  width:100%;
  max-width:760px;
  margin:0 auto;
  isolation:isolate;
  overflow:visible;
  display:block;
}
.hybrid-trajectory::before{
  content:"";
  position:absolute;
  inset:7% 2% 3%;
  border-radius:50%;
  background:radial-gradient(circle at 52% 46%,rgba(93,174,255,.18),rgba(111,76,255,.09) 42%,transparent 72%);
  filter:blur(20px);
  z-index:0;
  pointer-events:none;
}
.hybrid-trajectory__asset{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:contain;
  z-index:1;
  pointer-events:none;
  filter:drop-shadow(0 0 28px rgba(71,190,255,.14)) drop-shadow(0 0 56px rgba(126,89,255,.09));
}
.hybrid-trajectory__label{
  position:absolute;
  z-index:3;
  transform:translate(-50%,-50%);
  text-align:center;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:6px;
  pointer-events:none;
  text-shadow:0 2px 18px rgba(0,0,0,.72);
}
.hybrid-trajectory__label strong{font-size:18px;letter-spacing:.10em;font-weight:500;color:#f7fbff;text-transform:uppercase}
.hybrid-trajectory__label span{font-size:9px;letter-spacing:.15em;color:#b8cce5;text-transform:uppercase}
.hybrid-trajectory__label--mpi{left:50%;top:20.5%}
.hybrid-trajectory__label--egrys{left:27.5%;top:73%}
.hybrid-trajectory__label--code{left:72.5%;top:73%}
.hybrid-trajectory__label--core{left:50%;top:50.3%}
.hybrid-trajectory__label--core strong{font-size:26px;letter-spacing:.17em}
.hybrid-trajectory__label--core span{font-size:10px;letter-spacing:.22em;color:#c7d8f0}
.hybrid-trajectory__function{
  position:absolute;
  z-index:4;
  width:68px;
  height:68px;
  border-radius:50%;
  transform:translate(-50%,-50%);
  display:grid;
  place-content:center;
  text-align:center;
  border:1px solid rgba(182,236,255,.52);
  background:linear-gradient(145deg,rgba(12,30,66,.88),rgba(29,31,88,.72));
  box-shadow:0 0 24px rgba(78,202,255,.18),inset 0 0 22px rgba(160,207,255,.08);
  backdrop-filter:blur(10px);
  pointer-events:none;
}
.hybrid-trajectory__function b{font-size:13px;font-weight:600;color:#f4fbff;line-height:1}
.hybrid-trajectory__function span{font-size:7px;letter-spacing:.11em;color:#9eddf4;margin-top:5px}
.hybrid-trajectory__function--mpi{left:16%;top:40%}
.hybrid-trajectory__function--egrys{left:50%;top:89%}
.hybrid-trajectory__function--code{left:84%;top:40%}
.hybrid-trajectory__phrase{
  position:absolute;
  z-index:5;
  left:50%;
  bottom:0;
  transform:translateX(-50%);
  margin:0;
  width:min(92%,650px);
  padding:16px 24px;
  border-radius:22px;
  border:1px solid rgba(145,218,255,.26);
  background:linear-gradient(135deg,rgba(9,28,61,.82),rgba(14,22,58,.72));
  backdrop-filter:blur(16px);
  box-shadow:0 18px 52px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.05);
  color:#eef8ff;
  font-size:14px;
  line-height:1.45;
  text-align:center;
}
@media(max-width:1200px){
  .hybrid-trajectory{min-height:650px;max-width:680px}
  .hybrid-trajectory__function{width:60px;height:60px}
  .hybrid-trajectory__label--core strong{font-size:22px}
}
@media(max-width:980px){
  .hybrid-trajectory{position:relative;top:auto;min-height:650px;max-width:700px;margin-top:4px}
}
@media(max-width:620px){
  .hybrid-trajectory{min-height:520px;width:112%;margin-left:-6%}
  .hybrid-trajectory__label strong{font-size:13px}.hybrid-trajectory__label span{font-size:7px}
  .hybrid-trajectory__label--core strong{font-size:18px}.hybrid-trajectory__label--core span{font-size:7px}
  .hybrid-trajectory__function{width:48px;height:48px}.hybrid-trajectory__function b{font-size:10px}.hybrid-trajectory__function span{font-size:5.5px}
  .hybrid-trajectory__phrase{font-size:11px;padding:12px 14px;bottom:2px}
}


/* ──────────────────────────────────────────────────────────
   V6.3 · CONSOLIDACIÓN VISUAL DINÁMICA
   Ajustes acumulados de MPI, EGRYS, Proyecto Expandido e Integración Final.
   Sin datos personales horneados en assets.
   ────────────────────────────────────────────────────────── */

/* 01 · MPI · trayectoria lateral con recorrido completo y sin cola ambigua */
.trajectory-panel--expanded{
  width:min(420px,100%);
  max-width:420px;
  padding:28px 30px 26px;
  border-radius:30px;
  background:linear-gradient(145deg,rgba(8,26,61,.80),rgba(14,27,67,.72));
  border-color:rgba(115,226,255,.34);
  box-shadow:0 22px 64px rgba(0,7,25,.24),0 0 42px rgba(73,195,255,.08),inset 0 1px 0 rgba(255,255,255,.06);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}
.trajectory-panel--expanded .trajectory-panel__label{
  font-size:13px;
  letter-spacing:.18em;
  color:#eef8ff;
}
.trajectory-steps{
  display:grid;
  grid-template-columns:auto 1fr auto 1fr auto;
  align-items:start;
  gap:8px;
  margin:24px 0 26px;
}
.trajectory-step{
  min-width:66px;
  display:grid;
  justify-items:center;
  gap:6px;
  text-align:center;
}
.trajectory-step i{
  width:22px;height:22px;border-radius:50%;
  border:1px solid rgba(127,219,255,.58);
  background:rgba(10,30,70,.84);
  box-shadow:inset 0 0 14px rgba(105,203,255,.08);
}
.trajectory-step--active i{
  width:26px;height:26px;
  background:#72e9ff;
  border-color:#c4f8ff;
  box-shadow:0 0 22px rgba(92,225,255,.72),0 0 44px rgba(81,160,255,.24);
}
.trajectory-step b{font-size:12px;line-height:1;color:#f6fbff;font-weight:600;letter-spacing:.07em}
.trajectory-step small{font-size:7px;letter-spacing:.12em;color:#8fb6d6}
.trajectory-step--active small{color:#84eaff}
.trajectory-connector{
  height:1px;
  margin-top:11px;
  background:linear-gradient(90deg,rgba(112,230,255,.68),rgba(128,170,255,.40));
  box-shadow:0 0 10px rgba(92,210,255,.16);
}
.trajectory-copy--expanded{
  padding-top:18px;
  border-top:1px solid rgba(145,218,255,.20);
  gap:5px;
}
.trajectory-copy--expanded strong{font-size:24px;letter-spacing:.03em}
.trajectory-copy--expanded span{font-size:15px;line-height:1.4;color:#d5e4f6}
.trajectory-copy--expanded em{
  margin-top:9px;
  font-size:9px;
  font-style:normal;
  letter-spacing:.16em;
  color:#75e7ff;
}

/* 02 · EGRYS · órbitas más grandes, copy dentro de cada orbe */
.hybrid-trajectory{min-height:760px;max-width:790px}
.hybrid-trajectory__label{max-width:190px;gap:7px}
.hybrid-trajectory__label strong{
  max-width:100%;
  font-size:clamp(15px,1.55vw,20px);
  line-height:1.08;
  letter-spacing:.09em;
  overflow-wrap:anywhere;
}
.hybrid-trajectory__label span{font-size:9px;line-height:1.3;letter-spacing:.13em}
.hybrid-trajectory__label--mpi{left:50%;top:19.5%;max-width:180px}
.hybrid-trajectory__label--egrys{left:27.4%;top:73%;max-width:190px}
.hybrid-trajectory__label--code{left:72.6%;top:73%;max-width:190px}
.hybrid-trajectory__label--core{left:50%;top:50%;max-width:360px;width:70%}
.hybrid-trajectory__label--core strong{
  font-size:clamp(20px,2.25vw,31px);
  letter-spacing:.11em;
  line-height:1;
  white-space:nowrap;
}
.hybrid-trajectory__label--core span{font-size:10px;letter-spacing:.20em}
.hybrid-trajectory__function{width:74px;height:74px}
.hybrid-trajectory__function--mpi{left:13.5%;top:39.5%}
.hybrid-trajectory__function--egrys{left:50%;top:88%}
.hybrid-trajectory__function--code{left:86.5%;top:39.5%}
.hybrid-trajectory__phrase{bottom:-4px;width:min(88%,620px)}

/* 04 · Proyecto Expandido · tipografía coherente y composición orbital premium */
.project-triad-line{padding:17px 18px;gap:18px}
.project-triad-line>span{font-size:9px;padding-top:4px}
.project-triad-line strong,
.project-triad-line small{
  font-size:14px;
  line-height:1.48;
  letter-spacing:.01em;
}
.project-triad-line small{margin-top:6px;color:#a9bed6;text-transform:none}
#projectEgrysRole,#projectCodeMeta{font-size:14px;line-height:1.48;color:#c3d2e4}

.triad-stage--project{
  min-height:700px;
  overflow:visible;
}
.triad-stage--project::before{
  inset:12% 9% 15%;
  background:radial-gradient(circle at 50% 45%,rgba(103,197,255,.16),rgba(130,87,255,.11) 42%,transparent 72%);
  filter:blur(14px);
}
.triad-stage--project::after{
  content:"";
  position:absolute;
  left:50%;top:45%;
  width:78%;height:54%;
  transform:translate(-50%,-50%) rotate(-5deg);
  border:1px solid rgba(120,221,255,.25);
  border-radius:50%;
  box-shadow:0 0 28px rgba(78,190,255,.07),inset 0 0 34px rgba(161,108,255,.04);
  pointer-events:none;
}
.triad-stage--project .triad-stage__center{
  width:228px;height:228px;
  border-color:rgba(189,213,255,.46);
  background:radial-gradient(circle at 46% 34%,rgba(199,230,255,.18),rgba(105,77,201,.28) 38%,rgba(8,22,54,.88) 76%);
  box-shadow:0 0 68px rgba(106,141,255,.24),0 0 105px rgba(155,92,255,.10),inset 0 0 44px rgba(118,189,255,.12);
}
.triad-stage--project .triad-stage__center span{font-size:18px;letter-spacing:.14em}
.triad-stage--project .triad-stage__center small{font-size:9px}
.triad-stage--project .triad-stage__node{
  width:156px;
  min-height:156px;
  aspect-ratio:1;
  padding:18px;
  border-color:rgba(135,226,255,.40);
  background:radial-gradient(circle at 46% 34%,rgba(127,211,255,.18),rgba(73,64,162,.28) 44%,rgba(7,19,49,.82) 76%);
  box-shadow:0 0 42px rgba(72,194,255,.15),0 0 70px rgba(148,89,255,.07),inset 0 0 30px rgba(123,191,255,.08);
}
.triad-stage--project .triad-stage__node span{font-size:16px;letter-spacing:.10em}
.triad-stage--project .triad-stage__node small{font-size:8px;line-height:1.35}
.triad-stage--project .triad-stage__node--top{top:7%}
.triad-stage--project .triad-stage__node--left{left:6%;bottom:23%}
.triad-stage--project .triad-stage__node--right{right:6%;bottom:23%}
.triad-stage--project .triad-stage__line{top:40%;opacity:.85}
.triad-stage--project .orbital-stage__phrase{
  bottom:0;
  min-width:340px;
  max-width:430px;
  padding:18px 24px;
  font-size:14px;
  line-height:1.5;
  border-radius:22px;
  box-shadow:0 18px 48px rgba(0,8,28,.24),0 0 36px rgba(89,182,255,.06),inset 0 1px 0 rgba(255,255,255,.05);
}

/* 07 · Integración Final · núcleo dinámico apto para nombres variables */
.final-triad{left:6%;top:7%;width:66%;}
.final-triad__core{
  width:58%;
  min-width:260px;
  max-width:390px;
}
.final-triad__core strong{
  display:block;
  width:86%;
  max-width:86%;
  margin:0 auto;
  text-align:center;
  font-size:clamp(34px,3.7vw,58px);
  line-height:.98;
  letter-spacing:.095em;
  overflow-wrap:anywhere;
  word-break:normal;
}
.final-triad__core strong.entity-name--medium{font-size:clamp(30px,3.15vw,50px);letter-spacing:.075em}
.final-triad__core strong.entity-name--long{font-size:clamp(26px,2.65vw,42px);letter-spacing:.045em;line-height:1.02}
.final-triad__core strong.entity-name--xlong{font-size:clamp(22px,2.15vw,34px);letter-spacing:.025em;line-height:1.04}
.final-triad__core small{max-width:80%;text-align:center;line-height:1.35}
.final-triad__satellite{width:23%;min-width:118px}
.final-triad__satellite--mpi{left:38.5%;top:-2%}
.final-triad__satellite--egrys{left:-1%;bottom:12%}
.final-egrys-card{
  right:4%;top:12%;width:31%;min-height:440px;
  border-color:rgba(176,160,255,.46);
  box-shadow:0 0 58px rgba(134,84,255,.16),0 0 90px rgba(74,190,255,.06),inset 0 0 42px rgba(115,87,255,.10);
}
.final-egrys-card__sigil{width:128px;height:128px;font-size:54px}
.final-project-identity{max-width:62%;}

@media(max-width:1200px){
  .trajectory-panel--expanded{max-width:390px}
  .hybrid-trajectory{min-height:690px;max-width:720px}
  .hybrid-trajectory__label--core strong{font-size:24px}
  .triad-stage--project{min-height:650px}
  .triad-stage--project .triad-stage__node{width:140px;min-height:140px}
  .triad-stage--project .triad-stage__center{width:205px;height:205px}
  .final-triad{left:3%;width:68%}
  .final-triad__core{min-width:235px}
}
@media(max-width:980px){
  .trajectory-panel--expanded{margin:22px auto 0;max-width:520px}
  .hybrid-trajectory{min-height:660px;max-width:720px}
  .triad-stage--project{min-height:620px}
  .triad-stage--project .orbital-stage__phrase{min-width:0;width:78%}
  .final-triad{left:4%;top:4%;width:92%}
  .final-triad__core{min-width:220px}
  .final-egrys-card{left:12%;right:12%;top:auto;bottom:18%;width:auto;min-height:260px}
}
@media(max-width:620px){
  .trajectory-panel--expanded{padding:22px 20px}
  .trajectory-step{min-width:52px}.trajectory-step small{font-size:6px}
  .hybrid-trajectory{min-height:540px}
  .hybrid-trajectory__label--core strong{font-size:18px;letter-spacing:.08em}
  .hybrid-trajectory__label{max-width:135px}
  .triad-stage--project .triad-stage__node{width:112px;min-height:112px;padding:12px}
  .triad-stage--project .triad-stage__center{width:172px;height:172px}
  .triad-stage--project .orbital-stage__phrase{width:88%;font-size:12px}
  .final-triad__core strong{font-size:30px}
  .final-triad__core strong.entity-name--medium{font-size:27px}
  .final-triad__core strong.entity-name--long{font-size:23px}
  .final-triad__core strong.entity-name--xlong{font-size:20px}
}


/* V6.4 · trayectoria genérica transparente + error de IA silencioso */
.hybrid-trajectory--generic-image{
  min-height:760px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0;
}
.hybrid-trajectory__generic-image{
  display:block;
  width:min(100%,780px);
  height:auto;
  object-fit:contain;
  filter:drop-shadow(0 0 30px rgba(84,202,255,.18)) drop-shadow(0 0 70px rgba(115,89,255,.10));
}
.ai-diagnostic-card--soft{
  border-color:rgba(126,226,255,.22);
  background:linear-gradient(145deg,rgba(11,31,66,.68),rgba(16,22,59,.62));
}
@media(max-width:980px){.hybrid-trajectory--generic-image{min-height:660px}.hybrid-trajectory__generic-image{width:min(100%,700px)}}
@media(max-width:620px){.hybrid-trajectory--generic-image{min-height:520px}.hybrid-trajectory__generic-image{width:108%;max-width:none}}


/* V6.5 · Integración Final aprobada · layout dinámico equivalente al mock */
.final-integration-visual{
  min-height:760px;
  background:linear-gradient(180deg,rgba(9,21,54,.34),rgba(5,12,33,.56));
  backdrop-filter:blur(11px);
}
.final-integration-visual::before{
  background:
    radial-gradient(circle at 34% 43%,rgba(74,170,255,.16),transparent 32%),
    radial-gradient(circle at 76% 54%,rgba(178,102,255,.10),transparent 27%);
}
.final-triad{
  left:4.5%;
  top:6%;
  width:67%;
  aspect-ratio:1/1;
}
.final-triad__core{
  width:64%;
  min-width:280px;
  max-width:430px;
  background:radial-gradient(circle at 45% 34%,rgba(76,141,245,.31),rgba(24,42,91,.82) 58%,rgba(10,18,52,.96));
  border-color:rgba(137,220,255,.58);
  box-shadow:0 0 54px rgba(83,192,255,.22),inset 0 0 62px rgba(104,91,255,.16);
}
.final-triad__core::after{inset:-12%;}
.final-triad__core strong{
  width:90%;
  max-width:90%;
  font-size:clamp(36px,4.15vw,66px);
  letter-spacing:.105em;
}
.final-triad__core small{
  margin-top:14px;
  font-size:10px;
  letter-spacing:.22em;
}
.final-triad__satellite{
  width:24%;
  min-width:126px;
  background:linear-gradient(180deg,rgba(18,34,78,.92),rgba(11,26,65,.92));
  border-color:rgba(117,210,255,.50);
  box-shadow:0 0 28px rgba(80,190,255,.12),inset 0 0 26px rgba(98,113,255,.06);
}
.final-triad__satellite strong{
  font-size:clamp(18px,1.65vw,26px);
  letter-spacing:.08em;
}
.final-triad__satellite small{
  display:flex;
  flex-direction:column;
  gap:2px;
  margin-top:10px;
  font-size:8px;
  line-height:1.15;
  letter-spacing:.16em;
  text-align:center;
  color:rgba(224,241,255,.67);
}
.final-triad__satellite small span{display:block;}
.final-triad__satellite--mpi{left:39%;top:-4%;}
.final-triad__satellite--egrys{left:-2%;bottom:8%;}
.final-egrys-card{
  right:4%;
  top:12%;
  width:31%;
  min-height:470px;
  padding:28px 20px;
  border-radius:34px;
  background:linear-gradient(165deg,rgba(31,38,92,.93),rgba(12,18,58,.96));
  border-color:rgba(174,154,255,.50);
  box-shadow:0 0 52px rgba(137,87,255,.15),inset 0 0 40px rgba(116,88,255,.10);
}
.final-egrys-card .field-label{
  margin-bottom:auto;
  font-size:10px;
  letter-spacing:.19em;
}
.final-egrys-card__sigil{
  margin:28px 0 22px;
  width:126px;
  height:126px;
}
.final-egrys-card strong{
  font-size:clamp(27px,2.3vw,38px);
  line-height:1.05;
}
.final-egrys-card small{
  margin-top:10px;
  font-size:14px;
}
.final-egrys-card p{display:none;}
.final-project-identity[hidden]{display:none!important;}

@media(max-width:1200px){
  .final-triad{left:2.5%;width:68%;}
  .final-triad__core{min-width:245px;}
  .final-egrys-card{right:3%;width:31.5%;min-height:420px;}
}
@media(max-width:980px){
  .final-integration-visual{min-height:900px;}
  .final-triad{left:4%;top:3%;width:92%;}
  .final-egrys-card{left:14%;right:14%;top:auto;bottom:4%;width:auto;min-height:250px;}
  .final-egrys-card .field-label{margin-bottom:10px;}
}


/* v6.6 · Proyecto Expandido · visual orbital aprobado */
.project-orbital-visual{
  position:relative;
  min-height:720px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:visible;
  padding:18px 4px 8px;
}
.project-orbital-visual::before{
  content:"";
  position:absolute;
  inset:10% 8% 13%;
  border-radius:50%;
  background:radial-gradient(circle,rgba(80,176,255,.10),rgba(119,78,255,.055) 42%,transparent 70%);
  filter:blur(18px);
  pointer-events:none;
}
.project-orbital-visual__image{
  position:relative;
  z-index:1;
  display:block;
  width:min(100%,760px);
  height:auto;
  object-fit:contain;
  filter:drop-shadow(0 24px 44px rgba(0,0,0,.25)) drop-shadow(0 0 22px rgba(91,184,255,.10));
}
@media (max-width:1120px){
  .project-orbital-visual{min-height:640px;padding-top:8px;}
  .project-orbital-visual__image{width:min(92vw,720px);}
}
@media (max-width:820px){
  .project-orbital-visual{min-height:auto;padding:0;margin-top:10px;}
  .project-orbital-visual__image{width:100%;max-width:680px;}
}


/* v6.7 · laterales persistentes + Proyecto Expandido aprobado */
@media (min-width:981px){
  #screen-03 .orbital-stage,
  #screen-04 .project-orbital-visual{
    position:sticky;
    top:82px;
    align-self:start;
  }
  #screen-03 .orbital-stage{
    min-height:calc(100vh - 118px);
  }
  #screen-04 .project-orbital-visual{
    min-height:calc(100vh - 118px);
    padding-top:0;
    padding-bottom:0;
  }
  #screen-04 .project-orbital-visual__image{
    width:min(100%,780px);
    max-height:calc(100vh - 128px);
    object-fit:contain;
  }
}

/* V6.37 cascade lock: debe quedar después de todas las reglas históricas. */
.screen--final-integration{overflow:visible;isolation:isolate}
.screen--final-integration .final-integration-backdrop{position:fixed;inset:0;z-index:-2;transform:none;filter:saturate(1.02)}
.screen--final-integration .final-integration-backdrop::after{background:radial-gradient(circle at 50% 42%,rgba(100,220,255,.05),transparent 42%),linear-gradient(90deg,rgba(2,8,26,.16),rgba(3,10,31,.04) 48%,rgba(3,9,27,.12)),linear-gradient(180deg,rgba(2,7,22,.03),rgba(2,8,25,.14))}
.screen--final-integration .final-integration-layout{grid-template-columns:minmax(420px,.88fr) minmax(520px,1.12fr);gap:clamp(24px,3vw,48px)}
.screen--final-integration .final-project-panel{background:linear-gradient(180deg,rgba(5,18,48,.82),rgba(3,13,38,.76));backdrop-filter:blur(18px) saturate(.88);-webkit-backdrop-filter:blur(18px) saturate(.88)}
.screen--final-integration .final-integration-visual{display:flex;align-items:flex-end;min-height:760px;padding:clamp(28px,4vw,56px);border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;overflow:visible}
.screen--final-integration .final-integration-visual::before,.screen--final-integration .final-triad{display:none!important}
.screen--final-integration .final-project-identity{position:relative;left:auto;right:auto;bottom:auto;width:min(680px,100%);margin:0 0 clamp(16px,5vh,68px) auto;padding:clamp(26px,3vw,42px);border:1px solid rgba(151,220,255,.24);border-radius:30px;background:linear-gradient(135deg,rgba(5,20,51,.68),rgba(26,25,76,.58));backdrop-filter:blur(22px) saturate(.82);-webkit-backdrop-filter:blur(22px) saturate(.82);box-shadow:0 28px 90px rgba(0,0,0,.25),inset 0 0 70px rgba(97,159,255,.05)}
@media(max-width:1080px){.screen--final-integration .final-integration-layout{grid-template-columns:1fr}.screen--final-integration .final-integration-visual{min-height:420px;padding:0 0 24px}.screen--final-integration .final-project-identity{margin:0 auto}}
@media(max-width:620px){.screen--final-integration .final-project-identity{padding:24px 20px;border-radius:24px}.final-project-identity__code{grid-template-columns:1fr}}

/* =========================================================
   V6.35 · EGRYS CANÓNICO + REVELACIÓN JUNTO A NEXUS
   La identidad consagrada permanece de solo lectura; la reflexión
   pertenece al alumno y la cápsula se revela únicamente al final.
   ========================================================= */
.entity-question-block--canonical{
  border-color:rgba(121,222,255,.30);
  background:linear-gradient(135deg,rgba(12,42,80,.62),rgba(44,30,87,.40));
  box-shadow:inset 0 0 42px rgba(93,189,255,.06);
}
.canonical-identity-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-bottom:10px;
}
.canonical-identity-status{
  flex:0 0 auto;
  padding:7px 10px;
  border:1px solid rgba(141,221,255,.28);
  border-radius:999px;
  background:rgba(8,28,64,.55);
  color:#9fe8fa;
  font-size:9px;
  font-weight:600;
  line-height:1;
  letter-spacing:.13em;
}
.input-line--canonical[readonly]{
  padding-right:18px;
  cursor:default;
  color:#f5fbff;
  border-bottom-color:rgba(144,222,255,.42);
  background:linear-gradient(90deg,rgba(65,161,218,.08),transparent);
}
.input-line--canonical[readonly]:focus{
  outline:none;
  box-shadow:none;
}
.egrys-identity-missing{
  margin-top:14px;
  padding:14px 16px;
  border:1px solid rgba(255,184,212,.28);
  border-radius:15px;
  background:linear-gradient(120deg,rgba(82,28,76,.30),rgba(31,37,86,.34));
  color:rgba(240,245,255,.78);
  font-size:13px;
  line-height:1.5;
}
.egrys-identity-missing[hidden]{display:none!important}
.egrys-identity-missing strong{display:block;color:#fff;font-size:14px}
.egrys-identity-missing p{margin:5px 0 0}

/* La pantalla 07 conserva la integración simbólica, sin anticipar la cápsula. */
.screen--final-integration .final-triad{
  left:50%;
  top:50%;
  width:min(78%,720px);
  transform:translate(-50%,-50%);
}
.screen--final-integration .final-integration-visual::before{
  background:radial-gradient(circle at 50% 48%,rgba(75,178,255,.15),transparent 34%),radial-gradient(circle at 52% 58%,rgba(200,99,255,.08),transparent 30%);
}

.nexus-visual-card-wrap{
  width:min(1180px,94vw);
  text-align:left;
}
.nexus-final-revelation{
  padding:clamp(22px,3.2vw,38px);
  border:1px solid rgba(146,214,255,.24);
  border-radius:36px;
  background:linear-gradient(145deg,rgba(6,22,54,.76),rgba(19,22,68,.72));
  box-shadow:0 32px 100px rgba(0,0,0,.28),inset 0 0 80px rgba(81,144,255,.05);
  overflow:hidden;
}
.nexus-final-revelation__head{
  max-width:420px;
  margin:0 auto 18px;
  text-align:center;
}
.nexus-final-revelation__head h2{
  margin:10px 0 9px;
  color:#fff;
  font-size:clamp(28px,3vw,42px);
  font-weight:300;
  line-height:1.02;
  letter-spacing:-.025em;
}
.nexus-final-revelation__head p{
  margin:0 auto;
  max-width:720px;
  color:rgba(224,237,255,.72);
  font-size:16px;
  line-height:1.6;
}
.nexus-final-revelation__pair{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:26px;
  align-items:stretch;
}
.nexus-final-revelation__pair:has(#nexusPrivateReveal:not([hidden])){
  grid-template-columns:minmax(0,1fr) minmax(300px,.48fr);
}
.nexus-final-revelation__nexus{
  min-width:0;
  align-self:center;
  text-align:center;
}
.nexus-final-revelation .nexus-visual-card-stage{
  display:block;
  width:100%;
  max-width:720px;
  margin:0 auto;
}
.nexus-egrys-revelation[hidden]{display:none!important}
.nexus-egrys-revelation{
  min-width:0;
  display:flex;
  flex-direction:column;
  align-self:stretch;
}
.nexus-egrys-revelation.is-revealed{
  animation:nexusVisualReveal 1s .16s cubic-bezier(.2,.8,.2,1) both;
}
.nexus-egrys-revelation .final-egrys-card{
  position:relative;
  inset:auto;
  width:100%;
  min-height:470px;
  padding:28px 20px;
  border-radius:34px;
  align-self:stretch;
}
.nexus-egrys-revelation .final-egrys-card .field-label{
  margin-bottom:auto;
}
.nexus-egrys-revelation .final-egrys-card p{
  display:-webkit-box;
  margin-top:auto;
  -webkit-line-clamp:4;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.nexus-final-revelation__meaning{
  margin:16px auto 0;
  padding:17px 18px;
  border:1px solid rgba(164,198,255,.19);
  border-radius:20px;
  background:linear-gradient(100deg,rgba(27,63,107,.32),rgba(69,38,112,.27));
  color:rgba(229,239,255,.78);
  font-size:15px;
  line-height:1.65;
  text-align:center;
}
.nexus-final-revelation__meaning strong{color:#fff;font-weight:600}

@media(max-width:980px){
  .screen--final-integration .final-integration-visual{min-height:720px}
  .screen--final-integration .final-triad{top:48%;width:88%}
  .nexus-final-revelation__pair,
  .nexus-final-revelation__pair:has(#nexusPrivateReveal:not([hidden])){grid-template-columns:1fr}
  .nexus-egrys-revelation{width:min(480px,100%);margin:0 auto}
  .nexus-egrys-revelation .final-egrys-card{
    width:min(430px,100%);
    min-height:430px;
    margin:0 auto;
  }
}
@media(max-width:620px){
  .canonical-identity-head{align-items:flex-start;flex-direction:column}
  .canonical-identity-status{white-space:normal;line-height:1.35}
  .screen--final-integration .final-integration-visual{min-height:580px}
  .screen--final-integration .final-triad{top:49%;width:92%}
  .nexus-final-revelation{padding:22px 14px;border-radius:26px}
  .nexus-final-revelation__head p{font-size:14px}
  .nexus-final-revelation__pair{gap:20px}
  .nexus-egrys-revelation .final-egrys-card{min-height:390px}
  .nexus-final-revelation__meaning{padding:17px 16px;font-size:14px}
}

@media (max-width:980px){
  #screen-03 .orbital-stage,
  #screen-04 .project-orbital-visual{
    position:relative;
    top:auto;
  }
}


/* v6.8 · control explícito de narración + mensaje de permanencia */
.resonance-theater__stay{
  margin:10px 0 0;
  max-width:650px;
  padding:10px 16px;
  border-radius:999px;
  border:1px solid rgba(126,219,255,.16);
  background:rgba(7,22,52,.42);
  color:rgba(218,237,251,.80);
  font-size:11px;
  line-height:1.45;
  letter-spacing:.015em;
  text-align:center;
  backdrop-filter:blur(9px);
}
.narration-controls{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:9px;
  flex:0 0 auto;
}
.narration-stop-btn{
  appearance:none;
  border:1px solid rgba(154,185,218,.28);
  background:rgba(8,22,49,.62);
  color:#dceaf6;
  border-radius:999px;
  padding:9px 15px;
  min-height:36px;
  cursor:pointer;
  font:inherit;
  font-size:10px;
  letter-spacing:.02em;
  transition:border-color .22s ease,background .22s ease,opacity .22s ease,transform .22s ease;
}
.narration-stop-btn:not(:disabled):hover{
  border-color:rgba(143,226,255,.62);
  background:rgba(16,45,78,.82);
  transform:translateY(-1px);
}
.narration-stop-btn:disabled{
  opacity:.34;
  cursor:default;
}
.narrate-btn:disabled{
  cursor:default;
  opacity:.88;
  transform:none;
}
@media(max-width:900px){
  .narration-controls{width:100%;justify-content:flex-start;flex-wrap:wrap}
  .resonance-theater__stay{max-width:86vw;font-size:10.5px}
}


/* ─────────────────────────────────────────────────────────
   v6.9 · TARJETA NEXUS · preview dinámico
   ───────────────────────────────────────────────────────── */
.screen--nexus-card{padding-bottom:90px;background:radial-gradient(circle at 14% 12%,rgba(112,65,210,.16),transparent 26%),radial-gradient(circle at 88% 18%,rgba(60,190,255,.14),transparent 25%)}
.nexus-prep-shell{width:min(1180px,94vw);margin:0 auto;padding:24px 0 64px}
.nexus-prep-head{display:flex;justify-content:space-between;gap:28px;align-items:flex-end;margin:8px 0 28px}.nexus-prep-head h1{margin:8px 0 8px;font-size:clamp(34px,4.5vw,62px);font-weight:300;letter-spacing:-.03em}.nexus-prep-head p{max-width:720px;color:rgba(226,238,255,.72);font-size:16px;line-height:1.65}
.nexus-card-loading,.nexus-card-error{max-width:760px;margin:80px auto;text-align:center;padding:38px;border-radius:30px}.nexus-card-loading__orb{width:90px;height:90px;margin:0 auto 24px;position:relative}.nexus-card-loading__orb i{position:absolute;inset:0;border:1px solid rgba(129,221,255,.48);border-radius:50%;animation:nexusSpin 5s linear infinite}.nexus-card-loading__orb i:nth-child(2){inset:14px;border-color:rgba(210,133,255,.48);animation-direction:reverse}.nexus-card-loading__orb i:nth-child(3){inset:32px;background:radial-gradient(circle,rgba(143,230,255,.9),rgba(101,108,255,.3) 55%,transparent 70%);box-shadow:0 0 34px rgba(111,212,255,.35)}@keyframes nexusSpin{to{transform:rotate(360deg)}}
.nexus-card{position:relative;border-radius:42px;padding:28px;overflow:hidden;color:#f7f9ff;background:linear-gradient(145deg,rgba(7,27,62,.94),rgba(8,24,61,.90) 50%,rgba(21,19,69,.88));border:1px solid rgba(203,226,255,.62);box-shadow:0 35px 120px rgba(0,0,0,.42),inset 0 0 0 8px rgba(255,255,255,.028),inset 0 0 90px rgba(77,164,255,.08)}
.nexus-card::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 8% 14%,rgba(207,128,255,.18),transparent 26%),radial-gradient(circle at 91% 17%,rgba(81,210,255,.15),transparent 27%),radial-gradient(circle at 74% 92%,rgba(255,171,214,.10),transparent 30%);pointer-events:none}.nexus-card::after{content:"";position:absolute;inset:12px;border:1px solid rgba(160,218,255,.18);border-radius:32px;pointer-events:none}.nexus-card>*{position:relative;z-index:2}
.nexus-card__aura{position:absolute!important;inset:-12%;z-index:0!important;background:conic-gradient(from 40deg,transparent,rgba(107,203,255,.08),transparent,rgba(224,123,255,.08),transparent);filter:blur(26px);animation:nexusAura 14s linear infinite}@keyframes nexusAura{to{transform:rotate(360deg)}}
.nexus-card__topline{display:flex;justify-content:space-between;align-items:flex-start;padding:6px 10px 22px;border-bottom:1px solid rgba(182,220,255,.24)}.nexus-card__brand{display:flex;gap:13px;align-items:center}.nexus-card__brandmark{width:42px;height:42px;border:1px solid rgba(166,225,255,.55);border-radius:50%;display:grid;place-items:center;color:#c9f0ff}.nexus-card__brand strong,.nexus-card__brand small{display:block;letter-spacing:.16em}.nexus-card__brand strong{font-size:14px}.nexus-card__brand small{font-size:9px;color:#9eb6d1;margin-top:4px}.nexus-card__status{text-align:right}.nexus-card__status span,.nexus-card__status b{display:block;letter-spacing:.15em}.nexus-card__status span{font-size:9px;color:#aabed8}.nexus-card__status b{font-size:11px;margin-top:6px;color:#dce8ff}
.nexus-card__identity{display:grid;grid-template-columns:310px 1fr;gap:34px;padding:28px 10px 20px}.nexus-identity-orb{position:relative;width:290px;aspect-ratio:1;border-radius:50%;overflow:hidden;border:1px solid rgba(188,221,255,.56);box-shadow:0 0 55px rgba(129,136,255,.28),inset 0 0 55px rgba(156,115,255,.14)}.nexus-identity-orb::before{content:"";position:absolute;inset:-16%;border:1px solid rgba(180,216,255,.22);border-radius:50%;transform:rotate(-18deg)}.nexus-identity-orb img,.nexus-identity-orb__fallback{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.nexus-identity-orb__fallback{background:radial-gradient(circle at 62% 33%,rgba(208,132,255,.66),transparent 20%),radial-gradient(circle at 38% 58%,rgba(79,211,255,.28),transparent 33%),linear-gradient(145deg,#131f59,#2c1e65 58%,#081731)}.nexus-identity-orb p{position:absolute;left:24px;right:24px;bottom:22px;margin:0;padding-top:12px;border-top:1px solid rgba(221,238,255,.32);font-size:12px;line-height:1.45;letter-spacing:.09em;text-transform:uppercase;color:#eef6ff;text-align:center;text-shadow:0 2px 14px #06122c}.nexus-identity-copy{align-self:center}.nexus-identity-copy h2{margin:7px 0 18px;font-family:Georgia,'Times New Roman',serif;font-size:clamp(50px,7vw,92px);font-weight:400;letter-spacing:.08em;line-height:.92}.nexus-resonance-box{padding:18px 22px;border-radius:18px;border:1px solid rgba(158,213,255,.34);background:linear-gradient(120deg,rgba(7,38,78,.76),rgba(117,77,174,.30));box-shadow:inset 0 0 36px rgba(184,118,255,.06)}.nexus-resonance-box span{display:block;font-size:10px;letter-spacing:.14em;color:#a9c4df;margin-bottom:8px}.nexus-resonance-box strong{font-size:18px;font-weight:400;line-height:1.5}.nexus-resonance-phrase{font-family:Georgia,'Times New Roman',serif;font-size:20px;font-style:italic;color:#dce5f8;margin:16px 6px 0}
.nexus-code-grid{display:grid;grid-template-columns:1.5fr .72fr .72fr;border:1px solid rgba(158,214,255,.24);border-radius:24px;overflow:hidden;margin:4px 10px 14px}.nexus-code-panel{padding:22px 18px;min-height:220px;text-align:center;background:rgba(6,27,62,.42);border-right:1px solid rgba(158,214,255,.20)}.nexus-code-panel:last-child{border-right:0}.nexus-number-flow,.nexus-number-group{display:flex;justify-content:center;align-items:center;gap:14px;min-height:90px;margin:12px 0 10px}.nexus-number-flow__arrow{font-size:30px;color:#d7e7ff}.nexus-num{width:74px;height:74px;border-radius:50%;display:flex;align-items:center;justify-content:center;position:relative;font-family:Georgia,serif;font-size:31px;background:radial-gradient(circle at 35% 28%,rgba(105,214,255,.35),rgba(25,54,113,.68) 58%,rgba(7,22,57,.92));border:1px solid rgba(166,225,255,.58);box-shadow:0 0 30px rgba(83,192,255,.15),inset 0 0 26px rgba(83,192,255,.10)}.nexus-num--violet{border-color:rgba(215,157,255,.58);box-shadow:0 0 30px rgba(197,112,255,.17)}.nexus-num--gold{border-color:rgba(255,213,145,.62);box-shadow:0 0 30px rgba(255,189,92,.16)}.nexus-num small{position:absolute;top:82px;width:115px;font-family:inherit;font-size:11px;line-height:1.25;color:#c8d5e9}.nexus-code-panel p{font-size:13px;line-height:1.48;color:#d2def0;margin:10px auto 0;max-width:240px}.nexus-empty-code{font-size:13px;color:#aec0d9;border:1px dashed rgba(160,205,255,.3);border-radius:999px;padding:9px 13px}
.nexus-project-bar,.nexus-creating-bar,.nexus-signature{margin:0 10px 12px;border:1px solid rgba(158,214,255,.27);border-radius:20px;background:linear-gradient(100deg,rgba(9,37,77,.67),rgba(40,39,101,.43));padding:18px 22px}.nexus-project-bar{display:flex;gap:18px;align-items:center}.nexus-project-icon{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;font-size:32px;border:1px solid rgba(161,220,255,.38);background:radial-gradient(circle,rgba(111,210,255,.14),transparent 70%)}.nexus-project-bar h3{font-family:Georgia,serif;font-size:30px;font-weight:400;margin:3px 0 2px}.nexus-project-bar p,.nexus-creating-bar p{margin:0;color:#d6e1f2;line-height:1.45}.nexus-creating-bar{display:flex;gap:15px;align-items:flex-start;background:linear-gradient(100deg,rgba(8,35,76,.66),rgba(140,89,171,.22))}.nexus-mini-icon{font-size:24px;color:#bdeeff;line-height:1}
.nexus-exchange-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0 10px 12px}.nexus-exchange-panel{padding:20px 22px;border-radius:20px;border:1px solid rgba(158,214,255,.26);background:linear-gradient(135deg,rgba(7,45,72,.65),rgba(23,43,91,.57))}.nexus-exchange-panel--convocation{background:linear-gradient(135deg,rgba(40,28,88,.68),rgba(25,41,88,.57));border-color:rgba(211,157,255,.30)}.nexus-exchange-title{display:flex;gap:10px;align-items:center;margin-bottom:12px}.nexus-exchange-panel ul{margin:0;padding:0;list-style:none}.nexus-exchange-panel li{position:relative;padding:8px 0 8px 28px;border-bottom:1px solid rgba(188,217,255,.13);color:#edf4ff}.nexus-exchange-panel li:last-child{border-bottom:0}.nexus-exchange-panel li::before{content:"";position:absolute;left:2px;top:14px;width:9px;height:9px;border-radius:50%;background:#78e8ff;box-shadow:0 0 12px rgba(90,224,255,.6)}.nexus-exchange-panel--convocation li::before{background:#d894ff;box-shadow:0 0 12px rgba(211,124,255,.55)}
.nexus-signature{display:flex;justify-content:space-between;gap:32px;align-items:center;background:linear-gradient(90deg,rgba(35,29,88,.52),rgba(8,37,72,.55))}.nexus-signature blockquote{margin:8px 0 0;font-family:Georgia,serif;font-style:italic;font-size:22px;line-height:1.45;color:#f2f1ff}.nexus-signature__motto{text-align:right;font-size:9px;line-height:1.6;letter-spacing:.22em;color:#aabed4;white-space:nowrap}
.nexus-card__footer{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:14px 10px 4px;border-top:1px solid rgba(180,218,255,.18)}.nexus-footer-brand{display:flex;gap:12px;align-items:center}.nexus-footer-brand>span{font-size:28px;letter-spacing:-.45em;color:#bedcff;margin-right:8px}.nexus-footer-brand strong,.nexus-footer-brand small{display:block;letter-spacing:.16em}.nexus-footer-brand small{font-size:8px;color:#98b0cb;margin-top:3px}.nexus-preview-actions{display:flex;gap:10px}.nexus-preview-actions button{padding:13px 18px;border-radius:14px;border:1px solid rgba(181,211,255,.36);background:linear-gradient(120deg,rgba(107,61,150,.48),rgba(46,96,169,.5));color:#f5f7ff;font-size:15px;opacity:.85}.nexus-preview-actions button:disabled{cursor:default}
.nexus-card-controls{padding:22px 4px 0;text-align:center}.nexus-card-controls p{color:#aebfd4}.nexus-editor-card{max-width:850px!important;max-height:90vh;overflow:auto}.nexus-editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.nexus-editor-card .field-label{margin-top:14px;display:block}.nexus-editor-card .input-area{min-height:92px}
@media(max-width:900px){.nexus-card__identity{grid-template-columns:1fr;text-align:center}.nexus-identity-orb{margin:0 auto}.nexus-code-grid{grid-template-columns:1fr}.nexus-code-panel{border-right:0;border-bottom:1px solid rgba(158,214,255,.20)}.nexus-code-panel:last-child{border-bottom:0}.nexus-exchange-grid{grid-template-columns:1fr}.nexus-card__topline,.nexus-card__footer,.nexus-signature,.nexus-prep-head{flex-direction:column;align-items:flex-start}.nexus-card__status{text-align:left}.nexus-preview-actions{width:100%}.nexus-preview-actions button{flex:1}.nexus-editor-grid{grid-template-columns:1fr}.nexus-signature__motto{text-align:left}.nexus-identity-copy h2{font-size:54px}}
@media(max-width:560px){.nexus-prep-shell{width:96vw}.nexus-card{padding:16px;border-radius:28px}.nexus-card__identity{padding:20px 2px}.nexus-identity-orb{width:240px}.nexus-code-grid,.nexus-project-bar,.nexus-creating-bar,.nexus-exchange-grid,.nexus-signature{margin-left:0;margin-right:0}.nexus-card__footer{padding-left:0;padding-right:0}}


/* V6.11 · estados secuenciales de acciones finales */
.btn[hidden],
#prepareNexus[hidden],
#confirmFinalIntegration[hidden]{display:none!important;}


/* V6.12 · cierre final robusto */
#confirmFinalIntegration:disabled{opacity:.72;cursor:wait;filter:saturate(.85)}
#prepareNexus:not([hidden]){animation:nexusNextReveal .34s ease both}
@keyframes nexusNextReveal{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}


/* V6.14 · cierre final a prueba de overlays/touch */
#confirmFinalIntegration,#prepareNexus{position:relative!important;z-index:90!important;pointer-events:auto!important;touch-action:manipulation}
#confirmFinalIntegration[hidden],#prepareNexus[hidden]{display:none!important}

/* v6.16 · Definición Nexus previa a la Tarjeta */
.nexus-definition-shell{width:min(1120px,94vw);margin:0 auto;padding:24px 0 72px}
.nexus-definition-loading{max-width:760px;margin:70px auto;padding:42px;text-align:center;border-radius:32px}
.nexus-definition-loading__core{position:relative;width:150px;height:150px;margin:0 auto 26px;display:grid;place-items:center}
.nexus-definition-loading__core i{position:absolute;border-radius:50%;border:1px solid rgba(129,221,255,.48);animation:nexusDefOrbit 6s linear infinite}
.nexus-definition-loading__core i:nth-child(1){inset:0}.nexus-definition-loading__core i:nth-child(2){inset:18px;border-color:rgba(199,132,255,.48);animation-direction:reverse;animation-duration:4.6s}.nexus-definition-loading__core i:nth-child(3){inset:38px;border-color:rgba(255,220,143,.35);animation-duration:3.4s}
.nexus-definition-loading__core b{width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,rgba(175,236,255,.98),rgba(87,114,255,.48) 52%,rgba(31,39,94,.18) 76%);box-shadow:0 0 46px rgba(111,212,255,.42),0 0 80px rgba(147,111,255,.16);font-size:20px;animation:nexusDefPulse 1.8s ease-in-out infinite}
.nexus-definition-loading>small{display:block;max-width:560px;margin:12px auto 0;color:rgba(205,222,244,.68);font-size:14px;line-height:1.55;letter-spacing:.02em}
@keyframes nexusDefOrbit{to{transform:rotate(360deg)}}@keyframes nexusDefPulse{50%{transform:scale(1.18);box-shadow:0 0 68px rgba(111,212,255,.62),0 0 110px rgba(147,111,255,.25)}}
.nexus-definition-panel{padding:30px;border-radius:34px;border-color:rgba(129,221,255,.22);background:linear-gradient(160deg,rgba(8,17,46,.86),rgba(9,12,38,.76))}
.nexus-definition-intro{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-bottom:22px;border-bottom:1px solid rgba(157,213,255,.14)}
.nexus-definition-intro strong{display:block;margin-top:8px;font-size:clamp(34px,4vw,58px);font-weight:300;letter-spacing:.08em}
.nexus-definition-badge{padding:8px 12px;border:1px solid rgba(133,222,255,.24);border-radius:999px;font-size:10px;letter-spacing:.14em;color:rgba(210,238,255,.76)}
.nexus-definition-architecture{padding:28px 0 22px}.nexus-number-flow--definition{margin-top:16px}
.nexus-definition-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.nexus-definition-card{padding:22px;border:1px solid rgba(137,220,255,.18);border-radius:24px;background:linear-gradient(145deg,rgba(15,41,71,.38),rgba(5,14,39,.34));min-height:190px}
.nexus-definition-card--convoked{border-color:rgba(210,144,255,.20);background:linear-gradient(145deg,rgba(42,26,75,.34),rgba(8,13,39,.34))}
.nexus-definition-card .nexus-number-group{margin:16px 0 12px}.nexus-definition-card p{color:rgba(228,239,255,.76);line-height:1.55}
.nexus-definition-identity{margin-top:18px;padding:22px;border-radius:24px;border:1px solid rgba(183,153,255,.18);background:radial-gradient(circle at 10% 50%,rgba(135,91,255,.12),transparent 28%),rgba(8,14,41,.42)}
.nexus-definition-identity strong{display:block;margin:13px 0 9px;font-size:20px;letter-spacing:.03em}.nexus-definition-identity p{margin:0;color:rgba(224,236,255,.72);font-style:italic}
.nexus-definition-question{margin:24px 0 4px;padding:20px 22px;border-left:2px solid rgba(116,218,255,.55);background:rgba(9,25,54,.34);border-radius:0 18px 18px 0}.nexus-definition-question strong{font-size:18px}.nexus-definition-question p{margin:7px 0 0;color:rgba(220,235,255,.68)}
.nexus-definition-editor{margin-top:22px;padding:24px;border:1px solid rgba(144,211,255,.20);border-radius:24px;background:rgba(4,12,34,.48)}.nexus-definition-editor__lead{margin:0 0 18px;color:rgba(226,238,255,.70)}
@media(max-width:820px){.nexus-definition-grid{grid-template-columns:1fr}.nexus-definition-intro{align-items:flex-start;flex-direction:column}}

/* V6.17 · Tarjeta Nexus visual generada por IA */
.nexus-card--data-fallback{display:none!important}
.nexus-card-loading--forge{max-width:900px;padding:34px 32px 38px;background:linear-gradient(160deg,rgba(7,20,52,.72),rgba(12,18,54,.46));border:1px solid rgba(147,220,255,.18);box-shadow:0 30px 90px rgba(0,0,0,.26),inset 0 0 70px rgba(92,111,255,.05)}
.nexus-card-loading--forge>strong{display:block;font-size:20px;font-weight:500;letter-spacing:.02em;margin-top:8px;color:#f4f8ff}
.nexus-card-loading--forge>p{margin:10px auto 4px;color:rgba(222,236,255,.76);font-size:15px}
.nexus-card-loading--forge>small{display:block;margin-top:8px;color:rgba(176,200,226,.64);letter-spacing:.04em}
.nexus-card-forge{position:relative;width:min(340px,72vw);aspect-ratio:2/3;margin:4px auto 26px;filter:drop-shadow(0 0 34px rgba(104,187,255,.22))}
.nexus-card-forge__shell{position:absolute;inset:3%;border-radius:34px;border:1px solid rgba(154,225,255,.64);background:linear-gradient(160deg,rgba(37,79,146,.18),rgba(64,32,116,.16));box-shadow:inset 0 0 40px rgba(134,195,255,.08),0 0 28px rgba(93,207,255,.16);animation:nexusForgeBreathe 2.4s ease-in-out infinite}
.nexus-card-forge__shell::before,.nexus-card-forge__shell::after{content:"";position:absolute;left:10%;right:10%;height:1px;background:linear-gradient(90deg,transparent,rgba(151,224,255,.7),transparent);box-shadow:0 0 15px rgba(151,224,255,.35)}
.nexus-card-forge__shell::before{top:25%}.nexus-card-forge__shell::after{top:66%}
.nexus-card-forge__scan{position:absolute;left:7%;right:7%;height:2px;top:10%;background:linear-gradient(90deg,transparent,#7deaff 22%,#d29bff 50%,#7deaff 78%,transparent);box-shadow:0 0 22px rgba(125,234,255,.7);animation:nexusForgeScan 2.8s ease-in-out infinite}
.nexus-card-forge__core{position:absolute;width:92px;height:92px;border-radius:50%;left:50%;top:39%;transform:translate(-50%,-50%);background:radial-gradient(circle at 42% 38%,rgba(225,177,255,.96),rgba(84,169,255,.68) 30%,rgba(28,55,127,.22) 60%,transparent 72%);box-shadow:0 0 45px rgba(125,207,255,.42);animation:nexusForgeCore 1.8s ease-in-out infinite}
.nexus-card-forge__core::before,.nexus-card-forge__core::after{content:"";position:absolute;inset:-24px;border:1px solid rgba(141,218,255,.38);border-radius:50%;animation:nexusForgeOrbit 5s linear infinite}.nexus-card-forge__core::after{inset:-42px;border-color:rgba(211,137,255,.25);animation-direction:reverse;animation-duration:7s}
.nexus-card-forge__particle{position:absolute;width:7px;height:7px;border-radius:50%;background:#bff6ff;box-shadow:0 0 16px rgba(160,237,255,.9);animation:nexusForgeParticle 3.2s ease-in-out infinite}
.nexus-card-forge__particle--1{left:13%;top:18%}.nexus-card-forge__particle--2{right:14%;top:29%;animation-delay:.65s}.nexus-card-forge__particle--3{left:18%;bottom:20%;animation-delay:1.1s}.nexus-card-forge__particle--4{right:18%;bottom:12%;animation-delay:1.65s}
@keyframes nexusForgeBreathe{0%,100%{transform:scale(.985);opacity:.72}50%{transform:scale(1.018);opacity:1}}
@keyframes nexusForgeScan{0%{top:10%;opacity:.15}20%{opacity:1}80%{opacity:1}100%{top:88%;opacity:.08}}
@keyframes nexusForgeCore{0%,100%{transform:translate(-50%,-50%) scale(.88);filter:brightness(.9)}50%{transform:translate(-50%,-50%) scale(1.12);filter:brightness(1.35)}}
@keyframes nexusForgeOrbit{to{transform:rotate(360deg)}}
@keyframes nexusForgeParticle{0%,100%{transform:translate3d(0,0,0) scale(.7);opacity:.25}50%{transform:translate3d(22px,-34px,0) scale(1.5);opacity:1}}

.nexus-visual-card-wrap{width:min(880px,94vw);margin:34px auto 22px;text-align:center}
.nexus-visual-card-stage{position:relative;display:inline-block;width:min(720px,90vw);filter:drop-shadow(0 34px 90px rgba(0,0,0,.42))}
.nexus-visual-card-stage__aura{position:absolute;inset:4% -8%;background:radial-gradient(ellipse at center,rgba(75,185,255,.24),rgba(142,77,239,.13) 40%,transparent 68%);filter:blur(38px);animation:nexusVisualAura 7s ease-in-out infinite;pointer-events:none}
.nexus-visual-card-image{position:relative;z-index:1;display:block;width:100%;height:auto;object-fit:contain;transform:translateZ(0);animation:nexusVisualReveal .9s cubic-bezier(.2,.8,.2,1) both}
.nexus-visual-card-note{max-width:680px;margin:15px auto 0;color:rgba(206,222,244,.62);font-size:12px;letter-spacing:.035em;line-height:1.55}
@keyframes nexusVisualReveal{from{opacity:0;transform:translateY(18px) scale(.97);filter:blur(8px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}
@keyframes nexusVisualAura{0%,100%{opacity:.55;transform:scale(.96)}50%{opacity:1;transform:scale(1.04)}}

@media(max-width:720px){
  .nexus-card-forge{width:min(280px,76vw)}
  .nexus-visual-card-stage{width:94vw}
}


/* V6.19 · Definición Nexus: ajuste conversacional por voz */
.nexus-definition-editor .nexus-definition-dictation-field{margin-bottom:18px}
.nexus-definition-editor .nexus-editor-grid .nexus-definition-dictation-field{margin-bottom:0}
.nexus-definition-editor .nexus-definition-textarea{min-height:92px;resize:vertical;line-height:1.45;padding-right:118px}
.nexus-definition-editor .dictation-field:not(.dictation-field--textarea) .input-line{padding-right:118px}
.nexus-definition-editor .dictate-btn{min-width:96px}
@media (max-width:720px){
  .nexus-definition-editor .nexus-definition-textarea{padding-right:18px;padding-bottom:66px}
  .nexus-definition-editor .dictation-field:not(.dictation-field--textarea) .input-line{padding-right:18px;padding-bottom:62px}
}


/* V6.21 · Tarjeta Nexus: síntesis visible + informe completo interactivo */
.nexus-visual-card-stage{position:relative}
.nexus-report-tab{position:absolute;right:18px;top:18px;z-index:8;display:flex;align-items:center;gap:10px;border:1px solid rgba(145,220,255,.52);background:rgba(5,19,52,.70);color:#f2f8ff;border-radius:999px;padding:11px 16px;font:inherit;font-size:12px;letter-spacing:.08em;cursor:pointer;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);box-shadow:0 0 26px rgba(92,200,255,.12);transition:.25s ease}
.nexus-report-tab:hover{transform:translateY(-2px);border-color:rgba(192,153,255,.72);background:rgba(20,30,77,.85);box-shadow:0 0 34px rgba(132,111,255,.22)}
.nexus-report-tab span{font-size:16px;line-height:1}
.nexus-code-micro-label{display:block;min-height:22px;margin:2px auto 12px;color:#eff7ff;font-size:14px;font-weight:500;letter-spacing:.03em;text-align:center}
.nexus-code-summary-label{display:block;margin-top:12px;color:#9fdcf6}
.nexus-report-scrim{position:fixed;inset:0;z-index:220;background:rgba(2,8,24,.58);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.nexus-card--report{position:fixed!important;z-index:221!important;top:22px;right:22px;bottom:22px;width:min(760px,calc(100vw - 44px));max-height:none!important;margin:0!important;overflow:auto!important;border-radius:32px!important;box-shadow:-28px 0 100px rgba(0,0,0,.46),0 0 60px rgba(84,168,255,.15)!important;transform:translateX(12px);opacity:0;transition:transform .28s ease,opacity .28s ease}
.nexus-card--report.nexus-card--report-open{transform:translateX(0);opacity:1}
.nexus-report-close{position:sticky;float:right;top:12px;right:12px;z-index:10;width:42px;height:42px;border-radius:50%;border:1px solid rgba(175,218,255,.34);background:rgba(5,17,47,.84);color:#fff;font-size:26px;line-height:1;cursor:pointer;backdrop-filter:blur(12px)}
.nexus-report-heading{padding:8px 10px 22px;margin-bottom:4px;border-bottom:1px solid rgba(171,215,255,.22)}
.nexus-report-heading span{display:block;font-size:10px;letter-spacing:.18em;color:#91cfe9;margin-bottom:7px}.nexus-report-heading strong{font-size:18px;font-weight:400;color:#f4f8ff}
body.nexus-report-open{overflow:hidden}
@media(max-width:760px){.nexus-report-tab{right:10px;top:10px;padding:9px 12px}.nexus-card--report{top:10px;right:10px;bottom:10px;width:calc(100vw - 20px);border-radius:24px!important}}

/* V6.22 · Definición Nexus consolidada + lectura psicointuitiva previa */
.code-psychointuitive-block{margin-top:18px;border-color:rgba(178,143,255,.24);background:radial-gradient(circle at 0 0,rgba(136,91,255,.10),transparent 34%),rgba(7,18,46,.42)}
.code-psychointuitive-block .entity-prompt{margin-bottom:8px}
.code-psychointuitive-block .hint{margin-bottom:16px;line-height:1.5;color:rgba(218,233,255,.68)}
.nexus-definition-intro--consolidated{display:grid;grid-template-columns:minmax(220px,.72fr) minmax(360px,1.45fr) auto;align-items:center}
.nexus-definition-nameblock strong{font-size:clamp(42px,5vw,74px);font-weight:300;letter-spacing:.08em}
.nexus-definition-psychointuitive{padding-left:28px;border-left:1px solid rgba(151,215,255,.18)}
.nexus-definition-psychointuitive p{margin:8px 0 10px;color:rgba(231,240,255,.80);font-size:16px;font-style:italic;line-height:1.5}
.nexus-psychointuitive-chips{display:flex;flex-wrap:wrap;gap:8px;color:rgba(210,232,255,.78);font-size:12px}
.nexus-psychointuitive-chips span{display:inline-flex;padding:7px 10px;border:1px solid rgba(135,213,255,.18);border-radius:999px;background:rgba(8,24,58,.34)}
.nexus-definition-architecture--consolidated{text-align:center}
.nexus-architecture-summary{max-width:860px;margin:14px auto 0;color:rgba(229,238,255,.78);font-size:15px;line-height:1.55}
.nexus-consolidated-project{margin-top:20px;padding:24px 26px;border:1px solid rgba(134,216,255,.23);border-radius:26px;background:linear-gradient(135deg,rgba(8,30,65,.58),rgba(24,17,61,.44));display:grid;grid-template-columns:110px 1fr;gap:22px;align-items:center;box-shadow:inset 0 0 40px rgba(74,153,255,.05)}
.nexus-consolidated-project__orb{position:relative;width:92px;height:92px;border-radius:50%;display:grid;place-items:center;border:1px solid rgba(132,220,255,.42);box-shadow:0 0 34px rgba(83,193,255,.16),inset 0 0 34px rgba(169,105,255,.13)}
.nexus-consolidated-project__orb i{position:absolute;inset:12px;border:1px solid rgba(188,145,255,.40);border-radius:50% 45% 55% 48%;transform:rotate(32deg)}
.nexus-consolidated-project__orb b{font-size:24px;color:#fff;text-shadow:0 0 18px rgba(137,218,255,.58)}
.nexus-consolidated-project strong{display:block;margin:9px 0 7px;font-size:clamp(22px,2.4vw,34px);line-height:1.18;color:#f7fbff}
.nexus-consolidated-project p{margin:0;color:rgba(225,238,255,.74);font-size:15px;line-height:1.55}
@media(max-width:900px){.nexus-definition-intro--consolidated{grid-template-columns:1fr}.nexus-definition-psychointuitive{padding:18px 0 0;border-left:0;border-top:1px solid rgba(151,215,255,.18)}.nexus-definition-badge{justify-self:start}.nexus-consolidated-project{grid-template-columns:1fr}.nexus-consolidated-project__orb{width:76px;height:76px}}


/* =========================================================
   V6.24 · PRE-TARJETA NEXUS CONSOLIDADA
   ========================================================= */
.nexus-precard-divider{
  margin:28px 0 18px;
  padding:16px 18px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  border-top:1px solid rgba(151,215,255,.16);
  border-bottom:1px solid rgba(151,215,255,.16);
  color:rgba(214,236,255,.70);
  letter-spacing:.14em;
  font-size:10px;
}
.nexus-precard-divider strong{
  color:#f4f9ff;
  font-size:12px;
  font-weight:500;
  letter-spacing:.18em;
}
.nexus-definition-grid--precard{margin-top:0}
.nexus-code-projection{
  margin-top:16px;
  padding:22px 26px;
  border:1px solid rgba(210,144,255,.24);
  border-radius:24px;
  background:
    radial-gradient(circle at 8% 50%,rgba(156,102,255,.13),transparent 30%),
    linear-gradient(135deg,rgba(25,22,64,.48),rgba(7,26,58,.48));
}
.nexus-code-projection p{
  margin:9px 0 0;
  color:rgba(235,241,255,.86);
  font-size:16px;
  line-height:1.58;
}
.nexus-definition-lock-note{
  margin:18px 0 2px;
  display:flex;
  align-items:flex-start;
  gap:12px;
  padding:15px 18px;
  border-left:2px solid rgba(105,223,255,.52);
  border-radius:0 16px 16px 0;
  background:rgba(9,27,58,.28);
}
.nexus-definition-lock-note span{
  color:#bfefff;
  line-height:1.4;
  text-shadow:0 0 18px rgba(111,218,255,.4);
}
.nexus-definition-lock-note p{
  margin:0;
  color:rgba(220,235,255,.66);
  font-size:13px;
  line-height:1.5;
}
.nexus-precard-actions{
  justify-content:flex-end;
  margin-top:22px;
}
.nexus-code-grid--consolidated{
  grid-template-columns:1fr 1fr;
}
.nexus-code-grid--consolidated .nexus-code-panel{
  min-height:210px;
}
.nexus-code-grid--consolidated .nexus-code-panel:last-child{
  border-right:0;
}
.nexus-project-projection-bar{
  margin:0 10px 12px;
  display:flex;
  gap:15px;
  align-items:flex-start;
  padding:18px 22px;
  border:1px solid rgba(210,144,255,.27);
  border-radius:20px;
  background:linear-gradient(100deg,rgba(35,24,83,.60),rgba(12,40,79,.48));
}
.nexus-project-projection-bar p{
  margin:4px 0 0;
  color:#dce6f6;
  line-height:1.5;
}
@media(max-width:900px){
  .nexus-precard-divider{align-items:flex-start;flex-direction:column}
  .nexus-code-grid--consolidated{grid-template-columns:1fr}
  .nexus-code-grid--consolidated .nexus-code-panel{border-right:0;border-bottom:1px solid rgba(158,214,255,.20)}
  .nexus-code-grid--consolidated .nexus-code-panel:last-child{border-bottom:0}
}
@media(max-width:560px){
  .nexus-code-projection,.nexus-definition-lock-note{margin-left:0;margin-right:0}
  .nexus-project-projection-bar{margin-left:0;margin-right:0}
}


/* =========================================================
   V6.25 · INFORME NEXUS VISIBLE + APERTURA ROBUSTA
   ========================================================= */
/* V6.17 ocultaba el fallback HTML porque la tarjeta principal pasó a imagen.
   El Informe Completo reutiliza ese HTML, por lo que debe reaparecer al abrirse. */
.nexus-card--data-fallback.nexus-card--report-open{display:block!important}

/* =========================================================
   V6.26 · INFORME NEXUS · MODAL PANORÁMICO LEGIBLE
   El informe deja de comportarse como drawer estrecho. La tarjeta visual queda
   debajo como contexto; el backstage se abre como documento central independiente.
   ========================================================= */
.nexus-report-scrim{
  background:rgba(2,7,22,.68);
  backdrop-filter:blur(14px) saturate(.82);
  -webkit-backdrop-filter:blur(14px) saturate(.82);
}
.nexus-card--report{
  left:50%!important;
  right:auto!important;
  top:3vh!important;
  bottom:3vh!important;
  width:min(1120px,calc(100vw - 72px))!important;
  max-width:1120px!important;
  max-height:94vh!important;
  margin:0!important;
  padding:34px 38px 30px!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  border-radius:34px!important;
  transform:translate(-50%,14px) scale(.992)!important;
  opacity:0;
  box-shadow:0 36px 140px rgba(0,0,0,.62),0 0 80px rgba(84,168,255,.14)!important;
  transition:transform .30s cubic-bezier(.2,.8,.2,1),opacity .24s ease!important;
}
.nexus-card--report.nexus-card--report-open{
  transform:translate(-50%,0) scale(1)!important;
  opacity:1!important;
}
.nexus-card--report .nexus-report-close{
  position:sticky;
  top:4px;
  margin-left:auto;
  margin-bottom:-42px;
  float:none;
  display:grid;
  place-items:center;
  background:rgba(4,16,45,.92);
  box-shadow:0 8px 28px rgba(0,0,0,.26);
}
.nexus-card--report .nexus-report-heading{
  padding:2px 58px 22px 4px;
  margin:0 0 10px;
}
.nexus-card--report .nexus-report-heading strong{
  font-size:20px;
  line-height:1.35;
}
.nexus-card--report .nexus-card__topline{
  margin-top:4px;
}
.nexus-card--report .nexus-card__identity{
  grid-template-columns:240px minmax(0,1fr);
  gap:38px;
  align-items:center;
  padding:30px 10px 24px;
}
.nexus-card--report .nexus-identity-orb{
  width:220px;
  max-width:100%;
  justify-self:center;
}
.nexus-card--report .nexus-identity-orb p{
  left:18px;
  right:18px;
  bottom:16px;
  font-size:10px;
  line-height:1.4;
}
.nexus-card--report .nexus-identity-copy h2{
  font-size:clamp(48px,5.2vw,76px);
  overflow-wrap:anywhere;
}
.nexus-card--report .nexus-resonance-box strong{
  font-size:17px;
}
.nexus-card--report .nexus-resonance-phrase{
  font-size:19px;
  line-height:1.45;
}
.nexus-card--report .nexus-code-grid--consolidated{
  grid-template-columns:1fr 1fr;
  margin:10px 10px 16px;
}
.nexus-card--report .nexus-code-panel{
  min-height:0;
  padding:26px 30px 28px;
  text-align:left;
}
.nexus-card--report .nexus-number-group{
  justify-content:flex-start;
  min-height:76px;
  margin:10px 0 12px;
}
.nexus-card--report .nexus-num{
  width:62px;
  height:62px;
  font-size:27px;
}
.nexus-card--report .nexus-code-panel p{
  max-width:none;
  margin:8px 0 0;
  font-size:15px;
  line-height:1.62;
  color:#dce7f6;
}
.nexus-card--report .nexus-project-bar,
.nexus-card--report .nexus-project-projection-bar{
  padding:22px 26px;
}
.nexus-card--report .nexus-project-bar h3{
  font-size:32px;
  line-height:1.15;
}
.nexus-card--report .nexus-project-bar p,
.nexus-card--report .nexus-project-projection-bar p{
  font-size:15px;
  line-height:1.62;
}
.nexus-card--report .nexus-card__footer{
  margin-top:8px;
}
@media(max-width:900px){
  .nexus-card--report{
    top:12px!important;
    bottom:12px!important;
    width:calc(100vw - 24px)!important;
    max-height:calc(100vh - 24px)!important;
    padding:24px 20px!important;
    border-radius:24px!important;
  }
  .nexus-card--report .nexus-card__identity{
    grid-template-columns:1fr;
    gap:22px;
  }
  .nexus-card--report .nexus-identity-orb{width:min(220px,72vw)}
  .nexus-card--report .nexus-code-grid--consolidated{grid-template-columns:1fr}
  .nexus-card--report .nexus-code-panel{border-right:0;border-bottom:1px solid rgba(158,214,255,.20)}
  .nexus-card--report .nexus-code-panel:last-child{border-bottom:0}
}

/* =========================================================
   V6.27 · POSICIÓN DE REFERENCIA + SELLO NEXUS + ARCHIVO VIVO
   ========================================================= */

/* Informe: una sola escena visual. El scrim cubre TODO el viewport y el
   documento central deja de transparentar fondos competidores. */
.nexus-report-scrim{
  inset:0!important;
  background:rgba(3,8,24,.78)!important;
  backdrop-filter:blur(24px) saturate(.74)!important;
  -webkit-backdrop-filter:blur(24px) saturate(.74)!important;
}
.nexus-card--report{
  background:
    radial-gradient(1100px 620px at 82% 8%,rgba(88,68,180,.20),transparent 62%),
    radial-gradient(900px 520px at 8% 92%,rgba(29,117,177,.13),transparent 64%),
    linear-gradient(155deg,rgba(7,21,53,.985),rgba(8,28,61,.985) 52%,rgba(18,20,69,.985))!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
body.nexus-report-open #nexusVisualCardWrap{visibility:hidden!important}

/* Sello Nexus oficial V1 · activo independiente y reutilizable. */
.nexus-seal-stage{
  position:relative;
  width:220px;
  min-height:258px;
  justify-self:center;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  gap:8px;
  isolation:isolate;
}
.nexus-seal-stage__halo{
  position:absolute;
  width:210px;height:210px;border-radius:50%;
  background:radial-gradient(circle,rgba(151,102,255,.24),rgba(64,174,255,.08) 45%,transparent 72%);
  filter:blur(16px);z-index:-1;
}
.nexus-seal-stage__image{
  width:190px;height:190px;object-fit:contain;
  filter:drop-shadow(0 0 22px rgba(110,184,255,.22)) drop-shadow(0 0 34px rgba(164,105,255,.18));
}
.nexus-seal-stage>span{font-size:9px;letter-spacing:.22em;color:#dcecff;margin-top:2px}
.nexus-seal-stage>small{font-size:7px;letter-spacing:.16em;color:#8ea8c5}
.nexus-card--report .nexus-seal-stage{width:220px;min-height:240px}
.nexus-card--report .nexus-seal-stage__image{width:190px;height:190px}
.nexus-footer-seal{width:36px;height:36px;display:grid!important;place-items:center;margin-right:2px!important}
.nexus-footer-seal img{display:block;width:36px;height:36px;object-fit:contain;filter:drop-shadow(0 0 10px rgba(110,190,255,.22))}

/* Acciones Nexus funcionales en la previsualización. */
.nexus-preview-actions button{cursor:pointer!important;opacity:1!important;transition:.22s ease}
.nexus-preview-actions button:hover{transform:translateY(-2px);border-color:rgba(204,225,255,.62);box-shadow:0 8px 24px rgba(0,0,0,.16)}
.nexus-preview-actions button.is-active{
  border-color:rgba(190,150,255,.85)!important;
  background:linear-gradient(120deg,rgba(122,67,176,.82),rgba(43,112,184,.78))!important;
  box-shadow:0 0 0 1px rgba(192,159,255,.16),0 0 28px rgba(117,94,255,.18)!important;
}
.nexus-contribution-card{width:min(620px,92vw)}

/* Archivo Vivo: misma elegancia visual, pero con lectura completa. */
.archive-card{width:min(980px,94vw);max-height:88vh;padding:34px 38px}
.archive-current-snapshot{margin:20px 0 24px}
.archive-current-snapshot__head{padding:17px 19px;border:1px solid rgba(151,215,255,.22);border-radius:18px 18px 0 0;background:linear-gradient(120deg,rgba(15,47,91,.62),rgba(55,35,105,.42))}
.archive-current-snapshot__head span{display:block;font-size:8px;letter-spacing:.18em;color:#8edcf4;margin-bottom:6px}
.archive-current-snapshot__head strong{font-size:15px;font-weight:460;color:#f3f8ff}
.archive-snapshot{display:grid;gap:12px;padding:16px;border:1px solid rgba(155,214,255,.13);border-radius:16px;background:rgba(5,20,49,.42)}
.archive-snapshot--current{border-radius:0 0 18px 18px;border-top:0;background:rgba(4,18,45,.58)}
.archive-snapshot__section{padding:14px 16px;border:1px solid rgba(149,209,255,.10);border-radius:14px;background:rgba(8,27,60,.42)}
.archive-snapshot__section h3{margin:0 0 10px;font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:#a9dfff;font-weight:500}
.archive-snapshot__row{display:grid;grid-template-columns:minmax(150px,210px) 1fr;gap:16px;padding:8px 0;border-top:1px solid rgba(158,212,255,.08)}
.archive-snapshot__row:first-of-type{border-top:0}
.archive-snapshot__row span{font-size:9px;letter-spacing:.06em;color:#8ea8c6;line-height:1.45}
.archive-snapshot__row p{margin:0!important;font-size:12px!important;line-height:1.58!important;color:#e3edf9!important;white-space:pre-wrap}
.archive-entry{display:block;padding:0;overflow:hidden;background:rgba(10,30,62,.42)}
.archive-entry__toggle{width:100%;display:grid;grid-template-columns:1fr auto 26px;gap:12px;align-items:center;padding:15px 16px;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}
.archive-entry__toggle:hover{background:rgba(60,98,151,.10)}
.archive-entry__copy{min-width:0;display:block}
.archive-entry__copy strong{display:block;font-size:12px;font-weight:520;color:#f0f5ff}
.archive-entry__copy small{display:block;margin-top:5px;font-size:9px;color:#93aac8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.archive-entry__toggle time{font-size:9px;color:#91a7c4;white-space:nowrap}
.archive-entry__chevron{font-size:18px;font-weight:300;color:#8edcf4;text-align:center}
.archive-entry__detail{padding:0 14px 14px}
.archive-entry__detail .archive-snapshot{background:rgba(4,16,40,.54)}
.archive-legacy-note{margin:0;padding:14px;border-radius:12px;background:rgba(84,65,126,.18);color:#aebbd0;font-size:10px;line-height:1.5}

@media(max-width:760px){
  .archive-card{padding:26px 18px}
  .archive-snapshot__row{grid-template-columns:1fr;gap:5px}
  .archive-entry__toggle{grid-template-columns:1fr 22px}
  .archive-entry__toggle time{grid-column:1/-1;grid-row:2;font-size:8px}
  .archive-entry__chevron{grid-column:2;grid-row:1}
  .nexus-seal-stage{width:190px;min-height:220px}
  .nexus-seal-stage__image{width:165px;height:165px}
}
.nexus-visual-card-seal{position:absolute;left:22px;top:22px;z-index:9;width:58px;height:58px;object-fit:contain;padding:7px;border-radius:50%;background:rgba(4,16,45,.58);border:1px solid rgba(177,222,255,.28);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);filter:drop-shadow(0 0 14px rgba(117,179,255,.18));pointer-events:none}
@media(max-width:620px){.nexus-visual-card-seal{left:12px;top:12px;width:46px;height:46px;padding:6px}}
#nexusContributionModal{z-index:260}

/* =========================================================
   V6.28 · INFORME NEXUS · OVERLAY ÚNICO Y REAPERTURA LIMPIA
   Una sola superficie fullscreen contiene un único documento.
   ========================================================= */
.nexus-report-overlay[hidden]{display:none!important}
.nexus-report-overlay{
  position:fixed;
  inset:0;
  z-index:240;
  display:grid;
  place-items:center;
  padding:24px;
  overflow:hidden;
  isolation:isolate;
  background:rgba(2,7,22,.86);
  backdrop-filter:blur(24px) saturate(.76);
  -webkit-backdrop-filter:blur(24px) saturate(.76);
  opacity:0;
  pointer-events:none;
  transition:opacity .22s ease;
}
.nexus-report-overlay.is-open{opacity:1;pointer-events:auto}
.nexus-report-overlay .nexus-report-scrim{
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  width:100%;
  height:100%;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  cursor:default;
}
.nexus-report-overlay .nexus-card--report{
  position:relative!important;
  inset:auto!important;
  left:auto!important;
  right:auto!important;
  top:auto!important;
  bottom:auto!important;
  z-index:1!important;
  width:min(1120px,calc(100vw - 48px))!important;
  max-width:1120px!important;
  height:auto!important;
  max-height:calc(100dvh - 48px)!important;
  margin:0!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
  transform:translateY(14px) scale(.992)!important;
  opacity:0!important;
  border-radius:34px!important;
  background:linear-gradient(155deg,#071535,#081c3d 52%,#121445)!important;
  box-shadow:0 36px 140px rgba(0,0,0,.64),0 0 72px rgba(84,168,255,.13)!important;
  transition:transform .28s cubic-bezier(.2,.8,.2,1),opacity .22s ease!important;
}
.nexus-report-overlay .nexus-card--report.nexus-card--report-open{
  transform:translateY(0) scale(1)!important;
  opacity:1!important;
}
.nexus-card--report .nexus-card__aura{display:none!important}
body.nexus-report-open #nexusVisualCardWrap{visibility:hidden!important}

.nexus-seal-stage__image,
.nexus-footer-seal img,
.nexus-visual-card-seal{border-radius:50%}

@media(max-width:900px){
  .nexus-report-overlay{padding:12px}
  .nexus-report-overlay .nexus-card--report{
    width:calc(100vw - 24px)!important;
    max-height:calc(100dvh - 24px)!important;
    padding:24px 20px!important;
    border-radius:24px!important;
  }
}

/* Mantener el ancho de la revelación sobre las reglas históricas de Nexus. */
.nexus-visual-card-wrap{width:min(1180px,94vw);text-align:left}

/* =========================================================
   V6.36 · INFORME NEXUS · SELLO CENTRADO EN SU COLUMNA
   ========================================================= */
.nexus-report-overlay{
  position:fixed!important;
  inset:0!important;
  z-index:240!important;
  display:block;
  place-items:initial;
  padding:clamp(18px,3vh,32px) clamp(14px,3vw,48px)!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
  touch-action:pan-y;
  scrollbar-gutter:stable;
  background:rgba(2,7,19,.74)!important;
  backdrop-filter:blur(16px) saturate(.78)!important;
  -webkit-backdrop-filter:blur(16px) saturate(.78)!important;
}
.nexus-report-overlay .nexus-report-scrim{
  position:fixed!important;
  inset:0!important;
  width:100vw!important;
  height:100dvh!important;
  touch-action:pan-y;
}
.nexus-report-overlay .nexus-card--report{
  position:relative!important;
  inset:auto!important;
  width:min(1120px,calc(100vw - 48px))!important;
  max-width:1120px!important;
  height:auto!important;
  max-height:none!important;
  margin:0 auto!important;
  overflow:clip!important;
  transform:translateY(14px) scale(.992)!important;
  background:
    radial-gradient(1100px 620px at 82% 8%,rgba(88,68,180,.20),transparent 62%),
    radial-gradient(900px 520px at 8% 92%,rgba(29,117,177,.13),transparent 64%),
    linear-gradient(155deg,rgba(7,21,53,.97),rgba(8,28,61,.97) 52%,rgba(18,20,69,.97))!important;
  box-shadow:0 30px 110px rgba(0,0,0,.50),0 0 64px rgba(84,168,255,.11)!important;
  will-change:transform,opacity;
}
.nexus-report-overlay .nexus-card--report.nexus-card--report-open{
  transform:translateY(0) scale(1)!important;
}
.nexus-card--report .nexus-card__identity{
  display:grid!important;
  /* La banda original completa mide 322px (carril + antiguo gap). Usarla como
     una sola columna conserva el inicio del texto y centra el sello de verdad. */
  grid-template-columns:322px minmax(0,1fr)!important;
  column-gap:0!important;
  row-gap:0!important;
  align-items:center!important;
  padding-inline:0!important;
}
.nexus-card--report .nexus-seal-stage{
  position:relative!important;
  grid-column:1!important;
  box-sizing:border-box!important;
  width:100%!important;
  max-width:none!important;
  min-height:286px!important;
  margin:0!important;
  padding:0!important;
  inset:auto!important;
  transform:none!important;
  justify-self:stretch!important;
  align-self:center!important;
  align-items:center!important;
}
.nexus-card--report .nexus-seal-stage__halo{
  width:246px;
  height:246px;
  left:50%;
  top:50%;
  transform:translate(-50%,-56%);
}
.nexus-card--report .nexus-seal-stage__image{
  display:block;
  width:228px;
  height:228px;
  margin:0 auto;
  object-fit:contain;
  object-position:center;
}
.nexus-card--report .nexus-seal-stage>span,
.nexus-card--report .nexus-seal-stage>small{
  width:100%;
  text-align:center;
}

@media(max-width:900px){
  .nexus-report-overlay{
    padding:12px!important;
  }
  .nexus-report-overlay .nexus-card--report{
    width:calc(100vw - 24px)!important;
    max-height:none!important;
    margin:0 auto!important;
    overflow:clip!important;
  }
  .nexus-card--report .nexus-card__identity{
    grid-template-columns:minmax(0,1fr)!important;
    gap:20px!important;
    padding-inline:0!important;
  }
  .nexus-card--report .nexus-seal-stage{
    grid-column:1!important;
    width:100%!important;
    min-height:262px!important;
    margin:0!important;
    justify-self:stretch!important;
  }
  .nexus-card--report .nexus-seal-stage__image{
    width:min(228px,66vw);
    height:min(228px,66vw);
  }
}

/* V6.44 · Corrección estructural: una regla histórica conservaba max-width:62%.
   Se libera el marco y cada palabra del nombre permanece como unidad. */
.screen--final-integration .final-project-identity{
  width:min(900px,100%);
  max-width:none!important;
}
.screen--final-integration .final-project-identity>strong{
  font-size:clamp(38px,3.65vw,62px);
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:none;
}
@media(min-width:621px) and (max-width:1080px){
  .screen--final-integration .final-project-identity{
    width:min(900px,calc(100vw - 48px));
  }
  .screen--final-integration .final-project-identity>strong{
    font-size:clamp(44px,6.4vw,60px);
  }
}
@media(max-width:620px){
  .screen--final-integration .final-project-identity{
    width:calc(100vw - 32px);
  }
  .screen--final-integration .final-project-identity>strong{
    font-size:clamp(32px,9.5vw,46px);
  }
}
