.game-center-page {
  --game-paper: #fff9f2;
  --game-cream: #fff0dc;
  --game-sand: #ead8c0;
  --game-coral: #e85f4c;
  --game-teal: #438f89;
  --game-plum: #68465b;
  --game-ink: #302b31;
  --game-muted: #776e75;
  max-width: 820px;
  margin: 0 auto;
  padding: 20px 16px 96px;
  color: var(--game-ink);
}

.game-center-heading { margin: 6px 0 22px; }
.game-center-heading > span, .gc-kicker {
  color: var(--game-plum);
  font-size: .68rem;
  font-weight: 850;
  letter-spacing: .12em;
}
.game-center-heading h1 { margin: 7px 0; font-size: clamp(1.8rem, 6vw, 2.45rem); }
.game-center-heading p { margin: 0; color: var(--game-muted); }

.gc-feature, .gc-queue, .gc-match {
  overflow: hidden;
  padding: 22px;
  border: 1px solid var(--game-sand);
  border-radius: 24px;
  background: linear-gradient(150deg, #fffefa, var(--game-paper));
  box-shadow: 0 16px 42px #533f3314;
}
.gc-home-header, .gc-match-header, .gc-shelf-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}
.gc-home-header { flex-wrap: wrap; }
.gc-sound {
  display: inline-flex;
  min-height: 38px;
  align-items: center;
  gap: 7px;
  padding: 6px 12px;
  border: 1px solid var(--game-sand);
  border-radius: 999px;
  background: #fff;
  color: var(--game-plum);
  font: inherit;
  font-size: .78rem;
  font-weight: 750;
  cursor: pointer;
}
.gc-sound:hover { background: var(--game-cream); }
.gc-sound:focus-visible, .gc-tile:focus-visible, .gc-game-card:focus-visible {
  outline: 3px solid #6b58a6;
  outline-offset: 2px;
}
.gc-feature-art {
  display: flex;
  height: 154px;
  align-items: center;
  justify-content: center;
  gap: 12px;
  margin: 14px 0 16px;
  overflow: hidden;
  border: 1px solid #f0deca;
  border-radius: 22px;
  background: radial-gradient(ellipse at 50% 105%, #f4dcb8 0, #fff4e7 46%, #e8f1eb 100%);
}
.gc-feature-art b { color: var(--game-plum); font-size: 1.5rem; }
.gc-feature-food {
  display: block;
  width: 94px;
  height: 94px;
  border: 5px solid #fffdf9;
  border-radius: 50%;
  background-repeat: no-repeat;
  background-size: 300% 300%;
  background-color: #fff;
  box-shadow: 0 7px 18px #4e382922;
}
.gc-feature h2, .gc-queue h2, .gc-match h2 { margin: 7px 0; font-size: 1.55rem; }
.gc-feature > p, .gc-queue > p { color: var(--game-muted); line-height: 1.55; }
.gc-note { margin: 13px 0 0; font-size: .8rem !important; }
.gc-join { margin-top: 12px; }
.gc-error { color: #a83c43 !important; font-weight: 700; }

.gc-shelf { margin-top: 28px; }
.gc-shelf-heading { margin-bottom: 12px; }
.gc-shelf-heading h3 { margin: 4px 0 0; font-size: 1.2rem; }
.gc-shelf-count { color: var(--game-muted); font-size: .78rem; }
.gc-coming-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.gc-game-card {
  display: grid;
  min-height: 84px;
  grid-template-columns: 38px minmax(0, 1fr) auto;
  align-items: center;
  gap: 8px;
  padding: 12px;
  border: 1px solid #ede4d9;
  border-radius: 17px;
  background: #fffefa;
  color: var(--game-ink);
  font: inherit;
  text-align: left;
}
.gc-game-card.is-active { border-color: #a5c9b2; background: linear-gradient(135deg, #f4fbf4, #fffdf8); }
button.gc-game-card { width: 100%; cursor: pointer; transition: transform .16s ease, box-shadow .16s ease; }
button.gc-game-card:hover { transform: translateY(-2px); box-shadow: 0 7px 18px #28473b18; }
button.gc-game-card:active { transform: scale(.98); }
.gc-game-icon { font-size: 1.6rem; text-align: center; }
.gc-game-copy { display: grid; gap: 3px; }
.gc-game-copy b { font-size: .86rem; }
.gc-game-copy small { color: var(--game-muted); font-size: .7rem; }
.gc-game-status { color: var(--game-muted); font-size: .62rem; font-weight: 800; text-align: right; }
.gc-game-card.is-active .gc-game-status { color: #277469; }

.gc-queue { padding: 34px 22px; text-align: center; }
.gc-pulse { margin-bottom: 10px; font-size: 2.6rem; animation: gc-pulse 1.4s ease-in-out infinite alternate; }
.gc-pulse-sugar { width: 64px; height: 64px; display:grid; place-items:center; margin: 0 auto 14px; border:1px solid rgba(227,190,123,.58); border-radius:22px; background:radial-gradient(circle at 28% 22%,#e7c879,#8c6538 48%,#263d43 78%); box-shadow:0 12px 30px rgba(0,0,0,.28),inset 0 1px rgba(255,255,255,.55); color:#fff3cf; font-size:2rem; text-shadow:0 0 18px rgba(255,236,176,.9); }
.gc-queue .gc-kicker { display: block; }

.gc-match-header h2 { margin: 5px 0 0; }
.gc-score-row {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 10px;
  margin-top: 16px;
  padding: 12px 16px;
  border: 1px solid #eee3d7;
  border-radius: 17px;
  background: #fff;
}
.gc-score { display: grid; gap: 2px; color: var(--game-muted); font-size: .78rem; }
.gc-score b { color: var(--game-ink); font-size: 1.15rem; }
.gc-score-opponent { text-align: right; }
.gc-score-player { display:flex; align-items:center; gap:8px; min-width:0; }
.gc-score-player .avatar { width:34px; height:34px; flex:none; font-size:.72rem; }
.gc-score-player span:last-child { overflow:hidden; max-width:110px; text-overflow:ellipsis; white-space:nowrap; color:var(--game-ink); font-size:.78rem; font-weight:800; }
.gc-target { margin:6px 0 12px; color:var(--game-muted); font-size:.78rem; font-weight:750; text-align:center; }
.gc-score-divider { color: var(--game-coral); font-size: .68rem; font-weight: 900; }
.gc-status { min-height: 20px; margin: 13px 0 8px; color: var(--game-plum); font-size: .86rem; font-weight: 750; text-align: center; }
.gc-board {
  display: grid;
  width: min(100%, 420px);
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 7px;
  margin: 12px auto;
  padding: 9px;
  border: 1px solid #3a827b;
  border-radius: 21px;
  background: linear-gradient(145deg, #4c9a91, #347b75);
  box-shadow: inset 0 2px 10px #16474335, 0 8px 18px #40312818;
}
.gc-tile {
  display: grid;
  aspect-ratio: 1;
  min-width: 0;
  place-items: center;
  overflow: hidden;
  padding: 3px;
  border: 1px solid #e6d5c0;
  border-radius: 13px;
  background: #fffdf9;
  touch-action: manipulation;
  transition: transform .12s ease, background-color .12s ease, box-shadow .12s ease;
}
.gc-tile.filled { box-shadow: 0 2px 5px #163c3928; cursor: pointer; }
.gc-tile.empty { border-color: #8fbbb1; background: #d4e7db; }
.gc-tile.selected { transform: translateY(-2px) scale(.96); border: 2px solid #f7be5b; background: #fff0c9; box-shadow: 0 0 0 3px #fff8e5; }
.gc-tile:disabled { opacity: 1; }
.gc-food-sprite { display: block; width: 100%; height: 100%; background-repeat: no-repeat; background-size: 300% 300%; }
.gc-feature-food.food-level-1, .gc-food-sprite.food-level-1 { background-position: 0 0; }
.gc-feature-food.food-level-2, .gc-food-sprite.food-level-2 { background-position: 50% 0; }
.gc-feature-food.food-level-3, .gc-food-sprite.food-level-3 { background-position: 100% 0; }
.gc-feature-food.food-level-4, .gc-food-sprite.food-level-4 { background-position: 0 50%; }
.gc-feature-food.food-level-5, .gc-food-sprite.food-level-5 { background-position: 50% 50%; }
.gc-feature-food.food-level-6, .gc-food-sprite.food-level-6 { background-position: 100% 50%; }
.gc-feature-food.food-level-7, .gc-food-sprite.food-level-7 { background-position: 0 100%; }
.gc-feature-food.food-level-8, .gc-food-sprite.food-level-8 { background-position: 50% 100%; }
.gc-feature-food.food-level-9, .gc-food-sprite.food-level-9 { background-position: 100% 100%; }
.gc-feature-food, .gc-food-sprite { background-image: url('/games/lezzet-rotasi/food-icons.png?v=1'); }
.gc-level-number { color: var(--game-plum); font-size: 1.2rem; font-weight: 900; }
.gc-help, .gc-selection { color: var(--game-muted); font-size: .85rem; line-height: 1.5; text-align: center; }
.gc-selection { color: #815d2b; font-weight: 750; }
.gc-finish { margin-top: 8px; }
.gc-match > .btn { margin-top: 8px; }
.gc-match > .btn.text { color: var(--game-muted); }
.gc-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; }

.gc-preview-lead { margin: 0 0 14px; color: var(--game-muted); font-size: .87rem; line-height: 1.5; }
.gc-concept-board { margin: 0 0 18px; overflow: hidden; border: 1px solid #dac9b7; border-radius: 22px; background: #f4eee5; box-shadow: 0 12px 30px #44332718; }
.gc-concept-board img { display: block; width: 100%; height: auto; }
.gc-concept-board figcaption { padding: 8px 12px; color: #756873; font-size: .68rem; text-align: center; }
.gc-preview-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.gc-preview-card { position: relative; display: grid; min-width: 0; overflow: hidden; padding: 0; border: 1px solid #eadfce; border-radius: 19px; background: #fffefa; color: var(--game-ink); text-align: left; cursor: pointer; box-shadow: 0 5px 16px #48362a0b; animation: gp-card-enter .45s both; animation-delay: calc(var(--card-index)*22ms); transition: transform .2s ease, box-shadow .2s ease; }
.gc-preview-card:hover { transform: translateY(-3px); box-shadow: 0 12px 24px #48362a1d; }
.gc-preview-card:active { transform: scale(.985); }
.gc-preview-card:focus-visible,.gp-header button:focus-visible,.gp-stage button:focus-visible { outline: 3px solid #6b58a6; outline-offset: 2px; }
.gc-preview-art { position: relative; display: grid; min-height: 102px; place-items: center; overflow: hidden; background: linear-gradient(130deg,#e2f0e8,#fdf0d9 58%,#f6d9d3); }
.gc-preview-art::before,.gc-preview-art::after { position: absolute; content: ''; border: 1px solid #ffffff8c; border-radius: 50%; }
.gc-preview-art::before { width: 128px; height: 128px; animation: gp-orbit 11s linear infinite; }
.gc-preview-art::after { width: 78px; height: 78px; animation: gp-orbit 7s linear infinite reverse; }
.gc-preview-art i { z-index: 1; max-width: 90%; overflow: hidden; color: #463c41; font-size: clamp(1.1rem,4vw,1.8rem); font-style: normal; font-weight: 850; text-overflow: ellipsis; white-space: nowrap; text-shadow: 0 2px 12px #fff9; animation: gp-float 2.6s ease-in-out infinite; }
.gc-preview-art b { position: absolute; right: 12px; bottom: 8px; font-size: 1.55rem; filter: drop-shadow(0 3px 4px #302b3144); animation: gp-float 2.1s ease-in-out infinite reverse; }
.gc-preview-art em { position: absolute; inset: 0; background: linear-gradient(110deg,transparent 30%,#ffffff5c 48%,transparent 65%); transform: translateX(-100%); animation: gp-shine 4s ease-in-out infinite; }
.gc-preview-card-copy { display: grid; gap: 4px; padding: 10px 12px 8px; }
.gc-preview-card-copy small { color: #7a5b73; font-size: .61rem; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.gc-preview-card-copy strong { font-size: .93rem; }
.gc-preview-card-copy > span { min-height: 2.3em; color: var(--game-muted); font-size: .73rem; line-height: 1.4; }
.gc-preview-open-label { justify-self: start; margin: 0 12px 11px; padding: 6px 9px; border-radius: 999px; background: #f3eee6; color: #5b4b52; font-size: .68rem; font-weight: 800; }
.gc-online-intro-body { display: grid; justify-items: center; gap: 14px; max-width: 540px; margin: auto; padding: clamp(22px,6vw,44px) clamp(18px,6vw,42px) 32px; text-align: center; }
.gc-online-mark { display: grid; width: 88px; height: 88px; place-items: center; border: 1px solid #e4cb98; border-radius: 28px; background: radial-gradient(circle at 35% 25%,#fff8e8,#ead9bd); color: #54424b; font-size: 2rem; font-weight: 900; letter-spacing: -.08em; box-shadow: 0 12px 28px #37282316,inset 0 1px #fff; }
.gc-online-intro-body > p { max-width: 36ch; color: var(--game-muted); font-size: .95rem; line-height: 1.6; }
.gc-online-intro-body > ul { display: grid; gap: 8px; width: min(100%,330px); margin: 0; padding: 15px 18px; border: 1px solid #e9ddcb; border-radius: 17px; background: #fffdf9; color: #5d5359; font-size: .84rem; line-height: 1.45; text-align: left; list-style: none; }
.gc-online-intro-body > ul li::before { margin-right: 9px; color: #3d8b70; content: '✓'; font-weight: 900; }
.gc-online-intro-body > small { max-width: 40ch; color: var(--game-muted); font-size: .72rem; line-height: 1.5; }
.gc-online-join { min-height: 50px; width: min(100%,330px); border-radius: 15px; font-weight: 800; }
.gc-online-match { display: grid; gap: 12px; }
.gc-online-banner { display: grid; grid-template-columns: 42px minmax(0,1fr) auto; align-items: center; gap: 10px; padding: 12px; border: 1px solid #eee2d4; border-radius: 16px; background: #fffdf9d9; }
.gc-online-banner > div { display: grid; gap: 4px; min-width: 0; }
.gc-online-banner strong { font-size: .82rem; }
.gc-online-banner small { color: var(--game-muted); font-size: .67rem; line-height: 1.4; }
.gc-online-banner time { color: #9b684a; font-size: .82rem; font-weight: 850; font-variant-numeric: tabular-nums; }
.gc-word-mark { display: grid; width: 40px; height: 40px; place-items: center; border-radius: 12px; background: #f2e9d9; color: #715056; font-weight: 900; }
.gc-word-board { display: grid; justify-items: center; gap: 5px; width: 100%; }
.gc-word-row { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 5px; width: min(100%,310px); }
.gc-word-letter { display: grid; min-width: 0; aspect-ratio: 1; place-items: center; border: 1px solid #cbbca8; border-radius: 9px; background: #fffdf8; color: #433c43; font-size: clamp(1.15rem,6vw,1.65rem); font-weight: 850; text-transform: uppercase; }
.gc-word-letter.exact { border-color: #33816d; background: #33816d; color: #fff; animation: gc-letter-reveal .24s ease both; }
.gc-word-letter.near { border-color: #bd812c; background: #bd812c; color: #fff; animation: gc-letter-reveal .24s ease both; }
.gc-word-letter.miss { border-color: #69626b; background: #69626b; color: #fff; animation: gc-letter-reveal .24s ease both; }
.gc-word-row-empty .gc-word-letter { background: #ffffff08; border-color: #ffffff20; }
.gc-word-entry { display: grid; gap: 7px; width: min(100%,400px); margin: 2px auto; }
.gc-word-entry > label { color: #6c5c62; font-size: .76rem; font-weight: 750; }
.gc-word-entry form { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 8px; }
.gc-word-entry input { width: 100%; min-width: 0; min-height: 48px; padding: 0 13px; border: 1px solid #d9cbbc; border-radius: 13px; background: #fffdf9; color: #312b33; font: inherit; font-size: 16px; letter-spacing: .04em; }
.gc-word-entry button { min-width: 108px; min-height: 48px; }
.gc-word-entry > small { color: var(--game-muted); font-size: .69rem; }
.gc-word-standings,.gc-hangman-opponents { width: min(100%,500px); margin: 0 auto; }
.gc-word-standings h3,.gc-hangman-opponents h3 { margin: 0 0 7px; color: #806b6b; font-size: .72rem; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }
.gc-word-standings ol { display: grid; gap: 5px; margin: 0; padding: 0; list-style: none; }
.gc-word-player { display: grid; grid-template-columns: 22px 28px minmax(0,1fr) auto; align-items: center; gap: 8px; min-width: 0; padding: 7px 9px; border: 1px solid #eee3d7; border-radius: 13px; background: #fffdf9; }
.gc-word-player.is-you { border-color: #d2a95d; background: #fff8e9; }
.gc-word-player.is-done:not(.is-you) { opacity: .72; }
.gc-word-rank { color: #9a877c; font-size: .69rem; font-weight: 800; text-align: center; }
.gc-word-player-copy,.gc-hangman-player > span { display: grid; gap: 2px; min-width: 0; }
.gc-word-player-copy strong,.gc-hangman-player strong { overflow: hidden; color: #39323a; font-size: .75rem; text-overflow: ellipsis; white-space: nowrap; }
.gc-word-player-copy small,.gc-hangman-player small { color: var(--game-muted); font-size: .63rem; }
.gc-word-player > b,.gc-hangman-player > b { color: #896c62; font-size: .7rem; font-variant-numeric: tabular-nums; }
.gc-hangman-stage { display: grid; justify-items: center; gap: 8px; width: min(100%,380px); margin: auto; padding: 14px 14px 12px; border: 1px solid #e9ddce; border-radius: 19px; background: radial-gradient(ellipse at 50% 0,#fffaf0,#f7f0e7 75%); }
.gc-hangman-drawing { display: block; width: min(100%,190px); height: 144px; overflow: visible; fill: none; stroke-linecap: round; stroke-linejoin: round; stroke-width: 4; }
.gc-gallows { stroke: #9a7657; }
.gc-hangman-part { stroke: #995a57; stroke-dasharray: 90; stroke-dashoffset: 90; transition: stroke-dashoffset .3s ease; }
.gc-hangman-part.shown { stroke-dashoffset: 0; }
.gc-hangman-word { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; min-height: 43px; }
.gc-hangman-char { display: grid; width: clamp(29px,9vw,40px); height: 42px; place-items: center; border-bottom: 3px solid #94775d; color: #39323a; font-size: 1.25rem; font-weight: 850; }
.gc-hangman-char.is-hidden { color: transparent; }
.gc-hangman-life { display: grid; grid-template-columns: 1fr auto; gap: 6px 10px; width: 100%; color: #74636a; font-size: .7rem; }
.gc-hangman-life strong { color: #a85c54; font-variant-numeric: tabular-nums; }
.gc-hangman-life [role=progressbar] { grid-column: 1/-1; height: 6px; overflow: hidden; border-radius: 999px; background: #e9dfd2; }
.gc-hangman-life [role=progressbar] i { display: block; width: calc((var(--max-misses) - var(--misses)) / var(--max-misses) * 100%); height: 100%; border-radius: inherit; background: linear-gradient(90deg,#4d9a79,#d7ad58,#c05d53); transition: width .3s ease; }
.gc-hangman-keyboard { display: grid; grid-template-columns: repeat(auto-fit,minmax(39px,1fr)); gap: 6px; width: min(100%,390px); margin: auto; }
.gc-hangman-key { min-width: 0; min-height: 44px; padding: 3px; border: 1px solid #dfd2c1; border-radius: 11px; background: linear-gradient(145deg,#fffdf9,#f5ecdf); color: #443941; font: inherit; font-size: .84rem; font-weight: 800; cursor: pointer; transition: transform .16s ease,border-color .16s ease,background-color .16s ease; }
.gc-hangman-key:hover:not(:disabled) { transform: translateY(-2px); border-color: #c8a66d; }
.gc-hangman-key.is-correct { border-color: #44866d; background: #44866d; color: #fff; }
.gc-hangman-key.is-guessed:not(.is-correct) { border-color: #796f73; background: #796f73; color: #fff; }
.gc-hangman-key:disabled { cursor: default; }
.gc-hangman-opponents { display: grid; gap: 6px; }
.gc-hangman-player { display: grid; grid-template-columns: 28px minmax(0,1fr) auto; align-items: center; gap: 9px; padding: 8px 10px; border: 1px solid #e9ded1; border-radius: 13px; background: #fffdf9; }
.gc-hangman-player.is-you { border-color: #d2a95d; background: #fff8e9; }
.gc-hangman-answer { color: #55434c; text-align: center; }
.gc-game-leave { min-height: 44px; }
.gc-online-match .gc-status { margin: 0; }
@keyframes gc-letter-reveal { from { transform: scale(.84); opacity:.65; } to { transform:scale(1); opacity:1; } }
.gc-hangman-key:focus-visible,.gc-word-entry input:focus-visible,.gc-word-entry button:focus-visible,.gc-game-leave:focus-visible { outline: 3px solid #bf8f42; outline-offset: 3px; }
.gc-online-match button:active:not(:disabled) { transform: translateY(1px) scale(.98); }
@media (prefers-reduced-motion: reduce) { .gc-letter-reveal,.gc-word-letter,.gc-hangman-key,.gc-online-match button { animation: none !important; transition: none !important; } }

.gc-ludo-match,.gc-domino-match { max-width: 620px; margin-inline: auto; }
.gc-ludo-hud,.gc-domino-hud { display: grid; grid-template-columns: 52px minmax(0,1fr) auto; align-items: center; gap: 11px; padding: 11px 13px; border: 1px solid #dfcba6; border-radius: 17px; background: linear-gradient(135deg,#fff9e9,#f1e7d9); }
.gc-ludo-hud > div:nth-child(2),.gc-domino-hud > div:nth-child(2) { display: grid; gap: 3px; }
.gc-ludo-hud strong,.gc-domino-hud strong { color: #473b46; font-size: .86rem; }
.gc-ludo-hud small,.gc-domino-hud small { color: #796d73; font-size: .68rem; }
.gc-ludo-hud > span,.gc-domino-hud > span { color: #77536b; font-size: .8rem; font-weight: 900; font-variant-numeric: tabular-nums; }
.gc-ludo-die,.gc-domino-mark { display: grid; width: 46px; height: 46px; place-items: center; border: 1px solid #e6cf9c; border-radius: 15px; background: linear-gradient(145deg,#fff,#fff2ce); color: #72517b; font-size: 1.65rem; font-weight: 900; box-shadow: 0 4px 10px #624a231c; }
.gc-ludo-board { width: min(100%,440px); margin: 0 auto; padding: 10px; border: 1px solid #d8c8b4; border-radius: 26px; background: radial-gradient(circle at 50% 50%,#fffef9,#efe4d5 75%); box-shadow: 0 12px 26px #46362918,inset 0 1px #fff; }
.gc-ludo-board svg { display: block; width: 100%; height: auto; overflow: visible; }
.gc-ludo-track { fill: #f5eee2; stroke: #decdb5; stroke-width: 2; }
.gc-ludo-space { fill: #fffcf5; stroke: #d8c9b5; stroke-width: 2; }
.gc-ludo-space.is-start { fill: var(--ludo-color); stroke: #fff; stroke-width: 3; }
.gc-ludo-center-ring { fill: #fffaf0; stroke: #d5bc90; stroke-width: 2; }
.gc-ludo-home { fill: #694f72; stroke: #fff; stroke-width: 3; }
.gc-ludo-pawn { stroke: #fff; stroke-width: 2.5; filter: drop-shadow(0 2px 2px #241d1e66); }
.gc-ludo-pawn.is-movable { cursor: pointer; stroke: #fff0a9; stroke-width: 4; animation: gc-pulse 1s ease-in-out infinite alternate; }
.gc-ludo-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 8px; min-height: 46px; }
.gc-ludo-roll { min-width: 150px; min-height: 48px; }
.gc-ludo-hint { margin: 0; color: #684f70; font-size: .8rem; font-weight: 850; text-align: center; }
.gc-ludo-token-pick,.gc-domino-sides button { min-height: 44px; padding: 9px 13px; border: 1px solid #ccb48e; border-radius: 12px; background: #fff9e9; color: #51424a; font: inherit; font-size: .75rem; font-weight: 850; cursor: pointer; }
.gc-ludo-players,.gc-domino-players { display: grid; grid-template-columns: 1fr 1fr; gap: 7px; margin: 0; padding: 0; list-style: none; }
.gc-ludo-player,.gc-domino-player { display: grid; grid-template-columns: 9px minmax(0,1fr) auto; align-items: center; gap: 8px; padding: 9px 10px; border: 1px solid #e5d9cb; border-radius: 13px; background: #fffdf9; }
.gc-ludo-player.is-you,.gc-domino-player.is-you { border-color: #d2ad68; background: #fff8e8; }
.gc-ludo-player > i { width: 9px; height: 9px; border-radius: 50%; background: var(--ludo-color); box-shadow: 0 0 0 3px #0001; }
.gc-ludo-player > span,.gc-domino-player > span:nth-child(2) { display: grid; min-width: 0; gap: 2px; }
.gc-ludo-player strong,.gc-domino-player strong { overflow: hidden; color: #483d45; font-size: .7rem; text-overflow: ellipsis; white-space: nowrap; }
.gc-ludo-player small,.gc-domino-player small { color: #82757b; font-size: .61rem; }
.gc-ludo-player > b,.gc-domino-player > b { color: #796a74; font-size: .66rem; }
.gc-domino-table { min-height: 165px; display: grid; align-content: center; gap: 13px; padding: 15px; border: 1px solid #d9c9b5; border-radius: 20px; background: radial-gradient(ellipse,#f8f0e4,#e9dece); }
.gc-domino-endpoints { display: grid; grid-template-columns: 1fr 1fr 1fr; align-items: center; color: #8a786d; font-size: .62rem; font-weight: 900; letter-spacing: .13em; text-align: center; }
.gc-domino-endpoints span:first-child { color: #694f72; font-size: 1.05rem; letter-spacing: 0; }
.gc-domino-endpoints span:last-child { color: #694f72; font-size: 1.05rem; letter-spacing: 0; }
.gc-domino-chain { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 5px; max-height: 210px; overflow-y: auto; }
.gc-domino-empty { color: #897c81; font-size: .76rem; }
.gc-domino-tile { display: inline-grid; grid-template-columns: 1fr 2px 1fr; align-items: center; gap: 5px; min-width: 54px; min-height: 56px; padding: 5px 7px; border: 1px solid #d9cebd; border-radius: 12px; background: linear-gradient(145deg,#fffdf8,#eee4d4); color: #403942; font: inherit; box-shadow: 0 3px 7px #31241b20; }
button.gc-domino-tile { cursor: pointer; transition: transform .16s ease,border-color .16s ease; }
button.gc-domino-tile:hover:not(:disabled),button.gc-domino-tile.is-selected { transform: translateY(-3px); border-color: #bd8e48; }
.gc-domino-tile b { display: grid; place-items: center; min-width: 14px; height: 28px; border-radius: 6px; background: #fff; color: #514450; font-size: .88rem; }
.gc-domino-tile i { width: 2px; height: 30px; background: #cbbba6; }
.gc-domino-tile.is-board { min-width: 47px; min-height: 47px; padding: 3px; gap: 3px; }
.gc-domino-tile.is-board b { height: 23px; font-size: .76rem; }
.gc-domino-tile.is-board i { height: 25px; }
.gc-domino-hand-head { display: flex; justify-content: space-between; align-items: center; gap: 9px; color: #4a3e45; font-size: .76rem; }
.gc-domino-hand-head span { color: #80737a; font-size: .65rem; }
.gc-domino-hand { display: flex; gap: 7px; overflow-x: auto; padding: 3px 2px 9px; scrollbar-width: thin; }
.gc-domino-hand .gc-domino-tile { flex: 0 0 auto; }
.gc-domino-sides { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 7px; padding: 10px; border: 1px solid #eadcc9; border-radius: 14px; background: #fffaf1; }
.gc-domino-sides > span { width: 100%; color: #695b63; font-size: .72rem; font-weight: 800; text-align: center; }
.gc-domino-sides button { min-width: 92px; }
.gc-domino-actions { display: flex; justify-content: center; }
.gc-domino-avatar { display: grid; width: 27px; height: 27px; place-items: center; border-radius: 50%; background: #73557d; color: #fff; font-size: .75rem; font-weight: 900; }
@media (max-width: 480px) { .gc-ludo-board { width: min(100%,360px); padding: 6px; border-radius: 20px; } .gc-ludo-players,.gc-domino-players { gap: 5px; } .gc-ludo-player,.gc-domino-player { gap: 6px; padding: 8px 7px; } .gc-domino-table { min-height: 140px; padding: 10px; } .gc-domino-chain { max-height: 155px; } .gc-domino-hand { margin-inline: -4px; } }
@media (prefers-reduced-motion: reduce) { .gc-ludo-pawn.is-movable { animation: none; } }
.gc-trivia-match { max-width: 620px; margin-inline: auto; }
.gc-trivia-score { display: grid; gap: 12px; padding: 13px; border: 1px solid #e2d2bb; border-radius: 17px; background: linear-gradient(140deg,#fffaf0,#f1e8dd); }
.gc-trivia-score > ol { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 0; padding: 0; list-style: none; }
.gc-trivia-player { display: grid; grid-template-columns: 32px minmax(0,1fr) auto; align-items: center; gap: 8px; padding: 8px 9px; border: 1px solid #eadfce; border-radius: 13px; background: #fffdf9; }
.gc-trivia-player.is-you { border-color: #d2ad68; background: #fff8e8; }
.gc-trivia-player > span:nth-child(2) { display: grid; gap: 2px; }
.gc-trivia-player strong { color: #4a3e45; font-size: .71rem; }
.gc-trivia-player small { color: #80737a; font-size: .61rem; }
.gc-trivia-player > b { color: #795778; font-size: .95rem; }
.gc-trivia-progress { display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 10px; color: #876e5a; font-size: .61rem; font-weight: 900; letter-spacing: .1em; }
.gc-trivia-progress > b { height: 6px; overflow: hidden; border-radius: 9px; background: #e6dbce; }
.gc-trivia-progress i { display: block; width: var(--trivia-progress); height: 100%; border-radius: inherit; background: linear-gradient(90deg,#5a9b83,#d1a355); transition: width .25s ease; }
.gc-trivia-card { position: relative; display: grid; gap: 14px; padding: 20px; border: 1px solid #dfca9e; border-radius: 22px; background: radial-gradient(ellipse at 50% 0,#fff8df,#fffdf7 65%); box-shadow: 0 12px 26px #4e351719; }
.gc-trivia-clock { justify-self: end; display: grid; min-width: 65px; min-height: 34px; place-items: center; padding: 5px 10px; border: 1px solid #e1d1b4; border-radius: 999px; background: #fff; color: #855f4d; font-size: .78rem; font-weight: 900; font-variant-numeric: tabular-nums; }
.gc-trivia-card h3 { padding: 0 4px; color: #403740; font-size: clamp(1.1rem,4.4vw,1.5rem); line-height: 1.38; text-align: center; }
.gc-trivia-choices { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; }
.gc-trivia-choice { display: grid; grid-template-columns: 31px minmax(0,1fr); align-items: center; gap: 9px; min-height: 56px; padding: 9px 11px; border: 1px solid #e5d8c5; border-radius: 15px; background: linear-gradient(145deg,#fff,#faf3e8); color: #51434c; font: inherit; font-size: .8rem; font-weight: 750; text-align: left; cursor: pointer; transition: transform .16s ease,border-color .16s ease,background .16s ease; }
.gc-trivia-choice > span { display: grid; width: 29px; height: 29px; place-items: center; border-radius: 9px; background: #f0e7d9; color: #7c5c73; font-size: .76rem; font-weight: 900; }
.gc-trivia-choice:hover:not(:disabled) { transform: translateY(-2px); border-color: #c39a5b; }
.gc-trivia-choice.is-selected { border-color: #9870a4; background: #f7eef9; }
.gc-trivia-choice.is-right { border-color: #43876d; background: #eaf5ed; }
.gc-trivia-choice:disabled { cursor: default; opacity: .8; }
.gc-trivia-feedback { margin: 0; padding: 10px 12px; border: 1px solid #c9dfce; border-radius: 12px; background: #eef8f0; color: #426b51; font-size: .78rem; font-weight: 800; text-align: center; }
.gc-trivia-finish { display: grid; justify-items: center; gap: 7px; padding: 30px 15px; border: 1px solid #e2d0a5; border-radius: 20px; background: radial-gradient(circle at 50% 0,#fff0c4,#fffdf7 65%); text-align: center; }
.gc-trivia-finish > span { color: #bc8b44; font-size: 2rem; }
.gc-trivia-finish h3 { color: #51404b; }
.gc-trivia-finish p { color: #7c6d72; font-size: .8rem; }
@media (max-width: 480px) { .gc-trivia-card { padding: 15px; } .gc-trivia-choices { grid-template-columns: 1fr; gap: 7px; } .gc-trivia-choice { min-height: 50px; } }
@media (prefers-reduced-motion: reduce) { .gc-trivia-choice,.gc-trivia-progress i { animation: none; transition: none; } }
.gc-darts-match { max-width: 560px; margin-inline: auto; }
.gc-darts-scores { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 13px; padding: 13px; border: 1px solid #dfd1bf; border-radius: 17px; background: linear-gradient(140deg,#fffaf0,#f1e7d9); }
.gc-darts-scores > span { color: #9c7763; font-size: .63rem; font-weight: 900; letter-spacing: .13em; }
.gc-darts-score { display: grid; justify-items: center; gap: 3px; padding: 8px; border-radius: 13px; }
.gc-darts-score.is-you { background: #fff1d5; }
.gc-darts-score small { color: #796b70; font-size: .65rem; font-weight: 750; }
.gc-darts-score strong { color: #554150; font-size: clamp(1.5rem,7vw,2rem); font-weight: 900; font-variant-numeric: tabular-nums; }
.gc-darts-board-wrap { display: grid; justify-items: center; gap: 10px; padding: 16px; border: 1px solid #dfd1be; border-radius: 22px; background: radial-gradient(ellipse at 50% 15%,#fffdf7,#ede1d1 72%); }
.gc-darts-board { display: block; width: min(100%,330px); height: auto; overflow: visible; border: 7px solid #76523b; border-radius: 50%; background: #172522; box-shadow: 0 8px 20px #2c1d1640,inset 0 0 0 3px #d2b477; cursor: default; touch-action: none; }
.gc-darts-board.is-ready { cursor: crosshair; }
.gc-darts-board[aria-disabled="true"] { filter: saturate(.65); }
.gc-dart-number { fill: #f7e8c5; stroke: #13201c; stroke-width: 1.8px; paint-order: stroke; font-size: 7px; font-weight: 900; }
.gc-darts-hint { min-height: 22px; color: #6b5960; font-size: .74rem; font-weight: 800; text-align: center; }
.gc-darts-throws { display: flex; flex-wrap: wrap; justify-content: center; gap: 7px; }
.gc-auction-match { max-width: 560px; margin-inline: auto; }
.gc-auction-lot { position: relative; display: grid; justify-items: center; gap: 6px; overflow: hidden; margin: 14px 0; padding: 22px 18px 18px; border: 1px solid #e4d5b4; border-radius: 24px; background: radial-gradient(ellipse at 50% 0,#fff8df 0,#fff 66%); text-align: center; }
.gc-auction-star { display: grid; width: 82px; height: 82px; place-items: center; margin-bottom: 5px; border: 1px solid #e8cb84; border-radius: 25px; background: linear-gradient(145deg,#fffdf4,#f3e2b6); color: #936c34; font-size: 2.8rem; box-shadow: 0 10px 24px #8b70402b,inset 0 1px #fff; animation: gc-auction-glow 3s ease-in-out infinite; }
.gc-auction-lot small,.gc-auction-bidboard > span { color: #967a51; font-size: .62rem; font-weight: 900; letter-spacing: .14em; }
.gc-auction-lot h3 { margin: 0; color: #453a38; font-size: clamp(1.2rem,5vw,1.55rem); }
.gc-auction-lot p { max-width: 330px; margin: 0; color: #786d68; font-size: .78rem; line-height: 1.5; }
.gc-auction-bidboard { position: relative; display: grid; justify-items: center; gap: 5px; padding: 17px; border: 1px solid #e8dfd4; border-radius: 19px; background: linear-gradient(145deg,#fff,#faf5ef); }
.gc-auction-bidboard > strong { color: #473b3a; font-size: clamp(1.8rem,8vw,2.5rem); font-variant-numeric: tabular-nums; }
.gc-auction-bidboard > strong small { color: #8d7f78; font-size: .72rem; }
.gc-auction-clock { position: absolute; top: 12px; right: 13px; color: #a96156; font-size: .72rem; font-weight: 900; font-variant-numeric: tabular-nums; }
.gc-auction-progress { width: 100%; height: 5px; overflow: hidden; border-radius: 9px; background: #eee6dc; }
.gc-auction-progress i { display: block; width: var(--auction-progress); height: 100%; border-radius: inherit; background: linear-gradient(90deg,#6e987b,#d0a664); transition: width .5s ease; }
.gc-auction-wallet { display: grid; gap: 3px; margin: 12px 0; padding: 12px 14px; border-radius: 15px; background: #f5f1eb; color: #70645f; font-size: .75rem; }
.gc-auction-wallet b { color: #493d3a; font-size: 1.15rem; font-variant-numeric: tabular-nums; }
.gc-auction-wallet small { color: #96744b; font-size: .68rem; }
.gc-auction-bid { min-height: 50px; border-radius: 16px; background: linear-gradient(120deg,#6f536f,#a96569); box-shadow: 0 8px 18px #694b5b33; transition: transform .18s ease,box-shadow .18s ease; }
.gc-auction-bid:not(:disabled):active { transform: scale(.985); box-shadow: 0 3px 9px #694b5b2e; }
.gc-auction-bid:disabled { opacity: .55; cursor: not-allowed; }
.gc-auction-players { display: grid; gap: 7px; margin: 14px 0; padding: 0; list-style: none; }
.gc-auction-player { display: grid; grid-template-columns: 38px minmax(0,1fr) auto; align-items: center; gap: 10px; padding: 10px 12px; border: 1px solid #ece5dc; border-radius: 15px; background: #fff; }
.gc-auction-player.is-you { border-color: #dfcfb6; background: #fffcf6; }
.gc-auction-player > span:nth-child(2) { display: grid; gap: 3px; min-width: 0; }
.gc-auction-player strong { overflow: hidden; color: #4e4342; font-size: .78rem; text-overflow: ellipsis; white-space: nowrap; }
.gc-auction-player small { color: #877b76; font-size: .66rem; }
.gc-auction-player > b { color: #665353; font-size: .78rem; font-variant-numeric: tabular-nums; }
.gc-auction-history { padding: 12px 13px; border: 1px solid #eee8e0; border-radius: 17px; background: #fff; }
.gc-auction-history h3 { margin: 0 0 8px; color: #5c4a4e; font-size: .82rem; }
.gc-auction-history ol { display: grid; gap: 6px; margin: 0; padding: 0; list-style: none; }
.gc-auction-history li { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 2px 10px; color: #625655; font-size: .73rem; }
.gc-auction-history li b { color: #554345; font-variant-numeric: tabular-nums; }
.gc-auction-history li small { grid-column: 1 / -1; color: #938782; font-size: .62rem; }
.gc-auction-history-empty { color: #857976 !important; }
.gc-auction-finish { display: grid; gap: 5px; padding: 14px; border-radius: 16px; background: #f4efe6; color: #514447; text-align: center; }
.gc-auction-finish span { color: #857872; font-size: .72rem; }
@keyframes gc-auction-glow { 0%,100% { transform: translateY(0); box-shadow: 0 10px 24px #8b70402b,inset 0 1px #fff; } 50% { transform: translateY(-3px); box-shadow: 0 14px 30px #8b704041,inset 0 1px #fff; } }
@media (max-width: 360px) { .gc-auction-lot { padding: 16px 12px 14px; } .gc-auction-star { width: 68px; height: 68px; border-radius: 21px; font-size: 2.35rem; } .gc-auction-bidboard { padding: 15px 12px; } }
.gc-flick-match { max-width: 620px; margin-inline: auto; }
.gc-flick-score { display: grid; grid-template-columns: minmax(0,1fr) auto minmax(0,1fr); align-items: center; gap: 10px; margin: 12px 0; padding: 11px; border: 1px solid #e4d8ca; border-radius: 17px; background: linear-gradient(135deg,#fffaf1,#f3eadf); }
.gc-flick-score > span { color: #9a806d; font-size: .62rem; font-weight: 900; }
.gc-flick-score-player { display: grid; justify-items: center; gap: 3px; min-width: 0; padding: 7px 4px; border-radius: 12px; text-align: center; }
.gc-flick-score-player.is-you { background: #fff; }
.gc-flick-score-player small { max-width: 100%; overflow: hidden; color: #75675f; font-size: .64rem; font-weight: 750; text-overflow: ellipsis; white-space: nowrap; }
.gc-flick-score-player strong { color: #4c3d3a; font-size: 1.55rem; font-variant-numeric: tabular-nums; }
.gc-flick-board-wrap { display: grid; justify-items: center; gap: 9px; padding: clamp(9px,3vw,16px); border: 1px solid #dfd2c3; border-radius: 22px; background: radial-gradient(ellipse at 50% 10%,#fffdf9,#ece2d6 75%); }
.gc-flick-board { display: block; width: min(100%,500px); height: auto; aspect-ratio: 1; overflow: visible; border-radius: 26px; filter: drop-shadow(0 8px 15px #36251a29); }
.gc-flick-disk { stroke: #75583c; stroke-width: 4; filter: drop-shadow(0 3px 2px #48372b4d); transition: cx .25s ease,cy .25s ease; }
.gc-flick-disk.is-white { fill: #fff3da; }
.gc-flick-disk.is-black { fill: #4b3b37; stroke: #c7aa7c; }
.gc-flick-disk.is-queen { fill: #b64751; stroke: #ffdfbe; stroke-width: 6; }
.gc-flick-striker { fill: #75537f; stroke: #fff3df; stroke-width: 7; filter: drop-shadow(0 5px 5px #38283c73); }
.gc-flick-striker-highlight { fill: #f8e9ff; }
.gc-flick-shot-hint { min-height: 22px; color: #67565b; font-size: .72rem; font-weight: 800; text-align: center; }
.gc-flick-controls { display: grid; gap: 11px; margin-top: 12px; padding: 14px; border: 1px solid #ece1d4; border-radius: 18px; background: #fff; }
.gc-flick-control { display: grid; gap: 6px; color: #6b5d5c; font-size: .72rem; font-weight: 750; }
.gc-flick-control > span { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.gc-flick-control b { color: #705376; font-variant-numeric: tabular-nums; }
.gc-flick-control input { width: 100%; min-height: 28px; accent-color: #855d83; cursor: pointer; }
.gc-flick-shoot { min-height: 48px; border-radius: 15px; background: linear-gradient(120deg,#6d536f,#aa696b); }
.gc-flick-result { display: grid; gap: 5px; margin-top: 12px; padding: 14px; border-radius: 15px; background: #f4eee5; color: #554648; text-align: center; }
.gc-flick-result span { color: #857872; font-size: .7rem; }
@media (max-width: 360px) { .gc-flick-board-wrap { padding: 8px; border-radius: 17px; } .gc-flick-controls { gap: 8px; padding: 11px; } }
@media (prefers-reduced-motion: reduce) { .gc-flick-disk { transition: none; } }
.gc-pool-match { max-width: 680px; margin-inline: auto; }
.gc-pool-scores { display: grid; grid-template-columns: minmax(0,1fr) auto minmax(0,1fr); align-items: center; gap: 10px; margin: 12px 0; padding: 11px; border: 1px solid #e4d7c7; border-radius: 16px; background: linear-gradient(140deg,#fffaf0,#efe5d8); }
.gc-pool-scores > span { color: #9d826d; font-size: .62rem; font-weight: 900; }
.gc-pool-scores > div { display: grid; justify-items: center; gap: 3px; min-width: 0; padding: 7px 4px; border-radius: 12px; text-align: center; }
.gc-pool-scores > .is-you { background: #fff; }
.gc-pool-scores small { max-width: 100%; overflow: hidden; color: #71655e; font-size: .62rem; font-weight: 750; text-overflow: ellipsis; white-space: nowrap; }
.gc-pool-scores strong { color: #493d3a; font-size: 1.5rem; font-variant-numeric: tabular-nums; }
.gc-pool-table-wrap { display: grid; justify-items: center; gap: 9px; padding: clamp(8px,2.5vw,14px); border: 1px solid #dfd0bd; border-radius: 21px; background: radial-gradient(ellipse at 50% 10%,#fffdf8,#e9dfd1 76%); }
.gc-pool-table { display: block; width: 100%; height: auto; aspect-ratio: 2; border-radius: 24px; filter: drop-shadow(0 8px 14px #34261f35); }
.gc-pool-table[role="button"] { cursor: crosshair; touch-action: manipulation; }
.gc-pool-ball { filter: drop-shadow(0 2px 2px #15251e66); }
.gc-pool-ball.is-cue { transition: cx .2s ease,cy .2s ease; }
.gc-pool-table-wrap > span { min-height: 20px; color: #67595a; font-size: .7rem; font-weight: 800; text-align: center; }
.gc-pool-controls { display: grid; gap: 11px; margin-top: 12px; padding: 14px; border: 1px solid #ece2d7; border-radius: 17px; background: #fff; }
.gc-pool-controls label { display: grid; gap: 6px; color: #6b5d5c; font-size: .72rem; font-weight: 750; }
.gc-pool-controls label span { display: flex; justify-content: space-between; gap: 8px; }
.gc-pool-controls label b { color: #705376; font-variant-numeric: tabular-nums; }
.gc-pool-controls input { width: 100%; min-height: 28px; accent-color: #855d83; }
.gc-pool-shoot { min-height: 48px; border-radius: 15px; background: linear-gradient(120deg,#6d536f,#aa696b); }
.gc-pool-result { margin: 12px 0; padding: 14px; border-radius: 15px; background: #f4eee5; color: #554648; text-align: center; }
@media (max-width: 360px) { .gc-pool-table-wrap { padding: 7px; border-radius: 17px; } .gc-pool-controls { gap: 8px; padding: 11px; } }
.gc-okey-match { max-width: 760px; margin-inline: auto; }
.gc-okey-table { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin: 12px 0; padding: 14px; border: 1px solid #d9c3a0; border-radius: 18px; background: radial-gradient(ellipse at 50% 0,#39796b,#1f4c48 75%); color: #fff7e5; }
.gc-okey-indicator { display: grid; grid-template-columns: 32px auto; align-items: center; gap: 2px 9px; }
.gc-okey-indicator small { grid-column: 1 / -1; color: #d3c3a0; font-size: .58rem; font-weight: 900; letter-spacing: .12em; }
.gc-okey-indicator b { display: grid; width: 32px; height: 43px; place-items: center; border-radius: 6px; background: #fff8e8; color: var(--tile-ink); font-size: 1.15rem; box-shadow: 0 3px 7px #0f252a52; }
.gc-okey-indicator span { color: #f5dfb2; font-size: .7rem; font-weight: 800; }
.gc-okey-stock { display: grid; justify-items: center; padding: 6px 10px; border: 1px solid #ead2a25c; border-radius: 12px; background: #ffffff0b; }
.gc-okey-stock b { font-size: 1.05rem; font-variant-numeric: tabular-nums; }
.gc-okey-stock small { color: #e4d0b0; font-size: .62rem; }
.gc-okey-clock { margin-left: auto; color: #f1dcae; font-size: .78rem; font-weight: 900; font-variant-numeric: tabular-nums; }
.gc-okey-middle { display: grid; grid-template-columns: minmax(0,1fr); gap: 10px; margin: 12px 0; padding: 12px; border: 1px solid #dfd4c6; border-radius: 18px; background: linear-gradient(145deg,#fffaf1,#f2e8dc); }
.gc-okey-players { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 6px; margin: 0; padding: 0; list-style: none; }
.gc-okey-player { display: grid; grid-template-columns: 22px minmax(0,1fr) auto; align-items: center; gap: 5px; min-width: 0; padding: 7px 6px; border: 1px solid #ebe2d7; border-radius: 11px; background: #fff; }
.gc-okey-player.is-turn { border-color: #c7a66f; box-shadow: inset 0 0 0 1px #c7a66f55; }
.gc-okey-player.is-you { background: #fffaf0; }
.gc-okey-seat { display: grid; width: 21px; height: 21px; place-items: center; border-radius: 50%; background: #eee5da; color: #77645b; font-size: .62rem; font-weight: 900; }
.gc-okey-player > span:nth-child(2) { display: grid; min-width: 0; gap: 2px; }
.gc-okey-player strong { overflow: hidden; color: #554747; font-size: .65rem; text-overflow: ellipsis; white-space: nowrap; }
.gc-okey-player small { color: #897c73; font-size: .57rem; }
.gc-okey-player > b { color: #76644f; font-size: .68rem; font-variant-numeric: tabular-nums; }
.gc-okey-discard-row { display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 54px; }
.gc-okey-discard,.gc-okey-deck { display: grid; grid-template-rows: 34px 5px; align-items: center; justify-items: center; width: 35px; height: 44px; padding: 3px; border: 1px solid #ddcfb8; border-radius: 6px; background: #fffaf0; color: #504550; font-size: .9rem; font-weight: 900; box-shadow: 0 2px 4px #40332c1c; }
.gc-okey-discard i { width: 17px; height: 3px; border-radius: 4px; background: var(--tile-ink,#a97969); }
.gc-okey-deck { background: repeating-linear-gradient(135deg,#6b4b71 0 3px,#856386 3px 6px); color: #fff6e8; font-size: 1rem; }
.gc-okey-deck small { align-self: end; font-size: .54rem; }
.gc-okey-last-discard { display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 33px; color: #74635d; font-size: .68rem; }
.gc-okey-last-discard b { display: grid; width: 24px; height: 32px; place-items: center; border-radius: 4px; background: #fff; color: var(--tile-ink); box-shadow: 0 1px 4px #0002; }
.gc-okey-hand-head { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; margin: 12px 0 7px; color: #514347; font-size: .82rem; }
.gc-okey-hand-head span { color: #897b75; font-size: .65rem; }
.gc-okey-hand { display: flex; gap: 4px; overflow-x: auto; margin: 0 -5px; padding: 6px 5px 10px; scrollbar-width: thin; scrollbar-color: #b69aad #f1ebe3; }
.gc-okey-tile { position: relative; display: grid; flex: 0 0 35px; grid-template-rows: 29px 3px; align-content: center; justify-items: center; gap: 3px; width: 35px; height: 52px; padding: 3px; border: 1px solid #d8cbbb; border-radius: 6px; background: linear-gradient(150deg,#fffefa,#f2eadf); color: var(--tile-ink); box-shadow: 0 3px 5px #4d3d3017; transition: transform .17s ease,border-color .17s ease,box-shadow .17s ease; }
.gc-okey-tile b { font-size: 1.08rem; line-height: 1; }
.gc-okey-tile i { width: 16px; height: 3px; border-radius: 4px; background: var(--tile-ink); }
.gc-okey-tile.is-selected { transform: translateY(-6px); border-color: #9975a0; box-shadow: 0 6px 11px #60476030; }
.gc-okey-tile.is-joker::after { position: absolute; inset: -4px; border: 1px solid #cba66b; border-radius: 8px; content: ''; pointer-events: none; }
.gc-okey-tile.is-joker > span { position: absolute; bottom: 1px; right: 1px; padding: 1px 2px; border-radius: 3px; background: #85648b; color: #fff; font-size: .38rem; font-weight: 900; }
.gc-okey-tile.is-fake { grid-template-rows: auto; color: #89628f; font-size: .53rem; font-weight: 900; }
.gc-okey-actions { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 8px; }
.gc-okey-actions .btn { flex: 1 1 140px; min-height: 44px; white-space: normal; }
.gc-okey-actions .btn:disabled { opacity: .5; }
.gc-okey-help { margin: 8px 2px 0; color: #81746e; font-size: .68rem; line-height: 1.5; }
.gc-okey-finish { padding: 14px; border-radius: 15px; background: #f3eee4; color: #554547; text-align: center; }
@media (max-width: 380px) { .gc-okey-middle { gap: 8px; padding: 9px; } .gc-okey-players { gap: 4px; } .gc-okey-player { grid-template-columns: 19px minmax(0,1fr); gap: 4px; padding: 6px 4px; } .gc-okey-seat { width: 18px; height: 18px; } .gc-okey-player > b { display: none; } .gc-okey-hand { gap: 3px; } .gc-okey-tile { flex-basis: 33px; width: 33px; } }
@media (prefers-reduced-motion: reduce) { .gc-okey-tile { transition: none; } }
.gc-dart-result { padding: 7px 10px; border: 1px solid #e4d8c8; border-radius: 999px; background: #fffdf8; color: #70636b; font-size: .65rem; font-weight: 750; }
.gc-dart-result b { margin-left: 4px; color: #785a78; }
.gc-dart-result.is-empty { color: #8a7c81; }
@media (max-width: 480px) { .gc-darts-board-wrap { padding: 12px; } .gc-darts-board { width: min(100%,290px); } }
.gc-preview-screen { overflow: hidden; border: 1px solid #dac9b4; border-radius: 25px; background: radial-gradient(ellipse at 50% 18%,#fffdf5,#f6ecdd 72%); box-shadow: 0 20px 54px #43332a1a; animation: gp-screen-enter .32s ease both; }
.gp-header { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 12px; padding: 15px 16px 12px; border-bottom: 1px solid #eadfce; }
.gp-header button { min-height: 40px; padding: 8px 11px; border: 1px solid #e2d5c6; border-radius: 13px; background: #fff; color: #51464e; font: inherit; font-size: .76rem; font-weight: 800; cursor: pointer; }
.gp-header small { color: #846579; font-size: .58rem; font-weight: 900; letter-spacing: .11em; }
.gp-header h2 { margin: 3px 0 0; font-size: clamp(1rem,4.5vw,1.32rem); }
.gp-live { display: flex; align-items: center; gap: 6px; color: #426f62; font-size: .58rem; font-weight: 900; }
.gp-live i { width: 7px; height: 7px; border-radius: 50%; background: #4dae80; box-shadow: 0 0 0 4px #4dae8022; animation: gp-live 1.4s infinite; }
.gp-player-strip { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 12px; margin: 12px 14px 2px; padding: 10px 13px; border: 1px solid #eee2d4; border-radius: 17px; background: #fffdf9d9; }
.gp-player-strip span { display: grid; grid-template-columns: auto 1fr; align-items: center; column-gap: 8px; }
.gp-player-strip span:last-child { justify-content: end; text-align: right; }
.gp-player-strip i { grid-row: span 2; font-size: 1.35rem; font-style: normal; }
.gp-player-strip b { font-size: .74rem; }
.gp-player-strip small { color: var(--game-muted); font-size: .62rem; }
.gp-player-strip strong { color: #c56b59; font-size: .65rem; }
.gp-message { min-height: 22px; margin: 10px 14px; color: #675562; font-size: .8rem; font-weight: 750; text-align: center; }
.gp-stage { min-height: 340px; margin: 0 12px; padding: 13px; border: 1px solid #e2d5c7; border-radius: 20px; background: linear-gradient(145deg,#fffdf9,#f7f0e7); box-shadow: inset 0 2px 9px #503a2710; animation: gp-stage-in .25s ease both; }
.gp-bottom-bar { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin: 12px; padding: 10px 13px; border: 1px solid #e9dccb; border-radius: 15px; background: #fffdf9; }
.gp-bottom-bar > span:first-child { display: grid; grid-template-columns: auto 1fr; column-gap: 7px; align-items: center; font-size: .76rem; }
.gp-bottom-bar > span:first-child::first-letter { font-size: 1.2rem; }
.gp-bottom-bar small { grid-column: 2; color: var(--game-muted); font-size: .64rem; }
.gp-preview-badge { padding: 6px 8px; border-radius: 999px; background: #ede7f2; color: #655177; font-size: .58rem; font-weight: 900; letter-spacing: .06em; }
.gp-canvas-wrap { max-width: 470px; margin: auto; }
.gp-canvas { display: block; width: 100%; height: min(60vw,340px); min-height: 240px; border-radius: 17px; cursor: crosshair; touch-action: none; box-shadow: 0 8px 22px #1d252b30; }
.gp-canvas-hint { margin-top: 9px; color: #766a70; font-size: .72rem; text-align: center; }
.gp-match3 { max-width: 440px; margin: auto; }
.gp-merge { max-width: 430px; margin: auto; padding: 12px; border: 1px solid #efcf9c; border-radius: 21px; background: radial-gradient(circle at 50% 0,#fff3dc,#fffaf2 60%); }
.gp-merge-top { display: flex; justify-content: space-between; margin: 0 2px 9px; color: #956744; font-size: .64rem; font-weight: 900; letter-spacing: .08em; }
.gp-merge-top b { color: #544044; letter-spacing: 0; }
.gp-merge-grid { display: grid; grid-template-columns: repeat(5,1fr); gap: 6px; padding: 8px; border: 1px solid #b0c6ae; border-radius: 17px; background: linear-gradient(145deg,#76a98f,#477d72); }
.gp-merge-grid button { aspect-ratio: 1; min-width: 0; border: 1px solid #f0dfc6; border-radius: 12px; background: linear-gradient(145deg,#fffefa,#f5e8d5); font-size: clamp(1.25rem,7vw,2.1rem); box-shadow: 0 3px 6px #153b332d; cursor: pointer; transition: transform .16s ease; }
.gp-merge-grid button:hover { transform: translateY(-3px) scale(1.04); }
.gp-merge-recipe { margin-top: 11px; color: #765d68; font-size: 1.12rem; text-align: center; }
.gp-merge-recipe em { color: #c17b52; font-style: normal; }
.gp-boosts { display: flex; justify-content: space-between; gap: 5px; margin-bottom: 10px; color: #806571; font-size: .65rem; }
.gp-boosts b { color: #3b343c; }
.gp-match-grid { display: grid; grid-template-columns: repeat(7,1fr); gap: 5px; padding: 8px; border: 1px solid #9f7a9d; border-radius: 18px; background: linear-gradient(145deg,#8d6797,#5e568e); box-shadow: inset 0 4px 10px #33284a55; }
.gp-match-grid button { aspect-ratio: 1; min-width: 0; padding: 0; border: 1px solid #ffffff9c; border-radius: 12px; background: linear-gradient(145deg,#fff,#f2e8fa); font-size: clamp(1rem,6vw,1.65rem); cursor: pointer; box-shadow: 0 3px 4px #34284234; transition: transform .16s ease, filter .16s ease; }
.gp-match-grid button:nth-child(3n) { background: linear-gradient(145deg,#fff7df,#ffd993); }
.gp-match-grid button:nth-child(4n) { background: linear-gradient(145deg,#ffe7e5,#ffb9bd); }
.gp-match-grid button:hover { transform: translateY(-3px) scale(1.06); filter: brightness(1.08); }
.gp-match-grid button.selected { transform: scale(.88); outline: 3px solid #ffdb60; }
.gp-booster-row { display: flex; justify-content: center; gap: 9px; margin-top: 12px; }
.gp-booster-row button,.gp-action,.gp-options button,.gp-pk button,.gp-auction button,.gp-spy-controls button { min-height: 42px; padding: 9px 12px; border: 0; border-radius: 13px; background: linear-gradient(130deg,#715478,#aa6d70); color: #fff; font: inherit; font-size: .73rem; font-weight: 850; cursor: pointer; box-shadow: 0 5px 12px #65445c2b; }
.gp-quiz { max-width: 470px; margin: 18px auto; padding: 20px; border: 1px solid #d7c5aa; border-radius: 22px; background: radial-gradient(circle at 50% 0,#fff8d9,#fffdf7 62%); box-shadow: 0 12px 28px #694a251c; }
.gp-question-no { color: #9b6d43; font-size: .66rem; font-weight: 900; letter-spacing: .12em; }
.gp-quiz h3 { margin: 12px 0 18px; font-size: 1.16rem; line-height: 1.4; }
.gp-options { display: grid; grid-template-columns: 1fr 1fr; gap: 9px; }
.gp-options button { min-height: 56px; border: 1px solid #e7dac7; background: #fff; color: #443b42; text-align: left; }
.gp-options button:hover { border-color: #ce955f; background: #fff5e7; }
.gp-clock { height: 7px; overflow: hidden; margin-top: 18px; border-radius: 99px; background: #eee5da; }
.gp-clock i { display: block; width: var(--progress); height: 100%; border-radius: inherit; background: linear-gradient(90deg,#58ad92,#f0c05c,#e76a57); transition: width .3s ease; }
.gp-word { max-width: 480px; margin: auto; text-align: center; }
.gp-hangman-art { display: block; margin: 2px 0 13px; font-size: 4rem; animation: gp-float 2s infinite; }
.gp-word-letters { display: flex; justify-content: center; gap: 9px; margin-bottom: 20px; }
.gp-word-letters b { min-width: 34px; padding-bottom: 6px; border-bottom: 3px solid #785b68; color: #433942; font-size: 1.3rem; }
.gp-letter-grid { display: grid; grid-template-columns: repeat(8,1fr); gap: 6px; }
.gp-letter-grid button { aspect-ratio: 1; border: 1px solid #e2d5c5; border-radius: 10px; background: #fff; color: #51434d; font: inherit; font-weight: 850; cursor: pointer; }
.gp-letter-grid button:disabled { opacity: .34; }
.gp-pk { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 9px; max-width: 470px; margin: 24px auto; text-align: center; }
.gp-team { display: grid; gap: 6px; padding: 18px 8px; border: 1px solid; border-radius: 18px; background: #fff; }
.gp-team.red { border-color: #f2c5be; background: linear-gradient(150deg,#fff,#fff0ee); }
.gp-team.blue { border-color: #bed6ef; background: linear-gradient(150deg,#fff,#eef6ff); }
.gp-team span { font-size: .67rem; font-weight: 900; }
.gp-team b { font-size: 1.25rem; }
.gp-team small { color: #776e75; font-size: .61rem; }
.gp-pk > strong { color: #a56667; font-size: .7rem; }
.gp-countdown { grid-column: 1/-1; padding: 11px; color: #9b645f; font-size: 1.5rem; font-weight: 900; }
.gp-countdown small { margin-left: 4px; font-size: .7rem; }
.gp-pk button { font-size: .64rem; }
.gp-auction { max-width: 360px; margin: auto; padding: 18px; border: 1px solid #e4cf9e; border-radius: 22px; background: radial-gradient(circle at 50% 12%,#fff5c8,#fff 64%); text-align: center; }
.gp-auction-item { display: grid; width: 96px; height: 96px; place-items: center; margin: auto auto 12px; border: 1px solid #edcb77; border-radius: 27px; background: linear-gradient(145deg,#fff,#ffe49c); font-size: 3.3rem; box-shadow: 0 9px 22px #b08a3a2e; animation: gp-float 2s ease-in-out infinite; }
.gp-auction > span { color: #9a7743; font-size: .59rem; font-weight: 900; letter-spacing: .1em; }
.gp-auction h3 { margin: 5px 0 12px; font-size: 1.4rem; }
.gp-auction-bid { display: grid; gap: 3px; color: #796c64; font-size: .75rem; }
.gp-auction-bid b { color: #493c31; font-size: 1.4rem; }
.gp-auction-timer { margin: 10px 0; color: #b45e4d; font-size: 1.2rem; font-weight: 900; letter-spacing: .1em; }
.gp-spyfall { max-width: 480px; margin: auto; }
.gp-location { margin: 4px 0 15px; padding: 12px; border: 1px dashed #cbbca8; border-radius: 13px; color: #6e5a69; font-size: .77rem; text-align: center; }
.gp-location b { color: #9a5d61; }
.gp-players { display: grid; grid-template-columns: repeat(3,1fr); gap: 8px; }
.gp-players button { display: grid; gap: 3px; padding: 9px; border: 1px solid #e8ded2; border-radius: 16px; background: #fff; color: #443a42; cursor: pointer; }
.gp-players button.active { border-color: #c77f6d; background: #fff0e8; transform: translateY(-2px); }
.gp-players i { font-size: 1.5rem; font-style: normal; }
.gp-players b { font-size: .68rem; }
.gp-players small { color: #817780; font-size: .57rem; }
.gp-spy-controls { display: flex; justify-content: center; gap: 10px; margin-top: 14px; }
.gp-table { position: relative; display: grid; min-height: 296px; grid-template-rows: auto 1fr auto; gap: 10px; padding: 14px; border: 11px solid #75503c; border-radius: 32px; background: radial-gradient(ellipse,#33806a,#14513f); box-shadow: inset 0 2px 16px #132c254c,0 8px 20px #513c2c24; }
.gp-seat { color: #fff5df; font-size: .7rem; font-weight: 800; text-align: center; }
.gp-seat small { display: block; margin-top: 2px; color: #c8dfcf; font-size: .58rem; }
.gp-table-center { display: grid; align-content: center; justify-items: center; gap: 9px; color: #292c31; font-size: 1.2rem; }
.gp-table-center span { padding: 8px; border-radius: 10px; background: #fff8e8; box-shadow: 0 4px 8px #1114; }
.gp-table-center small { color: #d9e7d5; font-size: .56rem; font-weight: 850; letter-spacing: .1em; }
.gp-seat-side { position: absolute; top: 50%; right: 8px; transform: translateY(-50%); writing-mode: vertical-rl; }
.gp-hand,.gp-playing-hand { display: flex; justify-content: center; gap: 3px; overflow-x: auto; padding: 7px 1px 2px; }
.gp-hand button,.gp-playing-hand button { flex: 0 0 auto; min-width: 27px; height: 47px; padding: 2px; border: 1px solid #d8c9b5; border-radius: 7px; background: linear-gradient(145deg,#fffdf6,#efe5d2); color: #2d3137; font-size: .95rem; cursor: pointer; box-shadow: 0 3px 5px #17130f30; transition: transform .14s ease; }
.gp-hand button.selected,.gp-playing-hand button:hover { transform: translateY(-7px); border-color: #edca66; }
.gp-action { justify-self: center; min-width: 155px; margin-top: 10px; }
.gp-card-table { display: grid; min-height: 295px; align-content: space-between; padding: 16px; border: 1px solid #dcc8ad; border-radius: 23px; background: radial-gradient(ellipse,#25785e,#14503f); }
.gp-opponents { display: flex; justify-content: space-around; color: #fff3dd; font-size: .7rem; }
.gp-trick { display: grid; grid-template-columns: 1fr 1fr; justify-items: center; align-items: center; gap: 8px; }
.gp-trick b { display: grid; width: 67px; height: 91px; place-items: center; border: 1px solid #ddd0b8; border-radius: 11px; background: #fffdf7; color: #ba4a4a; font-size: 1.6rem; box-shadow: 0 6px 13px #101b1744; animation: gp-card-deal .35s ease both; }
.gp-trick small { grid-column: 1/-1; color: #d4e7d8; font-size: .61rem; font-weight: 850; letter-spacing: .12em; }
.gp-playing-hand button { min-width: 48px; height: 72px; font-size: .83rem; }
.gp-board-game { max-width: 500px; margin: auto; text-align: center; }
.gp-board-title { margin-bottom: 10px; color: #715c69; font-size: .65rem; font-weight: 900; letter-spacing: .1em; }
.gp-board-cells { display: grid; grid-template-columns: repeat(6,1fr); gap: 3px; padding: 10px; border: 5px solid #85543a; border-radius: 19px; background: linear-gradient(135deg,#edc994,#ddb277); box-shadow: 0 8px 17px #54351c2e; }
.gp-cell { min-height: 42px; border: 1px solid #ffffff62; border-radius: 7px 18px 7px 18px; background: #f8edda; color: #354238; font-size: 1rem; cursor: pointer; }
.gp-cell.dark { background: #b76c47; }
.gp-backgammon .gp-board-cells { grid-template-columns: repeat(6,1fr); min-height: 220px; align-content: space-between; }
.gp-dice { margin: 10px; font-size: 1.25rem; }
.gp-monopoly .gp-cell { min-height: 52px; border-radius: 7px; }
.gp-domino { display: grid; min-height: 280px; align-content: space-between; justify-items: center; padding: 15px; border: 1px solid #d8c8b4; border-radius: 19px; background: linear-gradient(150deg,#f8f1e5,#e7dccd); }
.gp-chain { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; min-height: 150px; align-content: center; }
.gp-chain span,.gp-domino .gp-hand button { padding: 12px 8px; border: 1px solid #cfc5b7; border-radius: 9px; background: #fffef9; color: #283640; font-size: 1.05rem; box-shadow: 0 4px 7px #31281f1d; }
.gp-domino > small { color: #756674; font-size: .63rem; font-weight: 850; }
.gp-words { max-width: 440px; margin: auto; }
.gp-word-score { display: flex; justify-content: space-between; margin-bottom: 12px; color: #75677a; font-size: .67rem; font-weight: 900; }
.gp-word-score span { color: #b75f59; }
.gp-letter-board { display: grid; grid-template-columns: repeat(4,1fr); gap: 7px; padding: 11px; border: 1px solid #decfb6; border-radius: 18px; background: #f1e3c9; }
.gp-letter-board button { aspect-ratio: 1; border: 1px solid #d4c2a4; border-radius: 12px; background: linear-gradient(145deg,#fff,#f6ead5); color: #413943; font-size: 1.3rem; font-weight: 900; cursor: pointer; box-shadow: 0 3px 6px #382b1d20; }
.gp-letter-board button.selected { background: #ffe8a6; transform: translateY(-3px); }
.gp-found-word { min-height: 35px; padding: 10px; color: #69546c; font-size: .86rem; font-weight: 850; letter-spacing: .16em; text-align: center; }
@keyframes gp-card-enter { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } }
@keyframes gp-screen-enter { from { opacity: .5; transform: scale(.985); } to { opacity: 1; transform: scale(1); } }
@keyframes gp-stage-in { from { opacity: .75; transform: translateY(5px); } to { opacity: 1; transform: translateY(0); } }
@keyframes gp-orbit { to { transform: rotate(360deg) scale(.95); } }
@keyframes gp-float { 50% { transform: translateY(-4px) rotate(1deg); } }
@keyframes gp-shine { 0%,55% { transform: translateX(-100%); } 78%,100% { transform: translateX(100%); } }
@keyframes gp-live { 50% { opacity: .42; box-shadow: 0 0 0 7px #4dae8010; } }
@keyframes gp-card-deal { from { opacity: 0; transform: translateY(-28px) rotate(-8deg); } to { opacity: 1; transform: translateY(0) rotate(0); } }

@keyframes gc-pulse { to { transform: translateY(-3px) scale(1.05); filter: drop-shadow(0 8px 14px #438f8944); } }
@media (prefers-reduced-motion: reduce) { .gc-pulse, .gc-tile { animation: none; transition: none; } }
@media (max-width: 480px) {
  .game-center-page { padding: 15px 12px 90px; }
  .gc-feature, .gc-queue, .gc-match { padding: 17px; border-radius: 20px; }
  .gc-coming-grid { grid-template-columns: 1fr; }
  .gc-game-card { min-height: 74px; }
  .gc-feature-art { height: 138px; gap: 7px; }
  .gc-feature-food { width: 78px; height: 78px; }
  .gc-board { gap: 5px; padding: 7px; }
  .gc-tile { border-radius: 10px; }
  .gc-preview-grid { grid-template-columns: 1fr 1fr; gap: 8px; }
  .gc-preview-art { min-height: 82px; }
  .gc-preview-card-copy { padding: 8px 9px 7px; }
  .gc-preview-card-copy > span { font-size: .68rem; }
  .gc-preview-open-label { margin-left: 9px; }
  .gp-header { grid-template-columns: auto 1fr; }
  .gp-live { grid-column: 2; }
  .gp-stage { min-height: 310px; padding: 9px; }
  .gp-player-strip { gap: 6px; padding: 9px; }
  .gp-player-strip b { font-size: .66rem; }
  .gp-options { grid-template-columns: 1fr; }
  .gp-letter-grid { grid-template-columns: repeat(7,1fr); }
  .gp-table { padding: 10px; border-width: 8px; }
}
@media (prefers-reduced-motion: reduce) { .gc-preview-card,.gc-preview-art::before,.gc-preview-art::after,.gc-preview-art i,.gc-preview-art b,.gc-preview-art em,.gc-preview-screen,.gp-stage,.gp-live i,.gp-hangman-art,.gp-auction-item,.gc-auction-star,.gp-trick b { animation: none; transition: none; } }

.gc-preview-art {
  display: block;
  min-height: 0;
  aspect-ratio: 4 / 5;
  background-color: #172d37;
  background-image: url('/games/game-library-concept.png?v=20261022-lezzet-v5');
  background-repeat: no-repeat;
  background-size: 500% 400%;
  background-position: var(--art-x, 0%) var(--art-y, 0%);
}
.gc-3d-stage{position:relative;display:block;width:min(100%,720px);height:clamp(320px,95vw,440px);margin:12px auto 16px;overflow:hidden;border:2px solid #795337;border-radius:24px;background:radial-gradient(ellipse at 50% 35%,#5b3d2d,#162528 78%);box-shadow:inset 0 0 0 5px #d5ae6a24,0 14px 30px #10191d55;isolation:isolate}
.gc-3d-canvas{display:block;width:100%;height:100%;touch-action:pan-y;outline:none}
.gc-match.has-3d-board.gc-pool-match .gc-3d-canvas{touch-action:none;cursor:crosshair}
.gc-match.has-3d-board.gc-pool-match .gc-pool-table-wrap{display:none}
.gc-pool-match .gc-pool-table-wrap>span{font-variant-numeric:tabular-nums}
.gc-pool-gesture-banner{margin:8px 0 10px;padding:9px 12px;border:1px solid #c9a45d;border-radius:12px;background:linear-gradient(110deg,#193e35,#27564a);color:#fff0c6;font-size:.78rem;font-weight:800;text-align:center;box-shadow:inset 0 1px #ffffff26,0 5px 14px #061b1855}
.gc-3d-stage[data-error]::after{content:attr(data-error);position:absolute;inset:auto 10px 10px;padding:7px 10px;border-radius:10px;background:#10171ee8;color:#fff4df;font-size:.72rem;text-align:center}
.gc-preview-screen .gc-3d-stage{margin:12px auto}
.gc-match>.gc-3d-stage{grid-column:1/-1}
.gc-match.has-3d-board .gc-ludo-board,.gc-match.has-3d-board .gc-domino-table,.gc-match.has-3d-board .gc-darts-board-wrap,.gc-match.has-3d-board .gc-flick-board-wrap,.gc-match.has-3d-board .gc-pool-table-wrap,.gc-match.has-3d-board .gc-batak-table,.gc-match.has-3d-board .gc-uno-table,.gc-match.has-3d-board .gc-auction-lot{display:none}
.gc-match.has-3d-board.gc-pool-match{position:relative;display:block;width:min(100%,520px);height:min(760px,calc(100svh - 110px));min-height:540px;margin:0 auto;padding:0;overflow:hidden;border:1px solid #6b5038;border-radius:20px;background:radial-gradient(ellipse at 50% 40%,#26322e,#080b0c 78%);box-shadow:0 16px 44px #0507069c;color:#fff}
.gc-pool-match>.gc-match-header{position:absolute;z-index:5;inset:8px 10px auto;height:38px;pointer-events:none}
.gc-pool-match>.gc-match-header>div{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.gc-pool-match>.gc-match-header .gc-sound{position:absolute;top:0;right:0;min-height:34px;border-color:#c39b5e;background:#171714d9;color:#f5dfb3;pointer-events:auto}
.gc-pool-match>.gc-3d-stage{position:absolute;z-index:1;inset:0;width:100%;height:100%;margin:0;overflow:hidden;border:0;border-radius:inherit;background:radial-gradient(ellipse at 50% 36%,#34251a,#0d1111 75%);box-shadow:none}
.gc-pool-match .gc-3d-canvas{touch-action:none}
.gc-pool-match .gc-pool-frame{display:block;width:100%;height:100%;border:0;background:#101614;touch-action:none}
.gc-pool-match .gc-pool-scores{position:absolute;z-index:4;top:18px;left:12px;right:58px;display:grid;grid-template-columns:minmax(0,1fr) 27px minmax(0,1fr);align-items:center;gap:6px;margin:0;padding:0;border:0;background:none;color:#fff}
.gc-pool-player{display:flex;min-width:0;align-items:center;gap:7px;padding:5px 7px;border:1px solid #d0a15a75;border-radius:13px;background:linear-gradient(120deg,#120f0de8,#312317c9);box-shadow:0 4px 12px #0008}
.gc-pool-player>.avatar{flex:0 0 42px;width:42px;height:42px;border:2px solid #d5af6a;box-shadow:0 0 0 2px #120e0b,0 3px 8px #0009}
.gc-pool-player>span:last-child{display:grid;min-width:0;gap:3px}
.gc-pool-player strong{overflow:hidden;color:#fff5df;font-size:.68rem;text-overflow:ellipsis;white-space:nowrap}
.gc-pool-player small{overflow:hidden;color:#d7c09a;font-size:.55rem;text-overflow:ellipsis;white-space:nowrap}
.gc-pool-versus{color:#f4d69c;font-size:.58rem;text-align:center;text-shadow:0 1px 5px #000}
.gc-pool-score-dots{display:flex;gap:3px}
.gc-pool-score-dots i{width:8px;height:8px;border:1px solid #d7b87575;border-radius:50%;background:linear-gradient(145deg,#171717,#050505);box-shadow:inset 0 1px 2px #fff3}
.gc-pool-score-dots i.is-pocketed{background:var(--pool-dot);box-shadow:0 0 6px var(--pool-dot)}
.gc-pool-match>.gc-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.gc-pool-match>.gc-error{position:absolute;z-index:6;top:78px;left:12px;right:12px;margin:0;padding:8px;border-radius:10px;background:#6f1717ed;color:#fff;text-align:center}
.gc-pool-match .gc-pool-gesture-banner{position:absolute;z-index:4;left:12px;right:12px;bottom:97px;margin:0;border-color:#c09a5e;background:#122b27e8;color:#fff1cd}
.gc-pool-match .gc-pool-controls{position:absolute;z-index:5;right:14px;bottom:13px;left:14px;display:grid;grid-template-columns:minmax(105px,.7fr) minmax(150px,1fr) auto;align-items:center;gap:10px;margin:0;padding:12px 13px;border:1px solid #d2aa6b9c;border-radius:18px;background:linear-gradient(105deg,#111312ed,#27221bdc);box-shadow:0 8px 24px #0009;color:#fff}
.gc-pool-match .gc-pool-controls .gc-pool-angle{position:static;width:auto;height:auto;overflow:visible;clip-path:none;gap:3px;color:#f2e4c7;font-size:.61rem}
.gc-pool-match .gc-pool-controls .gc-pool-angle input{min-height:24px;margin:0;accent-color:#e7b85e;touch-action:pan-x}
.gc-pool-match .gc-pool-power{display:grid;gap:4px;color:#f2e4c7;font-size:.65rem}
.gc-pool-match .gc-pool-power-copy,.gc-pool-match .gc-pool-meter-legend{display:flex;align-items:center;justify-content:space-between;gap:5px}
.gc-pool-match .gc-pool-power-copy b{color:#f6d48f;letter-spacing:.04em}
.gc-pool-match .gc-pool-meter{position:relative;display:flex;height:13px;overflow:visible;border:1px solid #f4dfb766;border-radius:999px;background:#111;box-shadow:inset 0 2px 5px #000c}
.gc-pool-match .gc-pool-meter i{height:100%}
.gc-pool-match .gc-pool-meter-weak{width:45%;border-radius:999px 0 0 999px;background:linear-gradient(90deg,#84939a,#577c74 70%,#b89143)}
.gc-pool-match .gc-pool-meter-sweet{width:17%;background:linear-gradient(90deg,#ffd54f,#fff1a2,#f2b833);box-shadow:0 0 9px #ffd44e9c}
.gc-pool-match .gc-pool-meter-hot{width:38%;border-radius:0 999px 999px 0;background:linear-gradient(90deg,#f19b38,#f04d3e,#a70e22)}
.gc-pool-match .gc-pool-meter>b{position:absolute;top:50%;left:50%;width:6px;height:22px;transform:translate(-50%,-50%);border:1px solid #fff2ce;border-radius:4px;background:#fff8df;box-shadow:0 0 8px #fff,0 0 15px #ffc954;pointer-events:none}
.gc-pool-match .gc-pool-meter-legend{color:#e6d7bb;font-size:.52rem}
.gc-pool-match .gc-pool-power input[type=hidden]{display:none}
.gc-pool-match .gc-pingoball-brand{position:absolute;z-index:3;bottom:25%;left:50%;display:flex;align-items:center;gap:5px;padding:4px 8px;transform:translateX(-50%);border:1px solid #e1bd7480;border-radius:999px;background:#102820aa;color:#f3d493;font-size:.56rem;font-weight:950;letter-spacing:.12em;pointer-events:none;text-shadow:0 1px 4px #000}
.gc-pool-match .gc-pingoball-brand img{width:17px;height:17px;object-fit:contain;filter:drop-shadow(0 0 4px #e8be6870)}
.gc-pool-match .gc-pool-shoot{min-height:40px;padding:7px 11px;border:1px solid #f0cd86;border-radius:12px;background:linear-gradient(130deg,#8e5b2a,#d6a34e);color:#19130d;font-size:.68rem;font-weight:900;white-space:nowrap}
.gc-pool-match>.gc-game-leave{position:absolute;z-index:6;right:9px;bottom:76px;width:auto;margin:0;padding:3px 7px;color:#e6d6b8;font-size:.61rem;text-shadow:0 1px 3px #000}
.gc-pool-match .gc-pool-result{position:absolute;z-index:8;inset:40% 15px auto;margin:0;background:#101211e8;color:#fff}
.gc-pool-match .gc-pool-social-toggle{position:absolute;z-index:8;bottom:76px;left:10px;min-height:34px;padding:6px 11px;border:1px solid #d4b16f;border-radius:999px;background:#14372feF;color:#fff0c6;font-size:.68rem;font-weight:850;box-shadow:0 3px 10px #0008;touch-action:manipulation}
.gc-pool-match .gc-pool-social-dock{position:absolute;z-index:9;right:8px;bottom:118px;left:8px;height:min(45dvh,360px);overflow:auto;border:1px solid #dfbd7b;border-radius:16px;background:#112a25f5;box-shadow:0 12px 28px #000a;overscroll-behavior:contain}
.gc-pool-match .gc-pool-social-dock[hidden]{display:none}
.gc-pool-match .gc-pool-social-dock .gsp-panel{margin:0;border:0;background:transparent;color:#f8edda}
.gc-pool-match .gc-pool-social-dock .gsp-social-body{grid-template-columns:1fr}
.gc-pool-match .gc-pool-social-dock button,.gc-pool-match .gc-pool-social-dock input{min-height:42px;touch-action:manipulation}
@media (orientation:portrait) and (max-width:700px){
  .gc-pool-match:after{content:'Bilardoyu oynamak için telefonu yatay çevir';position:absolute;z-index:4;top:60px;left:50%;width:max-content;max-width:calc(100% - 28px);transform:translateX(-50%);padding:7px 12px;border:1px solid #d8b976;border-radius:999px;background:#111c;color:#fff0c7;font-size:.72rem;font-weight:800;text-align:center;pointer-events:none}
}
@media (orientation:landscape) and (max-height:600px){
  .gc-pool-match{position:fixed!important;z-index:10000;inset:0;width:100vw!important;height:100dvh!important;max-width:none!important;min-height:0!important;margin:0!important;padding:0!important;overflow:hidden;border:0;border-radius:0}
  .gc-pool-match>.gc-3d-stage{position:absolute;inset:0;width:100%;height:100%;border-radius:0}
  .gc-pool-match .gc-pool-frame{width:100%;height:100%}
  .gc-pool-match .gc-pool-scores{top:7px;left:8px;right:58px;grid-template-columns:minmax(110px,1fr) 24px minmax(110px,1fr);gap:5px;width:min(50vw,500px)}
  .gc-pool-match .gc-pool-controls{right:auto;bottom:7px;left:50%;width:min(76vw,760px);transform:translateX(-50%);grid-template-columns:minmax(100px,.65fr) minmax(150px,1fr) auto;gap:8px;padding:8px 10px}
  .gc-pool-match .gc-pool-gesture-banner{right:auto;bottom:65px;left:50%;width:max-content;max-width:70vw;transform:translateX(-50%)}
  .gc-pool-match>.gc-game-leave{right:8px;bottom:9px}
  .gc-pool-match .gc-pool-social-toggle{bottom:8px;left:8px}
  .gc-pool-match .gc-pool-social-dock{right:8px;bottom:52px;left:8px;width:min(440px,48vw);height:min(58dvh,260px)}
  .gc-pool-match .gc-pingoball-brand{display:none}
}
@media(max-width:360px){.gc-match.has-3d-board.gc-pool-match{height:min(720px,calc(100svh - 95px));min-height:500px}.gc-pool-match .gc-pool-scores{left:7px;right:49px;gap:3px}.gc-pool-player{gap:4px;padding:4px}.gc-pool-player>.avatar{flex-basis:34px;width:34px;height:34px}.gc-pool-player strong{font-size:.61rem}.gc-pool-player small{font-size:.5rem}.gc-pool-match .gc-pool-controls{right:8px;bottom:8px;left:8px;gap:6px;padding:9px}.gc-pool-match .gc-pool-gesture-banner{bottom:91px}}
.gc-match.has-3d-board .gc-hangman-stage>svg{display:none}
.gc-preview-art::before,.gc-preview-art::after { content: none; }
.gc-preview-match3 .gc-preview-art{position:relative;background:radial-gradient(circle at 52% 38%,#236b51,#0b3341 62%,#071927);border:1px solid #caa7665c}
.gc-preview-match3 .gc-preview-art::before,.gc-preview-match3 .gc-preview-art::after{content:'';position:absolute;top:13%;width:48%;height:72%;border:0;border-radius:0;background-image:url('/game-scenes/assets/zumrut-diyari/minerals-v1.png');background-repeat:no-repeat;background-size:300% 200%;filter:drop-shadow(0 8px 9px #0009)}
.gc-preview-match3 .gc-preview-art::before{left:6%;background-position:0 0;transform:rotate(-12deg)}
.gc-preview-match3 .gc-preview-art::after{right:4%;background-position:50% 0;transform:rotate(11deg)}
.gc-preview-puzzle .gc-preview-art{background-image:url('/assets/games/solo/pingora-night-garden-puzzle.png');background-size:cover;background-position:center 54%}
.gc-preview-puzzle .gc-preview-art::before,.gc-preview-puzzle .gc-preview-art::after{content:none}
.gc-preview-match3 .gc-preview-state{z-index:2}
.gc-preview-card-copy { padding: 11px 12px 8px; }
.gc-preview-open-label { margin-top: 0; }
.gp-concept-frame { margin: 12px; overflow: hidden; border: 1px solid #dac9b4; border-radius: 20px; background: #142c38; box-shadow: 0 12px 30px #43332a1a; }
.gp-concept-art { aspect-ratio: 4 / 5; background-image: url('/games/game-library-concept.png?v=20261022-lezzet-v5'); background-repeat: no-repeat; background-size: 500% 400%; background-position: var(--art-x, 0%) var(--art-y, 0%); }
.gp-concept-frame figcaption { padding: 10px 12px; color: var(--game-muted); background: #fffdf9; font-size: .72rem; text-align: center; }
.gp-concept-note { margin: 12px 16px 16px; padding: 12px; border: 1px solid #e9dccb; border-radius: 14px; color: var(--game-muted); background: #fffdf9; font-size: .78rem; line-height: 1.5; text-align: center; }
.gp-header h2 { margin: 3px 0 0; font-size: clamp(1rem,4.5vw,1.32rem); }
.gc-okey101-board{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;min-height:100px;margin:12px 0;padding:14px;border:1px solid rgba(222,196,138,.2);border-radius:20px;background:radial-gradient(ellipse at center,#235c4d,#123b34 72%);box-shadow:inset 0 1px 0 #ffffff12,0 10px 24px #102d2630;color:#d4dfd4;font-size:.78rem;text-align:center}.gc-okey101-table-group{display:flex;gap:2px;min-height:42px;padding:5px;border:1px solid #d8c7a466;border-radius:10px;background:#f8f1e2;box-shadow:0 5px 12px #071f1944;transform:rotate(var(--meld-angle,0deg));transition:transform .18s,border-color .18s,box-shadow .18s}.gc-okey101-table-group:nth-child(3n){--meld-angle:2deg}.gc-okey101-table-group:nth-child(3n + 1){--meld-angle:-2deg}.gc-okey101-table-group span{display:grid;place-items:center;width:24px;border-radius:5px;background:linear-gradient(150deg,#fffdf7,#eee3d1);color:var(--tile-ink);font-weight:850}.gc-okey101-table-group:not(:disabled){cursor:pointer}.gc-okey101-table-group.is-target{border-color:#dfbd70;box-shadow:0 0 0 3px #dfbd7038,0 5px 14px #071f1966;transform:translateY(-3px)}.gc-okey101-match .gc-okey-actions{grid-template-columns:repeat(auto-fit,minmax(min(100%,145px),1fr))}.gc-okey101-match .gc-okey-help{max-width:58ch;margin:10px auto;text-align:center}.gc-okey101-match .gc-okey-tile{transition:transform .16s,box-shadow .16s,border-color .16s}.gc-okey101-match .gc-okey-tile.is-selected{transform:translateY(-8px);box-shadow:0 0 0 2px #d5ae68,0 10px 20px #172f2840}@media(max-width:380px){.gc-okey101-board{min-height:88px;padding:10px;gap:6px}.gc-okey101-table-group span{width:21px}.gc-okey101-match .gc-okey-actions{grid-template-columns:1fr 1fr}.gc-okey101-match .gc-okey-actions button{min-height:44px;padding-inline:8px;font-size:.8rem}}
.gc-okey101-match .gc-okey-hand-head{margin:12px 0 0;padding:10px 12px 4px;border:1px solid #e4d8ca;border-bottom:0;border-radius:15px 15px 0 0;background:linear-gradient(120deg,#fffaf1,#f2e8dc);color:#514347}.gc-okey101-match .gc-okey-hand-head span{color:#75665f}.gc-okey101-match .gc-okey-hand{margin:0;padding:7px 10px 10px;border:1px solid #e4d8ca;border-top:0;border-radius:0 0 15px 15px;background:#f2e8dc}.gc-okey101-match .gc-okey-help{color:#ddd1c5}
.gc-batak-match{max-width:820px;margin-inline:auto}.gc-batak-scoreboard{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:12px;margin:12px 0;padding:12px 15px;border:1px solid #dfcfb6;border-radius:17px;background:linear-gradient(120deg,#fffaf0,#efe4d5);color:#504248}.gc-batak-scoreboard>div{display:grid;gap:4px;min-width:0}.gc-batak-scoreboard small,.gc-batak-controls>span{color:#8b6d68;font-size:.6rem;font-weight:900;letter-spacing:.1em}.gc-batak-scoreboard b{overflow:hidden;font-size:.84rem;text-overflow:ellipsis;white-space:nowrap}.gc-batak-clock{color:#795e74;font-size:.8rem;font-weight:900;font-variant-numeric:tabular-nums}.gc-batak-seats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:12px 0;padding:0;list-style:none}.gc-batak-player{display:grid;grid-template-columns:22px 1fr;gap:3px 7px;align-items:center;min-width:0;padding:9px;border:1px solid #ded2c3;border-radius:14px;background:#fbf6ed;color:#51464b;transition:transform .18s,border-color .18s,box-shadow .18s}.gc-batak-player>span{grid-row:span 2;display:grid;width:22px;height:22px;place-items:center;border-radius:50%;background:#e9dfd2;color:#806b64;font-size:.68rem;font-weight:900}.gc-batak-player strong{overflow:hidden;font-size:.75rem;text-overflow:ellipsis;white-space:nowrap}.gc-batak-player small{grid-column:2;color:#8a7b73;font-size:.6rem}.gc-batak-player>b{grid-column:2;color:#805f79;font-size:.64rem}.gc-batak-player.is-you{background:#fffaf0}.gc-batak-player.is-turn{border-color:#c19a60;box-shadow:0 0 0 2px #c19a6029;transform:translateY(-2px)}.gc-batak-table{display:grid;min-height:230px;place-items:center;overflow:hidden;border:1px solid #a48e6b;border-radius:28px;background:radial-gradient(ellipse at 50% 42%,#286e59,#194a3d 61%,#132f2d);box-shadow:inset 0 0 0 8px #c8a66b12,inset 0 0 36px #071e1b80,0 14px 30px #151c172e}.gc-batak-center{display:grid;justify-items:center;gap:10px;width:min(100%,540px);padding:20px}.gc-batak-center>small{color:#e2c992;font-size:.63rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.gc-batak-center>strong{color:#f6e9d1;font-size:.76rem}.gc-batak-trick{display:grid;grid-template-columns:repeat(4,minmax(48px,72px));gap:8px;justify-content:center;min-height:112px;width:100%}.gc-batak-trick-card{display:grid;align-content:center;justify-items:center;gap:5px}.gc-batak-trick-card>small{max-width:72px;overflow:hidden;color:#e1d7c4;font-size:.56rem;text-overflow:ellipsis;white-space:nowrap}.gc-batak-trick-card>b{display:grid;grid-template-rows:1fr 1fr;align-content:space-between;width:52px;height:72px;padding:6px;border:1px solid #ded3c4;border-radius:9px;background:linear-gradient(150deg,#fffdf7,#efe4d4);box-shadow:0 6px 15px #071a1870;color:var(--card-ink);font-size:1.05rem}.gc-batak-trick-card i{font-size:.82rem;font-style:normal}.gc-batak-empty{grid-column:1/-1;align-self:center;color:#d0ddcf;font-size:.76rem}.gc-batak-controls{display:grid;gap:8px;margin-top:14px;padding:13px;border:1px solid #e0d5c8;border-radius:18px;background:#fbf7ef}.gc-batak-bids,.gc-batak-suits{display:flex;flex-wrap:wrap;gap:7px}.gc-batak-bids button,.gc-batak-suits button{min-width:44px;min-height:44px;border:1px solid #ddd0bf;border-radius:12px;background:#fffdf9;color:#594a50;font:inherit;font-weight:800;cursor:pointer;transition:transform .15s,box-shadow .15s}.gc-batak-bids button:not(:disabled):active,.gc-batak-suits button:not(:disabled):active{transform:scale(.96)}.gc-batak-bids button:disabled,.gc-batak-suits button:disabled{opacity:.42}.gc-batak-bids .gc-batak-pass{margin-left:auto;padding-inline:13px;background:#f0e6d8}.gc-batak-suits button{display:flex;align-items:center;justify-content:center;gap:5px;padding:6px 10px;color:var(--card-ink)}.gc-batak-suits button b{font-size:1.25rem}.gc-batak-hand{display:flex;gap:5px;overflow-x:auto;margin:0 -3px;padding:8px 3px 11px;scrollbar-width:thin;scrollbar-color:#b7a89a #efe6da}.gc-batak-card{position:relative;display:grid;flex:0 0 48px;grid-template-rows:1fr 1fr;justify-items:center;align-content:center;gap:1px;width:48px;height:68px;padding:5px 4px;border:1px solid #d9cdbd;border-radius:9px;background:linear-gradient(150deg,#fffefa,#f0e7da);color:var(--card-ink);box-shadow:0 3px 7px #4b40351c;transition:transform .16s,border-color .16s,box-shadow .16s}.gc-batak-card b{font-size:1rem}.gc-batak-card i{font-size:.88rem;font-style:normal}.gc-batak-card small{position:absolute;right:4px;bottom:3px;font-size:.48rem}.gc-batak-card.is-legal{border-color:#c49b61;box-shadow:0 4px 11px #78603a28;cursor:pointer}.gc-batak-card.is-legal:hover{transform:translateY(-5px)}.gc-batak-card:disabled{opacity:.5}.gc-batak-finish{padding:16px;border-radius:16px;background:#f4eee5;color:#554547;text-align:center}@media(max-width:480px){.gc-batak-seats{gap:4px}.gc-batak-player{grid-template-columns:18px 1fr;gap:3px;padding:7px 5px}.gc-batak-player>span{width:18px;height:18px}.gc-batak-player strong{font-size:.64rem}.gc-batak-player small,.gc-batak-player>b{font-size:.54rem}.gc-batak-table{min-height:190px;border-radius:23px}.gc-batak-center{padding:14px}.gc-batak-trick{grid-template-columns:repeat(4,minmax(43px,58px));gap:5px}.gc-batak-trick-card>b{width:45px;height:63px}.gc-batak-bids{gap:5px}.gc-batak-bids button{min-width:42px}.gc-batak-bids .gc-batak-pass{flex:1}}
.gc-batak-match{max-width:820px;margin-inline:auto}.gc-batak-scoreboard{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:12px;margin:12px 0;padding:12px 15px;border:1px solid #dfcfb6;border-radius:17px;background:linear-gradient(120deg,#fffaf0,#efe4d5);color:#504248}.gc-batak-scoreboard>div{display:grid;gap:4px;min-width:0}.gc-batak-scoreboard small,.gc-batak-controls>span{color:#8b6d68;font-size:.6rem;font-weight:900;letter-spacing:.1em}.gc-batak-scoreboard b{overflow:hidden;font-size:.84rem;text-overflow:ellipsis;white-space:nowrap}.gc-batak-clock{color:#795e74;font-size:.8rem;font-weight:900;font-variant-numeric:tabular-nums}.gc-batak-seats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:12px 0;padding:0;list-style:none}.gc-batak-player{display:grid;grid-template-columns:22px 1fr;gap:3px 7px;align-items:center;min-width:0;padding:9px;border:1px solid #ded2c3;border-radius:14px;background:#fbf6ed;color:#51464b;transition:transform .18s,border-color .18s,box-shadow .18s}.gc-batak-player>span{grid-row:span 2;display:grid;width:22px;height:22px;place-items:center;border-radius:50%;background:#e9dfd2;color:#806b64;font-size:.68rem;font-weight:900}.gc-batak-player strong{overflow:hidden;font-size:.75rem;text-overflow:ellipsis;white-space:nowrap}.gc-batak-player small{grid-column:2;color:#8a7b73;font-size:.6rem}.gc-batak-player>b{grid-column:2;color:#805f79;font-size:.64rem}.gc-batak-player.is-you{background:#fffaf0}.gc-batak-player.is-turn{border-color:#c19a60;box-shadow:0 0 0 2px #c19a6029;transform:translateY(-2px)}.gc-batak-table{display:grid;min-height:230px;place-items:center;overflow:hidden;border:1px solid #a48e6b;border-radius:28px;background:radial-gradient(ellipse at 50% 42%,#286e59,#194a3d 61%,#132f2d);box-shadow:inset 0 0 0 8px #c8a66b12,inset 0 0 36px #071e1b80,0 14px 30px #151c172e}.gc-batak-center{display:grid;justify-items:center;gap:10px;width:min(100%,540px);padding:20px}.gc-batak-center>small{color:#e2c992;font-size:.63rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.gc-batak-center>strong{color:#f6e9d1;font-size:.76rem}.gc-batak-trick{display:grid;grid-template-columns:repeat(4,minmax(48px,72px));gap:8px;justify-content:center;min-height:112px;width:100%}.gc-batak-trick-card{display:grid;align-content:center;justify-items:center;gap:5px}.gc-batak-trick-card>small{max-width:72px;overflow:hidden;color:#e1d7c4;font-size:.56rem;text-overflow:ellipsis;white-space:nowrap}.gc-batak-trick-card>b{display:grid;grid-template-rows:1fr 1fr;align-content:space-between;width:52px;height:72px;padding:6px;border:1px solid #ded3c4;border-radius:9px;background:linear-gradient(150deg,#fffdf7,#efe4d4);box-shadow:0 6px 15px #071a1870;color:var(--card-ink);font-size:1.05rem}.gc-batak-trick-card i{font-size:.82rem;font-style:normal}.gc-batak-empty{grid-column:1/-1;align-self:center;color:#d0ddcf;font-size:.76rem}.gc-batak-controls{display:grid;gap:8px;margin-top:14px;padding:13px;border:1px solid #e0d5c8;border-radius:18px;background:#fbf7ef}.gc-batak-bids,.gc-batak-suits{display:flex;flex-wrap:wrap;gap:7px}.gc-batak-bids button,.gc-batak-suits button{min-width:44px;min-height:44px;border:1px solid #ddd0bf;border-radius:12px;background:#fffdf9;color:#594a50;font:inherit;font-weight:800;cursor:pointer;transition:transform .15s,box-shadow .15s}.gc-batak-bids button:not(:disabled):active,.gc-batak-suits button:not(:disabled):active{transform:scale(.96)}.gc-batak-bids button:disabled,.gc-batak-suits button:disabled{opacity:.42}.gc-batak-bids .gc-batak-pass{margin-left:auto;padding-inline:13px;background:#f0e6d8}.gc-batak-suits button{display:flex;align-items:center;justify-content:center;gap:5px;padding:6px 10px;color:var(--card-ink)}.gc-batak-suits button b{font-size:1.25rem}.gc-batak-hand{display:flex;gap:5px;overflow-x:auto;margin:0 -3px;padding:8px 3px 11px;scrollbar-width:thin;scrollbar-color:#b7a89a #efe6da}.gc-batak-card{position:relative;display:grid;flex:0 0 48px;grid-template-rows:1fr 1fr;justify-items:center;align-content:center;gap:1px;width:48px;height:68px;padding:5px 4px;border:1px solid #d9cdbd;border-radius:9px;background:linear-gradient(150deg,#fffefa,#f0e7da);color:var(--card-ink);box-shadow:0 3px 7px #4b40351c;transition:transform .16s,border-color .16s,box-shadow .16s}.gc-batak-card b{font-size:1rem}.gc-batak-card i{font-size:.88rem;font-style:normal}.gc-batak-card small{position:absolute;right:4px;bottom:3px;font-size:.48rem}.gc-batak-card.is-legal{border-color:#c49b61;box-shadow:0 4px 11px #78603a28;cursor:pointer}.gc-batak-card.is-legal:hover{transform:translateY(-5px)}.gc-batak-card:disabled{opacity:.5}.gc-batak-finish{padding:16px;border-radius:16px;background:#f4eee5;color:#554547;text-align:center}@media(max-width:480px){.gc-batak-seats{gap:4px}.gc-batak-player{grid-template-columns:18px 1fr;gap:3px;padding:7px 5px}.gc-batak-player>span{width:18px;height:18px}.gc-batak-player strong{font-size:.64rem}.gc-batak-player small,.gc-batak-player>b{font-size:.54rem}.gc-batak-table{min-height:190px;border-radius:23px}.gc-batak-center{padding:14px}.gc-batak-trick{grid-template-columns:repeat(4,minmax(43px,58px));gap:5px}.gc-batak-trick-card>b{width:45px;height:63px}.gc-batak-bids{gap:5px}.gc-batak-bids button{min-width:42px}.gc-batak-bids .gc-batak-pass{flex:1}}
.gc-batak-match{width:100%;min-width:0;box-sizing:border-box;grid-template-columns:minmax(0,1fr)}.gc-batak-match>*{min-width:0}.gc-batak-scoreboard,.gc-batak-seats,.gc-batak-table,.gc-batak-controls,.gc-batak-handzone{width:100%;min-width:0;box-sizing:border-box}.gc-batak-match .gc-status{max-width:100%;white-space:normal;overflow-wrap:anywhere}.gc-batak-handzone{min-width:0;margin-top:11px;padding:9px 11px 2px;border:1px solid #dfd2c0;border-radius:16px;background:linear-gradient(130deg,#fffaf0,#f0e5d6);color:#53474c}.gc-batak-handzone>span{font-size:.7rem;font-weight:850}.gc-batak-handzone .gc-batak-hand{margin-inline:-1px}.gc-batak-handzone .gc-batak-card:disabled{opacity:.72}
.gc-batak-handzone .gc-batak-hand{width:100%}@media(max-width:360px){.gc-batak-match .gc-kicker{font-size:.56rem;letter-spacing:.055em;white-space:nowrap}.gc-batak-match .gc-sound{flex:0 0 auto;gap:0;padding-inline:10px}.gc-batak-match .gc-sound span{display:none}}
.gc-uno-match{width:100%;max-width:820px;min-width:0;box-sizing:border-box;grid-template-columns:minmax(0,1fr);margin-inline:auto}.gc-uno-match>*{min-width:0}.gc-uno-hud{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:10px;margin:12px 0;padding:11px 14px;border:1px solid #ded2c3;border-radius:17px;background:linear-gradient(125deg,#fffaf1,#f0e6d9);color:#50434a}.gc-uno-hud>div{display:grid;gap:4px;min-width:0}.gc-uno-hud small{color:#8c6f69;font-size:.58rem;font-weight:900;letter-spacing:.1em}.gc-uno-hud b{overflow:hidden;color:var(--uno-color,#68526f);font-size:.77rem;text-overflow:ellipsis;white-space:nowrap}.gc-uno-clock{color:#7a5d77;font-size:.77rem;font-weight:900;font-variant-numeric:tabular-nums}.gc-uno-match .gc-status{max-width:100%;white-space:normal;overflow-wrap:anywhere}.gc-uno-alert{margin:0;padding:9px 12px;border:1px solid #e0bd7b;border-radius:13px;background:#fff4d9;color:#74532d;font-size:.75rem;font-weight:750;text-align:center}.gc-uno-players{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:8px 0 12px;padding:0;list-style:none}.gc-uno-player{display:grid;grid-template-columns:21px minmax(0,1fr);gap:2px 6px;align-items:center;min-width:0;padding:8px;border:1px solid #dfd4c7;border-radius:14px;background:#fbf6ee;color:#51464b}.gc-uno-player>span{grid-row:span 2;display:grid;width:21px;height:21px;place-items:center;border-radius:50%;background:#ece2d7;color:#806e66;font-size:.62rem;font-weight:900}.gc-uno-player strong{overflow:hidden;font-size:.7rem;text-overflow:ellipsis;white-space:nowrap}.gc-uno-player small,.gc-uno-player>b{grid-column:2;color:#8b7b72;font-size:.56rem}.gc-uno-player>b{color:#775c78}.gc-uno-player.is-you{background:#fffaf0}.gc-uno-player.is-turn{border-color:#bc9458;box-shadow:0 0 0 2px #bc94582b;transform:translateY(-2px)}.gc-uno-table{display:grid;grid-template-columns:1fr 1fr;align-items:center;justify-items:center;gap:18px;min-height:220px;padding:22px 16px;border:1px solid #a58c68;border-radius:27px;background:radial-gradient(ellipse at 50% 42%,#286d58,#19483d 63%,#132e2d);box-shadow:inset 0 0 0 8px #c7a66912,inset 0 0 34px #071f1c7d,0 14px 28px #141b192e}.gc-uno-deck,.gc-uno-pile{display:grid;justify-items:center;gap:8px}.gc-uno-deck>span,.gc-uno-pile>small{color:#e4d5b9;font-size:.57rem;font-weight:900;letter-spacing:.11em}.gc-uno-deck>b{display:grid;width:70px;height:98px;place-items:center;border:2px solid #f3dfad;border-radius:13px;background:repeating-linear-gradient(135deg,#36223f 0 8px,#c35053 8px 16px,#db9a38 16px 24px,#42765c 24px 32px,#41689b 32px 40px);box-shadow:0 8px 16px #071b1990;color:white;font-size:1.05rem;font-weight:950;font-style:italic;transform:rotate(-8deg);text-shadow:0 2px 4px #34243b}.gc-uno-deck>small{color:#e8dbbd;font-size:.68rem}.gc-uno-topcard{display:grid;align-content:center;justify-items:center;gap:4px;width:82px;height:116px;padding:9px;border:2px solid #fff4db;border-radius:14px;background:radial-gradient(ellipse at center,#fffaf0 0 29%,var(--uno-color) 30% 100%);box-shadow:0 10px 20px #071a1880;color:var(--uno-color);transform:rotate(5deg)}.gc-uno-topcard>b{max-width:100%;padding:3px 5px;border-radius:8px;background:#fffaf0;font-size:.78rem;text-align:center}.gc-uno-topcard>span{font-size:1.1rem;font-weight:950}.gc-uno-hand-head{display:flex;justify-content:space-between;gap:8px;margin:13px 0 0;padding:10px 12px 5px;border:1px solid #e1d5c7;border-bottom:0;border-radius:15px 15px 0 0;background:#fbf6ed;color:#53464b}.gc-uno-hand-head span{color:#7f7069;font-size:.68rem}.gc-uno-hand{display:flex;gap:7px;overflow-x:auto;min-width:0;margin:0;padding:10px 12px 13px;border:1px solid #e1d5c7;border-top:0;border-radius:0 0 15px 15px;background:#f3eadd;scrollbar-width:thin;scrollbar-color:#b7a79a #ede3d7}.gc-uno-card{position:relative;display:grid;flex:0 0 62px;grid-template-rows:1fr auto;align-content:center;justify-items:center;gap:4px;width:62px;height:88px;padding:8px 5px;border:2px solid #fff6df;border-radius:12px;background:radial-gradient(ellipse at center,#fffaf0 0 29%,var(--uno-color) 30% 100%);box-shadow:0 4px 9px #2e252a22;color:var(--uno-color);transition:transform .16s,box-shadow .16s,opacity .16s}.gc-uno-card>span{display:grid;width:38px;height:38px;place-items:center;border:2px solid #fff5df;border-radius:50%;background:#fffaf0;font-size:1.05rem;font-weight:950}.gc-uno-card>i{padding:1px 4px;border-radius:5px;background:#fffaf0;font-size:.48rem;font-style:normal;font-weight:900}.gc-uno-card.is-wild{background:conic-gradient(#bf4b51 0 25%,#c38b24 0 50%,#398267 0 75%,#456fa4 0)}.gc-uno-card.is-selected{transform:translateY(-8px);box-shadow:0 0 0 2px #d4ad68,0 8px 17px #261f2670}.gc-uno-card:not(:disabled){cursor:pointer}.gc-uno-card:not(:disabled):hover{transform:translateY(-6px) rotate(-2deg)}.gc-uno-card:disabled{opacity:.62}.gc-uno-color-picker{display:grid;gap:8px;margin-top:10px;padding:12px;border:1px solid #e1d5c7;border-radius:15px;background:#fbf6ed;color:#51464b}.gc-uno-color-picker>strong{font-size:.75rem}.gc-uno-color-picker>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.gc-uno-color-picker button{display:flex;align-items:center;justify-content:center;gap:5px;min-height:44px;border:1px solid #e1d5c7;border-radius:12px;background:#fffdf8;color:#51464b;font:inherit;font-size:.68rem;font-weight:800}.gc-uno-color-picker button i{width:15px;height:15px;border-radius:50%;background:var(--uno-color);box-shadow:inset 0 0 0 2px #ffffff77}.gc-uno-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.gc-uno-actions .btn{flex:1 1 145px;min-height:46px;white-space:normal}.gc-uno-call[aria-pressed=true]{box-shadow:0 0 0 3px #d3a75238,0 7px 18px #c28c3440}.gc-uno-finish{padding:16px;border-radius:16px;background:#f4eee5;color:#54464b;text-align:center}@media(max-width:480px){.gc-uno-players{gap:4px}.gc-uno-player{grid-template-columns:18px minmax(0,1fr);gap:2px 4px;padding:7px 4px}.gc-uno-player>span{width:18px;height:18px}.gc-uno-player strong{font-size:.62rem}.gc-uno-table{min-height:185px;gap:10px;padding:17px 10px;border-radius:23px}.gc-uno-deck>b{width:60px;height:84px}.gc-uno-topcard{width:70px;height:98px}.gc-uno-hand{gap:5px;padding-inline:8px}.gc-uno-card{flex-basis:57px;width:57px;height:82px}.gc-uno-card>span{width:34px;height:34px}.gc-uno-actions .btn{min-width:0;flex-basis:125px}}@media(max-width:360px){.gc-uno-match .gc-kicker{font-size:.56rem;letter-spacing:.06em;white-space:nowrap}.gc-uno-match .gc-sound{flex:0 0 auto;gap:0;padding-inline:10px}.gc-uno-match .gc-sound span{display:none}.gc-uno-hud{gap:6px;padding-inline:9px}.gc-uno-hud b{font-size:.67rem}.gc-uno-color-picker button{flex-direction:column;gap:2px}.gc-uno-table{min-height:165px}.gc-uno-deck>b{width:54px;height:76px}.gc-uno-topcard{width:62px;height:88px}}
/* Live boards for the four catalog games that previously stopped at concept art. */
.gc-tavla-score,.gc-city-summary { display:flex; justify-content:space-between; gap:12px; color:var(--pg-muted,#918895); font-size:12px; }
.gc-tavla-board { display:grid; grid-template-columns:repeat(12,minmax(0,1fr)); gap:5px; padding:12px; border:1px solid #d8c6a5; border-radius:18px; background:linear-gradient(145deg,#72513c,#3e302e); }
.gc-tavla-point { display:grid; min-height:64px; align-content:space-between; justify-items:center; padding:5px 2px; border-radius:8px; color:#fff6e9; background:linear-gradient(150deg,#f5e3c9 0 48%,#7e3c41 49%); }
.gc-tavla-point:nth-child(3n+2) { background:linear-gradient(150deg,#7e3c41 0 48%,#f5e3c9 49%); }
.gc-tavla-point small { color:#49352c; font-size:9px; }
.gc-tavla-point b { display:grid; width:22px; height:22px; place-items:center; border-radius:50%; color:#302b2e; background:#fff8e9; font-size:10px; }
.gc-tavla-point.is-you b { color:#fff; background:#296b61; }
.gc-tavla-point.is-opponent b { color:#fff; background:#38324e; }
.gc-tavla-dice { display:flex; min-height:46px; align-items:center; justify-content:center; gap:10px; color:var(--pg-muted,#918895); font-size:12px; }
.gc-tavla-dice b { display:grid; width:38px; height:38px; place-items:center; border:1px solid #e4d9c6; border-radius:10px; color:#302b35; background:#fff; font-size:20px; box-shadow:0 3px 8px #35253812; }
.gc-tavla-moves { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.gc-tavla-moves .btn { min-width:0; font-size:11px; }
.gc-table-roster,.gc-spy-players,.gc-pk-roster,.gc-city-players { display:grid; gap:7px; margin:14px 0; padding:0; list-style:none; }
.gc-table-player,.gc-spy-player,.gc-pk-player,.gc-city-player { display:flex; align-items:center; gap:9px; min-width:0; padding:9px 11px; border:1px solid var(--line); border-radius:13px; background:var(--surface); }
.gc-table-player.is-you,.gc-spy-player.is-you,.gc-city-player.is-you { border-color:#d8a7ba; background:#fff8fb; }
.gc-table-player>span:not(.avatar),.gc-spy-player>span:not(.avatar),.gc-pk-player>span:not(.avatar) { min-width:0; flex:1; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:12px; font-weight:700; }
.gc-table-player small,.gc-spy-player small,.gc-pk-player small,.gc-city-player small { color:var(--muted); font-size:10px; white-space:nowrap; }
.gc-spy-role { display:grid; gap:6px; justify-items:center; padding:20px; border:1px solid #d7c8f2; border-radius:18px; color:#fff; background:radial-gradient(circle at 50% 0,#8256c8,#392856 70%); text-align:center; }
.gc-spy-role small { color:#e6d8ff; font-size:10px; letter-spacing:.14em; }
.gc-spy-role strong { font-size:22px; }
.gc-spy-role span { color:#f0eaff; font-size:13px; }
.gc-spy-player.is-accused { border-color:#ee7892; background:#fff2f5; }
.gc-spy-player .btn { min-height:34px; padding:7px 9px; font-size:10px; }
.gc-spy-guesses,.gc-spy-vote,.gc-pk-choices,.gc-city-decisions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin:12px 0; }
.gc-spy-guesses .btn { min-width:0; padding:9px 6px; font-size:11px; }
.gc-pk-score { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:12px; padding:16px; border:1px solid var(--line); border-radius:17px; background:#fff; text-align:center; }
.gc-pk-score>div { display:grid; gap:4px; }
.gc-pk-score small { font-size:10px; font-weight:800; letter-spacing:.1em; }
.gc-pk-score strong { font-size:36px; line-height:1; }
.gc-pk-score span { color:var(--muted); font-size:10px; }
.gc-pk-score .is-red { color:#c23855; }
.gc-pk-score .is-blue { color:#356fb4; }
.gc-pk-score> b { color:var(--muted); font-size:12px; }
.gc-pk-pitch { position:relative; display:grid; min-height:142px; place-content:center; justify-items:center; gap:6px; overflow:hidden; border:1px solid #8dc395; border-radius:18px; color:#fff; background:repeating-linear-gradient(0deg,#348456 0 24px,#2e7b4d 25px 48px); }
.gc-pk-pitch:before { position:absolute; inset:12px 22%; border:1px solid #ffffffa8; border-radius:50% 50% 0 0; content:""; }
.gc-pk-pitch>* { z-index:1; }
.gc-pk-pitch .gc-pk-goal { font-size:35px; }
.gc-pk-pitch strong { font-size:12px; letter-spacing:.16em; }
.gc-pk-pitch small { color:#e8f5eb; font-size:11px; }
.gc-pk-choices { grid-template-columns:repeat(3,minmax(0,1fr)); }
.gc-pk-choices .btn { min-height:46px; padding:8px 5px; font-size:11px; }
.gc-pk-player.is-red { border-color:#f1c3cc; }
.gc-pk-player.is-blue { border-color:#c3d7ef; }
.gc-pk-player>span:not(.avatar) { display:grid; gap:3px; }
.gc-pk-player>b { margin-left:auto; color:var(--muted); font-size:9px; white-space:nowrap; }
.gc-city-summary span { padding:7px 10px; border-radius:999px; background:var(--surface-2); }
.gc-city-board { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:5px; padding:10px; border:1px solid #d9c49a; border-radius:17px; background:#f4ecd9; }
.gc-city-cell { display:grid; min-height:63px; align-content:start; gap:3px; padding:6px 5px; border:1px solid #e5dac5; border-radius:9px; background:#fffdf8; }
.gc-city-cell small { color:#8a7d71; font-size:8px; }
.gc-city-cell strong { overflow-wrap:anywhere; color:#322a31; font-size:9px; line-height:1.2; }
.gc-city-cell span,.gc-city-cell i { color:#887766; font-size:8px; font-style:normal; }
.gc-city-cell.type-property { border-top:4px solid #5b9c8a; }
.gc-city-cell.type-event { border-top:4px solid #7e73b8; }
.gc-city-cell.type-tax { border-top:4px solid #d27862; }
.gc-city-cell.is-you-owned { background:#e9f5ed; }
.gc-city-cell.is-owned { background:#eff0f7; }
.gc-city-cell.is-current { outline:2px solid #e9427c; outline-offset:1px; }
.gc-city-player>span:not(.avatar) { flex:1; font-size:12px; font-weight:700; }
.gc-city-player>b { color:#3a755a; font-size:10px; white-space:nowrap; }
@media(max-width:390px) {
  .gc-tavla-board { gap:3px; padding:8px; }
  .gc-tavla-point { min-height:54px; }
  .gc-tavla-moves { grid-template-columns:1fr; }
  .gc-tavla-moves .btn { min-height:38px; }
  .gc-city-board { gap:3px; padding:7px; }
  .gc-city-cell { min-height:58px; padding:5px 3px; }
  .gc-pk-player>b { max-width:86px; overflow:hidden; text-overflow:ellipsis; }
}

.gc-merge-prototype>.gc-online-join{display:block;margin:12px auto 24px}

/* Okey: custom table illustration with live seats and tile backs overlaid. */
.gc-okey-match:not(.gc-okey101-match){--okey-ink:#f5ebd6;color:var(--okey-ink);border-color:#6c5138;background:linear-gradient(155deg,#183d36,#102923 68%,#182d28);box-shadow:0 20px 54px #09191445,inset 0 1px #ffffff18}
.gc-okey-match:not(.gc-okey101-match) .gc-match-header h2{color:#fff5df;letter-spacing:.02em}
.gc-okey-match:not(.gc-okey101-match) .gc-kicker{color:#e8c87e}
.gc-okey-match:not(.gc-okey101-match) .gc-sound{border-color:#a78b59;background:#23483e;color:#fff1cf}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-table{min-height:72px;margin:2px 0 0;padding:10px 14px;border:1px solid #d8bd7d88;border-radius:16px;background:linear-gradient(115deg,#17392fef,#28584bef 52%,#17392fef);box-shadow:inset 0 1px #ffffff25,0 8px 18px #051e1840}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-middle{position:relative;display:block;height:clamp(360px,47vh,470px);min-height:360px;margin:0;padding:0;overflow:hidden;border:1px solid #c59c5d;border-radius:22px;background:#07523d url('/assets/games/okey/okey-table-v1.png') center 52%/100% 100% no-repeat;box-shadow:inset 0 0 0 3px #f3dba626,0 13px 28px #071c1740}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-players{position:absolute;inset:0;display:block}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-player{position:absolute;display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:6px;width:min(190px,49%);min-height:49px;padding:6px 9px;border:1px solid #e1c98470;border-radius:15px;background:linear-gradient(130deg,#163b32ed,#1d4a3ee8);color:#fff5df;box-shadow:0 6px 17px #071d1980,inset 0 1px #ffffff28;backdrop-filter:blur(5px)}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-player.is-turn{border-color:#ffe092;box-shadow:0 0 0 2px #f5cf7255,0 7px 18px #071d1980}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-player.is-you{background:linear-gradient(130deg,#503c24ee,#6c4b27ed)}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-player .avatar{width:34px;height:34px;border:2px solid #e7c982;box-shadow:0 2px 7px #061b17aa}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-player-copy{display:grid;min-width:0;gap:2px}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-player-copy strong{overflow:hidden;color:#fff7e5;font-size:.68rem;text-overflow:ellipsis;white-space:nowrap}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-player-copy small{color:#d9caa8;font-size:.56rem}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-player>b{color:#f2d384;font-size:.67rem}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-seat-0{bottom:27%;left:50%;z-index:2;transform:translateX(-50%)}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-seat-1{top:43%;left:2%}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-seat-2{top:3%;left:50%;transform:translateX(-50%)}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-seat-3{top:43%;right:2%}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-back-rack{position:absolute;top:calc(100% + 3px);left:50%;display:flex;width:max-content;max-width:min(42vw,168px);height:18px;align-items:end;transform:translateX(-50%)}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-back-rack i{display:block;width:12px;height:17px;margin-left:-5px;border:1px solid #b99456;border-radius:3px 3px 2px 2px;background:repeating-linear-gradient(135deg,#734936 0 3px,#9d7247 3px 5px);box-shadow:1px 2px 3px #09251e88;transform:translateY(var(--back-offset,0))}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-back-rack i:first-child{margin-left:0}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-center{position:absolute;top:50%;left:50%;display:grid;justify-items:center;gap:7px;width:min(210px,58%);padding:12px 10px;border:1px solid #e8d29a60;border-radius:19px;background:#0e392e9c;box-shadow:inset 0 1px #ffffff1c,0 6px 18px #061c1780;transform:translate(-50%,-50%);backdrop-filter:blur(4px)}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-discard-row{gap:5px;min-height:48px}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-discard,.gc-okey-match:not(.gc-okey101-match) .gc-okey-deck{width:31px;height:42px;border:1px solid #dbc996;border-radius:6px;background:linear-gradient(145deg,#fffdf2,#e6d5ae);color:var(--tile-ink,#463632);box-shadow:0 3px 5px #071b1766,inset 0 1px #fff}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-deck{background:repeating-linear-gradient(135deg,#673c35 0 4px,#9a6046 4px 7px);color:#fff4d8}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-last-discard{min-height:25px;color:#f2e5c9;font-size:.65rem}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-last-discard b{width:28px;height:38px;border:1px solid #dbc996;border-radius:5px;background:linear-gradient(145deg,#fffdf2,#e6d5ae);color:var(--tile-ink);font-size:1.1rem;box-shadow:0 3px 5px #071b1766}
.gc-okey-match:not(.gc-okey101-match) .gc-status{padding:9px 12px;border:1px solid #d9c4815c;border-radius:12px;background:#17392f;color:#f9eacb;font-weight:750}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-hand-head{position:relative;z-index:3;margin:-120px 14px 0;color:#fff5df;text-shadow:0 1px 3px #17100b}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-hand-head span{color:#f4dfb6}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-hand{position:relative;z-index:3;gap:2px;margin:0 9px;padding:7px 8px 10px;overflow-x:auto;border:1px solid #c8a165;border-radius:7px 7px 13px 13px;background:linear-gradient(180deg,#6c482a,#36271f 65%,#1c221e);box-shadow:inset 0 1px #f4daa577,0 7px 15px #06191470;scrollbar-color:#d3b06b #36271f}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-tile{flex-basis:clamp(24px,7vw,38px);width:clamp(24px,7vw,38px);height:55px;grid-template-rows:32px 3px;border:1px solid #d5c6a8;border-bottom:3px solid #c2ae87;border-radius:6px 6px 4px 4px;background:linear-gradient(112deg,#fff 0%,#fffdf4 35%,#e9dfca 100%);color:var(--tile-ink);box-shadow:1px 3px 5px #1a160e6e,inset 1px 1px #fff}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-tile::before{position:absolute;inset:3px 3px auto;height:3px;border-radius:3px;background:#ffffffb8;content:''}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-tile b{font-size:clamp(.85rem,4vw,1.15rem);font-family:Georgia,serif;font-weight:900;text-shadow:0 1px #fff}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-tile i{width:62%;height:3px;border-radius:3px;background:linear-gradient(90deg,transparent,var(--tile-ink),transparent)}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-tile.is-selected{transform:translateY(-9px);border-color:#f3d06e;box-shadow:0 0 0 2px #f3d06e,0 8px 13px #15110c8a}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-tile.is-joker::after{inset:-3px;border:2px solid #e8bd52;box-shadow:0 0 11px #f5d57880}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-actions .btn{border:1px solid #d7ba75;border-radius:13px;background:linear-gradient(130deg,#397b67,#215847);color:#fff4d8;box-shadow:inset 0 1px #ffffff32,0 5px 12px #081a1644}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-actions .btn.primary{background:linear-gradient(130deg,#d2a948,#9a6b27);color:#fff8e6}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-actions .btn:disabled{filter:saturate(.45);opacity:.58}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-help{color:#e3d7bd}
.gc-okey-match:not(.gc-okey101-match) .gc-game-leave{color:#d7cdb7}
@media(max-width:420px){.gc-okey-match:not(.gc-okey101-match){padding:14px 11px}.gc-okey-match:not(.gc-okey101-match) .gc-okey-middle{height:clamp(320px,39vh,390px)}.gc-okey-match:not(.gc-okey101-match) .gc-okey-player{grid-template-columns:26px minmax(0,1fr) auto;gap:3px;width:min(148px,42%);padding:5px 6px}.gc-okey-match:not(.gc-okey101-match) .gc-okey-player .avatar{width:26px;height:26px}.gc-okey-match:not(.gc-okey101-match) .gc-okey-seat-0{bottom:9%}.gc-okey-match:not(.gc-okey101-match) .gc-okey-seat-1,.gc-okey-match:not(.gc-okey101-match) .gc-okey-seat-3{top:43%;width:min(116px,33%)}.gc-okey-match:not(.gc-okey101-match) .gc-okey-center{width:min(144px,30%);padding:7px 4px}.gc-okey-match:not(.gc-okey101-match) .gc-okey-discard-row{flex-wrap:wrap;justify-content:center;gap:3px;min-height:40px}.gc-okey-match:not(.gc-okey101-match) .gc-okey-discard,.gc-okey-match:not(.gc-okey101-match) .gc-okey-deck{width:23px;height:34px}.gc-okey-match:not(.gc-okey101-match) .gc-okey-hand-head{margin:8px 10px 6px}.gc-okey-match:not(.gc-okey101-match) .gc-okey-tile{flex-basis:24px;width:24px}.gc-okey-match:not(.gc-okey101-match) .gc-okey-actions .btn{min-height:42px;padding-inline:8px;font-size:.74rem}}


.lr-online-join{min-height:46px;width:min(100%,320px);margin:8px auto 2px;border:1px solid #f4d493;border-radius:14px;background:linear-gradient(135deg,#d5573b,#a93c33);color:#fff7e7;font-weight:800;cursor:pointer}


.lm-board-wrap{position:relative}.lm-cell{transition:transform .16s cubic-bezier(.2,.8,.2,1),filter .16s,box-shadow .16s}.lm-cell:not(:disabled):active{transform:scale(.9)}.lm-cell.is-selected{transform:translateY(-3px) scale(1.04);filter:brightness(1.12);box-shadow:0 0 0 3px #f8d469,0 8px 18px #3a291c55}.lm-match-burst{position:absolute;inset:0;z-index:4;display:grid;place-items:center;pointer-events:none}.lm-match-burst strong{padding:8px 15px;border:2px solid #fff1be;border-radius:22px;background:linear-gradient(130deg,#fff7cf,#ffc63f 55%,#ff8e38);box-shadow:0 5px 20px #4d241c66;color:#75401f;font-size:clamp(1.1rem,5vw,1.8rem);font-weight:1000;text-shadow:0 1px #fff;animation:lm-score-pop .82s cubic-bezier(.16,.78,.21,1) both}.lm-match-burst i{position:absolute;width:9px;height:16px;border-radius:5px;background:linear-gradient(#fff8c7,#ff9f37);box-shadow:0 1px 6px #fff8dbaa;animation:lm-spark-pop .7s ease-out both;transform:rotate(var(--spark-angle)) translateY(calc(-1 * var(--spark-distance)))}.lm-message.is-locked{padding:10px 12px;border:1px solid #d79a48;border-radius:14px;background:linear-gradient(110deg,#fff3cf,#ffe0a1);color:#633f21;font-weight:850}.lm-leave.is-forfeit{border-color:#b95545;color:#8e3328;font-weight:850}@keyframes lm-score-pop{0%{opacity:0;transform:translateY(20px) scale(.55)}18%{opacity:1;transform:translateY(-8px) scale(1.16)}66%{opacity:1;transform:translateY(-21px) scale(1)}100%{opacity:0;transform:translateY(-34px) scale(.94)}}@keyframes lm-spark-pop{0%{opacity:0;scale:.3}20%{opacity:1;scale:1.25}100%{opacity:0;scale:.4}}@media(prefers-reduced-motion:reduce){.lm-cell,.lm-match-burst strong,.lm-match-burst i{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Okey play feel: draggable rack, tactile tile feedback and landscape table. */
.gc-okey-match:not(.gc-okey101-match) .gc-match-header{gap:8px}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-landscape{min-height:38px;padding:7px 11px;border:1px solid #d9bd78;border-radius:12px;background:linear-gradient(145deg,#315c4b,#183d32);color:#fff1ce;font-size:.76rem;font-weight:850;box-shadow:inset 0 1px #ffffff24,0 4px 10px #06171366}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-hand{min-height:78px;align-items:end;gap:0;padding:9px 10px 11px 13px;border:2px solid #d4ad66;border-bottom-width:7px;border-radius:12px 12px 16px 16px;background:linear-gradient(180deg,#977044 0%,#654327 12%,#39271e 68%,#1e211d 100%);box-shadow:inset 0 2px 0 #f8df9c88,inset 0 -5px 0 #171b18,0 9px 18px #06161088}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-tile{position:relative;flex:0 0 clamp(29px,7.5vw,42px);width:clamp(29px,7.5vw,42px);height:64px;margin-inline:-1px;border:1px solid #e1d7c4;border-bottom:4px solid #b7a482;border-radius:7px 7px 5px 5px;background:linear-gradient(115deg,#fff 0%,#fffdf5 48%,#e9dfca 100%);box-shadow:0 3px 5px #19130d75,inset 1px 1px 0 #fff;cursor:grab;touch-action:pan-x}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-tile:active{cursor:grabbing}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-tile.is-dealt{animation:okey-tile-deal .3s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(min(var(--tile-index),12)*18ms)}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-tile.is-dragging{opacity:.48;transform:translateY(-12px) rotate(-4deg)}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-tile.is-drawn{z-index:2;animation:okey-tile-draw .5s cubic-bezier(.18,.8,.2,1) both}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-tile b{font-size:clamp(1rem,3.3vw,1.35rem);line-height:1.1}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-hand-head{display:flex;align-items:center;justify-content:space-between;margin:8px 12px 5px}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-hand-head strong{font-family:Georgia,serif;font-size:.9rem;letter-spacing:.02em}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-hand-head span{font-size:.7rem}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-status{display:flex;align-items:center;gap:8px}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-last-discard.is-fresh-discard b{animation:okey-tile-discard .38s cubic-bezier(.2,.8,.2,1) both}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-center{transition:box-shadow .2s,background .2s}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-actions{gap:8px}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-help{margin-top:8px;font-size:.72rem;line-height:1.35}
@keyframes okey-tile-deal{from{opacity:0;transform:translateY(18px) rotate(4deg) scale(.82)}to{opacity:1;transform:translateY(0) rotate(0) scale(1)}}
@keyframes okey-tile-draw{0%{opacity:.4;transform:translateY(-26px) rotate(12deg) scale(.8)}65%{opacity:1;transform:translateY(-11px) rotate(-3deg) scale(1.08)}100%{transform:translateY(0) rotate(0) scale(1)}}
@keyframes okey-tile-discard{0%{opacity:.2;transform:translateY(-26px) rotate(12deg) scale(.76)}70%{opacity:1;transform:translateY(4px) rotate(-5deg) scale(1.08)}100%{transform:translateY(0) rotate(0) scale(1)}}
@media (orientation:landscape) and (min-width:600px){
  .gc-okey-match:not(.gc-okey101-match){display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"head" "hud" "status" "table" "racktitle" "rack" "actions" "help" "leave";gap:5px;width:100%;max-width:none;height:100dvh;max-height:100dvh;overflow:auto;padding:8px 18px;border:0;border-radius:0}
  .gc-okey-match:not(.gc-okey101-match)>.gc-match-header{grid-area:head;min-height:34px;margin:0}
  .gc-okey-match:not(.gc-okey101-match)>.gc-okey-table{grid-area:hud;min-height:44px;margin:0;padding:5px 12px}
  .gc-okey-match:not(.gc-okey101-match)>.gc-status{grid-area:status;margin:0;padding:5px 10px;text-align:center;font-size:.78rem}
  .gc-okey-match:not(.gc-okey101-match)>.gc-okey-middle{grid-area:table;height:31dvh;min-height:125px;max-height:205px;margin:0 auto;width:min(100%,1000px);background-position:center 53%;background-size:cover}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-seat-0{bottom:3%}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-seat-1,.gc-okey-match:not(.gc-okey101-match) .gc-okey-seat-3{top:42%;width:min(190px,25%)}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-seat-2{top:2%}
  .gc-okey-match:not(.gc-okey101-match)>.gc-okey-hand-head{grid-area:racktitle;margin:0 3px}
  .gc-okey-match:not(.gc-okey101-match)>.gc-okey-hand{grid-area:rack;min-height:73px;height:73px;justify-content:center;overflow-x:auto}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-tile{flex-basis:clamp(37px,5vw,52px);width:clamp(37px,5vw,52px);height:58px}
  .gc-okey-match:not(.gc-okey101-match)>.gc-okey-actions{grid-area:actions;display:flex;justify-content:center;margin:0}
  .gc-okey-match:not(.gc-okey101-match)>.gc-okey-actions .btn{min-height:37px;padding-block:6px}
  .gc-okey-match:not(.gc-okey101-match)>.gc-okey-help{grid-area:help;margin:0;text-align:center}
  .gc-okey-match:not(.gc-okey101-match)>.gc-game-leave{grid-area:leave;min-height:26px;margin:0;padding-block:3px}
}
.gc-okey-match.is-landscape-fallback{position:fixed;z-index:10000;top:0;left:0;width:100dvh;height:100dvw;max-width:none;max-height:none;margin:0;overflow:auto;border:0;border-radius:0;transform:rotate(90deg) translateY(-100%);transform-origin:top left}
@media (prefers-reduced-motion:reduce){.gc-okey-match:not(.gc-okey101-match) .gc-okey-tile{animation-duration:.01ms!important;animation-delay:0ms!important;transition-duration:.01ms!important}}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-tile.is-grouped{border-top:3px solid #9abf77;box-shadow:0 0 0 1px #82bd7a,0 3px 5px #19130d75,inset 1px 1px 0 #fff}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-tile.is-selected{z-index:3;outline:2px solid #f3d06e;outline-offset:1px}
@media (orientation:landscape) and (min-width:600px){.game-center-page:has(.gc-okey-match:not(.gc-okey101-match)){width:100%;max-width:none;padding:4px 8px}}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-tile.is-dealt.is-drawn{animation:okey-tile-draw .5s cubic-bezier(.18,.8,.2,1) both;animation-delay:0ms}
@media (orientation:landscape) and (min-width:600px){
  .game-center-page:has(.gc-okey-match:not(.gc-okey101-match)){padding:0}
  .game-center-page:has(.gc-okey-match:not(.gc-okey101-match))>.game-center-heading{display:none}
  .gc-okey-match:not(.gc-okey101-match)>.gc-match-header{min-height:42px;height:42px;align-items:center}
  .gc-okey-match:not(.gc-okey101-match)>.gc-match-header h2{margin:0;font-size:1.2rem;line-height:1}
  .gc-okey-match:not(.gc-okey101-match)>.gc-okey-table{min-height:39px;height:39px}
  .gc-okey-match:not(.gc-okey101-match)>.gc-status{min-height:23px;height:23px;line-height:1.1}
  .gc-okey-match:not(.gc-okey101-match)>.gc-okey-middle{height:36dvh;min-height:138px;max-height:165px;background:#0d4935;background-image:radial-gradient(ellipse at 50% 52%,#1d644a 0,#13543f 55%,#0b372d 100%);box-shadow:inset 0 0 0 6px #66472c,inset 0 0 0 9px #b58c52,0 8px 18px #071c1740}
  .gc-okey-match:not(.gc-okey101-match)>.gc-okey-middle:before{position:absolute;inset:12% 8%;border:1px solid #e5c37a66;border-radius:50%;content:'';pointer-events:none}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-player{grid-template-columns:24px minmax(0,1fr) auto;gap:4px;width:min(174px,23%);min-height:36px;padding:3px 7px}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-player .avatar{width:23px;height:23px}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-player-copy strong{font-size:.62rem}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-player-copy small{font-size:.5rem}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-player>b{font-size:.58rem}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-seat-0{bottom:2%}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-seat-1,.gc-okey-match:not(.gc-okey101-match) .gc-okey-seat-3{top:42%;width:min(165px,22%)}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-seat-2{top:2%;z-index:1}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-center{top:57%;width:min(196px,30%);gap:2px;padding:4px 6px;border-radius:13px}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-discard-row{min-height:35px;gap:3px}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-discard,.gc-okey-match:not(.gc-okey101-match) .gc-okey-deck{width:23px;height:31px}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-last-discard{min-height:15px;font-size:.53rem}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-last-discard b{width:20px;height:27px;font-size:.82rem}
  .gc-okey-match:not(.gc-okey101-match)>.gc-okey-help{display:none}
  .gc-okey-match:not(.gc-okey101-match)>.gc-game-leave{min-height:20px}
}
@media (orientation:landscape) and (min-width:600px){
  .gc-okey-match:not(.gc-okey101-match){grid-template-columns:minmax(0,1.2fr) minmax(320px,1fr);grid-template-rows:30px 34px 18px minmax(100px,1fr) 14px 94px 23px 17px;grid-template-areas:"head head" "hud hud" "status status" "table handtitle" "table hand" "table actions" "table help" "leave leave";gap:4px 8px;padding:8px;overflow:auto}
  .gc-okey-match:not(.gc-okey101-match)>.gc-match-header{grid-area:head;min-height:30px;height:30px;margin:0}
  .gc-okey-match:not(.gc-okey101-match)>.gc-match-header .gc-kicker{display:none}
  .gc-okey-match:not(.gc-okey101-match)>.gc-match-header h2{margin:0;font-size:1.08rem;line-height:1}
  .gc-okey-match:not(.gc-okey101-match)>.gc-okey-table{grid-area:hud;min-height:34px;height:34px;margin:0;padding:3px 10px}
  .gc-okey-match:not(.gc-okey101-match)>.gc-status{grid-area:status;min-height:18px;height:18px;margin:0;padding:2px 8px;text-align:center;font-size:.7rem;line-height:1.1}
  .gc-okey-match:not(.gc-okey101-match)>.gc-okey-middle{grid-area:table;align-self:stretch;width:100%;height:auto;min-height:0;max-height:none;margin:0;background:#0d4935;background-image:radial-gradient(ellipse at 50% 52%,#1d644a 0,#13543f 55%,#0b372d 100%);box-shadow:inset 0 0 0 6px #66472c,inset 0 0 0 9px #b58c52,0 8px 18px #071c1740}
  .gc-okey-match:not(.gc-okey101-match)>.gc-okey-middle:before{position:absolute;inset:10% 8%;border:1px solid #e5c37a66;border-radius:50%;content:'';pointer-events:none}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-player{grid-template-columns:22px minmax(0,1fr) auto;gap:3px;width:min(158px,31%);min-height:32px;padding:3px 6px}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-player .avatar{width:21px;height:21px}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-player-copy strong{font-size:.58rem}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-player-copy small{font-size:.47rem}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-player>b{font-size:.55rem}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-seat-0{bottom:2%}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-seat-1,.gc-okey-match:not(.gc-okey101-match) .gc-okey-seat-3{top:43%;width:min(135px,29%)}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-seat-2{top:2%;z-index:1}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-center{top:50%;width:min(180px,43%);gap:2px;padding:4px 5px;border-radius:12px}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-discard-row{min-height:32px;gap:2px}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-discard,.gc-okey-match:not(.gc-okey101-match) .gc-okey-deck{width:21px;height:29px}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-last-discard{min-height:14px;font-size:.5rem}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-last-discard b{width:19px;height:25px;font-size:.78rem}
  .gc-okey-match:not(.gc-okey101-match)>.gc-okey-hand-head{grid-area:handtitle;align-self:end;margin:0;padding-left:2px}
  .gc-okey-match:not(.gc-okey101-match)>.gc-okey-hand{grid-area:hand;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));align-content:stretch;justify-content:stretch;gap:3px;min-height:0;height:94px;padding:5px;border-radius:11px 11px 14px 14px;overflow:hidden}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-tile{width:100%;height:100%;min-height:0;max-height:41px;margin:0;padding:2px;flex:initial;border-radius:6px 6px 4px 4px}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-tile b{font-size:clamp(.86rem,2.2vh,1.05rem)}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-tile small{font-size:.38rem}
  .gc-okey-match:not(.gc-okey101-match)>.gc-okey-actions{grid-area:actions;display:flex;justify-content:stretch;gap:5px;margin:0}
  .gc-okey-match:not(.gc-okey101-match)>.gc-okey-actions .btn{flex:1;min-height:23px;padding:2px 5px;font-size:.61rem}
  .gc-okey-match:not(.gc-okey101-match)>.gc-okey-help{grid-area:help;display:block;align-self:center;margin:0;font-size:.56rem;line-height:1.2}
  .gc-okey-match:not(.gc-okey101-match)>.gc-game-leave{grid-area:leave;min-height:17px;margin:0;padding:0;font-size:.65rem}
}
@media (orientation:landscape) and (min-width:600px){
  .gc-okey-match:not(.gc-okey101-match){grid-template-rows:40px 36px 18px minmax(100px,1fr) 14px 94px 0 17px}
  .gc-okey-match:not(.gc-okey101-match)>.gc-match-header{min-height:40px;height:40px}
  .gc-okey-match:not(.gc-okey101-match)>.gc-okey-table{min-height:36px;height:36px}
  .gc-okey-match:not(.gc-okey101-match)>.gc-okey-help{display:none}
}
@media (orientation:landscape) and (min-width:600px){.gc-okey-match:not(.gc-okey101-match){grid-template-rows:40px 44px 18px minmax(100px,1fr) 14px 94px 0 17px}.gc-okey-match:not(.gc-okey101-match)>.gc-okey-table{min-height:44px;height:44px}}
@media (orientation:landscape) and (min-width:600px){
  .gc-okey-match:not(.gc-okey101-match){grid-template-rows:40px 48px 18px minmax(100px,1fr) 14px 94px 0 17px}
  .gc-okey-match:not(.gc-okey101-match)>.gc-okey-table{min-height:48px;height:48px;padding:2px 8px}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-indicator{grid-template-columns:27px auto;gap:0 6px}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-indicator small{font-size:.43rem;line-height:8px;letter-spacing:.08em}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-indicator b{width:27px;height:32px;font-size:.95rem}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-indicator span{font-size:.58rem}
}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-player.is-turn{animation:okey-seat-pulse 1.8s ease-in-out infinite}
@keyframes okey-seat-pulse{0%,100%{filter:brightness(1);box-shadow:0 0 0 1px #f5cf7240,0 6px 17px #071d1980,inset 0 1px #ffffff28}50%{filter:brightness(1.18);box-shadow:0 0 0 3px #f5cf7290,0 0 22px #f5cf7240,inset 0 1px #ffffff40}}
@media(prefers-reduced-motion:reduce){.gc-okey-match:not(.gc-okey101-match) .gc-okey-player.is-turn{animation-duration:.01ms!important}}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-player{position:absolute}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-player.is-turn:after{position:absolute;top:-4px;right:-4px;width:11px;height:11px;border:2px solid #f5e4bc;border-radius:50%;background:#f1c84e;box-shadow:0 0 10px #ffe080;content:''}

/* Okey coffeehouse pass: seated player's perspective, branded center and tactile live tiles. */
.gc-okey-match:not(.gc-okey101-match) .gc-okey-middle{
  background-color:#0a3d2f;
  background-image:linear-gradient(180deg,#09251b40 0%,#09251b08 42%,#071a1740 100%),url('/assets/games/okey/coffeehouse-table-perspective-v1.png');
  background-position:center,center 59%;background-size:cover,cover;background-repeat:no-repeat;
  border:2px solid #c08b47;border-radius:23px;
  box-shadow:inset 0 0 0 3px #3c2718,inset 0 0 0 6px #d0a2548c,0 14px 25px #090f0d88;
}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-middle:before{
  position:absolute;inset:4% 3%;z-index:0;border:1px solid #dfb96b58;border-radius:48%/43%;
  content:'';pointer-events:none;box-shadow:inset 0 0 24px #09231922;
}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-brand-medallion{
  position:absolute;top:50%;left:50%;z-index:1;display:grid;justify-items:center;gap:0;
  width:clamp(112px,20vw,176px);padding:7px 12px 5px;border:2px solid #d9b765;border-radius:999px;
  background:radial-gradient(ellipse at 50% 16%,#f6dfa3,#bf8d42 52%,#684522 100%);
  box-shadow:0 4px 8px #09110d9c,inset 0 1px 2px #fff3c7,inset 0 -4px 0 #573716;
  transform:translate(-50%,-50%) rotate(-3deg);pointer-events:none;
}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-brand-medallion img{display:block;width:100%;height:auto;max-height:31px;object-fit:contain;filter:drop-shadow(0 1px 1px #fff4c6)}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-brand-medallion span{color:#49301d;font:800 .45rem/1 Georgia,serif;letter-spacing:.2em;text-shadow:0 1px #f5dfaa}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-players{z-index:2}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-center{z-index:3;top:58%;border:0;background:transparent;box-shadow:none;backdrop-filter:none}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-discard,.gc-okey-match:not(.gc-okey101-match) .gc-okey-deck{
  position:relative;border:1px solid #eee1c3;border-bottom:4px solid #b5a27c;border-radius:5px 5px 4px 4px;
  background:linear-gradient(115deg,#fff 0%,#fffdf5 45%,#e9dfca 100%);
  box-shadow:0 5px 7px #09100db8,1px 1px 0 #7d6340,2px 3px 0 #bb9d68,inset 1px 1px #fff;
  transform:perspective(150px) rotateX(5deg);
}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-deck{background:repeating-linear-gradient(135deg,#613b2e 0 4px,#b07b4d 4px 7px);border-color:#e4c98a;color:#fff2cf}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-tile{
  border-color:#f3ebdc;border-bottom-width:5px;border-bottom-color:#b8a27b;
  background:linear-gradient(108deg,#fff 0%,#fffdf6 35%,#ece1cb 100%);
  box-shadow:0 4px 6px #140f0c75,1px 1px 0 #78664a,inset 1px 1px 0 #fff,inset -2px 0 2px #d3c8b3;
  transform:perspective(180px) rotateX(2deg);transition:transform .16s ease,box-shadow .16s ease;
}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-tile:hover{transform:perspective(180px) rotateX(0) translateY(-3px);box-shadow:0 7px 10px #120e0b80,1px 1px 0 #78664a,inset 1px 1px 0 #fff}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-hand{border-color:#ddb56c;border-bottom-width:8px;background:linear-gradient(180deg,#956c3e 0%,#65462a 16%,#3b2a1f 72%,#201e19 100%);box-shadow:inset 0 2px 0 #ffe2a188,inset 0 -5px 0 #171712,0 10px 18px #070e0b9c}
@media (orientation:landscape) and (min-width:600px){
  .gc-okey-match:not(.gc-okey101-match)>.gc-okey-middle{background-position:center,center 56%;background-size:cover,cover}
  .gc-okey-match:not(.gc-okey101-match) .gc-okey-brand-medallion{width:clamp(112px,16vw,162px)}
}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-brand-medallion{top:42%;z-index:4;display:flex;align-items:center;justify-content:center;gap:7px;width:126px;padding:5px 12px 5px 7px;border-radius:999px;transform:translate(-50%,-50%) rotate(-2deg)}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-brand-medallion img{width:30px;height:30px;max-height:none;object-fit:contain;filter:none}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-brand-medallion span{font:900 .52rem/1 system-ui,sans-serif;letter-spacing:.08em;color:#432816;text-shadow:0 1px #fff0bf}
.gc-okey-match:not(.gc-okey101-match) .gc-okey-center{top:68%}
@media (orientation:landscape) and (min-width:600px){.gc-okey-match:not(.gc-okey101-match) .gc-okey-brand-medallion{top:39%;width:118px}.gc-okey-match:not(.gc-okey101-match) .gc-okey-center{top:69%}}

/* Okey reference layout: vertical arcade table, side players, center board and bottom rack. */
@media (orientation:portrait) and (max-width:599px){
  .game-center-page:has(.gc-okey-match.gc-okey-match){position:fixed;inset:0;z-index:10000;width:min(100vw,430px);height:100dvh;max-width:430px;margin:0 auto;padding:0;overflow:hidden;background:#06162c;box-shadow:0 0 50px #020711aa}
  .game-center-page:has(.gc-okey-match.gc-okey-match)>.game-center-heading{display:none}
  .gc-okey-match.gc-okey-match{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:'head' 'hud' 'status' 'table' 'racktitle' 'rack' 'actions' 'leave';grid-template-rows:minmax(76px,12dvh) 42px 24px minmax(132px,1fr) 18px clamp(100px,18dvh,132px) minmax(44px,auto) 16px;gap:3px;width:100%;height:100dvh;min-height:0;max-height:100dvh;margin:0;padding:8px 10px 4px;border:0;border-radius:0;overflow:hidden;color:#f4f8ff;background:radial-gradient(ellipse at 50% 40%,#124e83 0,#08294b 50%,#031329 100%)}
  .gc-okey-match.gc-okey-match:before{position:absolute;inset:0;z-index:-1;content:'';background:radial-gradient(circle at 15% 22%,#5ed5ff55 0 1px,transparent 3px),radial-gradient(circle at 80% 18%,#8be8ff66 0 1px,transparent 4px),radial-gradient(circle at 70% 73%,#2eafff44 0 1px,transparent 3px),radial-gradient(circle at 26% 63%,#b4edff44 0 1px,transparent 3px),radial-gradient(ellipse at 50% 48%,transparent 25%,#06152b99 100%);background-size:100% 100%;animation:okey-arcade-glow 5s ease-in-out infinite alternate}
  .gc-okey-match.gc-okey-match>.gc-match-header{grid-area:head;position:relative;display:flex;align-items:flex-start;justify-content:center;min-height:0;height:auto;margin:0;padding:2px 48px 0;text-align:center}
  .gc-okey-match.gc-okey-match>.gc-match-header>div{display:grid;justify-items:center;gap:2px}
  .gc-okey-match.gc-okey-match>.gc-match-header .gc-kicker{color:#7ddcff;font-size:.5rem;letter-spacing:.18em}
  .gc-okey-match.gc-okey-match>.gc-match-header h2{max-width:300px;margin:0;color:#fff;font-family:Impact,'Arial Narrow',system-ui,sans-serif;font-size:clamp(1.35rem,7.4vw,2.1rem);font-stretch:condensed;font-weight:950;line-height:.88;letter-spacing:-.035em;text-shadow:0 2px #27477d,0 5px 0 #122951,0 8px 22px #49c8ff66}
  .gc-okey-match.gc-okey-match .gc-okey-game-name{color:#fbd979;font-size:.52rem;font-weight:900;letter-spacing:.22em;text-shadow:0 1px 4px #001022}
  .gc-okey-match.gc-okey-match .gc-okey-landscape,.gc-okey-match.gc-okey-match .gc-sound{position:absolute;top:2px;z-index:9;min-height:30px;padding:5px 8px;border:1px solid #8ddcff;border-radius:99px;background:linear-gradient(180deg,#236da0,#123964);color:#e9f9ff;font-size:.58rem;box-shadow:0 3px 12px #031329aa,inset 0 1px #ffffff55}
  .gc-okey-match.gc-okey-match .gc-okey-landscape{left:0}.gc-okey-match.gc-okey-match .gc-sound{right:0}
  .gc-okey-match.gc-okey-match>.gc-okey-table{grid-area:hud;display:flex;align-items:center;justify-content:space-between;min-height:0;height:auto;margin:0;padding:4px 10px;border:1px solid #63c8f488;border-radius:13px;background:linear-gradient(100deg,#0a2341dd,#134c76e8,#0a2341dd);box-shadow:0 4px 14px #010b1b99,inset 0 1px #ffffff36}
  .gc-okey-match.gc-okey-match .gc-okey-indicator{display:flex;align-items:center;gap:5px}.gc-okey-match.gc-okey-match .gc-okey-indicator small{color:#9bdfff;font-size:.46rem;letter-spacing:.08em}.gc-okey-match.gc-okey-match .gc-okey-indicator b{width:25px;height:31px;border:1px solid #e6f1ff;border-radius:4px;background:linear-gradient(145deg,#fff,#d7e6f6);box-shadow:0 2px 4px #0008;font-size:.9rem}
  .gc-okey-match.gc-okey-match .gc-okey-indicator span,.gc-okey-match.gc-okey-match .gc-okey-stock small{color:#c9edff;font-size:.53rem}.gc-okey-match.gc-okey-match .gc-okey-clock{color:#ffe77e;font-size:.83rem;font-weight:950;text-shadow:0 0 9px #ffce56}
  .gc-okey-match.gc-okey-match .gc-okey-stock{display:flex;align-items:center;gap:4px;padding:3px 6px;border:1px solid #61c8ef55;border-radius:8px;background:#071b34aa}.gc-okey-match.gc-okey-match .gc-okey-stock b{color:#fff;font-size:.75rem}
  .gc-okey-match.gc-okey-match>.gc-status{grid-area:status;min-height:0;margin:0;padding:4px 9px;border:1px solid #53bbec77;border-radius:99px;background:#092342d9;color:#ddf6ff;font-size:.58rem;line-height:1.2;text-align:center;box-shadow:0 2px 8px #00102388}
  .gc-okey-match.gc-okey-match>.gc-error{grid-area:status;z-index:10;margin:0;padding:3px;font-size:.57rem}
  .gc-okey-match.gc-okey-match>.gc-okey-middle{grid-area:table;position:relative;align-self:stretch;width:100%;height:auto;min-height:0;max-height:none;margin:0;padding:0;overflow:hidden;border:1px solid #42bdf5;border-radius:12px;background-color:#0b4773;background-image:radial-gradient(ellipse at 50% 50%,#126da0aa 0,#092a50dd 70%),linear-gradient(0deg,transparent 24%,#5acbff2b 25%,transparent 26%,transparent 49%,#5acbff24 50%,transparent 51%,transparent 74%,#5acbff22 75%,transparent 76%),linear-gradient(90deg,transparent 24%,#5acbff22 25%,transparent 26%,transparent 49%,#5acbff24 50%,transparent 51%,transparent 74%,#5acbff22 75%,transparent 76%);box-shadow:inset 0 0 0 2px #9ae8ff36,inset 0 0 42px #00132999,0 10px 24px #010a18aa}
  .gc-okey-match.gc-okey-match:not(.gc-okey101-match) .gc-okey-middle:before{inset:8% 5%;border:1px solid #8ce6ff25;border-radius:8px;box-shadow:inset 0 0 0 1px #ffffff08}
  .gc-okey-match.gc-okey-match .gc-okey-players{position:absolute;inset:0;z-index:5;display:block;margin:0;padding:0;list-style:none}
  .gc-okey-match.gc-okey-match .gc-okey-player{position:absolute;display:grid;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:3px;width:min(138px,42%);min-height:34px;padding:3px 5px;border:1px solid #94dcff;border-radius:8px;background:linear-gradient(145deg,#07182feF,#123c63ed);color:#fff;box-shadow:0 4px 12px #0008,inset 0 1px #fff5;backdrop-filter:blur(3px)}
  .gc-okey-match.gc-okey-match .gc-okey-player .avatar{width:23px;height:23px;border:1px solid #effbff;box-shadow:0 0 8px #62caff88}.gc-okey-match.gc-okey-match .gc-okey-player-copy{display:grid;gap:1px;min-width:0}.gc-okey-match.gc-okey-match .gc-okey-player-copy strong{overflow:hidden;color:#fff;font-size:.56rem;text-overflow:ellipsis;white-space:nowrap}.gc-okey-match.gc-okey-match .gc-okey-player-copy small{color:#b5e5ff;font-size:.45rem}.gc-okey-match.gc-okey-match .gc-okey-player>b{color:#ffe37a;font-size:.49rem}
  .gc-okey-match.gc-okey-match .gc-okey-seat-0{bottom:3%;left:50%;z-index:6;transform:translateX(-50%)}.gc-okey-match.gc-okey-match .gc-okey-seat-1{top:45%;left:1%}.gc-okey-match.gc-okey-match .gc-okey-seat-2{top:2%;left:50%;transform:translateX(-50%)}.gc-okey-match.gc-okey-match .gc-okey-seat-3{top:45%;right:1%}
  .gc-okey-match.gc-okey-match .gc-okey-back-rack{top:calc(100% + 1px);height:12px}.gc-okey-match.gc-okey-match .gc-okey-back-rack i{width:8px;height:11px;margin-left:-4px;border-color:#8bdcff;background:repeating-linear-gradient(135deg,#103863 0 2px,#4ca6d7 2px 4px);box-shadow:1px 2px 4px #0009}
  .gc-okey-match.gc-okey-match .gc-okey-center{position:absolute;top:50%;left:50%;z-index:3;display:grid;justify-items:center;gap:3px;width:min(66%,246px);padding:4px;transform:translate(-50%,-50%);border:1px solid #74d9ff5c;border-radius:8px;background:#061a30a6;box-shadow:0 0 24px #2ebeff22;backdrop-filter:blur(1px)}
  .gc-okey-match.gc-okey-match .gc-okey-brand-medallion{top:50%;left:50%;z-index:1;display:grid;width:86px;height:58px;place-items:center;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;opacity:.16;transform:translate(-50%,-50%);}
  .gc-okey-match.gc-okey-match .gc-okey-brand-medallion img{width:56px;height:56px;max-height:none;filter:drop-shadow(0 0 12px #4ecaff)}.gc-okey-match.gc-okey-match .gc-okey-brand-medallion span{display:none}
  .gc-okey-match.gc-okey-match .gc-okey-discard-row{display:flex;flex-wrap:wrap;justify-content:center;gap:3px;min-height:0}.gc-okey-match.gc-okey-match .gc-okey-discard,.gc-okey-match.gc-okey-match .gc-okey-deck{width:25px;height:34px;grid-template-rows:26px 3px;padding:2px;border:1px solid #dceeff;border-bottom:3px solid #91a9bf;border-radius:3px;background:linear-gradient(110deg,#fff,#dfeaf5);color:var(--tile-ink,#445);font-size:.68rem;box-shadow:0 3px 5px #0009,1px 1px 0 #ffffff55;transform:rotate(var(--tile-tilt,0deg))}
  .gc-okey-match.gc-okey-match .gc-okey-deck{background:repeating-linear-gradient(135deg,#10355a 0 3px,#367aab 3px 6px);color:white}.gc-okey-match.gc-okey-match .gc-okey-last-discard{min-height:14px;color:#cdeeff;font-size:.48rem}.gc-okey-match.gc-okey-match .gc-okey-last-discard b{width:18px;height:25px;border-color:#dceeff;background:linear-gradient(110deg,#fff,#dfeaf5);font-size:.76rem}
  .gc-okey101-match .gc-okey101-board{position:absolute;top:50%;left:50%;z-index:3;display:flex;align-content:center;align-items:center;justify-content:center;flex-wrap:wrap;gap:4px;width:78%;max-height:78%;min-height:86px;margin:0;padding:7px;overflow:auto;transform:translate(-50%,-50%);border:1px solid #67d2ff66;border-radius:8px;background:#061b32b9;box-shadow:0 0 22px #38bbff25;color:#bfeaff;font-size:.56rem}
  .gc-okey101-match .gc-okey101-table-group{gap:1px;min-height:30px;padding:3px;border:1px solid #a5ddff;border-radius:4px;background:linear-gradient(120deg,#f8fbff,#ceddf0);box-shadow:0 3px 6px #0009;transform:rotate(var(--meld-angle,0deg))}
  .gc-okey101-match .gc-okey101-table-group span{width:20px;border-radius:2px;background:linear-gradient(140deg,#fff,#e0ebf7);font-size:.78rem}
  .gc-okey101-match .gc-okey-player:nth-child(1){top:2%;left:50%;transform:translateX(-50%)}.gc-okey101-match .gc-okey-player:nth-child(2){top:43%;left:1%}.gc-okey101-match .gc-okey-player:nth-child(3){top:43%;right:1%}.gc-okey101-match .gc-okey-player:nth-child(4){bottom:3%;left:50%;transform:translateX(-50%)}
  .gc-okey-match.gc-okey-match>.gc-okey-hand-head{grid-area:racktitle;display:flex;align-items:end;justify-content:space-between;min-height:0;margin:0 3px;padding:0 4px;color:#f5fbff;text-shadow:0 1px 4px #00142b}
  .gc-okey-match.gc-okey-match>.gc-okey-hand-head strong{font-size:.68rem;letter-spacing:.05em}.gc-okey-match.gc-okey-match>.gc-okey-hand-head span{color:#bdeaff;font-size:.5rem}
  .gc-okey-match.gc-okey-match>.gc-okey-hand{grid-area:rack;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:minmax(0,1fr);align-content:stretch;justify-content:stretch;gap:3px;min-height:0;height:auto;margin:0;padding:5px 6px 8px;overflow:hidden;border:2px solid #ffd477;border-bottom-width:6px;border-radius:9px 9px 13px 13px;background:linear-gradient(180deg,#a86a26,#684018 17%,#321f16 82%,#1d1a16);box-shadow:inset 0 2px #ffe9a588,0 7px 16px #0009}
  .gc-okey-match.gc-okey-match .gc-okey-tile{width:100%;height:100%;min-height:0;max-height:none;margin:0;padding:1px;flex:initial;border:1px solid #e6edf7;border-bottom:3px solid #a8b5c6;border-radius:4px 4px 3px 3px;background:linear-gradient(110deg,#fff 0,#f5f8fe 45%,#d8e2f0 100%);box-shadow:0 3px 5px #0009,1px 1px 0 #738298,inset 1px 1px #fff;transform:perspective(140px) rotateX(2deg)}
  .gc-okey-match.gc-okey-match .gc-okey-tile b{font-size:clamp(.7rem,3.5vw,.98rem);line-height:1}.gc-okey-match.gc-okey-match .gc-okey-tile i{width:11px;height:2px}.gc-okey-match.gc-okey-match .gc-okey-tile small{font-size:.35rem}.gc-okey-match.gc-okey-match .gc-okey-tile span{font-size:.34rem}
  .gc-okey101-match>.gc-okey-hand{grid-template-columns:repeat(7,minmax(0,1fr));grid-auto-rows:minmax(0,1fr)}
  .gc-okey-match.gc-okey-match>.gc-okey-actions{grid-area:actions;display:flex;justify-content:center;align-items:stretch;gap:6px;margin:0;padding:2px 0}
  .gc-okey-match.gc-okey-match>.gc-okey-actions .btn{flex:1;min-width:0;min-height:40px;padding:5px 7px;border:1px solid #84dcff;border-radius:8px;background:linear-gradient(180deg,#267db0,#125078);color:#effaff;font-size:.63rem;font-weight:850;box-shadow:0 4px 10px #0008,inset 0 1px #ffffff4d}
  .gc-okey-match.gc-okey-match>.gc-okey-actions .btn.primary{border-color:#ffe48b;background:linear-gradient(180deg,#ffc44c,#d78324);color:#35200b}
  .gc-okey-match.gc-okey-match>.gc-okey-help{display:none}
  .gc-okey-match.gc-okey-match>.gc-game-leave{grid-area:leave;min-height:0;margin:0;padding:0;color:#91dfff;font-size:.5rem;line-height:1;text-align:center}
  .gc-okey-match.gc-okey-match>.gc-game-leave:before{display:inline-block;width:13px;height:13px;margin-right:4px;background:url('/assets/pingora-mark.svg') center/contain no-repeat;content:'';vertical-align:middle}
  .gc-okey101-match{grid-template-rows:minmax(76px,12dvh) 42px 24px minmax(132px,1fr) 18px clamp(120px,22dvh,150px) minmax(44px,auto) 16px}
  .gc-okey101-match .gc-okey-last-discard{position:absolute;right:4%;bottom:22%;z-index:4;padding:3px 5px;border:1px solid #7bd7ff70;border-radius:5px;background:#061b32b8;color:#dbf5ff;font-size:.46rem}
}
@keyframes okey-arcade-glow{from{filter:brightness(.9)}to{filter:brightness(1.1)}}
@media(prefers-reduced-motion:reduce){.gc-okey-match.gc-okey-match:before{animation:none!important}}
@media (orientation:portrait) and (max-width:599px){
  .gc-okey-match.gc-okey-match .gc-okey-landscape{display:none}
  .gc-okey-match.gc-okey-match .gc-sound{top:0;right:0;width:28px;min-height:28px;padding:0;overflow:hidden;font-size:0}
  .gc-okey-match.gc-okey-match .gc-sound:after{display:grid;place-items:center;content:'♫';font-size:15px}
}
@media (orientation:portrait) and (max-width:599px){
  .gc-okey-match.gc-okey-match .gc-okey-landscape{display:block;top:1px;left:0;width:27px;min-height:27px;padding:0;overflow:hidden;font-size:0}
  .gc-okey-match.gc-okey-match .gc-okey-landscape:after{display:grid;place-items:center;content:'⛶';font-size:14px}
  .gc-okey-match.gc-okey-match .gc-okey-player.gc-okey-seat-1,.gc-okey-match.gc-okey-match .gc-okey-player.gc-okey-seat-3{grid-template-columns:1fr;grid-template-rows:40px auto auto;justify-items:center;gap:1px;width:66px;min-height:78px;padding:4px 3px;text-align:center}
  .gc-okey-match.gc-okey-match .gc-okey-player.gc-okey-seat-1 .avatar,.gc-okey-match.gc-okey-match .gc-okey-player.gc-okey-seat-3 .avatar{width:37px;height:42px;border-radius:5px}
  .gc-okey-match.gc-okey-match .gc-okey-back-rack{max-width:64px;justify-content:center;overflow:hidden}
  .gc-okey-match.gc-okey-match .gc-okey-discard-history{position:absolute;inset:27% 18% 29%;z-index:2;display:grid;grid-template-rows:repeat(4,minmax(0,1fr));align-content:center;gap:4px;pointer-events:none}
  .gc-okey-match.gc-okey-match .gc-okey-discard-pile{display:flex;align-items:center;gap:2px;min-height:0;overflow:hidden;padding:2px;border-bottom:1px solid #85ddff24}
  .gc-okey-match.gc-okey-match .gc-okey-history-tile{display:grid;flex:0 0 19px;height:27px;place-items:center;border:1px solid #d9e9fa;border-bottom:3px solid #8ba1b6;border-radius:3px;background:linear-gradient(110deg,#fff,#e1ebf5);box-shadow:0 2px 4px #0008;color:var(--tile-ink);font-size:.67rem;font-weight:900;transform:rotate(var(--tile-tilt,0deg))}
  .gc-okey-match.gc-okey-match .gc-okey-center{top:51%;background:transparent;border:0;box-shadow:none;backdrop-filter:none}
  .gc-okey-match.gc-okey-match .gc-okey-seat-1{top:40%;left:1%}.gc-okey-match.gc-okey-match .gc-okey-seat-3{top:40%;right:1%}
}
@media (orientation:portrait) and (max-width:599px){
  .gc-okey-match.gc-okey-match{align-content:space-between;grid-template-rows:minmax(68px,10dvh) 42px 24px clamp(160px,34dvh,270px) 18px clamp(100px,18dvh,132px) minmax(44px,auto) 16px}
  .gc-okey101-match.gc-okey101-match{grid-template-rows:minmax(68px,10dvh) 42px 24px clamp(160px,34dvh,270px) 18px clamp(116px,21dvh,150px) minmax(44px,auto) 16px}
}
@media (orientation:portrait) and (max-width:599px){.gc-okey-match.gc-okey-match .gc-okey-tile:disabled{opacity:1;filter:none;cursor:default}}
.gc-okey-match.gc-okey-match>.gc-3d-stage{display:none!important}
@media (orientation:portrait) and (max-width:599px){
  .gc-okey-match.gc-okey-match .gc-okey-hand-head{padding:0 4px;border:0;border-radius:0;background:transparent;color:#f5fbff;text-shadow:0 1px 4px #00142b}
  .gc-okey-match.gc-okey-match .gc-okey-hand-head span{color:#bdeaff}
  .gc-okey-match.gc-okey-match .gc-okey101-board{background:#061b3270;box-shadow:inset 0 1px #ffffff0c,0 0 22px #38bbff25}
  .gc-okey-match.gc-okey-match .gc-okey-brand-medallion{opacity:.26}
}
@media (orientation:portrait) and (max-width:599px){
  .gc-okey-match.gc-okey-match .gc-okey-player-copy strong{color:#fff!important}
  .gc-okey-match.gc-okey-match .gc-okey-player-copy small{color:#bdeaff!important}
  .gc-okey-match.gc-okey-match .gc-okey101-board{background:transparent;box-shadow:none}
  .gc-okey-match.gc-okey-match .gc-okey-brand-medallion img{filter:brightness(1.5) drop-shadow(0 0 14px #ee4b76)}
}
@media (orientation:portrait) and (max-width:599px){
  .gc-okey-match.gc-okey-match .gc-okey-brand-medallion{width:104px;height:96px;opacity:.3}
  .gc-okey-match.gc-okey-match .gc-okey-brand-medallion img{width:92px;height:92px;mix-blend-mode:screen;filter:brightness(1.45) drop-shadow(0 0 16px #ee4b76)}
}
@media (orientation:portrait) and (max-width:599px){
  .gc-okey101-match.gc-okey101-match .gc-okey-brand-medallion{position:absolute;top:21%;left:50%;z-index:6;display:flex;align-items:center;justify-content:center;gap:5px;width:104px;height:34px;padding:3px 7px;border:1px solid #6ed7ff;border-radius:99px;background:linear-gradient(100deg,#071b34ee,#174a73ee);box-shadow:0 0 14px #3cc6ff42,inset 0 1px #ffffff4d;opacity:.92;transform:translate(-50%,-50%)}
  .gc-okey101-match.gc-okey101-match .gc-okey-brand-medallion img{width:25px;height:25px;max-height:none;mix-blend-mode:normal;filter:drop-shadow(0 0 5px #f34877)}
  .gc-okey101-match.gc-okey101-match .gc-okey-brand-medallion span{display:block;color:#fff;font:900 .49rem/1 system-ui,sans-serif;letter-spacing:.08em}
}

.gc-preview-maze .gc-preview-art{background-image:url('/assets/games/solo/pingora-moon-gate-background.png');background-size:cover;background-position:center 52%}.gc-preview-maze .gc-preview-art::before,.gc-preview-maze .gc-preview-art::after{content:none}

.gc-werewolf-role{display:grid;gap:6px;justify-items:center;margin:12px 0;padding:18px;border:1px solid #5b496f;border-radius:18px;color:#fff;background:radial-gradient(circle at 50% 0,#7652a2,#211b2b 75%);text-align:center}.gc-werewolf-role small{color:#ddc8ff;font-size:10px;letter-spacing:.14em}.gc-werewolf-role strong{font-size:24px}.gc-werewolf-role span,.gc-werewolf-hint,.gc-werewolf-result{color:var(--muted);font-size:12px}.gc-werewolf-roster{display:grid;gap:8px;margin:12px 0;padding:0;list-style:none}.gc-werewolf-player{display:flex;align-items:center;gap:9px;min-width:0;padding:10px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.gc-werewolf-player.is-you{border-color:#c59bea;background:#fbf7ff}.gc-werewolf-player.is-out{opacity:.68}.gc-werewolf-player>span:not(.avatar){flex:1;min-width:0;display:grid;gap:3px}.gc-werewolf-player small{color:var(--muted);font-size:10px}.gc-werewolf-player .btn{min-height:36px;padding:7px 10px;font-size:11px}
.gc-kafa-match{overflow:hidden;background:radial-gradient(ellipse at 50% 40%,#153b37,#081e20 75%);color:#f5edda}.gc-kafa-match .gc-match-header h2{color:#f7d58d}.gc-kafa-roster{display:grid;grid-template-columns:1fr 1fr;gap:8px;list-style:none;margin:10px 0;padding:0}.gc-kafa-player{display:flex;align-items:center;gap:6px;min-width:0;padding:8px;border:1px solid #cda75b66;border-radius:14px;background:#111d20}.gc-kafa-player-name{display:grid;min-width:0;flex:1}.gc-kafa-player-name strong,.gc-kafa-player-name small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gc-kafa-player-name strong{font-size:11px}.gc-kafa-player-name small{color:#d0c4a6;font-size:9px}.gc-kafa-player>b{font-size:20px;color:#f7ca72}.gc-kafa-portrait,.gc-kafa-preview-face{flex:0 0 38px;height:38px;border:1px solid #dfbd75;border-radius:50%;background-image:url('/assets/games/kafa-topu/player-portraits-atlas.png');background-size:200% 200%;background-position:0 0}.gc-kafa-portrait.portrait-1{background-position:100% 100%}.gc-kafa-pitch{position:relative;display:grid;place-items:center;min-height:215px;overflow:hidden;border:8px solid #80532e;border-radius:19px;background:repeating-linear-gradient(90deg,transparent 0 24%,#ffffff0b 24% 25%),linear-gradient(0deg,#1b7549,#278f57 50%,#17613f);box-shadow:inset 0 0 0 2px #d9ba71,inset 0 0 38px #061b19}.gc-kafa-pitch:before{position:absolute;inset:12px;border:1px solid #ffffff73;border-radius:5px;content:''}.gc-kafa-pitch:after{position:absolute;top:12px;bottom:12px;left:50%;border-left:1px solid #ffffff73;content:''}.gc-kafa-goal{position:absolute;z-index:1;top:10px;left:50%;transform:translateX(-50%);font-size:39px;filter:drop-shadow(0 3px 2px #193326)}.gc-kafa-keeper{position:absolute;top:68px;left:50%;font-size:40px;transform:translateX(-50%);animation:kafa-keeper-bob 1.1s ease-in-out infinite alternate}.gc-kafa-ball{position:absolute;bottom:35px;left:50%;font-size:36px;transform:translateX(-50%);filter:drop-shadow(0 4px 4px #173323)}.gc-kafa-brand{position:absolute;right:13px;bottom:10px;color:#fff9;font-size:11px;font-weight:900;letter-spacing:3px}.gc-kafa-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:12px 0}.gc-kafa-actions .btn{min-height:39px;padding:5px;font-size:11px}.gc-kafa-help{display:block;color:var(--muted);font-size:10px;text-align:center}.gc-kafa-preview-art{display:flex;justify-content:space-around;align-items:center;min-height:125px;margin-bottom:14px;border:1px solid #cda75b66;border-radius:16px;background:linear-gradient(135deg,#153b37,#091f20)}.gc-kafa-preview-face{flex-basis:64px;height:64px;background-size:200% 200%;box-shadow:0 0 18px #d9b86d55}.gc-kafa-preview-face.face-two{background-position:100% 100%}.gc-kafa-preview-ball{font-size:40px;filter:drop-shadow(0 5px 4px #0008);animation:kafa-ball-pulse 1s ease-in-out infinite alternate}.gc-preview-kafa-topu .gc-preview-art{background-image:linear-gradient(145deg,#0d322f99,#111b20aa),url('/assets/games/kafa-topu/player-portraits-atlas.png');background-size:cover,100% 100%;background-position:center,100% 0}.gc-preview-kafa-topu .gc-preview-art:after{content:'⚽';position:absolute;left:42%;bottom:13%;font-size:35px;filter:drop-shadow(0 4px 2px #000)}.gc-preview-kafa-topu.is-concept .gc-preview-state{font-size:0}.gc-preview-kafa-topu.is-concept .gc-preview-state:after{content:'CANLI MAÇ';font-size:10px}.gc-preview-kafa-topu .gc-preview-open-label{font-size:0}.gc-preview-kafa-topu .gc-preview-open-label:after{content:'Rakip bul';font-size:12px}@keyframes kafa-keeper-bob{to{transform:translate(-50%,-7px)}}@keyframes kafa-ball-pulse{to{transform:translateY(-4px) rotate(15deg)}}@media(max-width:370px){.gc-kafa-player{padding:6px 4px;gap:4px}.gc-kafa-portrait{flex-basis:30px;height:30px}.gc-kafa-actions .btn{font-size:9px}}
