*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--app-bg: #111827;--app-text: #e2e8f0;--app-pad-inline: clamp(12px, 3vw, 28px);--app-pad-block: clamp(16px, 4vw, 40px);--app-max-content: min(1200px, calc(100vw - 2 * var(--app-pad-inline)));--chess-card-sm-w: clamp(27.5px, min(6.875vw, 10vmin), 70px);--chess-card-tiny-w: clamp(22.5px, min(4.375vw, 6.875vmin), 35px);--chess-card-md-w: clamp(35px, min(5.9375vw, 8.125vmin), 62.5px);--chess-card-lg-w: clamp(40px, min(6.875vw, 9.375vmin), 81.25px)}@media (max-width: 1199px){:root{--chess-card-sm-w: var(--chess-card-tiny-w);--chess-card-md-w: var(--chess-card-tiny-w);--chess-card-lg-w: var(--chess-card-tiny-w)}}@media (min-width: 1921px){:root{--chess-card-sm-w: clamp(44px, min(11vw, 16vmin), 112px);--chess-card-tiny-w: clamp(36px, min(7vw, 11vmin), 56px);--chess-card-md-w: clamp(56px, min(9.5vw, 13vmin), 100px);--chess-card-lg-w: clamp(64px, min(11vw, 15vmin), 130px)}}html{-webkit-text-size-adjust:100%}html,body,#root{min-height:100%;min-height:100dvh}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:var(--app-bg);color:var(--app-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}#root{display:flex;flex-direction:column;min-height:100dvh}#root>.game-view,#root>.auth-page,#root>.title-screen,#root>.lobby-page,#root>.app-page,#root>.multiplayer-game__page{flex:1 1 auto;min-height:0;min-width:0}.multiplayer-game__page{display:flex;flex-direction:column;min-height:0;min-width:0;width:100%;height:100dvh;max-height:100dvh;overflow:hidden}.multiplayer-game__page>.game-view{flex:1 1 auto;min-height:0;min-width:0;height:auto;max-height:100%}.multiplayer-game__action-error{position:fixed;top:max(16px,env(safe-area-inset-top));left:50%;transform:translate(-50%);max-width:min(92vw,480px);padding:10px 18px;border-radius:8px;z-index:9999;font-size:clamp(12px,2.5vw,14px);line-height:1.35;pointer-events:none;animation:app-fade-in .2s ease;background:#7f1d1d;color:#fca5a5;box-shadow:0 8px 24px #00000059}.app-page{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;min-height:100dvh;padding:var(--app-pad-block) var(--app-pad-inline);padding-bottom:max(var(--app-pad-block),env(safe-area-inset-bottom));padding-left:max(var(--app-pad-inline),env(safe-area-inset-left));padding-right:max(var(--app-pad-inline),env(safe-area-inset-right));padding-top:max(var(--app-pad-block),env(safe-area-inset-top));text-align:center;color:#94a3b8;background:#0a0a16}.app-page--error{color:#fca5a5}.app-page__message{max-width:36rem;line-height:1.5}.app-page__btn{margin-top:8px;padding:10px 22px;border-radius:10px;border:1px solid rgba(148,163,184,.35);background:#0f172ad9;color:#e2e8f0;font-size:14px;font-weight:600;cursor:pointer;transition:border-color .15s,background .15s}.app-page__btn:hover{border-color:#94a3b88c;background:#1e293be6}@keyframes app-fade-in{0%{opacity:0}to{opacity:1}}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#374151;border-radius:3px}::selection{background:#3b82f64d}.auth-page{position:relative;width:100%;min-height:100dvh;display:flex;align-items:center;justify-content:center;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;background:#0a0a16;padding:var(--app-pad-block) var(--app-pad-inline);padding-bottom:max(var(--app-pad-block),env(safe-area-inset-bottom));padding-top:max(var(--app-pad-block),env(safe-area-inset-top))}.auth-page__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 80% 60% at 50% 40%,rgba(59,130,246,.08) 0%,transparent 70%),radial-gradient(ellipse 60% 50% at 30% 70%,rgba(168,85,247,.06) 0%,transparent 70%);pointer-events:none}.auth-page__card{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:clamp(18px,4vw,28px);padding:clamp(24px,5vw,40px) clamp(20px,4vw,36px);background:#0f172a99;border:1px solid rgba(51,65,85,.5);border-radius:16px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);width:100%;max-width:min(400px,100%)}.auth-page__header{text-align:center;display:flex;flex-direction:column;gap:4px}.auth-page__title{font-size:clamp(1.5rem,5vw,2rem);font-weight:900;letter-spacing:-.03em;color:#f1f5f9}.auth-page__subtitle{font-size:clamp(13px,2.5vw,14px);color:#64748b}.auth-page__form{width:100%;display:flex;flex-direction:column;gap:16px}.auth-page__error{padding:10px 12px;border-radius:8px;background:#ef44441f;color:#fca5a5;font-size:13px;text-align:center}.auth-page__label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:#94a3b8}.auth-page__input{padding:10px 12px;border-radius:8px;border:1px solid rgba(51,65,85,.6);background:#0f172acc;color:#f1f5f9;font-size:15px;outline:none;transition:border-color .15s}.auth-page__input:focus{border-color:#3b82f699}.auth-page__btn{padding:12px;min-height:44px;border-radius:10px;border:none;background:linear-gradient(135deg,#3b82f6,#6366f1);color:#fff;font-size:clamp(14px,2.5vw,15px);font-weight:700;cursor:pointer;transition:opacity .15s;margin-top:4px}.auth-page__btn:hover:not(:disabled){opacity:.9}.auth-page__btn:disabled{opacity:.5;cursor:not-allowed}.auth-page__footer{font-size:13px;color:#64748b}.auth-page__footer a{color:#93c5fd;text-decoration:none}.auth-page__footer a:hover{text-decoration:underline}.lobby-page{position:relative;width:100%;min-height:100dvh;background:#0a0a16;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch}.lobby-page__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 80% 60% at 50% 40%,rgba(59,130,246,.06) 0%,transparent 70%),radial-gradient(ellipse 60% 50% at 70% 30%,rgba(168,85,247,.04) 0%,transparent 70%);pointer-events:none}.lobby-page__content{position:relative;z-index:1;width:100%;max-width:min(920px,var(--app-max-content, 100%));margin:0 auto;padding:clamp(20px,4vw,40px) clamp(16px,3vw,28px);padding-bottom:max(clamp(20px,4vw,40px),env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:clamp(18px,3vw,24px)}.lobby-page__header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}@media (max-width: 520px){.lobby-page__header{flex-direction:column;align-items:flex-start}}.lobby-page__title{font-size:clamp(1.35rem,4.5vw,1.75rem);font-weight:900;color:#f1f5f9;letter-spacing:-.03em}.lobby-page__user-bar{display:flex;align-items:center;gap:12px}.lobby-page__user-name{font-size:14px;font-weight:600;color:#94a3b8}.lobby-page__profile-btn{padding:6px 12px;border-radius:6px;border:1px solid rgba(51,65,85,.6);background:transparent;color:#94a3b8;font-size:12px;cursor:pointer;transition:border-color .15s}.lobby-page__profile-btn:hover{border-color:#60a5fa73;color:#bfdbfe}.lobby-page__logout-btn{padding:6px 12px;border-radius:6px;border:1px solid rgba(51,65,85,.6);background:transparent;color:#94a3b8;font-size:12px;cursor:pointer;transition:border-color .15s}.lobby-page__logout-btn:hover{border-color:#ef444480;color:#fca5a5}.lobby-page__hero{position:relative;width:100%;max-width:640px;margin:0 auto;border-radius:12px;overflow:hidden;line-height:0}.lobby-page__hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:42%;background:linear-gradient(to bottom,transparent,#0a0a16);pointer-events:none}.lobby-page__hero-img{width:100%;height:auto;display:block;vertical-align:bottom}.lobby-page__actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.lobby-page__create-btn{padding:10px 20px;border-radius:10px;border:none;background:linear-gradient(135deg,#3b82f6,#6366f1);color:#fff;font-size:14px;font-weight:700;cursor:pointer;transition:opacity .15s}.lobby-page__create-btn:hover{opacity:.9}.lobby-page__local-btn{padding:10px 20px;border-radius:10px;border:1px solid rgba(51,65,85,.6);background:transparent;color:#94a3b8;font-size:14px;font-weight:600;cursor:pointer;transition:border-color .15s}.lobby-page__local-btn:hover{border-color:#94a3b880;color:#e2e8f0}.lobby-page__tutorial-btn{padding:10px 20px;border-radius:10px;border:none;background:linear-gradient(135deg,#0d9488,#059669);color:#ecfdf5;font-size:14px;font-weight:700;cursor:pointer;transition:opacity .15s}.lobby-page__tutorial-btn:hover{opacity:.92}.lobby-page__create-panel{padding:20px;border-radius:12px;background:#0f172a99;border:1px solid rgba(51,65,85,.5);display:flex;flex-direction:column;gap:16px}.lobby-page__create-title{font-size:16px;font-weight:700;color:#e2e8f0}.lobby-page__error{padding:10px 12px;border-radius:8px;background:#ef44441f;color:#fca5a5;font-size:13px}.lobby-page__create-row{display:flex;gap:16px;flex-wrap:wrap;align-items:flex-end}.lobby-page__elo-line{flex:1 1 100%;margin:0;padding-top:4px;font-size:13px;color:#94a3b8}.lobby-page__elo-line strong{color:#e2e8f0;font-variant-numeric:tabular-nums}@media (max-width: 560px){.lobby-page__create-row{flex-direction:column}.lobby-page__create-label{min-width:100%}}.lobby-page__create-label{flex:1;display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:#94a3b8}.lobby-page__select{padding:8px 10px;border-radius:8px;border:1px solid rgba(51,65,85,.6);background:#0f172acc;color:#f1f5f9;font-size:14px;outline:none}.lobby-page__confirm-btn{align-self:flex-start;padding:10px 20px;border-radius:10px;border:none;background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;font-size:14px;font-weight:700;cursor:pointer}.lobby-page__confirm-btn:disabled{opacity:.5;cursor:not-allowed}.lobby-page__table-wrap{display:flex;flex-direction:column;gap:12px;min-width:0;overflow-x:auto;-webkit-overflow-scrolling:touch}.lobby-page__section-title{font-size:18px;font-weight:700;color:#e2e8f0}.lobby-page__empty{font-size:14px;color:#64748b;padding:24px;text-align:center;background:#0f172a66;border-radius:10px;border:1px dashed rgba(51,65,85,.5)}.lobby-page__table{width:100%;min-width:520px;border-collapse:collapse;font-size:clamp(13px,2vw,14px)}.lobby-page__table th{text-align:left;padding:10px 12px;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#64748b;border-bottom:1px solid rgba(51,65,85,.4)}.lobby-page__table td{padding:12px;color:#cbd5e1;border-bottom:1px solid rgba(51,65,85,.2)}.lobby-page__table tbody tr:hover{background:#3b82f60a}.lobby-page__join-btn{padding:6px 16px;border-radius:6px;border:none;background:#3b82f6;color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:opacity .15s}.lobby-page__join-btn:hover:not(:disabled){opacity:.85}.lobby-page__join-btn:disabled{opacity:.5;cursor:not-allowed}.lobby-page__join-btn--waiting{background:transparent;border:1px solid rgba(51,65,85,.5);color:#94a3b8;cursor:default}.lobby-page__join-btn--spectate{background:transparent;border:1px solid rgba(168,85,247,.4);color:#c084fc}.lobby-page__join-btn--spectate:hover{background:#a855f71a;border-color:#a855f799}.lobby-page__chip-balance{padding:4px 12px;border-radius:20px;background:linear-gradient(135deg,#eab30826,#f59e0b1a);border:1px solid rgba(234,179,8,.3);color:#fbbf24;font-size:13px;font-weight:700;letter-spacing:.02em}.lobby-page__active-game-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px;padding:12px 16px;border-radius:10px;background:#3b82f61f;border:1px solid rgba(59,130,246,.35);color:#e2e8f0;font-size:14px;text-align:center}.lobby-page__active-game-text{flex:1 1 auto;min-width:200px}.lobby-page__active-game-rejoin{padding:8px 18px;border-radius:8px;border:none;background:#3b82f6;color:#fff;font-weight:800;font-size:13px;cursor:pointer}.lobby-page__active-game-rejoin:hover{background:#2563eb}.lobby-page__no-chips-banner{padding:12px 16px;border-radius:10px;background:#ef44441a;border:1px solid rgba(239,68,68,.25);color:#fca5a5;font-size:14px;text-align:center}.lobby-page__buy-link{background:none;border:none;color:#fbbf24;font-weight:700;font-size:14px;cursor:pointer;text-decoration:underline;padding:0}.lobby-page__buy-link:hover{color:#fde68a}.title-screen{position:relative;width:100%;min-height:100dvh;display:flex;align-items:center;justify-content:center;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;background:#0a0a16;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}.title-screen__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 80% 60% at 50% 40%,rgba(59,130,246,.08) 0%,transparent 70%),radial-gradient(ellipse 60% 50% at 30% 70%,rgba(168,85,247,.06) 0%,transparent 70%),radial-gradient(ellipse 60% 50% at 70% 30%,rgba(239,68,68,.05) 0%,transparent 70%);pointer-events:none}.title-screen__content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:clamp(24px,5vw,42px);padding:clamp(16px,4vw,40px);width:100%;max-width:min(960px,100%)}.title-screen__header{text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px}.title-screen__icon-row{display:flex;gap:16px;margin-bottom:12px}.title-screen__piece{font-size:36px;color:#e2e8f0;text-shadow:0 0 20px rgba(148,163,184,.4);animation:title-float 3s ease-in-out infinite}.title-screen__piece:nth-child(1){animation-delay:0s}.title-screen__piece:nth-child(2){animation-delay:.3s}.title-screen__piece:nth-child(3){animation-delay:.6s;color:#ef4444;text-shadow:0 0 24px rgba(239,68,68,.5)}.title-screen__piece:nth-child(4){animation-delay:.9s}.title-screen__piece:nth-child(5){animation-delay:1.2s}@keyframes title-float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.title-screen__title{font-size:clamp(2rem,8vw,3.25rem);font-weight:900;letter-spacing:-.03em;color:#f1f5f9;line-height:1.05;text-shadow:0 2px 30px rgba(0,0,0,.6)}.title-screen__subtitle{font-size:16px;font-weight:500;letter-spacing:.15em;text-transform:uppercase;color:#64748b}.title-screen__time-hint{margin:0 0 12px;font-size:14px;color:#64748b;text-align:center;max-width:320px}.title-screen__modes{display:flex;flex-direction:row;flex-wrap:wrap;gap:clamp(12px,3vw,20px);justify-content:center;width:100%}@media (max-width: 540px){.title-screen__modes{flex-direction:column;align-items:stretch}}.title-screen__mode-btn{display:flex;flex-direction:column;align-items:center;gap:8px;padding:clamp(20px,4vw,28px) clamp(20px,5vw,36px);border:2px solid rgba(148,163,184,.15);border-radius:16px;background:#0f172ab3;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;transition:all .2s ease;flex:1 1 200px;max-width:320px;min-width:min(100%,200px)}.title-screen__mode-btn:hover{border-color:#94a3b859;background:#1e293bb3;transform:translateY(-3px);box-shadow:0 8px 32px #0006}.title-screen__mode-btn--hotseat:hover{border-color:#22c55e66;box-shadow:0 8px 32px #22c55e1f}.title-screen__mode-btn--computer:hover{border-color:#3b82f666;box-shadow:0 8px 32px #3b82f61f}.title-screen__mode-icon{font-size:36px}.title-screen__mode-label{font-size:clamp(1rem,3vw,1.25rem);font-weight:700;color:#f1f5f9}.title-screen__mode-desc{font-size:12px;color:#64748b;text-align:center}.title-screen__difficulty{display:flex;flex-direction:column;align-items:center;gap:20px;animation:fade-in .3s ease}@keyframes fade-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.title-screen__section-title{font-size:18px;font-weight:700;color:#94a3b8;letter-spacing:.05em;text-transform:uppercase}.title-screen__diff-options{display:flex;flex-wrap:wrap;gap:clamp(10px,2vw,14px);justify-content:center;width:100%}.title-screen__diff-btn{display:flex;flex-direction:column;align-items:center;gap:6px;padding:clamp(14px,3vw,20px) clamp(12px,2.5vw,24px);border:2px solid rgba(148,163,184,.15);border-radius:12px;background:#0f172a99;cursor:pointer;transition:all .2s ease;flex:1 1 140px;min-width:min(100%,140px);max-width:220px}.title-screen__diff-btn:hover{border-color:#94a3b84d;background:#1e293b99}.title-screen__diff-btn--active{border-color:#6366f199;background:#6366f11a;box-shadow:0 0 20px #6366f11a}.title-screen__diff-btn--active.title-screen__diff-btn--easy{border-color:#22c55e99;background:#22c55e1a;box-shadow:0 0 20px #22c55e1a}.title-screen__diff-btn--active.title-screen__diff-btn--medium{border-color:#f9731699;background:#f973161a;box-shadow:0 0 20px #f973161a}.title-screen__diff-btn--active.title-screen__diff-btn--hard{border-color:#ef444499;background:#ef44441a;box-shadow:0 0 20px #ef44441a}.title-screen__diff-btn--active.title-screen__diff-btn--extreme{border-color:#a855f7b3;background:#a855f71f;box-shadow:0 0 24px #a855f726,inset 0 0 30px #a855f70d}.title-screen__diff-label{font-size:18px;font-weight:700;color:#f1f5f9}.title-screen__diff-desc{font-size:11px;color:#64748b;text-align:center;max-width:160px;line-height:1.4}.title-screen__actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:8px;justify-content:center}.title-screen__back-btn{padding:10px 22px;border:1px solid rgba(148,163,184,.2);border-radius:10px;background:transparent;color:#94a3b8;font-size:14px;font-weight:600;cursor:pointer;transition:all .15s}.title-screen__back-btn:hover{border-color:#94a3b866;color:#e2e8f0}.title-screen__start-btn{padding:10px 36px;border:none;border-radius:10px;background:linear-gradient(135deg,#3b82f6,#6366f1);color:#fff;font-size:16px;font-weight:700;cursor:pointer;transition:all .15s;box-shadow:0 4px 16px #3b82f64d}.title-screen__start-btn:hover{transform:translateY(-2px);box-shadow:0 6px 24px #3b82f666}.game-board{display:flex;justify-content:center;align-items:center;width:auto;height:auto;aspect-ratio:1;max-width:100%;max-height:100%;min-width:0;min-height:0;flex-shrink:1;position:relative;overflow:hidden;border-radius:8px;transform:translateZ(0)}.game-board [data-square]>div{min-width:0;min-height:0;box-sizing:border-box}.game-board [data-square]:has([data-piece][style*=translate]){position:relative;z-index:15;overflow:visible!important}.game-board__badge-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;grid-template-columns:repeat(8,1fr);grid-template-rows:repeat(8,1fr);pointer-events:none;z-index:20;container-type:inline-size}.game-board__badge-cell{position:relative;overflow:visible}@keyframes piece-bounce{0%,to{transform:translateY(0)}45%{transform:translateY(-7px)}65%{transform:translateY(-5px)}}.piece-move-badge{position:absolute;top:max(.4cqw,2px);right:max(.4cqw,2px);width:max(1.9cqw,13px);height:max(1.9cqw,13px);border-radius:50%;background:var(--badge-color, #3b82f6);color:#fff;font-size:max(1cqw,7px);font-weight:800;font-family:system-ui,-apple-system,sans-serif;display:flex;align-items:center;justify-content:center;pointer-events:none;box-shadow:0 0 0 max(.2cqw,1.5px) #000c,0 1px 4px #00000080;text-shadow:0 1px 2px rgba(0,0,0,.5);z-index:3}@keyframes armor-pulse{0%,to{filter:saturate(.15) brightness(1.4) contrast(1.1) drop-shadow(0 0 3px #94a3b8)}50%{filter:saturate(.15) brightness(1.7) contrast(1.1) drop-shadow(0 0 7px #e2e8f0)}}.phase-indicator{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:8px 10px;background:#1e1e2e;border-radius:8px;flex-shrink:0}.phase-indicator__row{display:flex;align-items:center;gap:6px}.phase-indicator__dot{width:10px;height:10px;border-radius:50%}.phase-indicator__dot--white{background:#f1f5f9;border:1px solid #94a3b8}.phase-indicator__dot--black{background:#334155;border:1px solid #64748b}.phase-indicator__player{font-size:clamp(13px,2.2vw,15px);font-weight:700;color:#e2e8f0}.phase-indicator__phase{font-size:clamp(11px,2vw,13px);color:#9ca3af}.phase-indicator__card{font-size:clamp(11px,2vw,13px);color:#60a5fa;font-weight:500}.clock-bar{display:flex;flex-direction:column;gap:8px;width:100%}.clock-bar__meta{display:flex;justify-content:center}.clock-bar__mode{font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#64748b}.clock-bar__row{display:flex;flex-direction:column;gap:6px}.clock-bar__face{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-radius:8px;background:#0f172aa6;border:1px solid rgba(51,65,85,.6);transition:border-color .15s ease,box-shadow .15s ease}.clock-bar__face--active{border-color:#3b82f68c;box-shadow:0 0 0 1px #3b82f633}.clock-bar__label{font-size:12px;font-weight:600;color:#94a3b8}.clock-bar__face--top .clock-bar__label{color:#e2e8f0}.clock-bar__time{font-variant-numeric:tabular-nums;font-size:clamp(1rem,2.8vw,1.35rem);font-weight:700;letter-spacing:.02em;color:#f1f5f9}@media (min-width: 2000px){.clock-bar__time{font-size:clamp(1.25rem,1.1vw,1.75rem)}}.clock-bar__face--active .clock-bar__time{color:#93c5fd}.move-log{display:flex;flex-direction:column;flex:1;min-height:0;border-radius:8px;background:#1e1e2e;overflow:hidden}.move-log--compact{flex:1;min-height:0;border-radius:0 0 6px 6px}.move-log__header{padding:8px 12px;font-size:clamp(10px,1.8vw,11px);font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#9ca3af;border-bottom:1px solid rgba(255,255,255,.06);flex-shrink:0}.move-log__entries{flex:1;overflow-y:auto;padding:6px 8px;min-height:0}.move-log__empty{font-size:12px;color:#6b7280;padding:8px;text-align:center;font-style:italic}.move-log__entry{display:flex;align-items:center;gap:4px;padding:3px 4px;font-size:clamp(11px,2vw,12px);color:#d1d5db;border-radius:4px}.move-log__entry:hover{background:#ffffff0a}.move-log__turn{color:#6b7280;min-width:20px}.move-log__player{width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:700}.move-log__player--white{background:#f1f5f9;color:#1e293b}.move-log__player--black{background:#334155;color:#f1f5f9}.move-log__card{font-size:14px}.move-log__move{font-family:monospace;font-size:11px}.move-log__capture{color:#ef4444;font-size:13px}.move-log__entry--discard{background:#ef44440f}.move-log__discard-icon{color:#f87171;font-size:13px}.move-log__discard-text{font-size:11px;color:#fca5a5}.move-log__entry--draft{background:#4ade800f}.move-log__draft-icon{color:#4ade80;font-size:14px;font-weight:700}.move-log__draft-text{font-size:11px;color:#86efac}.move-log__entry--consume{background:#94a3b814}.move-log__consume-icon{font-size:13px}.move-log__consume-text{font-size:11px;color:#cbd5e1}.move-log__entry--armor-block{background:#94a3b81f}.move-log__entry--promotion{background:#facc1514}.move-log__promotion-icon{color:#facc15;font-size:13px}.move-log__promotion-text{font-size:11px;color:#fde68a}.move-log__entry--play-hand{align-items:flex-start;flex-wrap:wrap;gap:4px 6px;background:#6366f114}.move-log__play-hand-variant{font-size:10px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#818cf8;flex-shrink:0}.move-log__play-hand-label{flex:1 1 100%;margin-left:22px;font-size:11px;color:#c7d2fe;line-height:1.35}.chess-card{position:relative;border-radius:5px;background:#fff;box-shadow:0 1.25px 5px #00000026;display:flex;flex-direction:column;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none;transition:transform .15s ease,box-shadow .15s ease;overflow:hidden;flex-shrink:0}.chess-card--tiny{width:var(--chess-card-tiny-w);height:auto;aspect-ratio:56 / 80;font-size:clamp(5px,min(1.125vw,1.25vmin),7px);border-radius:4px}.chess-card--small{width:var(--chess-card-sm-w);height:auto;aspect-ratio:112 / 160;font-size:clamp(6px,min(1.5vw,1.5vmin),10px)}.chess-card--medium{width:var(--chess-card-md-w);height:auto;aspect-ratio:100 / 140;font-size:clamp(6px,min(1.375vw,1.45vmin),9.5px)}.chess-card--large{width:var(--chess-card-lg-w);height:auto;aspect-ratio:130 / 182;font-size:clamp(7px,min(1.625vw,1.75vmin),11px)}@media (max-width: 1199px){.chess-card--small,.chess-card--medium,.chess-card--large{aspect-ratio:56 / 80;font-size:clamp(5px,min(1.125vw,1.25vmin),7px);border-radius:4px}}@media (max-width: 899px){.game-view__holdem-lower-third .chess-card--small,.game-view__holdem-lower-third .chess-card--medium,.game-view__holdem-lower-third .chess-card--large{border-radius:5px;font-size:clamp(8px,2.2vw,13px)}.game-view__holdem-lower-third .chess-card__piece-icon{font-size:clamp(28px,8.5vw,52px);line-height:1}.game-view__holdem-lower-third .chess-card__castle-flag--center{width:clamp(28px,8.5vw,52px);height:clamp(38px,11.5vw,70px)}.game-view__holdem-lower-third .player-sidebar--bottom .chess-card__piece-icon{font-size:clamp(38px,12vw,72px);line-height:1}.game-view__holdem-lower-third .player-sidebar--bottom .chess-card__castle-flag--center{width:clamp(38px,12vw,72px);height:clamp(50px,16vw,96px)}.game-view__holdem-lower-third .chess-card--small .chess-card__piece-name,.game-view__holdem-lower-third .chess-card--medium .chess-card__piece-name,.game-view__holdem-lower-third .chess-card--large .chess-card__piece-name{display:block;font-size:.75em}.game-view__holdem-lower-third .chess-card--small .chess-card__corner,.game-view__holdem-lower-third .chess-card--medium .chess-card__corner,.game-view__holdem-lower-third .chess-card--large .chess-card__corner{display:flex}}.chess-card--pawn-white{background:#fff;border:1.5px solid #1a1a1a}.chess-card--pawn-white .chess-card__piece-name{color:#1a1a1a}.chess-card--pawn-white .chess-card__accent-border{background:#fff}.chess-card--pawn-black{background:#1a1a1a;border:1.5px solid #e8e8e8}.chess-card--pawn-black .chess-card__piece-name{color:#e8e8e8}.chess-card--pawn-black .chess-card__accent-border{background:#fff}.chess-card--clickable{cursor:pointer}.chess-card--clickable:hover{transform:translateY(-2.5px);box-shadow:0 3.75px 10px #0003}.chess-card--selected{animation:card-select-rise .22s cubic-bezier(.34,1.56,.64,1) forwards;box-shadow:0 0 0 2px var(--card-accent),0 10px 20px #00000059;transition:box-shadow .15s ease}.chess-card--selected.chess-card--clickable:hover{transform:none}@keyframes card-select-rise{0%{transform:translateY(0)}to{transform:translateY(-15px)}}.chess-card--deselecting{animation:card-deselect-fall .2s cubic-bezier(.36,0,.66,-.3) forwards;transition:box-shadow .15s ease}@keyframes card-deselect-fall{0%{transform:translateY(-15px)}70%{transform:translateY(1.875px)}to{transform:translateY(0)}}.chess-card--disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.chess-card--locked{pointer-events:none;cursor:default;box-shadow:0 0 0 1.25px #f59e0bbf,0 2.5px 9px #f59e0b33}.chess-card--locked .chess-card__accent-border{background:#f59e0bd9}.chess-card__corner{position:absolute;display:flex;align-items:center;justify-content:center}.chess-card__corner--top{top:1.875px;left:3.125px}.chess-card__corner--bottom{bottom:1.875px;right:3.125px;transform:rotate(180deg)}.chess-card__corner-icon{font-size:.85em;color:var(--card-accent)}.chess-card--tiny .chess-card__corner{display:none}.chess-card__center{display:flex;flex-direction:column;align-items:center;gap:1.25px}.chess-card__castle-flag{display:block;flex-shrink:0;color:var(--card-accent)}.chess-card__castle-flag--center{width:2.6em;height:3.45em}.chess-card__castle-flag--corner{width:.95em;height:1.25em}.chess-card--tiny .chess-card__castle-flag--center{width:2em;height:2.65em}.chess-card--small .chess-card__castle-flag--center{width:3em;height:4em}.chess-card__piece-icon{font-size:2.6em;color:var(--card-accent);line-height:1}.chess-card--tiny .chess-card__piece-icon{font-size:2em}.chess-card--small .chess-card__piece-icon{font-size:3em}.chess-card__piece-name{font-size:.62em;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:#374151}.chess-card--tiny .chess-card__piece-name{display:none}.chess-card__corner-icon{font-size:1em;color:var(--card-accent)}.chess-card--small .chess-card__corner--top{top:3.125px;left:5px}.chess-card--small .chess-card__corner--bottom{bottom:3.125px;right:5px}.chess-card__accent-border{position:absolute;left:0;right:0;height:1.875px;background:var(--card-accent)}.chess-card__accent-border--top{top:0}.chess-card__accent-border--bottom{bottom:0}.chess-card--tiny .chess-card__accent-border{height:1.25px}.chess-card--small .chess-card__accent-border{height:3.125px}.chess-card--back{background:#1e293b;border:1px solid #334155}.chess-card__back-pattern{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:repeating-linear-gradient(45deg,transparent,transparent 2.5px,rgba(255,255,255,.03) 2.5px,rgba(255,255,255,.03) 5px)}.chess-card__back-icon{font-size:1.6em;color:#ffffff26}.chess-card--tiny .chess-card__back-icon{font-size:1.2em}.chess-card--discard-pending{animation:discard-teaser .9s linear infinite!important}.chess-card--discard-pending:before{content:"✕";position:absolute;top:0;right:0;bottom:0;left:0;z-index:10;border-radius:inherit;background:repeating-linear-gradient(-45deg,#ef44448c,#ef44448c 3.75px,#000000b3 3.75px,#000000b3 7.5px);display:flex;align-items:center;justify-content:center;font-size:2.4em;font-weight:900;color:#ffffffeb;text-shadow:0 0 5px rgba(239,68,68,1),0 1.25px 2.5px rgba(0,0,0,.8);animation:discard-overlay-in .06s ease forwards}@keyframes discard-overlay-in{0%{opacity:0}to{opacity:1}}.chess-card--play-pending{animation:play-teaser .9s linear infinite!important;transition:box-shadow .15s ease}@keyframes play-teaser{0%{transform:translateY(-15px) translate(0) rotate(0)}12%{transform:translateY(-21.25px) translate(1.25px) rotate(2deg)}25%{transform:translateY(-12.5px) translate(-1.875px) rotate(-2deg)}40%{transform:translateY(-20px) translate(1.25px) rotate(1.5deg)}54%{transform:translateY(-13.125px) translate(-1.25px) rotate(-1.5deg)}67%{transform:translateY(-19.375px) translate(.625px) rotate(1deg)}80%{transform:translateY(-13.75px) translate(-.625px) rotate(-1deg)}91%{transform:translateY(-18.125px) translate(.625px) rotate(.5deg)}to{transform:translateY(-15px) translate(0) rotate(0)}}@keyframes discard-teaser{0%{transform:translateY(-15px) translate(0) rotate(0)}12%{transform:translateY(-14.375px) translate(5.625px) rotate(4.5deg)}25%{transform:translateY(-15px) translate(-3.125px) rotate(-2.5deg)}40%{transform:translateY(-14.375px) translate(4.375px) rotate(3.5deg)}54%{transform:translateY(-15px) translate(-1.875px) rotate(-1.5deg)}67%{transform:translateY(-14.375px) translate(3.75px) rotate(3deg)}80%{transform:translateY(-15px) translate(-1.25px) rotate(-1deg)}91%{transform:translateY(-14.375px) translate(2.5px) rotate(2deg)}to{transform:translateY(-15px) translate(0) rotate(0)}}.chess-card--drawing{animation:card-draw-from-deck .46s cubic-bezier(.22,.61,.36,1) both;position:relative;z-index:50}@keyframes card-draw-from-deck{0%{transform:translate(var(--draw-from-x, -212.5px),var(--draw-from-y, -112.5px)) rotate(-12deg) scale(.5);opacity:0}50%{opacity:1}to{transform:translate(0) rotate(0) scale(1);opacity:1}}@media (min-width: 1921px){.chess-card{border-radius:8px;box-shadow:0 2px 8px #00000026}.chess-card--tiny{font-size:clamp(8px,min(1.8vw,2vmin),11px);border-radius:6px}.chess-card--small{font-size:clamp(10px,min(2.4vw,2.5vmin),16px)}.chess-card--medium{font-size:clamp(10px,min(2.2vw,2.3vmin),15px)}.chess-card--large{font-size:clamp(11px,min(2.6vw,2.8vmin),18px)}.chess-card--clickable:hover{transform:translateY(-4px);box-shadow:0 6px 16px #0003}.chess-card--selected{box-shadow:0 0 0 3px var(--card-accent),0 16px 32px #00000059}.chess-card--locked{box-shadow:0 0 0 2px #f59e0bbf,0 4px 14px #f59e0b33}.chess-card__corner--top{top:3px;left:5px}.chess-card__corner--bottom{bottom:3px;right:5px}.chess-card__center{gap:2px}.chess-card--small .chess-card__corner--top{top:5px;left:8px}.chess-card--small .chess-card__corner--bottom{bottom:5px;right:8px}.chess-card__accent-border{height:3px}.chess-card--tiny .chess-card__accent-border{height:2px}.chess-card--small .chess-card__accent-border{height:5px}.chess-card--back{border:2px solid #334155}.chess-card__back-pattern{background:repeating-linear-gradient(45deg,transparent,transparent 4px,rgba(255,255,255,.03) 4px,rgba(255,255,255,.03) 8px)}.chess-card--discard-pending:before{background:repeating-linear-gradient(-45deg,#ef44448c,#ef44448c 6px,#000000b3 6px,#000000b3 12px);text-shadow:0 0 8px rgba(239,68,68,1),0 2px 4px rgba(0,0,0,.8)}@keyframes card-select-rise{0%{transform:translateY(0)}to{transform:translateY(-24px)}}@keyframes card-deselect-fall{0%{transform:translateY(-24px)}70%{transform:translateY(3px)}to{transform:translateY(0)}}@keyframes play-teaser{0%{transform:translateY(-24px) translate(0) rotate(0)}12%{transform:translateY(-34px) translate(2px) rotate(2deg)}25%{transform:translateY(-20px) translate(-3px) rotate(-2deg)}40%{transform:translateY(-32px) translate(2px) rotate(1.5deg)}54%{transform:translateY(-21px) translate(-2px) rotate(-1.5deg)}67%{transform:translateY(-31px) translate(1px) rotate(1deg)}80%{transform:translateY(-22px) translate(-1px) rotate(-1deg)}91%{transform:translateY(-29px) translate(1px) rotate(.5deg)}to{transform:translateY(-24px) translate(0) rotate(0)}}@keyframes discard-teaser{0%{transform:translateY(-24px) translate(0) rotate(0)}12%{transform:translateY(-23px) translate(9px) rotate(4.5deg)}25%{transform:translateY(-24px) translate(-5px) rotate(-2.5deg)}40%{transform:translateY(-23px) translate(7px) rotate(3.5deg)}54%{transform:translateY(-24px) translate(-3px) rotate(-1.5deg)}67%{transform:translateY(-23px) translate(6px) rotate(3deg)}80%{transform:translateY(-24px) translate(-2px) rotate(-1deg)}91%{transform:translateY(-23px) translate(4px) rotate(2deg)}to{transform:translateY(-24px) translate(0) rotate(0)}}@keyframes card-draw-from-deck{0%{transform:translate(var(--draw-from-x, -340px),var(--draw-from-y, -180px)) rotate(-12deg) scale(.5);opacity:0}50%{opacity:1}to{transform:translate(0) rotate(0) scale(1);opacity:1}}}@media (min-width: 2200px){.chess-card--small{width:min(128px,min(7vw,10vmin));height:auto;aspect-ratio:112 / 160;font-size:clamp(14px,.85vw,18px)}}.card-hand{display:flex;align-items:center;gap:5px;min-width:0}.card-hand__label{font-size:7.5px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#9ca3af;flex-shrink:0}.card-hand__cards{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:flex-end;gap:3.75px;min-width:0;max-width:100%;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch;scrollbar-width:thin;padding-top:20px;margin-top:-20px;padding-bottom:2.5px}.card-hand__lead{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:flex-end;gap:3.75px;flex:1 1 auto;min-width:0}.card-hand__hole-row{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:flex-end;gap:3.75px;min-width:0;flex:0 1 auto}.card-hand__hole-row .chess-card{align-self:flex-end}.card-hand__empty{color:#6b7280;font-size:7.5px;font-style:italic;padding:5px}.card-hand__prefix-sep{width:1px;align-self:stretch;min-height:1.5625rem;background:#374151d9;flex-shrink:0;margin:0 3.75px}.card-hand__pawn-pair{display:flex;flex-direction:column;align-items:center;gap:2.5px;flex-shrink:0}.card-hand__pawn-pair-label{font-size:.625rem;text-transform:uppercase;letter-spacing:.08em;color:#9ca3af;font-weight:600}.card-hand__pawn-pair-row{display:flex;flex-direction:row;gap:5px;align-items:center;justify-content:center;flex-wrap:nowrap}.card-hand__pawn-pair-row--interactive{cursor:pointer}.card-hand__pawn-pair-row--disabled{opacity:.42;filter:grayscale(.25)}.card-hand__actions{display:flex;flex-direction:row;align-items:stretch;flex-shrink:0;gap:clamp(2px,.5vw,5px)}.card-hand__divider{width:1px;align-self:stretch;min-height:1.5625rem;background:#374151;flex-shrink:0;margin:0 2.5px}.card-hand__action-card{position:relative;width:var(--chess-card-sm-w);height:auto;aspect-ratio:112 / 160;border-radius:6px;border:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;cursor:pointer;flex-shrink:0;transition:transform .15s ease,box-shadow .15s ease,opacity .15s;overflow:hidden;box-shadow:0 1.25px 5px #00000040}@media (max-width: 1199px){.card-hand__action-card{aspect-ratio:56 / 80;border-radius:4px}}@media (max-width: 899px){.card-hand{gap:4px}.card-hand__cards{gap:3px;padding-bottom:1px}.card-hand__label{font-size:6px}.card-hand__divider,.card-hand__prefix-sep{min-height:1.5rem;margin:0 2px}.card-hand__pawn-pair{gap:1px}.card-hand__pawn-pair-label{font-size:.5rem}.card-hand__pawn-pair-row{gap:3px}.game-view__holdem-lower-third .card-hand__action-card{border-radius:6px;gap:6px}.game-view__holdem-lower-third .card-hand__action-icon{font-size:clamp(16px,5vw,26px)}.game-view__holdem-lower-third .card-hand__action-label{font-size:clamp(7px,2vw,10px)}}.card-hand__action-card:disabled{opacity:.35;cursor:not-allowed}.card-hand__action-card:not(:disabled):hover{transform:translateY(-2.5px);box-shadow:0 3.75px 10px #00000059}.card-hand__action-card--play{background:#1d4ed8;color:#fff}.card-hand__action-card--play:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1.875px;background:#60a5fa}.card-hand__action-card--discard{background:#991b1b;color:#fff}.card-hand__action-card--discard:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1.875px;background:#f87171}.card-hand__action-card--end-turn{background:#f59e0b;color:#1c1917}.card-hand__action-card--end-turn:after{content:"";position:absolute;bottom:0;left:0;right:0;height:1.875px;background:#fbbf24}.card-hand__action-icon{font-size:clamp(11.25px,min(3.125vw,3.75vmin),20px);line-height:1}.card-hand__action-label{font-size:clamp(6.25px,min(1.375vw,1.5vmin),8px);font-weight:700;text-transform:uppercase;letter-spacing:.06em}.card-hand__action-card--shake{animation:card-shake .4s ease-in-out}@keyframes card-shake{0%,to{transform:translate(0)}15%{transform:translate(-3.125px)}30%{transform:translate(2.5px)}45%{transform:translate(-1.875px)}60%{transform:translate(1.25px)}75%{transform:translate(-.625px)}}@media (min-width: 1921px){.card-hand{gap:8px}.card-hand__label{font-size:11px}.card-hand__cards{gap:6px;padding-bottom:4px}.card-hand__empty{font-size:12px;padding:8px}.card-hand__prefix-sep{min-height:2.5rem;margin:0 6px}.card-hand__pawn-pair{gap:4px}.card-hand__pawn-pair-label{font-size:.65rem}.card-hand__pawn-pair-row{gap:8px}.card-hand__divider{min-height:2.5rem;margin:0 4px}.card-hand__action-card{border-radius:10px;gap:8px;box-shadow:0 2px 8px #00000040}.card-hand__action-card:not(:disabled):hover{transform:translateY(-4px);box-shadow:0 6px 16px #00000059}.card-hand__action-card--play:after,.card-hand__action-card--discard:after,.card-hand__action-card--end-turn:after{height:3px}.card-hand__action-icon{font-size:clamp(18px,min(5vw,6vmin),32px)}.card-hand__action-label{font-size:clamp(10px,min(2.2vw,2.4vmin),13px)}@keyframes card-shake{0%,to{transform:translate(0)}15%{transform:translate(-5px)}30%{transform:translate(4px)}45%{transform:translate(-3px)}60%{transform:translate(2px)}75%{transform:translate(-1px)}}}.player-sidebar{display:flex;flex-direction:column;gap:clamp(4px,1vw,8px);padding:clamp(6px,1.2vw,10px) clamp(10px,2vw,16px);background:#1e1e2e;border-radius:10px;width:100%;flex-shrink:0;min-width:0;transition:box-shadow .2s}.player-sidebar--active{box-shadow:0 0 0 2px #60a5fa,0 0 20px #60a5fa26}.player-sidebar__header{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.player-sidebar__header-start{display:flex;align-items:center;gap:8px}.player-sidebar__header-mid{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.player-sidebar__info-btn{flex-shrink:0;width:36px;height:36px;min-width:36px;min-height:36px;border-radius:8px;border:1px solid rgba(148,163,184,.4);background:#ffffff0f;color:#94a3b8;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:background .15s,color .15s,border-color .15s}.player-sidebar__info-btn:hover{background:#ffffff1a;color:#e2e8f0;border-color:#94a3b88c}.player-sidebar__info-icon{display:block}.player-sidebar__indicator{width:10px;height:10px;border-radius:50%;flex-shrink:0}.player-sidebar__indicator--white{background:#f1f5f9;border:1px solid #94a3b8}.player-sidebar__indicator--black{background:#1e293b;border:1px solid #64748b}.player-sidebar__title{font-weight:700;font-size:clamp(13px,2.2vw,15px);color:#e2e8f0}.player-sidebar__turn-badge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;padding:2px 8px;border-radius:4px;background:#3b82f6;color:#fff}.player-sidebar__discard-badge{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;padding:2px 8px;border-radius:4px;background:#ef444426;color:#f87171}.player-sidebar__burn-badge{font-size:10px;font-weight:600;padding:2px 8px;border-radius:4px;background:#fb923c26;color:#fb923c}.player-sidebar__body{display:flex;align-items:center;gap:12px;min-width:0}.player-sidebar__hidden-hand{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#ffffff0a;border-radius:8px}.player-sidebar__hidden-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#9ca3af}.player-sidebar__hidden-count{font-size:13px;color:#d1d5db;font-weight:500}.player-sidebar__captured{display:flex;align-items:center;gap:4px;margin-left:auto}.player-sidebar__captured-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:#9ca3af}.player-sidebar__captured-pieces{display:flex;flex-wrap:wrap;gap:1px}.player-sidebar__captured-piece{font-size:16px;opacity:.75}@media (max-width: 899px){.player-sidebar{padding:4px 8px;gap:3px;border-radius:8px}.player-sidebar--active{box-shadow:0 0 0 1.5px #60a5fa,0 0 12px #60a5fa1f}.player-sidebar__header{gap:6px}.player-sidebar__title{font-size:clamp(11px,2.8vw,14px)}.player-sidebar__turn-badge,.player-sidebar__discard-badge,.player-sidebar__burn-badge{font-size:9px;padding:1px 6px}.player-sidebar__body{gap:6px}.player-sidebar__hidden-hand{padding:3px 8px;gap:4px;border-radius:6px}.player-sidebar__hidden-label{font-size:9px}.player-sidebar__hidden-count{font-size:11px}.player-sidebar__indicator{width:8px;height:8px}.player-sidebar__captured-piece{font-size:14px}}.hand-burst{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:300;pointer-events:none}.hand-burst__card{position:absolute;left:0;top:0;transform:translate(-50%);animation:hand-burst-fly .9s cubic-bezier(.22,.8,.32,1) var(--delay, 0ms) both;will-change:transform,opacity}@keyframes hand-burst-fly{0%{transform:translate(-50%) translateY(0) scale(1) rotate(0);opacity:1}38%{transform:translate(calc(-50% + var(--fan-x, 0px))) translateY(-80px) scale(1.3) rotate(var(--fan-rot, 0deg));opacity:1}55%{transform:translate(calc(-50% + var(--fan-x, 0px))) translateY(-95px) scale(1.42) rotate(var(--fan-rot, 0deg));opacity:.88}to{transform:translate(calc(-50% + var(--fan-x, 0px) * 2.2)) translateY(-160px) scale(.04) rotate(calc(var(--fan-rot, 0deg) * 5 + 30deg));opacity:0}}.game-chat{display:flex;flex-direction:column;min-height:0;flex:1;gap:8px;padding:8px 0}.game-chat__messages{flex:1;min-height:120px;max-height:min(40vh,320px);overflow-y:auto;padding:0 4px;font-size:13px;line-height:1.35}.game-view__log--modal .game-chat__messages{max-height:min(50vh,360px)}.game-chat__empty{margin:0;color:#64748b;font-style:italic}.game-chat__line{margin-bottom:8px;word-break:break-word}.game-chat__name{font-weight:700;color:#93c5fd;margin-right:6px}.game-chat__body{color:#e2e8f0}.game-chat__error{font-size:12px;color:#fca5a5;padding:0 4px}.game-chat__form{display:flex;gap:8px;align-items:center;padding:0 4px;flex-shrink:0}.game-chat__input{flex:1;min-width:0;padding:8px 10px;border-radius:6px;border:1px solid #334155;background:#0f172a;color:#f1f5f9;font-size:13px}.game-chat__input:focus{outline:none;border-color:#3b82f6}.game-chat__send{flex-shrink:0;padding:8px 14px;border:none;border-radius:6px;background:#3b82f6;color:#fff;font-weight:700;font-size:12px;cursor:pointer}.game-chat__send:disabled{opacity:.45;cursor:default}.game-chat__spectator-note{margin:0;padding:0 4px;font-size:12px;color:#94a3b8}.debug-toggle{position:fixed;bottom:max(12px,env(safe-area-inset-bottom));right:max(12px,env(safe-area-inset-right));z-index:200;padding:6px 14px;border:1px solid #4b5563;border-radius:6px;background:#1e1e2e;color:#9ca3af;font-size:12px;font-weight:600;cursor:pointer}.debug-toggle:hover{background:#2d2d3e;color:#e2e8f0}.debug-panel{position:fixed;bottom:max(12px,env(safe-area-inset-bottom));right:max(12px,env(safe-area-inset-right));z-index:200;width:min(320px,calc(100vw - 24px));max-height:min(80vh,100dvh - 24px);overflow-y:auto;background:#1a1a2e;border:1px solid #374151;border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:10px;font-size:12px;color:#d1d5db}.debug-panel__header{display:flex;justify-content:space-between;align-items:center;font-weight:700;font-size:13px;color:#e2e8f0}.debug-close{background:none;border:none;color:#9ca3af;cursor:pointer;font-size:18px;padding:0 4px}.debug-info{display:flex;flex-wrap:wrap;gap:8px;padding:8px;background:#ffffff0a;border-radius:6px}.debug-info span{font-size:11px;color:#9ca3af}.debug-player{padding:8px;background:#ffffff08;border-radius:6px}.debug-player__title{font-weight:700;font-size:12px;text-transform:capitalize;margin-bottom:4px;color:#e2e8f0}.debug-section{display:flex;gap:6px;align-items:baseline;margin-bottom:2px}.debug-label{font-weight:600;color:#9ca3af;min-width:50px}.debug-value{font-size:14px}.debug-add-cards{display:flex;gap:4px;margin-top:6px}.debug-add-btn{padding:2px 6px;border:1px solid #4b5563;border-radius:4px;background:#2d2d3e;color:#d1d5db;cursor:pointer;font-size:12px}.debug-add-btn:hover{background:#3d3d4e}.debug-actions{display:flex;flex-direction:column;gap:6px}.debug-seed-row{display:flex;gap:6px}.debug-seed-input{flex:1;padding:4px 8px;border:1px solid #4b5563;border-radius:4px;background:#2d2d3e;color:#e2e8f0;font-size:12px}.debug-btn-row{display:flex;gap:6px}.debug-btn{flex:1;padding:4px 10px;border:1px solid #4b5563;border-radius:4px;background:#2d2d3e;color:#d1d5db;cursor:pointer;font-size:11px;font-weight:600}.debug-btn:hover{background:#3d3d4e}.debug-value--burn{color:#fb923c}.debug-settings{flex-direction:column;gap:4px;padding:8px 0;border-bottom:1px solid #2d2d3e;margin-bottom:4px}.debug-settings__title{font-size:11px;font-weight:700;color:#9ca3af;text-transform:uppercase;letter-spacing:.06em;margin-bottom:4px}.debug-toggle-row{display:flex;align-items:center;gap:8px;font-size:12px;color:#d1d5db;cursor:pointer;padding:2px 0}.debug-toggle-row input[type=checkbox]{cursor:pointer;width:14px;height:14px}.debug-add-label{font-size:10px;color:#6b7280;margin-bottom:3px;text-transform:uppercase;letter-spacing:.05em}.debug-add-row{display:flex;flex-wrap:wrap;gap:4px}.deck-shuffle{display:flex;align-items:center;justify-content:center;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;user-select:none;--deck-card-w: var(--chess-card-sm-w)}.deck-shuffle__container{position:relative;width:0;height:0}.deck-card{position:absolute;display:inline-block;left:50%;top:50%;width:var(--deck-card-w);height:auto;aspect-ratio:112 / 160;background-color:#fff;border-radius:7.5px;box-shadow:0 .625px 1.25px #0000004d;cursor:default;will-change:transform}@media (max-width: 1199px){.deck-card{aspect-ratio:56 / 80}}@media (max-width: 899px){.game-view__holdem-lower-third .deck-shuffle{width:0;height:0;overflow:hidden}}.deck-card__back{position:absolute;background-image:url(/card-back.png);background-position:50% 50%;background-size:100% 100%;background-repeat:no-repeat;width:100%;height:100%;top:0;left:0;border-radius:7.5px}@media (min-width: 1921px){.deck-card{border-radius:6px;box-shadow:0 1px 2px #0000004d}.deck-card__back{border-radius:6px}}.deck-modal__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#0000008c;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;animation:deck-modal-backdrop-in .18s ease forwards}@keyframes deck-modal-backdrop-in{0%{opacity:0}to{opacity:1}}.deck-modal{background:#1a1a2e;border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:24px;box-shadow:0 24px 64px #000000b3;max-width:min(92vw,680px);max-height:80vh;overflow-y:auto;animation:deck-modal-in .2s cubic-bezier(.34,1.4,.64,1) forwards}@keyframes deck-modal-in{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.deck-modal::-webkit-scrollbar{width:4px}.deck-modal::-webkit-scrollbar-thumb{background:#374151;border-radius:2px}.deck-modal__header{display:flex;align-items:center;gap:10px;margin-bottom:20px}.deck-modal__title{font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.12em;color:#e2e8f0;flex:1}.deck-modal__count{font-size:11px;font-weight:700;color:#94a3b8;background:#2d2d44;padding:2px 10px;border-radius:20px}.deck-modal__close{background:none;border:none;color:#64748b;font-size:14px;cursor:pointer;padding:2px 6px;border-radius:4px;transition:color .12s,background .12s;line-height:1}.deck-modal__close:hover{color:#e2e8f0;background:#ffffff14}.deck-modal__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:20px 14px;align-items:end}.deck-modal__group{display:flex;flex-direction:column;align-items:center;gap:8px}.deck-modal__stack{position:relative;flex-shrink:0}.deck-modal__mini-card{position:absolute;left:0;width:56px;height:80px;border-radius:6px;background:#fff;border-top:4px solid var(--card-color, #6b7280);box-shadow:0 2px 6px #00000073;display:flex;align-items:center;justify-content:center;filter:drop-shadow(0 1px 2px rgba(0,0,0,.4))}.deck-modal__mini-icon{font-size:26px;color:var(--card-color, #6b7280);line-height:1;filter:drop-shadow(0 1px 2px rgba(0,0,0,.18))}.deck-modal__overflow{position:absolute;left:50%;transform:translate(-50%);background:#374151;color:#e2e8f0;font-size:10px;font-weight:800;padding:1px 7px;border-radius:10px;white-space:nowrap;margin-top:4px}.deck-modal__group-label{display:flex;flex-direction:column;align-items:center;gap:4px}.deck-modal__group-name{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8;text-align:center}.deck-modal__group-count{font-size:10px;font-weight:800;color:#fff;padding:1px 7px;border-radius:10px;line-height:1.4;text-shadow:0 1px 2px rgba(0,0,0,.4)}.deck-modal__empty{text-align:center;font-size:13px;color:#4b5563;font-style:italic;padding:24px 0}.poker-chip{position:relative;flex-shrink:0;border-radius:50%;box-sizing:border-box;font-size:clamp(16px,2.1vmin,22px);font-family:ui-serif,Times New Roman,Times,serif;border:6px solid var(--chip-accent, #64748b);box-shadow:inset 0 2px 6px #ffffff8c,inset 0 -3px 8px #0000002e,0 2px 6px #00000073;background:radial-gradient(circle at 32% 28%,#fffdf8,#f0e6d8 38%,#d8cbb8 72%,#c4b5a2)}.poker-chip--md{width:clamp(68px,8vmin,92px);height:clamp(68px,8vmin,92px);font-size:clamp(17px,2.1vmin,22px)}.poker-chip--sm{width:clamp(58px,7vmin,78px);height:clamp(58px,7vmin,78px);font-size:clamp(17px,2.1vmin,22px);border-width:5px}.poker-chip__face{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:4px;pointer-events:none}.poker-chip__center{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.05em;min-width:0}.poker-chip__piece{font-size:.42em;line-height:1;color:var(--chip-accent, #64748b);text-shadow:0 1px 0 rgba(255,255,255,.35)}.poker-chip__value{font-size:.58em;font-weight:900;letter-spacing:-.04em;color:#1c1917;text-shadow:0 1px 0 rgba(255,255,255,.35)}.poker-chip--sm .poker-chip__value{font-size:.54em}.poker-chip--sm .poker-chip__piece{font-size:.38em}.holdem-pot{--holdem-pot-chip-w: clamp(68px, 8vmin, 92px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:0;width:100%;pointer-events:none}.holdem-pot--compact{--holdem-pot-chip-w: clamp(58px, 7vmin, 78px);flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px 10px;padding:4px 8px}.holdem-pot__label{font-size:.55rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700;color:#ffffff73}.holdem-pot--compact .holdem-pot__label{flex:0 0 auto;font-size:.5rem}.holdem-pot__pile-wrap{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;min-height:calc(var(--holdem-pot-chip-w, 30px) * 1.1 + (min(var(--holdem-chip-count, 12),24) - 1) * 2.5px);min-width:min(100%,calc(var(--holdem-pot-chip-w, 30px) * (1.4 + min(var(--holdem-chip-count, 12),24) * .36)))}.holdem-pot--compact .holdem-pot__pile-wrap{flex-direction:row;min-height:0;align-items:center;gap:8px}.holdem-pot__pile{position:relative;width:min(100%,calc(var(--holdem-pot-chip-w, 30px) * (1.3 + min(var(--holdem-chip-count, 12),24) * .38)));height:calc(var(--holdem-pot-chip-w, 30px) * 1.05 + (min(var(--holdem-chip-count, 12),24) - 1) * 2.5px);display:flex;align-items:flex-end;justify-content:center}.holdem-pot--compact .holdem-pot__pile{width:min(100%,calc(var(--holdem-pot-chip-w, 28px) * (1.25 + min(var(--holdem-chip-count, 12),24) * .34)));height:calc(var(--holdem-pot-chip-w, 28px) * 1 + (min(var(--holdem-chip-count, 12),24) - 1) * 2.2px)}.holdem-pot__chip-slot{position:absolute;left:50%;bottom:0;transform:translate(calc(-50% + var(--pile-x, 0px))) translateY(var(--pile-y, 0px))}.holdem-pot__chip-slot--splash{animation:holdem-pot-chip-splash .85s cubic-bezier(.22,.82,.28,1) both;animation-delay:var(--delay, 0ms)}@keyframes holdem-pot-chip-splash{0%{opacity:0;transform:translate(calc(-50% + var(--from-x, -200px))) translateY(calc(var(--from-y, 80px) + var(--pile-y, 0px))) scale(.65) rotate(-18deg)}55%{opacity:1}to{opacity:1;transform:translate(calc(-50% + var(--pile-x, 0px))) translateY(var(--pile-y, 0px)) scale(1) rotate(0)}}@media (prefers-reduced-motion: reduce){.holdem-pot__chip-slot--splash{animation:none;opacity:1}}.holdem-pot__total{font-size:.65rem;font-weight:800;color:#ffffff8c;letter-spacing:.06em}.holdem-pot--compact .holdem-pot__total{font-size:.6rem}.hand-guide{height:100%;display:flex;flex-direction:column;overflow:hidden}.hand-guide__header{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8;padding:0 0 6px;border-bottom:1px solid #1e1e2e;flex-shrink:0}.hand-guide__list{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:4px;padding-top:6px}.hand-guide__entry{padding:4px 5px;border-radius:6px;background:#1a1a28;display:flex;flex-direction:column;gap:3px}.hand-guide__top-row{display:flex;justify-content:space-between;align-items:baseline}.hand-guide__name{font-size:10px;font-weight:700;color:#e2e8f0;letter-spacing:.02em}.hand-guide__moves{font-size:9px;font-weight:700;color:#a78bfa;white-space:nowrap}.hand-guide__cards{display:flex;gap:3px}.hand-guide__cards .chess-card--small{flex:1;min-width:0;width:0;height:auto;aspect-ratio:.7}.hand-guide__desc{font-size:9px;color:#94a3b8;line-height:1.2}.hand-guide__list::-webkit-scrollbar{width:4px}.hand-guide__list::-webkit-scrollbar-track{background:transparent}.hand-guide__list::-webkit-scrollbar-thumb{background:#334155;border-radius:2px}.community-cards{display:flex;flex-direction:column;align-items:center;gap:clamp(3.75px,.75vmin,6.25px);width:100%}.community-cards__label{font-size:.625rem;text-transform:uppercase;letter-spacing:.1em;color:#fff6;font-weight:600}.community-cards__street{font-size:.625rem;text-transform:uppercase;letter-spacing:.08em;color:#fff9;font-weight:700}.community-cards__row{--community-row-padding: clamp(.5rem, 2.8vw, 1.75rem);display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(2px,min(.55vw,.85vmin),5.5px);align-items:center;justify-items:center;width:100%;max-width:100%;min-width:0;margin-inline:auto;padding-inline:var(--community-row-padding);box-sizing:border-box}.community-cards__row>.chess-card{width:100%;max-width:100%;min-width:0;box-sizing:border-box}.community-cards__placeholder{width:100%;min-width:0;height:auto;aspect-ratio:112 / 160;border:1px dashed rgba(255,255,255,.1);border-radius:5px;box-sizing:border-box}@media (max-width: 1199px){.community-cards__placeholder{aspect-ratio:56 / 80;border-radius:4px}.community-cards__row{--community-row-padding: clamp(.4rem, 2.5vw, 1.45rem)}}@media (max-width: 899px){.community-cards{gap:clamp(2px,.5vmin,4px)}.community-cards__row{--community-row-padding: clamp(.25rem, 2vw, 1rem);gap:clamp(2px,.7vw,5px)}.community-cards__label,.community-cards__street{font-size:.5rem}.game-view__holdem-lower-third .community-cards__placeholder{border-radius:5px}}@media (min-width: 1921px){.community-cards{gap:clamp(6px,1.2vmin,10px)}.community-cards__label{font-size:.7rem}.community-cards__street{font-size:.75rem}.community-cards__row{--community-row-padding: clamp(.75rem, 2.2vw, 2.25rem);gap:clamp(4px,min(1.2vw,1.5vmin),10px)}.community-cards__placeholder{border:2px dashed rgba(255,255,255,.1);border-radius:8px}}.game-view__replay-bar{display:flex;align-items:center;justify-content:center;gap:1rem;flex-shrink:0;padding:8px 12px;border-bottom:1px solid rgba(255,255,255,.08);background:#00000040}.game-view__replay-step{font-size:.9rem;font-variant-numeric:tabular-nums;color:#e8e4dcd9}.game-view__replay-btn{padding:.35rem .75rem;border-radius:8px;border:1px solid rgba(255,255,255,.15);background:#ffffff0f;color:inherit;font:inherit;cursor:pointer}.game-view__replay-btn:hover:not(:disabled){background:#ffffff1a}.game-view__replay-btn:disabled{opacity:.4;cursor:default}.game-view{--gv-pad: clamp(4px, 1.2vw, 14px);--gv-gap: clamp(4px, .8vw, 10px);display:flex;flex-direction:column;box-sizing:border-box;flex:1 1 auto;min-height:0;min-width:0;width:100%;height:100dvh;max-height:100dvh;overflow:hidden}@media (min-width: 900px){.game-view{flex-direction:row;align-items:stretch}}.game-view__column{display:flex;flex-direction:column;align-items:stretch;flex:1 1 auto;min-width:0;min-height:0;height:auto;max-height:100%;overflow:hidden;padding:var(--gv-pad) clamp(6px,1.5vw,16px);gap:var(--gv-gap);padding-bottom:max(var(--gv-pad),calc(48px + env(safe-area-inset-bottom)));container-type:inline-size;container-name:game-col;--chess-card-sm-w: clamp(25px, min(6.875vw, 10vmin, 15cqw), 70px);--chess-card-tiny-w: clamp(20px, min(4.375vw, 6.875vmin, 11.25cqw), 35px);--chess-card-md-w: clamp(30px, min(5.9375vw, 8.125vmin, 13.75cqw), 62.5px);--chess-card-lg-w: clamp(35px, min(6.875vw, 9.375vmin, 16.25cqw), 81.25px)}@media (max-width: 1199px){.game-view__column{--chess-card-sm-w: var(--chess-card-tiny-w);--chess-card-md-w: var(--chess-card-tiny-w);--chess-card-lg-w: var(--chess-card-tiny-w)}}@media (min-width: 900px){.game-view__column{flex:1 1 auto;min-height:0;max-height:100%;padding-bottom:max(var(--gv-pad),env(safe-area-inset-bottom))}}.game-view__column>.player-sidebar{flex-shrink:0}.game-view__board-row{flex:1 1 auto;display:flex;align-items:center;justify-content:center;min-height:0;min-width:0;gap:0;width:100%;overflow:hidden}.game-view__board-row--holdem{align-items:stretch}@media (min-width: 900px) and (max-width: 1199px){.game-view__board-row--holdem{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr) minmax(0,1fr);row-gap:12px;align-items:stretch;justify-items:stretch}.game-view__board-row--holdem .game-view__board-area--holdem{grid-row:1;grid-column:1;min-width:0;min-height:0;width:100%;max-width:100%;height:100%;max-height:100%}.game-view__board-row--holdem .game-view__holdem-left-column{grid-row:2;grid-column:1;width:100%;max-width:none;min-height:0;max-height:none;height:100%;margin-right:0;overflow:hidden;--holdem-deck-slot: clamp(45px, min(28%, 11.25vmin), 125px)}}@media (max-width: 1199px){.game-view--holdem .game-view__column{flex:1 1 auto;min-height:0}.game-view__board-row--holdem.game-view__board-row--holdem-compact{display:flex!important;flex-direction:column;flex:0 1 auto;min-height:0;max-height:65dvh;grid-template-columns:unset!important;grid-template-rows:unset!important;justify-content:center;align-items:stretch;row-gap:0;column-gap:0;overflow:hidden}.game-view__board-row--holdem.game-view__board-row--holdem-compact .game-view__board-area--holdem{flex:1 1 auto;min-height:0;width:100%;max-width:100%;height:100%;max-height:100%;align-items:center;justify-content:center}.game-view__board-row--holdem.game-view__board-row--holdem-compact .game-view__board-area--holdem .game-view__board-half{height:100%;max-height:100%;width:100%;max-width:100%;min-height:0;align-items:center;justify-content:center;overflow:hidden}.game-view__holdem-lower-third{display:flex;flex-direction:column;flex:1 1 0%;min-height:0;width:100%;overflow:hidden;gap:3px;--chess-card-sm-w: clamp(35px, 10vw, 70px);--chess-card-tiny-w: clamp(35px, 10vw, 70px)}.game-view__holdem-lower-third .game-view__holdem-bottom-rail{flex:1 1 0%;min-height:0;margin-bottom:0;overflow:hidden;align-items:center;position:relative;padding:4px 6px;gap:clamp(4px,1.2vw,10px)}.game-view__holdem-lower-third .game-view__holdem-bottom-rail__community{min-height:0;align-items:center;align-self:stretch}.game-view__holdem-lower-third .game-view__holdem-bottom-rail .game-view__gutter--holdem{max-height:none;height:auto;flex:0 0 auto;align-self:center}.game-view__holdem-lower-third .player-sidebar--bottom{flex:1 1 0%;min-height:0;overflow:visible}.game-view__holdem-lower-third .player-sidebar--bottom .player-sidebar__body{flex:1 1 auto;min-height:0;width:100%;align-items:stretch;padding-top:20px;margin-top:-20px}.game-view__holdem-lower-third .community-cards__row .chess-card,.game-view__holdem-lower-third .card-hand__pawn-pair-row .chess-card,.game-view__holdem-bottom-rail__pawns .chess-card{flex-shrink:0}.game-view__holdem-lower-third .community-cards__placeholder{min-width:0}.game-view__holdem-lower-third .card-hand__action-card{flex-shrink:0;min-width:0}.game-view__holdem-lower-third .game-view__holdem-bottom-rail__pawns{flex:0 0 auto;align-self:center;padding-left:2px}.game-view__holdem-lower-third .game-view__holdem-bottom-rail__pawns .chess-card{width:var(--chess-card-sm-w)}.game-view__holdem-lower-third .community-cards{justify-content:center;min-height:0;flex:1 1 auto;gap:2px}.game-view__holdem-lower-third .community-cards__row{align-items:center;min-height:0;gap:clamp(2px,.5vw,5px);--community-row-padding: clamp(.3rem, 1.85vw, .85rem)}.game-view__holdem-lower-third .card-hand{width:100%;min-width:0;align-items:stretch}.game-view__holdem-lower-third .card-hand__cards:not(:has(.card-hand__prefix-sep)){display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(3px,5px) minmax(0,1fr) minmax(0,1fr);column-gap:clamp(6px,2vw,12px);row-gap:0;align-items:stretch;justify-items:stretch;width:100%;min-height:0;overflow-x:hidden;overflow-y:visible;flex-wrap:nowrap;justify-content:stretch}.game-view__holdem-lower-third .card-hand__cards:not(:has(.card-hand__prefix-sep)) .card-hand__lead{display:contents}.game-view__holdem-lower-third .card-hand__cards:not(:has(.card-hand__prefix-sep)) .card-hand__hole-row{display:contents}.game-view__holdem-lower-third .card-hand__cards:not(:has(.card-hand__prefix-sep)) .card-hand__actions{display:contents}.game-view__holdem-lower-third .card-hand__cards:has(.card-hand__prefix-sep){display:flex;flex-direction:row;flex-wrap:nowrap;align-items:flex-end;justify-content:flex-start;width:100%;min-height:0;gap:clamp(4px,1.2vw,8px);overflow-x:auto;overflow-y:visible}.game-view__holdem-lower-third .card-hand__cards:has(.card-hand__prefix-sep) .card-hand__lead{flex:1 1 auto;min-width:0}.game-view__holdem-lower-third .card-hand__cards:has(.card-hand__prefix-sep) .card-hand__actions{flex-direction:row;align-items:flex-end;gap:clamp(4px,1.2vw,8px);flex:0 0 auto}.game-view__holdem-lower-third .card-hand__hole-row .chess-card{width:100%;max-width:100%;box-sizing:border-box;flex-shrink:1}.game-view__holdem-lower-third .card-hand__actions .card-hand__divider{display:block;width:100%;min-width:0;min-height:100%;margin:0;align-self:stretch;background:#374151f2;border-radius:1px}.game-view__holdem-lower-third .card-hand__actions .card-hand__action-card{width:100%;max-width:100%;min-width:0;height:auto;aspect-ratio:56 / 80;flex-shrink:1;gap:clamp(3px,1vw,8px);padding:clamp(4px,1.2vw,8px) clamp(3px,1vw,6px);box-sizing:border-box}.game-view__holdem-lower-third .card-hand__actions .card-hand__action-icon{font-size:clamp(14px,4.5vw,24px)}.game-view__holdem-lower-third .card-hand__actions .card-hand__action-label{font-size:clamp(7px,2vw,11px);line-height:1.1;text-align:center}.game-view__holdem-lower-third .community-cards__label,.game-view__holdem-lower-third .card-hand__label,.game-view__holdem-lower-third .card-hand__pawn-pair-label{display:none}}@media (min-width: 1200px){.game-view__board-row--holdem{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;justify-items:stretch;column-gap:12px}.game-view__board-row--holdem .game-view__holdem-left-column{margin-right:0}}.game-view__holdem-bottom-rail{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:center;gap:clamp(8px,2vw,16px);flex-shrink:0;width:100%;min-width:0;box-sizing:border-box;padding:clamp(6px,1.2vw,10px) clamp(10px,2vw,16px);margin-bottom:max(0px,calc(var(--gv-gap) - 4px));background:#1e1e2e;border-radius:10px;overflow:hidden}.game-view__holdem-bottom-rail__deck{flex:0 0 auto;display:flex;align-items:center;justify-content:center;min-width:0}.game-view__holdem-bottom-rail .game-view__gutter--holdem{flex:0 0 var(--holdem-deck-slot);width:var(--holdem-deck-slot);min-width:0;height:auto;min-height:0;max-height:min(28vh,180px);margin:0;padding:0;background:transparent;align-self:center}.game-view__holdem-bottom-rail__community{flex:1 1 auto;min-width:0;display:flex;align-items:center;justify-content:center;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch}.game-view__holdem-bottom-rail__divider{width:1px;align-self:stretch;min-height:2.5rem;background:#374151;flex-shrink:0}.game-view__holdem-bottom-rail__pawns{flex:0 0 auto;display:flex;align-items:center;justify-content:center;min-width:0}.game-view__holdem-bottom-rail .game-view__holdem-pawn-pair{margin:0}.game-view__deck-gutter{cursor:pointer;border-radius:10px;transition:box-shadow .15s ease,background .15s ease}.game-view__deck-gutter:hover{box-shadow:0 0 0 2px #f59e0b59}.game-view__deck-gutter:focus-visible{outline:2px solid #f59e0b;outline-offset:3px}.game-view__deck-view-btn{flex:0 0 auto;position:relative;z-index:1;font-size:11px;font-weight:600;padding:6px 10px;border-radius:8px;border:1px solid #4b5563;background:#2d2d3d;color:#e5e7eb;cursor:pointer;white-space:nowrap}.game-view__deck-view-btn:hover{background:#3b3b4f;border-color:#6b7280}.game-view__left-column{flex:1;min-width:0;height:100%;display:flex;flex-direction:column;gap:8px;margin-right:10px}.game-view__pile{flex:1;min-width:0;width:100%;background:#161622;border-radius:10px;padding:10px 8px;display:flex;flex-direction:column;overflow:hidden}.game-view__status-panel{flex:1;min-width:0;height:100%;background:#161622;border-radius:10px;padding:12px 10px;display:flex;flex-direction:column;align-items:stretch;gap:8px;overflow:hidden;margin-left:10px}.game-view__status-panel--holdem.game-view__status-panel--sidebar{flex:1 1 auto;min-width:0;min-height:0;max-width:none;width:100%;margin:0;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch}.game-view__status-panel--chat.game-view__status-panel--sidebar{flex:1 1 auto;min-width:0;min-height:0;width:100%;margin:0;padding:0 6px;overflow:hidden;display:flex;flex-direction:column}.game-view__gutter{flex:0 0 138px;width:100%;background:#111119;display:flex;align-items:center;justify-content:center;overflow:visible;position:relative;flex-shrink:0}.game-view__gutter--left{border-radius:10px}.game-view__gutter--clickable{cursor:pointer;transition:background .15s}.game-view__gutter--clickable:hover{background:#16161f}.game-view__gutter--right{border-radius:6px 0 0 6px;margin-left:10px;margin-right:6px}.game-view__log{flex:0 0 auto;width:100%;max-height:min(32vh,220px);min-height:120px;height:auto;padding:4px var(--gv-pad) max(4px,env(safe-area-inset-bottom)) var(--gv-pad);display:flex;flex-direction:column;order:2}.game-view__log--holdem{display:flex;flex-direction:column;min-height:0;gap:0}@media (min-width: 900px){.game-view__log{order:0;flex:0 0 clamp(180px,14vw,300px);width:auto;height:100%;max-height:100dvh;min-height:0;padding:8px 8px 8px 0}.game-view__log--holdem{flex:0 0 clamp(220px,20vw,360px)}}.game-view__log-tabs{display:flex;flex-shrink:0;border-radius:8px 8px 0 0;overflow:hidden;border:1px solid rgba(51,65,85,.55);border-bottom:none;background:#0f172ad9}.game-view__log-tab{flex:1;padding:10px 12px;border:none;background:transparent;color:#94a3b8;font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;cursor:pointer;transition:background .15s,color .15s}.game-view__log-tab:hover{color:#e2e8f0;background:#ffffff0a}.game-view__log-tab--active{color:#f1f5f9;background:#1e1e2e;box-shadow:inset 0 -2px #3b82f6}.game-view__log-panel{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;overflow:hidden;border-radius:0 0 8px 8px;border:1px solid rgba(51,65,85,.55);border-top:1px solid rgba(255,255,255,.06);background:#1e1e2e}.game-view__log-panel .move-log{border-radius:0 0 6px 6px}.game-view__mobile-info-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:flex-end;justify-content:stretch}.game-view__mobile-info-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0000008c}.game-view__mobile-info-sheet{position:relative;z-index:1;width:100%;max-height:min(85dvh,100%);display:flex;flex-direction:column;background:#1e1e2e;border-radius:16px 16px 0 0;box-shadow:0 -8px 32px #00000073;overflow:hidden}.game-view__mobile-info-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0;padding:12px 16px;border-bottom:1px solid rgba(51,65,85,.55);background:#0f172ad9}.game-view__mobile-info-title{margin:0;font-size:15px;font-weight:700;color:#f1f5f9}.game-view__mobile-info-close{width:40px;height:40px;flex-shrink:0;border:none;border-radius:8px;background:transparent;color:#94a3b8;font-size:22px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.game-view__mobile-info-close:hover{color:#e2e8f0;background:#ffffff0f}.game-view__log--modal{flex:1 1 auto;min-height:0;max-height:none;width:100%;padding:0 12px max(12px,env(safe-area-inset-bottom));order:unset}.game-view__log--modal.game-view__log--holdem{display:flex;flex-direction:column;gap:0}.game-view__pass-btn{padding:8px 10px;border:1px solid #f59e0b;border-radius:6px;background:#f59e0b26;color:#f59e0b;font-weight:600;font-size:12px;cursor:pointer;flex-shrink:0;width:100%;text-align:left;transition:background .15s}.game-view__pass-btn:hover{background:#f59e0b40}.game-view__game-over{display:flex;flex-direction:column;align-items:center;gap:10px;padding:12px 24px;background:#1e1e2e;border-radius:10px;border:2px solid #ef4444;flex-shrink:0}.game-view__game-over-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;align-items:center}.game-view__rematch-offer{margin:0 0 6px;width:100%;font-size:14px;font-weight:700;color:#e2e8f0;text-align:center}.game-view__rematch-status{margin:0;width:100%;font-size:13px;color:#94a3b8;text-align:center}.game-view__rematch-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;width:100%}.game-view__game-over-text{font-size:16px;font-weight:800;color:#ef4444}.game-view__game-over-elo{margin:0;padding:0 4px;text-align:center}.game-view__game-over-elo-text{margin:0;font-size:14px;font-weight:600;color:#cbd5e1}.game-view__game-over-elo-delta--up{color:#86efac}.game-view__game-over-elo-delta--down{color:#fca5a5}.game-view__status-panel .game-view__game-over{width:100%;box-sizing:border-box;flex:1;min-height:0;justify-content:center}.game-view__new-game-btn{padding:6px 18px;border:none;border-radius:6px;background:#3b82f6;color:#fff;font-weight:700;font-size:13px;cursor:pointer;transition:background .15s}.game-view__new-game-btn:hover{background:#2563eb}.game-view__armor-banner{font-size:12px;font-weight:600;color:#e2e8f0;background:#94a3b82e;border:1px solid rgba(148,163,184,.35);border-radius:6px;padding:8px 10px;letter-spacing:.02em}.game-view__promotion-banner{font-size:12px;font-weight:600;color:#fde68a;background:#facc151f;border:1px solid rgba(250,204,21,.3);border-radius:6px;padding:8px 10px;letter-spacing:.02em}.game-view__extra-move-banner{text-align:center;font-size:13px;font-weight:600;color:#bae6fd;background:#38bdf81f;border:1px solid rgba(56,189,248,.3);border-radius:6px;padding:5px 14px;margin:2px 12px 0;letter-spacing:.02em}.game-view__hand-eval-banner{font-size:12px;font-weight:600;color:#c4b5fd;background:#8b5cf61f;border:1px solid rgba(139,92,246,.3);border-radius:6px;padding:8px 10px;letter-spacing:.02em}.game-view__hand-eval-moves{color:#a78bfa;font-weight:500}.game-view__end-turn-btn{padding:8px 10px;border:2px solid #8b5cf6;border-radius:6px;background:#8b5cf626;color:#c4b5fd;font-weight:700;font-size:12px;cursor:pointer;flex-shrink:0;width:100%;text-align:left;transition:background .15s,transform .1s}.game-view__end-turn-btn:hover{background:#8b5cf64d;transform:scale(1.02)}.game-view__end-turn-btn:active{transform:scale(.97)}.game-view__play-hand-btn{padding:9px 10px;border:2px solid #22c55e;border-radius:6px;background:#22c55e26;color:#86efac;font-weight:700;font-size:12px;cursor:pointer;flex-shrink:0;width:100%;text-align:left;transition:background .15s,transform .1s}.game-view__play-hand-btn:hover:not(:disabled){background:#22c55e47;transform:scale(1.02)}.game-view__play-hand-btn:active:not(:disabled){transform:scale(.97)}.game-view__play-hand-btn:disabled{opacity:.4;cursor:not-allowed}.game-view__hand-eval-banner--empty{color:#94a3b8;background:#94a3b814;border-color:#94a3b833;font-weight:400;font-style:italic}.game-view__hand-hint{font-size:11px;color:#6b7280;font-style:italic;padding:2px 0}.game-view__bottom-controls{position:fixed;bottom:max(12px,env(safe-area-inset-bottom));left:max(12px,env(safe-area-inset-left));z-index:10}.game-view__menu-btn{padding:8px 14px;min-height:44px;border:1px solid rgba(148,163,184,.2);border-radius:6px;background:#0f172acc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#94a3b8;font-size:clamp(12px,2vw,13px);font-weight:600;cursor:pointer;transition:all .15s}.game-view__menu-btn:hover{border-color:#94a3b866;color:#e2e8f0}.game-view__back-btn{padding:6px 18px;border:1px solid rgba(148,163,184,.25);border-radius:6px;background:transparent;color:#94a3b8;font-weight:600;font-size:13px;cursor:pointer;transition:all .15s}.game-view__back-btn:hover{border-color:#94a3b880;color:#e2e8f0}.game-view__board-area{flex:3;min-width:0;min-height:0;height:100%;max-height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden}.game-view__board-row--holdem .game-view__board-area--holdem{flex:1 1 0;min-width:0}@media (min-width: 1200px){.game-view__board-row--holdem .game-view__board-area--holdem{flex:none;min-width:0;width:100%;max-width:100%}}.game-view__board-area--holdem{flex-direction:row;align-items:center;justify-content:center}.game-view__board-half{box-sizing:border-box;height:100%;max-height:100%;min-height:0;min-width:0;display:flex;align-items:center;justify-content:center;overflow:hidden}.game-view__board-area--holdem .game-view__board-half{flex:1;min-height:0;width:100%}.game-view__holdem-left-column{--holdem-rail-space: 7.5px;--holdem-deck-slot: 95px;display:flex;flex-direction:column;align-items:stretch;gap:0;justify-content:flex-start;flex:1 1 0;min-width:0;max-width:none;height:100%;margin-right:var(--holdem-rail-space);min-height:0;background:#111119;border-radius:10px;padding:var(--holdem-rail-space);box-sizing:border-box}@media (min-width: 1200px){.game-view__board-row--holdem .game-view__holdem-left-column{flex:none;width:100%;min-width:0;--holdem-deck-slot: clamp(82.5px, min(48%, 17.5vw), 175px)}}@media (min-width: 1921px){.game-view__column{--chess-card-sm-w: clamp(40px, min(11vw, 16vmin, 24cqw), 112px);--chess-card-tiny-w: clamp(32px, min(7vw, 11vmin, 18cqw), 56px);--chess-card-md-w: clamp(48px, min(9.5vw, 13vmin, 22cqw), 100px);--chess-card-lg-w: clamp(56px, min(11vw, 15vmin, 26cqw), 130px)}.game-view__gutter{flex:0 0 220px}.game-view__holdem-left-column{--holdem-rail-space: 12px;--holdem-deck-slot: 152px}.game-view__board-row--holdem .game-view__holdem-left-column{--holdem-deck-slot: clamp(132px, min(48%, 28vw), 280px)}.game-view__holdem-left-column .game-view__gutter--holdem{min-height:132px}}.game-view__holdem-third{flex:1 1 0;min-height:0;min-width:0;width:100%}.game-view__holdem-third--board{display:flex;flex-direction:column;align-items:stretch;justify-content:center;overflow-x:auto;overflow-y:hidden}.game-view__holdem-third--deck{display:flex;flex-direction:column;justify-content:center;overflow:visible}.game-view__holdem-third--pot{display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;padding:clamp(4px,.8vmin,10px) clamp(6px,1.2vw,12px);flex:0 0 auto;min-height:clamp(88px,12vh,160px);max-height:min(180px,22vh)}.game-view__holdem-pot-bar{flex:0 0 auto;width:100%;display:flex;justify-content:center;align-items:center;padding:clamp(3px,.8vmin,8px) clamp(8px,2vw,14px) clamp(2px,.5vmin,6px);min-height:0;background:linear-gradient(180deg,rgba(0,0,0,.2) 0%,transparent 100%);border-radius:8px 8px 0 0}.game-view__holdem-deck-pawn-row{flex:1 1 0;min-height:0;width:100%;display:flex;flex-direction:row;align-items:center;justify-content:space-around;gap:var(--holdem-rail-space)}.game-view__holdem-pawn-wrap{flex:0 0 auto;min-width:0;display:flex;align-items:center;justify-content:center}.game-view__holdem-pawn-pair{flex:0 0 auto;padding:0;margin:0;box-sizing:border-box}.game-view__holdem-left-column .game-view__community-panel{flex:0 0 auto;min-height:0;height:auto;margin:0;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;background:transparent;border-radius:0;padding:0;gap:var(--holdem-rail-space);justify-content:flex-start}.game-view__holdem-left-column .community-cards{gap:var(--holdem-rail-space);width:100%}.game-view__holdem-left-column .community-cards__row{gap:var(--holdem-rail-space);justify-items:center;--community-row-padding: clamp(.55rem, 2.4vw, 1.65rem)}.game-view__holdem-left-column .community-cards__row>.chess-card,.game-view__holdem-left-column .community-cards__placeholder{width:min(var(--chess-card-sm-w),100%);max-width:100%}.game-view__holdem-left-column .game-view__holdem-pawn-pair.card-hand__pawn-pair,.game-view__holdem-left-column .game-view__holdem-pawn-pair .card-hand__pawn-pair-row{gap:var(--holdem-rail-space)}.game-view__holdem-left-column .game-view__gutter--holdem{flex:0 0 var(--holdem-deck-slot);width:var(--holdem-deck-slot);min-width:0;height:100%;min-height:82.5px;margin:0;padding:0;background:transparent;border-radius:0;align-self:stretch}.game-view__community-panel{flex-shrink:0;height:100%;margin-right:12px;background:#111119;border-radius:10px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:12px 16px;overflow:hidden}.game-view__deal-btn{padding:10px 32px;border:2px solid #22c55e;border-radius:8px;background:#22c55e26;color:#22c55e;font-weight:700;font-size:15px;letter-spacing:.04em;cursor:pointer;flex-shrink:0;transition:background .15s,transform .1s}.game-view__deal-btn:hover{background:#22c55e4d;transform:scale(1.03)}.game-view__deal-btn:active{transform:scale(.97)}@media (min-width: 900px) and (max-width: 1199px){.game-view--fivecd .game-view__board-area{align-items:flex-start;justify-content:center}.game-view--fivecd .game-view__board-area .game-view__board-half{height:auto;max-height:100%;align-self:center}.game-view--fivecd .game-view__column>.player-sidebar--bottom{flex:1 1 auto;min-height:0;overflow:hidden}}@media (max-width: 899px){.game-view__column{flex:1 1 auto;min-height:0;overflow:hidden}.game-view__board-row{flex-direction:column;flex:1 1 auto;min-height:0;overflow:hidden;gap:var(--gv-gap)}.game-view__board-area{flex:0 0 auto;min-height:0;width:100%;align-items:flex-start;justify-content:center}.game-view__board-area .game-view__board-half{height:auto;max-height:min(68vmin,92vw,100dvh);align-self:center;width:100%}.game-view--fivecd .game-view__board-area{order:-1}.game-view--holdem .game-view__board-area{order:-2;flex:0 0 auto;min-height:0}.game-view--holdem .game-view__holdem-left-column{--holdem-deck-slot: clamp(55px, 15vw, 95px);order:-1;flex:0 1 auto;max-height:min(42vh,360px);min-height:0;min-width:0;max-width:none;width:100%;margin-right:0}.game-view__status-panel{flex:1 1 auto;min-height:0;max-height:none;overflow-y:auto;-webkit-overflow-scrolling:touch;margin-left:0;width:100%}.game-view__left-column{flex:1 1 auto;flex-direction:row;align-items:stretch;max-height:none;min-height:0;width:100%;margin-right:0;gap:8px}.game-view__pile{flex:1 1 55%;min-height:120px;min-width:0}.game-view__gutter{flex:0 0 clamp(62.5px,17.5vw,112.5px);max-height:min(36vh,320px);height:auto}.game-view__gutter--right{margin-left:0;margin-right:0;border-radius:10px}.game-view--fivecd .game-view__column>.player-sidebar--bottom{flex:1 1 auto;min-height:0;overflow:hidden}.game-view--holdem .game-view__column{padding:3px 4px;padding-bottom:max(3px,calc(44px + env(safe-area-inset-bottom)));gap:3px}.game-view--holdem .player-sidebar--top{padding:3px 8px;gap:2px;border-radius:6px}.game-view--holdem .player-sidebar--top .player-sidebar__header{gap:6px}.game-view--holdem .player-sidebar--top .player-sidebar__title{font-size:12px}.game-view--holdem .player-sidebar--top .player-sidebar__captured-label{display:none}.game-view--holdem .player-sidebar--top .player-sidebar__captured-piece{font-size:13px}.game-view--holdem .player-sidebar--top .player-sidebar__hidden-hand{padding:2px 6px;gap:4px}.game-view__holdem-lower-third{--chess-card-sm-w: clamp(48px, 14vw, 85px);--chess-card-tiny-w: clamp(48px, 14vw, 85px)}.game-view__holdem-lower-third .game-view__holdem-bottom-rail__pawns{--chess-card-sm-w: clamp(28px, 8vw, 50px);--chess-card-tiny-w: clamp(28px, 8vw, 50px)}.game-view__holdem-lower-third .player-sidebar--bottom{--chess-card-sm-w: clamp(65px, 20vw, 110px);--chess-card-tiny-w: clamp(65px, 20vw, 110px)}.game-view__holdem-lower-third .game-view__holdem-bottom-rail__deck{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0;pointer-events:none}.game-view__holdem-lower-third .game-view__holdem-bottom-rail__divider{display:none}.game-view__holdem-lower-third .game-view__holdem-bottom-rail{border-radius:6px;padding:3px 6px;gap:clamp(3px,1vw,8px)}.game-view__holdem-lower-third .player-sidebar--bottom{padding:3px 6px;gap:2px;border-radius:6px}.game-view__holdem-lower-third .player-sidebar--bottom .player-sidebar__body{width:100%}.game-view__holdem-lower-third .player-sidebar--bottom .card-hand{width:100%;flex:1 1 0%}.game-view__holdem-lower-third .player-sidebar--bottom .card-hand__cards{flex:1 1 0%;width:100%;gap:3px}.game-view__holdem-lower-third .player-sidebar--bottom .card-hand__cards>.chess-card{flex:0 0 clamp(65px,20vw,110px);width:clamp(65px,20vw,110px)!important;max-width:none}.game-view__holdem-lower-third .player-sidebar--bottom .card-hand__action-card{flex:1 1 0%;width:auto!important;max-width:none}.game-view__holdem-lower-third .community-cards__street,.game-view__holdem-lower-third .game-view__holdem-bottom-rail__community .chess-card__corner--bottom{display:none}}@media (min-width: 900px) and (max-width: 1199px){.game-view__log{flex-basis:clamp(160px,22vw,240px)}}@media (min-width: 1920px){.game-view__pass-btn,.game-view__end-turn-btn,.game-view__play-hand-btn{font-size:clamp(12px,.75vw,15px)}.game-view__deal-btn{font-size:clamp(14px,.85vw,18px)}}.game-view__disconnect-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:12000;display:flex;align-items:center;justify-content:center;padding:16px;pointer-events:auto}.game-view__disconnect-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0000008c}.game-view__disconnect-modal{position:relative;z-index:1;max-width:420px;width:100%;padding:20px 22px;border-radius:12px;background:#1e293b;border:1px solid #334155;box-shadow:0 16px 48px #00000073}.game-view__disconnect-title{margin:0 0 10px;font-size:18px;font-weight:800;color:#f8fafc}.game-view__disconnect-body{margin:0;font-size:14px;line-height:1.45;color:#cbd5e1}.game-view__disconnect-body strong{color:#93c5fd}.tutorial-game-page{position:relative;min-height:100dvh}.tutorial-game-page__overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left))}.tutorial-game-page__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0a0a16b8;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.tutorial-game-page__modal{position:relative;z-index:1;width:100%;max-width:440px;max-height:min(85dvh,640px);overflow-y:auto;padding:22px 22px 20px;border-radius:14px;border:1px solid rgba(71,85,105,.55);background:linear-gradient(165deg,#182034fa,#0f172afc);box-shadow:0 24px 48px #00000073}.tutorial-game-page__title{margin:0 0 12px;font-size:1.2rem;font-weight:800;color:#f1f5f9;letter-spacing:-.02em}.tutorial-game-page__body{font-size:14px;line-height:1.55;color:#cbd5e1}.tutorial-game-page__body p{margin:0 0 12px}.tutorial-game-page__body p:last-child{margin-bottom:0}.tutorial-game-page__btn{margin-top:18px;width:100%;padding:11px 16px;border-radius:10px;border:none;background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;font-size:15px;font-weight:700;cursor:pointer;transition:opacity .15s}.tutorial-game-page__btn:hover{opacity:.92}.buy-chips{position:relative;width:100%;min-height:100dvh;background:#0a0a16;overflow-x:hidden}.buy-chips__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 80% 60% at 50% 40%,rgba(234,179,8,.05) 0%,transparent 70%),radial-gradient(ellipse 60% 50% at 70% 30%,rgba(245,158,11,.04) 0%,transparent 70%);pointer-events:none}.buy-chips__content{position:relative;z-index:1;width:100%;max-width:800px;margin:0 auto;padding:clamp(24px,5vw,48px) clamp(16px,3vw,28px);display:flex;flex-direction:column;align-items:center;gap:24px}.buy-chips__back{align-self:flex-start;background:none;border:none;color:#94a3b8;font-size:14px;cursor:pointer;padding:0}.buy-chips__back:hover{color:#e2e8f0}.buy-chips__title{font-size:clamp(1.5rem,5vw,2rem);font-weight:900;color:#f1f5f9;letter-spacing:-.03em;text-align:center}.buy-chips__subtitle{font-size:15px;color:#94a3b8;text-align:center}.buy-chips__subtitle strong{color:#fbbf24}.buy-chips__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;width:100%;margin-top:8px}.buy-chips__card{display:flex;flex-direction:column;align-items:center;gap:12px;padding:28px 20px;border-radius:14px;background:#0f172a99;border:1px solid rgba(51,65,85,.5);position:relative}.buy-chips__card--featured{border-color:#eab30866;background:#eab3080d}.buy-chips__badge{position:absolute;top:-10px;padding:3px 12px;border-radius:20px;background:linear-gradient(135deg,#eab308,#f59e0b);color:#0a0a16;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.buy-chips__card-name{font-size:16px;font-weight:700;color:#e2e8f0}.buy-chips__card-chips{font-size:28px;font-weight:900;color:#fbbf24;letter-spacing:-.02em}.buy-chips__card-price{font-size:18px;font-weight:600;color:#94a3b8}.buy-chips__card-btn{width:100%;padding:10px 0;border-radius:10px;border:none;background:#33415566;color:#64748b;font-size:14px;font-weight:700;cursor:not-allowed;margin-top:4px}.buy-chips__footer{font-size:13px;color:#475569;text-align:center;margin-top:12px}.profile-page{min-height:100vh;position:relative;color:#e8e4dc}.profile-page__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 50% 0%,#1a2433,#0c1018 55%);z-index:0}.profile-page__content{position:relative;z-index:1;max-width:960px;margin:0 auto;padding:1.5rem 1.25rem 3rem}.profile-page__elo-summary{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:1.25rem}.profile-page__elo-card{flex:1 1 140px;min-width:120px;padding:12px 14px;border-radius:10px;border:1px solid rgba(255,255,255,.1);background:#00000040;display:flex;flex-direction:column;gap:4px}.profile-page__elo-card-label{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:#e8e4dc8c}.profile-page__elo-card-value{font-size:1.35rem;font-weight:700;font-variant-numeric:tabular-nums;color:#e8e4dc}.profile-page__header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.profile-page__title{margin:0;font-size:1.5rem;font-weight:600}.profile-page__back{padding:.45rem .85rem;border-radius:8px;border:1px solid rgba(255,255,255,.15);background:#00000040;color:inherit;cursor:pointer;font:inherit}.profile-page__back:hover{background:#ffffff0f}.profile-page__message,.profile-page__error{margin:.5rem 0}.profile-page__error{color:#f6a08e}.profile-page__table-wrap{overflow-x:auto;border-radius:10px;border:1px solid rgba(255,255,255,.1);background:#0003}.profile-page__table{width:100%;border-collapse:collapse;font-size:.95rem}.profile-page__table th,.profile-page__table td{padding:.65rem .85rem;text-align:left;border-bottom:1px solid rgba(255,255,255,.08)}.profile-page__table th{font-weight:600;color:#e8e4dcbf;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em}.profile-page__row{cursor:pointer;transition:background .12s ease}.profile-page__row:hover,.profile-page__row:focus-visible{outline:none;background:#ffffff0d}.profile-page__result--win{color:#8fd49a}.profile-page__result--loss{color:#e89890}
