:root{font-family:"PingFang SC","Microsoft YaHei",sans-serif;color:#062870;background:#0b2549;font-synthesis:none}*{box-sizing:border-box}body{margin:0;width:100vw;height:100vh;overflow:hidden}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,canvas:focus-visible,summary:focus-visible{outline:3px solid #ffce5c;outline-offset:5px}[hidden]{display:none!important}#course{width:1920px;height:1080px;position:absolute;left:50%;top:50%;transform-origin:center;overflow:hidden;background:#dcecff}.laboratory{position:absolute;inset:0;background-position:center;background-size:cover;background-repeat:no-repeat}.laboratory:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#ffffff35,transparent 42%);pointer-events:none}header{position:absolute;top:42px;left:58px;pointer-events:none}.eyebrow{font-size:19px;letter-spacing:2px;font-weight:650;margin:0 0 17px}h1{font-size:78px;letter-spacing:4px;line-height:1.15;margin:0;color:#032365;text-shadow:0 2px 12px #fff7}.subtitle{font-size:28px;font-weight:600;margin:16px 0 0;letter-spacing:1px}.top-tools{position:absolute;right:56px;top:43px;display:flex;gap:12px;align-items:center;z-index:4}.top-tools button{display:flex;align-items:center;gap:13px;border-radius:40px;border:1px solid #beddfd;background:#083c77b5;color:white;padding:16px 25px;font-size:22px;box-shadow:inset 0 0 0 1px #ffffff33,0 3px 12px #002d6619;backdrop-filter:blur(14px)}.top-tools button:hover{background:#0b65b2dc}.top-tools svg{width:31px;height:31px;fill:none;stroke:currentColor;stroke-width:1.5}.top-tools #fullscreen{padding:14px 17px;font-size:26px}.model-area{position:absolute;top:240px;width:770px;height:443px}.model-area.left{left:275px}.model-area.right{left:917px}canvas{display:block;width:100%;height:100%;touch-action:none;cursor:grab}canvas:active{cursor:grabbing}.orbital-tag{pointer-events:none;position:absolute;left:50%;bottom:-13px;transform:translateX(-50%);white-space:nowrap;font-size:19px;letter-spacing:.3px;font-weight:550;display:flex;align-items:center;gap:12px;color:white;border:1px solid #c6f6ff;border-radius:12px;padding:10px 16px;background:linear-gradient(110deg,#034a9eea,#003b7edb);box-shadow:0 0 9px #67deff88,inset 0 0 8px #0eafff44;backdrop-filter:blur(7px)}.orbital-tag i{height:7px;width:7px;border-radius:50%;background:#ffda78;box-shadow:0 0 7px #ffd983}.nameplate{position:absolute;top:729px;width:348px;height:78px;display:flex;flex-direction:column;justify-content:center;align-items:center;border:1px solid #daecff;border-radius:11px;color:#fff;background:linear-gradient(130deg,#235695de,#173c7ce8);box-shadow:0 4px 20px #07377730,inset 0 0 0 2px #ffffff18;backdrop-filter:blur(8px)}.name-py{left:486px}.name-pl{left:1128px}.nameplate h2{font-size:32px;line-height:1.2;margin:0;letter-spacing:1px}.nameplate small{font-size:27px;font-weight:450;margin-left:10px}.nameplate>span{font-size:13px;color:#c5e9ff;letter-spacing:.8px;margin-top:6px}.conclusion{position:absolute;top:827px;left:729px;width:470px;height:70px;border-radius:23px;background:linear-gradient(#fcffffed,#d8edffe0);border:1px solid #fff;box-shadow:0 0 0 1px #52b6ff88,0 6px 22px #20549111;display:flex;align-items:center;justify-content:center;font-size:27px;gap:10px}.conclusion strong{font-size:32px;font-weight:650}.conclusion em{font-size:41px;font-style:normal;vertical-align:-3px;margin:0 17px;color:#0875df}.scene-tools{position:absolute;left:65px;right:65px;top:849px;display:flex;align-items:center;gap:22px;font-size:14px;color:#31577f}.legend{display:flex;align-items:center;gap:7px}.legend i{display:inline-block;width:14px;height:14px;border-radius:50%;margin-left:8px;border:1px solid #9eaebc}.legend .gray{background:#637385}.legend .blue{background:#0968eb;border-color:#095cd4}.legend .white{background:#fff}.view-buttons{display:flex;gap:3px;margin-left:auto;padding:4px;border:1px solid #d8efff;background:#ffffffb8;border-radius:24px;backdrop-filter:blur(10px)}.view-buttons button{border:0;background:transparent;border-radius:18px;color:#224e79;padding:8px 19px;font-size:16px}.view-buttons button[aria-pressed=true]{background:#096ee8;color:white}.transport{position:absolute;left:56px;right:56px;top:926px;height:103px;padding:0 29px;display:flex;align-items:center;gap:25px;border:1px solid white;border-radius:28px;background:linear-gradient(110deg,#ffffffed,#e3f1ffed);box-shadow:inset 0 0 24px #fff,0 9px 35px #1b48842a;backdrop-filter:blur(15px)}.timeline{display:flex;align-items:center;gap:19px;font-size:21px;font-weight:600;width:579px;flex-shrink:0}.timeline output{font-size:27px;min-width:72px;font-variant-numeric:tabular-nums}.timeline input{width:337px;height:8px;appearance:none;border-radius:8px;background:linear-gradient(to right,#0ba1ee 0%,#096dff var(--progress,100%),#b6d7ee var(--progress,100%),#b6d7ee 100%);cursor:pointer;box-shadow:0 0 0 2px #fff}.timeline input::-webkit-slider-thumb{appearance:none;width:29px;height:29px;border:4px solid white;border-radius:50%;background:#0096ff;box-shadow:0 0 9px #098aff99}.timeline input::-moz-range-thumb{width:23px;height:23px;border:4px solid white;border-radius:50%;background:#0096ff}.switches{display:flex;gap:27px;padding-left:24px;border-left:1px solid #9cb4d3}.toggle{border:0;padding:10px 0;display:flex;gap:12px;align-items:center;background:transparent;color:#062870;font-size:20px;white-space:nowrap;font-weight:550}.toggle>i{width:64px;height:36px;border-radius:22px;background:#9dacc5;position:relative;box-shadow:inset 0 1px 4px #17427022;transition:background .15s}.toggle>i:after{content:"";width:28px;height:28px;border-radius:50%;position:absolute;top:4px;left:4px;background:#fff;box-shadow:0 1px 5px #09266f22;transition:transform .15s}.toggle[aria-checked=true]>i{background:linear-gradient(100deg,#1262ff,#008fea)}.toggle[aria-checked=true]>i:after{transform:translateX(28px)}#reset-view{display:flex;align-items:center;justify-content:center;gap:10px;white-space:nowrap;margin-left:auto;flex:1;border:1px solid #2094fa;border-radius:30px;color:#063b87;background:#fff8;padding:12px 16px;font-size:20px;font-weight:600}#reset-view>span{font-size:31px;line-height:24px}#reset-view:hover{background:white}footer{position:absolute;top:1043px;left:75px;right:65px;display:flex;justify-content:space-between;color:#3b607e;font-size:13px;text-shadow:0 1px 4px white}#stage{font-weight:600}#failure{position:absolute;left:25%;top:40%;width:50%;padding:35px;border-radius:15px;color:#742020;background:#fff4ef;z-index:10;font-size:25px}#failure button{margin-left:10px;padding:8px}
dialog{width:min(1160px,93vw);max-height:88vh;border:1px solid #a6d4f7;border-radius:26px;padding:32px;color:#123a60;background:linear-gradient(145deg,#f8fcff,#eaf4ff);box-shadow:0 30px 100px #001a5180;font-size:16px}dialog::backdrop{background:#05224d70;backdrop-filter:blur(9px)}.dialog-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}.dialog-heading .eyebrow{font-size:12px;color:#4e88ad;margin-bottom:7px}.dialog-heading h2{font-size:29px;margin:0;color:#072c70}.dialog-heading button{align-self:flex-start;border:1px solid #c8dff1;border-radius:50%;background:#fff;color:#305b84;width:39px;height:39px;font-size:29px;line-height:30px}.knowledge-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.knowledge-grid article{padding:23px;background:#fff9;border:1px solid #d3e6f8;border-radius:18px}.knowledge-grid h3{display:flex;align-items:center;font-size:25px;margin:0 0 20px}.knowledge-grid h3 small{font-size:17px;font-weight:400;margin-left:9px;color:#64839c}.knowledge-grid h3>span{font-size:14px;font-weight:550;margin-left:auto;border-radius:15px;padding:4px 10px;background:#e1f1ff;color:#1765b4}dl{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 20px}dl>div{padding:12px;border-radius:9px;background:#e8f2fa77}dt{font-size:12px;color:#68869e;margin-bottom:7px}dd{margin:0;font-size:15px;font-weight:600;color:#1668a6}dialog p{line-height:1.8;margin:12px 0}.reason{border-left:3px solid #49acef;padding-left:12px}.knowledge-note{padding:3px 6px}.knowledge-note h3{font-size:19px;margin-bottom:0}.source{font-size:12px;color:#66849b}details{border-top:1px solid #cbdfee;padding-top:16px;font-size:14px}summary{cursor:pointer;font-weight:650;color:#246795}details p{color:#54748d}@media(max-width:800px){dialog{padding:22px}.knowledge-grid{grid-template-columns:1fr}dialog h2{font-size:22px!important}}

/* Selected microscopic chamber, 1920 × 1080 design coordinates. */
.laboratory{background-image:url("/assets/background-cc233e9ecf6d7d6d.webp")}.laboratory:after{background:linear-gradient(180deg,#00133d18,transparent 45%)}
header{top:42px;left:58px;color:#f2fbff}h1{color:#fff;text-shadow:0 3px 18px #042a5999;font-size:76px}.subtitle{color:#f0f9ff;font-size:27px}.eyebrow{color:#e9f6ff}.top-tools button{background:#08397180;border-color:#cae9ffa0}
.model-area{top:112px;width:760px;height:665px}.model-area.left{left:254px}.model-area.right{left:918px}.orbital-tag{top:566px;bottom:auto;padding:10px 16px;font-size:19px}
.nameplate{top:751px;height:79px;width:364px;background:linear-gradient(130deg,#1d5899b8,#183968c9);border-color:#dbf3ffbb;backdrop-filter:blur(18px) saturate(145%);-webkit-backdrop-filter:blur(18px) saturate(145%)}.name-py{left:452px}.name-pl{left:1116px}
.conclusion{top:847px;height:63px;background:linear-gradient(130deg,#e6f5ffb8,#c3e4ff91);backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);border-color:#ffffffb0}.scene-tools{top:872px;color:#143e6a}.view-buttons{background:#e9f7ff95;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.transport{top:942px;height:94px;border:1px solid #ffffffb3;border-bottom-color:#8cb5df99;background:linear-gradient(115deg,#f3faff9c,#d4e8ff66 48%,#edf8ff91);backdrop-filter:blur(26px) saturate(155%);-webkit-backdrop-filter:blur(26px) saturate(155%);box-shadow:inset 0 1px 0 #ffffffdb,inset 0 -1px 0 #ffffff40,0 12px 35px #061c4e38;isolation:isolate}
.transport:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;border-radius:inherit;opacity:.19;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.92' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.35' filter='url(%23n)'/%3E%3C/svg%3E")}
.timeline{width:550px;gap:17px}.timeline input{width:307px}.switches{gap:29px}.toggle>i{box-shadow:inset 0 1px 4px #244a6540,0 1px 0 #ffffff80}#reset-view{max-width:246px;min-width:202px;background:#f3faff59;box-shadow:inset 0 1px 0 #ffffffc4}footer{top:1050px;color:#d4eaff;text-shadow:0 1px 5px #0e367f}
