/* About E3 reference: retain its original type scale, spacing and resting composition. */
#dance { --ai:#a9aaa8; --ai-dim:rgba(169,170,168,.55); --gold-lit:var(--rust-lit); }
#dance .dance-copy.mz { left:54%; right:var(--gutter); top:100px; bottom:24px; display:grid; grid-template-rows:auto 1fr auto; isolation:isolate; }
#dance .mz-head { display:flex; padding:30px 0 14px; }
#dance .mz-foot { display:flex; padding:14px 0 26px; }
#dance .mz-margin { display:flex; left:calc(54% - 52px); top:100px; bottom:24px; }
#dance .mz-stream { inset:70px 0 60px; height:auto; overflow:hidden; opacity:1; transform:none; z-index:0; transition:transform 1.6s var(--ease-out),opacity 1.6s ease; }
#dance .s-rise .mz-stream { transform:translateY(-90px) scale(.75); transform-origin:50% 0; opacity:.3; }
#dance .mz-v { max-width:46%; color:#b5b6b4; border-color:rgba(210,210,207,.28); background:rgba(210,210,207,.025); text-shadow:none; animation:dance-crowd var(--life) ease-out both; }
@keyframes dance-crowd { 0% {opacity:0;transform:translateY(14px)} 18% {opacity:var(--peak);transform:none} 45% {opacity:calc(var(--peak) * .7)} 100% {opacity:var(--rest);transform:translateY(-20px)} }
#dance .mz-dialog { top:34%; gap:18px; z-index:1; }
#dance .mz-q { max-width:78%; padding:16px 22px 18px; border:1px solid rgba(243,237,228,.28); background:rgba(243,237,228,.035); }
#dance .mz-q--l { margin:0; justify-self:start; }
#dance .mz-q--r { margin:0; justify-self:end; max-width:78%; }
#dance .mz-q p { font:600 clamp(20px,1.9vw,28px)/1.45 var(--serif-cn); color:var(--text); }
#dance .s-rise .mz-dialog, #dance .s-partner .mz-dialog { top:84px; transform:scale(.6); opacity:.38; gap:18px; }
#dance .s-rise .mz-q { padding:16px 22px 18px; }
#dance .s-rise .mz-q p { font-size:clamp(20px,1.9vw,28px); }
#dance .mz-who { display:block; color:var(--faint); }
#dance .mz-view { top:26%; z-index:2; }
#dance .mz-doubt { color:var(--dim); font:400 clamp(15px,1.25vw,18px)/1.6 var(--serif-cn); }
#dance .mz-partner { display:none; }
#dance .mz-pull { margin:14px 0 0; font:900 clamp(36px,4.1vw,66px)/1.16 var(--serif-cn); letter-spacing:.01em; color:var(--text); }
#dance .mz-pull .ln { white-space:nowrap; padding-bottom:.05em; margin-top:0; overflow:hidden; }
#dance .mz-pull .ln > span { transition:transform 1.3s var(--ease-out); }
#dance .mz-pull .ln + .ln > span { transition-delay:.16s; }
#dance .mz-pull em { color:var(--rust-lit); }
#dance .mz-mark { color:var(--rust-lit); }
#dance .dance-copy.mz .mz-body { margin-top:22px; padding-top:16px; padding-right:0; columns:auto; display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:34px; max-height:none; overflow:visible; font:400 13px/1.95 var(--sans); letter-spacing:.05em; }
#dance .mz-column + .mz-column { border-left:1px solid var(--hairline); padding-left:17px; margin-left:-17px; }
#dance .mz-body p { margin:0 0 .9em; }
#dance .mz-column:first-child p:first-child::first-letter { font:900 2.4em/1 var(--serif-cn); float:left; margin:.12em .18em 0 0; color:var(--text); }
#dance .mz-body .c.k-selected { color:var(--rust-lit); }
#dance .mz-sign { display:flex; margin:18px 0 0; }
#dance .kwcloud.on { opacity:1; }
#dance .kwcloud.dim { opacity:.5; }
#dance .kwcloud.quiet { opacity:.15; filter:blur(2px); }
#dance .kwcloud .kw { color:#a9aaa8; opacity:calc(.02 + var(--s) * .0025); }
@media(max-height:860px) and (min-width:761px) {
 #dance .s-partner .mz-dialog { top:74px; transform:scale(.52); opacity:.22; }
 #dance .mz-view { top:22%; }
 #dance .mz-pull { font-size:clamp(30px,3.4vw,50px); }
 #dance .dance-copy.mz .mz-body { margin-top:16px; padding-top:12px; font-size:12.5px; line-height:1.85; }
 #dance .mz-body p { margin-bottom:.6em; }
 #dance .mz-sign { margin-top:10px; }
}
@media(max-width:760px) {
 #dance .dance-copy.mz { left:var(--gutter); top:48%; bottom:24px; }
 #dance .mz-margin { display:none; }
 #dance .mz-head { padding-top:12px; }
 #dance .mz-pull { font-size:clamp(26px,7.6vw,44px); }
 #dance .dance-copy.mz .mz-body { grid-template-columns:1fr; max-height:26vh; overflow:auto; }
 #dance .mz-column + .mz-column { border:0; padding-left:0; margin-left:0; }
}
@media(prefers-reduced-motion:reduce) { #dance .mz-v { animation:none; opacity:var(--rest); } }

/* The approved E3 owns the final scene; the existing tree-leaf bridge handles entry. */
#dance .dance-e3 { position:absolute; inset:0; width:100%; height:100%; border:0; z-index:9; opacity:0; pointer-events:none; transition:none; background:var(--bg); }
#dance.e3-ready .dance-e3 { opacity:1; pointer-events:auto; }
#dance.e3-version .dance-copy, #dance.e3-version .kwcloud, #dance.e3-version .mz-margin, #dance.e3-version .dance-hint { visibility:hidden; }
