.game-stage{display:grid;grid-template-columns:minmax(0,1fr) 308px;align-items:stretch;gap:24px;max-width:1098px;margin:0 auto 22px}.game-stage .game-board{width:100%;margin:0}.table-chat{width:308px;min-width:0;margin:0;padding:13px;border:1px solid var(--line);border-radius:16px;background:rgba(5,16,12,.58);display:flex;flex-direction:column}.game-stage .chat-messages{height:auto;min-height:190px;flex:1}.game-stage .chat-heading{align-items:flex-start;flex-direction:column;gap:2px}.game-stage .chat-form{grid-template-columns:1fr}.game-stage .smiley-panel{left:auto;right:0;width:330px;grid-template-columns:repeat(6,1fr)}
.board-center .board-tile{font:900 1.54rem Georgia,serif;letter-spacing:normal}
.player-seat.offline{opacity:.55;filter:grayscale(.7)}.player-seat.offline::after{content:"çevrimdışı";display:block;color:#ffb0a7;font-size:.62rem;margin-top:3px}
.seat-discards{position:absolute;z-index:3;display:flex;max-width:190px;min-height:50px}.seat-discards .board-tile+.board-tile{margin-left:-21px}.discards-1{left:50%;bottom:48px;transform:translateX(-50%)}.discards-2{right:72px;top:50%;transform:translateY(-50%) rotate(-90deg)}.discards-3{left:50%;top:48px;transform:translateX(-50%) rotate(180deg)}.discards-4{left:72px;top:50%;transform:translateY(-50%) rotate(90deg)}.board-tile{flex:0 0 auto;width:36px;height:49px;padding:0;display:grid;place-items:center;border:2px solid #ead5aa;border-radius:7px;background:linear-gradient(145deg,#fffdf2,#ddc18d);font:900 1.54rem Georgia,serif;line-height:1;box-shadow:0 1px 2px rgba(0,0,0,.2)}.board-tile.drawable{cursor:pointer;z-index:5;border-color:#59d69b;outline:3px solid rgba(89,214,155,.28);animation:drawable-pulse 1.4s ease-in-out infinite}.board-tile.drawable:hover{transform:translateY(-4px);outline-color:#ffd65a}.board-tile.red{color:#ef3038}.board-tile.blue{color:#087ee5}.board-tile.black{color:#101615}.board-tile.yellow{color:#e89500}.board-tile.false{color:#a638d1}@keyframes drawable-pulse{50%{box-shadow:0 0 0 4px rgba(89,214,155,.18)}}.draw-stack{position:relative;width:45px;height:50px;margin:0 auto 3px}.draw-stack i{position:absolute;width:34px;height:46px;border:2px solid #e4c98f;border-radius:6px;background:repeating-linear-gradient(45deg,#70242c 0 4px,#8f3340 4px 8px);box-shadow:0 2px 3px rgba(0,0,0,.25)}.draw-stack i:nth-child(1){left:0;top:4px}.draw-stack i:nth-child(2){left:5px;top:2px}.draw-stack i:nth-child(3){left:10px;top:0}.unowned-discard{position:absolute;left:58px;top:10px}.board-center small{display:block}.board-center strong{font-size:1.65rem!important}
.chat-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.chat-heading small{color:var(--muted)}
.chat-messages{height:150px;overflow-y:auto;display:flex;flex-direction:column;gap:7px;padding:10px;border-radius:11px;background:#091611}
.chat-older-button{display:block;width:calc(100% - 16px);margin:7px 8px 0;padding:7px 10px;border:1px solid var(--line);border-radius:9px;background:#17382d;color:var(--cream);font-weight:800}.chat-older-button:not([hidden]):not(:disabled):hover{border-color:var(--gold);background:#245a45}.chat-older-button:disabled{cursor:wait;opacity:.65}
.smiley-picker{position:relative;margin-top:9px}.smiley-toggle{border:1px solid var(--line);border-radius:10px;background:#17382d;color:#fff;padding:9px 13px;font-weight:800}.smiley-toggle:hover,.smiley-toggle[aria-expanded="true"]{border-color:var(--gold);background:#245a45}.smiley-panel{position:absolute;z-index:20;left:0;bottom:44px;width:min(430px,calc(100vw - 70px));max-height:330px;overflow-y:auto;display:grid;grid-template-columns:repeat(7,1fr);gap:7px;padding:13px;border:1px solid #527a69;border-radius:15px;background:#10251e;box-shadow:0 14px 34px rgba(0,0,0,.45)}.smiley-panel button{min-width:0;aspect-ratio:1;padding:0;border:1px solid #315547;border-radius:11px;background:linear-gradient(145deg,#203f34,#11271f);color:#fff;font-size:1.65rem;filter:saturate(1.25);transition:transform .1s,border-color .1s,background .1s}.smiley-panel button:hover{border-color:var(--gold);background:#2b5a47;transform:scale(1.1)}.smiley-panel .club-badge{font-size:.72rem;font-weight:950;border-radius:50%}.club-badge.bjk{color:#fff;background:linear-gradient(135deg,#050505 50%,#eee 50%);text-shadow:0 1px 2px #000}.club-badge.fb{color:#132d65;background:linear-gradient(135deg,#f7db22 50%,#173f8c 50%);text-shadow:0 1px #fff}.club-badge.gs{color:#821515;background:linear-gradient(135deg,#f5c51c 50%,#b51f2e 50%);text-shadow:0 1px #ffd}.club-badge.ts{color:#fff;background:linear-gradient(135deg,#7ec8eb 50%,#86233a 50%);text-shadow:0 1px 2px #222}
.smiley-panel .image-badge{padding:3px;background:#fff;border-radius:9px}.smiley-panel .image-badge img{display:block;width:100%;height:100%;object-fit:contain}.chat-line .message-badge{display:inline-block;width:34px;height:34px;object-fit:contain;vertical-align:middle;margin:1px 3px;padding:2px;border-radius:5px;background:#fff}
.chat-empty{margin:auto;color:var(--muted);font-size:.8rem}.chat-line{margin:0;padding:7px 9px;border-radius:9px;background:#142a22;color:#dce8e3;font-size:.84rem;overflow-wrap:anywhere}.chat-line strong{color:var(--gold);margin-right:6px}.chat-line.own{background:#1d4938}
.nickname-admin,.chat-line strong.nickname-admin{color:#ff4b4b!important;font-weight:900;text-shadow:0 0 8px rgba(255,50,50,.28)}.nickname-private-owner,.chat-line strong.nickname-private-owner{color:#d995ff!important;font-weight:900}.table-meta.nickname-private-owner::after{content:" · Özel masa sahibi";font-size:.68rem;color:#c7a1dc}
.chat-form{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:10px}.chat-form input{min-width:0;border:1px solid var(--line);border-radius:10px;background:#0b1915;color:var(--cream);padding:11px 12px;outline:none}.chat-form button{margin:0}.table-chat .message{margin-top:7px;min-height:0}
@media(max-width:950px){.game-stage{grid-template-columns:1fr}.table-chat{width:100%;max-width:760px;margin:0 auto}.game-stage .chat-messages{height:150px;min-height:150px}.game-stage .chat-form{grid-template-columns:1fr auto}}
@media(max-width:520px){.chat-heading{align-items:flex-start;flex-direction:column}.chat-form,.game-stage .chat-form{grid-template-columns:1fr}.chat-messages{height:130px}.smiley-panel,.game-stage .smiley-panel{width:min(430px,calc(100vw - 70px));grid-template-columns:repeat(5,1fr);max-height:280px}.smiley-panel button{font-size:1.5rem}}
.seat-discards{flex-wrap:nowrap;overflow:visible}.seat-discards .board-tile+.board-tile{margin-left:-27px}
.chat-form textarea{min-width:0;min-height:44px;max-height:140px;resize:vertical;border:1px solid var(--line);border-radius:10px;background:#0b1915;color:var(--cream);padding:9px 12px;outline:none;font:inherit;line-height:1.35;overflow-y:auto}
.draw-stack{width:68px;height:75px;margin-bottom:5px}.draw-stack i{width:51px;height:69px;border-width:3px;border-radius:8px}.draw-stack i:nth-child(1){left:0;top:6px}.draw-stack i:nth-child(2){left:8px;top:3px}.draw-stack i:nth-child(3){left:15px;top:0}.board-center strong{font-size:2rem!important}
.discards-1{left:calc(50% + 92px);right:auto;bottom:48px;top:auto;transform:none}.discards-2{left:auto;right:72px;top:calc(50% - 112px);transform:none}.discards-3{left:calc(50% - 175px);right:auto;top:48px;bottom:auto;transform:none}.discards-4{left:72px;right:auto;top:calc(50% + 62px);transform:none}.seat-discards .board-tile{transform:none!important}.draw-stack.finish-drop-target{filter:drop-shadow(0 0 12px #ffd65a);transform:scale(1.14)}.draw-stack.finish-drop-target:after{content:"BİTİR";position:absolute;left:50%;top:-23px;transform:translateX(-50%);padding:3px 7px;border-radius:7px;background:#ffd65a;color:#241708;font-size:.62rem;font-weight:950}.revealed-hand{display:flex;flex-wrap:wrap;justify-content:center;gap:4px;margin-top:16px}.revealed-hand .board-tile{width:32px;height:44px;font-size:1.25rem}
.confetti-layer{position:absolute;inset:0;z-index:19;overflow:hidden;pointer-events:none}.confetti-layer i{position:absolute;left:var(--x);top:-18px;width:10px;height:17px;border-radius:2px;animation:confetti-fall var(--duration) var(--delay) cubic-bezier(.18,.7,.35,1) forwards}@keyframes confetti-fall{0%{transform:translate3d(0,-20px,0) rotate(0);opacity:1}100%{transform:translate3d(calc((50% - var(--x)) * .28),390px,0) rotate(var(--spin));opacity:.15}}
.game-stage .chat-form,.chat-form{grid-template-columns:minmax(0,1fr) auto auto}
@media(max-width:950px){.game-stage .chat-form{grid-template-columns:minmax(0,1fr) auto auto}}
@media(max-width:520px){.chat-form,.game-stage .chat-form{grid-template-columns:minmax(0,1fr) auto auto}}

/* STAGE MODERN_VIP_CONFETTI_CELEBRATION_UPGRADE_START */
.confetti-layer {
  pointer-events: none;
  contain: layout paint style;
  isolation: isolate;
}

.confetti-layer i.modern-vip-confetti-piece {
  width: var(--piece-width, 15px);
  height: var(--piece-height, 26px);
  border-radius: 2px;
  background: var(--confetti-color, #ffd60a);
  opacity: 1;
  filter: saturate(1.35) brightness(1.08);
  transform: translate3d(var(--sway-start, 0px), -36px, 0) rotate(0deg);
  animation: modern-vip-confetti-fall var(--duration, 5.6s) var(--delay, 0s) cubic-bezier(.16, .72, .2, 1) forwards;
  will-change: transform, opacity;
}

@keyframes modern-vip-confetti-fall {
  0% {
    opacity: 1;
    transform: translate3d(var(--sway-start, 0px), -36px, 0) rotate(0deg);
  }
  24% {
    opacity: 1;
    transform: translate3d(var(--sway-mid, 0px), var(--fall-22, 132px), 0) rotate(var(--spin-mid, 360deg));
  }
  52% {
    opacity: .98;
    transform: translate3d(var(--sway-end, 0px), var(--fall-52, 312px), 0) rotate(var(--spin-end, 1080deg));
  }
  76% {
    opacity: .96;
    transform: translate3d(var(--sway-mid, 0px), var(--fall-76, 456px), 0) rotate(var(--spin-late, 1296deg));
  }
  100% {
    opacity: .94;
    transform: translate3d(var(--sway-end, 0px), var(--fall-distance, 600px), 0) rotate(var(--spin-final, 1566deg));
  }
}

@media (prefers-reduced-motion: reduce) {
  .confetti-layer i.modern-vip-confetti-piece {
    animation-duration: 1.5s;
    animation-delay: 0s;
  }
}
/* STAGE MODERN_VIP_CONFETTI_CELEBRATION_UPGRADE_END */

/* STAGE MODERN_VIP_FIREWORKS_AND_CONFETTI_UPGRADE_START */
.confetti-layer .modern-vip-fireworks-canvas {
  position: absolute;
  inset: 0;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  pointer-events: none;
  user-select: none;
}

.confetti-layer i.modern-vip-confetti-piece {
  z-index: 2;
}

@media (prefers-reduced-motion: reduce) {
  .confetti-layer .modern-vip-fireworks-canvas {
    opacity: .82;
  }
}
/* STAGE MODERN_VIP_FIREWORKS_AND_CONFETTI_UPGRADE_END */
