/* ============================================================
   AI World Models — Cinematic dark keynote theme
   Near-black canvas · one electric accent · large refined type ·
   generous negative space · glowing visuals. Class names preserved.
   ============================================================ */
:root{
  --bg:#06080d;
  --bg-elev:#0d131e;
  --ink:#eef2f8;
  --ink-soft:#a7b2c4;
  --ink-faint:#6a7588;
  --line:rgba(255,255,255,.10);
  --line-soft:rgba(255,255,255,.055);
  --accent:#6ea8ff;
  --accent-2:#5fe0ff;
  --good:#52e0a0;
  --warn:#ffc56a;
  --bad:#ff7d70;
  --mid:#7fb4ff;
  --card:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.015));
  --glow:0 0 0 1px rgba(110,168,255,.18),0 24px 70px rgba(0,0,0,.5);
  --shadow:0 28px 80px rgba(0,0,0,.55);
}
*{box-sizing:border-box}
html,body{width:100%;height:100%;margin:0;overflow:hidden;color:var(--ink);
  font-family:"SF Pro Display","SF Pro Text",-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,system-ui,sans-serif;
  background:#04060a;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
button{font:inherit;color:inherit}

#deck{position:fixed;inset:0;background:#04060a}
.slide{position:absolute;inset:0;display:none;overflow:hidden;
  padding:clamp(34px,5vw,92px);
  background:
    radial-gradient(120% 90% at 50% -15%,#16203455 0%,transparent 55%),
    radial-gradient(100% 80% at 100% 110%,#10243a44 0%,transparent 55%),
    linear-gradient(180deg,#0a0e16 0%,#06080d 100%);
  opacity:0;transform:translateY(14px) scale(.992);
  transition:opacity .5s cubic-bezier(.22,.61,.36,1),transform .5s cubic-bezier(.22,.61,.36,1)}
.slide.active{display:block;opacity:1;transform:none;z-index:2}
.slide.light{background:
    radial-gradient(120% 90% at 0% -10%,#1a2740 0%,transparent 52%),
    linear-gradient(180deg,#0b1018 0%,#06080d 100%)}
.slide.dark{background:
    radial-gradient(90% 80% at 18% 12%,#16365e 0%,#0a1626 42%,#06080d 100%)}
.slide.split-dark{display:none;background:#06080d;padding:0}
.slide.split-dark.active{display:grid;grid-template-columns:1fr 1fr}

/* image slides framed on dark */
.image-slide{padding:0;background:#04060a}
.cover-image,.contain-image{width:100%;height:100%;object-fit:cover;display:block}
.contain-image{object-fit:contain;background:radial-gradient(120% 100% at 50% 0%,#0d1422,#04060a);padding:clamp(20px,3vw,60px)}
.image-vignette{position:absolute;inset:0;pointer-events:none;
  background:linear-gradient(90deg,rgba(4,6,10,.62),transparent 48%),linear-gradient(0deg,rgba(4,6,10,.7),transparent 42%)}
.slide-badge{position:absolute;right:3vw;bottom:3vw;padding:.5em .9em;border-radius:999px;
  background:rgba(8,12,20,.5);border:1px solid var(--line);color:var(--ink-soft);
  font-weight:700;letter-spacing:.18em;font-size:clamp(11px,.85vw,15px);backdrop-filter:blur(10px)}

/* layout primitives */
.slide-grid{height:100%;display:grid;align-items:center;gap:clamp(30px,4.5vw,86px)}
.two-col{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)}
.copy{max-width:820px}
.copy h1,.center-stack h1,.interactive-copy h1,.voyage-copy h1{
  font-size:clamp(38px,5vw,82px);line-height:1.04;margin:.18em 0 .42em;
  letter-spacing:-.035em;font-weight:600}
.lead{font-size:clamp(18px,1.65vw,30px);line-height:1.55;color:var(--ink-soft);margin:0;font-weight:400}
.muted{color:var(--ink-soft)!important}

.eyebrow{font-size:clamp(12px,.92vw,15px);font-weight:700;letter-spacing:.24em;
  color:var(--accent);margin:0 0 18px;text-transform:uppercase;display:flex;align-items:center;gap:12px}
.eyebrow::before{content:"";width:26px;height:1px;background:linear-gradient(90deg,var(--accent),transparent)}
.eyebrow.cyan{color:var(--accent-2)}

.callout,.quote,.key-idea{margin-top:32px;padding:20px 26px;border-left:2px solid var(--accent);
  background:linear-gradient(90deg,rgba(110,168,255,.10),transparent);
  font-size:clamp(18px,1.5vw,28px);font-weight:500;border-radius:0 14px 14px 0;color:var(--ink)}
.quote{font-style:italic;border-left-color:var(--accent-2);color:var(--ink-soft)}

/* visual cards */
.visual-card{position:relative;border-radius:24px;background:var(--card);box-shadow:var(--glow);
  overflow:hidden;border:1px solid var(--line);backdrop-filter:blur(8px)}
.dark-card{background:var(--card)}
.canvas-card{min-height:58vh}
.canvas-card canvas{display:block;width:100%;height:100%;min-height:58vh}
.mini-button{position:absolute;right:16px;bottom:16px;border:1px solid var(--line);
  background:rgba(8,12,20,.66);color:var(--ink);padding:9px 15px;border-radius:999px;cursor:pointer;
  font-weight:650;font-size:13px;backdrop-filter:blur(8px);transition:.18s}
.mini-button:hover{border-color:rgba(110,168,255,.5);color:#fff}

.center-stack{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;max-width:1380px;margin:auto}
.center-stack.narrow{max-width:1180px}
.center-stack.wide{max-width:1540px}
.display{font-size:clamp(40px,5.4vw,92px)!important;line-height:1.05!important;font-weight:600}
.accent{color:var(--accent)}
.definition-cn{margin-top:30px;max-width:1000px;font-size:clamp(19px,1.7vw,30px);line-height:1.55;color:var(--ink-soft);font-weight:400}
.definition-cn strong{color:var(--ink);font-weight:650}

.pill{display:inline-block;padding:.12em .4em;border-radius:.35em;background:rgba(110,168,255,.16);color:#bcd4ff;border:1px solid rgba(110,168,255,.3)}
.pill.orange{background:rgba(255,197,106,.14);color:#ffd79a;border-color:rgba(255,197,106,.3)}
.pill.green{background:rgba(82,224,160,.14);color:#9af0c9;border-color:rgba(82,224,160,.3)}

.formula{font-family:"SF Mono",ui-monospace,Menlo,Consolas,monospace;font-size:clamp(30px,3.8vw,62px);
  margin:26px 0;color:#cfe0ff;letter-spacing:-.01em}
.formula.large{font-size:clamp(40px,5vw,82px)}
.formula.on-dark{color:var(--accent-2)}
.formula-plain{margin:2px 0 0;font-size:clamp(16px,1.35vw,22px);line-height:1.5;color:var(--ink-soft);font-weight:400;max-width:780px}
.formula-plain.centered{margin-left:auto;margin-right:auto;text-align:center}
.formula-plain b{color:var(--ink);font-weight:650}.formula-plain em{color:var(--accent-2);font-style:normal}

/* state demo (slide 5) */
.state-demo{position:relative;width:min(980px,86vw);margin-top:14px;padding:26px;border-radius:22px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow)}
.state-demo .mini-button{top:40px;right:40px;bottom:auto}
.table-scene{position:relative;height:250px;border-radius:16px;overflow:hidden;
  background:linear-gradient(180deg,#101826,#0a111c);border:1px solid var(--line);border-top:0}
.robot-arm{position:absolute;left:8%;bottom:60px;width:74px;height:74px;border-radius:50%;
  background:#121a28;border:6px solid #3a496a;color:var(--accent-2);font-size:24px;display:flex;align-items:center;justify-content:center;box-shadow:0 0 24px rgba(95,224,255,.25)}
.robot-arm span{position:absolute;width:120px;height:20px;background:#1a2235;border:4px solid #3a496a;border-radius:14px;transform:rotate(-25deg);transform-origin:left center;left:54px;top:22px}
.ball-object{position:absolute;width:60px;height:60px;border-radius:50%;left:40%;top:48%;transform:translate(-50%,-50%);
  background:radial-gradient(circle at 32% 28%,#bcd9ff,#3f78d8 60%,#15366b);box-shadow:0 0 26px rgba(110,168,255,.55);
  transition:transform 1.2s cubic-bezier(.2,.85,.25,1),left 1.2s cubic-bezier(.2,.85,.25,1),top 1.2s cubic-bezier(.2,.85,.25,1),opacity .4s}
.goal-zone{position:absolute;right:12%;top:36%;width:108px;height:90px;border:2px dashed var(--good);border-radius:12px;background:rgba(82,224,160,.08);box-shadow:0 0 30px rgba(82,224,160,.12) inset}

.action-buttons{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:22px}
.action-buttons button,.voyage-actions button{border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--ink);
  padding:13px 20px;border-radius:13px;font-weight:650;cursor:pointer;transition:.16s;backdrop-filter:blur(6px)}
.action-buttons button:hover,.voyage-actions button:hover{border-color:rgba(110,168,255,.55);background:rgba(110,168,255,.12);transform:translateY(-2px)}
#stateOutcome{margin:18px 0 0;font-size:17px;color:var(--ink-soft)}

/* prediction vs reasoning (slide 6) */
.comparison-panel{padding:clamp(44px,6vw,116px);display:flex;flex-direction:column;justify-content:center;
  background:linear-gradient(180deg,#0a1018,#070a11);border-right:1px solid var(--line-soft)}
.comparison-panel.highlight{background:radial-gradient(80% 70% at 70% 35%,#11365e 0%,#0a1c30 55%,#070b13 100%)}
.comparison-panel h2{font-size:clamp(34px,4.3vw,76px);line-height:1.06;margin:.2em 0 .55em;letter-spacing:-.035em;font-weight:600}
.comparison-panel p:last-child{font-size:clamp(17px,1.4vw,26px);color:var(--ink-soft);line-height:1.5}
.single-future{display:flex;align-items:center;gap:22px;margin:38px 0}
.node{display:inline-flex;align-items:center;justify-content:center;width:128px;height:72px;border-radius:16px;font-weight:750;letter-spacing:.06em;border:1px solid var(--line)}
.node.now{background:rgba(110,168,255,.14);color:#bcd4ff}
.node.future{background:rgba(82,224,160,.14);color:#9af0c9}
.arrow{font-size:50px;color:var(--ink-faint)}
.branch-mini{display:flex;gap:26px;align-items:center;margin:36px 0}
.branches{display:grid;gap:10px}
.branches span{display:block;padding:10px 18px;border-radius:11px;background:rgba(255,255,255,.05);border:1px solid var(--line);font-weight:700}

.floating-label{position:absolute;top:7%;padding:11px 18px;border-radius:999px;background:rgba(8,12,20,.7);
  border:1px solid var(--line);font-weight:700;color:var(--ink);backdrop-filter:blur(10px)}
.floating-label.left{left:7%}.floating-label.right{right:7%}.floating-label span{color:var(--accent);margin-left:8px}

/* experience strip (slide 9) */
.experience-strip{display:flex;align-items:center;justify-content:center;gap:16px;width:100%;margin-top:36px;flex-wrap:nowrap}
.experience-card{width:230px;min-height:150px;padding:24px;border-radius:18px;background:var(--card);
  box-shadow:var(--shadow);text-align:left;border:1px solid var(--line)}
.experience-card span{display:inline-flex;width:34px;height:34px;border-radius:50%;align-items:center;justify-content:center;background:rgba(110,168,255,.16);color:var(--accent);font-weight:800;margin-bottom:14px}
.experience-card b{display:block;font-size:21px}
.experience-card small{display:block;color:var(--ink-soft);font-size:15px;margin-top:8px;line-height:1.45}
.flow-arrow{font-size:34px;color:var(--ink-faint)}

/* rollout (slide 11) */
.rollout-row{display:flex;align-items:center;gap:18px;margin:46px 0}
.rollout-row>span{font-size:40px;color:var(--ink-faint)}
.latent-node{min-width:186px;max-width:212px;padding:18px 16px;border-radius:18px;background:rgba(110,168,255,.10);
  border:1px solid rgba(110,168,255,.35);color:#cfe0ff;display:flex;flex-direction:column;align-items:center;gap:9px;text-align:center}
.ln-sym{font-size:clamp(28px,2.6vw,38px);font-weight:750;font-family:"SF Mono",ui-monospace,Menlo,monospace;letter-spacing:-.01em}
.ln-state{font-size:clamp(13px,1.05vw,16px);font-weight:600;color:var(--ink-soft);line-height:1.32}
.latent-node.active{background:rgba(110,168,255,.3);color:#fff;box-shadow:0 0 30px rgba(110,168,255,.35)}
.latent-node.active .ln-state{color:#dbe8ff}
.latent-node.faded{opacity:.62}.latent-node.more-faded{opacity:.42}
.centered{text-align:center;max-width:920px}

/* interactive (slide 13) */
.interactive-layout{height:100%;display:grid;grid-template-columns:minmax(340px,.72fr) minmax(0,1.28fr);gap:44px;align-items:stretch}
.interactive-copy{display:flex;flex-direction:column;justify-content:flex-start;max-height:100%;overflow:auto;padding:8px 12px 8px 0}
.interactive-copy p:not(.eyebrow){font-size:clamp(16px,1.3vw,23px);color:var(--ink-soft);line-height:1.5}
.interactive-copy h1{font-size:clamp(30px,3.2vw,54px);margin:.1em 0 .32em}
.action-buttons.vertical{align-items:stretch;flex-direction:column;margin:18px 0 4px}
.action-buttons.vertical button{text-align:left;font-size:17px}
.result-box{padding:18px 20px;border-radius:14px;background:rgba(255,255,255,.04);border:1px solid var(--line);
  color:var(--ink-soft);font-weight:500;min-height:74px;display:flex;align-items:center}
.result-box b{color:var(--ink)}
.large-canvas{min-height:68vh}.large-canvas canvas{min-height:68vh}

/* pipeline (slide 15) */
.pipeline{display:grid;grid-template-columns:1fr auto 1fr auto 1fr auto 1fr auto 1fr;align-items:stretch;gap:14px;width:100%;margin-top:44px}
.pipeline-step{padding:24px 18px;background:var(--card);border-radius:18px;box-shadow:var(--shadow);border:1px solid var(--line);min-height:172px;text-align:left}
.pipeline-step span{display:inline-flex;width:38px;height:38px;border-radius:50%;background:rgba(110,168,255,.18);color:var(--accent);align-items:center;justify-content:center;font-weight:800;margin-bottom:15px}
.pipeline-step b{display:block;font-size:21px}
.pipeline-step small{display:block;color:var(--ink-soft);margin-top:8px;font-size:15px;line-height:1.45}
.pipeline-arrow{font-size:30px;color:var(--ink-faint);align-self:center}
.key-idea{font-size:clamp(18px,1.5vw,27px)}

.corner-caption{position:absolute;left:50%;bottom:80px;transform:translateX(-50%);padding:13px 24px;border-radius:999px;
  background:rgba(8,12,20,.72);border:1px solid var(--line);color:var(--ink);font-weight:650;letter-spacing:.04em;backdrop-filter:blur(10px);white-space:nowrap}

/* architecture (slide 17) */
.architecture{height:66%;display:flex;align-items:center;justify-content:center;gap:38px}
.env-box,.agent-box{border-radius:22px;padding:34px 38px;box-shadow:var(--shadow);background:var(--card);border:1px solid var(--line);text-align:center}
.env-box{min-width:340px;background:linear-gradient(180deg,rgba(110,168,255,.10),rgba(110,168,255,.02));border-color:rgba(110,168,255,.28)}
.agent-box{min-width:640px}
.env-box h2,.agent-box h2{font-size:30px;margin:0 0 12px}.env-box p{font-size:18px;color:var(--ink-soft)}
.bidirectional{display:grid;gap:12px;color:var(--accent);font-weight:700;text-align:center}
.agent-modules{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:22px}
.agent-modules div{padding:20px 14px;border-radius:14px;background:rgba(255,255,255,.04);font-weight:700;color:var(--ink-soft);border:1px solid var(--line)}
.agent-modules .accent-module{background:rgba(95,224,255,.14);border-color:rgba(95,224,255,.4);color:#bff1ff;box-shadow:0 0 26px rgba(95,224,255,.18)}
.three-lines{display:flex;justify-content:center;gap:24px;flex-wrap:wrap;font-size:19px;color:var(--ink-soft)}
.three-lines span{padding:14px 20px;background:var(--card);border:1px solid var(--line);border-radius:13px}
.three-lines b{color:var(--ink)}

/* comparison table (slide 18) */
.comparison-table{width:100%;margin-top:36px;border-radius:18px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow);font-size:clamp(15px,1.15vw,21px);text-align:left}
.comparison-table>div{display:grid;grid-template-columns:1.1fr 2fr 1fr 1.2fr;background:rgba(255,255,255,.02)}
.comparison-table>div:nth-child(odd):not(.table-head){background:rgba(255,255,255,.045)}
.comparison-table span{padding:18px 20px;border-right:1px solid var(--line-soft);color:var(--ink-soft)}
.comparison-table span:first-child{color:var(--ink);font-weight:650}
.table-head{background:rgba(110,168,255,.16)!important;color:#fff!important}
.table-head span{color:#fff!important;font-weight:800}
.highlight-row{background:rgba(95,224,255,.12)!important}
.highlight-row span{color:#d6f4ff!important;font-weight:700}

/* failure labels (slide 19) */
.failure-labels{position:absolute;inset:auto 3.5% 2.1% 3.5%;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.failure-labels span{text-align:center;padding:11px 8px;border-radius:999px;background:rgba(8,12,20,.78);border:1px solid var(--line);color:var(--ink);font-weight:700;backdrop-filter:blur(10px)}

/* metrics (slide 21) */
.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;width:100%;margin-top:38px}
.metric{padding:28px 24px;border-radius:20px;background:var(--card);box-shadow:var(--shadow);border:1px solid var(--line);text-align:left;min-height:224px}
.metric span{font-size:32px;font-weight:850;color:rgba(110,168,255,.55)}
.metric h3{font-size:24px;margin:20px 0 10px;color:var(--ink)}
.metric p{font-size:17px;color:var(--ink-soft);line-height:1.5;margin:0}

/* voyage (slide 22) */
.voyage-copy,.voyage-sim{padding:clamp(42px,5vw,96px);display:flex;flex-direction:column;justify-content:center;overflow:auto}
.voyage-copy{background:radial-gradient(80% 70% at 25% 30%,#123b61 0%,#0a1c30 55%,#070b13 100%)}
.voyage-sim{background:#080d16;border-left:1px solid var(--line-soft)}
.voyage-structure{display:grid;grid-template-columns:1fr auto 1fr auto 1.2fr;gap:14px;align-items:center;margin-top:36px}
.voyage-structure>div{padding:18px 16px;border:1px solid var(--line);background:rgba(255,255,255,.04);border-radius:14px;text-align:center;font-weight:750}
.voyage-structure small{color:var(--ink-soft);font-weight:400}
.accent-box{border-color:rgba(95,224,255,.45)!important;background:rgba(95,224,255,.10)!important;box-shadow:0 0 26px rgba(95,224,255,.16)}
.voyage-sim h3{font-size:32px;margin:0 0 16px}.voyage-sim>p{font-size:20px;color:var(--ink-soft)}
.trust-track{height:20px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden;margin:12px 0 26px}
.trust-track div{height:100%;background:linear-gradient(90deg,#2f86df,#5fe0ff);transition:width .7s cubic-bezier(.2,.8,.2,1)}
.voyage-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.voyage-actions button{padding:14px 10px}
.voyage-output{margin-top:24px;padding:20px;border-radius:16px;background:rgba(255,255,255,.04);border:1px solid var(--line);font-size:17px;line-height:1.55;color:var(--ink-soft);min-height:126px}
.voyage-output strong{color:var(--ink)}

/* closing (slide 23) */
.closing-overlay{position:absolute;left:5vw;top:50%;transform:translateY(-50%);max-width:760px;padding:34px 38px;border-radius:22px;
  background:rgba(6,9,15,.62);border:1px solid var(--line);box-shadow:var(--shadow);backdrop-filter:blur(14px)}
.closing-overlay p{font-size:clamp(19px,1.6vw,30px);margin:0;color:var(--ink-soft)}
.closing-overlay h1{font-size:clamp(44px,5.2vw,92px);margin:.08em 0 .4em;letter-spacing:-.045em;font-weight:600}
.sandbox{color:var(--accent-2)}
.closing-three{display:grid;gap:10px;font-size:clamp(17px,1.35vw,25px);font-weight:650;color:var(--ink)}

/* chrome / progress / notes */
#chrome{position:fixed;z-index:20;left:50%;bottom:16px;transform:translateX(-50%);display:flex;align-items:center;gap:8px;
  padding:8px 12px;border-radius:999px;background:rgba(6,9,15,.66);border:1px solid var(--line);backdrop-filter:blur(16px);
  box-shadow:0 12px 40px rgba(0,0,0,.5);color:var(--ink)}
#chrome button{border:0;background:rgba(255,255,255,.06);color:var(--ink);min-width:42px;height:38px;border-radius:999px;cursor:pointer;padding:0 13px;font-weight:700;transition:.15s}
#chrome button:hover{background:rgba(110,168,255,.22)}
#slideCounter{font-variant-numeric:tabular-nums;font-weight:700;min-width:74px;text-align:center;color:var(--ink-soft)}
#progress{position:fixed;z-index:21;left:0;right:0;top:0;height:3px;background:rgba(255,255,255,.06)}
#progressFill{height:100%;width:0;background:linear-gradient(90deg,var(--accent),var(--accent-2));box-shadow:0 0 14px rgba(95,224,255,.6);transition:width .35s cubic-bezier(.22,.61,.36,1)}
#notesPanel{position:fixed;z-index:30;right:18px;top:18px;bottom:74px;width:min(460px,40vw);padding:24px;border-radius:20px;
  background:rgba(8,12,20,.94);color:var(--ink);border:1px solid var(--line);box-shadow:0 22px 70px rgba(0,0,0,.6);
  backdrop-filter:blur(20px);transform:translateX(calc(100% + 30px));transition:transform .3s cubic-bezier(.22,.61,.36,1);display:flex;flex-direction:column}
#notesPanel.open{transform:none}
.notes-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:14px}
.notes-header strong{font-size:20px}.notes-header button{border:0;background:transparent;color:var(--ink);font-size:26px;cursor:pointer}
#notesBody{font-size:17px;line-height:1.65;color:var(--ink-soft);padding-top:18px;overflow:auto}
.notes-shortcuts{margin-top:auto;padding-top:16px;border-top:1px solid var(--line);font-size:12px;color:var(--ink-faint)}

/* ===================== live-talk upgrades ===================== */
.fragment{opacity:0;transform:translateY(10px);filter:blur(4px);transition:opacity .5s ease,transform .5s ease,filter .5s ease}
.fragment.revealed{opacity:1;transform:none;filter:none}

.canvas-controls{position:absolute;left:14px;bottom:14px;display:flex;gap:6px;z-index:5}
.cc-btn{min-width:40px;height:36px;border-radius:11px;border:1px solid var(--line);background:rgba(8,12,20,.7);color:var(--ink);
  cursor:pointer;font-size:15px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;backdrop-filter:blur(8px);transition:.15s}
.cc-btn:hover{border-color:rgba(110,168,255,.55);transform:translateY(-1px)}
.cc-pause.paused{background:var(--accent);color:#06121f;border-color:var(--accent)}
.paused-badge{position:absolute;right:14px;top:14px;padding:6px 13px;border-radius:999px;background:rgba(8,12,20,.82);
  border:1px solid var(--line);color:var(--ink);font-weight:700;font-size:13px;letter-spacing:.06em;opacity:0;transition:opacity .2s;pointer-events:none;z-index:5}
.visual-card.is-paused .paused-badge{opacity:1}

.slider-control{display:flex;align-items:center;gap:14px;margin-top:28px;font-weight:650;font-size:clamp(14px,1.1vw,18px);color:var(--ink-soft)}
.slider-control>span{min-width:34px;text-align:center;padding:3px 9px;border-radius:8px;background:rgba(110,168,255,.16);color:#bcd4ff;font-variant-numeric:tabular-nums}
.slider-control.on-dark{color:var(--ink-soft)}
input[type=range]{-webkit-appearance:none;appearance:none;flex:1;height:5px;border-radius:999px;background:rgba(255,255,255,.16);outline:none;cursor:pointer}
input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;border-radius:50%;background:var(--accent);cursor:pointer;box-shadow:0 0 14px rgba(110,168,255,.7)}
input[type=range]::-moz-range-thumb{width:20px;height:20px;border:0;border-radius:50%;background:var(--accent);cursor:pointer}

.primary-button{margin-top:14px;width:100%;border:1px solid rgba(110,168,255,.5);
  background:linear-gradient(180deg,rgba(110,168,255,.22),rgba(110,168,255,.08));color:#eaf2ff;padding:15px 18px;border-radius:13px;
  font-weight:750;font-size:clamp(15px,1.25vw,18px);cursor:pointer;box-shadow:0 0 30px rgba(110,168,255,.18);transition:.16s}
.primary-button:hover{background:linear-gradient(180deg,rgba(110,168,255,.34),rgba(110,168,255,.14));transform:translateY(-1px)}
.ghost-button{margin-top:10px;align-self:flex-start;border:1px solid var(--line);background:rgba(255,255,255,.03);color:var(--ink-soft);padding:10px 16px;border-radius:11px;font-weight:650;cursor:pointer;transition:.15s}
.ghost-button:hover{border-color:rgba(110,168,255,.5);color:#fff}

.score-panel{display:none;flex-direction:column;gap:8px;margin-top:14px}
.score-panel.show{display:flex}
.score-chip{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:11px 15px;border-radius:12px;
  background:rgba(255,255,255,.03);border-left:3px solid var(--ink-faint);border-top:1px solid var(--line);border-right:1px solid var(--line);border-bottom:1px solid var(--line);font-size:clamp(14px,1.05vw,16px)}
.score-chip b{font-weight:750;color:var(--ink)}
.score-chip .oc{color:var(--ink-soft)}
.score-chip .sc{font-weight:850;font-variant-numeric:tabular-nums;font-size:19px}
.score-chip.ok{border-left-color:var(--good)}.score-chip.ok .sc{color:var(--good)}
.score-chip.warn{border-left-color:var(--warn)}.score-chip.warn .sc{color:var(--warn)}
.score-chip.bad{border-left-color:var(--bad)}.score-chip.bad .sc{color:var(--bad)}
.score-chip.mid{border-left-color:var(--mid)}
.score-chip.best{background:rgba(82,224,160,.12);box-shadow:0 0 0 1px rgba(82,224,160,.5) inset,0 0 30px rgba(82,224,160,.16)}
.score-chip .crown{grid-column:1/-1;color:var(--good);font-weight:750;font-size:13px;margin-top:2px}

.vote-panel{margin-top:18px;padding:16px;border-radius:16px;background:rgba(110,168,255,.06);border:1px solid rgba(110,168,255,.28)}
.voyage-sim .vote-panel{background:rgba(95,224,255,.06);border-color:rgba(95,224,255,.3)}
.vote-top{display:flex;gap:15px;align-items:center}
.vote-qr{flex:0 0 auto;width:112px;height:112px;border-radius:12px;background:#fff;padding:7px;box-shadow:0 6px 22px rgba(0,0,0,.5)}
.vote-qr canvas{display:block;width:100%;height:100%;image-rendering:pixelated;image-rendering:crisp-edges}
.vote-meta{font-size:13px;line-height:1.55;color:var(--ink-soft)}
.vote-meta b{font-size:15px;color:var(--ink)}
.vote-meta .vote-url{font-family:"SF Mono",ui-monospace,Menlo,Consolas,monospace;font-weight:700;color:var(--accent-2)}
.vote-reset{margin-top:6px;border:1px solid var(--line);background:transparent;color:var(--ink-soft);padding:4px 10px;border-radius:8px;font-size:12px;font-weight:650;cursor:pointer}
.vote-reset:hover{border-color:rgba(110,168,255,.5);color:#fff}
.vote-bars{display:flex;flex-direction:column;gap:8px;margin-top:13px}
.vote-bar{position:relative;height:36px;border-radius:9px;background:rgba(255,255,255,.06);overflow:hidden}
.vote-bar>i{position:absolute;left:0;top:0;bottom:0;width:0;background:linear-gradient(90deg,rgba(110,168,255,.55),rgba(95,224,255,.55));border-radius:9px;transition:width .45s cubic-bezier(.2,.8,.2,1)}
.vote-bar>span{position:absolute;inset:0;display:flex;align-items:center;justify-content:space-between;padding:0 13px;z-index:2;font-weight:700;font-size:14px;color:var(--ink)}

/* responsive + print */
@media(max-width:900px){
  .slide{padding:28px}
  .two-col,.interactive-layout{grid-template-columns:1fr;overflow:auto;align-content:start}
  .canvas-card,.canvas-card canvas,.large-canvas,.large-canvas canvas{min-height:42vh}
  .slide.split-dark.active{grid-template-columns:1fr;overflow:auto}
  .comparison-panel,.voyage-copy,.voyage-sim{min-height:50vh;padding:34px}
  .pipeline{grid-template-columns:1fr;gap:10px}.pipeline-arrow{transform:rotate(90deg)}
  .architecture{flex-direction:column;height:auto}.agent-box{min-width:0;width:100%}.env-box{min-width:0;width:80%}.bidirectional{transform:rotate(90deg)}
  .metric-grid{grid-template-columns:1fr 1fr}.comparison-table{font-size:13px}.comparison-table span{padding:12px 8px}
  .voyage-structure{grid-template-columns:1fr}.voyage-structure>span{transform:rotate(90deg)}
  #notesPanel{width:calc(100vw - 36px)}#notesBtn{display:none}
}
@media print{
  body{overflow:visible}
  #deck{position:static}.slide{position:relative;display:block!important;opacity:1!important;transform:none!important;page-break-after:always;width:100vw;height:56.25vw;max-height:100vh}
  #chrome,#notesPanel{display:none}.fragment{opacity:1!important;transform:none!important;filter:none!important}
  .fx{display:none}
}

/* ---- agenda · section dividers · ambient · entrance ---- */
.agenda-list{display:grid;gap:13px;width:100%;max-width:1120px;margin:38px auto 0;text-align:left}
.agenda-item{display:grid;grid-template-columns:auto 1fr;column-gap:22px;row-gap:4px;align-items:baseline;padding:18px 24px;border:1px solid var(--line);border-radius:16px;background:var(--card)}
.agenda-item span{font-size:26px;font-weight:800;color:var(--accent);font-variant-numeric:tabular-nums}
.agenda-item b{font-size:clamp(19px,1.7vw,27px);font-weight:600}
.agenda-item small{grid-column:2;color:var(--ink-soft);font-size:clamp(13px,1.05vw,16px)}

.section-inner{height:100%;display:flex;align-items:center;gap:clamp(24px,4vw,72px);max-width:1400px;margin:auto;position:relative;z-index:2}
.section-num{font-size:clamp(120px,20vw,320px);font-weight:700;line-height:.8;letter-spacing:-.05em;
  background:linear-gradient(165deg,#9cc1ff,#5fe0ff 60%,#3f8de0);-webkit-background-clip:text;background-clip:text;color:transparent;
  filter:drop-shadow(0 0 50px rgba(95,224,255,.25))}
.section-meta{max-width:800px}
.section-meta h1{font-size:clamp(40px,5.6vw,88px);line-height:1.02;letter-spacing:-.04em;margin:.1em 0 .4em;font-weight:600}
.section-sub{font-size:clamp(18px,1.65vw,30px);color:var(--ink-soft);line-height:1.5;margin:0}
.section-ghost{position:absolute;right:2vw;bottom:-6vh;font-size:50vh;font-weight:800;line-height:1;color:rgba(110,168,255,.04);z-index:0;pointer-events:none;user-select:none}

.slide{isolation:isolate}
.fx{position:absolute;inset:-15%;z-index:-1;pointer-events:none;
  background:radial-gradient(38% 38% at 50% 50%,rgba(110,168,255,.09),transparent 70%);
  animation:fxDrift 26s ease-in-out infinite alternate}
@keyframes fxDrift{0%{transform:translate(-12%,-9%) scale(1)}100%{transform:translate(13%,11%) scale(1.28)}}
.image-slide::after{content:'';position:absolute;inset:0;pointer-events:none;z-index:1;
  background:radial-gradient(135% 95% at 50% -5%,transparent 54%,rgba(4,6,10,.5));
  box-shadow:inset 0 0 220px 70px rgba(4,6,10,.5)}
.corner-caption,.floating-label,.failure-labels,.closing-overlay,.slide-badge{z-index:2}
@media (prefers-reduced-motion:reduce){.fx{animation:none}.image-slide .cover-image,.image-slide .contain-image{animation:none}}

/* ---- latest-models showcase · video · crossfade ---- */
.model-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;width:100%;max-width:1520px;margin:34px auto 0}
.model-card{display:grid;grid-template-columns:auto 1fr;gap:15px;align-items:center;padding:16px 18px;border:1px solid var(--line);border-radius:16px;background:var(--card);text-align:left}
.model-card[data-demo-launcher="1"],.video-links[data-demo-launcher="1"]{cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease}
.model-card[data-demo-launcher="1"]:hover,.model-card[data-demo-launcher="1"]:focus-visible{transform:translateY(-2px);border-color:rgba(95,224,255,.58);background:rgba(110,168,255,.1);box-shadow:0 16px 42px rgba(0,0,0,.24)}
.video-links[data-demo-launcher="1"]:hover .video-qr,.video-links[data-demo-launcher="1"]:focus-visible .video-qr{box-shadow:0 0 0 3px rgba(95,224,255,.28),0 6px 18px rgba(0,0,0,.5)}
.model-card[data-demo-launcher="1"]:focus-visible,.video-links[data-demo-launcher="1"]:focus-visible{outline:3px solid rgba(95,224,255,.72);outline-offset:4px}
.model-qr{background:#fff;border-radius:9px;padding:5px;line-height:0;box-shadow:0 4px 14px rgba(0,0,0,.45)}
.model-qr canvas,.video-qr canvas{display:block;image-rendering:pixelated;image-rendering:crisp-edges}
.model-maker{margin:0;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}
.model-body h3{margin:2px 0 5px;font-size:clamp(18px,1.5vw,24px);font-weight:650}
.model-body p:last-child{margin:0;font-size:clamp(13px,1vw,15px);color:var(--ink-soft);line-height:1.42}
.model-hint{margin-top:20px;color:var(--ink-soft);font-size:15px}

.video-card{min-height:62vh;display:flex;align-items:center;justify-content:center;background:#05080e}
.video-card video{width:100%;height:100%;max-height:62vh;object-fit:contain;display:block;background:#05080e}
.video-fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;padding:40px;color:var(--ink-soft);font-size:clamp(15px,1.2vw,19px);line-height:1.6}
.video-fallback[hidden]{display:none}
.video-credit{position:absolute;left:14px;bottom:12px;z-index:3;padding:5px 11px;border-radius:8px;background:rgba(6,9,15,.72);border:1px solid var(--line);color:var(--ink-soft);font-size:12px;font-weight:650;backdrop-filter:blur(8px)}
.video-fallback code{color:var(--accent-2);font-family:ui-monospace,Menlo,Consolas,monospace}
.video-links{display:flex;align-items:center;gap:16px;margin-top:28px}
.video-qr{background:#fff;border-radius:10px;padding:6px;line-height:0;box-shadow:0 6px 18px rgba(0,0,0,.5)}
.video-link-meta{font-size:14px;line-height:1.5;color:var(--ink-soft)}
.video-link-meta b{font-size:16px;color:var(--ink)}

.cover-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;background:#05080e;display:none}
.try-grid{grid-template-columns:repeat(2,1fr);max-width:1180px}
.state-demo canvas{display:block;width:100%;height:auto;border-radius:16px;border:1px solid var(--line);background:#0a0f1a}
@keyframes kenburns{from{transform:scale(1)}to{transform:scale(1.07)}}
.image-slide.active .cover-image,.image-slide.active .contain-image{animation:kenburns 26s ease-in-out infinite alternate}
.title-slide .title-inner{height:100%;display:flex;flex-direction:column;justify-content:center;max-width:1320px;margin:auto}
.title-h1{font-size:clamp(56px,9vw,148px);line-height:.98;letter-spacing:-.045em;font-weight:600;margin:.1em 0 .26em}
.title-sub{font-size:clamp(22px,2.6vw,46px);color:var(--ink-soft);font-weight:400;margin:0;letter-spacing:-.02em}
.title-tagline{margin-top:clamp(32px,4vw,64px);font-size:clamp(14px,1.2vw,20px);font-weight:750;letter-spacing:.3em;text-transform:uppercase;color:var(--accent)}
.show-grid{display:flex;flex-wrap:wrap;justify-content:center}
.show-grid .model-card{flex:0 1 428px}
.slide.leaving{display:block;z-index:1;opacity:0;transform:translateY(-10px) scale(.99)}
@media(max-width:900px){.model-grid{grid-template-columns:1fr}.video-card,.video-card video{min-height:38vh}}
