.yard-page{background:#e8dec5}.courtyard{position:relative;min-height:100svh;background:#e9dfc6 url('/yard-background.svg') center top/100% 100% no-repeat;padding:0 max(22px,calc((100vw - 1470px)/2)) 34px;overflow:hidden}.yard-controls{position:absolute;right:20px;top:14px;display:flex;gap:9px;z-index:5}.yard-controls a,.yard-controls button{display:grid;place-items:center;background:#fffdf070;color:#667452;border:1px solid #c2c8a980;width:33px;height:33px;border-radius:50%;font-size:18px}.yard-host{position:relative;height:290px;display:flex;justify-content:center;align-items:flex-end;gap:50px;padding-bottom:10px}.yard-baby{width:260px;position:relative;margin-left:202px}.yard-baby:before{content:'';position:absolute;left:7%;right:7%;height:25px;bottom:1px;background:#ab957241;border-radius:50%;filter:blur(5px)}.yard-baby .baby-art{position:relative;filter:drop-shadow(0 6px 0 #ab946211)}.yard-baby .baby-photo img{height:204px;width:204px}.yard-baby .baby-photo span{display:none}.yard-invite{width:152px;margin-bottom:25px;position:relative;z-index:2}.yard-invite>img{width:152px;height:152px;background:#fffef7;border:8px solid #fffef7;border-radius:12px;box-shadow:0 4px 12px #695a3115;display:block}.yard-invite .button{width:100%;margin-top:9px;font-size:12px;padding:10px 6px;min-height:37px;white-space:nowrap;box-shadow:0 3px 0 #35482920}.yard-items{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:20px;row-gap:25px;max-width:1320px;margin:0 auto;align-items:start;position:relative;padding-top:6px}.yard-station{grid-column:span 2;position:relative;min-width:0;text-align:center}.yard-station:nth-child(7){grid-column:2/span 2}.yard-object{display:flex;align-items:center;flex-direction:column;position:relative;z-index:1}.woven-mat{height:92px;width:142px;background:repeating-linear-gradient(0deg,#c8af79aa 0px,#c8af79aa 1px,#e1c793cc 1px,#e1c793cc 5px);border:3px double #c3a36b;border-radius:50%;box-shadow:0 7px 0 #ad925640;display:flex;justify-content:center;align-items:center;transform:perspective(220px) rotateX(14deg)}.woven-mat .item-art{width:81px;height:81px;transform:translateY(-10px);filter:drop-shadow(1px 5px 1px #8a693825)}.yard-object h2{font-size:16px;margin-top:11px;color:#655636;letter-spacing:.1px;font-weight:700;text-shadow:0 1px 0 #fff6df}.yard-station.chosen .woven-mat{outline:4px solid #9dae76;outline-offset:5px}.yard-station.chosen .yard-object h2{color:#426b39}.yard-queue{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;justify-items:center;min-height:147px;padding:14px 4px 0;row-gap:0;position:relative;z-index:2}.cast-slot{position:relative;width:100%;height:140px;display:flex;justify-content:center;align-items:flex-start;z-index:calc(1 + var(--cast-index));pointer-events:none}.cast-slot:after{content:'';position:absolute;bottom:20px;left:50%;transform:translateX(-50%);height:9px;width:47px;border-radius:50%;background:#85795722;z-index:-1}.yard-queue .character{width:92px;flex-shrink:0;animation:none;transform:none;rotate:none}.char-pose{display:flex;flex-direction:column;align-items:center;position:relative;transform-origin:50% 80%;width:100%}.yard-queue .char-pose{animation:yard-idle 3s ease-in-out infinite;animation-delay:var(--delay);z-index:2}.yard-queue .char-head{width:84px;height:84px;border-width:2px;background:#f1d7ae;box-shadow:0 3px 3px #8e71431c}.yard-queue .char-head img{object-fit:cover;image-rendering:auto}.yard-queue .char-hair{height:28px;top:-13px}.yard-queue .char-eyes{font-size:25px;letter-spacing:8px;left:19px;top:25px}.yard-queue .char-smile{width:16px;height:8px;top:56px;left:32px;border-width:2px}.yard-queue .char-body{width:64px;height:54px;margin-top:-6px;overflow:visible}.yard-queue .char-name{position:relative;z-index:8;background:#fff8e4ed;color:#5d6346;border:1px solid #d0bd9450;border-radius:20px;font-size:12px;font-weight:700;padding:3px 8px;line-height:1.2;white-space:nowrap;margin-top:-5px;box-shadow:0 2px 3px #8672380a}.cast-slot.is-me .char-name{background:#536b46;color:#fff}.yard-queue:empty{min-height:147px}.yard-offline{display:none;position:fixed;bottom:12px;left:50%;transform:translateX(-50%);background:#fff4df;padding:10px 16px;border-radius:20px;font-size:12px;z-index:30}.offline .yard-offline{display:block}
.char-body .arm-left,.char-body .arm-right{transform-origin:25px 11px}.char-body .buddy-arm{display:none}.yard-queue [data-activity="wave"] .arm-right{animation:yard-wave .55s ease-in-out infinite alternate;animation-delay:var(--play-delay)}.yard-queue [data-activity="bow"] .char-pose{animation:yard-bow 2.2s ease-in-out infinite;animation-delay:var(--play-delay)}.yard-queue [data-activity="pushup"] .char-pose{animation:yard-pushup 1.15s ease-in-out infinite;animation-delay:var(--play-delay);z-index:3}.yard-queue [data-activity="pushup"] .arm-left{transform:rotate(67deg)}.yard-queue [data-activity="pushup"] .arm-right{transform:rotate(-28deg)}.yard-queue [data-activity^="buddy"] .char-pose{animation:yard-buddies 1.7s ease-in-out infinite;animation-delay:0s}.yard-queue [data-activity="buddy-left"] .arm-right,.yard-queue [data-activity="buddy-right"] .arm-left{display:none}.yard-queue [data-activity="buddy-left"] .buddy-arm-right,.yard-queue [data-activity="buddy-right"] .buddy-arm-left{display:block}.yard-queue [data-activity="buddy-left"] .char-head{rotate:7deg}.yard-queue [data-activity="buddy-right"] .char-head{rotate:-7deg}
@keyframes yard-idle{0%,100%{transform:rotate(-2deg)}50%{transform:rotate(2deg) translateY(-2px)}}@keyframes yard-wave{from{transform:rotate(-100deg)}to{transform:rotate(-145deg)}}@keyframes yard-bow{0%,65%,100%{transform:rotate(0deg)}28%,40%{transform:translateY(7px) rotate(19deg)}}@keyframes yard-pushup{0%,100%{transform:translate(-8px,18px) rotate(-77deg)}50%{transform:translate(-8px,5px) rotate(-66deg)}}@keyframes yard-buddies{0%,100%{transform:rotate(-4deg) translateY(0)}50%{transform:rotate(4deg) translateY(-3px)}}
.yard-page .race-shell{min-height:100svh;background:#e9dfc6 url('/yard-background.svg') center/cover;padding:45px 25px 20px;position:relative}.yard-page .race-shell .race-scene,.yard-page .race-shell .winner-scene{max-width:1440px;margin:auto;border:0;border-radius:20px;background:#fffcec99;min-height:calc(100svh - 65px)}.yard-page .race-heading .eyebrow,.yard-page .race-caption,.yard-page .winner-scene>.eyebrow,.yard-page .winner-note{display:none}.yard-page .race-heading h2{margin-top:0}.yard-page .race-shell .race-lane{height:clamp(50px,calc((100svh - 250px)/var(--racers)),110px)}.yard-page .race-shell .runner .character{scale:1.3;transform-origin:bottom center}.yard-page .race-shell .racetrack{background:#edebd6}.yard-page .race-shell .winner-scene{display:flex;flex-direction:column;justify-content:center}.yard-page .race-shell .winner-character .character{width:110px}.yard-page .race-shell .winner-character .char-head{width:66px;height:66px}.yard-page .race-shell .winner-character .char-eyes{top:20px;left:15px;font-size:20px}.yard-page .race-shell .winner-character .char-smile{top:42px;left:25px;width:12px}.yard-page .race-shell .winner-character{margin:30px 0}.yard-page .race-shell .crown{top:-50px}
@media(min-width:900px){.yard-page .race-shell .racetrack.dense{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:35px}.yard-page .race-shell .racetrack.dense .finish-line{display:none}.yard-page .race-shell .racetrack.dense .race-lane{height:clamp(42px,calc((100svh - 250px)/var(--race-rows)),100px)}.yard-page .race-shell .racetrack.dense .race-lane:after{content:'';position:absolute;right:31px;top:0;bottom:0;width:8px;background:repeating-conic-gradient(#84916c 0% 25%,#f8f7e8 0% 50%) 0/8px 8px;opacity:.6}}
@media(max-width:1000px){.courtyard{padding:0 18px 25px}.yard-host{height:245px;gap:35px}.yard-baby{width:219px;margin-left:163px}.yard-invite{width:128px;margin-bottom:21px}.yard-invite>img{width:128px;height:128px}.yard-items{column-gap:9px;row-gap:20px}.woven-mat{width:112px;height:73px}.woven-mat .item-art{width:67px;height:67px}.yard-queue{grid-template-columns:repeat(2,minmax(0,1fr));min-height:129px}.yard-queue:empty{min-height:129px}.cast-slot{height:126px}.yard-queue .character{width:79px}.yard-queue .char-head{width:72px;height:72px}.yard-queue .char-eyes{left:15px;top:20px;font-size:23px;letter-spacing:6px}.yard-queue .char-smile{left:26px;top:48px;width:15px}.yard-queue .char-body{width:56px;height:49px}.yard-queue .char-name{font-size:11px}.yard-object h2{font-size:14px}}
@media(max-width:600px){.courtyard{padding:0 10px 23px;background-size:auto 100%;background-position:center top}.yard-controls{right:10px;top:10px;gap:6px}.yard-controls a,.yard-controls button{width:28px;height:28px;font-size:16px}.yard-host{height:218px;gap:16px;padding-bottom:8px}.yard-baby{width:180px;margin-left:0}.yard-baby .baby-photo{padding:0}.yard-baby .baby-photo img{width:155px;height:155px;border-width:5px}.yard-invite{width:106px;margin-bottom:19px}.yard-invite>img{width:106px;height:106px;border-width:4px;border-radius:9px}.yard-invite .button{font-size:10px;padding:8px 3px;min-height:32px;margin-top:7px;border-radius:7px}.yard-items{column-gap:3px;row-gap:20px;padding-top:8px}.woven-mat{width:59px;height:45px;border-width:2px;box-shadow:0 4px 0 #ad925630}.woven-mat .item-art{width:49px;height:49px;transform:translateY(-7px)}.yard-object h2{font-size:12px;letter-spacing:-.4px;margin-top:8px;white-space:nowrap}.yard-queue{padding:12px 0 0;min-height:110px;grid-template-columns:repeat(2,minmax(0,1fr));row-gap:0}.yard-queue:empty{min-height:110px}.cast-slot{height:109px}.yard-queue .character{width:60px}.yard-queue .char-head{width:55px;height:55px;border-width:1.5px}.yard-queue .char-hair{height:20px;top:-10px}.yard-queue .char-eyes{font-size:18px;letter-spacing:4px;left:11px;top:14px}.yard-queue .char-smile{width:11px;left:20px;top:36px;height:6px}.yard-queue .char-body{width:44px;height:44px;margin-top:-5px}.yard-queue .char-name{font-size:9px;padding:3px 5px;margin-top:-2px}.cast-slot:after{bottom:16px;width:32px;height:6px}.yard-page .race-shell{padding:45px 8px 15px}.yard-page .race-shell .race-scene,.yard-page .race-shell .winner-scene{border-radius:12px}.yard-page .race-heading h2{font-size:21px}.yard-page .race-shell .runner .character{scale:1.1}}
@media(prefers-reduced-motion:reduce){.yard-queue .char-pose,.yard-queue .arm-right{animation:none!important}.yard-queue [data-activity="pushup"] .char-pose{transform:none}}

.yard-queue .cast-slot:nth-child(even){padding-top:18px;height:158px}@media(max-width:1000px){.yard-queue .cast-slot:nth-child(even){height:144px}}@media(max-width:600px){.yard-items{column-gap:2px}.yard-queue .cast-slot:nth-child(even){padding-top:20px;height:129px}.woven-mat{width:51px;height:42px}.woven-mat .item-art{width:46px;height:46px}.yard-object h2{font-size:11px}}
/* Keep the courtyard horizon behind the objects, and keep faces upright during exercise. */
.courtyard{background-size:100% 950px}
.yard-queue{grid-template-columns:repeat(var(--cast-cols),minmax(0,1fr))}
.yard-queue [data-activity="pushup"] .char-pose{animation:yard-pushup-readable 1.15s ease-in-out infinite}
.yard-queue [data-activity="pushup"] .char-head{rotate:-12deg}
.yard-queue [data-activity="pushup"] .char-body{transform:translate(8px,-6px) rotate(-80deg);transform-origin:50% 0}
@keyframes yard-pushup-readable{0%,100%{transform:translateY(13px)}50%{transform:translateY(3px)}}
@media(max-width:1000px){.yard-queue{grid-template-columns:repeat(min(var(--cast-cols),2),minmax(0,1fr))}}
@media(max-width:600px){.courtyard{padding-left:clamp(18px,6.7vw,24px);padding-right:clamp(18px,6.7vw,24px);background-size:auto 780px}.yard-queue .char-body{overflow:visible}.yard-items{row-gap:15px}}
@media(prefers-reduced-motion:reduce){.yard-queue [data-activity="pushup"] .char-pose{animation:none!important}}
.char-body .wave-arm{display:none}
.yard-queue [data-activity="wave"] .arm-right{display:none}
.yard-queue [data-activity="wave"] .wave-arm{display:block}
.yard-queue [data-activity="wave"] .wave-hand{transform-origin:64px 5px;animation:yard-visible-wave .42s ease-in-out infinite alternate}
@keyframes yard-visible-wave{from{transform:rotate(-15deg)}to{transform:rotate(28deg)}}
@media(prefers-reduced-motion:reduce){.yard-queue .wave-hand{animation:none!important}}
