/* public/games/poker/poker.css */
body { overflow: hidden; height: 100vh; }

.poker-layout { display: flex; height: 100vh; position: relative; z-index: 1; }

.settle-sidebar {
  width: 195px; flex-shrink: 0;
  background: rgba(5,7,8,.96);
  border-right: 1px solid rgba(195,155,90,.1);
  padding: 1.1rem .9rem;
  display: flex; flex-direction: column;
  overflow-y: auto;
}
.sidebar-empty { font-family:var(--font-serif); font-style:italic; font-size:.8rem; color:var(--text-dim); }
.sb-player { display:flex; justify-content:space-between; align-items:center; padding:.22rem 0; font-size:.78rem; border-bottom:1px solid rgba(255,255,255,.04); }
.sb-pname { font-family:var(--font-serif); color:var(--text-mid); }
.sb-pnet  { font-family:var(--font-display); font-size:.7rem; }
.sb-pnet.pos { color:var(--green-live); }
.sb-pnet.neg { color:#E05050; }

.table-main { flex:1; display:flex; flex-direction:column; min-width:0; }

.table-wrap { flex:1; display:flex; align-items:center; justify-content:center; padding:.75rem; min-height:0; }

.table-outer { position:relative; width:100%; max-width:820px; aspect-ratio:2/1; }

.table-rail {
  position:absolute; inset:0; border-radius:50%;
  background: radial-gradient(ellipse at 30% 20%, #5a3a14, #3D1F0A 60%);
  box-shadow: 0 18px 55px rgba(0,0,0,.85), 0 0 0 1.5px rgba(195,155,90,.18), inset 0 1px 3px rgba(255,255,255,.04);
}

.table-felt {
  position:absolute; inset:17px; border-radius:50%;
  background: radial-gradient(ellipse at 42% 38%, var(--felt-light) 0%, var(--felt) 38%, var(--felt-dark) 100%);
  box-shadow: inset 0 0 55px rgba(0,0,0,.45);
}

.felt-texture {
  position:absolute; inset:0; border-radius:50%; pointer-events:none;
  background-image: repeating-linear-gradient(45deg,rgba(0,0,0,.035) 0px,rgba(0,0,0,.035) 1px,transparent 1px,transparent 9px);
}

.felt-inner-ring { position:absolute; inset:9px; border-radius:50%; border:1px solid rgba(195,155,90,.12); pointer-events:none; }

.pot-display { position:absolute; top:14%; left:50%; transform:translateX(-50%); text-align:center; }
.pot-label   { display:block; font-family:var(--font-display); font-size:7.5px; letter-spacing:.3em; color:rgba(195,155,90,.45); margin-bottom:2px; }
.pot-val     { font-family:var(--font-display); font-size:1.1rem; color:var(--gold); text-shadow:0 0 18px rgba(195,155,90,.35); }

.community-cards { position:absolute; top:50%; left:50%; transform:translate(-50%,-42%); display:flex; gap:7px; }
.cc-slot { width:48px; height:70px; border-radius:5px; border:1px dashed rgba(195,155,90,.14); background:rgba(0,0,0,.18); }
.cc-slot .card { width:48px; height:70px; }
.cc-slot .card .c-rank { font-size:.88rem; }
.cc-slot .card .c-suit { font-size:1.3rem; }

.phase-label { position:absolute; bottom:14%; left:50%; transform:translateX(-50%); font-family:var(--font-display); font-size:8px; letter-spacing:.3em; color:rgba(195,155,90,.35); }

.seats-ring { position:absolute; inset:0; }

.seat { position:absolute; transform:translate(-50%,-50%); }
#seat0 { left:50%;  top:-6%; }
#seat1 { left:81%;  top:9%;  }
#seat2 { left:100%; top:50%; }
#seat3 { left:81%;  top:91%; }
#seat4 { left:50%;  top:106%;}
#seat5 { left:19%;  top:91%; }
#seat6 { left:0%;   top:50%; }
#seat7 { left:19%;  top:9%;  }

.seat-inner { text-align:center; width:86px; }

.sit-btn {
  background:rgba(195,155,90,.07); border:1px dashed rgba(195,155,90,.28);
  color:rgba(195,155,90,.45); font-family:var(--font-display); font-size:8.5px; letter-spacing:.1em;
  padding:.38rem .55rem; cursor:pointer; transition:all .2s; white-space:nowrap;
}
.sit-btn:hover { background:rgba(195,155,90,.15); border-color:var(--gold); color:var(--gold); }

.seat-av {
  border-radius:50%; width:44px; height:44px; object-fit:cover;
  border:2px solid rgba(195,155,90,.28); display:block; margin:0 auto .28rem;
  background:#1a3a22;
}
.seat-name   { font-family:var(--font-serif); font-size:.78rem; color:var(--text); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.seat-chips  { font-family:var(--font-display); font-size:.62rem; color:var(--gold); margin-top:.1rem; }
.seat-cards  { display:flex; gap:3px; justify-content:center; margin-top:.28rem; }
.seat-cards .card { width:26px; height:38px; }
.seat-cards .card .c-rank { font-size:.58rem; }
.seat-cards .card .c-suit { font-size:.85rem; }
.seat-cards .card .c-corner, .seat-cards .card .c-corner-b { display:none; }

.seat-inner.is-turn .seat-av { border-color:var(--gold); box-shadow:0 0 12px rgba(195,155,90,.5); }
.seat-inner.is-me .seat-av   { border-color:var(--green-live); }
.seat-inner.folded  { opacity:.35; }

.turn-ring { position:absolute; top:-5px; left:50%; transform:translateX(-50%); width:54px; height:54px; border-radius:50%; border:2px solid var(--gold); box-shadow:0 0 12px rgba(195,155,90,.5); animation:turnPulse 1s ease infinite; pointer-events:none; }
@keyframes turnPulse { 0%,100%{opacity:1;transform:translateX(-50%) scale(1);} 50%{opacity:.45;transform:translateX(-50%) scale(1.06);} }

/* Status bar */
.status-bar {
  flex-shrink:0; background:rgba(5,7,8,.95); border-top:1px solid rgba(195,155,90,.1);
  padding:.65rem 1.25rem; display:flex; align-items:center; justify-content:center;
  gap:1rem;
}
.status-text { font-family:var(--font-serif); font-style:italic; color:var(--text-mid); font-size:.95rem; }
.status-text.gold { color:var(--gold); }

.action-bar { flex-shrink:0; background:rgba(5,7,8,.95); border-top:1px solid rgba(195,155,90,.1); padding:.65rem 1.25rem; }
.timer-track { height:2px; background:rgba(195,155,90,.1); margin-bottom:.65rem; overflow:hidden; }
.timer-fill  { height:100%; background:linear-gradient(90deg,var(--gold),var(--gold-light)); width:100%; transition:width 1s linear; }
.action-btns { display:flex; gap:.5rem; align-items:center; flex-wrap:wrap; justify-content:center; }
.action-btns .btn { font-size:.7rem; padding:.58rem 1.1rem; }
.raise-input { background:rgba(255,255,255,.05); border:1px solid rgba(195,155,90,.2); color:var(--text); font-family:var(--font-display); font-size:.7rem; padding:.56rem .5rem; width:88px; outline:none; text-align:center; }
.raise-input:focus { border-color:var(--gold); }

.chat-bar { flex-shrink:0; height:80px; display:flex; flex-direction:column; border-top:1px solid rgba(195,155,90,.06); }
.chat-msgs { flex:1; overflow-y:auto; padding:.35rem 1.25rem; font-family:var(--font-serif); font-size:.78rem; color:var(--text-dim); }
.chat-msgs div { padding:.08rem 0; }
.chat-in   { background:transparent; border:none; border-top:1px solid rgba(195,155,90,.06); color:var(--text-dim); font-family:var(--font-serif); font-size:.78rem; padding:.38rem 1.25rem; outline:none; }
.chat-in::placeholder { color:rgba(237,224,196,.18); }
