body{margin:0;}

:root{
  --bg:#0f1117;
  --card:#141826;
  --muted:#9aa6b2;
  --text:#e9eef2;
  --accent:#38bdf8;
  --accent2:#60a5fa;
  --border:#1f2636;
  --border-strong:#2b3246;
}

/* =========================
   NAVBAR
========================= */

.nav{
  position:absolute;
  left:0;
  right:0;
  width:100%;
  top:0;
  z-index:9999999;
  backdrop-filter:saturate(120%) blur(8px);
  background:rgba(13,16,24,.7);
  border-bottom:4px solid var(--border-strong);
  box-shadow:0 10px 30px rgba(0,0,0,.35);
}

.nav-inner{
  max-width:none;
  width:100%;
  margin:0;
  padding:6px 16px;
  display:flex;
  align-items:center;
  gap:14px;
  position:relative;
}

.spacer{flex:1}

/* =========================
   BALANCE
========================= */

.balance{
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  min-width:187px;
  width:187px;
  text-align:center;
  font-size:16px;
  font-weight:900;
  padding:6px 0;
  border-radius:999px;
  border:1px solid var(--border);
  background:linear-gradient(180deg,#17223b,#101628);
  box-shadow:0 6px 24px rgba(0,0,0,.25);
  user-select:none;
  cursor:pointer;
}

.balance small{
  display:block;
  font-size:12px;
  color:#9fb0c5;
  font-weight:700;
}

/* =========================
   RIGHT SIDE
========================= */

.nav-right{
  display:flex;
  align-items:center;
  gap:10px;
  font-size:13px;
  color:var(--muted);
}

.clickcopy{
  cursor:pointer;
  padding:6px 0;
  border-radius:8px;
  border:1px solid var(--border);
  background:rgba(255,255,255,.03);
}

.clickcopy:hover{
  background:rgba(255,255,255,.06);
}

.id-container{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:4px;
  max-width:360px;
  font-size:12px;
}

.id-container .email{
  align-self:center;
  font-weight:800;
}

.id-container .address{
  font-family:ui-monospace,monospace;
  font-size:12px;
  word-break:break-all;
  opacity:.9;
}

/* =========================
   LOGOUT BUTTON
========================= */

.logout{
  background:#ff4d4d;
  color:#fff;
  border:none;
  padding:7px 14px;
  border-radius:999px;
  font-weight:700;
  cursor:pointer;
  box-shadow:0 0 10px rgba(255,0,0,.35);
}

.logout:hover{
  background:#ff5f5f;
}

/* =========================
   HOME BUTTON
========================= */

.homeBtn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:6px 0;
  margin:0 10px;
  border:0;
  background:transparent;
  text-decoration:none;
}

.homeIcon{
  width:110px;
  height:79px;
  display:block;
}

/* =========================
   TABLE BUTTON
========================= */

.tablesBtn{
  position:relative;
  overflow:visible;
  width:48px;
  height:48px;
  border-radius:10px;
  border:1px solid rgba(120,160,255,.25);
  background:rgba(10,14,24,.55) url("/assets/PokerTable.png") no-repeat center / contain;
  cursor:pointer;
}

.tablesBtn:hover{
  filter:brightness(1.15);
}

/* =========================
   TABLES BUBBLE
========================= */

.tablesBubble{
  position:fixed;
  top:72px;
  left:16px;
  transform:none;
  z-index:9999999;
}

/* make hidden actually hide */
.tablesBubble[hidden]{
  display:none !important;
}

.tablesBubbleInner{
  position:relative;
  width:260px;
  padding:12px;
  border-radius:14px;
  border:1px solid rgba(120,160,255,.22);
  background:rgba(10,14,24,.92);
  box-shadow:0 18px 40px rgba(0,0,0,.55);
  backdrop-filter:blur(10px);
}

/* pointer */
.tablesBubbleInner:before{
  content:"";
  position:absolute;
  top:-7px;
  left:50%;
  width:14px;
  height:14px;
  background:rgba(10,14,24,.92);
  transform:translateX(-50%) rotate(45deg);
  border-left:1px solid rgba(120,160,255,.22);
  border-top:1px solid rgba(120,160,255,.22);
}

.tablesBubbleInner{
  color:#e9eef2;
}

.tablesBubbleTitle{
  font-weight:900;
  margin-bottom:10px;
}

.tablesList{
  display:grid;
  gap:10px;
  overflow:visible;
}

.tablesList.oneCol{
  grid-template-columns:1fr;
}

.tablesList.twoCols{
  grid-template-columns:repeat(2, minmax(0, 1fr));
  column-gap:12px;
  row-gap:10px;
}

.tablesEmpty{
  opacity:.75;
  font-size:.95rem;
}

.tableRow{
  display:flex;
  flex-direction:column;
  gap:8px;
  cursor:pointer;
}

.tableStake{
  padding-left:2px;
  font-size:1rem;
  font-weight:900;
  line-height:1.1;
  color:#f7fbff;
  text-shadow:0 1px 4px rgba(0,0,0,.45);
}

.tablePreview{
  position:relative;
  min-height:110px;
  background-position:center;
  background-repeat:no-repeat;
  background-size:contain;
  border:none;
  box-shadow:none;
}

.tablePreview{
  position:relative;
  min-height:110px;
  background-position:center;
  background-repeat:no-repeat;
  background-size:contain;
  border:none;
  box-shadow:none;
}

.tablePreviewInner{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  padding:12px 14px;
  background:linear-gradient(180deg, rgba(4,8,16,.38) 0%, rgba(4,8,16,.14) 35%, rgba(4,8,16,.58) 100%);
}

.tablePreviewCards{
  display:flex;
  gap:8px;
}

.tablePreviewCard{
  width:28px;
  height:40px;
  border-radius:7px;
  border:1px solid rgba(255,255,255,.30);
  box-shadow:0 4px 10px rgba(0,0,0,.35);
}

.tablePreviewCardBack{
  background:linear-gradient(180deg, rgba(17,28,53,.96), rgba(10,16,31,.96));
}

.tableId{
  font-size:.96rem;
  font-weight:900;
  color:#ffffff;
  text-shadow:0 1px 4px rgba(0,0,0,.55);
}

.tableMeta{
  font-size:.84rem;
  font-weight:800;
  color:rgba(235,242,255,.92);
  text-shadow:0 1px 4px rgba(0,0,0,.45);
}

.tablesPager{
  margin-top:12px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
}

.tablesPagerBtn{
  min-width:36px;
  height:36px;
  border-radius:10px;
  border:1px solid rgba(120,160,255,.22);
  background:rgba(255,255,255,.05);
  color:#fff;
  font-size:18px;
  font-weight:900;
  cursor:pointer;
}

.tablesPagerBtn:hover:not(:disabled){
  background:rgba(255,255,255,.10);
}

.tablesPagerBtn:disabled{
  opacity:.35;
  cursor:default;
}

.tablesPagerInfo{
  min-width:52px;
  text-align:center;
  font-size:.9rem;
  font-weight:800;
  color:#e9eef2;
}

/* ======================================
   Stake-colored previews (My Tables)
====================================== */

.tablePreview{
  position:relative;
  min-height:110px;
  background-position:center;
  background-repeat:no-repeat;
  background-size:contain;
  border:none;
  box-shadow:none;
}

.tablePreview{
  position:relative;
  min-height:110px;
  background-position:center;
  background-repeat:no-repeat;
  background-size:contain;
  border:none;
  box-shadow:none;
}

.tablePreview{
  position:relative;
  min-height:110px;
  background-position:center;
  background-repeat:no-repeat;
  background-size:contain;
  border:none;
  box-shadow:none;
}


/* centered text inside table preview */

.tableCenterText{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  text-align:center;
  font-weight:700;
  font-size:14px;
  color:white;
  text-shadow:0 2px 6px rgba(0,0,0,.7);
  pointer-events:none;
}


.tableRow{
  padding:4px 0;
  cursor:pointer;
}

.tablesList{
  gap:10px;
}


/* restore mini table art after tablePreview simplification */
.tableRow.tier100 .tablePreview{
  background-image:url("/assets/PokerTable.png");
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
}

.tableRow.tier250 .tablePreview{
  background-image:url("/assets/PokerTable250.png");
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
}

.tableRow.tier500 .tablePreview{
  background-image:url("/assets/PokerTable500.png");
  background-repeat:no-repeat;
  background-position:center;
  background-size:contain;
}

.fsExitBtn{
  display:none;
  align-items:center;
  justify-content:center;
  height:36px;
  padding:0 12px;
  margin-right:10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(18,28,43,.92);
  color:#dbe7ff;
  font-size:13px;
  font-weight:700;
  cursor:pointer;
  box-shadow:0 6px 20px rgba(0,0,0,.28);
}

.fsExitBtn:hover{
  background:rgba(30,45,68,.96);
}

.fsExitBtn:active{
  transform:translateY(1px);
}

.sendNavBtn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  height:36px;
  padding:0 12px;
  margin-right:10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(18,28,43,.92);
  color:#dbe7ff;
  font-size:13px;
  font-weight:700;
  cursor:pointer;
  box-shadow:0 6px 20px rgba(0,0,0,.28);
}

.sendNavBtn:hover{
  background:rgba(30,45,68,.96);
}

.sendNavBtn:active{
  transform:translateY(1px);
}


/* navbar send bubble */
#sendBubble{
  width: 260px;
}

#sendBubble .tablesBubbleInner{
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.sendInput{
  width: 100%;
  box-sizing: border-box;
  border: 1px solid rgba(255,255,255,.14);
  background: rgba(255,255,255,.06);
  color: #fff;
  border-radius: 10px;
  padding: 10px 12px;
  font: inherit;
  outline: none;
}

.sendInput::placeholder{
  color: rgba(255,255,255,.55);
}

.sendInput:focus{
  border-color: rgba(255,255,255,.28);
  background: rgba(255,255,255,.09);
}

.receiveQrWrap{
  display:flex;
  justify-content:center;
  align-items:center;
  padding:4px 0 2px;
}

.receiveQrImg{
  width:200px;
  height:200px;
  display:block;
  border-radius:12px;
  background:#fff;
  padding:8px;
  box-sizing:border-box;
}

.receiveAddr{
  width:100%;
  box-sizing:border-box;
  padding:10px 12px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.06);
  color:#fff;
  font-family:ui-monospace,monospace;
  font-size:12px;
  word-break:break-all;
}
/* =========================
   Inventory bubble avatars
   ========================= */

.inventoryAvatarGrid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:10px;
  margin-top:8px;
}

.inventoryAvatarCard{
  position:relative;
  border:1px solid rgba(255,255,255,.18);
  border-radius:10px;
  background:rgba(255,255,255,.05);
  padding:8px;
  cursor:pointer;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  transition:all .15s ease;
}

.inventoryAvatarCard:hover{
  background:rgba(255,255,255,.08);
  border-color:rgba(255,255,255,.35);
}

.inventoryAvatarImg{
  width:70px;
  height:70px;
  object-fit:contain;
  display:block;
}

.inventoryAvatarName{
  font-size:11px;
  margin-top:4px;
  text-align:center;
  color:#f2f6ff;
  opacity:.95;
}

.inventoryAvatarPrice{
  margin-top:2px;
  font-size:11px;
  text-align:center;
  color:#cfe3ff;
  font-weight:700;
}

.inventoryAvatarBadge{
  position:absolute;
  top:4px;
  right:6px;
  font-size:10px;
  color:#ffd66b;
}

.inventoryEmpty{
  opacity:.7;
  font-size:13px;
}

.inventoryUnequipBtn{
  margin-top:6px;
  padding:4px 8px;
  font-size:11px;
  border-radius:6px;
  border:1px solid rgba(255,255,255,.25);
  background:rgba(255,255,255,.08);
  color:#fff;
  cursor:pointer;
}

.inventoryUnequipBtn:hover{
  background:rgba(255,255,255,.16);
}
