.yut-overlay[hidden]{display:none}.yut-overlay{position:fixed;inset:0;z-index:100;display:grid;place-items:center;background:#101b18;color:#f8f0dd}.yut-overlay *{box-sizing:border-box}.yut-overlay button{font:inherit;cursor:pointer}.yut-overlay button:disabled{opacity:.42;cursor:default}.yut-overlay button:focus-visible{outline:3px solid white;outline-offset:3px}.yut-lobby-card{width:min(480px,calc(100% - 32px));position:relative;padding:50px 34px;text-align:center;border:1px solid #96845c;border-radius:20px;background:#24372e;box-shadow:0 24px 90px #0008}.yut-lobby-card h2{font-size:30px;margin:12px 0}.yut-lobby-card p{color:#c5d0c1;line-height:1.6}.yut-lobby-card label{display:block;text-align:left;margin:24px auto 12px;max-width:300px;font-size:13px}.yut-lobby-card input{width:100%;margin-top:8px;padding:12px;background:#14251f;color:white;border:1px solid #718376;border-radius:10px}.yut-kicker{color:#dfc484;font-size:11px;letter-spacing:.17em;font-weight:700}.yut-fullscreen,.yut-canvas-host{position:absolute;inset:0}.yut-3d-canvas{display:block;width:100%;height:100%;touch-action:manipulation}.yut-top{position:absolute;top:0;left:0;right:0;display:grid;grid-template-columns:1fr minmax(260px,480px) 1fr;align-items:start;gap:12px;padding:18px;pointer-events:none;background:linear-gradient(#0d1717bc,transparent)}.yut-heading{display:flex;flex-direction:column;gap:4px;text-shadow:0 2px 7px #000}.yut-heading b{font-size:18px}.yut-heading small{font-size:11px;color:#c8d2c6}.yut-players{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:7px;padding:7px;background:#e4d5ad;border:4px solid #9b7751;border-radius:12px;color:#3c3429;box-shadow:0 5px 18px #0008;font-weight:700;text-align:center}.yut-players div{padding:8px 10px;border-radius:8px;background:#e9e2d2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.yut-players .active{background:#fff5dc;box-shadow:inset 0 0 0 2px #c09b57}.yut-players small{font-size:23px;color:#8b714c;margin:0 4px}.yut-players i{display:inline-block;width:11px;height:11px;border-radius:50%;margin:0 7px}.yut-players .red{background:#c56853}.yut-players .blue{background:#6196ae}.yut-close{pointer-events:auto;justify-self:end;border:1px solid #fff5;border-radius:50%;width:42px;height:42px;background:#14241ed9;color:#fff;font-size:25px!important}.yut-lobby-card .yut-close{position:absolute;top:16px;right:16px}.yut-hud{position:absolute;right:22px;bottom:22px;min-width:250px;max-width:380px;padding:16px 18px;text-align:center;border:1px solid #ffffff32;border-radius:18px;background:#13241fe8;box-shadow:0 10px 34px #0007}.yut-status{font-size:18px;font-weight:700}.yut-note{margin:5px;color:#f0d38d;font-size:15px}.yut-pending{min-height:5px}.yut-primary{background:#ecd192;color:#23342a;border:0;border-radius:30px;padding:11px 25px;font-weight:700!important}.yut-result,.yut-pieces button{background:#334a3c;color:#f4edd9;border:1px solid #728573;border-radius:8px;padding:6px 10px;margin:3px}.yut-result.selected{border-color:#f8d995;background:#725c37}.yut-pieces{display:flex;flex-wrap:wrap;justify-content:center;margin-top:7px}.yut-pieces button{font-size:12px}.yut-help{display:block;color:#c0cabe;font-size:11px;margin-top:8px}@media(max-width:650px){.yut-top{padding:10px;grid-template-columns:1fr 2fr 42px;gap:5px}.yut-heading b{font-size:12px}.yut-heading .yut-kicker{font-size:8px}.yut-heading small{font-size:9px}.yut-players{padding:4px;gap:2px;border-width:2px;font-size:12px}.yut-players div{padding:5px 3px}.yut-players small{font-size:14px}.yut-players i{margin:0 3px}.yut-close{width:36px;height:36px}.yut-hud{right:10px;bottom:10px;left:10px;max-width:none;min-width:0;padding:9px}.yut-status{font-size:14px}.yut-note{font-size:12px;margin:3px}.yut-primary{padding:8px 20px}.yut-pieces{margin:2px}.yut-pieces button{padding:5px}.yut-help{display:none}}
.yut-sr-controls{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.yut-sr-controls:focus-within{position:static;width:auto;height:auto;margin:6px 0;overflow:visible;clip-path:none;white-space:normal}
.yut-music{pointer-events:auto;border:1px solid #ffffff55;border-radius:18px;background:#14241ee6;color:#f8f0dd;padding:7px 12px;font-size:12px!important;white-space:nowrap}.yut-top .yut-music{position:absolute;right:18px;top:68px}.yut-lobby-card .yut-music{position:absolute;right:70px;top:20px}@media(max-width:650px){.yut-top .yut-music{right:10px;top:54px;padding:6px 10px;font-size:11px!important}}
.yut-waiting[hidden]{display:none}.yut-waiting{position:fixed;z-index:55;top:82px;left:50%;transform:translateX(-50%);width:min(370px,calc(100vw - 28px));padding:12px 14px;background:#f0e6ce;color:#493c31;border:3px solid #9b7751;border-radius:15px;box-shadow:0 8px 30px #0008;font-family:inherit}.yut-wait-heading{display:flex;justify-content:space-between;align-items:center;font-size:15px}.yut-wait-heading span{font-weight:700;color:#846540}.yut-wait-slots{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:9px}.yut-wait-slot{min-width:0;padding:8px;border-radius:8px;color:#fff;text-align:center}.yut-wait-slot.red{background:#bd766c}.yut-wait-slot.blue{background:#739eae}.yut-wait-slot small,.yut-wait-slot strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.yut-wait-slot small{font-size:11px;opacity:.85}.yut-wait-slot strong{font-size:15px;margin-top:4px}.yut-waiting p{text-align:center;margin:9px 0;color:#665744;font-size:12px}.yut-wait-actions{display:flex;justify-content:center;gap:8px}.yut-wait-actions button{padding:7px 15px;border:0;border-radius:18px;background:#4a5c49;color:#fff;font:inherit;font-size:12px;cursor:pointer}.yut-wait-actions button[data-preview]{background:#9a7040}@media(max-width:650px){.yut-waiting{top:72px;width:min(330px,calc(100vw - 24px));padding:10px}.yut-wait-slot{padding:6px}}

/* Parchment, ink and muted red/blue keep the game controls legible over the 3D scene. */
.yut-overlay{background:#18251f}.yut-top{padding:18px 22px 54px;background:linear-gradient(#121c19dd,transparent)}.yut-heading b{font-family:'Gowun Batang',serif;letter-spacing:-.03em}.yut-heading .yut-kicker{font-size:10px}.yut-players{background:#e9ddc3;border:2px solid #8f6c43;border-radius:11px;box-shadow:0 5px 20px #0006;padding:5px}.yut-players>div{position:relative;overflow:visible;background:#f4ead7;border:1px solid #ad9773}.yut-players .active{background:#fff7e4;box-shadow:inset 0 -3px #b47f43}.yut-players .red{background:#b8584e}.yut-players .blue{background:#4e829b}.yut-close{background:#1a2e27ef;border-color:#e6d4a077}.yut-hud{border:1px solid #bca77b88;background:#1b2c26ed;box-shadow:0 8px 28px #0008;border-radius:13px}.yut-status{font-family:'Gowun Batang',serif;letter-spacing:-.02em}.yut-primary{background:#e3be77;border:1px solid #f8e3ae;box-shadow:0 3px 0 #a27239;color:#2e2d20}.yut-primary:active{transform:translateY(2px);box-shadow:0 1px 0 #a27239}.yut-result{background:#344c3c;border-color:#b49a6b}.yut-lobby-card{background:#22372d;border:1px solid #c1a477}.yut-lobby-card h2{font-family:'Gowun Batang',serif}.yut-lobby-card .yut-rule-button{display:block;margin:18px auto 0}
.yut-utility{position:absolute;left:22px;bottom:22px;display:flex;gap:8px;align-items:center}.yut-rule-button,.yut-emote-toggle{pointer-events:auto;border:1px solid #d6c09588;border-radius:10px;padding:9px 13px;background:#23382ef0;color:#f9efd9;font-size:12px!important;box-shadow:0 4px 14px #0004}.yut-emote-tray{position:absolute;left:0;bottom:48px;display:grid;grid-template-columns:repeat(4,40px);gap:4px;padding:8px;background:#e9ddc3;border:2px solid #a3845a;border-radius:12px;box-shadow:0 7px 25px #0006}.yut-emote-tray button{border:0;border-radius:7px;background:#fff7e5;font-size:22px;line-height:1.5}.yut-player-emote{position:absolute;z-index:5;top:calc(100% + 12px);left:50%;transform:translateX(-50%);min-width:50px;padding:5px 9px;border:2px solid #d4ad6d;border-radius:13px;background:#fff9e9;font-size:26px;box-shadow:0 3px 10px #0005}.yut-player-emote.show{animation:yut-emote-pop .28s ease-out}@keyframes yut-emote-pop{from{transform:translateX(-50%) scale(.3);opacity:0}to{transform:translateX(-50%) scale(1);opacity:1}}
.yut-rules{position:absolute;z-index:35;inset:0;display:grid;place-items:center;padding:20px;background:#0b1612bc}.yut-rules-card{position:relative;width:min(480px,100%);padding:34px 35px 22px;background:#f4ead4;border:4px solid #9a7547;border-radius:14px;color:#382f23;box-shadow:0 16px 60px #0008}.yut-rules-card .yut-kicker{color:#9c7140}.yut-rules-card h2{margin:12px 0 22px;font-family:'Gowun Batang',serif;font-size:26px}.yut-rules-copy{min-height:150px;line-height:1.65;font-size:15px}.yut-rules-copy p{margin:0 0 14px}.yut-rules-close{position:absolute;top:12px;right:12px;border:0;background:#72563b;color:#fff5de;border-radius:50%;font-size:23px!important;width:35px;height:35px}.yut-rules-nav{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #cbb797;padding-top:14px;color:#7b6246;font-size:12px;font-weight:700}.yut-rules-nav button{border:0;background:none;color:#725638;font-size:24px!important}.yut-rules-nav button span{font-size:12px}
.yut-countdown[hidden],.yut-reveal[hidden],.yut-capture[hidden]{display:none}.yut-countdown{position:fixed;inset:0;z-index:150;display:grid;place-items:center;background:#0c1d18a8;color:#fff4d9;text-align:center}.yut-count-inner span{display:block;font-family:'Gowun Batang','Batang','Nanum Myeongjo',serif;font-size:clamp(82px,18vw,168px);line-height:.9;text-shadow:0 3px 0 #7f472b,0 10px 30px #000}.yut-count-inner small{display:block;margin-top:18px;letter-spacing:.24em;font-size:11px;color:#e7cd98}.yut-count-cancel{position:absolute;bottom:12%;left:50%;transform:translateX(-50%);border:1px solid #ffffff80;border-radius:20px;padding:8px 18px;background:#1a3028;color:#fff;font:inherit;font-size:12px}
.yut-reveal,.yut-capture{position:absolute;z-index:20;left:50%;top:43%;transform:translate(-50%,-50%);pointer-events:none;text-align:center}.yut-reveal.show{animation:yut-reveal 1.15s ease both}.yut-reveal-label{position:relative;display:block;color:#fff4d6;font-family:'Gowun Batang','Batang','Nanum Myeongjo',serif;font-size:clamp(108px,21vw,210px);line-height:.8;text-shadow:3px 5px 0 #572d1c,0 8px 28px #000}.yut-reveal small{position:relative;display:block;margin-top:9px;color:#fff0c6;font-size:14px;letter-spacing:.12em;text-shadow:0 2px 6px #000}.yut-reveal-ring{position:absolute;width:190px;height:190px;left:50%;top:45%;transform:translate(-50%,-50%);border:5px solid #e8bd75a8;border-radius:50%;box-shadow:0 0 0 15px #d99e3824,0 0 55px #e4a34580}.yut-reveal.special .yut-reveal-label{color:#ffe39a;text-shadow:4px 6px 0 #932d1e,0 0 34px #ffb74e,0 8px 30px #000}.yut-reveal.special .yut-reveal-ring{border-width:9px;border-color:#ffe6a4;box-shadow:0 0 0 20px #e9852a4d,0 0 90px #ff8c28}.yut-capture{top:50%;font-family:'Gowun Batang','Batang','Nanum Myeongjo',serif;font-size:clamp(52px,10vw,100px);color:#fff1c7;text-shadow:3px 4px #9a3928,0 0 28px #ffb449}.yut-capture.show{animation:yut-capture .8s ease-out both}@keyframes yut-reveal{0%{opacity:0;transform:translate(-50%,-50%) scale(1.9) rotate(-9deg)}18%{opacity:1;transform:translate(-50%,-50%) scale(.94) rotate(2deg)}30%,70%{opacity:1;transform:translate(-50%,-50%) scale(1)}100%{opacity:0;transform:translate(-50%,-54%) scale(1.08)}}@keyframes yut-capture{0%{opacity:0;transform:translate(-50%,-50%) scale(.5)}20%,55%{opacity:1;transform:translate(-50%,-50%) scale(1.15)}100%{opacity:0;transform:translate(-50%,-65%) scale(1)}}
@media(max-width:650px){.yut-top{padding:10px 10px 45px}.yut-utility{left:10px;bottom:auto;top:72px}.yut-rule-button,.yut-emote-toggle{padding:7px 10px;font-size:11px!important}.yut-emote-tray{bottom:auto;top:40px}.yut-hud{bottom:12px}.yut-rules-card{padding:28px 23px 18px}.yut-rules-card h2{font-size:22px;margin:10px 0 14px}.yut-rules-copy{min-height:120px;font-size:14px}.yut-reveal-ring{width:150px;height:150px}.yut-count-inner span{font-size:clamp(80px,19vw,120px)}}
@media(prefers-reduced-motion:reduce){.yut-reveal.show,.yut-capture.show{animation-duration:.35s}}
.yut-viewer-indicator{border:1px solid #d6c09570;border-radius:10px;background:#23382ee8;color:#f5e8ce;font-size:12px;padding:9px 11px;white-space:nowrap}.yut-spectator-emote{position:absolute;z-index:24;left:22px;bottom:78px;padding:7px 10px;border:2px solid #d5b076;border-radius:13px;background:#fff9e9;font-size:28px;box-shadow:0 4px 12px #0006}.yut-spectator-emote.show{animation:yut-emote-pop .28s ease-out}.yut-cancel-move{margin-left:6px;border:1px solid #d6c09588;border-radius:20px;padding:9px 14px;background:#31483c;color:#fff4df;font-size:12px!important}@media(max-width:650px){.yut-viewer-indicator{padding:7px 9px;font-size:11px}.yut-spectator-emote{left:12px;bottom:auto;top:120px}.yut-utility{gap:4px}.yut-rule-button,.yut-emote-toggle{padding:7px 8px}}
.yut-final[hidden]{display:none}.yut-final{position:absolute;z-index:40;inset:0;display:grid;place-items:center;padding:16px;background:#07120fc9;text-align:center}.yut-final-glow{position:absolute;width:min(90vw,560px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#f4cb6470,transparent 67%);animation:final-glow 2.6s ease-in-out infinite alternate;pointer-events:none}.yut-final-card{position:relative;width:min(420px,100%);padding:28px 26px 22px;border:2px solid #d9bd7c;border-radius:20px;background:linear-gradient(145deg,#354738,#182b25);box-shadow:0 20px 75px #000a,0 0 60px #dcae4240;animation:final-entrance .65s cubic-bezier(.2,1.45,.5,1) both}.yut-final-card.comfort{border-color:#bdc9b0;box-shadow:0 20px 75px #000a}.yut-final-kicker{color:#d8c59b;font-size:11px;letter-spacing:.18em}.yut-final-card h2{margin:10px 0;color:#ffe4a0;font-size:clamp(48px,12vw,76px);line-height:1;text-shadow:0 3px #815027,0 0 26px #ffcc6577}.yut-final-card.comfort h2{color:#e8eddb;font-size:clamp(30px,8vw,45px);text-shadow:0 2px 15px #000}.yut-final-card p{color:#f7edda;font-size:15px;line-height:1.5}.yut-ready-slots{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:20px 0 12px}.yut-ready-slot{padding:10px;background:#ffffff0b;border:1px solid #ffffff33;border-radius:10px}.yut-ready-slot strong,.yut-ready-slot span{display:block;overflow:hidden;text-overflow:ellipsis}.yut-ready-slot span{font-size:12px;margin-top:5px;color:#bac5b4}.yut-ready-slot.is-ready{border-color:#dfbd76;background:#e3bc6c1c}.yut-ready-slot.is-ready span{color:#ffdc89}.yut-final-buttons{display:flex;justify-content:center;gap:8px;margin-top:10px}.yut-final-buttons button{padding:9px 16px;border:1px solid #dfcb9b99;border-radius:24px;background:#ffffff12;color:#fff6e2;font-size:13px}.yut-final-buttons .yut-primary{background:#e3be77;color:#253328}.yut-final-card small{display:block;color:#cbd1bd;margin-top:15px;font-size:11px}@keyframes final-entrance{from{opacity:0;transform:scale(.72) translateY(18px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes final-glow{from{transform:scale(.85);opacity:.65}to{transform:scale(1.08);opacity:1}}@media(max-height:650px){.yut-final-card{padding:15px}.yut-final-card h2{font-size:42px}.yut-ready-slots{margin:10px 0 4px}.yut-final-card p{margin:8px}.yut-final-card small{margin-top:7px}}@media(prefers-reduced-motion:reduce){.yut-final-glow,.yut-final-card{animation:none}}

/* The two results have their own restrained visual treatment. */
.yut-final-glow.comfort{background:radial-gradient(circle,#c1dac438,transparent 67%)}
.yut-final-glow.win::before,.yut-final-glow.win::after{content:'✦';position:absolute;color:#ffe29a;text-shadow:0 0 14px #ffd97b;font-size:38px;animation:yut-victory-spark 1.6s ease-in-out infinite alternate}
.yut-final-glow.win::before{left:8%;top:22%}.yut-final-glow.win::after{right:9%;top:64%;animation-delay:.6s}
@keyframes yut-victory-spark{from{opacity:.3;transform:scale(.65) rotate(-15deg)}to{opacity:1;transform:scale(1.2) rotate(15deg)}}
@media(prefers-reduced-motion:reduce){.yut-final-glow.win::before,.yut-final-glow.win::after{animation:none}}

/* Keep match controls away from the chat dock on desktop. */
@media(min-width:651px){.yut-utility{top:118px;bottom:auto;left:20px}.yut-emote-tray{top:48px;bottom:auto}.yut-spectator-emote{top:175px;bottom:auto;left:20px}}
.yut-player-emote span,.yut-spectator-emote span{display:block;line-height:1.15}
.yut-player-emote small,.yut-spectator-emote small{display:block;max-width:160px;margin:3px 0 0;color:#423326;font:12px 'Gowun Batang',serif;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* Countdown is informational; keep the yard chat usable. */
.yut-countdown{pointer-events:none}.yut-count-cancel{pointer-events:auto}
