.sequence-board-stage{display:none;position:relative;width:min(82vw,520px);aspect-ratio:1;margin:14px auto 18px;overflow:hidden;border:1px solid rgba(65,255,114,.65);background:#010503;box-shadow:0 0 28px rgba(65,255,114,.12)}
.containment-sequence[data-outcome="win"] .sequence-board-stage,.containment-sequence[data-outcome="loss"] .sequence-board-stage{display:block}.containment-sequence[data-outcome="win"] .purge-stage,.containment-sequence[data-outcome="loss"] .breach-stage{display:none!important}
.sequence-board-host,.sequence-board-host .sequence-board{position:absolute;inset:0;width:100%;height:100%}.sequence-board-host .square{margin:0;padding:0;border:0;cursor:default}.sequence-board-host .square small,.sequence-board-host .target,.sequence-board-host .capture{display:none}.sequence-board-host .piece{font-size:clamp(22px,7.2vw,48px)}
.sequence-warning{position:absolute;z-index:12;left:4%;right:4%;top:5%;padding:9px 5px;border:1px solid #ff9b32;background:rgba(35,5,0,.9);color:#ffb146;font-size:clamp(8px,2.3vw,13px);font-weight:900;letter-spacing:.09em;text-align:center;text-shadow:0 0 7px #f33;opacity:0}
.organism{--angle:0deg;--length:58%;position:absolute;z-index:7;left:50%;top:50%;width:var(--length);height:clamp(7px,2.3vw,15px);transform-origin:0 50%;transform:rotate(var(--angle)) scaleX(0);border-radius:50% 100% 60% 45%;background:linear-gradient(0deg,#071a0d,#20783a 32%,#62ee81 50%,#155929 69%,#020b05);box-shadow:0 0 8px rgba(65,255,114,.6),inset 0 2px 2px rgba(186,255,199,.35)}
.organism:before{content:"";position:absolute;left:13%;right:8%;top:30%;height:18%;background:repeating-linear-gradient(90deg,transparent 0 10px,rgba(195,255,204,.5) 11px 13px,transparent 14px 20px)}.organism:after{content:"";position:absolute;right:-5px;top:-34%;width:20px;height:170%;border-radius:68% 42% 65% 38%;background:#236f37;box-shadow:inset 3px 2px 3px #66d77f}.o1{--angle:-167deg;--length:66%}.o2{--angle:-118deg;--length:61%}.o3{--angle:-57deg;--length:64%}.o4{--angle:15deg;--length:68%}.o5{--angle:73deg;--length:62%}.o6{--angle:139deg;--length:67%}
.containment-field{position:absolute;z-index:9;inset:0;opacity:0;border:3px solid #67ff89;background:linear-gradient(rgba(65,255,114,.28) 2px,transparent 2px),linear-gradient(90deg,rgba(65,255,114,.28) 2px,transparent 2px);background-size:12.5% 12.5%;box-shadow:inset 0 0 35px rgba(65,255,114,.34),0 0 17px rgba(65,255,114,.45);transform:scale(1.06)}
.screen-cracks{position:absolute;z-index:11;inset:0;opacity:0;background:linear-gradient(126deg,transparent 0 46%,rgba(255,154,84,.85) 46.3% 46.7%,transparent 47%),linear-gradient(48deg,transparent 0 58%,rgba(255,105,62,.65) 58.3% 58.65%,transparent 59%)}.screen-cracks:before,.screen-cracks:after{content:"";position:absolute;width:52%;height:2px;background:#ff865c;box-shadow:0 0 8px #f43;transform-origin:left}.screen-cracks:before{left:46%;top:47%;transform:rotate(-65deg)}.screen-cracks:after{left:28%;top:63%;transform:rotate(34deg)}
.containment-sequence[data-outcome="win"],.containment-sequence[data-outcome="loss"],.containment-sequence[data-outcome="win"] .sequence-frame,.containment-sequence[data-outcome="loss"] .sequence-frame{animation-duration:15s}.containment-sequence[data-outcome="win"] .sequence-progress i,.containment-sequence[data-outcome="loss"] .sequence-progress i{animation-duration:15s}.containment-sequence[data-outcome="win"] .sequence-vignette,.containment-sequence[data-outcome="loss"] .sequence-vignette{animation-duration:.16s,15s}
.containment-sequence[data-outcome="win"] .sequence-warning,.containment-sequence[data-outcome="loss"] .sequence-warning{animation:bioWarning 15s steps(2) both}.containment-sequence[data-outcome="win"] .organism,.containment-sequence[data-outcome="loss"] .organism{animation:tendrilInvade 15s cubic-bezier(.2,.75,.2,1) both}
.containment-sequence[data-outcome="loss"] .sequence-board .piece{animation:pieceAssimilate 15s cubic-bezier(.5,0,.8,.25) both;animation-delay:calc(var(--piece-order) * 45ms)}.containment-sequence[data-outcome="loss"] .screen-cracks{animation:crackTerminal 15s steps(2) both}.containment-sequence[data-outcome="loss"] .sequence-board-host{animation:terminalGlitch 15s steps(2) both}.containment-sequence[data-outcome="loss"] [data-sequence-status]{animation:finalMessage 15s steps(2) both;color:#ff9b73}
.containment-sequence[data-outcome="win"] .containment-field{animation:containmentContract 15s cubic-bezier(.42,0,.58,1) both}.containment-sequence[data-outcome="win"] [data-sequence-status]{animation:finalMessage 15s steps(2) both;color:#a8ffbc}.containment-sequence[data-outcome="win"] .sequence-board-host{animation:secureBoard 15s linear both}
@keyframes tendrilInvade{0%,14%{transform:rotate(var(--angle)) scaleX(0);opacity:0}18%{opacity:1}38%{transform:rotate(calc(var(--angle) + 5deg)) scaleX(1.08);opacity:1}52%{transform:rotate(calc(var(--angle) - 3deg)) scaleX(.94)}68%,100%{transform:rotate(var(--angle)) scaleX(1);opacity:1}}
.containment-sequence[data-outcome="win"] .organism{animation-name:tendrilContained}@keyframes tendrilContained{0%,14%{transform:rotate(var(--angle)) scaleX(0);opacity:0}20%{opacity:1}38%{transform:rotate(calc(var(--angle) + 4deg)) scaleX(1)}53%{transform:rotate(var(--angle)) scaleX(.9);opacity:1}78%{transform:rotate(var(--angle)) scaleX(.22);opacity:.8}84%,100%{transform:rotate(var(--angle)) scaleX(0);opacity:0}}


@media(max-width:600px){.containment-sequence{padding:8px}.containment-sequence .sequence-frame{padding:13px 10px;width:min(100%,560px)}.sequence-board-stage{width:min(88vw,430px);margin:9px auto 12px}.sequence-board-host .piece{font-size:10.5vw}.sequence-warning{top:3%;padding:7px 3px}.containment-sequence .sequence-code{font-size:7px}.containment-sequence .sequence-frame strong{font-size:13px}}
@media(prefers-reduced-motion:reduce){.containment-sequence[data-outcome="win"] .organism,.containment-sequence[data-outcome="loss"] .organism,.containment-sequence[data-outcome="loss"] .sequence-board .piece,.containment-field,.screen-cracks,.sequence-warning,.sequence-board-host{animation:none!important}.containment-sequence[data-outcome="win"] .containment-field{opacity:.6;transform:scale(.55)}.containment-sequence[data-outcome="loss"] .screen-cracks{opacity:.7}}

/* Phase 7: organic SVG tentacles, heavier CRT phosphor treatment and verdict hold. */
.organism{display:none}.tentacle-layer{position:absolute;inset:-1%;z-index:7;width:102%;height:102%;overflow:visible;pointer-events:none}.svg-tentacle{fill:none;stroke:#2a9b4b;stroke-width:4.2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;filter:drop-shadow(0 0 1px #baffc8) drop-shadow(0 0 4px #41ff72)}.v2,.v5{stroke-width:3.3;stroke:#27783d}.v3{stroke-width:5.3}.v4,.v6{stroke-width:2.8;opacity:.9}
.containment-sequence[data-outcome="loss"] .svg-tentacle{animation:tentacleCrawl 15s cubic-bezier(.16,.72,.28,1) both}.containment-sequence[data-outcome="win"] .svg-tentacle{animation:tentacleTrap 15s cubic-bezier(.16,.72,.28,1) both}.v2{animation-delay:.18s!important}.v3{animation-delay:.36s!important}.v4{animation-delay:.1s!important}.v5{animation-delay:.42s!important}.v6{animation-delay:.27s!important}
.sequence-board-stage:before{content:"";position:absolute;inset:0;z-index:14;pointer-events:none;border-radius:2.5%/1.5%;background:repeating-linear-gradient(0deg,rgba(0,0,0,.22) 0,rgba(0,0,0,.22) 1px,rgba(70,255,112,.025) 2px,transparent 4px),radial-gradient(ellipse at center,transparent 48%,rgba(0,0,0,.48) 100%);mix-blend-mode:multiply;animation:crtFlicker .11s steps(2) infinite}.sequence-board-stage:after{content:"";position:absolute;left:0;right:0;top:-20%;height:14%;z-index:15;pointer-events:none;background:linear-gradient(transparent,rgba(123,255,151,.09),rgba(255,255,255,.12),rgba(123,255,151,.05),transparent);filter:blur(2px);animation:crtRoll 2.9s linear infinite}
.sequence-board-stage{border-radius:2.5%/1.5%;transform:perspective(900px) rotateX(.4deg);box-shadow:0 0 0 2px #010603,0 0 0 4px rgba(65,255,114,.25),0 0 32px rgba(65,255,114,.2),inset 0 0 24px #000}.sequence-board-host:before{content:"";position:absolute;inset:0;z-index:6;pointer-events:none;opacity:.28;background:linear-gradient(90deg,rgba(255,0,0,.08),transparent 18%,transparent 82%,rgba(0,120,255,.09));animation:phosphorDrift .23s steps(2) infinite}.containment-sequence .sequence-frame{background:radial-gradient(ellipse at 50% 43%,#031008 0,#010603 66%,#000 100%);box-shadow:0 0 55px rgba(65,255,114,.1),inset 0 0 45px rgba(0,0,0,.85)}

@keyframes bioWarning{0%,3%{opacity:0}4%,12%{opacity:1}13%,15%{opacity:.25}16%,20%{opacity:1}21%,100%{opacity:0}}@keyframes crackTerminal{0%,38%{opacity:0}40%{opacity:.85}44%{opacity:.2}47%,100%{opacity:1}}@keyframes terminalGlitch{0%,38%,42%,47%,100%{transform:none;filter:none}39%{transform:translate(7px,-3px);filter:hue-rotate(70deg)}40%{transform:translate(-9px,4px)}43%{transform:skewX(2deg)}48%,100%{filter:brightness(.35) contrast(1.6)}}
@keyframes containmentContract{0%,25%{opacity:0;transform:scale(1.08)}28%{opacity:1}39%{transform:scale(1)}50%{transform:scale(.62)}59%{transform:scale(.08);opacity:1}63%,100%{transform:scale(0);opacity:0}}@keyframes secureBoard{0%,28%{filter:none}31%,56%{filter:brightness(1.35) drop-shadow(0 0 10px #41ff72)}64%,100%{filter:brightness(.72)}}@keyframes finalMessage{0%,59%{opacity:0;visibility:hidden;transform:translateY(5px)}62%{opacity:1;visibility:visible;transform:none}66%{opacity:.3}68%,100%{opacity:1;visibility:visible;transform:none}}
@keyframes crtFlicker{0%{opacity:.82;transform:translateX(0)}50%{opacity:1;transform:translateX(.35px)}}@keyframes crtRoll{to{transform:translateY(860%)}}@keyframes phosphorDrift{50%{transform:translateX(.8px);opacity:.2}}
@media(prefers-reduced-motion:reduce){.tentacle-layer,.sequence-board-stage:before,.sequence-board-stage:after,.sequence-board-host:before{animation:none!important}.containment-sequence[data-outcome="loss"] .svg-tentacle{stroke-dashoffset:0;opacity:.85}.containment-sequence[data-outcome="win"] .svg-tentacle{stroke-dashoffset:1;opacity:0}}

.containment-sequence[data-variant="brief"] .sequence-board-stage,.containment-sequence[data-variant="brief"] .breach-stage,.containment-sequence[data-variant="brief"] .purge-stage,.containment-sequence[data-variant="brief"] .draw-stage{display:none!important}.containment-sequence[data-variant="brief"] .sequence-scan{display:block}.containment-sequence[data-variant="brief"],.containment-sequence[data-variant="brief"] .sequence-frame{animation-duration:4s}.containment-sequence[data-variant="brief"] [data-sequence-status]{visibility:visible;opacity:1;animation:briefVerdict 4s steps(2) both}.containment-sequence[data-variant="brief"] .sequence-progress i{animation-duration:4s}.containment-sequence[data-variant="brief"] .sequence-vignette{animation:sequenceFlicker .2s steps(2) infinite}.containment-sequence[data-variant="brief"] .sequence-substatus:after{content:" // CINEMATIC BYPASS";color:#65d87f}.containment-sequence[data-variant="brief"] #skipSequence{display:none}@keyframes briefVerdict{0%,18%{opacity:0}22%,88%{opacity:1}92%{opacity:.4}100%{opacity:1}}

/* Full draw cinematic: measured equilibrium sequence with a readable verdict hold. */
.containment-sequence[data-outcome="draw"]{animation-duration:9s}.containment-sequence[data-outcome="draw"] .draw-node{animation-duration:2.4s}.containment-sequence[data-outcome="draw"] .balance-field{animation-duration:1.8s;animation-delay:2.2s}.containment-sequence[data-outcome="draw"] .balance-field i{animation-duration:1.1s;animation-delay:3.5s}.containment-sequence[data-outcome="draw"] .draw-axis{animation-duration:3s;animation-delay:.8s}.containment-sequence[data-outcome="draw"] .draw-stage>em{animation-duration:.9s;animation-delay:5.2s}.containment-sequence[data-outcome="draw"] [data-sequence-status]{animation:drawVerdict 9s steps(2) both}.containment-sequence[data-outcome="draw"] .sequence-progress i{animation-duration:9s}.containment-sequence[data-outcome="draw"] .sequence-vignette{animation-duration:.3s,9s}@keyframes drawVerdict{0%,65%{opacity:.15}68%,100%{opacity:1}}.containment-sequence[data-variant="brief"][data-outcome="draw"],.containment-sequence[data-variant="brief"][data-outcome="draw"] [data-sequence-status],.containment-sequence[data-variant="brief"][data-outcome="draw"] .sequence-progress i{animation-duration:4s}

/* Cinematic roadmap phase 2: restrain the creature and let the damaged CRT imply the rest. */
.tentacle-layer{opacity:.72;filter:contrast(1.15);-webkit-mask-image:repeating-linear-gradient(0deg,#000 0 3px,transparent 4px 6px);mask-image:repeating-linear-gradient(0deg,#000 0 3px,transparent 4px 6px)}.svg-tentacle{stroke:#287440;stroke-width:2.7;filter:drop-shadow(0 0 2px rgba(65,255,114,.52))}.v2{stroke-width:1.8;opacity:.58}.v3{stroke-width:3.6;stroke:#2b8146}.v4{stroke-width:2.1;opacity:.5}.v5,.v6{display:none}
.phosphor-burn,.signal-tear{position:absolute;inset:0;z-index:10;pointer-events:none}.phosphor-burn{opacity:0;background:radial-gradient(ellipse at 58% 46%,rgba(154,255,174,.2) 0,rgba(36,120,58,.12) 11%,transparent 30%),radial-gradient(ellipse at 27% 72%,rgba(65,255,114,.1),transparent 24%);mix-blend-mode:screen}.signal-tear{z-index:13;opacity:0;background:linear-gradient(transparent 0 17%,rgba(171,255,188,.12) 18% 20%,transparent 21% 48%,rgba(0,0,0,.82) 49% 54%,rgba(107,255,137,.14) 55%,transparent 57%);background-size:100% 160%;mix-blend-mode:screen}.containment-sequence[data-outcome="win"] .phosphor-burn,.containment-sequence[data-outcome="loss"] .phosphor-burn{animation:phosphorBurn 15s steps(3) both}.containment-sequence[data-outcome="win"] .signal-tear,.containment-sequence[data-outcome="loss"] .signal-tear{animation:signalTear 15s steps(2) both}
.screen-cracks{filter:brightness(.72);background:linear-gradient(131deg,transparent 0 47%,rgba(255,138,75,.52) 47.2% 47.45%,transparent 47.7%),linear-gradient(39deg,transparent 0 63%,rgba(255,105,62,.35) 63.15% 63.4%,transparent 63.7%)}.screen-cracks:before,.screen-cracks:after{height:1px;background:#d86245;box-shadow:0 0 4px rgba(255,86,46,.6)}
@keyframes phosphorBurn{0%,18%{opacity:0}24%,37%{opacity:.3}39%{opacity:.05}43%,62%{opacity:.44}66%,100%{opacity:.16}}@keyframes signalTear{0%,20%,24%,37%,42%,58%,64%,100%{opacity:0;transform:none;background-position:0 0}21%{opacity:.75;transform:translateX(5px);background-position:0 28%}23%{opacity:.25;transform:translateX(-3px)}38%{opacity:.9;transform:translate(-7px,2px);background-position:0 67%}40%{opacity:.32;transform:skewX(1deg)}59%{opacity:.7;transform:translateX(4px);background-position:0 92%}61%{opacity:.18;transform:translateX(-2px)}}
@keyframes tentacleCrawl{0%,11%{stroke-dashoffset:1;opacity:0}16%{opacity:.3}35%{stroke-dashoffset:0;opacity:.68}41%{stroke-width:3.2;opacity:.38}45%{opacity:.72}58%,100%{stroke-dashoffset:0;opacity:.48}}@keyframes tentacleTrap{0%,11%{stroke-dashoffset:1;opacity:0}16%{opacity:.32}34%{stroke-dashoffset:0;opacity:.64}42%{opacity:.45}55%{stroke-dashoffset:.44;opacity:.34}66%,100%{stroke-dashoffset:1;opacity:0}}
@keyframes pieceAssimilate{0%,31%{transform:translateY(-2px);opacity:1;filter:none}33%{transform:translate(3px,-1px);opacity:.3}34%{transform:translate(-2px,1px);opacity:1}41%{transform:translateY(-2px);opacity:.7;filter:blur(.4px)}45%{transform:translate(8px,-4px) scale(.93);opacity:.18;filter:blur(1px)}48%,100%{opacity:0;transform:translate(5px,-6px) scale(.88)}}
@media(prefers-reduced-motion:reduce){.phosphor-burn,.signal-tear{animation:none!important}.signal-tear{display:none}}

/* Cinematic roadmap phase 3: editorial acts, hard signal cuts, then a quiet verdict hold. */
.sequence-act{display:block;margin:4px 0 0;color:#4ebd69;font-size:8px;font-weight:800;letter-spacing:.16em;text-align:left;opacity:.82}.sequence-cut{position:fixed;inset:0;z-index:3;pointer-events:none;opacity:0;background:linear-gradient(0deg,transparent 0 45%,rgba(163,255,181,.2) 46% 49%,#d5ffdd 50%,rgba(34,96,48,.28) 51% 54%,transparent 55%),repeating-linear-gradient(0deg,rgba(65,255,114,.12) 0 1px,transparent 1px 5px);mix-blend-mode:screen}.containment-sequence[data-beat="1"] .sequence-cut{animation:editorialCutOne .42s steps(3) both}.containment-sequence[data-beat="2"] .sequence-cut{animation:editorialCutTwo .48s steps(3) both}.containment-sequence[data-beat="3"] .sequence-cut{animation:editorialCutThree .62s steps(4) both}.containment-sequence[data-beat="3"] .sequence-board-stage{filter:saturate(.72) brightness(.82)}.containment-sequence[data-beat="3"] .sequence-act{color:#9fffb5;opacity:1;text-shadow:0 0 7px rgba(65,255,114,.45)}
@keyframes editorialCutOne{0%{opacity:.88;transform:translateY(-3px)}28%{opacity:.08}45%{opacity:.48;transform:translate(4px,2px)}100%{opacity:0;transform:none}}@keyframes editorialCutTwo{0%{opacity:.12}18%{opacity:.75;transform:skewX(1.5deg)}43%{opacity:.16;transform:translateX(-5px)}62%{opacity:.52}100%{opacity:0;transform:none}}@keyframes editorialCutThree{0%{opacity:.76;filter:brightness(1.8)}20%{opacity:.12}34%{opacity:.42;transform:translateX(3px)}58%{opacity:.08}100%{opacity:0;filter:none;transform:none}}
@media(max-width:600px){.sequence-act{font-size:7px;margin-left:2px}}@media(prefers-reduced-motion:reduce){.sequence-cut{display:none}.sequence-act{opacity:1}}

/* Cinematic roadmap phase 5: automatic low-power rendering and explicit keyboard focus. */
.containment-sequence #skipSequence:focus-visible{outline:2px solid #b5ffc5;outline-offset:4px;background:rgba(65,255,114,.14)}.containment-sequence[data-quality="lite"] .tentacle-layer g{filter:none}.containment-sequence[data-quality="lite"] .svg-tentacle{filter:none}.containment-sequence[data-quality="lite"] .phosphor-burn{display:none}.containment-sequence[data-quality="lite"] .sequence-board-stage:before{animation-duration:.28s}.containment-sequence[data-quality="lite"] .sequence-board-stage:after{filter:none;opacity:.45;animation-duration:4.2s}.containment-sequence[data-quality="lite"] .sequence-vignette{animation-duration:.32s,15s}.containment-sequence[data-quality="reduced"] .signal-tear,.containment-sequence[data-quality="reduced"] .sequence-cut{display:none}

/* Final roadmap pass: time endings are an amber systems failure rather than a second creature attack. */
.containment-sequence[data-outcome="win"][data-ending="time"] .sequence-warning{border-color:#c9ae55;color:#eadb8a;background:rgba(24,19,3,.92);text-shadow:0 0 7px #a88322}.containment-sequence[data-outcome="win"][data-ending="time"] .svg-tentacle{opacity:.18!important;stroke:#98b06e}.containment-sequence[data-outcome="win"][data-ending="time"] .organism{opacity:.12!important}.containment-sequence[data-outcome="win"][data-ending="time"] .containment-field{background:linear-gradient(rgba(219,197,99,.22) 2px,transparent 2px),linear-gradient(90deg,rgba(219,197,99,.22) 2px,transparent 2px);background-size:12.5% 12.5%;border-color:#d5c166;box-shadow:inset 0 0 35px rgba(216,200,102,.25),0 0 17px rgba(216,200,102,.3)}.containment-sequence[data-outcome="win"][data-ending="time"] .signal-tear{filter:sepia(.75)}
@media(max-height:520px) and (orientation:landscape){.containment-sequence{padding:5px}.containment-sequence .sequence-frame{width:min(94vw,820px);padding:8px 12px}.sequence-board-stage{width:min(53vh,390px);margin:4px auto 5px}.containment-sequence .sequence-frame strong{font-size:11px}.sequence-progress{margin-top:5px}.containment-sequence #skipSequence{margin-top:5px;padding:5px}.sequence-code,.sequence-act{font-size:6px}}

/* Signal fracture replaces literal glass cracks with irregular CRT corruption. */
.screen-cracks{inset:0;filter:none;mix-blend-mode:screen;background:linear-gradient(90deg,transparent 0 6%,rgba(141,255,164,.42) 6% 31%,transparent 31% 43%,rgba(0,0,0,.92) 43% 79%,transparent 79%) 0 var(--fracture-y-a,31%)/100% 5% no-repeat,linear-gradient(90deg,rgba(255,102,66,.28) 0 18%,transparent 18% 57%,rgba(128,255,153,.36) 57% 91%,transparent 91%) 0 var(--fracture-y-b,57%)/100% 2.4% no-repeat,linear-gradient(90deg,transparent 0 22%,rgba(0,0,0,.96) 22% 62%,rgba(229,255,234,.3) 62% 73%,transparent 73%) 0 var(--fracture-y-c,73%)/100% 8% no-repeat;box-shadow:none}.screen-cracks:before,.screen-cracks:after{content:"";position:absolute;left:-9%;right:-7%;width:auto;height:4%;background:repeating-linear-gradient(90deg,transparent 0 17px,rgba(157,255,177,.48) 18px 31px,rgba(0,0,0,.82) 32px 47px);box-shadow:none;transform:none}.screen-cracks:before{top:var(--fracture-y-b,57%)}.screen-cracks:after{top:var(--fracture-y-c,73%);height:2%;background:repeating-linear-gradient(90deg,rgba(255,92,55,.3) 0 9px,transparent 10px 28px,rgba(129,255,154,.28) 29px 45px)}
.containment-sequence[data-outcome="loss"] .screen-cracks{animation:digitalFracture 15s steps(1,end) both}.containment-sequence[data-outcome="loss"] .screen-cracks:before{animation:fractureBandA 15s steps(1,end) both}.containment-sequence[data-outcome="loss"] .screen-cracks:after{animation:fractureBandB 15s steps(1,end) both}
@keyframes digitalFracture{0%,37%,40%,45%,49%,54%,58%,63%,67%,72%,100%{opacity:0;transform:none}38%{opacity:.75;transform:translateX(11px) skewX(-1deg)}46%{opacity:.48;transform:translateX(-17px)}55%{opacity:.88;transform:translate(7px,2px) scaleX(1.03)}59%{opacity:.34;transform:translateX(-4px)}64%{opacity:.95;transform:translateX(19px)}68%{opacity:.58;transform:translate(-12px,-2px)}70%{opacity:.22;transform:scaleX(.97)}}@keyframes fractureBandA{0%,41%,47%,57%,65%,100%{opacity:0;transform:none}42%{opacity:.7;transform:translateX(14%)}48%{opacity:.42;transform:translateX(-8%)}58%{opacity:.82;transform:translateX(23%)}66%{opacity:.28;transform:translateX(-17%)}}@keyframes fractureBandB{0%,43%,51%,60%,68%,100%{opacity:0;transform:none}44%{opacity:.4;transform:translateX(-12%)}52%{opacity:.8;transform:translateX(18%)}61%{opacity:.5;transform:translateX(-22%)}69%{opacity:.74;transform:translateX(9%)}}
@media(prefers-reduced-motion:reduce){.containment-sequence[data-outcome="loss"] .screen-cracks{display:none;animation:none!important}}

/* Victory payoff: the machine becomes brighter and stable once containment succeeds. */
.victory-flash,.victory-seal{display:none;position:absolute;pointer-events:none}.containment-sequence[data-outcome="win"] .victory-flash{display:block;inset:0;z-index:20;background:#d8ffe1;mix-blend-mode:screen;opacity:0;animation:victoryFlash 15s steps(2) both}.containment-sequence[data-outcome="win"] .victory-seal{display:grid;z-index:21;left:50%;top:50%;width:clamp(126px,32%,174px);aspect-ratio:1;place-content:center;gap:8px;transform:translate(-50%,-50%) scale(.4);border:2px solid #b9ffc9;background:rgba(1,10,5,.94);color:#c9ffd5;text-align:center;box-shadow:0 0 0 4px rgba(65,255,114,.14),0 0 30px rgba(112,255,145,.68),inset 0 0 24px rgba(65,255,114,.18);opacity:0;animation:victorySeal 15s cubic-bezier(.18,.78,.2,1) both}.victory-seal:before,.victory-seal:after{content:"";position:absolute;inset:-14px;border:1px solid rgba(118,255,150,.48);transform:rotate(45deg)}.victory-seal:after{inset:-27px;border-style:dashed;opacity:.48;animation:victoryOrbit 7s linear infinite}.victory-seal span{font:900 clamp(29px,7vw,43px)/.8 "Courier New",monospace;letter-spacing:-.13em;text-shadow:0 0 12px #41ff72}.victory-seal strong{font:900 clamp(8px,2vw,11px)/1.2 "Courier New",monospace;letter-spacing:.12em}.victory-seal small{margin:0!important;font-size:clamp(5px,1.4vw,7px)!important;color:#7fe898!important;letter-spacing:.08em!important}.containment-sequence[data-outcome="win"] .sequence-board-host{animation:victoryBoard 15s linear both}.containment-sequence[data-outcome="win"] .sequence-frame{animation:victoryFrame 15s linear both}.containment-sequence[data-outcome="win"] [data-sequence-status]{color:#c9ffd5;text-shadow:0 0 5px #41ff72,0 0 16px rgba(65,255,114,.55);animation:victoryVerdict 15s steps(2) both}.containment-sequence[data-outcome="win"] .sequence-substatus:after{content:" // OPERATOR VICTORIOUS";color:#aaffbd}@keyframes victoryFlash{0%,59%,63%,100%{opacity:0}60%{opacity:.94}61%{opacity:.18}62%{opacity:.58}}@keyframes victorySeal{0%,61%{opacity:0;transform:translate(-50%,-50%) scale(.4) rotate(-4deg)}64%{opacity:1;transform:translate(-50%,-50%) scale(1.08) rotate(1deg)}68%,78%{opacity:1;transform:translate(-50%,-50%) scale(1)}83%,100%{opacity:0;transform:translate(-50%,-50%) scale(.94)}}@keyframes victoryOrbit{to{transform:rotate(405deg)}}@keyframes victoryBoard{0%,58%{filter:brightness(.82) saturate(.85)}61%{filter:brightness(1.9) contrast(1.05)}66%,100%{filter:brightness(1.18) contrast(1.08) drop-shadow(0 0 7px rgba(65,255,114,.48))}}@keyframes victoryFrame{0%,58%{box-shadow:0 0 55px rgba(65,255,114,.1),inset 0 0 45px rgba(0,0,0,.85)}61%{box-shadow:0 0 80px rgba(160,255,181,.42),inset 0 0 30px rgba(65,255,114,.18)}66%,100%{box-shadow:0 0 55px rgba(65,255,114,.22),inset 0 0 30px rgba(0,0,0,.72)}}@keyframes victoryVerdict{0%,78%{opacity:0;visibility:hidden;transform:translateY(5px)}81%{opacity:1;visibility:visible;transform:none}85%{opacity:.4}87%,100%{opacity:1;visibility:visible;transform:none}}@media(prefers-reduced-motion:reduce){.victory-flash,.victory-seal{animation:none!important}.containment-sequence[data-outcome="win"] .victory-seal{opacity:1;transform:translate(-50%,-50%) scale(.9)}.victory-seal:after{animation:none}.containment-sequence[data-outcome="win"] .sequence-board-host,.containment-sequence[data-outcome="win"] .sequence-frame,.containment-sequence[data-outcome="win"] [data-sequence-status]{animation:none}}
/* Canonical lifecycle/accessibility rules. The controller explicitly seeks every layer. */
.containment-sequence,.containment-sequence *,.containment-sequence::before,.containment-sequence::after,.containment-sequence *::before,.containment-sequence *::after,.shell.verdict-pause .board-frame{animation-play-state:paused!important}
.containment-sequence .sequence-progress i{animation:none!important;transform:scaleX(var(--sequence-progress,0))!important}
.containment-sequence[data-variant="brief"] #skipSequence,.containment-sequence[data-motion="reduced"] #skipSequence{display:inline-block}
.containment-sequence[data-motion="reduced"],.containment-sequence[data-motion="reduced"] *,.containment-sequence[data-motion="reduced"]::before,.containment-sequence[data-motion="reduced"]::after,.containment-sequence[data-motion="reduced"] *::before,.containment-sequence[data-motion="reduced"] *::after{animation:none!important;transition:none!important}
.containment-sequence[data-motion="reduced"] .sequence-board-stage,.containment-sequence[data-motion="reduced"] .breach-stage,.containment-sequence[data-motion="reduced"] .purge-stage,.containment-sequence[data-motion="reduced"] .draw-stage{display:none!important}
.containment-sequence[data-motion="reduced"] [data-sequence-status]{opacity:1!important;visibility:visible!important;transform:none!important}
@media(prefers-reduced-motion:reduce){.containment-sequence,.containment-sequence *,.containment-sequence::before,.containment-sequence::after,.containment-sequence *::before,.containment-sequence *::after{animation:none!important;transition:none!important}.containment-sequence [data-sequence-status]{opacity:1!important;visibility:visible!important;transform:none!important}}
