:root{font-family:Microsoft YaHei,PingFang SC,system-ui,sans-serif;color:#eef9ff;background:#030916;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}#offline-startup{position:fixed;z-index:99999;inset:0;display:grid;place-content:center;justify-items:center;gap:14px;color:#e9fbff;background:radial-gradient(circle at center,#0b2942,#030916 68%);font-family:Microsoft YaHei,PingFang SC,sans-serif}#offline-startup strong{font-size:28px;letter-spacing:.08em}#offline-startup span{color:#8fc8d7;font-size:15px}#offline-startup i{width:260px;height:4px;overflow:hidden;border-radius:999px;background:#18354b}#offline-startup b{display:block;width:8%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#5de6e6,#a58aff,#ffd15d);transition:width .12s ease}#offline-startup.is-error span{color:#ffb29f}html,body,#root{width:100%;min-width:960px;height:100%;margin:0;overflow:hidden}button{font:inherit}.cell-lesson-app{--panel: rgba(8, 23, 43, .88);--panel-border: rgba(132, 211, 255, .18);--muted: #99b8ca;position:relative;display:grid;grid-template-rows:88px minmax(0,1fr);width:100vw;height:100vh;height:100dvh;overflow:hidden;background:radial-gradient(circle at 52% 45%,rgba(25,111,148,.2),transparent 31%),radial-gradient(circle at 82% 12%,rgba(92,57,172,.16),transparent 28%),linear-gradient(145deg,#020711,#061529 52%,#030917)}.cell-lesson-app:before{position:absolute;inset:0;pointer-events:none;content:"";opacity:.18;background-image:linear-gradient(rgba(110,209,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(110,209,255,.08) 1px,transparent 1px);background-size:54px 54px;-webkit-mask-image:radial-gradient(circle at center,black,transparent 75%);mask-image:radial-gradient(circle at center,black,transparent 75%)}.lesson-header{z-index:2;display:flex;align-items:center;justify-content:space-between;padding:0 28px;border-bottom:1px solid var(--panel-border);background:#030b18d1;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.lesson-brand,.panel-heading,.lesson-header__status,.stage-chip{display:flex;align-items:center}.lesson-header__actions,.stage-top-actions{display:flex;align-items:center;gap:10px}.fullscreen-button,.stage-reset,.stage-back,.lesson-extensions button,.stage-point-controls button,.hotspot-label,.energy-playback-controls button,.human-start-button,.knowledge-card__action,.cell-observation-task__heading button{min-height:52px;color:#d9f6ff;border:1px solid rgba(121,205,235,.22);background:#0a2239db;cursor:pointer;touch-action:manipulation}.fullscreen-button,.stage-reset,.stage-back,.lesson-extensions button,.stage-point-controls button,.energy-playback-controls button,.human-start-button,.knowledge-card__action,.cell-observation-task__heading button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:14px;font-weight:750}.fullscreen-button{min-width:138px;padding:0 18px;color:#062026;border-color:#6aeee2;background:#67e5dc}.fullscreen-button:focus-visible,.stage-reset:focus-visible,.stage-back:focus-visible,.lesson-extensions button:focus-visible,.stage-point-controls button:focus-visible,.hotspot-label:focus-visible,.energy-playback-controls button:focus-visible,.human-start-button:focus-visible,.knowledge-card__action:focus-visible,.cell-observation-task__heading button:focus-visible{outline:3px solid #fff48a;outline-offset:3px}.lesson-brand{gap:15px}.lesson-brand__mark{display:grid;width:54px;height:54px;place-items:center;color:#80fff0;border:1px solid rgba(104,238,230,.38);border-radius:17px;background:linear-gradient(145deg,#29c1bb33,#2764ae21);box-shadow:inset 0 0 18px #42e4d91f,0 0 30px #1ea7b114}.lesson-brand p,.lesson-brand h1,.lesson-stage h2,.knowledge-card h2,.knowledge-card h3,.knowledge-card p,.lesson-nav__tip p,.knowledge-panel__coming p{margin:0}.lesson-brand p{margin-bottom:4px;color:#6fded8;font-size:14px;font-weight:700;letter-spacing:.09em}.lesson-brand h1{font-size:25px;line-height:1.15;letter-spacing:.02em}.lesson-brand h1 span{color:#a9c5d7;font-size:18px;font-weight:500}.lesson-header__status,.stage-chip{min-height:42px;gap:10px;padding:0 16px;color:#b8d3e4;border:1px solid rgba(125,198,235,.18);border-radius:999px;background:#0f263e99;font-size:15px;font-weight:700}.status-dot{width:9px;height:9px;border-radius:50%;background:#5df3c7;box-shadow:0 0 14px #5df3c7}.lesson-workspace{z-index:1;display:grid;grid-template-columns:292px minmax(480px,1fr) 368px;min-height:0;gap:16px;padding:16px}.lesson-nav,.lesson-stage,.knowledge-panel{min-width:0;min-height:0;border:1px solid var(--panel-border);border-radius:22px;background:var(--panel);box-shadow:0 20px 54px #00000040;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.lesson-nav,.knowledge-panel{display:flex;flex-direction:column;padding:20px}.panel-heading{min-height:40px;gap:10px;color:#d9f5ff;font-size:17px;font-weight:800}.panel-heading svg{color:#62e3da}.lesson-nav__items{display:grid;gap:11px;margin-top:18px}.lesson-nav__item{display:grid;grid-template-columns:42px 1fr auto;min-height:62px;align-items:center;gap:10px;padding:9px 12px;color:#9db7c8;text-align:left;border:1px solid rgba(128,193,226,.12);border-radius:15px;background:#081a2f9e}.lesson-nav__item>span{display:grid;width:38px;height:38px;place-items:center;color:#7899ad;border-radius:12px;background:#649cbc1a;font-size:14px;font-weight:800}.lesson-nav__item strong{font-size:16px}.lesson-nav__item small{color:#658295;font-size:12px}.lesson-nav__item.is-active{color:#efffff;border-color:#54eedf70;background:linear-gradient(110deg,#1f9a9e45,#16426c70);box-shadow:inset 3px 0 #5ce9de,0 8px 28px #00000024}.lesson-nav__item.is-active>span{color:#021b21;background:#63e8df}.lesson-nav__item:not(:disabled){cursor:pointer;touch-action:manipulation}.lesson-nav__item:focus-visible{outline:3px solid #fff48a;outline-offset:2px}.lesson-nav__item:disabled{cursor:not-allowed;opacity:.52}.lesson-nav__tip{display:flex;gap:12px;margin-top:auto;padding:16px;color:#afc9d8;border:1px solid rgba(123,211,230,.16);border-radius:16px;background:#17475b40}.lesson-extensions{margin-top:20px;padding-top:17px;border-top:1px solid rgba(122,194,226,.14)}.lesson-extensions>span{display:block;margin-bottom:10px;color:#799aad;font-size:13px;font-weight:800;letter-spacing:.06em}.lesson-extensions>div{display:grid;grid-template-columns:1fr 1fr;gap:8px}.lesson-extensions button{min-width:0;padding:0 10px;color:#a9c2d0;font-size:14px}.lesson-extensions button:first-child{grid-column:1 / -1}.lesson-extensions button.is-active{color:#eaffff;border-color:#5ee8dd7a;background:#228a9157;box-shadow:inset 0 0 16px #4ae2da14}.lesson-nav__tip svg{flex:0 0 auto;color:#ffdc78}.lesson-nav__tip strong{display:block;margin-bottom:6px;color:#e5f8ff;font-size:15px}.lesson-nav__tip p{font-size:14px;line-height:1.6}.lesson-stage{position:relative;display:grid;grid-template-rows:76px minmax(0,1fr);overflow:hidden;background:radial-gradient(circle at 50% 52%,rgba(36,148,179,.16),transparent 38%),#030e1dc7}.lesson-stage__topline{z-index:2;display:flex;align-items:center;justify-content:space-between;padding:15px 22px;border-bottom:1px solid rgba(121,199,232,.13)}.lesson-stage__topline>div:first-child>span{color:#5fe4d8;font-size:13px;font-weight:800;letter-spacing:.08em}.lesson-stage h2{margin-top:3px;font-size:23px}.stage-chip{min-height:38px;color:#cfe8f4;font-size:14px}.stage-chip svg{color:#6eece2}.stage-reset,.stage-back{min-height:52px;padding:0 13px;color:#a9c5d4;border-radius:12px;font-size:14px}.stage-back{color:#d7fffa;border-color:#59e4da57}.lesson-stage__canvas-wrap{position:relative;min-height:0}.module-scene-layer{position:absolute;inset:0}.cell-module-layer{z-index:1}.human-module-layer{z-index:2}.cell-module-layer.is-handoff{opacity:var(--module-handoff-progress);pointer-events:none}.human-module-layer.is-handoff{opacity:calc(1 - var(--module-handoff-progress));pointer-events:none}.cell-lesson-app[data-module-handoff=running] .stage-hint,.cell-lesson-app[data-module-handoff=running] .stage-point-controls{opacity:0;pointer-events:none}.lesson-stage.is-energy{background:radial-gradient(circle at 63% 45%,rgba(255,191,74,.09),transparent 28%),radial-gradient(circle at 44% 55%,rgba(45,164,205,.19),transparent 44%),#030e1dc7}.lesson-stage.is-human{background:radial-gradient(circle at 51% 39%,rgba(71,222,236,.18),transparent 31%),radial-gradient(circle at 55% 72%,rgba(62,107,206,.17),transparent 43%),#020d1dd1}.lesson-stage.is-dna{background:radial-gradient(circle at 63% 43%,rgba(133,103,255,.18),transparent 31%),radial-gradient(circle at 39% 58%,rgba(56,200,224,.15),transparent 43%),#030c1fcc}.energy-journey{--energy-progress: 0%;position:relative;width:100%;height:100%;overflow:hidden;isolation:isolate}.energy-journey:before{position:absolute;z-index:1;inset:0;pointer-events:none;content:"";opacity:.34;background:radial-gradient(circle at 21% 28%,rgba(91,227,241,.2) 0 2px,transparent 3px),radial-gradient(circle at 77% 38%,rgba(255,207,100,.18) 0 2px,transparent 3px),radial-gradient(circle at 64% 70%,rgba(107,177,255,.16) 0 1px,transparent 2px);background-size:160px 160px,210px 210px,125px 125px}.energy-canvas{position:absolute!important;inset:0}.energy-scene-caption{position:absolute;z-index:4;top:18px;left:20px;width:min(380px,36%);padding:16px 18px 15px;border:1px solid rgba(116,213,238,.2);border-radius:17px;background:#041425c7;box-shadow:0 16px 38px #0000003d;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);pointer-events:none}.energy-scene-caption>span{display:flex;align-items:center;gap:8px;color:#ffd66a;font-size:13px;font-weight:850;letter-spacing:.06em}.energy-scene-caption>span svg{color:#67e4ee}.energy-scene-caption strong{display:block;margin-top:7px;color:#f2fbff;font-size:19px;line-height:1.35}.energy-scene-caption p{margin:7px 0 0;color:#a9c5d3;font-size:14px;line-height:1.55}.energy-science-note{display:block;margin-top:8px;color:#82b8c8;font-size:11px;line-height:1.45}.energy-progress{height:4px;margin-top:13px;overflow:hidden;border-radius:999px;background:#7cc1db24}.energy-progress i{display:block;width:var(--energy-progress);height:100%;border-radius:inherit;background:linear-gradient(90deg,#55dce7,#ffd563);box-shadow:0 0 12px #ffcd558f}.energy-loading-status{position:absolute;z-index:7;top:45%;left:50%;display:grid;min-width:330px;justify-items:center;gap:8px;padding:19px 24px;transform:translate(-50%,-50%);color:#e9fbff;border:1px solid rgba(98,226,232,.28);border-radius:18px;background:#031222eb;box-shadow:0 20px 52px #0006;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);pointer-events:none}.energy-loading-status strong{font-size:16px}.energy-loading-status small{color:#90adbb;font-size:13px}.energy-teaching-bar{position:absolute;z-index:6;right:18px;bottom:16px;left:18px;display:grid;grid-template-columns:328px minmax(0,1fr);align-items:center;gap:12px;min-height:92px;padding:11px;border:1px solid rgba(119,208,232,.2);border-radius:19px;background:#031120e0;box-shadow:0 18px 42px #0000004d;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.energy-playback-controls{display:grid;grid-template-columns:.9fr .9fr 1.25fr;gap:8px}.energy-playback-controls button{display:inline-flex;min-width:0;align-items:center;justify-content:center;gap:7px;padding:0 11px;color:#d9f9ff;border-radius:13px;font-size:14px;font-weight:800}.energy-playback-controls button:first-child{color:#062127;border-color:#67e7df;background:#66e5dc}.energy-playback-controls button:disabled{cursor:not-allowed;filter:saturate(.45);opacity:.44}.energy-stepper{display:grid;grid-template-columns:auto repeat(3,minmax(0,1fr));align-items:center;gap:8px}.energy-stepper__label{padding:0 6px 0 2px;color:#7796a8;font-size:13px;font-weight:800;writing-mode:vertical-rl;letter-spacing:.08em}.energy-step{position:relative;display:grid;grid-template-columns:38px minmax(0,1fr);min-height:60px;align-items:center;gap:9px;padding:8px 10px;overflow:hidden;color:#7f9caf;border:1px solid rgba(114,183,215,.13);border-radius:14px;background:#081f3399}.energy-step:after{position:absolute;right:0;bottom:0;left:0;height:3px;content:"";transform:scaleX(0);transform-origin:left;background:linear-gradient(90deg,#54dfea,#ffd15b)}.energy-step>span{display:grid;width:36px;height:36px;place-items:center;border-radius:11px;background:#77aec91a;font-size:14px;font-weight:900}.energy-step strong{min-width:0;font-size:14px;line-height:1.35}.energy-step.is-active{color:#f2fcff;border-color:#5ee1e75c;background:linear-gradient(120deg,#1d80915c,#4c418447)}.energy-step.is-active>span{color:#062127;background:#62e2df;box-shadow:0 0 17px #5ee5df3b}.energy-step.is-active:after{right:auto;width:var(--energy-progress);transform:none}.energy-step.is-complete:not(.is-active){color:#9dd7c1;border-color:#58d6a538}.energy-step.is-complete:not(.is-active):after{width:100%;transform:scaleX(1);background:#54d29f}.energy-knowledge-card .knowledge-card__function p{color:#d9e9ee;line-height:1.75}.energy-prompt{border-left-color:#e9b94a;background:linear-gradient(110deg,#9c6d1930,#41348526)}.energy-prompt>svg,.energy-prompt span{color:#ffd161}.human-to-cell-journey:before{opacity:.5;background:linear-gradient(rgba(85,224,236,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(85,224,236,.035) 1px,transparent 1px),radial-gradient(circle at 16% 24%,rgba(100,239,247,.23) 0 2px,transparent 3px),radial-gradient(circle at 81% 39%,rgba(255,215,111,.18) 0 2px,transparent 3px);background-size:58px 58px,58px 58px,170px 170px,230px 230px;-webkit-mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.66) 72%,transparent 100%);mask-image:linear-gradient(to bottom,#000 0%,rgba(0,0,0,.66) 72%,transparent 100%)}.human-scene-caption{border-color:#5be4ee47;background:linear-gradient(145deg,#04192be0,#081939c7)}.human-scene-caption>span,.human-scene-caption>span svg{color:#71edf4}.human-scene-caption p{color:#dffcff;font-size:16px;font-weight:750}.human-progress i,.human-stage-step.is-active:after{width:var(--human-progress);background:linear-gradient(90deg,#55e7ee,#78b9ff,#ffe184);box-shadow:0 0 14px #59e7f08a}.human-start-panel{position:absolute;z-index:5;top:29%;right:24px;display:grid;width:min(350px,35%);gap:8px;padding:20px;color:#eaffff;border:1px solid rgba(99,229,238,.3);border-radius:20px;background:linear-gradient(140deg,#062237e6,#0a1c3ee0);box-shadow:0 20px 48px #00000057,0 0 32px #43d3e014;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.human-start-panel>span{display:flex;align-items:center;gap:8px;color:#72eaf2;font-size:13px;font-weight:850;letter-spacing:.07em}.human-start-panel>strong{font-size:19px;line-height:1.45}.human-start-panel>p{margin:0 0 6px;color:#9dbdcb;font-size:14px;line-height:1.55}.human-start-button{width:100%;min-height:58px;padding:0 18px;color:#062127;border-color:#72eee8;background:linear-gradient(135deg,#6ce7df,#73c9ec);font-size:16px}.human-start-button:disabled{cursor:wait;filter:saturate(.45);opacity:.58}.human-loading-status{border-color:#5fe5ee61}.human-teaching-bar{grid-template-columns:318px minmax(0,1fr);border-color:#62e0eb3d;background:#031223e8}.human-playback-controls{grid-template-columns:repeat(3,minmax(0,1fr))}.human-playback-controls button:last-child{color:#ffe3a0;border-color:#ffd36952;background:#694a1947}.human-stage-stepper{grid-template-columns:auto repeat(3,minmax(0,1fr))}.human-stage-step{min-height:64px}.human-stage-step strong{font-size:13px}.human-stage-step.is-active{border-color:#65e8ef6b;background:linear-gradient(120deg,#1d87976b,#30508e57)}.human-stage-step.is-active>span{color:#062127;background:linear-gradient(135deg,#65e8e2,#92ddf6)}.human-complete-badge{position:absolute;z-index:5;top:20px;right:22px;display:flex;min-height:46px;align-items:center;gap:9px;padding:0 15px;color:#dffefa;border:1px solid rgba(91,232,207,.35);border-radius:999px;background:#07353cc2;box-shadow:0 12px 30px #00000040;font-size:14px;font-weight:800;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);pointer-events:none}.human-complete-badge svg{color:#ffe079}.human-knowledge-card{background:radial-gradient(circle at 91% 8%,rgba(79,218,234,.22),transparent 36%),linear-gradient(145deg,#0f3044e0,#132048c7)}.human-prompt{border-left-color:#62dfe8;background:linear-gradient(110deg,#1b79893d,#27438a2b)}.human-prompt>svg,.human-prompt span{color:#6de8ef}.dna-explorer:before{opacity:.42;background:radial-gradient(circle at 18% 24%,rgba(123,226,243,.22) 0 2px,transparent 3px),radial-gradient(circle at 74% 34%,rgba(174,137,255,.24) 0 2px,transparent 3px),linear-gradient(rgba(128,114,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(128,114,255,.035) 1px,transparent 1px);background-size:170px 170px,220px 220px,54px 54px,54px 54px}.dna-scene-caption>span{color:#c9b5ff}.dna-scene-caption>span svg{color:#75e8f2}.dna-scene-caption .energy-progress i,.dna-step.is-active:after{background:linear-gradient(90deg,#64e5ed,#a98cff,#e0b8ff);box-shadow:0 0 12px #a789ff8c}.dna-teaching-bar{border-color:#a385ff3d;background:#040e23e6}.dna-step.is-active{border-color:#ab8fff75;background:linear-gradient(120deg,#23809957,#60409e6b)}.dna-step.is-active>span,.dna-playback-controls button:first-child{color:#0a1730;border-color:#a99aff;background:linear-gradient(135deg,#70e8ed,#b89dff)}.dna-loading-status{border-color:#ad8fff61}.dna-insight-reveal{position:absolute;z-index:5;top:31%;right:22px;display:flex;width:min(330px,32%);gap:12px;padding:16px 18px;color:#eafcff;border:1px solid rgba(173,143,255,.4);border-radius:17px;background:linear-gradient(120deg,#0d2d42d6,#301f5bdb);box-shadow:0 16px 42px #0000004d,0 0 28px #8666ff1f;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);pointer-events:none;animation:dna-insight-in .5s ease-out both}.dna-insight-reveal>svg{flex:0 0 auto;color:#72e8ef}.dna-insight-reveal span{display:block;margin-bottom:5px;color:#bba2ff;font-size:13px;font-weight:850;letter-spacing:.08em}.dna-insight-reveal strong{font-size:15px;line-height:1.55}.dna-knowledge-card{background:radial-gradient(circle at 92% 8%,rgba(152,117,255,.25),transparent 34%),linear-gradient(145deg,#112b43db,#261c48c7)}.dna-knowledge-copy,.dna-keyword-block,.dna-keywords span{transition:opacity .45s ease,transform .45s ease,border-color .45s ease}.dna-knowledge-card.is-preparing .dna-knowledge-copy,.dna-knowledge-card.is-preparing .dna-keyword-block{opacity:.62;transform:translateY(5px)}.dna-knowledge-card.is-revealed .dna-knowledge-copy,.dna-knowledge-card.is-revealed .dna-keyword-block{opacity:1;transform:none}.dna-keywords{display:flex;flex-wrap:wrap;gap:8px}.dna-keywords span{min-height:34px;padding:8px 11px;color:#d8ccff;border:1px solid rgba(183,156,255,.26);border-radius:999px;background:#694bb129;font-size:13px;font-weight:800}.dna-knowledge-card.is-revealed .dna-keywords span{color:#ecfaff;border-color:#6fe5eb61}.dna-prompt{border-left-color:#9d7cff;background:linear-gradient(110deg,#4a349740,#1752672e)}.dna-prompt>svg,.dna-prompt span{color:#bba2ff}@keyframes dna-insight-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.cell-scene-shell{--cell-focus-progress: 0%;--cell-entry-scale: .82;--cell-entry-opacity: 1;--cell-entry-scan-y: 10%;position:relative;width:100%;height:100%;overflow:hidden;isolation:isolate}.cell-microscope-entry{position:absolute;z-index:4;inset:0;overflow:hidden;pointer-events:none}.cell-microscope-entry:before{position:absolute;inset:0;content:"";background:radial-gradient(circle at center,transparent 0 32%,rgba(5,24,43,.1) 51%,rgba(2,12,27,.58) 100%),linear-gradient(90deg,rgba(80,230,237,.04),transparent 25% 75%,rgba(109,141,255,.05))}.cell-microscope-entry__ring{position:absolute;top:50%;left:50%;width:min(58vh,56vw);aspect-ratio:1;border:1px solid rgba(102,235,241,.48);border-radius:50%;opacity:var(--cell-entry-opacity);transform:translate(-50%,-50%) scale(var(--cell-entry-scale));box-shadow:0 0 26px #58e7ef33,inset 0 0 30px #58e7ef14}.cell-microscope-entry__ring.is-inner{width:min(39vh,38vw);border-color:#b797ff6b;border-style:dashed;box-shadow:0 0 20px #b089ff26}.cell-microscope-entry__scan{position:absolute;top:var(--cell-entry-scan-y);left:10%;width:80%;height:2px;opacity:var(--cell-entry-opacity);background:linear-gradient(90deg,transparent,rgba(93,235,241,.35),#c0ffff,rgba(93,235,241,.35),transparent);box-shadow:0 0 18px #62eef480}.cell-microscope-entry__reticle{position:absolute;top:50%;left:50%;width:76px;height:76px;opacity:var(--cell-entry-opacity);transform:translate(-50%,-50%);background:linear-gradient(#6beaf0,#6beaf0) center top / 1px 18px no-repeat,linear-gradient(#6beaf0,#6beaf0) center bottom / 1px 18px no-repeat,linear-gradient(90deg,#6beaf0,#6beaf0) left center / 18px 1px no-repeat,linear-gradient(90deg,#6beaf0,#6beaf0) right center / 18px 1px no-repeat;filter:drop-shadow(0 0 7px rgba(103,234,240,.7))}.cell-scene-shell:before{position:absolute;z-index:1;inset:0;pointer-events:none;content:"";opacity:.34;background:radial-gradient(circle at 18% 24%,rgba(96,228,240,.18) 0 2px,transparent 3px),radial-gradient(circle at 78% 34%,rgba(173,139,255,.15) 0 2px,transparent 3px);background-size:180px 180px,230px 230px}.cell-focus-caption{position:absolute;z-index:5;top:18px;left:20px;width:min(370px,43%);padding:15px 18px;color:#ecfbff;border:1px solid rgba(104,226,235,.28);border-radius:17px;background:linear-gradient(145deg,#03192be6,#0a1939d1);box-shadow:0 18px 42px #00000047,0 0 28px #50dce514;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);pointer-events:none}.cell-focus-caption>span{color:#67e8ee;font-size:13px;font-weight:850;letter-spacing:.08em}.cell-focus-caption strong{display:block;margin-top:6px;font-size:19px;line-height:1.35}.cell-focus-caption p{margin:7px 0 0;color:#a9c7d6;font-size:14px;line-height:1.55}.cell-focus-caption.is-nucleus{border-color:#b589ff61}.cell-focus-caption.is-mitochondria{border-color:#ffad6261}.cell-focus-caption.is-cell-overview{border-color:#5de8ef6b;background:linear-gradient(145deg,#031f32eb,#0c1e43d9)}.cell-focus-progress{height:4px;margin-top:12px;overflow:hidden;border-radius:999px;background:#7fc6dd24}.cell-focus-progress i{display:block;width:var(--cell-focus-progress);height:100%;border-radius:inherit;background:linear-gradient(90deg,#59e6eb,#a688ff,#ffb462);box-shadow:0 0 12px #66e5ec7a}.focus-region-label{display:flex;min-height:40px;align-items:center;gap:8px;padding:0 13px;white-space:nowrap;color:#f4efff;border:1px solid rgba(181,137,255,.42);border-radius:999px;background:#0f132ee6;box-shadow:0 10px 26px #00000047,0 0 18px #b589ff2b;font-size:13px;font-weight:800;pointer-events:none}.focus-region-label span{width:9px;height:9px;border-radius:50%;background:#b589ff;box-shadow:0 0 11px #b589ff}.focus-region-label.is-cell-membrane{color:#e8ffff;border-color:#5ee8f080;background:#082535eb}.focus-region-label.is-cell-membrane span{background:#5ee8f0;box-shadow:0 0 11px #5ee8f0}.focus-region-label.is-mitochondria{color:#fff1df;border-color:#ffad6280;box-shadow:0 10px 26px #00000047,0 0 18px #ffad622e}.focus-region-label.is-mitochondria span{background:#ffad62;box-shadow:0 0 11px #ffad62}.lesson-canvas{width:100%!important;height:100%!important;touch-action:none;cursor:grab}.lesson-canvas:active{cursor:grabbing}.stage-hint{position:absolute;bottom:86px;left:50%;display:flex;min-height:42px;align-items:center;gap:12px;padding:0 16px;transform:translate(-50%);white-space:nowrap;color:#a5bfce;border:1px solid rgba(125,204,235,.15);border-radius:999px;background:#041121c2;font-size:14px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);pointer-events:none}.stage-point-controls{position:absolute;bottom:18px;left:50%;z-index:4;display:flex;gap:10px;padding:7px;transform:translate(-50%);border:1px solid rgba(125,204,235,.16);border-radius:18px;background:#030f1ed1;box-shadow:0 14px 36px #00000042;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px)}.stage-point-controls button{min-width:122px;padding:0 16px;color:#a9c4d1}.stage-point-controls button.is-active{color:#061e24;border-color:#66e4db;background:#64e3da}.stage-point-controls button:disabled{cursor:not-allowed;opacity:.5}.stage-point-controls button.is-active:disabled{opacity:.86}.hotspot-label{--hotspot-color: #65e4dc;display:flex;min-width:112px;align-items:center;justify-content:center;gap:9px;padding:0 16px;white-space:nowrap;color:#f2fdff;border-color:color-mix(in srgb,var(--hotspot-color) 58%,transparent);border-radius:999px;background:#051424eb;box-shadow:0 10px 30px #0000004d,0 0 18px color-mix(in srgb,var(--hotspot-color) 20%,transparent);font-size:15px;font-weight:800}.hotspot-label span{width:10px;height:10px;border-radius:50%;background:var(--hotspot-color);box-shadow:0 0 12px var(--hotspot-color)}.stage-hint i{width:4px;height:4px;border-radius:50%;background:#55dace}.scene-loading{display:grid;min-width:220px;justify-items:center;gap:8px;padding:20px 24px;color:#e5fbff;border:1px solid rgba(94,229,219,.3);border-radius:18px;background:#041424e6;box-shadow:0 18px 50px #00000059}.scene-loading__ring{width:34px;height:34px;border:3px solid rgba(99,232,223,.22);border-top-color:#63e8df;border-radius:50%;animation:loading-spin .8s linear infinite}.scene-loading small{color:#9cb9c8}@keyframes loading-spin{to{transform:rotate(360deg)}}.knowledge-card{--point-accent: #65e4dc;position:relative;margin-top:18px;padding:22px;overflow:hidden;border:1px solid color-mix(in srgb,var(--point-accent) 42%,transparent);border-radius:20px;background:radial-gradient(circle at 92% 8%,color-mix(in srgb,var(--point-accent) 22%,transparent),transparent 34%),#0a1f36c7}.knowledge-card:before{position:absolute;top:0;left:22px;width:72px;height:3px;content:"";border-radius:0 0 4px 4px;background:var(--point-accent);box-shadow:0 0 18px var(--point-accent)}.knowledge-card__eyebrow{color:var(--point-accent);font-size:13px;font-weight:800;letter-spacing:.1em}.knowledge-card__icon{display:grid;width:58px;height:58px;margin:18px 0 16px;place-items:center;color:var(--point-accent);border:1px solid color-mix(in srgb,var(--point-accent) 42%,transparent);border-radius:18px;background:color-mix(in srgb,var(--point-accent) 12%,transparent)}.knowledge-card h2{font-size:28px;line-height:1.2}.knowledge-card h3{margin-top:6px;color:var(--point-accent);font-size:17px;font-weight:700}.knowledge-card>p{margin-top:20px;color:#bad0dc;font-size:16px;line-height:1.8}.knowledge-card__function{margin-top:22px;padding:16px;border-radius:14px;background:#030f1d94}.knowledge-card__function strong{display:block;margin-bottom:7px;color:#edfaff;font-size:15px}.knowledge-card__function p{color:#9fbdcd;font-size:14px;line-height:1.65}.knowledge-card__meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:17px}.knowledge-card__meta span{min-height:32px;padding:7px 10px;color:#8facbc;border:1px solid rgba(127,194,224,.14);border-radius:999px;background:#030e1b75;font-size:12px;font-weight:750}.knowledge-card__meta span.is-ready{color:#80e5bd;border-color:#5be2af3d}.knowledge-card__meta span.is-fallback{color:#e7bd72;border-color:#ecb55447}.cell-structure-card__reveal{transition:opacity .42s ease,transform .42s ease}.cell-structure-card__reveal>p{margin:20px 0 0;color:#bad0dc;font-size:16px;line-height:1.75}.cell-structure-card.is-focusing .cell-structure-card__reveal{opacity:.2;transform:translateY(8px);pointer-events:none}.cell-focus-card-status{display:flex;min-height:64px;align-items:center;gap:13px;margin-top:17px;padding:11px 13px;color:#e8fbff;border:1px solid rgba(100,227,233,.22);border-radius:14px;background:#06192bc2}.cell-focus-card-status .scene-loading__ring{width:29px;height:29px;flex:0 0 auto}.cell-focus-card-status strong,.cell-focus-card-status small{display:block}.cell-focus-card-status strong{font-size:14px}.cell-focus-card-status small{margin-top:3px;color:#84aebf;font-size:12px}.knowledge-card__action{display:inline-flex;width:100%;align-items:center;justify-content:center;gap:9px;margin-top:14px;padding:0 16px;color:#081d2c;border-color:#7bebeda8;border-radius:14px;background:linear-gradient(135deg,#68e6e6,#9aa8ff);font-size:15px;font-weight:850}.knowledge-card__action.is-mitochondria{border-color:#ffc66db3;background:linear-gradient(135deg,#ffd36c,#69dce5)}.cell-observation-task{margin-top:auto;padding:14px;border:1px solid rgba(109,207,230,.18);border-radius:17px;background:linear-gradient(145deg,#071d31d6,#0f1c3ac2)}.cell-observation-task__heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.cell-observation-task__heading span,.cell-observation-task__heading strong{display:block}.cell-observation-task__heading span{margin-bottom:3px;color:#64e4e4;font-size:12px;font-weight:850;letter-spacing:.08em}.cell-observation-task__heading strong{color:#edfaff;font-size:15px}.cell-observation-task__heading button{min-width:100px;padding:0 11px;color:#dffcff;border-radius:13px;font-size:13px;font-weight:800}.cell-observation-task ol{display:grid;gap:6px;margin:11px 0;padding:0;list-style:none}.cell-observation-task li{display:grid;grid-template-columns:34px minmax(0,1fr);min-height:42px;align-items:center;gap:9px;padding:5px 9px;color:#8faebe;border:1px solid rgba(115,187,215,.11);border-radius:12px;background:#0412227a}.cell-observation-task li>span{display:grid;width:30px;height:30px;place-items:center;color:#789bac;border-radius:9px;background:#5fa8c71a;font-size:12px;font-weight:900}.cell-observation-task li p{margin:0;font-size:13px;font-weight:750;line-height:1.35}.cell-observation-task li p strong,.cell-observation-task li p small{display:block}.cell-observation-task li p strong{color:#e9fbff;font-size:13px}.cell-observation-task li p small{margin-top:2px;color:#85a9ba;font-size:11px;font-weight:650}.cell-observation-task li.is-active{color:#f1feff;border-color:#5de4e066;background:#1b778140}.cell-observation-task li.is-active>span{color:#062026;background:#65e5dc}.cell-observation-task li.is-complete{color:#a7e4c9;border-color:#5bdaa53d}.cell-observation-task li.is-complete>span{color:#74e0b4;background:#38b18029}.cell-observation-task__feedback{display:flex;min-height:48px;align-items:center;gap:9px;padding:9px 11px;color:#b5cfdb;border-left:3px solid #7969e8;border-radius:4px 11px 11px 4px;background:#48379329}.cell-observation-task__feedback svg{flex:0 0 auto;color:#ffda73}.cell-observation-task__feedback p{margin:0;font-size:12px;line-height:1.45}.cell-observation-task.is-complete{border-color:#5ee2af54}.cell-observation-task.is-complete .cell-observation-task__feedback{color:#dcfff1;border-left-color:#5cdea9;background:#21845f2b}.cell-observation-task__feedback[data-feedback-state=correct]{color:#e2fff5;border-left-color:#63ddb1;background:#28896729}.cell-observation-task__feedback[data-feedback-state=incorrect]{color:#ffe5cd;border-left-color:#ffad62;background:#a0542629}.knowledge-panel__prompt{display:flex;gap:12px;margin-top:auto;padding:17px;border-left:3px solid #765ce6;border-radius:4px 15px 15px 4px;background:#4b379429}.knowledge-panel__prompt>svg{flex:0 0 auto;color:#ffd66b}.knowledge-panel__prompt span{display:block;margin-bottom:5px;color:#a696ff;font-size:13px;font-weight:800}.knowledge-panel__prompt strong{color:#eef1ff;font-size:16px}.knowledge-panel__prompt p{margin:7px 0 0;color:#9faec7;font-size:13px;line-height:1.55}.fullscreen-message{margin:10px 0 0;color:#ffcf83;font-size:14px;line-height:1.5}.knowledge-panel__coming{margin-top:auto;padding:17px;border-left:3px solid #765ce6;border-radius:4px 15px 15px 4px;background:#4b379429}.knowledge-panel__coming span{display:block;margin-bottom:5px;color:#9f8fff;font-size:13px;font-weight:800}.knowledge-panel__coming strong{color:#eef1ff;font-size:16px}.knowledge-panel__coming p{margin-top:6px;color:#9faec7;font-size:13px;line-height:1.55}@media(max-width:1360px){.lesson-workspace{grid-template-columns:246px minmax(420px,1fr) 318px;gap:12px;padding:12px}.lesson-nav,.knowledge-panel{padding:16px}.lesson-brand h1{font-size:22px}.lesson-header__status,.stage-chip{display:none}.stage-point-controls button{min-width:104px;padding:0 12px}.energy-teaching-bar{grid-template-columns:1fr}.energy-scene-caption{width:min(340px,48%)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
