/* Shared dimensions preserve the tennis interaction layout. */
.game-nav{position:absolute;inset:0 0 auto;height:5.84%;display:flex;align-items:center;justify-content:center;gap:8px;background:#edf0ed;z-index:2}
.game-nav a{padding:6px 15px;border-radius:20px;font-size:12px;text-decoration:none;color:#607968;white-space:nowrap}
.game-nav a[aria-current=page]{background:#075d46;color:#fff;box-shadow:0 2px 6px #003b2220}
.badminton-header{position:absolute;left:73px;top:113px;width:684px;height:235px;overflow:hidden;background:linear-gradient(105deg,#075c4c 28%,#063d38 57%,#0b6870);border-radius:13px}
.badminton-mark{position:absolute;left:20px;top:10px;font-size:49px;opacity:.25}
.featured-copy{position:absolute;left:250px;top:143px;width:230px;z-index:2;text-shadow:0 2px 8px #00362c}
.featured-copy strong{display:block;font-size:28px;white-space:nowrap}
.featured-copy small{display:block;margin-top:8px;font-size:16px;color:#b7ded0;white-space:nowrap}
.featured-number{position:absolute;left:260px;top:25px;font-size:101px;font-weight:900;font-style:italic;color:#ffec8a;line-height:1;text-shadow:0 3px 12px #003c32;z-index:2}
.featured-photos{position:absolute;left:376px;top:0;width:150px;height:146px;display:flex;overflow:hidden;border-radius:0 0 0 45px;opacity:.94;mask-image:linear-gradient(90deg,transparent,#000 22%)}
.featured-photos img{width:100%;height:100%;min-width:0;object-fit:cover;object-position:center 22%}
.badminton-header.is-pair .featured-photos{left:352px;width:174px}
.badminton-header.is-pair .featured-photos img{width:50%}
.badminton-header.is-pair .featured-copy{left:250px;top:145px;width:275px}
.badminton-header.is-pair .featured-copy strong{font-size:23px;white-space:normal;line-height:1.3}
.badminton-header.is-pair .featured-copy small{font-size:17px;margin-top:7px}
body[data-game=badminton] .phone{background:#edf0ed}
body[data-game=badminton] .dark-modal{background:linear-gradient(150deg,#021c20f7,#064c3cf7)}
body[data-game=badminton] .player-scroll{gap:20px;padding:18px;height:746px;grid-template-columns:repeat(2,minmax(0,1fr))}
.badminton-player{position:relative;height:292px;overflow:hidden;border:1px solid #648f79;border-radius:12px;background:#082e32}
.player-photos{display:flex;width:100%;height:100%;overflow:hidden}
.player-photos img{width:100%;height:100%;min-width:0;object-fit:cover;object-position:center 20%}
.badminton-player.is-pair .player-photos img{width:50%}
.badminton-player.is-pair .player-copy strong{font-size:21px}
.badminton-player.is-pair .player-copy small{font-size:12px;line-height:1.4;white-space:normal}
.player-discipline{position:absolute;right:10px;top:12px;background:#002d27db;color:#e6efc1;padding:5px 9px;font-size:18px;border:1px solid #a9c28b;border-radius:7px}
.player-number{position:absolute;left:10px;top:10px;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:linear-gradient(#f3fca3,#bacc3b);color:#123c38;border:2px solid #eff7bc;font-size:27px;font-weight:bold;box-shadow:0 3px 9px #0006}
.player-copy{position:absolute;bottom:0;left:0;right:0;padding:36px 12px 12px;background:linear-gradient(transparent,#001e22 45%)}
.player-copy strong{display:block;font-size:24px;line-height:1.4}
.player-copy small{display:block;font-size:14px;color:#b0c8c7;margin:3px 0 8px}
.player-copy>span{display:block;border:1px solid #5e8c7e;border-radius:5px;text-align:center;font-size:20px;padding:4px;color:#ecf0b1;letter-spacing:7px}
.photo-credit{position:absolute;bottom:70px;left:0;right:0;text-align:center;padding:10px;color:#b4d5c8;font-size:18px;text-decoration:underline}
body[data-game=badminton] .result-photo.generic{background:radial-gradient(ellipse at 70% 30%,#2a8673,#052f38 68%)}
body[data-game=badminton] .winner-photos{position:absolute;right:0;top:0;width:270px;height:259px;display:flex;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 22%)}
body[data-game=badminton] .result-photo.generic .winner-photos img{position:static;width:100%;height:100%;min-width:0;object-fit:cover;object-position:center 20%;transform:none}
body[data-game=badminton] .result-photo.generic.is-pair .winner-photos{width:300px;mask-image:linear-gradient(90deg,transparent,#000 10%)}
body[data-game=badminton] .result-photo.generic.is-pair .winner-photos img{width:50%}
body[data-game=badminton] .result-photo.generic .winner-name{font-size:33px;width:295px;line-height:1.4;word-break:normal;top:28px}
body[data-game=badminton] .result-photo.generic .winner-name small{display:block;color:#b9ded1;font-size:21px;font-style:normal;margin-top:10px}
body[data-game=badminton] .result-photo.generic.is-pair .winner-name{font-size:26px;width:267px;line-height:1.5;left:20px;top:22px}
body[data-game=badminton] .tennis-logo{font-style:normal;font-size:34px;line-height:49px;transform:none;background:#e9f4d6}
/* Action cutouts and card treatment follow the original tennis player cards. */
body[data-game=badminton] .dark-modal{background:linear-gradient(#000c,#00121be8),url('assets/stadium.jpg') center/cover}
body[data-game=badminton] .player-scroll{gap:42px 24px;padding:20px 18px 6px}
.badminton-player.has-action-art{height:293px;border:0;border-radius:0;background:radial-gradient(ellipse at 65% 50%,#0c202b,#02090d 76%)}
.has-action-art .player-photos{position:absolute;inset:29px 0 38px;height:auto}
.has-action-art .player-photos img,.badminton-player.has-action-art.is-pair .player-photos img{width:100%;height:100%;object-fit:cover;object-position:50% 8%}
.has-action-art .player-number{left:10px;top:108px;width:68px;height:68px;font-size:51px;font-style:italic;background:radial-gradient(circle at 30% 22%,#f5ff58,#bdcf13 62%,#7d9900);border:0;color:#2385b7;-webkit-text-stroke:1.5px #fff;box-shadow:0 3px 5px #0005;overflow:hidden;z-index:2}
.has-action-art .player-number:before{content:"";position:absolute;left:-30px;top:-32px;width:100px;height:80px;border:2px solid #ffffb9;border-radius:50%;transform:rotate(-30deg);pointer-events:none}
.has-action-art .player-number:after{content:"";position:absolute;left:12px;top:43px;width:100px;height:80px;border:2px solid #ffffb9;border-radius:50%;transform:rotate(-30deg);pointer-events:none}
.has-action-art .player-discipline,.has-action-art .player-copy small{display:none}
.has-action-art .player-copy{position:absolute;inset:0;padding:0;background:none;pointer-events:none}
.has-action-art .player-copy strong,.badminton-player.has-action-art.is-pair .player-copy strong{position:absolute;left:3px;right:3px;top:3px;display:block;font-size:25px;font-style:italic;font-weight:900;line-height:31px;color:#fff;text-shadow:0 2px 4px #000,1px 0 #fff;white-space:nowrap;letter-spacing:-.5px;z-index:3}
.badminton-player.has-action-art.is-pair .player-copy strong{font-size:22px}
.has-action-art .player-copy>span{position:absolute;bottom:0;left:0;right:0;height:40px;display:flex;align-items:center;padding:0;border:2px solid #c4dae8;border-radius:7px;background:linear-gradient(#36596d,#001528 60%,#000c19);color:#fff;font-size:25px;letter-spacing:0;z-index:3}
.has-action-art.is-female .player-copy>span{background:linear-gradient(#773639,#290005 60%,#130003)}
.has-action-art .player-copy>span>b{flex:1;font-weight:400;text-align:center;line-height:31px}
.has-action-art .player-copy>span>b+b{border-left:2px solid #000b}
.featured-photos{left:345px;top:0;width:190px;height:235px;border-radius:0;opacity:1;mask-image:none}
.featured-photos img.action-art{width:100%;height:100%;object-fit:contain;object-position:center bottom}
.badminton-header.is-pair .featured-photos{left:300px;width:245px}
.badminton-header.is-pair .featured-photos img.action-art{width:100%}
body[data-game=badminton] .result-photo.generic{background:radial-gradient(ellipse at 70% 45%,#183b49,#02121c 73%)}
body[data-game=badminton] .winner-photos,body[data-game=badminton] .result-photo.generic.is-pair .winner-photos{width:350px;mask-image:none}
body[data-game=badminton] .result-photo.generic .winner-photos img.action-art,body[data-game=badminton] .result-photo.generic.is-pair .winner-photos img.action-art{width:100%;height:100%;object-fit:contain;object-position:right bottom}
@media(max-width:360px){.game-nav a{font-size:11px;padding:5px 12px}}
