:root{--ink:#193b4e;--muted:#687d85;--teal:#087f86;--aqua:#e2f1ee;--orange:#c76c3a;--sand:#fbf1e7;--paper:#f5f5ee;--line:#dce3df;--white:#fff;--shadow:0 14px 45px #173b4c08}*{box-sizing:border-box}html{color:var(--ink);background:var(--paper);font-family:Inter,"Segoe UI",Arial,"Noto Sans CJK SC",sans-serif}body{margin:0}button,select,a{ -webkit-tap-highlight-color:transparent}button,select{font:inherit}button,a,select{outline-offset:4px}button{cursor:pointer}button:disabled{cursor:default;opacity:.35}a{color:var(--teal)}button{color:inherit}button:focus-visible,a:focus-visible,select:focus-visible{outline:3px solid #e3a161}.skip{position:fixed;top:-80px;left:10px;z-index:100;background:white;padding:12px}.skip:focus{top:8px}.topbar{height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 3.7vw;border-bottom:1px solid var(--line);gap:20px;background:#f5f5eef5}.brand{text-decoration:none;display:flex;align-items:center;gap:12px;color:var(--ink);font-weight:800;letter-spacing:2px;font-size:17px}.brand-mark{background:var(--ink);border-radius:10px;font-size:33px;line-height:40px;text-align:center;width:40px;color:#a6d6c8}.brand-light{font-weight:400;color:var(--teal)}.brand small{display:block;font-size:8px;letter-spacing:2.2px;margin-top:5px;color:var(--muted)}.top-context{font-size:12px;display:flex;align-items:center;gap:9px}.status-dot{width:6px;height:6px;border-radius:50%;background:var(--teal)}.top-actions{display:flex;gap:9px;align-items:center}.chip,.icon-button,.round-button{background:transparent;border:1px solid var(--line);border-radius:8px;padding:8px 11px;font-size:12px}.chip span{font-size:9px;color:var(--muted);margin-left:6px}.chip[aria-pressed=true]{background:var(--aqua);border-color:#92c9b9}.icon-button:hover,.round-button:hover{background:white;border-color:#8cb3a7}#fullscreen,#menu{font-size:23px;padding:1px 10px}.top-actions button[aria-pressed=true]{background:var(--aqua)}main{max-width:1640px;margin:auto;padding:28px 3.7vw 22px;min-height:calc(100dvh - 164px);display:flex;flex-direction:column;outline:none}.page-heading{display:flex;justify-content:space-between;gap:25px;margin-bottom:21px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:2px;color:var(--teal)}h1{font-size:clamp(26px,2.8vw,43px);line-height:1.14;font-weight:650;letter-spacing:-1.4px;margin:10px 0 9px;max-width:1150px}h2,h3,p{margin-top:0}.subtitle{font-size:14px;color:var(--muted);margin:0;line-height:1.5;max-width:1080px}.page-number{display:flex;gap:8px;align-items:center;white-space:nowrap}.page-number strong{font-weight:400;font-size:39px;letter-spacing:-2px}.page-number span{font-size:12px;color:var(--muted)}.presentation-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:22px;flex:1;min-height:440px}.visual-panel{background:white;box-shadow:var(--shadow);border:1px solid var(--line);border-radius:16px;overflow:hidden;display:flex;flex-direction:column}.scene-meta{display:flex;justify-content:space-between;gap:12px;padding:17px 23px;border-bottom:1px solid #edf0ec;font-size:9px;letter-spacing:1.8px;font-weight:700}.scene-kind{color:var(--muted);letter-spacing:.3px;font-weight:400}.scene{position:relative;flex:1;min-height:320px;padding:25px;display:flex;flex-direction:column;justify-content:center;gap:22px;overflow:hidden}.scene-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #edf0ec;min-height:45px;padding:10px 22px;font-size:10px;color:var(--muted)}.scene-footer>span{max-width:75%;line-height:1.5}.text-button{background:none;border:0;padding:2px;font-size:11px;color:var(--teal)}.explanation-panel{padding:9px 2px;display:flex;flex-direction:column;min-width:0}.explain-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.explain-top .eyebrow{font-size:9px;letter-spacing:1.3px}#step-number{font-size:11px;color:var(--muted)}.step-dots{display:flex;gap:6px;margin:18px 0 24px}.step-dots button{border:0;background:#dce5df;height:4px;flex:1;border-radius:10px;padding:0;min-height:10px;background-clip:content-box}.step-dots button.done{background-color:#8db4a9}.step-dots button.active{background-color:var(--teal)}.step-content{animation:appear .32s ease both}.step-content h2{font-size:25px;letter-spacing:-.65px;line-height:1.18;font-weight:600;margin-bottom:15px}.step-content p{font-size:15px;line-height:1.75;color:#526971;margin-bottom:18px}.chinese-text{font-size:13px!important;line-height:1.85!important;color:var(--teal)!important;padding-left:12px;border-left:2px solid #b4d9c8}.takeaway{margin-top:auto;border-left:2px solid var(--orange);padding:11px 14px;background:#f7eee4;font-size:12px;line-height:1.65}.takeaway strong{display:block;font-size:9px;letter-spacing:1.5px;margin-bottom:4px;color:#a75429}.animation-controls{display:flex;justify-content:space-between;gap:8px;align-items:center;margin-top:20px}.play-button{padding:10px 12px;border-radius:7px;border:1px solid var(--line);background:#fff;font-size:11px}.play-button[aria-pressed=true]{border-color:#65a291;background:var(--aqua)}.speed-label{display:flex;align-items:center;gap:5px;font-size:10px;color:var(--muted)}select{background:transparent;border:0;color:var(--ink);font-size:10px;max-width:75px}.bottom-bar{min-height:80px;display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px 3.7vw;border-top:1px solid var(--line);background:var(--paper)}.slide-controls{display:flex;gap:8px;align-items:center}.round-button{width:35px;height:35px;border-radius:50%;padding:0;font-size:19px;background:white}.key-hint{font-size:10px;color:var(--muted);margin-left:8px;white-space:nowrap}.key-hint span{margin:0 6px}.slide-progress{display:flex;gap:5px;align-items:center}.slide-progress button{border:0;width:8px;height:8px;border-radius:50%;padding:0;background:#d0dcd4}.slide-progress button.visited{background:#91b3a8}.slide-progress button.current{background:var(--teal);width:23px;border-radius:6px}.advance{background:var(--ink);color:white;border:0;padding:12px 16px;border-radius:8px;display:flex;align-items:center;gap:22px;font-size:12px;min-width:173px;justify-content:space-between}.advance:hover{background:var(--teal)}.notes-panel{background:#fff;border:1px solid var(--line);border-radius:12px;padding:22px 26px;margin-top:20px;line-height:1.9}.notes-panel[hidden]{display:none}.notes-heading{display:flex;justify-content:space-between}.notes-heading h2{font-size:17px}.notes-panel p{font-size:14px;margin-bottom:12px}#notes-zh{color:var(--teal);font-size:13px}dialog{border:1px solid var(--line);border-radius:16px;padding:28px;max-width:min(900px,94vw);width:900px;max-height:88dvh;overflow:auto;box-shadow:0 35px 100px #0003;color:var(--ink)}dialog::backdrop{background:#102f3dcc;backdrop-filter:blur(5px)}.dialog-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:15px}.dialog-heading h2{margin:9px 0;font-size:30px;letter-spacing:-1px}.contents-item{display:flex;gap:15px;align-items:center;padding:12px 8px;border:0;border-bottom:1px solid #eef2ee;background:none;text-align:left;width:100%;font-size:14px}.contents-item:hover,.contents-item.current{background:var(--aqua)}.contents-item span{font-size:10px;color:var(--teal);min-width:25px}.contents-item small{margin-left:auto;color:var(--muted);white-space:nowrap}.downloads{display:flex;gap:20px;margin-top:22px;flex-wrap:wrap;font-size:12px}#image-dialog{width:1200px;text-align:center;padding:20px}#image-dialog img{max-width:100%;max-height:74dvh;object-fit:contain}#image-dialog>.round-button{display:block;margin-left:auto;margin-bottom:10px}#image-dialog p{font-size:13px;margin:15px 0 0}#sources-dialog{font-size:14px;line-height:1.8}.muted{color:var(--muted)}.scene h2{font-size:clamp(23px,2.4vw,36px);font-weight:550;letter-spacing:-1px;margin-bottom:12px;line-height:1.2}.scene .mini-label{font-size:10px;color:var(--muted);letter-spacing:1.3px;text-transform:uppercase;margin-bottom:10px}.flow{display:flex;align-items:stretch;gap:12px;width:100%;position:relative}.flow-node{position:relative;border:1px solid var(--line);background:#fafbf8;padding:20px 15px;border-radius:10px;flex:1;min-width:0;transition:background .5s,border-color .5s,transform .5s,opacity .5s;display:flex;flex-direction:column;justify-content:center;gap:8px;min-height:88px}.flow-node:not(:last-child)::after{content:'→';position:absolute;right:-12px;width:12px;text-align:center;color:#88a7a0;font-size:15px;top:45%;z-index:1}.flow-node strong{font-size:clamp(13px,1.25vw,19px);line-height:1.3;font-weight:650}.flow-node small{font-size:11px;color:var(--muted);line-height:1.5}.flow-node.active{border-color:var(--teal);background:var(--aqua);transform:translateY(-3px);box-shadow:0 5px 0 #087f8609}.flow-node.complete{border-color:#9cc7b4;background:#f1f7f0}.flow-node.muted-node{opacity:.38}.flow-node.orange{border-color:#cf8955;background:var(--sand)}.big-symbol{font-size:31px;color:var(--teal);margin-bottom:4px;display:block}.callout{padding:15px 20px;border-radius:9px;background:var(--aqua);font-size:14px;line-height:1.6;border:1px solid #c7ded4;transition:all .4s}.callout.dark{background:var(--ink);color:white;border-color:var(--ink)}.callout.orange{background:var(--sand);border-color:#edcaaa}.cols{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}.cols.three{grid-template-columns:repeat(3,minmax(0,1fr))}.info-card{padding:21px;background:#f7f9f5;border:1px solid var(--line);border-radius:11px;transition:all .4s}.info-card.active{background:var(--aqua);border-color:#95bdb1;transform:translateY(-3px)}.info-card h3{font-size:17px;line-height:1.35;margin-bottom:12px;font-weight:650}.info-card p{font-size:13px;line-height:1.7;margin:0;color:#61767d}.info-card .num{font-size:28px;color:var(--teal);font-weight:300;display:block;margin-bottom:15px}.cover-art{position:absolute;right:20px;top:18px;opacity:.13;width:50%;height:85%;pointer-events:none}.cover{padding:5px 12px;position:relative}.cover h2{font-size:clamp(32px,4vw,58px);max-width:680px;font-weight:450;letter-spacing:-2px;line-height:1.1;position:relative}.cover h2 em{font-style:normal;color:var(--teal)}.cover .cover-meta{margin-top:28px;display:flex;gap:22px;flex-wrap:wrap;position:relative}.cover-meta strong{display:block;font-size:13px;margin-bottom:7px}.cover-meta small{font-size:11px;color:var(--muted)}.badge{display:inline-block;background:var(--aqua);color:var(--teal);padding:5px 9px;border-radius:4px;font-size:10px;margin-bottom:14px;font-weight:700;letter-spacing:1px}.formula{font-family:Georgia,serif;font-size:26px;letter-spacing:1px;text-align:center;padding:12px;color:var(--ink)}.matrix{display:grid;grid-template-columns:repeat(var(--cols,2),1fr);gap:5px;padding:12px;border-left:2px solid #aac1b8;border-right:2px solid #aac1b8;max-width:180px;margin:auto;transition:all .5s}.cell{background:#e4eeea;border-radius:4px;padding:8px;min-width:31px;text-align:center;font-size:15px;transition:all .5s}.cell.changed{background:#bfe3cb;color:#154f47;transform:scale(1.06)}.cell.negative{color:#b46545;background:#f6e5d8}.matrix-label{font-size:10px;color:var(--muted);text-align:center;margin-top:8px}.math-boards{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;align-items:center}.math-block{padding:15px;border:1px solid var(--line);border-radius:9px;background:#fbfcf9;transition:all .5s;opacity:.35}.math-block.show{opacity:1}.math-block.active{border-color:var(--teal);background:#f1f8f0}.math-block h3{font-size:13px;text-align:center;margin:0 0 14px}.fusion-shell{border:2px dashed #c9d7cf;border-radius:14px;padding:15px;transition:all .5s}.fusion-shell.fused{border-style:solid;border-color:var(--teal);background:#e7f5ed;box-shadow:0 0 0 6px #087f8608}.fusion-title{font-size:11px;text-align:center;color:var(--teal);margin-top:12px;font-weight:650}.memory-path{display:flex;align-items:center;gap:8px;margin-top:10px;transition:opacity .4s;font-size:10px;color:var(--orange)}.memory-path .memory-slot{border:1px solid #e4b389;background:var(--sand);padding:9px;border-radius:6px;flex:1;text-align:center}.memory-path.reduced{opacity:.25}.memory-removed{text-decoration:line-through}.matrix-wall{display:grid;grid-template-columns:repeat(12,1fr);gap:3px;max-width:330px;margin:15px auto}.mask-cell{aspect-ratio:1;background:#e9efea;border-radius:2px;transition:all .4s}.mask-cell.visible{background:#a4c9b8}.mask-cell.expensive{background:#d89361}.mask-cell.ghost{opacity:.15;transform:scale(.8)}.mask-compare{display:grid;grid-template-columns:1fr 1fr;gap:25px;align-items:center}.mask-compare>div{border:1px solid var(--line);padding:20px;border-radius:12px}.mask-compare h3{font-size:14px;text-align:center}.mask-compare .backend-token{font-family:monospace;font-size:13px;background:#e8f1ed;border:1px solid #c5dcd1;border-radius:9px;padding:20px;margin:25px auto;max-width:280px;text-align:center;transition:all .4s}.backend-token.active{background:#bfe0cf;transform:scale(1.025)}.memory-meter{height:9px;background:#eef1e9;border-radius:5px;overflow:hidden;margin:15px 0}.memory-meter span{display:block;height:100%;background:var(--orange);transition:width .7s;width:0}.memory-meter.green span{background:var(--teal)}.meter-label{font-size:10px;color:var(--muted);line-height:1.5}.picture-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}.figure-box{margin:0;padding:10px;border:1px solid var(--line);border-radius:10px;transition:all .4s;background:#fff;opacity:.55}.figure-box.active{opacity:1;border-color:#95beae;box-shadow:0 4px 20px #173b4c08}.figure-box img{width:100%;object-fit:contain;max-height:310px;display:block;cursor:zoom-in;border-radius:4px}.figure-box figcaption{font-size:11px;padding:13px 4px 3px;line-height:1.6}.figure-box.wide img{max-height:390px}.tag{font-size:9px;padding:4px 6px;border-radius:4px;background:var(--aqua);color:var(--teal);white-space:nowrap}.tag.pending{background:var(--sand);color:var(--orange)}.milestone{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:15px;align-items:center;padding:13px 0;border-bottom:1px solid #ebeee8;font-size:13px;opacity:.4;transition:all .4s}.milestone.active,.milestone.complete{opacity:1}.milestone.active{background:#eff6ef;border-radius:6px;padding-left:8px;padding-right:8px}.milestone .milestone-icon{width:26px;height:26px;border:1px solid #cdded3;border-radius:50%;display:grid;place-items:center;color:var(--teal);font-size:12px}.validation-lanes{display:grid;gap:20px}.lane-label{font-size:11px;font-weight:650;margin-bottom:8px;color:var(--teal)}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.metric{border:1px solid var(--line);padding:13px 10px;border-radius:8px;text-align:center;font-size:13px;transition:all .4s}.metric small{display:block;font-size:9px;color:var(--muted);margin-top:7px}.metric.active{background:var(--aqua);border-color:var(--teal)}.switch{display:flex;gap:12px;align-items:center;border:1px solid var(--line);padding:12px 15px;border-radius:9px;background:white;font-size:12px;text-align:left}.toggle-track{height:22px;width:39px;background:#cad5cd;border-radius:20px;position:relative;transition:background .3s}.toggle-track:after{content:'';position:absolute;left:3px;top:3px;width:16px;height:16px;border-radius:50%;background:white;transition:transform .3s}.switch.on .toggle-track{background:var(--teal)}.switch.on .toggle-track:after{transform:translateX(17px)}.code-label{font-family:monospace;font-size:11px}.egraph{display:flex;gap:12px;align-items:stretch}.candidate{flex:1;position:relative;border:1px dashed #bdcbc1;border-radius:12px;padding:20px 13px;opacity:.28;transition:all .6s;transform:translateY(9px);background:#fbfcf8}.candidate.show{opacity:1;transform:translateY(0)}.candidate.selected{border:2px solid var(--teal);background:var(--aqua)}.candidate.selected:before{content:'CHOIX DU MODÈLE DE COÛT';position:absolute;top:-10px;left:10px;right:10px;background:var(--teal);color:white;font-size:8px;text-align:center;padding:4px;border-radius:4px;letter-spacing:.5px}.candidate h3{font-size:13px;margin:5px 0 16px}.candidate .op-mini{font-size:11px;border:1px solid #dbe4db;border-radius:6px;text-align:center;padding:12px 7px;background:white;margin:6px 0}.candidate .op-mini.trans{background:var(--sand);border-color:#e4bf9b}.candidate small{font-size:10px;color:var(--muted);line-height:1.5;display:block}.partition{display:grid;grid-template-columns:1fr 60px 1fr;gap:20px;align-items:center}.tensor-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;max-width:330px;margin:auto}.tensor-grid .cell{height:45px;display:grid;place-items:center;font-size:13px}.tensor-grid .cell.group-a{background:#c0dfd2}.tensor-grid .cell.group-b{background:#eacbb2}.device-stack{display:grid;gap:18px}.device{border:1px solid var(--line);padding:18px;border-radius:10px;opacity:.3;transition:all .5s;transform:translateX(10px)}.device.show{opacity:1;transform:translateX(0)}.device.a{background:#edf6f0}.device.b{background:#fbf2e9}.device h3{font-size:13px;margin-bottom:12px}.device .tensor-grid .cell{height:28px;font-size:11px;padding:3px}.partition-arrows{font-size:34px;line-height:2.6;color:var(--teal)}.progress-message{font-size:12px;color:var(--teal);text-align:center}.split-title{display:flex;align-items:center;justify-content:space-between}.proof-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:22px;align-items:center}.proof-grid .figure-box img{max-height:340px}.mini-items{display:flex;flex-direction:column;gap:14px}.mini-item{padding:12px 15px;border-left:2px solid #c9d9cd;font-size:12px;line-height:1.65;opacity:.4;transition:all .4s}.mini-item.active{opacity:1;background:#f0f7ee;border-color:var(--teal)}.mini-item strong{display:block;font-size:14px;margin-bottom:5px}.legend{display:flex;gap:18px;font-size:10px;color:var(--muted);justify-content:center}.legend b{display:inline-block;width:8px;height:8px;border-radius:2px;background:#b9dbcb;margin-right:5px}.legend .b{background:#e7c3a4}.connector{width:100%;height:65px}.motion-dot{fill:var(--teal);animation:travel 2s linear infinite}.animated-reveal{animation:appear .4s ease both}.pulse{animation:pulse 1.8s ease infinite}.scene.paused .pulse,.scene.paused .motion-dot{animation-play-state:paused!important}.scene .disclaimer{font-size:10px;line-height:1.5;color:var(--muted)}@keyframes appear{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{50%{box-shadow:0 0 0 7px #087f8610}}@keyframes travel{from{offset-distance:0%}to{offset-distance:100%}}@media(min-width:1500px){.presentation-layout{grid-template-columns:minmax(0,1fr) 350px}.scene{padding:36px}.step-content p{font-size:16px}}@media(max-width:1100px){.presentation-layout{grid-template-columns:minmax(0,1fr) 270px;gap:18px}.top-context{display:none}.key-hint{display:none}.scene{padding:20px}.flow-node{padding:15px 10px}.step-content h2{font-size:22px}.step-content p{font-size:13px}.cols.three{gap:10px}.info-card{padding:16px}.info-card h3{font-size:14px}.info-card p{font-size:12px}.math-boards{gap:9px}.cell{padding:6px;min-width:26px}}@media(max-width:800px){.topbar{height:70px;padding:0 18px}.brand{font-size:13px;gap:8px}.brand-mark{width:32px;line-height:32px;font-size:26px}.brand small{font-size:6px;letter-spacing:1.5px}.top-actions{gap:5px}.chip,.icon-button{padding:7px;font-size:10px}.chip span{display:none}#fullscreen{display:none}main{padding:20px 18px}.page-heading{margin-bottom:16px}.page-number strong{font-size:29px}h1{font-size:28px;letter-spacing:-.8px}.subtitle{font-size:12px}.presentation-layout{display:flex;flex-direction:column;gap:22px}.scene{min-height:350px;padding:20px 16px}.scene-meta{padding:14px 16px;font-size:8px}.scene-kind{font-size:9px}.scene-footer{padding:10px 15px}.explanation-panel{padding:0 4px}.step-dots{margin:13px 0 15px}.step-content h2{font-size:25px}.step-content p{font-size:15px}.takeaway{margin-top:8px}.animation-controls{margin-top:14px}.bottom-bar{position:sticky;bottom:0;background:#f5f5eef5;backdrop-filter:blur(10px);padding:12px 18px;min-height:68px;z-index:5}.slide-progress{display:none}.advance{min-width:165px}.cols.three{grid-template-columns:1fr}.info-card{padding:17px}.cols.three .info-card .num{float:right;font-size:24px;margin:0}.cols.three .info-card h3{margin-bottom:7px}.cols.three .info-card p{font-size:13px}.flow{gap:9px}.flow-node{padding:13px 9px;border-radius:7px;min-height:80px}.flow-node strong{font-size:12px}.flow-node small{font-size:10px}.flow-node:not(:last-child)::after{right:-9px;width:9px;font-size:12px}.big-symbol{font-size:24px}.cover h2{font-size:39px}.cover-meta{gap:14px!important}.cover-meta small{font-size:10px}.math-boards{grid-template-columns:1fr}.math-block{display:grid;grid-template-columns:115px 1fr;gap:8px;padding:11px;align-items:center}.math-block h3{margin:0}.matrix{padding:8px;max-width:180px}.matrix-label{grid-column:1/-1;margin:0}.mask-compare{grid-template-columns:1fr}.mask-compare>div{padding:15px}.matrix-wall{max-width:230px}.picture-pair{grid-template-columns:1fr}.figure-box img{max-height:240px}.metrics{grid-template-columns:1fr 1fr}.egraph{flex-direction:column}.candidate{padding:15px}.candidate h3{margin:0 0 10px}.candidate .op-mini{display:inline-block;width:30%;font-size:10px;padding:10px 4px}.partition{grid-template-columns:1fr;gap:10px}.partition-arrows{line-height:1;text-align:center;transform:rotate(90deg);height:30px;font-size:24px}.tensor-grid{max-width:260px}.tensor-grid .cell{height:34px}.device-stack{grid-template-columns:1fr 1fr;gap:10px}.device{padding:12px}.device h3{font-size:11px}.proof-grid{grid-template-columns:1fr}.proof-grid .figure-box img{max-height:230px}.milestone{font-size:12px;gap:9px}.tag{font-size:8px}.scene h2{font-size:27px}.notes-panel{padding:18px}.scene-meta>span:first-child{max-width:70%;line-height:1.6}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media print{.topbar,.bottom-bar,.explanation-panel,.scene-footer,.notes-panel,dialog{display:none!important}main{padding:10px}.presentation-layout{display:block}.visual-panel{break-inside:avoid}.scene{min-height:450px}.page-heading{margin-bottom:15px}}

.candidate.focus-candidate{border-color:var(--teal);border-style:solid}
@media(min-width:801px) and (max-height:850px){.topbar{height:66px}main{padding-top:18px;padding-bottom:16px;min-height:calc(100dvh - 134px)}h1{font-size:30px;margin-top:7px;margin-bottom:7px}.subtitle{font-size:12px}.page-heading{margin-bottom:14px}.presentation-layout{min-height:370px;grid-template-columns:minmax(0,1fr) 285px;gap:18px}.scene{padding:18px;gap:15px;min-height:270px}.scene:has(.fusion-shell){zoom:.8}.scene-meta{padding:12px 18px}.scene-footer{padding:8px 17px;min-height:37px}.step-dots{margin:13px 0 17px}.step-content h2{font-size:22px}.step-content p{font-size:13px;line-height:1.65}.chinese-text{font-size:11px!important;line-height:1.65!important}.takeaway{font-size:11px;padding:9px 11px}.animation-controls{margin-top:13px}.bottom-bar{min-height:68px;padding-top:12px;padding-bottom:12px}.figure-box img{max-height:250px}.figure-box.wide img{max-height:280px}.scene .matrix-wall{max-width:230px}.flow-node{min-height:72px;padding:14px}.scene .cover h2{font-size:45px}.milestone{padding-top:10px;padding-bottom:10px}.info-card{padding:17px}.scene h2{font-size:29px}}

.flow-node.active,.math-block.active,.candidate.show{animation:appear .45s ease both}.cell.changed{animation:cell-result .55s ease both}.device.show{animation:distribute .65s cubic-bezier(.2,.8,.2,1) both}.mask-cell.ghost{animation:release-cell .65s ease both}.fusion-shell.fused{animation:fuse-frame .7s ease both}.memory-meter span{transform-origin:left;animation:memory-fill .6s ease both}@keyframes cell-result{from{opacity:.2;transform:translateY(7px) scale(.94)}to{opacity:1;transform:translateY(0) scale(1.06)}}@keyframes distribute{from{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@keyframes release-cell{from{opacity:1;transform:scale(1)}to{opacity:.15;transform:scale(.8)}}@keyframes fuse-frame{from{border-color:#c9d7cf;background:#fff;transform:scale(.985)}to{border-color:var(--teal);background:#e7f5ed;transform:scale(1)}}@keyframes memory-fill{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(prefers-reduced-motion:reduce){.flow-node.active,.math-block.active,.candidate.show,.cell.changed,.device.show,.mask-cell.ghost,.fusion-shell.fused,.memory-meter span{animation:none!important}}
