:root{
  color-scheme:dark;
  --bg:#05070d;
  --bg-soft:#080c16;
  --panel:#0c1221;
  --panel-strong:#11192c;
  --ink:#f7f8fc;
  --muted:#a9b4ca;
  --faint:#6d7890;
  --cyan:#22d3ee;
  --magenta:#f71ea2;
  --violet:#8b5cf6;
  --green:#35e7a6;
  --warning:#ffd166;
  --danger:#ff587d;
  --line:rgba(169,180,202,.17);
  --line-strong:rgba(169,180,202,.32);
  --accent:#f71ea2;
  --accent2:#22d3ee;
  --sans:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --display:"Space Grotesk",Inter,system-ui,sans-serif;
  --mono:"Space Mono","SFMono-Regular",Consolas,monospace;
  --max:1180px;
  --header:68px;
  --tilt-x:0deg;
  --tilt-y:0deg;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:auto;background:var(--bg)}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:1rem;line-height:1.65;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-3;background:
  linear-gradient(rgba(34,211,238,.025) 1px,transparent 1px),
  linear-gradient(90deg,rgba(34,211,238,.025) 1px,transparent 1px),
  radial-gradient(circle at 12% 4%,rgba(34,211,238,.13),transparent 28rem),
  radial-gradient(circle at 92% 26%,rgba(247,30,162,.1),transparent 31rem),
  radial-gradient(circle at 48% 90%,rgba(139,92,246,.08),transparent 34rem);
  background-size:48px 48px,48px 48px,auto,auto,auto}
body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:-2;background:linear-gradient(90deg,rgba(5,7,13,.58),transparent 22%,transparent 78%,rgba(5,7,13,.58))}
a{color:inherit}
button,input,select,textarea{font:inherit}
button{color:inherit}
img{max-width:100%;display:block}
[hidden]{display:none!important}
::selection{background:rgba(247,30,162,.35);color:#fff}

:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}
.skip-link{position:fixed;left:1rem;top:-5rem;z-index:1000;background:#fff;color:#05070d;padding:.75rem 1rem;border-radius:.5rem;font-weight:800;text-decoration:none}
.skip-link:focus{top:1rem}
.page-progress{position:fixed;z-index:220;top:0;left:0;right:0;height:3px;background:rgba(255,255,255,.04)}
.page-progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--cyan),var(--violet),var(--magenta));box-shadow:0 0 18px rgba(34,211,238,.55)}

.site-header{position:fixed;top:3px;left:0;right:0;z-index:150;min-height:var(--header);padding:0 max(24px,calc((100vw - var(--max))/2));display:flex;align-items:center;gap:30px;background:rgba(5,7,13,.78);backdrop-filter:blur(20px);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-family:var(--display)}
.brand img{width:38px;height:30px;object-fit:contain;filter:drop-shadow(0 0 10px rgba(34,211,238,.34))}
.brand span{color:var(--cyan);font-weight:800;letter-spacing:0}
.brand b{font-size:.92rem}
.site-header nav{display:flex;align-items:center;gap:24px;margin-left:auto}
.site-header nav a{text-decoration:none;color:var(--muted);font-size:.8rem;font-weight:700}
.site-header nav a:hover{color:var(--ink)}
.header-cta{min-height:40px;padding:8px 16px;border:1px solid rgba(247,30,162,.48);border-radius:999px;text-decoration:none;font-size:.78rem;font-weight:900;display:inline-flex;align-items:center;background:rgba(247,30,162,.06)}

.scene{position:relative;min-height:100svh;padding:clamp(88px,10vh,112px) max(22px,calc((100vw - var(--max))/2));display:flex;align-items:center;border-bottom:1px solid var(--line);isolation:isolate;overflow:clip}
.scene::before{content:"";position:absolute;inset:0;z-index:-1;opacity:.55;background:radial-gradient(circle at 80% 50%,rgba(139,92,246,.07),transparent 32rem)}
.scene:nth-child(3n+2)::before{background:radial-gradient(circle at 15% 50%,rgba(34,211,238,.07),transparent 32rem)}
.scene:nth-child(3n)::before{background:radial-gradient(circle at 85% 50%,rgba(247,30,162,.065),transparent 32rem)}
.scene-inner{width:100%;max-width:var(--max);margin:0 auto;min-width:0}
.eyebrow{margin:0 0 16px;color:var(--accent);font:800 .7rem/1.4 var(--mono);letter-spacing:.19em;text-transform:uppercase}
h1,h2,h3{font-family:var(--display);text-wrap:balance}
h1,h2{margin:.1em 0 .3em;line-height:.96;letter-spacing:-.052em}
h1{font-size:clamp(3.35rem,7.5vw,7.1rem);max-width:980px}
h2{font-size:clamp(2.55rem,4vw,3.625rem);max-width:980px}
h3{line-height:1.12;letter-spacing:-.025em}
p{max-width:76ch}
.scene-lead{font-size:clamp(1.08rem,2vw,1.35rem);line-height:1.62;color:var(--muted);max-width:800px}
.gradient-text{background:linear-gradient(92deg,var(--cyan) 0,#fff 45%,#f9a8d4 70%,var(--magenta) 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.mini-label,.state-label{font:800 .65rem/1.4 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--cyan)}
kbd{font:700 .68rem var(--mono);border:1px solid var(--line-strong);border-bottom-width:2px;border-radius:5px;padding:2px 6px;background:#0b1020;color:var(--muted)}

.hero-scene{padding-top:calc(var(--header) + 58px);background:
  radial-gradient(circle at 12% 16%,rgba(34,211,238,.12),transparent 30rem),
  radial-gradient(circle at 88% 74%,rgba(247,30,162,.11),transparent 34rem)}
.hero-layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(430px,.95fr);gap:clamp(34px,5vw,80px);align-items:center}
.hero-copy{position:relative;z-index:2}
.hero-copy h1{font-size:clamp(3.4rem,6.4vw,6.4rem)}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:10px 21px;border-radius:12px;border:1px solid var(--line-strong);text-decoration:none;font-weight:900;transition:transform .2s ease,border-color .2s ease,background-color .2s ease}
.button:hover{transform:translateY(-2px);border-color:var(--cyan)}
.button.primary{color:#03050a;background-color:var(--cyan);background-image:linear-gradient(120deg,var(--cyan),#8f79ff 55%,var(--magenta));border:0;box-shadow:0 14px 36px rgba(34,211,238,.12)}
.button.secondary{background:rgba(12,18,33,.66)}
.button.youtube{border-color:rgba(255,62,62,.58);background:linear-gradient(120deg,rgba(255,0,0,.14),rgba(12,18,33,.82));color:#fff}
.button.youtube:hover{border-color:#ff4d4d;box-shadow:0 12px 32px rgba(255,0,0,.14)}
.live-strip{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:30px;padding:11px 14px;border:1px solid var(--line);border-radius:12px;background:rgba(12,18,33,.62);width:fit-content;color:var(--muted);font-size:.78rem}
.live-strip strong{color:var(--ink)}
.live-strip [data-countdown]{font-family:var(--mono);color:var(--cyan)}
.live-dot{width:8px;height:8px;border-radius:50%;background:var(--magenta);box-shadow:0 0 0 0 rgba(247,30,162,.5);animation:livePulse 2s ease-out infinite}
.hero-flow{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:22px;color:var(--muted);font:700 .65rem var(--mono);text-transform:uppercase;letter-spacing:.05em}
.hero-flow span{display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid var(--line);border-radius:999px;background:rgba(9,14,26,.72)}
.hero-flow b{display:grid;place-items:center;width:20px;aspect-ratio:1;border-radius:50%;background:rgba(34,211,238,.12);color:var(--cyan)}
.hero-flow i{color:var(--magenta);font-style:normal}

.orbit-shell{position:relative;min-width:0;perspective:1100px}
.orbit-caption{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:12px;color:var(--muted);font-size:.75rem}
.orbit-caption span{font:700 .65rem var(--mono);color:var(--magenta);text-transform:uppercase;letter-spacing:.1em}
.orbit-stage{position:relative;aspect-ratio:1.22;max-height:610px;isolation:isolate;transform-style:preserve-3d;transform:rotateX(calc(3deg + var(--tilt-y))) rotateY(var(--tilt-x));transition:transform .18s ease-out;border:1px solid rgba(34,211,238,.18);border-radius:34px;background:radial-gradient(circle at center,rgba(34,211,238,.15),transparent 23%),radial-gradient(circle at 80% 16%,rgba(139,92,246,.1),transparent 27%),linear-gradient(145deg,rgba(12,18,33,.9),rgba(3,5,10,.98));box-shadow:0 36px 100px rgba(0,0,0,.48),inset 0 0 90px rgba(34,211,238,.035);overflow:hidden}
.orbit-grid{position:absolute;inset:0;background:linear-gradient(rgba(34,211,238,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(34,211,238,.055) 1px,transparent 1px);background-size:36px 36px;mask-image:radial-gradient(circle at center,#000 18%,transparent 78%);transform:translateZ(-50px)}
.orbit-ring{position:absolute;left:50%;top:50%;border:1px solid rgba(34,211,238,.24);border-radius:50%;transform-style:preserve-3d;pointer-events:none}
.ring-one{width:62%;height:48%;transform:translate(-50%,-50%) rotateX(67deg) rotateZ(12deg);box-shadow:0 0 24px rgba(34,211,238,.1)}
.ring-two{width:82%;height:61%;border-color:rgba(247,30,162,.18);transform:translate(-50%,-50%) rotateX(69deg) rotateZ(-24deg)}
.ring-three{width:92%;height:72%;border-color:rgba(139,92,246,.16);transform:translate(-50%,-50%) rotateX(72deg) rotateZ(34deg)}
.orbit-connections{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;transform:translateZ(10px)}
.orbit-connections line{stroke:rgba(34,211,238,.25);stroke-width:1.25;stroke-dasharray:8 11;animation:wireFlow 5s linear infinite;transition:stroke .22s,stroke-width .22s,opacity .22s;opacity:.52}
.orbit-connections line:nth-child(3n+2){stroke:rgba(139,92,246,.26);animation-direction:reverse}
.orbit-connections line:nth-child(3n){stroke:rgba(247,30,162,.22)}
.orbit-connections line.is-active{stroke:var(--cyan);stroke-width:2.8;opacity:1;filter:drop-shadow(0 0 8px rgba(34,211,238,.8))}
.orbit-pulse{position:absolute;left:50%;top:50%;width:205px;aspect-ratio:1;border:1px solid rgba(34,211,238,.26);border-radius:50%;transform:translate(-50%,-50%) translateZ(42px);box-shadow:0 0 42px rgba(34,211,238,.09);animation:orbitPulse 3.2s ease-out infinite;pointer-events:none}
.orbit-core{position:absolute;z-index:40;left:50%;top:50%;width:164px;aspect-ratio:1;transform:translate(-50%,-50%) translateZ(72px);border:1px solid rgba(34,211,238,.62);border-radius:50%;display:grid;place-content:center;justify-items:center;text-align:center;color:var(--ink);cursor:pointer;background:radial-gradient(circle at 35% 24%,rgba(41,114,133,.94),#07131e 52%,#030509 76%);box-shadow:0 0 58px rgba(34,211,238,.3),inset 0 0 34px rgba(34,211,238,.16);animation:coreFloat 5s ease-in-out infinite}
.orbit-core::after{content:"";position:absolute;inset:-14px;border:1px dashed rgba(247,30,162,.35);border-radius:50%;animation:haloSpin 18s linear infinite}
.orbit-core .core-logo{position:relative;display:grid;place-items:center;width:58px;aspect-ratio:1;transform:rotateX(10deg) rotateY(-12deg);transform-style:preserve-3d}
.orbit-core .core-logo::before,.orbit-core .core-logo::after{content:"";position:absolute;inset:4px;border-radius:18px;background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(177,244,255,.78));box-shadow:0 12px 26px rgba(0,0,0,.36),0 0 25px rgba(34,211,238,.36);transform:translateZ(-7px) translate(5px,7px);opacity:.6}
.orbit-core .core-logo::after{transform:translateZ(-13px) translate(9px,12px);opacity:.24}
.core-logo-face{position:relative;z-index:2;display:grid;place-items:center;width:50px;aspect-ratio:1;border:1px solid rgba(255,255,255,.76);border-radius:16px;background:linear-gradient(145deg,#fff 8%,#c8f8ff 56%,#8de1ee);box-shadow:inset -7px -9px 16px rgba(5,45,56,.18),inset 6px 6px 13px rgba(255,255,255,.9),0 10px 25px rgba(0,0,0,.32)}
.orbit-core .core-logo img{width:31px;height:31px;object-fit:contain;filter:brightness(0) saturate(100%)}
.orbit-core strong{margin-top:7px;font:900 1.02rem var(--display)}
.orbit-core b{margin-top:2px;font:800 .65rem var(--mono);letter-spacing:.2em;color:var(--cyan)}
.orbit-core small{margin-top:3px;color:var(--muted);font:.51rem var(--mono);text-transform:uppercase}
.orbit-node{--fallback-x:50%;--fallback-y:50%;position:absolute;z-index:4;left:var(--fallback-x);top:var(--fallback-y);width:78px;min-width:0;aspect-ratio:1;padding:9px;border:1px solid rgba(255,255,255,.16);border-radius:18px;display:grid;place-content:center;justify-items:center;gap:5px;color:var(--ink);cursor:pointer;background:linear-gradient(145deg,rgba(18,26,45,.98),rgba(5,8,15,.96));box-shadow:0 15px 34px rgba(0,0,0,.4),inset 0 1px rgba(255,255,255,.045);text-align:center;transform:translate(-50%,-50%) translateZ(32px);transition:border-color .2s,box-shadow .2s,filter .2s;will-change:transform}
.orbit-node:hover,.orbit-node:focus-visible,.orbit-node.is-active{border-color:var(--cyan);box-shadow:0 0 0 3px rgba(34,211,238,.1),0 18px 38px rgba(0,0,0,.45),0 0 22px rgba(34,211,238,.16)}
.orbit-node.is-active{filter:brightness(1.16)}
.orbit-node img{width:31px;height:31px;object-fit:contain;filter:drop-shadow(0 4px 7px rgba(0,0,0,.32))}
.orbit-node span{display:block;max-width:68px;overflow:hidden;text-overflow:ellipsis;font:800 .57rem/1 var(--display);white-space:nowrap}
.app-gmail{--fallback-x:15%;--fallback-y:19%}.app-shopify{--fallback-x:42%;--fallback-y:11%}.app-drive{--fallback-x:77%;--fallback-y:18%}.app-slack{--fallback-x:88%;--fallback-y:48%}.app-notion{--fallback-x:79%;--fallback-y:80%}.app-github{--fallback-x:50%;--fallback-y:89%}.app-supabase{--fallback-x:20%;--fallback-y:81%}.app-n8n{--fallback-x:9%;--fallback-y:51%}.app-wordpress{--fallback-x:31%;--fallback-y:29%}
html:not(.no-js) .orbit-node{left:0;top:0}
.orbit-inspector{display:grid;grid-template-columns:minmax(130px,.55fr) minmax(190px,1fr);gap:9px 18px;margin-top:12px;padding:15px 17px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(115deg,rgba(12,18,33,.88),rgba(7,10,19,.78));box-shadow:0 16px 34px rgba(0,0,0,.2)}
.orbit-inspector>div:first-child{grid-row:1/3}
.orbit-inspector span{display:block;color:var(--magenta);font:700 .55rem var(--mono);text-transform:uppercase;letter-spacing:.08em}
.orbit-inspector h3{margin:.25rem 0 0;font-size:1.17rem}
.orbit-inspector>p{margin:0;color:var(--muted);font-size:.73rem;line-height:1.45}
.orbit-inspector dl{display:flex;gap:8px 18px;flex-wrap:wrap;margin:0}
.orbit-inspector dl div{display:grid;gap:2px}
.orbit-inspector dt{color:var(--faint);font:700 .52rem var(--mono);text-transform:uppercase}
.orbit-inspector dd{margin:0;color:var(--ink);font-size:.69rem;font-weight:800}
.orbit-note{margin:10px 0 0;color:var(--faint);font:.62rem/1.5 var(--mono);text-align:center;max-width:none}

.before-after{display:grid;grid-template-columns:1fr auto 1fr;gap:20px;align-items:stretch;margin-top:40px}
.before-state,.after-state{padding:clamp(24px,4vw,42px);border:1px solid var(--line);border-radius:24px;background:linear-gradient(145deg,rgba(17,25,44,.86),rgba(7,10,19,.84))}
.before-state{filter:saturate(.72)}
.before-state h3,.after-state h3{font-size:clamp(1.7rem,3vw,2.7rem);margin:.45rem 0 1rem}
.before-state p,.after-state p{color:var(--muted)}
.state-arrow{align-self:center;color:var(--cyan);font:900 2.2rem var(--mono)}
.loose-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:22px 0}
.loose-tabs span{padding:8px 12px;border:1px solid var(--line);border-radius:999px;color:var(--faint);font:.68rem var(--mono);transform:rotate(var(--r,0deg))}
.loose-tabs span:nth-child(2){--r:2deg}.loose-tabs span:nth-child(4){--r:-2deg}
.controlled-route{display:flex;align-items:center;gap:6px;margin:23px 0;overflow:auto;padding-bottom:5px}
.controlled-route span{min-width:max-content;border:1px solid rgba(34,211,238,.28);border-radius:8px;padding:8px;color:var(--ink);font:700 .62rem var(--mono)}
.controlled-route i{width:22px;height:1px;background:linear-gradient(90deg,var(--cyan),var(--magenta));flex:0 0 22px}
.teaching-callout{margin-top:26px;padding:19px 22px;border-left:4px solid var(--cyan);background:rgba(34,211,238,.055);color:var(--muted)}
.teaching-callout strong{color:var(--ink)}
.teaching-callout.warning{border-color:var(--warning);background:rgba(255,209,102,.055)}

.outcome-path{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr;gap:10px;align-items:center;margin-top:44px}
.outcome-path article{min-height:210px;padding:22px 20px;border-top:2px solid var(--cyan);background:linear-gradient(180deg,rgba(34,211,238,.07),rgba(12,18,33,.75));border-radius:0 0 16px 16px}
.outcome-path article:nth-of-type(even){border-color:var(--magenta);background:linear-gradient(180deg,rgba(247,30,162,.07),rgba(12,18,33,.75))}
.outcome-path article span{font:800 .65rem var(--mono);color:var(--cyan)}
.outcome-path article b{display:block;font:800 1.15rem var(--display);margin-top:18px}
.outcome-path article p{color:var(--muted);font-size:.85rem;line-height:1.5}
.outcome-path>i{width:22px;height:1px;background:var(--line-strong)}
.artifact-preview{margin-top:20px;display:grid;grid-template-columns:.8fr 1.4fr;gap:18px 32px;align-items:center;padding:26px;border:1px solid rgba(247,30,162,.27);border-radius:20px;background:linear-gradient(125deg,rgba(247,30,162,.07),rgba(12,18,33,.78))}
.artifact-preview h3{margin:.25rem 0;font-size:1.45rem}
.artifact-preview code{padding:15px;border-radius:10px;background:#05070d;color:#c9f8ff;font:.72rem/1.7 var(--mono);overflow-wrap:anywhere}
.artifact-preview p{grid-column:1/-1;margin:0;color:var(--muted)}

.concept-console{display:grid;grid-template-columns:260px 1fr;gap:20px;margin-top:38px;min-height:420px}
.concept-buttons{display:grid;gap:8px}
.concept-buttons button{width:100%;padding:15px 17px;text-align:left;border:1px solid var(--line);border-radius:11px;background:rgba(12,18,33,.76);cursor:pointer;font-weight:800;transition:border-color .2s,transform .2s}
.concept-buttons button:hover{transform:translateX(3px)}
.concept-buttons button[aria-selected="true"]{border-color:var(--cyan);color:var(--cyan);background:rgba(34,211,238,.08)}
.concept-output{position:relative;display:grid;align-content:center;padding:clamp(28px,6vw,70px);border:1px solid var(--line);border-radius:26px;background:
  linear-gradient(135deg,rgba(34,211,238,.08),transparent 38%),linear-gradient(315deg,rgba(247,30,162,.07),transparent 45%),var(--panel);overflow:hidden}
.concept-output::after{content:"";position:absolute;right:-80px;bottom:-80px;width:250px;aspect-ratio:1;border:1px solid rgba(34,211,238,.18);border-radius:50%;box-shadow:0 0 0 35px rgba(34,211,238,.025),0 0 0 70px rgba(247,30,162,.018)}
.concept-output>span{font:800 .68rem var(--mono);color:var(--magenta);text-transform:uppercase;letter-spacing:.12em}
.concept-output h3{font-size:clamp(2rem,4vw,4rem);margin:.35em 0 .2em}
.concept-output>p{font-size:1.1rem;color:var(--muted);max-width:60ch}
.concept-output>div{margin-top:22px;padding:16px 18px;border-left:3px solid var(--cyan);background:rgba(5,7,13,.55)}
.concept-output>div p{margin:.25rem 0 0;color:var(--muted)}
.source-note{margin:20px 0 0;color:var(--faint);font:.68rem/1.6 var(--mono);max-width:100ch}

.topology-layout{display:grid;grid-template-columns:minmax(0,.85fr) minmax(500px,1.15fr);gap:clamp(30px,6vw,80px);align-items:center}
.topology-switch{display:flex;gap:8px;flex-wrap:wrap;margin-top:26px}
.topology-switch button,.radar-toolbar button{border:1px solid var(--line);border-radius:999px;background:rgba(12,18,33,.8);padding:9px 13px;cursor:pointer;font:800 .66rem var(--mono)}
.topology-switch button[aria-pressed="true"],.radar-toolbar button[aria-pressed="true"]{border-color:var(--cyan);color:var(--cyan);background:rgba(34,211,238,.08)}
.topology-explanation{margin-top:18px;padding:18px;border-left:3px solid var(--magenta);background:rgba(247,30,162,.05)}
.topology-explanation strong{font-family:var(--display);font-size:1.2rem}
.topology-explanation p{margin:.35rem 0 0;color:var(--muted)}
.topology-model{position:relative;height:610px;perspective:1100px;transform-style:preserve-3d;transform:rotateX(7deg) rotateY(-8deg);transition:transform .5s ease}
.topology-floor{position:absolute;left:5%;right:5%;bottom:2%;height:58%;border:1px solid rgba(34,211,238,.16);background:linear-gradient(rgba(34,211,238,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(34,211,238,.07) 1px,transparent 1px);background-size:32px 32px;transform:rotateX(68deg);transform-origin:bottom;mask-image:linear-gradient(to top,#000,transparent 90%)}
.topology-layer{position:absolute;left:50%;width:min(82%,520px);min-height:92px;padding:17px 22px;border:1px solid var(--line-strong);border-radius:15px;background:rgba(9,14,26,.93);box-shadow:0 24px 50px rgba(0,0,0,.34);transform-style:preserve-3d;transition:opacity .45s,transform .55s,border-color .45s,filter .45s}
.topology-layer>span{float:left;margin-right:15px;font:800 .65rem var(--mono);color:var(--cyan)}
.topology-layer b{display:block;font:800 1rem var(--display)}
.topology-layer small{color:var(--muted)}
.layer-client{top:4%;transform:translateX(-50%) translateZ(110px)}
.layer-plugin{top:22%;transform:translateX(-50%) translateZ(75px)}
.layer-mcp{top:40%;transform:translateX(-50%) translateZ(40px)}
.layer-provider{top:58%;transform:translateX(-50%) translateZ(5px)}
.layer-receipt{top:76%;transform:translateX(-50%) translateZ(-30px)}
.topology-beam{position:absolute;left:50%;top:11%;height:74%;width:4px;transform:translateX(-50%) translateZ(125px);background:linear-gradient(var(--cyan),var(--violet),var(--magenta));box-shadow:0 0 25px rgba(34,211,238,.45);opacity:.35}
.topology-model[data-topology-model="package"] .layer-mcp,.topology-model[data-topology-model="package"] .layer-provider,.topology-model[data-topology-model="package"] .layer-receipt{opacity:.18;filter:grayscale(1);transform:translateX(-50%) translateZ(-70px)}
.topology-model[data-topology-model="connection"] .layer-receipt{opacity:.2;filter:grayscale(1)}
.topology-model[data-topology-model="connection"] .layer-mcp,.topology-model[data-topology-model="connection"] .layer-provider{border-color:rgba(34,211,238,.6)}
.topology-model[data-topology-model="authorized"] .topology-layer{border-color:rgba(53,231,166,.42)}
.topology-model[data-topology-model="authorized"] .topology-beam{opacity:1;animation:beamPulse 2.4s ease-in-out infinite}

.permission-lab{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(330px,.9fr);gap:28px;margin-top:40px;align-items:stretch}
.permission-stairs{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;align-items:end}
.permission-stairs button{position:relative;display:grid;align-content:end;min-height:190px;padding:18px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(180deg,rgba(17,25,44,.88),rgba(7,10,19,.94));text-align:left;cursor:pointer;transition:transform .25s,border-color .25s,background .25s}
.permission-stairs button:nth-child(2){min-height:235px}.permission-stairs button:nth-child(3){min-height:280px}.permission-stairs button:nth-child(4){min-height:325px}
.permission-stairs button:hover{transform:translateY(-4px)}
.permission-stairs button.is-active{border-color:var(--cyan);background:linear-gradient(180deg,rgba(34,211,238,.12),rgba(7,10,19,.94));box-shadow:inset 0 2px 0 var(--cyan)}
.permission-stairs button>span{position:absolute;top:14px;right:14px;font:900 2.3rem var(--display);color:rgba(255,255,255,.08)}
.permission-stairs button b{font-family:var(--display);font-size:1.05rem}
.permission-stairs button small{color:var(--faint)}
.permission-dashboard{padding:28px;border:1px solid var(--line);border-radius:22px;background:var(--panel)}
.risk-gauge>span{font:800 .65rem var(--mono);color:var(--faint);text-transform:uppercase}
.risk-gauge>div{height:8px;margin:9px 0;background:#05070d;border-radius:999px;overflow:hidden}
.risk-gauge i{display:block;width:22%;height:100%;background:linear-gradient(90deg,var(--green),var(--warning),var(--danger));border-radius:inherit;transition:width .35s ease}
.risk-gauge>b{font:800 .72rem var(--mono);color:var(--green)}
.permission-dashboard h3{font-size:clamp(1.7rem,3vw,2.5rem);margin:1.1em 0 .35em}
.permission-dashboard>p{color:var(--muted)}
.permission-dashboard dl{margin:24px 0 0;display:grid;gap:12px}
.permission-dashboard dl div{padding-top:12px;border-top:1px solid var(--line)}
.permission-dashboard dt{font:800 .64rem var(--mono);color:var(--cyan);text-transform:uppercase}
.permission-dashboard dd{margin:5px 0 0;color:var(--muted);font-size:.88rem}

.connection-waves{display:grid;gap:12px;margin-top:38px}
.wave{display:grid;grid-template-columns:90px 1fr 160px;gap:24px;align-items:center;padding:24px 26px;border:1px solid var(--line);border-radius:18px;background:rgba(12,18,33,.75);transition:transform .25s,border-color .25s}
.wave:hover{transform:translateX(5px)}
.wave-index{display:grid;text-align:center;border-right:1px solid var(--line)}
.wave-index span{font:800 .58rem var(--mono);color:var(--faint)}
.wave-index b{font:900 2.3rem var(--display);color:var(--cyan)}
.wave h3{margin:.25rem 0;font-size:1.35rem}
.wave p{margin:.45rem 0 0;color:var(--muted)}
.wave-apps{display:flex;gap:7px;flex-wrap:wrap;margin-top:11px}
.wave-apps span{display:inline-flex;align-items:center;gap:6px;min-height:31px;padding:5px 9px;border:1px solid var(--line);border-radius:999px;background:rgba(5,7,13,.68);font:800 .59rem var(--mono)}
.wave-apps img{width:19px;height:19px;object-fit:contain}
.wave-apps .text-app{color:var(--cyan);letter-spacing:.05em}
.wave p.wave-outcome{margin-top:10px;font-size:.8rem}
.wave-rule{justify-self:end;color:var(--faint);font:.65rem/1.7 var(--mono);text-align:right;text-transform:uppercase}
.wave.later .wave-index b{color:var(--violet)}
.wave.gated .wave-index b{color:var(--magenta)}

.radar-toolbar{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-top:30px}
.radar-toolbar>div{display:flex;flex-wrap:wrap;gap:8px}
.radar-toolbar>p{margin:0;color:var(--faint);font:700 .68rem var(--mono);white-space:nowrap}
.radar-toolbar>p strong{color:var(--cyan)}
.app-radar{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:22px}
.app-radar article{position:relative;display:grid;grid-template-columns:52px 1fr auto;gap:14px;align-items:center;padding:17px 18px;border:1px solid var(--line);border-radius:15px;background:rgba(12,18,33,.76);transition:opacity .25s,transform .25s,border-color .25s}
.app-radar article:hover{border-color:var(--line-strong);transform:translateY(-2px)}
.app-logo{width:46px;aspect-ratio:1;display:grid;place-content:center;border-radius:12px;border:1px solid rgba(34,211,238,.28);background:linear-gradient(145deg,rgba(255,255,255,.1),rgba(34,211,238,.06));box-shadow:inset 0 1px rgba(255,255,255,.08)}
.app-logo img{width:30px;height:30px;object-fit:contain;filter:drop-shadow(0 5px 8px rgba(0,0,0,.32))}
.app-radar article b{display:block;font-family:var(--display)}
.app-radar article small{display:block;color:var(--faint)}
.app-radar article em{font:700 .58rem var(--mono);font-style:normal;text-transform:uppercase;color:var(--magenta);text-align:right}
.app-radar article p{grid-column:2/-1;margin:0;color:var(--muted);font-size:.82rem;line-height:1.45}

.signature-scene::before{background:radial-gradient(circle at 50% 50%,rgba(34,211,238,.085),transparent 38rem)}
.connection-lab{display:grid;grid-template-columns:310px 1fr;gap:18px;margin-top:34px}
.lab-controls{grid-row:span 2;display:grid;gap:12px;align-content:start}
.lab-controls fieldset{margin:0;padding:15px;border:1px solid var(--line);border-radius:15px;background:rgba(12,18,33,.78)}
.lab-controls legend{padding:0 6px;font:800 .62rem var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--cyan)}
.lab-controls button{width:100%;margin-top:6px;padding:9px 11px;border:1px solid transparent;border-radius:8px;background:#080c16;text-align:left;cursor:pointer;color:var(--muted);font-size:.78rem}
.lab-controls button[aria-pressed="true"]{border-color:var(--magenta);color:var(--ink);background:rgba(247,30,162,.08)}
.lab-visual{padding:24px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(150deg,rgba(34,211,238,.06),rgba(12,18,33,.88))}
.lab-risk{display:grid;grid-template-columns:1fr auto;gap:8px 16px;align-items:center}
.lab-risk>span{font:800 .64rem var(--mono);color:var(--faint);text-transform:uppercase}
.lab-risk>strong{font:800 .72rem var(--mono);color:var(--green)}
.lab-risk>div{grid-column:1/-1;height:7px;background:#05070d;border-radius:999px;overflow:hidden}
.lab-risk i{display:block;height:100%;background:linear-gradient(90deg,var(--green),var(--warning) 55%,var(--danger));transition:width .4s ease}
.lab-route{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr auto 1fr;gap:7px;align-items:center;margin:26px 0 20px}
.lab-route>div{min-height:112px;padding:13px 10px;border:1px solid var(--line);border-radius:12px;background:rgba(5,7,13,.68);transition:border-color .25s,transform .25s}
.lab-route>div:hover{border-color:var(--cyan);transform:translateY(-2px)}
.lab-route>div span{font:800 .56rem var(--mono);color:var(--cyan)}
.lab-route>div b{display:block;font:800 .8rem var(--display);margin-top:12px}
.lab-route>div small{display:block;color:var(--faint);font-size:.62rem;line-height:1.35;margin-top:4px}
.lab-route>i{width:12px;height:1px;background:linear-gradient(90deg,var(--cyan),var(--magenta))}
.lab-verdict{padding:16px;border-left:3px solid var(--green);background:rgba(53,231,166,.05)}
.lab-verdict>span{font:800 .6rem var(--mono);color:var(--green);text-transform:uppercase}
.lab-verdict h3{margin:.3rem 0;font-size:1.25rem}
.lab-verdict p{margin:0;color:var(--muted);font-size:.85rem}
.contract-output{grid-column:2;padding:22px;border:1px solid rgba(247,30,162,.28);border-radius:20px;background:rgba(12,18,33,.9)}
.contract-head{display:flex;justify-content:space-between;align-items:center;gap:16px}
.contract-head h3{margin:.25rem 0;font-size:1.35rem}
.contract-head>div:last-child{display:flex;gap:8px}
.contract-head button,.quiz-next,.quiz-result button,.request-journey>button{border:1px solid var(--line-strong);border-radius:10px;background:#080c16;color:var(--ink);padding:9px 13px;cursor:pointer;font:800 .65rem var(--mono)}
.contract-head button:hover{border-color:var(--cyan)}
.contract-output pre{max-height:190px;overflow:auto;white-space:pre-wrap;margin:16px 0 0;padding:17px;border-radius:12px;background:#04060b;color:#c9f8ff;font:400 .7rem/1.65 var(--mono)}
.contract-output>p{min-height:1.4em;margin:.5rem 0 0;color:var(--green);font-size:.72rem}

.request-journey{margin-top:38px;padding:30px;border:1px solid var(--line);border-radius:24px;background:rgba(12,18,33,.78)}
.journey-line{position:relative;display:grid;grid-template-columns:repeat(11,auto);gap:8px;align-items:center;overflow-x:auto;padding:8px 0 18px}
.journey-line article{position:relative;z-index:2;width:150px;min-height:140px;padding:16px;border:1px solid var(--line);border-radius:14px;background:#080c16}
.journey-line article span{font:800 .58rem var(--mono);color:var(--cyan)}
.journey-line article b{display:block;margin-top:13px;font-family:var(--display)}
.journey-line article p{margin:.35rem 0 0;color:var(--faint);font-size:.75rem;line-height:1.4}
.journey-line>i{width:18px;height:1px;background:var(--line-strong)}
.journey-pulse{position:absolute;z-index:3;left:12px;top:62px;width:12px;height:12px;border-radius:50%;background:var(--cyan);box-shadow:0 0 20px var(--cyan);opacity:0;pointer-events:none}
.request-journey.is-running .journey-pulse{opacity:1;animation:journeyMove 5.5s ease-in-out infinite}
.request-journey>button{margin-top:8px}
.route-anatomy{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:16px}
.route-anatomy>div{padding:18px;border-top:2px solid var(--cyan);background:rgba(12,18,33,.64)}
.route-anatomy>div:nth-child(2){border-color:var(--violet)}.route-anatomy>div:nth-child(3){border-color:var(--magenta)}
.route-anatomy span{font:800 .6rem var(--mono);color:var(--faint);text-transform:uppercase}
.route-anatomy b{display:block;font-family:var(--display);margin-top:8px}
.route-anatomy p{margin:.35rem 0 0;color:var(--muted);font-size:.82rem}

.evidence-console{display:grid;grid-template-columns:220px 1fr;gap:16px;margin-top:34px}
.evidence-levels{display:grid;gap:8px}
.evidence-levels button{padding:17px;border:1px solid var(--line);border-radius:11px;background:rgba(12,18,33,.78);text-align:left;cursor:pointer;font-weight:800}
.evidence-levels button[aria-selected="true"]{border-color:var(--green);color:var(--green);background:rgba(53,231,166,.07)}
.evidence-screen{position:relative;display:grid;align-content:center;min-height:360px;padding:clamp(28px,6vw,70px);border:1px solid var(--line);border-radius:24px;background:#060a12;overflow:hidden}
.evidence-screen::before{content:"";position:absolute;inset:0;background:linear-gradient(rgba(53,231,166,.035) 1px,transparent 1px);background-size:100% 5px;pointer-events:none}
.screen-state{font:800 .62rem var(--mono);color:var(--green);letter-spacing:.12em}
.evidence-screen h3{font-size:clamp(2.2rem,5vw,4.7rem);margin:.35rem 0}
.evidence-screen p{color:var(--muted);font-size:1.08rem}
.evidence-screen code{display:block;margin-top:18px;padding:15px;border-left:3px solid var(--green);background:rgba(53,231,166,.05);color:#c8ffe9;font:.72rem/1.6 var(--mono)}

.failure-lanes{display:grid;gap:8px;margin-top:34px}
.failure-lanes article{display:grid;grid-template-columns:170px 1.05fr 1.35fr 140px;gap:18px;align-items:center;padding:17px 20px;border:1px solid var(--line);border-radius:12px;background:rgba(12,18,33,.7)}
.failure-lanes article>span{font:800 .6rem var(--mono);color:var(--danger)}
.failure-lanes article>b{font:800 .92rem/1.35 var(--display)}
.failure-lanes article>p{margin:0;color:var(--muted);font-size:.8rem;line-height:1.45}
.failure-lanes article>em{justify-self:end;color:var(--warning);font:700 .58rem var(--mono);font-style:normal;text-transform:uppercase;text-align:right}

.workshop-timeline{position:relative;display:grid;gap:12px;margin-top:35px;padding-left:110px}
.workshop-timeline::before{content:"";position:absolute;left:74px;top:12px;bottom:12px;width:2px;background:linear-gradient(var(--cyan),var(--violet),var(--magenta))}
.workshop-timeline article{position:relative;display:grid;grid-template-columns:110px 1fr;gap:20px;padding:18px 22px;border:1px solid var(--line);border-radius:15px;background:rgba(12,18,33,.72)}
.workshop-timeline article::before{content:"";position:absolute;left:-43px;top:50%;width:12px;height:12px;border:2px solid var(--cyan);border-radius:50%;background:var(--bg);transform:translateY(-50%)}
.workshop-timeline time{font:900 .72rem var(--mono);color:var(--cyan)}
.workshop-timeline article span{font:800 .58rem var(--mono);color:var(--magenta);letter-spacing:.1em}
.workshop-timeline h3{margin:.25rem 0;font-size:1.1rem}
.workshop-timeline p{margin:.35rem 0 0;color:var(--muted);font-size:.85rem}

.checklist-shell{display:grid;grid-template-columns:260px 1fr;gap:24px;margin-top:36px}
.checklist-progress{position:sticky;top:110px;align-self:start;padding:28px;border:1px solid rgba(34,211,238,.3);border-radius:20px;background:rgba(12,18,33,.9)}
.checklist-progress>span{font:800 .65rem var(--mono);color:var(--faint);text-transform:uppercase}
.checklist-progress>strong{display:block;font:900 3.3rem var(--display);margin:12px 0}
.checklist-progress>strong b{color:var(--cyan)}
.checklist-progress>div{height:8px;background:#05070d;border-radius:999px;overflow:hidden}
.checklist-progress i{display:block;width:0;height:100%;background:linear-gradient(90deg,var(--cyan),var(--magenta));transition:width .35s}
.checklist-items{display:grid;gap:9px}
.checklist-items label{display:grid;grid-template-columns:auto 1fr;gap:15px;align-items:start;padding:17px;border:1px solid var(--line);border-radius:13px;background:rgba(12,18,33,.72);cursor:pointer}
.checklist-items input{width:22px;height:22px;margin-top:2px;accent-color:var(--cyan)}
.checklist-items b{display:block;font-family:var(--display)}
.checklist-items small{display:block;color:var(--muted);margin-top:3px}
.checklist-shell>p{grid-column:2;margin:0;color:var(--muted);font-size:.82rem}

.quiz{margin-top:34px;padding:clamp(22px,5vw,48px);border:1px solid var(--line);border-radius:26px;background:linear-gradient(145deg,rgba(139,92,246,.08),rgba(12,18,33,.88))}
.quiz-meta{display:flex;justify-content:space-between;color:var(--faint);font:800 .65rem var(--mono);text-transform:uppercase}
.quiz-meta b{color:var(--cyan)}
.quiz-question{display:none;margin-top:32px}
.quiz-question.is-current{display:block}
.no-js .quiz-question{display:block;padding-bottom:25px;border-bottom:1px solid var(--line)}
.quiz-question h3{font-size:clamp(1.6rem,3.2vw,2.7rem);max-width:780px}
.quiz-question>div{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:24px}
.quiz-question button{min-height:105px;padding:17px;border:1px solid var(--line);border-radius:13px;background:#080c16;text-align:left;cursor:pointer;color:var(--muted);font-weight:700}
.quiz-question button:hover{border-color:var(--cyan);color:var(--ink)}
.quiz-question button.is-correct{border-color:var(--green);background:rgba(53,231,166,.08);color:#c8ffe9}
.quiz-question button.is-wrong{border-color:var(--danger);background:rgba(255,88,125,.08);color:#ffd1dc}
.quiz-question button:disabled{cursor:default}
.quiz-question [data-feedback]{min-height:1.8em;color:var(--muted)}
.quiz-next{margin-top:10px}
.quiz-next:disabled{opacity:.35;cursor:not-allowed}
.quiz-result{margin-top:28px;padding:24px;border-left:4px solid var(--green);background:rgba(53,231,166,.05)}
.quiz-result>span{font:800 .62rem var(--mono);color:var(--green);text-transform:uppercase}
.quiz-result h3{font-size:2rem;margin:.3rem 0}
.quiz-result p{color:var(--muted)}

.teacher-layout{display:grid;grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);gap:clamp(36px,7vw,90px);align-items:center}
.teacher-photo{position:relative;min-height:640px;border:1px solid var(--line);border-radius:28px;overflow:hidden;background:var(--panel)}
.teacher-photo::after{content:"";position:absolute;inset:auto 0 0;height:45%;background:linear-gradient(transparent,var(--bg))}
.teacher-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top;filter:saturate(.82) contrast(1.03)}
.teacher-photo>span{position:absolute;left:22px;bottom:20px;z-index:2;font:800 .72rem var(--mono);letter-spacing:.12em;text-transform:uppercase}
.teacher-copy>p:not(.eyebrow):not(.scene-lead){color:var(--muted)}
.teacher-copy blockquote{margin:28px 0;padding:6px 0 6px 22px;border-left:4px solid var(--magenta);font:700 clamp(1.15rem,2.4vw,1.65rem)/1.5 var(--display)}
.teacher-method{display:flex;align-items:center;gap:7px;overflow-x:auto;margin-top:26px;padding-bottom:7px}
.teacher-method span{min-width:max-content;padding:8px 10px;border:1px solid var(--line);border-radius:8px;font:700 .6rem var(--mono)}
.teacher-method i{width:14px;height:1px;background:var(--cyan);flex:0 0 14px}

.sources-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:20px;margin-top:36px}
.official-sources{display:grid;gap:8px}
.official-sources a{display:grid;grid-template-columns:150px 1fr;gap:2px 16px;padding:16px 18px;border:1px solid var(--line);border-radius:12px;background:rgba(12,18,33,.72);text-decoration:none;transition:border-color .2s,transform .2s}
.official-sources a:hover{border-color:var(--cyan);transform:translateX(3px)}
.official-sources span{grid-row:span 2;font:800 .6rem var(--mono);color:var(--cyan);text-transform:uppercase}
.official-sources b{font-family:var(--display)}
.official-sources p{margin:.25rem 0 0;color:var(--muted);font-size:.78rem;line-height:1.4}
.glossary{display:grid;align-content:start;gap:8px}
.glossary details{border:1px solid var(--line);border-radius:12px;background:rgba(12,18,33,.72)}
.glossary summary{display:flex;justify-content:space-between;gap:12px;padding:15px 17px;cursor:pointer;font-weight:800;list-style:none}
.glossary summary::-webkit-details-marker{display:none}
.glossary summary span{color:var(--magenta)}
.glossary details[open] summary span{transform:rotate(45deg)}
.glossary details p{margin:0;padding:0 17px 17px;color:var(--muted);font-size:.84rem}

.closing-scene{background:radial-gradient(circle at 15% 50%,rgba(34,211,238,.13),transparent 35rem),radial-gradient(circle at 88% 50%,rgba(247,30,162,.12),transparent 35rem)}
.closing-layout{display:grid;grid-template-columns:1.35fr .65fr;gap:clamp(30px,6vw,80px);align-items:center}
.closing-formula{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:30px}
.closing-formula span{padding:9px 11px;border:1px solid var(--line);border-radius:8px;font:800 .65rem var(--mono)}
.closing-formula i{font-style:normal;color:var(--magenta);font-weight:900}
.closing-formula b{width:100%;margin-top:8px;color:var(--cyan);font:900 1.25rem var(--display)}
.community-closing-cta{display:grid;gap:12px;margin-top:24px;padding:18px;border:1px solid rgba(34,211,238,.28);border-radius:18px;background:linear-gradient(120deg,rgba(34,211,238,.09),rgba(139,92,246,.08))}
.community-closing-cta span{max-width:54ch;color:var(--text);font-weight:700}
.community-closing-cta .button{width:fit-content}
.exit-challenge{padding:28px;border:1px solid rgba(247,30,162,.35);border-radius:24px;background:rgba(12,18,33,.9);box-shadow:0 30px 80px rgba(0,0,0,.34)}
.exit-challenge h3{font-size:2rem;margin:.35rem 0}
.exit-challenge ol{padding-left:22px;color:var(--muted)}
.exit-challenge li{margin:.4rem 0}
.exit-challenge p{color:var(--faint);font-size:.82rem}

.site-footer{padding:46px max(22px,calc((100vw - var(--max))/2));background:#030509;color:var(--faint);font-size:.76rem}
.site-footer>div{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap}
.site-footer a{color:var(--muted);text-decoration:none}
.site-footer a:hover{color:var(--cyan)}
.site-footer p{max-width:920px;margin:24px 0 0}

.scene-rail{position:fixed;left:18px;top:50%;z-index:120;display:grid;gap:6px;transform:translateY(-50%)}
.scene-rail a{position:relative;width:11px;height:11px;border:2px solid var(--bg);border-radius:50%;background:#334056;text-decoration:none;transition:transform .2s,background .2s}
.scene-rail a::after{content:attr(data-label);position:absolute;left:18px;top:50%;transform:translateY(-50%) translateX(-5px);opacity:0;pointer-events:none;white-space:nowrap;padding:5px 8px;border-radius:5px;background:#060911;color:var(--ink);font:700 .58rem var(--mono);transition:opacity .2s,transform .2s}
.scene-rail a:hover::after,.scene-rail a:focus-visible::after{opacity:1;transform:translateY(-50%) translateX(0)}
.scene-rail a.is-active{background:#075566;border-color:var(--cyan);transform:scale(1.28);box-shadow:0 0 14px rgba(34,211,238,.6)}
body.executive:not(.presenting) .scene:not([data-executive]){display:none}
body.presenting{overflow:hidden}
body.presenting .site-header,body.presenting .site-footer{display:none}
body.presenting main{height:100vh;overflow:hidden}
body.presenting .scene{display:none;height:100vh;min-height:100vh;max-height:100vh;padding:20px 5vw;overflow-y:auto;border:0;align-items:center}
body.presenting .scene.is-present-active{display:flex}
body.presenting .scene-inner{max-width:1240px;transform:scale(var(--presentation-scale,1));transform-origin:center}
body.presenting h1{font-size:clamp(3rem,7vw,6.7rem)}
body.presenting h2{font-size:clamp(2.5rem,5.2vw,5rem)}
body.presenting .reading-detail,body.presenting .source-note,body.presenting .keyboard-help{display:none}
body.presenting .scene-lead{font-size:clamp(.95rem,1.55vw,1.2rem);line-height:1.45}
body.presenting .scene-rail{display:grid}
body.presenting .site-footer{display:none}
body.presenting .orbit-stage{max-height:68vh}
body.presenting .teacher-photo{min-height:68vh}
body.presenting .failure-lanes article{padding:10px 14px}
body.presenting .workshop-timeline article{padding:10px 16px}
body.presenting .workshop-timeline{gap:6px}
body.presenting .connection-waves{gap:7px}
body.presenting .wave{padding:15px 20px}
body.presenting .app-radar article{padding:10px 14px}
body.presenting .app-radar article p{display:none}
body.presenting .checklist-items label{padding:10px 14px}
body.presenting .checklist-items small{display:none}
body.presenting .sources-layout{margin-top:18px}
body.presenting .official-sources p{display:none}
body.motion-paused *,body.motion-paused *::before,body.motion-paused *::after{animation-play-state:paused!important}
body.motion-paused .orbit-stage{transform:none!important}

@keyframes livePulse{0%{box-shadow:0 0 0 0 rgba(247,30,162,.5)}70%{box-shadow:0 0 0 9px rgba(247,30,162,0)}100%{box-shadow:0 0 0 0 rgba(247,30,162,0)}}
@keyframes coreFloat{0%,100%{transform:translate(-50%,-50%) translateZ(70px)}50%{transform:translate(-50%,calc(-50% - 7px)) translateZ(78px)}}
@keyframes nodeFloat{0%,100%{translate:0 0}50%{translate:0 -6px}}
@keyframes wireFlow{to{stroke-dashoffset:-85}}
@keyframes haloSpin{to{transform:rotate(360deg)}}
@keyframes orbitPulse{0%{opacity:.7;transform:translate(-50%,-50%) translateZ(42px) scale(.72)}75%,100%{opacity:0;transform:translate(-50%,-50%) translateZ(42px) scale(1.34)}}
@keyframes beamPulse{0%,100%{filter:brightness(.8);transform:translateX(-50%) translateZ(125px) scaleY(.98)}50%{filter:brightness(1.4);transform:translateX(-50%) translateZ(125px) scaleY(1.02)}}
@keyframes journeyMove{0%{left:12px}18%{left:18%}36%{left:36%}54%{left:54%}72%{left:72%}90%,100%{left:calc(100% - 24px)}}

@media (max-width:1100px){
  .scene-rail{display:none}
  .hero-layout,.topology-layout{grid-template-columns:1fr}
  .hero-copy h1{max-width:900px}
  .orbit-shell{max-width:760px;width:100%;margin:auto}
  .topology-model{max-width:760px;width:100%;margin:auto}
  .outcome-path{grid-template-columns:1fr 1fr}.outcome-path>i{display:none}
  .permission-lab{grid-template-columns:1fr}.permission-stairs button:nth-child(n){min-height:220px}
  .connection-lab{grid-template-columns:1fr}.lab-controls{grid-row:auto;grid-template-columns:repeat(3,1fr)}.contract-output{grid-column:1}
  .failure-lanes article{grid-template-columns:140px 1fr}.failure-lanes article p{grid-column:2}.failure-lanes article em{grid-column:1;grid-row:2;justify-self:start;text-align:left}
}

@media (max-width:820px){
  :root{--header:60px}
  .site-header{padding:0 16px;gap:12px}.site-header nav{display:none}.header-cta{margin-left:auto}
  .scene{min-height:auto;padding:76px 18px 68px;overflow:hidden}
  .hero-scene{min-height:100svh;padding-top:78px}
  h1{font-size:clamp(2.7rem,10vw,4.6rem)}h2{font-size:clamp(2.15rem,7vw,2.55rem)}
  .hero-copy h1{font-size:clamp(2.7rem,10vw,4.6rem)}
  .hero-actions{margin-top:18px}.live-strip{margin-top:20px}.keyboard-help{display:none}
  .orbit-stage{aspect-ratio:auto;height:clamp(420px,58vw,500px);min-height:420px}.orbit-node{width:70px;padding:8px}.orbit-core{width:138px}
  .orbit-inspector{grid-template-columns:1fr 1.25fr}
  .before-after{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}.before-state,.after-state{flex:0 0 min(78vw,520px);scroll-snap-align:start}.state-arrow{display:none}
  .outcome-path{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}.outcome-path article{flex:0 0 min(70vw,330px);min-height:190px;scroll-snap-align:start}
  .concept-console{grid-template-columns:1fr;min-height:0}.concept-buttons{display:flex;overflow-x:auto;padding-bottom:8px}.concept-buttons button{width:auto;min-width:max-content}.concept-output{min-height:300px;padding:28px}
  .topology-model{height:470px}
  .permission-stairs{grid-template-columns:1fr 1fr}.permission-stairs button:nth-child(n){min-height:160px}
  .connection-waves{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}.wave{flex:0 0 min(78vw,560px);grid-template-columns:58px 1fr;scroll-snap-align:start}.wave-rule{grid-column:2;justify-self:start;text-align:left}
  .app-radar{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}.app-radar article{flex:0 0 min(74vw,330px);scroll-snap-align:start}.radar-toolbar{align-items:flex-start;flex-direction:column}
  .lab-controls{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:7px}.lab-controls fieldset{flex:0 0 min(72vw,285px);scroll-snap-align:start}.lab-route{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}.lab-route>div{flex:0 0 132px;min-height:100px;scroll-snap-align:start}.lab-route>i{flex:0 0 14px}.lab-visual{padding:18px}.contract-output{padding:18px}.contract-output pre{max-height:190px}
  .evidence-console{grid-template-columns:1fr}.evidence-levels{display:flex;overflow-x:auto}.evidence-levels button{min-width:max-content}.evidence-screen{min-height:320px}
  .failure-lanes{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}.failure-lanes article{flex:0 0 min(80vw,560px);grid-template-columns:1fr;scroll-snap-align:start}.failure-lanes article p,.failure-lanes article em{grid-column:1;grid-row:auto}.failure-lanes article em{justify-self:start;text-align:left}
  .workshop-timeline{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding:0 0 8px}.workshop-timeline::before,.workshop-timeline article::before{display:none}.workshop-timeline article{flex:0 0 min(80vw,560px);grid-template-columns:76px 1fr;scroll-snap-align:start}
  .checklist-shell{grid-template-columns:1fr}.checklist-progress{position:static}.checklist-shell>p{grid-column:1}
  .quiz-question>div{grid-template-columns:1fr}.quiz-question button{min-height:72px}
  .teacher-layout,.sources-layout,.closing-layout{grid-template-columns:1fr}.teacher-photo{min-height:430px;max-width:520px}
  .official-sources{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}.official-sources a{flex:0 0 min(78vw,500px);grid-template-columns:1fr;scroll-snap-align:start}.official-sources span{grid-row:auto}
  .route-anatomy{grid-template-columns:1fr}
  body.presenting .scene{padding:16px 22px 50px}
  body.presenting .hero-layout,body.presenting .topology-layout,body.presenting .teacher-layout,body.presenting .closing-layout{grid-template-columns:1fr}
  body.presenting .orbit-shell,body.presenting .teacher-photo{display:none}
  body.presenting .permission-stairs button:nth-child(n){min-height:125px}
  body.presenting .connection-lab{margin-top:12px}.lab-controls{display:none}
  body.presenting .workshop-timeline article p{display:none}
}

@media (max-width:520px){
  body{font-size:.96rem}
  .site-header .brand b{display:block;font-size:.72rem;line-height:1.15}.site-header .brand b span{display:block;font-size:.64rem}
  .hero-actions .button{width:100%}
  .live-strip{align-items:flex-start;flex-direction:column}
  .hero-flow{gap:7px}.hero-flow i{display:none}.hero-flow span{font-size:.58rem}
  .orbit-stage{height:344px;min-height:344px;border-radius:24px}.orbit-node{width:61px;border-radius:15px;padding:7px}.orbit-node img{width:25px;height:25px}.orbit-node span{font-size:.5rem}.orbit-core{width:122px}.orbit-core .core-logo{width:34px}.orbit-core .core-logo img{width:22px;height:22px}.orbit-inspector{grid-template-columns:1fr;padding:12px 14px}.orbit-inspector>div:first-child{grid-row:auto}.orbit-inspector dl{grid-column:1}
  .artifact-preview{grid-template-columns:1fr;padding:20px}.artifact-preview p{grid-column:1}
  .permission-stairs{grid-template-columns:1fr 1fr}.permission-stairs button:nth-child(n){min-height:112px}
  .wave{grid-template-columns:1fr}.wave-index{display:flex;align-items:center;gap:8px;border-right:0;border-bottom:1px solid var(--line);padding-bottom:8px}.wave-rule{grid-column:1}
  .app-radar article{grid-template-columns:48px 1fr}.app-radar article em{grid-column:2;justify-self:start}.app-radar article p{grid-column:1/-1}
  .contract-head{align-items:flex-start;flex-direction:column}.contract-head>div:last-child{width:100%}.contract-head button{flex:1}
  .request-journey{padding:18px}.journey-line article{width:138px}
  .failure-lanes article{grid-template-columns:1fr}.failure-lanes article p,.failure-lanes article em{grid-column:1;grid-row:auto}
  .workshop-timeline article{grid-template-columns:1fr}
  .checklist-items{grid-template-columns:1fr 1fr}.checklist-items label{grid-template-columns:auto 1fr;padding:12px;gap:9px}.checklist-items small{display:none}.checklist-progress{padding:20px}.checklist-progress>strong{font-size:2.4rem;margin:6px 0}
  .teacher-photo{min-height:360px}
  .site-footer>div{flex-direction:column}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
  .orbit-stage{transform:none!important}
  .button:hover,.wave:hover,.official-sources a:hover,.concept-buttons button:hover{transform:none}
}

@supports not (backdrop-filter:blur(12px)){
  .site-header{background:#05070d}
}

/* Responsive pilot v3: safe areas and low-cost explanatory motion. */
:root{
  --class3-safe-top:env(safe-area-inset-top,0px);
  --class3-safe-right:env(safe-area-inset-right,0px);
  --class3-safe-bottom:env(safe-area-inset-bottom,0px);
  --class3-safe-left:env(safe-area-inset-left,0px);
  --class3-touch:44px;
}

.header-cta{min-height:var(--class3-touch)}
.brand,.topology-switch button,.radar-toolbar button,.lab-controls button,
.contract-head button,.quiz-next,.quiz-result button,.request-journey>button,
.evidence-levels button,.glossary summary{
  min-height:var(--class3-touch);
  touch-action:manipulation;
}
.site-footer{padding-bottom:calc(46px + var(--class3-safe-bottom))}
body #am-privacy-control{
  right:max(10px,var(--class3-safe-right))!important;
  bottom:max(10px,var(--class3-safe-bottom))!important;
  left:auto!important;
  transform:none!important;
  min-width:44px!important;
  min-height:44px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
}

/* Prevent a wide teaching artifact from defining the grid's min-content width. */
.connection-lab{grid-template-columns:310px minmax(0,1fr)}
.connection-lab>*,.lab-visual,.contract-output{min-width:0;max-width:100%}
.site-header nav a{display:inline-flex;align-items:center;justify-content:center;min-width:24px;min-height:24px}

@media (max-width:1100px){
  .connection-lab{grid-template-columns:minmax(0,1fr)}
}

body.presenting main{
  height:100vh;
  height:100svh;
  height:100dvh;
  overflow:hidden;
}
body.presenting .scene{
  height:100vh;
  height:100svh;
  height:100dvh;
  min-height:100vh;
  min-height:100svh;
  min-height:100dvh;
  max-height:100vh;
  max-height:100svh;
  max-height:100dvh;
  overflow-x:hidden;
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
  padding:
    calc(20px + var(--class3-safe-top))
    max(5vw,var(--class3-safe-right))
    calc(82px + var(--class3-safe-bottom))
    max(5vw,var(--class3-safe-left));
}
body.presenting #am-privacy-control{bottom:calc(78px + var(--class3-safe-bottom))!important}

body.motion-constrained .orbit-connections line,
body.motion-constrained .orbit-pulse,
body.motion-constrained .orbit-core,
body.motion-constrained .orbit-core::after{
  animation-play-state:paused!important;
}
body.motion-constrained .orbit-stage{transform:none!important}

@media (max-width:820px){
  body{font-size:1.0625rem;line-height:1.62}
  .site-header{
    min-height:calc(var(--header) + var(--class3-safe-top));
    padding:
      var(--class3-safe-top)
      max(16px,var(--class3-safe-right))
      0
      max(16px,var(--class3-safe-left));
  }
  .brand{display:inline-flex;align-items:center;justify-content:center;min-width:var(--class3-touch)}
  .connection-lab{grid-template-columns:minmax(0,1fr)}
  .teacher-layout,.teacher-layout>*,.teacher-copy{min-width:0;width:100%;max-width:100%}
  .teacher-photo{width:100%;max-width:min(520px,100%)}
  .teacher-method{max-width:100%}
  .scene{
    padding:
      calc(76px + var(--class3-safe-top))
      max(18px,var(--class3-safe-right))
      68px
      max(18px,var(--class3-safe-left));
  }
  .hero-scene{padding-top:calc(78px + var(--class3-safe-top))}
  .scene-lead{font-size:1.0625rem;line-height:1.58}
  .before-after,.outcome-path,.concept-buttons,.connection-waves,.app-radar,
  .lab-controls,.lab-route,.evidence-levels,.failure-lanes,.workshop-timeline,
  .official-sources,.teacher-method{
    overscroll-behavior-inline:contain;
    scroll-padding-inline:18px;
    -webkit-overflow-scrolling:touch;
  }

  body.presenting .scene{
    align-items:flex-start;
    padding:
      calc(18px + var(--class3-safe-top))
      max(18px,var(--class3-safe-right))
      calc(144px + var(--class3-safe-bottom))
      max(18px,var(--class3-safe-left));
    scroll-padding-bottom:calc(144px + var(--class3-safe-bottom));
  }
  body.presenting .scene-inner{
    max-width:100%;
    transform:none!important;
    transform-origin:top center;
  }
  body.presenting .scene-lead{font-size:1rem;line-height:1.5}
  body.presenting .scene-rail{display:none}
  body.presenting #am-privacy-control{bottom:calc(122px + var(--class3-safe-bottom))!important}
}

@media (max-width:520px){
  body{font-size:1.0625rem}
  .orbit-node span{font-size:.65rem}
  .orbit-inspector>p{font-size:.82rem;line-height:1.5}
  .orbit-inspector dd{font-size:.75rem}
  .checklist-items{grid-template-columns:1fr}
  .checklist-items small{display:block}
  body.presenting h1{font-size:clamp(2.4rem,12vw,3.25rem)}
  body.presenting h2{font-size:clamp(1.95rem,9vw,2.7rem)}
}

@media (pointer:coarse){
  .site-header nav a{min-width:var(--class3-touch);min-height:var(--class3-touch)}
  .orbit-connections line,.orbit-pulse,.orbit-core,.orbit-core::after{animation-play-state:paused}
  .orbit-stage{transform:none!important}
}

/* Video completo y momentos: capa aditiva sobre el aula original. */
.video-scene{
  background:
    radial-gradient(circle at 12% 10%,rgba(34,211,238,.12),transparent 30%),
    radial-gradient(circle at 90% 80%,rgba(247,30,162,.1),transparent 28%),
    var(--bg);
}
.video-class-layout{display:grid;gap:clamp(22px,4vw,42px)}
.video-class-heading{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(280px,.75fr);gap:clamp(24px,5vw,72px);align-items:end}
.video-class-heading .scene-lead{margin:0}
.video-community-cta{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid rgba(85,242,161,.28);border-radius:18px;background:rgba(85,242,161,.06)}
.video-community-cta span{color:var(--muted)}
.video-learning-shell{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(300px,.75fr);gap:18px;min-width:0}
.video-player-frame{position:relative;aspect-ratio:16/9;min-width:0;overflow:hidden;border:1px solid rgba(34,211,238,.32);border-radius:26px;background:#000;box-shadow:0 28px 90px rgba(0,0,0,.48)}
.video-player-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.video-moments-panel{display:flex;min-width:0;min-height:0;flex-direction:column;padding:14px;border:1px solid rgba(139,92,246,.28);border-radius:26px;background:linear-gradient(155deg,rgba(9,20,35,.96),rgba(4,8,16,.98));box-shadow:0 28px 90px rgba(0,0,0,.32)}
.video-moments-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 8px 12px}
.video-moments-heading h3{margin:0;font-size:1.15rem}
.video-moments-heading span{color:var(--green);font:700 .7rem var(--mono);text-transform:uppercase;letter-spacing:.08em}
.video-moments-list{display:grid;grid-auto-rows:max-content;align-content:start;gap:7px;min-height:0;max-height:min(55vh,520px);overflow:auto;padding:2px;overscroll-behavior:contain;scrollbar-gutter:stable;scrollbar-width:thin}
.video-moment{display:grid;grid-template-columns:66px minmax(0,1fr);align-items:start;gap:10px;min-width:0;min-height:58px;height:auto;padding:11px;border:1px solid transparent;border-radius:15px;background:rgba(255,255,255,.035);color:var(--text);text-decoration:none;transition:border-color .2s ease,background .2s ease,transform .2s ease}
.video-moment:hover,.video-moment.is-active{border-color:rgba(34,211,238,.6);background:linear-gradient(110deg,rgba(34,211,238,.12),rgba(139,92,246,.08));transform:translateY(-1px)}
.video-moment:focus-visible{outline:3px solid #fff;outline-offset:2px}
.video-moment time{color:var(--green);font:800 .74rem/1.5 var(--mono);white-space:nowrap}
.video-moment>span{min-width:0;overflow-wrap:anywhere}
.video-moment strong,.video-moment small{display:block}
.video-moment strong{color:#fff;font-size:.9rem;line-height:1.25}
.video-moment small{margin-top:3px;color:var(--muted);font-size:.76rem;line-height:1.35}

@media (max-width:900px){
  .video-class-heading,.video-learning-shell{grid-template-columns:minmax(0,1fr)}
  .video-community-cta{align-items:flex-start;flex-direction:column}
  .video-moments-list{max-height:360px}
}
@media (max-width:520px){
  .video-moments-panel,.video-player-frame{border-radius:18px}
  .video-moment{grid-template-columns:58px minmax(0,1fr);min-height:52px;padding:10px}
  .video-moment small{font-size:.72rem;line-height:1.35}
  .video-moments-heading{align-items:flex-start;flex-direction:column}
  .community-closing-cta .button{width:100%}
}
@media (prefers-reduced-motion:reduce){
  .video-moment{transition:none}
  .video-moment:hover,.video-moment.is-active{transform:none}
}
