/* IJF WRL Cards (Logged) */

/* Controls (inline) */
.ijfwrl-controls{
  display:flex;
  flex-wrap:wrap;
  gap:12px 16px;
  align-items:flex-end;
  justify-content:space-between;
  margin:0 0 14px 0;
}
.ijfwrl-filters-inline{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-items:flex-end;
}
.ijfwrl-label{
  display:flex;
  flex-direction:column;
  gap:6px;
  font-weight:800;
  color:#1f2a44;
  font-size:14px;
}
.ijfwrl-filter,
.ijfwrl-search{
  padding:10px 12px;
  border-radius:10px;
  border:1px solid #d6dbe7;
  background:#fff;
  min-width:160px;
}
.ijfwrl-searchwrap{ flex: 1 1 280px; }
.ijfwrl-search{ width:100%; min-width:220px; }

/* Table */
.ijfwrl-table-wrap{
  position:relative;
  border:1px solid #e6eaf4;
  border-radius:18px;
  overflow:hidden;
  background:#fff;
}
.ijfwrl-table{
  width:100%;
  border-collapse:collapse;
}
.ijfwrl-table th{
  text-align:left;
  font-weight:900;
  padding:16px;
  background:#fbfcff;
  border-bottom:1px solid #eef1f8;
  color:#24324a;
}
.ijfwrl-table td{
  padding:16px;
  border-bottom:1px solid #f0f2f8;
  vertical-align:middle;
}
.ijfwrl-th-rank{ width:110px; }
.ijfwrl-th-category{ width:240px; }

.ijfwrl-rank{
  font-size:28px;
  font-weight:950;
  color:#d61f2c;
  line-height:1;
}

.ijfwrl-competitor{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:240px;
}
.ijfwrl-avatar{
  width:52px;
  height:52px;
  border-radius:50%;
  object-fit:cover;
  background:#f2f4f8;
  flex:0 0 auto;
}
.ijfwrl-name{
  font-weight:950;
  font-size:18px;
  color:#111827;
  line-height:1.15;
}
.ijfwrl-country{
  display:flex;
  align-items:center;
  gap:8px;
  margin-top:6px;
  color:#5c6b84;
  font-weight:700;
  font-size:13px;
}
.ijfwrl-flag{
  width:24px;
  height:16px;
  border-radius:4px;
  object-fit:cover;
}
.ijfwrl-cat{
  font-weight:900;
  color:#25324a;
}
.ijfwrl-weight{
  margin-top:6px;
  font-weight:950;
  font-size:20px;
  color:#111827;
}

/* Loading overlay */
.ijfwrl-loading{
  display:none;
  position:absolute;
  inset:0;
  background:rgba(255,255,255,0.72);
  backdrop-filter: blur(2px);
  align-items:center;
  justify-content:center;
  font-weight:900;
  color:#24324a;
  z-index:3;
}
.ijfwrl-table-block.is-loading .ijfwrl-loading{ display:flex; }
.ijfwrl-table-block.is-loading .ijfwrl-table{ opacity:0.35; transition:opacity 120ms ease; }

.ijfwrl-note{
  padding:18px;
  color:#5c6b84;
  font-weight:700;
}

/* Mini (sidebar list) */
.ijfwrl-mini{
  background:#fff;
}
.ijfwrl-mini-item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:12px 0;
  border-bottom:1px solid #e9edf5;
}
.ijfwrl-mini-item:last-child{ border-bottom:none; }
.ijfwrl-mini-left{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
}
.ijfwrl-mini-avatar{
  width:40px;
  height:40px;
  border-radius:50%;
  object-fit:cover;
  background:#f2f4f8;
  flex:0 0 auto;
}
.ijfwrl-mini-name{
  font-weight:900;
  font-size:15px;
  color:#111827;
  white-space:normal;
}
.ijfwrl-mini-rank{
  font-weight:950;
  font-size:16px;
  color:#d61f2c;
  flex:0 0 auto;
}

/* Responsive */
@media (max-width: 720px){
  .ijfwrl-th-category{ width:auto; }
  .ijfwrl-filter{ min-width:140px; }
  .ijfwrl-rank{ font-size:24px; }
  .ijfwrl-weight{ font-size:18px; }
}
