.holdem-wrap{
  max-width:520px;
}

.entry-panel{
  margin-top:40px;
  padding:34px 30px;
  background:linear-gradient(180deg, rgba(63,242,255,0.06), rgba(255,255,255,0.02));
  border:1px solid rgba(63,242,255,0.18);
  border-radius:8px;
  text-align:left;
}

.field-group{
  margin-bottom:28px;
}
.field-label{
  display:block;
  font-family:'Orbitron',sans-serif;
  font-size:11px;
  letter-spacing:.25em;
  color:var(--cyan-dim);
  margin-bottom:10px;
}

.nickname-input{
  width:100%;
  padding:14px 16px;
  background:rgba(63,242,255,0.06);
  border:1px solid rgba(63,242,255,0.35);
  border-radius:2px;
  color:#fff;
  font-family:'Noto Sans KR',sans-serif;
  font-size:15px;
  outline:none;
  transition:border-color .25s, box-shadow .25s;
}
.nickname-input:focus{
  border-color:var(--cyan);
  box-shadow:0 0 18px rgba(63,242,255,0.4);
}

.meso-section{
  text-align:center;
  margin-bottom:8px;
}
.meso-section .field-label{
  text-align:center;
}

.meso-amount{
  font-family:'Orbitron',sans-serif;
  font-weight:700;
  font-size:clamp(20px,5.5vw,28px);
  color:var(--cyan);
  text-shadow:0 0 16px rgba(63,242,255,0.6);
  margin-bottom:22px;
  letter-spacing:.02em;
  white-space:nowrap;
  overflow-x:auto;
}

.meso-buttons{
  display:flex;
  gap:10px;
  justify-content:center;
  flex-wrap:wrap;
}
.meso-btn{
  flex:1 1 auto;
  min-width:110px;
  padding:13px 14px;
  font-size:12px;
}

.enter-btn{
  display:block;
  width:100%;
  margin-top:30px;
  padding:16px;
}

.create-row{
  margin-top:22px;
}

.divider{
  margin:22px 0;
  text-align:center;
  font-family:'Orbitron',sans-serif;
  font-size:11px;
  letter-spacing:.3em;
  color:var(--cyan-dim);
}

.join-form{
  display:flex;
  gap:10px;
  justify-content:center;
  flex-wrap:wrap;
}
.join-input{
  width:160px;
  padding:14px 16px;
  background:rgba(63,242,255,0.06);
  border:1px solid rgba(63,242,255,0.35);
  border-radius:2px;
  color:#fff;
  font-family:'Orbitron',sans-serif;
  font-size:16px;
  letter-spacing:.3em;
  text-align:center;
  text-transform:uppercase;
  outline:none;
  transition:border-color .25s, box-shadow .25s;
}
.join-input:focus{
  border-color:var(--cyan);
  box-shadow:0 0 18px rgba(63,242,255,0.4);
}

.back-btn{
  display:block;
  width:100%;
  margin-top:22px;
}

/* ---------- Table ---------- */
.table-panel{
  margin-top:36px;
  text-align:center;
}

.room-info{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  flex-wrap:wrap;
  margin-bottom:18px;
}
.room-info-label{
  font-family:'Orbitron',sans-serif;
  font-size:11px;
  letter-spacing:.2em;
  color:var(--cyan-dim);
}
.room-code{
  font-family:'Orbitron',sans-serif;
  font-size:22px;
  font-weight:700;
  letter-spacing:.3em;
  color:var(--cyan);
  text-shadow:0 0 12px rgba(63,242,255,0.6);
}
.btn-small{
  padding:8px 16px;
  font-size:11px;
}

.stage-label{
  font-family:'Orbitron',sans-serif;
  font-size:13px;
  letter-spacing:.2em;
  color:var(--cyan);
  text-shadow:0 0 10px rgba(63,242,255,0.5);
  margin-bottom:16px;
}

.pot-row{
  display:flex;
  justify-content:center;
  gap:40px;
  margin-bottom:20px;
}
.pot-item{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:6px;
}
.pot-value{
  font-family:'Orbitron',sans-serif;
  font-size:18px;
  font-weight:700;
  color:var(--warn);
  text-shadow:0 0 10px rgba(255,210,63,0.5);
}

.community-row{
  display:flex;
  gap:8px;
  justify-content:center;
  flex-wrap:wrap;
  margin-bottom:20px;
  min-height:76px;
}

.card{
  width:50px;
  height:70px;
  border-radius:6px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  font-family:'Orbitron',sans-serif;
  font-weight:700;
  background:linear-gradient(180deg, #ffffff, #e6f1f6);
  box-shadow:0 2px 8px rgba(0,0,0,0.5);
  flex-shrink:0;
}
.card .card-rank{font-size:16px;line-height:1.1;}
.card .card-suit{font-size:18px;line-height:1.1;}
.card.red{color:#d81b3f;}
.card.black{color:#111820;}
.card.card-back{
  background:repeating-linear-gradient(45deg, #0b1626, #0b1626 4px, #142238 4px, #142238 8px);
  border:1px solid rgba(63,242,255,0.4);
  box-shadow:0 0 8px rgba(63,242,255,0.3);
}
.card.card-empty{
  background:transparent;
  border:1.5px dashed rgba(63,242,255,0.2);
  box-shadow:none;
}

.seats-list{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin-bottom:10px;
}

.seat-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:14px 18px;
  background:rgba(63,242,255,0.04);
  border:1px solid rgba(63,242,255,0.15);
  border-radius:6px;
  text-align:left;
  flex-wrap:wrap;
}
.seat-row.me{
  border-color:rgba(63,242,255,0.5);
  background:rgba(63,242,255,0.1);
}
.seat-row.winner{
  border-color:var(--success);
  background:rgba(77,255,160,0.1);
  box-shadow:0 0 16px rgba(77,255,160,0.25);
}
.seat-row.turn{
  border-color:var(--warn);
  box-shadow:0 0 16px rgba(255,210,63,0.35);
}
.seat-row.folded{
  opacity:.45;
}

.seat-info{
  display:flex;
  flex-direction:column;
  gap:4px;
  min-width:120px;
}
.seat-nickname{
  font-family:'Orbitron',sans-serif;
  font-size:13px;
  color:#fff;
  display:flex;
  align-items:center;
  gap:6px;
}
.seat-tag{
  font-size:9px;
  letter-spacing:.1em;
  padding:2px 6px;
  border-radius:2px;
  border:1px solid rgba(63,242,255,0.4);
  color:var(--cyan);
}
.seat-tag.host{border-color:var(--warn);color:var(--warn);}
.seat-meso{
  font-size:12px;
  color:#8fb6c9;
}
.seat-hand{
  font-size:11px;
  color:var(--cyan-dim);
}
.seat-bet{
  font-size:11px;
  color:var(--warn);
}
.seat-status{
  font-size:10px;
  letter-spacing:.1em;
  color:var(--danger);
}

.seat-cards{
  display:flex;
  gap:6px;
}
.seat-cards .card{
  width:38px;
  height:54px;
}
.seat-cards .card .card-rank{font-size:12px;}
.seat-cards .card .card-suit{font-size:14px;}

.action-row{
  margin-top:24px;
}

.action-controls{
  margin-top:24px;
  padding:20px;
  background:rgba(63,242,255,0.05);
  border:1px solid rgba(63,242,255,0.2);
  border-radius:8px;
  transition:opacity .15s ease;
}
.action-controls.busy{
  opacity:.5;
  pointer-events:none;
}
.action-controls .btn-row{
  margin-bottom:14px;
}
.action-controls .btn-row:last-child{margin-bottom:0;}

.raise-row{
  display:flex;
  gap:10px;
  justify-content:center;
  flex-wrap:wrap;
}
.raise-row .btn{
  font-size:12px;
}

.leave-btn{
  margin-top:20px;
}

/* ---------- Top-up modal ---------- */
.modal-overlay{
  position:fixed;
  inset:0;
  z-index:200;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:20px;
  background:rgba(2,4,10,0.85);
  backdrop-filter:blur(4px);
}
.modal-box{
  width:100%;
  max-width:420px;
  margin-top:0;
  max-height:90vh;
  overflow-y:auto;
}

@media (max-width:480px){
  .entry-panel{padding:26px 20px;}
  .meso-btn{min-width:96px;font-size:11px;padding:12px 10px;}
  .card{width:42px;height:60px;}
  .card .card-rank{font-size:14px;}
  .card .card-suit{font-size:15px;}
}
