@property --w-width-number{syntax:"<number>";inherits:true;initial-value:19}.wedding-scene{isolation:isolate;color:#fff3d9;--w-figure-scale:1.35;background:#593621;width:100%;font-family:Arial,Helvetica,sans-serif;position:relative;overflow:hidden;container-type:inline-size}.wedding-scene--compact{aspect-ratio:16/10;--w-figure-scale:.675;border-radius:12px}.wedding-scene--portrait{aspect-ratio:9/16}.w-venue{z-index:-5;background:#996c41 url(/venue-open-floor.png) 50%/cover no-repeat;position:absolute;inset:0}.w-vignette{z-index:-4;background:linear-gradient(#170c1638,#0000 24% 75%,#29141d50),radial-gradient(at 50% 60%,#0000 40%,#27101425);position:absolute;inset:0}.w-floor-light{z-index:-3;pointer-events:none;background:radial-gradient(at 50% 65%,#ffe3a41a,#0000 68%);position:absolute;inset:41% 0 0}.w-world{pointer-events:none;position:absolute;inset:0}.w-character{--w-width-number:var(--w-slot-width-number);--w-frame-height:min(100%,calc(var(--w-width-number) * var(--w-figure-scale) * var(--w-art-aspect) * 1cqw));left:var(--w-x);top:var(--w-foot);width:calc(var(--w-width-number) * var(--w-figure-scale) * 1cqw);height:calc(var(--w-slot-height) * var(--w-figure-scale) * 1cqw);z-index:var(--w-z);transform-origin:50% 100%;will-change:left,top,height;transition:left .65s cubic-bezier(.22,.7,.25,1),top .65s cubic-bezier(.22,.7,.25,1),height .65s,--w-width-number .65s;position:absolute;transform:translate(-50%,-100%)}.w-character-sprite{height:var(--w-frame-height);position:absolute;inset:auto 0 0}.w-character-body{transform-origin:50% 98%;animation:2.3s ease-in-out infinite w-dance;animation-delay:var(--dance-delay);position:absolute;inset:0}.w-character-body img{object-fit:contain;object-position:bottom;filter:drop-shadow(0 3px 3px #321b1850);-webkit-user-select:none;user-select:none;width:100%;height:100%}.w-character-body--drummer{animation-name:w-drum;animation-duration:1.05s}.w-character-body--zurna{animation-duration:1.7s}.w-character-body--dancer{animation-duration:1.25s}.w-character-body--pianist{animation-name:w-drum;animation-duration:1.8s}.w-character-shadow{filter:blur(4px);background:#41281866;border-radius:50%;height:4%;position:absolute;bottom:-.4%;left:26%;right:26%}.w-character.is-arriving{z-index:90}.w-character.is-welcoming{height:calc(43cqw * var(--w-figure-scale));--w-width-number:calc(43 / var(--w-art-aspect));z-index:95;top:94%;left:50%}.w-character.is-welcoming .w-character-shadow{background:#573e2980;box-shadow:0 0 22px #e7ba6520}.w-character.is-leaving{pointer-events:none;animation:.65s ease-in both w-depart}.w-label-layer{z-index:105;pointer-events:none;position:absolute;inset:0}.w-nameplate{z-index:1;text-align:center;opacity:0;will-change:transform;background:#281b17d9;border:1px solid #c8a06a85;border-radius:4px;flex-wrap:wrap;justify-content:center;align-items:center;gap:0;width:max-content;min-width:0;max-width:23cqw;padding:2px 5px;font-size:clamp(9px,1.65cqw,13px);font-weight:600;line-height:1.15;display:flex;position:absolute;top:0;left:0;box-shadow:0 1px 3px #38201625}.w-user-handle{overflow-wrap:anywhere;min-width:0;max-width:100%}.w-nameplate--leaders{color:#fff2cd;background:#342518e6;border-color:#e3c78b;max-width:28cqw}.w-nameplate--welcome{z-index:3;background:#30221cf5;border-color:#f5d491;max-width:70cqw;font-size:clamp(11px,2cqw,16px)}.w-nameplate--leaving{animation:.65s ease-in both w-label-depart}.w-name-connector{z-index:0;pointer-events:none;opacity:0;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.w-name-connector line{stroke:#fff0c7;stroke-width:1px;vector-effect:non-scaling-stroke}.w-welcome-caption{z-index:100;text-align:center;text-shadow:0 1px 6px #33180a;pointer-events:none;justify-content:center;transition:opacity .2s;display:flex;position:absolute;top:25%;left:6%;right:6%}.w-welcome-caption>span{color:#fff3d3;letter-spacing:.18em;background:#452719b0;border:1px solid #e0c48b50;border-radius:20px;padding:8px 12px;font-size:2cqw}.w-welcome-caption.is-settling{opacity:0}.w-scene-heading{z-index:50;text-align:center;text-shadow:0 2px 8px #351b16;flex-direction:column;align-items:center;gap:4px;display:flex;position:absolute;top:6%;left:6%;right:6%}.w-kicker{letter-spacing:.23em;color:#fff0c9;font-size:2cqw;font-weight:600}.w-title{letter-spacing:-.025em;font-family:Georgia,Times New Roman,serif;font-size:7cqw;font-style:italic}.w-subtitle{color:#fff0d9;font-size:2.1cqw}.w-scene-badge{z-index:120;letter-spacing:.1em;background:#322218d9;border:1px solid #e9c49750;border-radius:20px;align-items:center;gap:5px;padding:6px 8px;font-size:8px;font-weight:600;display:flex;position:absolute;top:15px;left:15px}.w-demo-dot,.w-live-dot{background:#e3c590;border-radius:50%;width:5px;height:5px}.w-live-dot{background:#86c7a8}.w-empty-state{text-shadow:0 2px 8px #33180a;flex-direction:column;align-items:center;gap:10px;display:flex;position:absolute;inset:55% 5%}.w-empty-state>span{font-family:Georgia,serif;font-size:clamp(14px,4cqw,26px)}.w-empty-state small{opacity:.8;font-size:clamp(10px,2cqw,13px)}.w-scene-footer{z-index:120;text-align:center;background:linear-gradient(#0000,#271913cf);flex-direction:column;gap:4px;padding:20px 12px 10px;font-size:clamp(9px,1.8cqw,12px);display:flex;position:absolute;bottom:0;left:0;right:0}.w-scene-footer>span{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.w-scene-footer small{color:#ead8bd;font-size:.8em}.w-sound-toggle{z-index:121;color:#f2d8ac;cursor:pointer;background:#35251bcc;border:1px solid #dfbb7950;border-radius:20px;align-items:center;gap:6px;padding:8px 11px;font-size:11px;display:flex;position:absolute;top:15px;right:15px}.w-sound-toggle.is-on{opacity:.3}.w-sound-toggle.is-on:hover,.w-sound-toggle:focus-visible{opacity:1}.wedding-scene--portrait .w-scene-footer{padding:20px 20px 12px;font-size:2.1cqw;bottom:1%}.wedding-scene--compact .w-scene-heading{gap:1px;top:4%}.wedding-scene--compact .w-title{font-size:3.8cqw}.wedding-scene--compact .w-kicker{font-size:.9cqw}.wedding-scene--compact .w-subtitle{display:none}.wedding-scene--compact .w-nameplate{padding:1px 3px;font-size:clamp(7px,.95cqw,10px)}.wedding-scene--compact .w-nameplate--welcome{font-size:clamp(9px,1.4cqw,13px)}.wedding-scene--compact .w-scene-badge{padding:4px 6px;font-size:6px;top:7px;left:7px}.wedding-scene--compact .w-welcome-caption{top:24%}.wedding-scene--compact .w-welcome-caption>span{padding:4px 8px;font-size:1.1cqw}.wedding-scene--compact .w-scene-footer{padding:12px 8px 5px;font-size:clamp(7px,1cqw,10px)}.wedding-scene--compact .w-scene-footer small{display:none}@keyframes w-dance{0%,to{transform:rotate(-1deg)}25%{transform:rotate(.5deg)}50%{transform:rotate(1deg)}75%{transform:rotate(-.5deg)}}@keyframes w-drum{0%,to{transform:rotate(-.7deg)}50%{transform:rotate(.7deg)}}@keyframes w-depart{to{opacity:0;transform:translate(-50%,-120%)scale(.75)}}@keyframes w-label-depart{to{opacity:0}}@media (prefers-reduced-motion:reduce){.w-character-body,.w-character.is-leaving,.w-nameplate--leaving{animation:none}.w-character,.w-welcome-caption{transition:none}}.w-label-layer--dense .w-nameplate{max-width:28cqw;padding:2px 4px}.w-label-layer--dense .w-nameplate--leaders{max-width:40cqw}.w-face-safe{pointer-events:none;visibility:hidden;position:absolute}.w-nameplate[data-placed=true]{opacity:var(--w-name-opacity,1)}.w-nameplate--distant{font-size:calc(clamp(9px,1.65cqw,13px) * var(--w-name-scale));padding:calc(2px * var(--w-name-scale)) calc(5px * var(--w-name-scale));border-width:calc(1px * var(--w-name-scale));border-radius:calc(4px * var(--w-name-scale))}.wedding-scene--compact .w-nameplate--distant{font-size:calc(clamp(7px,.95cqw,10px) * var(--w-name-scale));padding:calc(1px * var(--w-name-scale)) calc(3px * var(--w-name-scale))}.wedding-scene--compact.w-needs-label-space{aspect-ratio:9/14}.w-label-layer--dense .w-nameplate{max-width:35cqw;padding:1px 3px;font-size:clamp(7px,1.45cqw,11px)}.w-label-layer--dense .w-nameplate{padding:1px;font-size:clamp(6px,2.03cqw,11px)}.w-label-layer--dense .w-nameplate--distant{font-size:calc(clamp(6px,2.03cqw,11px) * var(--w-name-scale));padding:calc(1px * var(--w-name-scale))}.wedding-scene--compact .w-label-layer--dense .w-nameplate{font-size:clamp(6px,.85cqw,9px)}.wedding-scene--compact .w-label-layer--dense .w-nameplate--distant{font-size:calc(clamp(6px,.85cqw,9px) * var(--w-name-scale))}
