@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&family=Space+Grotesk:wght@400;500;600;700&display=swap";.lab-app{--lab-bg:#0c141e;--lab-panel:#141f2c;--lab-border:#273341;--lab-muted:#90a0af;--lab-yellow:#ffda56;color:#f0f3f4;background:var(--lab-bg);min-height:100vh;font-family:DM Sans,sans-serif}.lab-app button,.lab-app select,.lab-app input{font:inherit}.club-account{display:flex;align-items:center;gap:20px;min-width:0}@media (max-width:760px){.lab-header.with-account{height:auto;min-height:94px;display:grid;grid-template-columns:1fr auto;gap:14px;padding-top:18px}.lab-header.with-account .lab-nav{grid-column:1 / -1;grid-row:2;height:36px;justify-content:center}.club-account{gap:10px}}.lab-app button{cursor:pointer}.lab-app button:disabled{opacity:.4;cursor:default}.lab-app button:focus-visible,.lab-app a:focus-visible,.lab-app select:focus-visible{outline:2px solid var(--lab-yellow);outline-offset:4px}.lab-header{height:94px;border-bottom:1px solid var(--lab-border);padding:0 4.2%;display:flex;align-items:center;justify-content:space-between;gap:24px}.lab-brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--lab-yellow);font:700 21px/1 Space Grotesk,sans-serif;letter-spacing:2px}.lab-brand svg{width:43px;height:47px}.brand-second{display:block;color:#eef1f3;font-size:11px;letter-spacing:3px;margin-top:7px}.lab-nav{align-self:stretch;display:flex;gap:36px;align-items:stretch}.lab-nav a{display:flex;align-items:center;gap:10px;border-bottom:2px solid transparent;color:var(--lab-muted);font-size:13px;text-decoration:none}.lab-nav a.active{border-color:var(--lab-yellow);color:var(--lab-yellow)}.lab-nav a:hover{color:#fff}.lab-edition{font-size:9px;letter-spacing:1.5px;color:var(--lab-muted);display:flex;align-items:center;gap:9px}.lab-edition>span{width:6px;height:6px;background:var(--lab-yellow);border-radius:50%}.lab-main{width:min(1440px,92%);margin:0 auto;padding:35px 0 24px}.lab-intro{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:27px}.lab-eyebrow{color:var(--lab-muted);font-size:9px;font-weight:650;letter-spacing:2px;line-height:1.5}.lab-intro h1{font:500 clamp(28px,3vw,42px)/1.2 "Space Grotesk",sans-serif;margin:8px 0;letter-spacing:-1.6px}.lab-intro h1>span{color:var(--lab-yellow)}.lab-subtitle{color:var(--lab-muted);font-size:12px;line-height:1.6}.lab-button{border:1px solid transparent;border-radius:7px;padding:12px 18px;font-size:12px!important;font-weight:650!important;display:inline-flex;gap:8px;align-items:center;justify-content:center;white-space:nowrap;transition:background .15s}.lab-primary{background:var(--lab-yellow);color:#19212a;box-shadow:0 2px #b79a35}.lab-primary:hover:not(:disabled){background:#ffe680}.lab-secondary{background:#1b2a39;color:#d0dae1;border-color:#304052}.lab-secondary:hover:not(:disabled){background:#293a4c}.lab-text-button{color:var(--lab-yellow);background:none;border:0;font-size:11px!important}.lab-layout{display:grid;grid-template-columns:minmax(0,1fr) 305px;gap:20px;align-items:stretch}.lab-arena{border:1px solid var(--lab-border);border-radius:12px;overflow:hidden;background:#111c28;display:flex;flex-direction:column;min-width:0}.arena-topline{min-height:49px;padding:0 22px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid #22303c;color:#94a2af;font-size:9px;letter-spacing:1.4px}.arena-tag{display:flex;align-items:center;gap:8px}.arena-tag i,.mint-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:#78d8b5;flex-shrink:0}.versus{font-size:9px;color:#526473;padding:0 12px;letter-spacing:0}.lab-stage{position:relative;height:clamp(450px,45vw,640px);flex:1;min-height:450px}.lab-stage .chessboard-3d-wrapper{position:absolute;top:0;right:0;bottom:0;left:0}.team-badge{position:absolute;left:20px;display:flex;align-items:center;gap:6px;font-size:8px;letter-spacing:1.2px;pointer-events:none;color:#9aabc0}.team-badge.opponent{top:18px}.team-badge.home{bottom:15px}.team-badge i,.crew-dot{display:inline-block;height:7px;width:7px;border-radius:50%;flex-shrink:0}.yellow i,.crew-dot.yellow{background:#ffda56}.purple i,.crew-dot.purple{background:#ae84ed}.moving-pill{position:absolute;bottom:20px;left:50%;transform:translate(-50%);background:#ffda56;color:#18212b;border-radius:40px;padding:9px 18px;font-size:11px;white-space:nowrap;box-shadow:0 3px 20px #0005;pointer-events:none}.arena-toolbar{border-top:1px solid #22303c;min-height:58px;padding:10px 18px;display:flex;justify-content:space-between;align-items:center;gap:12px}.view-switch{display:flex;background:#0b151f;border:1px solid #273542;border-radius:6px;padding:3px;gap:3px}.view-switch button{border:0;background:none;color:#899bad;font-size:10px;padding:7px 10px;border-radius:4px;white-space:nowrap}.view-switch button.selected{background:#2c3947;color:#f6f5ee}.arena-tools{display:flex;gap:17px}.arena-tools button{border:0;background:none;color:#a6b5c1;font-size:11px;white-space:nowrap}.arena-tools button span{padding-left:3px;font-size:10px}.arena-footnote{border-top:1px solid #22303c;padding:13px 20px;display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:9px;color:#8595a4;line-height:1.5}.arena-footnote>span:first-child{display:flex;align-items:center;gap:7px}.lab-sidebar{display:flex;flex-direction:column;gap:16px;min-width:0}.turn-card,.lab-card{background:var(--lab-panel);border:1px solid var(--lab-border);border-radius:11px;padding:21px}.turn-card{border-top:2px solid var(--lab-yellow)}.turn-heading{display:flex;align-items:center;gap:12px;margin:18px 0 22px}.turn-avatar{display:flex;align-items:center;justify-content:center;background:#3b3825;border:1px solid #625532;width:44px;height:48px;border-radius:10px;flex-shrink:0}.turn-avatar svg{width:27px;height:33px}.turn-avatar.purple{filter:hue-rotate(205deg)}.turn-heading h2{font:500 18px/1.25 Space Grotesk,sans-serif;letter-spacing:-.3px}.turn-heading p{color:var(--lab-muted);font-size:10px;line-height:1.6;margin-top:5px}.mode-label{display:block;color:#92a4b5;font-size:8px;letter-spacing:1.4px;margin-bottom:8px}.turn-card select{width:100%;padding:11px 9px;background:#0f1924;color:#dce4e9;border:1px solid #344352;border-radius:6px;font-size:11px}.turn-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px}.turn-actions .lab-button{font-size:10px!important;padding:9px 11px}.lab-hint{color:#f5db90;font-size:11px;line-height:1.65;background:#ffda560b;border-left:2px solid #ffda56;padding:10px;margin-top:15px}.card-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:18px}.card-heading h2{font:500 14px Space Grotesk,sans-serif}.small-tag{color:#8193a6;font-size:8px;letter-spacing:1px}.capture-line{display:flex;align-items:center;gap:7px;font-size:10px;color:#c3ced8;margin-top:13px}.captured-pieces{flex:1;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:3px;color:#c0a0f6;font-size:19px;line-height:1}.capture-line:last-child .captured-pieces{color:#ffda56}.empty-captures{color:#788c9e;font-size:9px;line-height:1.4}.moves-card{flex:1;min-height:196px;display:flex;flex-direction:column}.move-columns,.move-row{display:grid;grid-template-columns:25px 1fr 1fr;align-items:center;gap:8px}.move-columns{color:#91a3b3;font-size:9px;padding:0 0 11px;border-bottom:1px solid #293746}.move-columns i{width:5px;height:5px;margin-right:4px}.move-history{flex:1;min-height:100px;max-height:170px;overflow:auto;scrollbar-width:thin;scrollbar-color:#344352 transparent}.move-row{padding:9px 0;font-size:12px;color:#e3e8eb;border-bottom:1px solid #22303d;font-variant-numeric:tabular-nums}.move-row>span:first-child{font-size:10px;color:#6f8498}.move-row>span:last-child{color:#baa6d9}.empty-history{display:flex;align-items:center;justify-content:center;gap:12px;height:100%;min-height:105px;color:#6e8296;text-align:left}.empty-history>span{font-size:35px;color:#3a4c5f}.empty-history p{font-size:10px;line-height:1.7}.lab-guide{display:grid;grid-template-columns:1.3fr repeat(6,1fr);gap:16px;align-items:center;margin-top:24px;padding:22px 0;border-top:1px solid #26313e;border-bottom:1px solid #26313e}.guide-intro .lab-eyebrow{font-size:8px;letter-spacing:1.5px}.guide-intro p{color:#c0ccd6;font-size:11px;line-height:1.6;margin-top:5px}.piece-guide{display:flex;gap:10px;align-items:center}.guide-symbol{font-size:28px;color:#d2bb7c}.piece-guide strong{display:block;font-size:10px;font-weight:600;margin-bottom:5px}.piece-guide div>span{display:block;color:#7f93a5;font-size:8px;line-height:1.5}.lab-footer{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-top:20px;font-size:8px;color:#6c8295;letter-spacing:1px}.lab-footer>span:last-child{letter-spacing:0;display:flex;gap:7px;align-items:center}.lab-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#030a12c9;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:20;display:flex;align-items:center;justify-content:center;padding:20px}.lab-modal{width:min(440px,100%);border:1px solid #435164;border-radius:16px;padding:30px;background:#182533;box-shadow:0 20px 100px #0008}.lab-modal h2{font:500 26px Space Grotesk,sans-serif;margin:12px 0}.lab-modal>p:not(.lab-eyebrow){color:#9eafbd;font-size:13px;line-height:1.6}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:25px}.promotion-options{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:25px}.promotion-options button{padding:12px 5px;border:1px solid #425166;color:#e6d9b2;border-radius:8px;background:#223245;font-size:11px}.promotion-options button:hover{border-color:var(--lab-yellow)}.promotion-options span{display:block;font-size:32px;margin-bottom:8px}@media (min-width:1600px){.lab-main{padding-top:45px}.lab-stage{height:650px}.lab-layout{grid-template-columns:minmax(0,1fr) 335px}.turn-card,.lab-card{padding:24px}.move-history{max-height:220px}}@media (max-width:1050px){.lab-edition{display:none}.lab-guide{grid-template-columns:repeat(4,1fr);row-gap:22px}.guide-intro{grid-row:span 2}.lab-layout{grid-template-columns:minmax(0,1fr) 275px;gap:14px}.turn-card,.lab-card{padding:17px}.arena-tools{gap:10px}.arena-tools button span{display:none}.arena-footnote{flex-wrap:wrap}.lab-stage{min-height:460px}.turn-heading h2{font-size:17px}}@media (max-width:760px){.lab-header{height:78px;padding:0 5%}.lab-brand{font-size:16px;letter-spacing:1px;gap:8px}.lab-brand svg{width:32px;height:39px}.brand-second{font-size:8px;letter-spacing:2px}.lab-nav{gap:20px}.lab-nav a{font-size:11px}.lab-main{width:92%;padding-top:25px}.lab-intro{margin-bottom:20px}.lab-intro h1{font-size:29px;letter-spacing:-1px}.lab-subtitle{font-size:10px;max-width:250px}.lab-intro>.lab-button{padding:10px 12px;font-size:10px!important}.lab-layout{grid-template-columns:1fr}.lab-stage{height:clamp(390px,85vw,580px);min-height:390px}.arena-topline{padding:0 15px;font-size:8px}.arena-toolbar{padding:10px 14px}.arena-tools button span{display:inline}.lab-sidebar{display:grid;grid-template-columns:1fr 1fr;gap:14px}.turn-card{grid-row:span 2}.moves-card{min-height:190px}.move-history{max-height:110px}.captured-card{padding:17px}.card-heading{margin-bottom:12px}.lab-guide{grid-template-columns:repeat(3,1fr);gap:18px}.guide-intro{grid-column:span 3;grid-row:auto;display:flex;justify-content:space-between;align-items:center}.guide-intro p{margin:0}.guide-intro br{display:none}.lab-footer{font-size:7px;line-height:1.6}}@media (max-width:480px){.lab-header{gap:10px}.lab-nav{gap:15px}.lab-intro h1{font-size:25px}.lab-eyebrow{font-size:8px;letter-spacing:1.5px}.lab-stage{height:390px}.lab-sidebar{grid-template-columns:1fr}.turn-card{grid-row:auto}.turn-heading{margin:15px 0}.turn-heading h2{font-size:20px}.moves-card{min-height:180px}.move-history{max-height:160px}.arena-footnote>span:last-child{display:none}.arena-tools button span{display:none}.team-badge{font-size:7px}.piece-guide{gap:7px}.guide-symbol{font-size:25px}.piece-guide div>span{font-size:7px}.lab-footer>span:first-child{max-width:145px}.moving-pill{font-size:10px;padding:8px 12px}}.login-container .login-main{padding-top:50px}.login-container .login-wrapper{display:grid;grid-template-columns:minmax(0,420px) minmax(0,1fr);gap:clamp(35px,7vw,100px);align-items:center;width:min(100%,1040px);margin:20px auto 60px}.login-container .login-box{padding:32px;background:var(--lab-panel);border:1px solid var(--lab-border);border-top:2px solid var(--lab-yellow);border-radius:12px}.login-container .local-play-link{display:block;color:#a2b2c0;font-size:10px;line-height:1.6;text-decoration:none;margin-bottom:30px}.login-container .local-play-link:hover{color:var(--lab-yellow)}.login-container .login-header{margin-bottom:27px}.login-container .login-header h1{font:500 32px Space Grotesk,sans-serif;letter-spacing:-1px;margin:9px 0;color:#f0f3f4}.login-container .login-header p:last-child{color:var(--lab-muted);font-size:12px;line-height:1.7}.login-container .login-form{display:flex;flex-direction:column;gap:14px}.login-container .form-group{display:flex;flex-direction:column}.login-container .form-group input{width:100%;padding:13px 14px;background:#0f1924;color:#dce4e9;border:1px solid #344352;border-radius:7px;font-size:12px}.login-container .form-group input::placeholder{color:#8b9dad}.login-container .form-group input:focus{outline:2px solid var(--lab-yellow);outline-offset:2px}.login-container .form-group input:disabled{opacity:.5}.login-container .error-message{color:#ffb5ac;background:#ff837510;border:1px solid #ff837540;padding:12px;font-size:11px;border-radius:7px;line-height:1.7}.login-container .submit-btn{width:100%;margin-top:5px;padding:13px;background:var(--lab-yellow);color:#19212a;border:1px solid transparent;border-radius:7px;font-size:12px;font-weight:650;box-shadow:0 2px #b79a35}.login-container .submit-btn:hover:not(:disabled){background:#ffe680}.login-container .login-footer{border-top:1px solid var(--lab-border);padding-top:20px;margin-top:25px;text-align:center}.login-container .toggle-btn{padding:4px 0;border:0;background:none;color:var(--lab-yellow);font-size:11px;line-height:1.6}.login-container .toggle-btn:hover{text-decoration:underline}.login-container .login-info{padding:20px 0}.login-minion{width:90px;height:96px;padding:18px;border:1px solid #ffda5624;background:#ffda5608;border-radius:23px;margin-bottom:28px;transform:rotate(7deg)}.login-minion svg{width:100%;height:100%;transform:rotate(-7deg)}.login-container .login-info h2{font:500 clamp(33px,3.5vw,48px)/1.15 "Space Grotesk",sans-serif;letter-spacing:-1.5px;margin:12px 0 18px}.login-container .login-info h2 span{color:var(--lab-yellow)}.login-container .login-info>p:not(.lab-eyebrow){color:var(--lab-muted);font-size:13px;line-height:1.9;max-width:360px}.login-container .login-info ul{display:grid;gap:15px;list-style:none;padding:25px 0 0;color:#c6d3df;font-size:12px}.login-container .login-info li{display:flex;align-items:center;gap:10px}.login-container .login-info li:before{content:"";width:5px;height:5px;border-radius:50%;background:#78d8b5;flex-shrink:0}@media (max-width: 760px){.login-container .login-main{padding-top:25px}.login-container .login-wrapper{grid-template-columns:minmax(0,420px);justify-content:center;margin:10px auto 35px}.login-container .login-info{display:none}.login-container .login-box{padding:27px 24px}}.lobby-container .user-info{display:flex;align-items:center;gap:11px;min-width:0}.lobby-container .user-avatar{width:36px;height:38px;border-radius:9px;background:#3b3825;border:1px solid #625532;color:var(--lab-yellow);display:grid;place-items:center;font:600 17px Space Grotesk,sans-serif;flex-shrink:0}.lobby-container .user-details h3{font-size:12px;font-weight:600;margin-bottom:4px}.lobby-container .user-details p{font-size:10px;color:var(--lab-muted)}.lobby-container .logout-btn{padding:9px 13px;background:#1b2a39;border:1px solid #304052;border-radius:7px;color:#d0dae1;font-size:11px}.lobby-container .logout-btn:hover{background:#293a4c}.lobby-room-count{display:flex;align-items:center;gap:8px;color:var(--lab-muted);font-size:11px;white-space:nowrap}.lobby-content{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(0,1.8fr);gap:20px}.lobby-container .create-game-section,.lobby-container .games-section,.lobby-container .stats-section{min-width:0;background:var(--lab-panel);border:1px solid var(--lab-border);border-radius:11px;padding:26px}.lobby-container .create-game-section{grid-column:1;grid-row:1 / 3;border-top:2px solid var(--lab-yellow);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:42px 30px}.lobby-minion{width:112px;height:120px;display:grid;place-items:center;background:#ffda5608;border:1px solid #ffda5624;border-radius:30px;transform:rotate(-6deg);margin-bottom:32px}.lobby-minion svg{width:72px;height:83px;transform:rotate(6deg)}.lobby-container .create-game-section h2{font:500 25px/1.25 Space Grotesk,sans-serif;margin:10px 0;letter-spacing:-.6px}.lobby-container .create-game-section>p:not(.lab-eyebrow){color:var(--lab-muted);font-size:12px;line-height:1.8;margin-bottom:27px;max-width:230px}.lobby-container .create-btn,.lobby-container .join-btn{border:1px solid transparent;border-radius:7px;color:#19212a;background:var(--lab-yellow);font-size:12px;font-weight:650;padding:12px 20px;box-shadow:0 2px #b79a35;white-space:nowrap}.lobby-container .create-btn{width:100%;max-width:240px}.lobby-container .join-btn{padding:10px 15px;font-size:11px}.lobby-container .create-btn:hover:not(:disabled),.lobby-container .join-btn:hover:not(:disabled){background:#ffe680}.lobby-container .games-section h2,.lobby-container .stats-section h2{font:500 17px Space Grotesk,sans-serif}.lobby-container .error-message{padding:12px;margin-bottom:15px;border:1px solid #ff837540;background:#ff837510;border-radius:7px;color:#ffb5ac;font-size:12px;line-height:1.6}.lobby-container .empty-state{min-height:230px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px 10px;color:var(--lab-muted);text-align:center}.lobby-container .empty-room-icon{color:#40556b;font-size:48px;margin-bottom:16px;line-height:1}.lobby-container .empty-state p{font-size:12px;line-height:1.8}.lobby-container .empty-state p:first-of-type{color:#d0dae1;font-size:14px;margin-bottom:4px}.lobby-container .games-grid{display:grid;gap:12px}.lobby-container .game-card{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:17px;background:#101a26;border:1px solid #2c3b4b;border-radius:8px;transition:border-color .15s}.lobby-container .game-card:hover{border-color:#7f7040}.lobby-container .room-card-details{min-width:0}.lobby-container .game-id{color:#dce4e9;font:500 12px Space Grotesk,sans-serif;margin-bottom:7px}.lobby-container .game-time{color:#8193a6;font-size:10px}.lobby-container .player-count{color:#b1c5d2;font-size:11px;margin-top:7px}.lobby-container .stats-section h2{margin-bottom:20px}.lobby-container .stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.lobby-container .stat-card{padding:18px 10px;border:1px solid #2c3b4b;border-radius:8px;background:#101a26;text-align:center}.lobby-container .stat-value{color:var(--lab-yellow);font:500 27px Space Grotesk,sans-serif;margin-bottom:7px}.lobby-container .stat-label{color:var(--lab-muted);font-size:10px}@media (max-width: 950px){.lobby-content{grid-template-columns:minmax(220px,.8fr) minmax(0,1.4fr);gap:16px}.lobby-container .create-game-section,.lobby-container .games-section,.lobby-container .stats-section{padding:22px}.lobby-container .user-details p{display:none}.lobby-container .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lobby-container .games-section .small-tag{display:none}}@media (max-width: 640px){.lobby-content{grid-template-columns:1fr}.lobby-container .create-game-section{grid-column:auto;grid-row:auto;padding:28px 24px}.lobby-minion{width:65px;height:72px;border-radius:17px;margin-bottom:20px}.lobby-minion svg{width:44px;height:51px}.lobby-container .create-game-section>p:not(.lab-eyebrow){max-width:280px;margin-bottom:20px}.lobby-container .game-card{padding:13px;gap:10px}.lobby-container .user-details{display:none}.lobby-container .lab-intro{align-items:flex-end}.lobby-room-count{font-size:9px;margin-bottom:4px}}.chessboard-3d-wrapper{position:relative;width:100%;height:100%;min-height:360px;overflow:hidden}canvas.chessboard-3d{width:100%;height:100%;display:block;touch-action:none;outline:none}canvas.chessboard-3d:focus-visible{outline:2px solid #ffda45;outline-offset:-3px}.board-error{position:absolute;inset:10px 10px auto;padding:12px;background:#26383d;color:#fff;font-size:13px;z-index:2}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.sr-only:focus-within,.fallback-board{position:absolute;top:70px;right:5%;bottom:20px;left:5%;width:auto;height:auto;clip:auto;margin:0;display:grid;grid-template-columns:repeat(8,1fr);grid-template-rows:repeat(8,1fr);z-index:4}.fallback-board button,.sr-only:focus-within button{min-width:0;border:0;font-size:28px;color:#18202b}.light{background:#e7dfc8}.dark{background:#52706f}.fallback-board .legal{box-shadow:inset 0 0 0 4px #6de1b2}.fallback-board button[aria-pressed=true],.sr-only button[aria-pressed=true]{outline:4px solid #ffda45;outline-offset:-4px}.online-game .lab-layout{align-items:start}.online-game .lab-arena{align-self:stretch}.online-game .lab-stage{height:clamp(480px,43vw,650px);flex:1 0 auto}.online-game .game-sidebar{display:flex;flex-direction:column;gap:16px}.online-card-heading{display:flex;align-items:center;gap:12px;margin:17px 0 21px}.online-card-heading h2{font:500 19px Space Grotesk,sans-serif;margin-bottom:5px}.online-card-heading p{color:var(--lab-muted);font-size:10px}.online-game .info-box{padding-bottom:15px;margin-bottom:15px;border-bottom:1px solid var(--lab-border)}.online-game .info-label{display:block;font-size:9px;color:var(--lab-muted);letter-spacing:1px;text-transform:uppercase;margin-bottom:8px;line-height:1.6}.online-game .info-value{font-size:15px;font-weight:550;color:#e4d4a0}.online-game input{width:100%;min-width:0;padding:10px;background:#0f1924;color:#dce4e9;border:1px solid #344352;border-radius:6px;font:11px DM Sans,sans-serif}.online-game input:focus{outline:2px solid var(--lab-yellow);outline-offset:2px}.online-game input::placeholder{color:#8295a7}.online-game input:disabled{opacity:.5}.online-game .player-list{display:grid;gap:8px;margin:15px 0}.online-game .player{display:flex;align-items:center;gap:9px;padding:10px;background:#0f1924;border:1px solid #2b3949;border-radius:6px;color:#c6d3df;font-size:11px;overflow-wrap:anywhere}.online-game .color-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.online-game .player.white .color-dot{background:var(--lab-yellow)}.online-game .player.black .color-dot{background:#ae84ed}.online-game .status-message{background:#78d8b50a;border:1px solid #78d8b529;border-radius:7px;padding:11px;font-size:11px;line-height:1.7;color:#9cd5c4}.online-game .game-result{border:1px solid;border-radius:7px;padding:15px;margin-top:15px}.online-game .game-result.win{color:#9ce0c4;background:#78d8b512;border-color:#78d8b545}.online-game .game-result.loss{color:#ffb5ac;background:#ff837510;border-color:#ff837540}.online-game .game-result h3{font:500 19px Space Grotesk,sans-serif;margin-bottom:7px}.online-game .game-result p{font-size:11px;line-height:1.7}.online-game .controls{display:flex;gap:10px;margin-top:15px;flex-wrap:wrap}.online-game .btn{flex:1;padding:10px 12px;border:1px solid #344352;border-radius:6px;background:#1b2a39;color:#d0dae1;font-size:11px;font-weight:550;white-space:nowrap}.online-game .btn:hover:not(:disabled){background:#293a4c}.online-game .btn-draw{color:var(--lab-yellow);border-color:#ffda5640;background:#ffda560b}.online-game .btn-resign{color:#ffb5ac;border-color:#ff83753b;background:#ff837509}.online-game .online-history{margin-top:18px;border-top:1px solid var(--lab-border);padding-top:15px}.online-game .online-history summary{color:#becbd7;font-size:11px;cursor:pointer}.online-game .online-history summary:focus-visible{outline:2px solid var(--lab-yellow);outline-offset:4px}.online-game .online-history p{color:var(--lab-muted);font-size:11px;line-height:1.9;margin-top:10px;overflow-wrap:anywhere;max-height:150px;overflow:auto}.online-game .game-chat h3{font:500 14px Space Grotesk,sans-serif}.online-game .game-chat .small-tag{font-size:7px;letter-spacing:.6px}.online-game .chat-messages{min-height:105px;max-height:180px;overflow:auto;scrollbar-width:thin;scrollbar-color:#344352 transparent;padding:11px;margin-bottom:12px;background:#0f1924;border:1px solid #2b3949;border-radius:6px}.online-game .chat-empty{color:#7f93a5;font-size:11px;line-height:1.7}.online-game .chat-msg{margin-bottom:12px;font-size:11px;line-height:1.7;overflow-wrap:anywhere}.online-game .chat-msg:last-child{margin-bottom:0}.online-game .chat-msg strong{color:var(--lab-yellow);font-weight:550}.online-game .chat-msg p{color:#c6d3df}.online-game .game-chat form{display:flex;gap:8px}.online-game .game-chat form input{flex:1}.online-game .game-chat form button{border:1px solid transparent;border-radius:6px;padding:9px 12px;background:var(--lab-yellow);color:#19212a;font-size:11px;font-weight:650}.online-game .game-chat form button:hover:not(:disabled){background:#ffe680}@media (max-width: 1050px){.online-game .lab-stage{height:540px}.online-game .arena-topline{padding:0 15px;font-size:8px}}@media (max-width: 760px){.online-game .lab-stage{height:clamp(390px,85vw,580px);min-height:390px}.online-game .game-sidebar{display:grid;grid-template-columns:1fr 1fr;align-items:start}}@media (max-width: 560px){.online-game .game-sidebar{display:flex;align-items:stretch}.online-game .lab-stage{height:390px}.online-game .arena-topline{font-size:7px;letter-spacing:1px;gap:5px}}.loading-container{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;color:#f5f5f5;background:linear-gradient(135deg,#0f172a,#111827)}.loader{width:48px;height:48px;border:4px solid rgba(255,255,255,.2);border-top-color:#facc15;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background:#0c141e;min-height:100vh;color:#f0f3f4}#root{width:100%;height:100vh}.loading-container{display:flex;flex-direction:column;justify-content:center;align-items:center;height:100vh;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.loader{width:50px;height:50px;border:5px solid rgba(255,255,255,.3);border-radius:50%;border-top:5px solid white;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-container h2{color:#fff;margin-top:20px;font-size:24px}
