/* Collective portrait: equal scale, neutral default, warm white and orange. */
.ensemble-v5{--ensemble-orange:#ff6a00;--ensemble-ink:#1b2842;--ensemble-muted:#75819a;padding:90px 0;background:#fffaf5;overflow:hidden;scroll-margin-top:110px}.ensemble-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:32px}.ensemble-heading h2{font-size:clamp(28px,3vw,40px);line-height:1.35;letter-spacing:-.04em;color:var(--ensemble-ink);margin:12px 0 0}.ensemble-heading .kicker{font-size:11px;letter-spacing:.15em;color:#c65a12}.ensemble-purpose{display:inline-block;color:#9b4b19;font-size:11px;border:1px solid #ffd5b8;background:#fff6ec;border-radius:20px;padding:4px 8px;margin-right:12px}.ensemble-heading p{color:var(--ensemble-muted);font-size:13px;line-height:1.8;text-align:right;margin:0}.ensemble-mobile-hint{display:none}.ensemble-world{position:relative;background:radial-gradient(ellipse at 50% 35%,#ffe5ca 0, #fff1e4 42%,#fffaf6 75%);border:1px solid #ffdfc4;border-radius:24px;isolation:isolate;overflow:hidden}.ensemble-light{position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at var(--ensemble-x,50%) 52%,#ffb56e42,transparent 30%);transition:opacity .6s;pointer-events:none}.ensemble-floor{position:absolute;left:8%;right:8%;bottom:61px;height:70px;border-radius:50%;background:radial-gradient(ellipse,#c97c4630,transparent 70%);transform:scaleX(1.1);pointer-events:none}.ensemble-watermark{position:absolute;top:27px;left:0;right:0;text-align:center;font-size:clamp(54px,10vw,140px);font-weight:900;letter-spacing:.08em;line-height:1;color:#f3ac6a19;pointer-events:none}.ensemble-scroller{position:relative;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#f4bc8e transparent;outline-offset:-4px}.ensemble-stage{position:relative;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));width:100%;min-width:880px;height:376px;padding:70px 34px 22px;align-items:end;gap:0;box-sizing:border-box}.ensemble-person{position:relative;display:block;width:100%;height:280px;padding:0;margin:0;border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;appearance:none;cursor:default;outline:0;touch-action:pan-x;transition:filter .25s;isolation:isolate;color:var(--ensemble-ink)}.ensemble-person::after{content:"";position:absolute;left:25%;right:25%;height:8px;bottom:-1px;border-radius:50%;background:#a85e211b;filter:blur(4px);z-index:-1}.ensemble-person-image,.ensemble-person-svg{display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center bottom;pointer-events:none;user-select:none;transition:filter .26s}.ensemble-person-svg{overflow:visible;fill:#fff;stroke:#f0c9a9;stroke-width:1.2;filter:drop-shadow(0 6px 5px #c6763620)}.ensemble-person-image{filter:drop-shadow(0 5px 5px #9e542320)}.ensemble-person.active .ensemble-person-image,.ensemble-person.active .ensemble-person-svg{filter:drop-shadow(0 0 2px #ff6a00) drop-shadow(0 5px 9px #e8782840)}.ensemble-person[data-hit="true"]{cursor:pointer}.ensemble-person:focus-visible::before{content:"";position:absolute;inset:0 6px -5px;border:2px solid #fa741d;border-radius:48px 48px 12px 12px;outline:3px solid #fff9;outline-offset:3px}.ensemble-person-label{position:absolute;left:50%;bottom:5px;transform:translate(-50%,18px);font-size:11px;line-height:1.5;background:#fff9f2;border:1px solid #ffcba6;border-radius:16px;padding:3px 10px;color:#a84b0d;opacity:0;white-space:nowrap;pointer-events:none;transition:opacity .2s,transform .2s}.ensemble-person.active .ensemble-person-label,.ensemble-person:focus-visible .ensemble-person-label{opacity:1;transform:translate(-50%,10px)}.ensemble-guidance{position:relative;display:flex;justify-content:space-between;gap:16px;font-size:11px;color:#98755b;line-height:1.7;padding:20px 28px 21px;border-top:1px solid #f7dcc4;background:#fffaf2b3}.ensemble-guidance span:first-child{white-space:nowrap}.ensemble-guidance i{display:inline-block;width:5px;height:5px;background:#fc8a35;border-radius:50%;margin:0 5px 2px 0}.ensemble-info{display:flex;justify-content:space-between;align-items:center;gap:28px;padding:28px 10px 12px;min-height:140px;box-sizing:border-box}.ensemble-info-copy{max-width:790px}.ensemble-info-kicker{font-size:11px;color:#ca6217;letter-spacing:.08em}.ensemble-info h3{font-size:23px;letter-spacing:-.025em;color:var(--ensemble-ink);margin:8px 0 8px;line-height:1.4}.ensemble-info p{font-size:13px;line-height:1.8;color:var(--ensemble-muted);margin:0}.ensemble-info-action{min-width:184px;display:grid;justify-items:end;gap:10px}.ensemble-info-action>span{font-size:11px;color:#938172}.ensemble-info-action .button{white-space:nowrap;min-height:44px;background:#ff6a00;color:white;border:1px solid #ff6a00;border-radius:10px;padding:10px 17px;font-size:12px;gap:16px}.ensemble-info-action a{font-size:12px;color:#c65a12;text-decoration:none}.ensemble-info-action [hidden]{display:none!important}.ensemble-demo-note{font-size:10px;line-height:1.8;color:#9a8c80;margin:12px 10px 0}.ensemble-world.ensemble-in-view .ensemble-watermark{animation:ensemble-drift 15s ease-in-out infinite alternate}.ensemble-world.ensemble-in-view .ensemble-light{animation:ensemble-glow 8s ease-in-out infinite alternate}@keyframes ensemble-drift{to{transform:translateY(7px);letter-spacing:.095em}}@keyframes ensemble-glow{from{opacity:.5}to{opacity:1}}.motion-paused .ensemble-world *,.v4-static .ensemble-world *,.v5-static .ensemble-world *,.ensemble-world.ensemble-offscreen *{animation-play-state:paused!important}.ensemble-person,.ensemble-stage{animation:none!important}@media(max-width:760px){.ensemble-v5{padding:58px 0}.ensemble-heading{display:block;margin-bottom:22px}.ensemble-heading h2{font-size:28px;max-width:330px}.ensemble-heading p{font-size:12px;text-align:left;margin-top:14px}.ensemble-mobile-hint{display:inline}.ensemble-stage{height:365px;min-width:920px;padding-left:24px;padding-right:24px}.ensemble-world{border-radius:17px}.ensemble-guidance{padding:17px 18px;display:block}.ensemble-guidance span{display:block}.ensemble-guidance span+span{margin-top:3px}.ensemble-watermark{font-size:90px;width:920px;top:40px}.ensemble-info{display:block;padding:23px 3px 6px;min-height:220px}.ensemble-info h3{font-size:22px}.ensemble-info-action{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;margin-top:18px}.ensemble-info-action>span{flex-basis:100%}.ensemble-info-action .button{min-height:44px;font-size:12px}.ensemble-demo-note{margin-left:3px;font-size:10px}.ensemble-light{background:radial-gradient(ellipse at 50% 55%,#ffb56e35,transparent 50%)}}@media(prefers-reduced-motion:reduce){.ensemble-v5 *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.ensemble-world.ensemble-motion-paused *{animation-play-state:paused!important}.ensemble-person-image{overflow:hidden}


/* Full-body Q figures replace only the collective strip; directory photos remain intact. */
#ensemble.ensemble-chibi .ensemble-world{max-width:100%;overflow:hidden;overflow:clip}
#ensemble.ensemble-chibi .ensemble-scroller{position:relative;width:100%;max-width:100%;height:452px;max-height:none;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-gutter:auto;scroll-behavior:auto;touch-action:pan-x pan-y pinch-zoom;overflow-anchor:none}
#ensemble.ensemble-chibi .ensemble-stage{display:flex;flex-flow:row nowrap;align-items:flex-end;justify-content:flex-start;width:max-content;min-width:100%;max-width:none;height:440px;min-height:0;gap:12px;padding:112px 24px 20px;box-sizing:border-box;overflow-anchor:none}
#ensemble.ensemble-chibi .ensemble-person{position:relative;display:block;flex:0 0 178px;width:178px;max-width:none;min-width:178px;height:308px;min-height:0;margin:0;padding:0;cursor:default;touch-action:pan-x pan-y pinch-zoom;overflow:visible}
#ensemble.ensemble-chibi .ensemble-person[data-hit="true"]{cursor:pointer}
#ensemble.ensemble-chibi .ensemble-person-image{position:absolute;inset:auto;left:50%;bottom:26px;width:282px;height:282px;max-width:none;object-fit:contain;object-position:center center;transform:translateX(-50%);filter:drop-shadow(0 7px 5px #b76b2920);pointer-events:none;user-select:none;transition:filter .2s,translate .2s}
#ensemble.ensemble-chibi .ensemble-person.active .ensemble-person-image{filter:drop-shadow(0 0 3px #ff7a20) drop-shadow(0 8px 9px #de762b44);translate:0 -3px}
#ensemble.ensemble-chibi .ensemble-person-label{left:50%;bottom:0;display:block;max-width:170px;overflow:hidden;text-overflow:ellipsis;opacity:1;transform:translate(-50%,0);font-size:12px;padding:3px 12px;background:#fffaf3ee;border:1px solid #ffcba6;line-height:1.6;pointer-events:none}
#ensemble.ensemble-chibi .ensemble-person.active .ensemble-person-label{background:#ff751b;color:white;border-color:#ff751b;transform:translate(-50%,0)}
#ensemble.ensemble-chibi .ensemble-person::after{left:22%;right:22%;bottom:27px;height:10px;background:#a85e2120}
#ensemble.ensemble-chibi .ensemble-person:focus-visible::before{inset:0 7px -4px;border-radius:80px 80px 18px 18px;pointer-events:none}
#ensemble.ensemble-chibi .ensemble-chibi-missing{position:absolute;left:20px;right:20px;top:50%;transform:translateY(-50%);color:#98755b;font-size:12px;padding:18px 8px;background:#fff5e9;border:1px dashed #efc7a7;border-radius:18px}
#ensemble.ensemble-chibi .ensemble-floor{display:block;bottom:67px;left:0;right:0;height:32px;background:linear-gradient(transparent,#e2a27216,transparent);border-radius:0;transform:none}
#ensemble.ensemble-chibi .ensemble-watermark{width:100%;top:26px;font-size:clamp(42px,8vw,110px)}
#ensemble.ensemble-chibi .ensemble-guidance{align-items:center;flex-wrap:wrap;min-height:68px;padding:14px 24px;gap:8px 20px}
#ensemble.ensemble-chibi .ensemble-playback{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px 12px}
#ensemble.ensemble-chibi .ensemble-playback>span{color:#a36d45}
#ensemble.ensemble-chibi .ensemble-playback button{min-height:36px;padding:6px 12px;border:1px solid #ffbf91;border-radius:9px;background:#fffdf9;color:#a74c12;font:inherit;font-size:12px;cursor:pointer}
#ensemble.ensemble-chibi .ensemble-playback button:hover{background:#fff0e2}
#ensemble.ensemble-chibi .ensemble-playback [hidden]{display:none!important}
#ensemble.ensemble-chibi .ensemble-demo-note{display:none}
#ensemble.ensemble-chibi .v4-impression-head{max-width:calc(100% - 20px)}
@media(max-width:760px){
 #ensemble.ensemble-chibi .ensemble-scroller{height:416px}
 #ensemble.ensemble-chibi .ensemble-stage{height:404px;gap:8px;padding:104px 10px 16px}
 #ensemble.ensemble-chibi .ensemble-person{flex-basis:154px;width:154px;min-width:154px;height:282px}
 #ensemble.ensemble-chibi .ensemble-person-image{width:258px;height:258px;bottom:24px}
 #ensemble.ensemble-chibi .ensemble-person-label{max-width:148px;font-size:12px}
 #ensemble.ensemble-chibi .ensemble-guidance{display:flex;padding:12px 16px}
 #ensemble.ensemble-chibi .ensemble-guidance span+span{margin-top:0}
 #ensemble.ensemble-chibi .ensemble-playback{justify-content:flex-start;gap:6px 9px}
 #ensemble.ensemble-chibi .ensemble-playback>span{display:inline}
 #ensemble.ensemble-chibi .ensemble-playback button{min-height:40px}
}
@media(prefers-reduced-motion:reduce){#ensemble.ensemble-chibi .ensemble-person-image{transition:none}#ensemble.ensemble-chibi .v4-impression-flight{display:none!important}}

/* Region selection and compact motion control share the strip above the figures. */
#ensemble.ensemble-chibi .ensemble-region-filter{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:14px;margin:22px 0 18px;color:#7b6e65;font-size:12px}
#ensemble.ensemble-chibi .ensemble-region-filter label{display:flex;align-items:center;flex-wrap:nowrap;gap:12px;min-width:0}
#ensemble.ensemble-chibi .ensemble-region-caption{color:#897967;letter-spacing:.02em;white-space:nowrap}
#ensemble.ensemble-chibi .ensemble-select-shell{position:relative;display:inline-flex;min-width:164px;border:1px solid #efc8a8;border-radius:13px;background:linear-gradient(180deg,#fffefd,#fff6ec);box-shadow:0 2px 6px #ab673b08;transition:border-color .18s,box-shadow .18s}
#ensemble.ensemble-chibi .ensemble-select-shell::after{content:'';position:absolute;right:16px;top:17px;width:6px;height:6px;border-right:1.5px solid #ba6b30;border-bottom:1.5px solid #ba6b30;transform:rotate(45deg);pointer-events:none}
#ensemble.ensemble-chibi .ensemble-select-shell:hover{border-color:#ed9a5a;box-shadow:0 3px 12px #bc6c2120}
#ensemble.ensemble-chibi .ensemble-select-shell:focus-within{border-color:#ff801f;outline:3px solid #ff9b4529;outline-offset:2px}
#ensemble.ensemble-chibi .ensemble-select-shell select{appearance:none;-webkit-appearance:none;width:100%;min-height:44px;border:0;border-radius:13px;background:transparent;padding:10px 40px 10px 16px;color:#6a3c20;font:600 13px/1.5 "Microsoft YaHei",sans-serif;cursor:pointer;outline:none}
#ensemble.ensemble-chibi .ensemble-select-shell option{color:#384252;background:#fff;font-weight:400}
#ensemble.ensemble-chibi .ensemble-top-tools{display:flex;align-items:center;gap:12px;margin-left:auto;white-space:nowrap}
#ensemble.ensemble-chibi .ensemble-top-tools>[role=status]{color:#8b95a2;font-size:12px}
#ensemble.ensemble-chibi .ensemble-motion-button,#ensemble.ensemble-chibi .ensemble-clear-button{display:inline-flex;align-items:center;justify-content:center;min-height:38px;border:1px solid #f2d3bb;border-radius:11px;background:#fffaf5;color:#bd6a2d;cursor:pointer;font:500 12px/1.4 "Microsoft YaHei",sans-serif;padding:8px 12px}
#ensemble.ensemble-chibi .ensemble-motion-button{width:38px;font-size:15px;padding:6px}
#ensemble.ensemble-chibi .ensemble-top-tools button:focus-visible{outline:2px solid #ff801f;outline-offset:3px}
#ensemble.ensemble-chibi .ensemble-top-tools [hidden]{display:none!important}
#ensemble.ensemble-chibi .ensemble-guidance{display:none!important}
#ensemble.ensemble-chibi .ensemble-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:760px){#ensemble.ensemble-chibi .ensemble-region-filter{gap:10px;margin:18px 0 15px}#ensemble.ensemble-chibi .ensemble-region-filter label{gap:8px}#ensemble.ensemble-chibi .ensemble-region-caption{font-size:11px}#ensemble.ensemble-chibi .ensemble-select-shell{min-width:126px}#ensemble.ensemble-chibi .ensemble-select-shell select{min-height:44px;font-size:12px;padding-left:12px;padding-right:33px}#ensemble.ensemble-chibi .ensemble-top-tools{gap:8px}#ensemble.ensemble-chibi .ensemble-top-tools>[role=status]{font-size:11px}#ensemble.ensemble-chibi .ensemble-motion-button{min-height:44px;width:40px}#ensemble.ensemble-chibi .ensemble-clear-button{min-height:44px}}
