:root{
  --ch-bg:#080c15;--ch-panel:#101725;--ch-panel-2:#151e2d;--ch-line:rgba(220,182,91,.18);
  --ch-gold:#e2bb61;--ch-gold-2:#ffe09a;--ch-ink:#f5eddd;--ch-muted:#9da7b5;
  --ch-light:#d7af54;--ch-dark:#601c2d;--ch-accent:#f4cf73;--ch-radius:26px;
}
*{box-sizing:border-box}
html:has(.bs-shatranj-page){background:var(--ch-bg);scroll-behavior:smooth}
body.bs-shatranj-page{margin:0;min-height:100vh;background:var(--ch-bg);color:var(--ch-ink);font-family:var(--bs-font,'Vazirmatn',Tahoma,sans-serif);overflow-x:hidden;direction:rtl}
.bs-shatranj-page button,.bs-shatranj-page input{font:inherit}
.bs-shatranj-page button{color:inherit}
.bs-shatranj-page svg{display:block}
.bs-chess-atmosphere{position:fixed;inset:0;pointer-events:none;overflow:hidden;background:radial-gradient(circle at 80% -10%,rgba(193,137,40,.14),transparent 35%),radial-gradient(circle at -10% 45%,rgba(21,112,120,.14),transparent 32%),linear-gradient(#080c15,#070a11);z-index:0}
.bs-chess-atmosphere:before{content:"";position:absolute;inset:0;opacity:.055;background-image:linear-gradient(30deg,#d9b75d 12%,transparent 12.5%,transparent 87%,#d9b75d 87.5%,#d9b75d),linear-gradient(150deg,#d9b75d 12%,transparent 12.5%,transparent 87%,#d9b75d 87.5%,#d9b75d);background-size:52px 90px}
.bs-chess-atmosphere i{position:absolute;border-radius:50%;filter:blur(90px);opacity:.2}.bs-chess-atmosphere i:nth-child(1){width:340px;height:340px;background:#984629;top:18%;right:-160px}.bs-chess-atmosphere i:nth-child(2){width:300px;height:300px;background:#147583;bottom:20%;left:-160px}.bs-chess-atmosphere i:nth-child(3){width:180px;height:180px;background:#9f7430;top:62%;right:45%}
.bs-chess-shell{position:relative;z-index:1;max-width:1440px;min-height:100vh;margin:auto;padding:0 38px 70px;color:var(--ch-ink);font-family:var(--bs-font,'Vazirmatn',Tahoma,sans-serif)}
.bs-chess-topbar{height:92px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;border-bottom:1px solid var(--ch-line)}
.bs-chess-back,.bs-chess-brand,.bs-chess-hud{display:flex;align-items:center}.bs-chess-back{justify-self:start;gap:9px;color:#c7cbd2;text-decoration:none;font-size:14px}.bs-chess-back svg{width:23px;fill:none;stroke:currentColor;stroke-width:1.8}.bs-chess-back:hover{color:var(--ch-gold-2)}
.bs-chess-brand{gap:12px;border:0;background:transparent;cursor:pointer}.bs-chess-brand-seal{width:50px;height:50px;padding:7px;border:1px solid rgba(226,187,97,.38);border-radius:50%;background:radial-gradient(circle,#242033,#0b101b)}.bs-chess-brand-seal svg{width:100%;height:100%;fill:none;stroke:var(--ch-gold);stroke-width:1.4}.bs-chess-brand span:last-child{display:flex;flex-direction:column;text-align:right}.bs-chess-brand b{font-size:17px}.bs-chess-brand small{color:#929ba8;font-size:10px;letter-spacing:.2px}
.bs-chess-hud{justify-self:end;direction:ltr;gap:8px}.bs-chess-hud>span,.bs-chess-hud>button{height:40px;min-width:44px;display:flex;align-items:center;justify-content:center;gap:7px;padding:0 12px;border:1px solid rgba(255,255,255,.08);border-radius:13px;background:rgba(255,255,255,.035)}.bs-chess-hud i{color:var(--ch-gold);font-style:normal}.bs-chess-hud b{font-size:13px}.bs-chess-hud button{padding:10px;cursor:pointer}.bs-chess-hud button svg{width:20px;height:20px;fill:none;stroke:#cbd2dc;stroke-width:1.8}.bs-chess-hud button:not(.is-on){opacity:.45}

/* Hero */
.bs-chess-hero{min-height:600px;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:40px;border-bottom:1px solid var(--ch-line);position:relative;overflow:hidden}
.bs-chess-hero:after{content:"";position:absolute;right:0;left:0;bottom:-1px;height:1px;background:linear-gradient(90deg,transparent,var(--ch-gold),transparent);opacity:.35}
.bs-chess-hero-copy{position:relative;z-index:2;padding:70px 3vw 70px 0}.bs-chess-eyebrow{display:flex;align-items:center;gap:10px;color:var(--ch-gold);font-size:12px;letter-spacing:.7px}.bs-chess-eyebrow i{width:31px;height:1px;background:var(--ch-gold);position:relative}.bs-chess-eyebrow i:after{content:"";position:absolute;width:5px;height:5px;background:var(--ch-gold);transform:rotate(45deg);top:-2px;left:-1px}
.bs-chess-hero h1{font-size:clamp(38px,4.25vw,68px);line-height:1.42;margin:23px 0 20px;letter-spacing:-2px;color:var(--ch-ink)}.bs-chess-hero h1 em{font-style:normal;color:var(--ch-gold-2);text-shadow:0 0 35px rgba(231,190,98,.13)}.bs-chess-hero-copy>p{color:#abb2bd;max-width:650px;font-size:16px;line-height:2.05;margin:0}
.bs-chess-hero-actions{display:flex;gap:12px;margin-top:31px}.bs-chess-primary,.bs-chess-ghost{height:56px;border-radius:15px;padding:0 24px;border:1px solid transparent;display:flex;align-items:center;gap:30px;cursor:pointer;transition:.25s}.bs-chess-primary{background:linear-gradient(135deg,#d9ad50,#9b7026);color:#171006;box-shadow:0 12px 32px rgba(190,137,39,.16);font-weight:900}.bs-chess-primary:hover{transform:translateY(-2px);box-shadow:0 16px 38px rgba(190,137,39,.26)}.bs-chess-primary i{font-style:normal;font-size:23px}.bs-chess-ghost{background:rgba(255,255,255,.035);border-color:rgba(255,255,255,.11);color:#e0e2e7}.bs-chess-ghost:hover{border-color:var(--ch-gold);color:var(--ch-gold-2)}
.bs-chess-trust{display:flex;gap:24px;margin-top:29px;color:#7f8997;font-size:11px}.bs-chess-trust span:before{content:"✓";color:#4eb5a4;margin-left:6px}
.bs-chess-hero-art{height:560px;position:relative;display:flex;align-items:flex-end;justify-content:center;perspective:900px}.bs-chess-sun{position:absolute;width:310px;height:310px;border:1px solid rgba(226,187,97,.25);border-radius:50%;top:55px;right:50%;transform:translateX(50%);box-shadow:0 0 80px rgba(218,158,50,.08),inset 0 0 70px rgba(203,135,35,.05)}.bs-chess-sun:before,.bs-chess-sun:after{content:"";position:absolute;inset:15px;border:1px dashed rgba(226,187,97,.18);border-radius:50%}.bs-chess-sun:after{inset:52px;border-style:solid}.bs-chess-sun i{position:absolute;inset:90px;background:radial-gradient(circle,#e4b956 0 4%,transparent 5% 25%,rgba(226,187,97,.16) 26% 28%,transparent 29%);border-radius:50%}
.bs-chess-monument{position:absolute;bottom:73px;width:80%;height:400px;display:flex;align-items:flex-end;justify-content:center;gap:4px;filter:drop-shadow(0 28px 25px rgba(0,0,0,.6))}.piece-preview{display:block;width:48%;height:100%}.piece-preview svg{width:100%;height:100%;overflow:visible}.piece-preview.queen{height:78%;margin-right:-55px;opacity:.78}.bs-chess-monument .bs-piece-svg{filter:drop-shadow(0 0 18px rgba(237,197,103,.14))}
.bs-chess-art-board{height:165px;width:520px;transform:rotateX(67deg) rotateZ(-5deg);transform-origin:bottom;display:grid;grid-template-columns:repeat(3,1fr);position:absolute;bottom:10px;box-shadow:0 40px 90px #000}.bs-chess-art-board i:nth-child(odd){background:#b68e47}.bs-chess-art-board i:nth-child(even){background:#3c1622}.bs-chess-art-label{position:absolute;left:6%;top:38%;writing-mode:vertical-rl;color:rgba(225,188,98,.22);font-family:serif;letter-spacing:8px}

/* Profile */
.bs-chess-profile-strip{min-height:116px;margin:-1px 2.5% 66px;display:grid;grid-template-columns:2fr repeat(3,1fr) auto;border:1px solid var(--ch-line);border-top:0;border-radius:0 0 24px 24px;background:linear-gradient(180deg,rgba(20,28,42,.94),rgba(11,16,26,.94));box-shadow:0 24px 60px rgba(0,0,0,.25);position:relative;z-index:3}
.bs-chess-profile-id{display:flex;align-items:center;gap:15px;padding:20px 28px;border-left:1px solid var(--ch-line)}.bs-chess-profile-id>img,.bs-chess-profile-id>span{width:64px;height:64px;border-radius:20px;object-fit:cover;background:#1c2432;border:1px solid rgba(226,187,97,.35);padding:5px}.bs-chess-profile-id>span svg{width:100%;height:100%;fill:none;stroke:var(--ch-gold);stroke-width:1}.bs-chess-profile-id div{display:flex;flex-direction:column;gap:2px}.bs-chess-profile-id small,.bs-chess-stat small{font-size:10px;color:#7e8997}.bs-chess-profile-id b{font-size:16px}.bs-chess-profile-id em{font-style:normal;font-size:10px;color:var(--league,var(--ch-gold))}
.bs-chess-stat{padding:23px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-left:1px solid var(--ch-line)}.bs-chess-stat b{font:800 23px/1.2 var(--bs-font,Tahoma);color:#f1dbab}.bs-chess-stat i{font:8px/1 sans-serif;color:#596576;letter-spacing:1.5px}.bs-chess-profile-strip>a{display:flex;align-items:center;padding:0 24px;color:var(--ch-gold-2);font-size:12px;text-decoration:none}

/* sections */
.bs-chess-warhall,.bs-chess-themes-section,.bs-chess-court{max-width:1260px;margin:0 auto 86px}.bs-chess-section-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:27px}.bs-chess-section-head>div>span{font-size:11px;color:var(--ch-gold);letter-spacing:.5px}.bs-chess-section-head h2{font-size:29px;margin:4px 0}.bs-chess-section-head p{margin:0;color:#838e9d;font-size:13px}.bs-chess-section-head>i{font:52px/1 Georgia;color:rgba(226,187,97,.1);font-style:normal}
.bs-chess-modes{display:grid;grid-template-columns:1fr 1fr;gap:20px}.bs-chess-mode{min-height:390px;padding:32px;border:1px solid rgba(255,255,255,.08);border-radius:var(--ch-radius);background:linear-gradient(145deg,rgba(24,34,50,.96),rgba(10,15,24,.97));position:relative;overflow:hidden;transition:.25s}.bs-chess-mode:hover{border-color:rgba(226,187,97,.3);transform:translateY(-3px)}.bs-chess-mode:before{content:"";position:absolute;width:260px;height:260px;border:1px solid rgba(255,255,255,.04);border-radius:50%;left:-90px;top:-100px}.bs-chess-mode.is-online{background:linear-gradient(145deg,rgba(19,43,49,.94),rgba(9,16,24,.98))}.bs-chess-mode-badge,.bs-chess-live{position:absolute;top:25px;left:27px;border-radius:99px;padding:7px 11px;font-size:9px}.bs-chess-mode-badge{background:rgba(226,187,97,.13);color:var(--ch-gold-2);border:1px solid rgba(226,187,97,.22)}.bs-chess-live{background:rgba(42,194,157,.1);color:#6ae0bf;border:1px solid rgba(42,194,157,.18)}.bs-chess-live i{display:inline-block;width:6px;height:6px;background:#45d6a9;border-radius:50%;margin-left:4px;box-shadow:0 0 9px #45d6a9}
.bs-chess-mode-icon{width:70px;height:70px;border:1px solid rgba(226,187,97,.25);background:rgba(226,187,97,.06);border-radius:22px;display:grid;place-items:center;position:relative;margin-bottom:22px}.bs-chess-mode-icon>i{font:42px/1 Georgia;color:var(--ch-gold-2);font-style:normal;position:relative;z-index:2}.bs-chess-mode-icon span{position:absolute;inset:8px;border:1px dashed rgba(226,187,97,.17);border-radius:17px}.bs-chess-mode>small{color:var(--ch-gold);font-size:10px}.bs-chess-mode h3{font-size:30px;margin:1px 0 8px}.bs-chess-mode>p{font-size:12px;line-height:1.9;color:#8f99a6;max-width:500px;margin:0 0 20px}
.bs-chess-difficulties{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.bs-chess-difficulties button{background:#111a28;border:1px solid rgba(255,255,255,.07);border-radius:12px;padding:9px 4px;cursor:pointer;font-size:11px}.bs-chess-difficulties button small{display:block;color:#697587;font-size:8px;margin-top:2px}.bs-chess-difficulties button.is-active{color:#171006;background:linear-gradient(135deg,#f0cf7c,#b4812e);border-color:transparent;font-weight:900}.bs-chess-difficulties button.is-active small{color:#594016}
.bs-chess-mode-cta{width:100%;height:49px;margin-top:16px;border:0;border-radius:13px;background:linear-gradient(135deg,#dbae52,#9d7128);color:#161006!important;font-weight:900;cursor:pointer;display:flex;justify-content:center;align-items:center;gap:18px}.bs-chess-mode-cta:hover{filter:brightness(1.1)}
.bs-chess-online-actions{display:grid;grid-template-columns:.85fr 1.15fr;gap:8px}.bs-chess-online-actions>button,.bs-chess-online-actions div{height:49px}.bs-chess-online-actions button{border:1px solid rgba(86,201,181,.25);background:rgba(43,156,146,.11);border-radius:12px;color:#a8eee2;cursor:pointer;font-size:11px}.bs-chess-online-actions button:disabled{opacity:.38;cursor:not-allowed}.bs-chess-online-actions div{display:flex;direction:ltr}.bs-chess-online-actions input{width:100%;min-width:0;border:1px solid rgba(255,255,255,.09);border-left:0;background:#0c1520;color:#fff;padding:0 11px;border-radius:0 12px 12px 0;text-align:center;text-transform:uppercase;letter-spacing:2px;outline:0}.bs-chess-online-actions div button{border-radius:12px 0 0 12px;width:64px}.bs-chess-login-note{display:block;color:#6bd0bf;font-size:10px;margin-top:13px;text-decoration:none}
.bs-chess-online-actions.is-shared{grid-template-columns:minmax(0,1fr) auto;align-items:end}.bs-chess-online-actions.is-shared label{display:flex;min-width:0;flex-direction:column;gap:5px}.bs-chess-online-actions.is-shared label small{color:#6dbdb2;font-size:8px}.bs-chess-online-actions.is-shared input{height:49px;border:1px solid rgba(86,201,181,.18);border-radius:12px;direction:ltr;font-size:16px;font-weight:900;letter-spacing:5px}.bs-chess-online-actions.is-shared>button{height:49px;padding:0 18px;background:linear-gradient(135deg,rgba(43,156,146,.24),rgba(31,112,109,.14));font-weight:900;white-space:nowrap}

/* theme cards */
.bs-chess-themes{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.bs-chess-theme{min-width:0;height:150px;padding:13px;border:1px solid rgba(255,255,255,.07);border-radius:19px;background:rgba(17,24,36,.9);display:grid;grid-template-columns:86px 1fr;align-items:center;text-align:right;position:relative;cursor:pointer;transition:.2s}.bs-chess-theme:hover,.bs-chess-theme.is-active{border-color:var(--ta);background:linear-gradient(135deg,color-mix(in srgb,var(--td) 22%,#111824),#0e1420);transform:translateY(-2px)}.bs-chess-theme-board{width:76px;height:76px;display:grid;grid-template-columns:1fr 1fr;transform:rotate(-7deg);box-shadow:0 10px 20px rgba(0,0,0,.35);position:relative;border:3px solid color-mix(in srgb,var(--ta) 65%,#222)}.bs-chess-theme-board i:nth-child(1),.bs-chess-theme-board i:nth-child(4){background:var(--tl)}.bs-chess-theme-board i:nth-child(2),.bs-chess-theme-board i:nth-child(3){background:var(--td)}.bs-chess-theme-board b{position:absolute;inset:0;display:grid;place-items:center;color:var(--ta);font:42px/1 Georgia;text-shadow:0 3px 8px #000}.bs-chess-theme>span:nth-child(2){display:flex;flex-direction:column;min-width:0}.bs-chess-theme small{color:#687486;font-size:8px}.bs-chess-theme strong{font-size:13px;margin:3px 0}.bs-chess-theme em{font-style:normal;color:#8994a3;font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bs-chess-theme-check{position:absolute;left:10px;top:10px;width:20px;height:20px;border-radius:50%;background:var(--ta);color:#17130b;font:11px/20px sans-serif;text-align:center;opacity:0}.bs-chess-theme.is-active .bs-chess-theme-check{opacity:1}

/* command court */
.bs-chess-court-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.bs-chess-court-grid>button{min-height:175px;padding:22px;border:1px solid rgba(255,255,255,.07);border-radius:21px;background:linear-gradient(145deg,rgba(22,31,46,.95),rgba(11,16,25,.96));text-align:right;cursor:pointer;position:relative;overflow:hidden;transition:.2s}.bs-chess-court-grid>button:hover{border-color:rgba(226,187,97,.3);transform:translateY(-3px)}.bs-chess-court-grid>button>i{width:48px;height:48px;border:1px solid rgba(226,187,97,.23);border-radius:15px;display:grid;place-items:center;color:var(--ch-gold);font:25px/1 Georgia;font-style:normal;margin-bottom:18px}.bs-chess-court-grid span{display:flex;flex-direction:column}.bs-chess-court-grid small{font-size:8px;color:#6d7888}.bs-chess-court-grid b{font-size:15px;margin:3px 0}.bs-chess-court-grid em{font-size:9px;color:#8d97a5;font-style:normal}.bs-chess-court-grid>button>strong{position:absolute;left:20px;bottom:22px;color:var(--ch-gold);font-weight:400}

/* game */
.bs-chess-game{padding-top:18px}.bs-chess-game[hidden],.bs-chess-menu[hidden]{display:none!important}.bs-chess-gamebar{height:66px;border:1px solid var(--ch-line);background:rgba(13,19,30,.94);border-radius:18px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 15px;margin-bottom:14px}.bs-chess-gamebar>button{justify-self:start;border:0;background:transparent;display:flex;gap:7px;align-items:center;cursor:pointer;color:#b8c0ca}.bs-chess-gamebar>button svg{width:20px;fill:none;stroke:currentColor;stroke-width:2}.bs-chess-gamebar>div:nth-child(2){text-align:center;display:flex;flex-direction:column}.bs-chess-gamebar small{font-size:8px;color:#7f8b9c}.bs-chess-gamebar b{font-size:14px}.bs-chess-room-code{font-size:10px;color:#aab3c0;margin-right:14px}.bs-chess-room-code b{color:var(--ch-gold-2);letter-spacing:2px}.bs-chess-room-code button{border:0;background:transparent;color:#55c9b1;font-size:9px;cursor:pointer}.bs-chess-game-tools{justify-self:end;display:flex!important;flex-direction:row!important;gap:5px}.bs-chess-game-tools button{width:39px;height:39px;border:1px solid rgba(255,255,255,.08);background:#151e2c;border-radius:11px;cursor:pointer}
.bs-chess-arena{display:grid;grid-template-columns:minmax(600px,900px) minmax(280px,350px);justify-content:center;gap:16px;direction:ltr}.bs-chess-table,.bs-chess-sidepanel{direction:rtl}.bs-chess-table{min-width:0;display:flex;flex-direction:column;align-items:center}.bs-chess-player{width:min(100%,820px);height:68px;display:grid;grid-template-columns:auto auto 1fr auto;align-items:center;gap:11px;padding:7px 10px}.bs-chess-player .avatar{width:48px;height:48px;display:grid;place-items:center;border-radius:15px;background:#172131;border:1px solid rgba(255,255,255,.1);overflow:hidden}.bs-chess-player .avatar img{width:100%;height:100%;object-fit:cover}.bs-chess-player .avatar i{font:29px/1 Georgia;font-style:normal;color:var(--ch-gold)}.bs-chess-player>div{display:flex;flex-direction:column}.bs-chess-player small{font-size:8px;color:#6c7888}.bs-chess-player b{font-size:12px}.bs-chess-player em{font-size:8px;font-style:normal;color:#8792a0}.bs-chess-player time{min-width:86px;text-align:center;border:1px solid rgba(255,255,255,.09);border-radius:12px;background:#121a27;padding:8px;font:700 22px/1 sans-serif;direction:ltr}.bs-chess-player.is-turn time{border-color:var(--ch-accent);color:var(--ch-accent);box-shadow:0 0 18px color-mix(in srgb,var(--ch-accent) 16%,transparent)}.bs-chess-player .captured{align-self:center;color:#8992a0;font:17px/1 Georgia;letter-spacing:-5px;direction:ltr}
.bs-chess-board-frame{width:min(100%,820px);aspect-ratio:1;position:relative;padding:25px;background:linear-gradient(135deg,color-mix(in srgb,var(--ch-accent) 28%,#111),#080b12 55%,color-mix(in srgb,var(--ch-accent) 19%,#111));border:1px solid color-mix(in srgb,var(--ch-accent) 48%,transparent);box-shadow:0 30px 70px #000,0 0 0 5px rgba(0,0,0,.28),inset 0 0 45px #000;border-radius:12px}.bs-chess-board-frame:before{content:"";position:absolute;inset:8px;border:1px solid color-mix(in srgb,var(--ch-accent) 28%,transparent);pointer-events:none}.bs-chess-frame-mark{position:absolute;color:color-mix(in srgb,var(--ch-accent) 50%,transparent);font:7px/1 serif;letter-spacing:5px;z-index:3}.bs-chess-frame-mark.top{top:8px;right:50%;transform:translateX(50%)}.bs-chess-frame-mark.bottom{bottom:8px;right:50%;transform:translateX(50%);letter-spacing:2px}
.bs-chess-board{width:100%;height:100%;display:grid;grid-template-columns:repeat(8,1fr);grid-template-rows:repeat(8,1fr);direction:ltr;overflow:hidden;box-shadow:inset 0 0 20px rgba(0,0,0,.35);touch-action:manipulation;user-select:none}.bs-chess-square{position:relative;border:0;padding:0;background:var(--ch-light);display:grid;place-items:center;cursor:pointer}.bs-chess-square.is-dark{background:var(--ch-dark)}.bs-chess-square:before{content:"";position:absolute;inset:0;opacity:.09;background:radial-gradient(circle at 30% 25%,#fff,transparent 45%),linear-gradient(135deg,transparent 48%,#000 49% 51%,transparent 52%)}.bs-chess-square.is-selected{box-shadow:inset 0 0 0 5px var(--ch-accent),inset 0 0 25px color-mix(in srgb,var(--ch-accent) 45%,transparent);z-index:2}.bs-chess-square.is-last{box-shadow:inset 0 0 0 999px rgba(255,218,84,.19)}.bs-chess-square.is-check{box-shadow:inset 0 0 0 999px rgba(224,50,65,.45);animation:chCheck 1s infinite}.bs-chess-square.is-hint{box-shadow:inset 0 0 0 5px #57d7bf}.bs-chess-square.can-move:after{content:"";position:absolute;width:22%;height:22%;border-radius:50%;background:color-mix(in srgb,var(--ch-accent) 75%,#18202d);box-shadow:0 0 0 4px rgba(0,0,0,.12);z-index:5}.bs-chess-square.can-capture:after{content:"";position:absolute;inset:7%;border:4px solid color-mix(in srgb,var(--ch-accent) 82%,#fff);border-radius:50%;z-index:5}.bs-chess-coord{position:absolute;font:600 8px/1 sans-serif;z-index:8;opacity:.55}.bs-chess-coord.rank{top:4px;right:4px}.bs-chess-coord.file{bottom:4px;left:4px}.bs-chess-piece{width:89%;height:89%;position:relative;z-index:4;transition:transform .13s ease;filter:drop-shadow(0 6px 4px rgba(0,0,0,.42))}.bs-chess-square:hover .bs-chess-piece{transform:translateY(-3px)}.bs-piece-svg{width:100%;height:100%;overflow:visible}.bs-piece-svg .body{stroke-width:2.1;stroke-linejoin:round}.bs-piece-svg.white .body{fill:url(#ivory);stroke:#704a18}.bs-piece-svg.black .body{fill:url(#lapis);stroke:#e2b957}.bs-piece-svg .detail{fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.bs-piece-svg.white .detail{stroke:#875f25}.bs-piece-svg.black .detail{stroke:#f2cf78}.bs-piece-svg .gem{fill:#b63536;stroke:#f1c86f;stroke-width:1}.bs-piece-svg.black .gem{fill:#30a7a4}.bs-piece-svg .shadow{fill:rgba(0,0,0,.26)}
@keyframes chCheck{50%{filter:brightness(1.2)}}
.bs-chess-mobile-status{display:none}.bs-chess-sidepanel{border:1px solid var(--ch-line);border-radius:21px;background:linear-gradient(160deg,rgba(20,29,43,.96),rgba(9,13,21,.97));min-height:650px;padding:14px;display:flex;flex-direction:column}.bs-chess-turn-card{min-height:82px;padding:13px;display:flex;align-items:center;gap:12px;background:linear-gradient(135deg,color-mix(in srgb,var(--ch-accent) 13%,#17202e),#101722);border:1px solid color-mix(in srgb,var(--ch-accent) 20%,transparent);border-radius:16px}.bs-chess-turn-card>span{width:48px;height:48px;border-radius:14px;background:rgba(0,0,0,.25);display:grid;place-items:center;color:var(--ch-accent);font:29px/1 Georgia}.bs-chess-turn-card div{display:flex;flex-direction:column}.bs-chess-turn-card small{color:#788494;font-size:8px}.bs-chess-turn-card b{font-size:12px;margin:2px 0}.bs-chess-turn-card em{font-size:8px;color:#a8b0bb;font-style:normal}.bs-chess-tabs{display:grid;grid-template-columns:1fr 1fr;margin-top:13px;border-bottom:1px solid rgba(255,255,255,.08)}.bs-chess-tabs button{height:42px;border:0;background:transparent;color:#778292;font-size:10px;cursor:pointer;position:relative}.bs-chess-tabs button.is-active{color:var(--ch-gold-2)}.bs-chess-tabs button.is-active:after{content:"";position:absolute;bottom:-1px;right:18%;left:18%;height:2px;background:var(--ch-accent)}.bs-chess-history{height:325px;overflow:auto;padding:10px 3px;direction:ltr;scrollbar-width:thin}.bs-chess-history p{direction:rtl;color:#758091;font-size:10px;text-align:center;margin-top:40px}.bs-chess-history ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:4px}.bs-chess-history li{height:31px;display:flex;align-items:center;gap:6px;padding:0 8px;background:rgba(255,255,255,.025);border-radius:7px;font:10px/1 sans-serif;color:#c1c6cf}.bs-chess-history li b{color:#586475;font-weight:400}.bs-chess-info{height:325px;padding:15px}.bs-chess-info p{display:flex;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.06);padding:11px 0;font-size:10px}.bs-chess-info span{color:#7c8796}.bs-chess-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:auto}.bs-chess-actions button{height:48px;border:1px solid rgba(255,255,255,.07);border-radius:11px;background:#111a27;display:flex;justify-content:center;align-items:center;gap:6px;color:#aeb6c2;cursor:pointer;font-size:9px}.bs-chess-actions button:hover{border-color:var(--ch-accent);color:#fff}.bs-chess-actions button.is-danger:hover{border-color:#b84a56;color:#ff9aa4}.bs-chess-actions i{font-style:normal;font-size:17px;color:var(--ch-gold)}.bs-chess-legend{display:flex;justify-content:center;gap:13px;margin-top:12px;font-size:8px;color:#667283}.bs-chess-legend i{display:inline-block;width:8px;height:8px;border-radius:2px;margin-left:3px}.bs-chess-legend i.light{background:#eee0bc}.bs-chess-legend i.dark{background:#234b73;border:1px solid #d3ac55}

/* themes */
.bs-chess-shell[data-theme="kaviani"]{--ch-light:#d7af54;--ch-dark:#601c2d;--ch-accent:#f4cf73}
.bs-chess-shell[data-theme="achaemenid"]{--ch-light:#ddd2ad;--ch-dark:#183f55;--ch-accent:#d9a928}
.bs-chess-shell[data-theme="persepolis"]{--ch-light:#c9b88c;--ch-dark:#315a54;--ch-accent:#e4c269}
.bs-chess-shell[data-theme="median"]{--ch-light:#cbb894;--ch-dark:#3b435f;--ch-accent:#c9974f}
.bs-chess-shell[data-theme="parthian"]{--ch-light:#b9d7cf;--ch-dark:#23636a;--ch-accent:#d69f52}
.bs-chess-shell[data-theme="sasanian"]{--ch-light:#d8c8b9;--ch-dark:#672f4f;--ch-accent:#e2b95c}
.bs-chess-shell[data-theme="turquoise"]{--ch-light:#e7d7ad;--ch-dark:#167982;--ch-accent:#f0bf59}
.bs-chess-shell[data-theme="royal-night"]{--ch-light:#776d9d;--ch-dark:#171a35;--ch-accent:#f4ca62}

/* modal */
.bs-chess-modal[hidden]{display:none}.bs-chess-modal{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;padding:18px}.bs-chess-modal-backdrop{position:absolute;inset:0;background:rgba(2,5,10,.84);backdrop-filter:blur(12px)}.bs-chess-modal>section{position:relative;width:min(620px,100%);max-height:min(760px,90vh);overflow:auto;padding:30px;border:1px solid rgba(226,187,97,.23);border-radius:26px;background:linear-gradient(145deg,#172131,#090e17);box-shadow:0 40px 100px #000}.bs-chess-modal-close{position:absolute;left:16px;top:14px;width:36px;height:36px;border:1px solid rgba(255,255,255,.09);border-radius:11px;background:#111a27;cursor:pointer;font-size:22px}.bs-chess-modal-hero{text-align:center;padding:10px}.bs-chess-modal-hero>i{width:78px;height:78px;border:1px solid rgba(226,187,97,.25);border-radius:25px;margin:auto;display:grid;place-items:center;font:42px/1 Georgia;color:var(--ch-gold);font-style:normal;background:rgba(226,187,97,.07)}.bs-chess-modal-hero h2{font-size:26px;margin:16px 0 5px}.bs-chess-modal-hero p{font-size:11px;color:#929cab;line-height:1.9}.bs-chess-result-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:20px 0}.bs-chess-result-stats span{padding:14px;border:1px solid rgba(255,255,255,.07);border-radius:13px;background:#101824;display:flex;flex-direction:column}.bs-chess-result-stats small{font-size:8px;color:#758192}.bs-chess-result-stats b{font-size:18px}.bs-chess-modal-buttons{display:flex;gap:8px}.bs-chess-modal-buttons button{height:48px;flex:1;border-radius:12px;border:1px solid rgba(255,255,255,.1);background:#141e2b;cursor:pointer}.bs-chess-modal-buttons button:first-child{background:linear-gradient(135deg,#dfb65a,#9c7128);color:#171006;font-weight:900}.bs-chess-list{display:grid;gap:8px;margin-top:18px}.bs-chess-list article{display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:10px;padding:11px;border:1px solid rgba(255,255,255,.07);border-radius:13px;background:#101824}.bs-chess-list article>i{width:44px;height:44px;display:grid;place-items:center;border-radius:12px;background:rgba(226,187,97,.08);color:var(--ch-gold);font:24px/1 Georgia;font-style:normal}.bs-chess-list article div{display:flex;flex-direction:column}.bs-chess-list article b{font-size:11px}.bs-chess-list article small{font-size:8px;color:#7c8796}.bs-chess-list article em{font-size:9px;color:#5fd0b6;font-style:normal}.bs-chess-list article.is-locked{opacity:.45}.bs-chess-lobby-code{text-align:center;margin:20px 0;padding:20px;background:#0b121d;border:1px dashed var(--ch-gold);border-radius:18px}.bs-chess-lobby-code small{display:block;color:#7e8997}.bs-chess-lobby-code b{font:800 35px/1.5 sans-serif;letter-spacing:8px;color:var(--ch-gold-2)}
.bs-chess-toast{position:fixed;z-index:100000;bottom:28px;right:50%;transform:translate(50%,20px);background:#f1d384;color:#171006;padding:11px 19px;border-radius:12px;font-size:11px;font-weight:800;opacity:0;transition:.25s;pointer-events:none}.bs-chess-toast.is-show{opacity:1;transform:translate(50%,0)}

@media(max-width:1050px){
  .bs-chess-shell{padding:0 18px 55px}.bs-chess-hero{grid-template-columns:1fr .8fr;min-height:540px}.bs-chess-hero-art{height:500px}.bs-chess-profile-strip{grid-template-columns:1.7fr repeat(3,1fr)}.bs-chess-profile-strip>a{display:none}.bs-chess-themes,.bs-chess-court-grid{grid-template-columns:repeat(2,1fr)}
  .bs-chess-arena{grid-template-columns:minmax(520px,720px) 280px}.bs-chess-board-frame{padding:21px}
}
@media(max-width:780px){
  body.bs-shatranj-page{padding:0!important}.bs-chess-shell{padding:env(safe-area-inset-top,0) 10px calc(90px + env(safe-area-inset-bottom,0))}.bs-chess-topbar{height:68px;grid-template-columns:1fr auto 1fr}.bs-chess-back span,.bs-chess-hud>span:first-child{display:none}.bs-chess-brand-seal{width:41px;height:41px}.bs-chess-brand b{font-size:13px}.bs-chess-brand small{font-size:8px}.bs-chess-hud>span,.bs-chess-hud>button{height:36px;min-width:36px;padding:7px}.bs-chess-hud b{font-size:10px}
  .bs-chess-hero{min-height:auto;display:flex;flex-direction:column;padding-bottom:25px}.bs-chess-hero-copy{padding:55px 12px 20px;text-align:center}.bs-chess-eyebrow{justify-content:center}.bs-chess-hero h1{font-size:35px;letter-spacing:-1.3px}.bs-chess-hero-copy>p{font-size:13px;line-height:1.9}.bs-chess-hero-actions{justify-content:center}.bs-chess-primary,.bs-chess-ghost{height:50px;padding:0 16px;gap:15px;font-size:11px}.bs-chess-trust{justify-content:center;gap:9px;flex-wrap:wrap;font-size:8px}.bs-chess-hero-art{height:310px;width:100%}.bs-chess-sun{width:220px;height:220px;top:10px}.bs-chess-monument{height:280px;bottom:30px;width:82%}.bs-chess-art-board{width:360px;height:110px}.bs-chess-art-label{display:none}
  .bs-chess-profile-strip{margin:0 0 48px;grid-template-columns:1fr repeat(3,.55fr);min-height:98px}.bs-chess-profile-id{padding:12px;border-left:1px solid var(--ch-line)}.bs-chess-profile-id>img,.bs-chess-profile-id>span{width:48px;height:48px;border-radius:14px}.bs-chess-profile-id small,.bs-chess-profile-id em{display:none}.bs-chess-profile-id b{font-size:11px}.bs-chess-stat{padding:8px}.bs-chess-stat b{font-size:16px}.bs-chess-stat small{font-size:7px}.bs-chess-stat i{display:none}
  .bs-chess-warhall,.bs-chess-themes-section,.bs-chess-court{margin-bottom:58px}.bs-chess-section-head{align-items:center}.bs-chess-section-head h2{font-size:21px}.bs-chess-section-head p{font-size:10px}.bs-chess-section-head>i{font-size:35px}.bs-chess-modes{grid-template-columns:1fr}.bs-chess-mode{min-height:0;padding:24px}.bs-chess-difficulties{grid-template-columns:repeat(2,1fr)}.bs-chess-online-actions,.bs-chess-online-actions.is-shared{grid-template-columns:1fr}.bs-chess-online-actions.is-shared>button{width:100%}.bs-chess-themes{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 1px 15px;scrollbar-width:none}.bs-chess-theme{flex:0 0 260px;scroll-snap-align:start}.bs-chess-court-grid{grid-template-columns:1fr 1fr}.bs-chess-court-grid>button{min-height:150px;padding:17px}.bs-chess-court-grid>button>i{width:40px;height:40px}.bs-chess-court-grid b{font-size:12px}
  .bs-chess-game{padding-top:6px;margin:0 -10px}.bs-chess-gamebar{height:56px;border-radius:0;border-right:0;border-left:0;margin-bottom:3px;padding:0 8px;grid-template-columns:1fr auto 1fr}.bs-chess-gamebar>button span{display:none}.bs-chess-gamebar b{font-size:11px}.bs-chess-room-code{position:absolute;top:62px;right:50%;transform:translateX(50%);z-index:6;background:#0d1520;padding:4px 9px;border-radius:7px}.bs-chess-game-tools button{width:33px;height:33px;font-size:11px}.bs-chess-game-tools button:nth-child(2){display:none}
  .bs-chess-arena{display:block}.bs-chess-table{width:100%}.bs-chess-player{height:58px;width:100%;padding:5px 10px;grid-template-columns:auto auto 1fr auto}.bs-chess-player .avatar{width:40px;height:40px;border-radius:12px}.bs-chess-player time{min-width:69px;font-size:18px;padding:7px}.bs-chess-player .captured{font-size:13px}.bs-chess-board-frame{width:100%;padding:15px;border-radius:0;border-right:0;border-left:0}.bs-chess-board-frame:before{inset:5px}.bs-chess-frame-mark{display:none}.bs-chess-piece{width:94%;height:94%}.bs-chess-square.is-selected{box-shadow:inset 0 0 0 3px var(--ch-accent)}.bs-chess-square.can-capture:after{border-width:3px}.bs-chess-coord{font-size:6px}.bs-chess-mobile-status{width:100%;height:51px;display:flex;align-items:center;justify-content:space-between;padding:0 13px;background:#0e1622;border-bottom:1px solid var(--ch-line);font-size:10px}.bs-chess-mobile-status button{border:1px solid rgba(226,187,97,.2);background:rgba(226,187,97,.08);color:var(--ch-gold-2);border-radius:9px;padding:7px 10px;font-size:8px}.bs-chess-sidepanel{min-height:0;margin:10px;border-radius:17px;padding:10px}.bs-chess-turn-card{display:none}.bs-chess-tabs{margin-top:0}.bs-chess-history,.bs-chess-info{height:135px}.bs-chess-actions{grid-template-columns:repeat(4,1fr)}.bs-chess-actions button{height:45px;flex-direction:column;gap:0}.bs-chess-actions button i{font-size:14px}.bs-chess-actions button span{font-size:7px}.bs-chess-legend{display:none}
}
@media(max-width:420px){.bs-chess-brand span:last-child{display:none}.bs-chess-hero h1{font-size:30px}.bs-chess-ghost{display:none}.bs-chess-profile-strip{grid-template-columns:1fr repeat(3,.48fr)}.bs-chess-profile-id>img,.bs-chess-profile-id>span{width:40px;height:40px}.bs-chess-profile-id{gap:7px}.bs-chess-court-grid{grid-template-columns:1fr 1fr}.bs-chess-court-grid em{display:none}.bs-chess-board-frame{padding:8px}.bs-chess-player>div em{display:none}.bs-chess-player .captured{display:none}.bs-chess-modal>section{padding:25px 16px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* 8.19 — ادامه امن نبرد و بازخورد حرفه‌ای */
.bs-chess-resume{height:56px;padding:0 18px;display:flex;align-items:center;gap:14px;border:1px solid rgba(80,210,181,.32);border-radius:15px;color:#bff8eb;background:linear-gradient(135deg,rgba(31,126,112,.24),rgba(18,57,61,.18));cursor:pointer;transition:.2s}.bs-chess-resume[hidden]{display:none}.bs-chess-resume span{display:flex;flex-direction:column;align-items:flex-start;font-size:10px;font-weight:900}.bs-chess-resume small{color:#6fcfbc;font-size:7px}.bs-chess-resume i{font-size:20px;font-style:normal}.bs-chess-resume:hover{transform:translateY(-2px);border-color:#66d9c1}.bs-chess-square{touch-action:manipulation}.bs-chess-modal-close:focus-visible,.bs-chess-actions button:focus-visible,.bs-chess-resume:focus-visible{outline:3px solid var(--ch-accent);outline-offset:3px}
@media(max-width:780px){.bs-chess-hero-actions{flex-wrap:wrap}.bs-chess-resume{height:50px;padding:0 13px}.bs-chess-resume span{font-size:9px}}
@media(max-width:420px){.bs-chess-resume{order:3;width:100%;justify-content:center}.bs-chess-resume span{align-items:center}}

/* 8.11 — گالری مهره‌ها و تجربه انتخاب حرفه‌ای */
.bs-chess-piece-styles{position:relative;margin-top:18px;padding:19px;border:1px solid rgba(226,187,97,.14);border-radius:22px;background:radial-gradient(circle at 95% 0,rgba(226,187,97,.08),transparent 34%),linear-gradient(145deg,rgba(18,27,41,.97),rgba(8,13,21,.98));box-shadow:inset 0 1px rgba(255,255,255,.035)}
.bs-chess-piece-styles-head{display:flex;align-items:flex-end;justify-content:space-between;gap:15px;margin-bottom:14px}.bs-chess-piece-styles-head>span{padding:5px 9px;border:1px solid rgba(226,187,97,.2);border-radius:999px;color:var(--ch-gold-2);background:rgba(226,187,97,.06);font-size:8px;font-weight:800;white-space:nowrap}.bs-chess-piece-styles-head h3{margin:0;color:#f5f0e5;font-size:17px}.bs-chess-piece-styles-head small{display:block;margin-top:3px;color:#778394;font-size:8.5px}
.bs-chess-piece-style-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.bs-chess-piece-style-grid>button{position:relative;display:grid;min-height:116px;grid-template-columns:104px minmax(0,1fr);align-items:center;gap:10px;padding:10px 12px;overflow:hidden;border:1px solid rgba(255,255,255,.07);border-radius:17px;color:#d9dee7;background:linear-gradient(145deg,rgba(255,255,255,.045),rgba(255,255,255,.015));text-align:right;cursor:pointer;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.bs-chess-piece-style-grid>button:hover{transform:translateY(-2px);border-color:rgba(226,187,97,.28)}.bs-chess-piece-style-grid>button.is-active{border-color:color-mix(in srgb,var(--ch-gold) 58%,transparent);background:linear-gradient(145deg,rgba(226,187,97,.11),rgba(255,255,255,.02));box-shadow:0 10px 26px rgba(0,0,0,.2),inset 0 0 0 1px rgba(226,187,97,.08)}
.bs-chess-piece-style-art{position:relative;display:flex;width:104px;height:94px;align-items:flex-end;justify-content:center;direction:ltr}.bs-chess-piece-style-art>i{display:block;width:72px;height:86px;margin:0 -14px;font-style:normal;filter:drop-shadow(0 8px 5px rgba(0,0,0,.45));transition:transform .22s ease}.bs-chess-piece-style-art>i:last-child{transform:translateY(4px) scale(.9)}.bs-chess-piece-style-grid>button:hover .bs-chess-piece-style-art>i:first-child{transform:translateY(-3px)}.bs-chess-piece-style-grid>button:hover .bs-chess-piece-style-art>i:last-child{transform:translateY(1px) scale(.9)}.bs-chess-piece-style-art svg{width:100%;height:100%}
.bs-chess-piece-style-grid>button>span:nth-child(2){display:flex;min-width:0;flex-direction:column}.bs-chess-piece-style-grid strong{font-size:11px}.bs-chess-piece-style-grid small{margin-top:4px;color:#7d8999;font-size:7.5px;line-height:1.6}.bs-chess-piece-style-grid>button>b{position:absolute;top:9px;left:9px;display:grid;width:20px;height:20px;place-items:center;border-radius:50%;color:#171006;background:var(--ch-gold);font:800 10px/1 sans-serif;opacity:0;transform:scale(.7);transition:.2s}.bs-chess-piece-style-grid>button.is-active>b{opacity:1;transform:scale(1)}

.bs-chess-board-frame{background-image:radial-gradient(circle at 50% -15%,color-mix(in srgb,var(--ch-accent) 18%,transparent),transparent 42%),linear-gradient(135deg,color-mix(in srgb,var(--ch-accent) 28%,#111),#080b12 55%,color-mix(in srgb,var(--ch-accent) 19%,#111))}
.bs-chess-square{isolation:isolate;outline:0;transition:filter .14s ease,box-shadow .14s ease}.bs-chess-square:focus-visible{z-index:7;box-shadow:inset 0 0 0 4px #fff,0 0 0 3px var(--ch-accent)}.bs-chess-square.is-own:hover{filter:brightness(1.1)}
.bs-chess-square.is-selected{z-index:6;box-shadow:inset 0 0 0 4px #f8e2a2,inset 0 0 0 8px color-mix(in srgb,var(--ch-accent) 72%,transparent),inset 0 0 28px rgba(255,232,157,.36)!important}.bs-chess-square.is-selected .bs-chess-piece{transform:translateY(-5px) scale(1.035);filter:drop-shadow(0 10px 7px rgba(0,0,0,.52)) drop-shadow(0 0 8px color-mix(in srgb,var(--ch-accent) 55%,transparent))}
.bs-chess-square.can-move:after{width:19%;height:19%;border:2px solid rgba(255,255,255,.56);background:color-mix(in srgb,var(--ch-accent) 82%,#15202d);box-shadow:0 0 0 4px rgba(0,0,0,.16),0 0 15px color-mix(in srgb,var(--ch-accent) 52%,transparent)}.bs-chess-square.can-capture:after{inset:6%;border:clamp(3px,.35vw,5px) solid color-mix(in srgb,var(--ch-accent) 88%,#fff);box-shadow:inset 0 0 12px rgba(0,0,0,.3),0 0 14px color-mix(in srgb,var(--ch-accent) 35%,transparent)}
.bs-chess-board.is-dragging .bs-chess-square.can-move,.bs-chess-board.is-dragging .bs-chess-square.can-capture{filter:brightness(1.12)}.bs-chess-board.is-invalid{animation:chInvalid .24s ease}.bs-chess-piece{will-change:transform}.bs-piece-svg.set-relief{filter:saturate(.68) contrast(1.08)}.bs-piece-svg.set-bronze{filter:saturate(1.13) contrast(1.04)}
.bs-chess-promotion-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:18px}.bs-chess-promotion-grid button{display:flex;min-width:0;min-height:116px;padding:7px;align-items:center;justify-content:center;flex-direction:column;gap:2px;border:1px solid rgba(226,187,97,.16);border-radius:15px;color:#eef1f5;background:#101824;cursor:pointer;transition:.2s}.bs-chess-promotion-grid button:hover{border-color:var(--ch-gold);background:rgba(226,187,97,.09);transform:translateY(-2px)}.bs-chess-promotion-grid i{display:block;width:72px;height:72px}.bs-chess-promotion-grid svg{width:100%;height:100%}.bs-chess-promotion-grid span{font-size:9px;font-weight:800}
.bs-chess-game-tools button{position:relative;color:#aeb7c5;transition:.18s}.bs-chess-game-tools button:hover{border-color:color-mix(in srgb,var(--ch-accent) 38%,transparent);color:var(--ch-accent);background:color-mix(in srgb,var(--ch-accent) 8%,#151e2c);transform:translateY(-1px)}
@keyframes chInvalid{0%,100%{transform:translateX(0)}35%{transform:translateX(2px)}70%{transform:translateX(-2px)}}

@media(max-width:900px){.bs-chess-piece-style-grid{grid-template-columns:1fr}.bs-chess-piece-style-grid>button{min-height:98px;grid-template-columns:94px 1fr}.bs-chess-piece-style-art{width:94px;height:80px}.bs-chess-piece-style-art>i{width:62px;height:74px}.bs-chess-game-tools{gap:3px}.bs-chess-game-tools button{width:31px;height:31px}.bs-chess-game-tools button:nth-child(2){display:grid}.bs-chess-square.is-selected{box-shadow:inset 0 0 0 3px #f8e2a2,inset 0 0 0 6px color-mix(in srgb,var(--ch-accent) 72%,transparent),inset 0 0 20px rgba(255,232,157,.3)!important}}
@media(max-width:480px){.bs-chess-piece-styles{padding:13px;border-radius:17px}.bs-chess-piece-styles-head{align-items:flex-start;flex-direction:column}.bs-chess-piece-styles-head h3{font-size:14px}.bs-chess-piece-style-grid>button{min-height:91px;padding:7px;grid-template-columns:78px 1fr}.bs-chess-piece-style-art{width:78px;height:70px}.bs-chess-piece-style-art>i{width:55px;height:65px}.bs-chess-promotion-grid{grid-template-columns:repeat(2,1fr)}.bs-chess-game-tools button{width:29px;height:29px;font-size:10px}.bs-chess-gamebar{padding-inline:5px}.bs-chess-gamebar>div:nth-child(2){max-width:92px}.bs-chess-gamebar b{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}}
