
/* Public styles */
#dbp-play-screen .dbp-box { border:1px solid #e2e2e2; background:#fff; padding:16px; margin-bottom:18px; border-radius:6px; }
.dbp_card { border-collapse:collapse; margin-top:10px; }
.dbp_card th, .dbp_card td { border:1px solid #ddd; text-align:center; padding:6px; width:90px; height:90px; vertical-align:middle; }
.dbp_header th { background:#f6f6f6; font-size:16px; letter-spacing:2px; }
.dbp_cell.free { background:#f0fff4; font-weight:700; }
.dbp_cell .dbp_cell_inner { display:flex; align-items:center; justify-content:center; gap:6px; flex-direction:column; }
.dbp_cell .dbp_icon { width:42px; height:42px; object-fit:contain; }
.dbp_cell.marked { background:#e3f7e9; position:relative; }
.dbp_cell.marked::after { content:'✓'; color:#17833e; font-weight:700; position:absolute; top:4px; right:6px; }
.dbp_name { font-size:12px; }
.dbp_error{ color:#b00020; } .dbp_success{ color:#177e41; }
.dbp-draws-grid { display:grid; grid-template-columns: repeat(auto-fill, minmax(90px,1fr)); gap:10px; }
.dbp_draw_item { border:1px solid #eee; padding:8px; border-radius:6px; text-align:center; background:#fff; }
.dbp_draw_icon { width:40px; height:40px; object-fit:contain; }
.dbp_draw_label { font-size:12px; margin-top:4px; }

/* Host Projector View */
#dbp-host-view { background:#0b132b; color:#fff; padding:16px; border-radius:8px; }
.dbp-host-header { display:grid; grid-template-columns:200px 160px 1fr; gap:16px; align-items:center; margin-bottom:16px; }
.dbp-host-code .lbl { font-size:12px; color:#a9b1c1; letter-spacing:1px; }
.dbp-host-code .code { font-size:36px; font-weight:800; }
.dbp-host-qr { background:#101a3a; border-radius:8px; padding:8px; text-align:center; }
.dbp-host-qr .qr-caption { font-size:11px; color:#a9b1c1; margin-top:4px; }
.dbp-host-meta > div { margin:6px 0; }
.dbp-host-current .title, .dbp-host-history .title { font-size:14px; color:#a9b1c1; letter-spacing:1px; margin-bottom:8px; }
.dbp-host-current .icon-wrap { background:#101a3a; border-radius:8px; padding:20px; min-height:220px; display:flex; align-items:center; justify-content:center; }
.dbp-host-current .host_big { width:160px; height:160px; object-fit:contain; }
.dbp-host-current .host_label { margin-left:20px; font-size:28px; font-weight:700; }
.dbp-host-current .placeholder { color:#6f7aa3; }
.dbp-host-history .grid { display:grid; grid-template-columns: repeat(auto-fill, minmax(110px,1fr)); gap:10px; }
.dbp-host-history .h_item { background:#101a3a; border-radius:8px; padding:10px; text-align:center; }
.dbp-host-history .h_item img { width:50px; height:50px; object-fit:contain; }

.dbp-host-players .players-list {
    background: #101a3a;
    padding: 10px;
    border-radius: 8px;
    margin-top: 10px;
    color: #fff;
    font-size: 14px;
}
.dbp-host-players .players-list div {
    padding: 4px 0;
    border-bottom: 1px solid #1e2950;
}
.dbp-host-players .players-list div:last-child {
    border-bottom: none;
}

/* Layout header met claims rechts */
.header-with-claims {
  display: grid;
  grid-template-columns: 1fr 280px; /* links info, rechts klein claimsblok */
  gap: 20px;
  align-items: start;
}

/* Links: panelen in grid */
.header-with-claims .info-panels {
  display: grid;
  grid-template-columns: repeat(3, minmax(200px, 1fr));
  gap: 16px;
}

/* Rechts: small claims */
.claims-mini {
  background: rgba(255,255,255,0.06);
  border-radius: 10px;
  padding: 12px 14px;
  min-height: 120px;
}

.claims-mini-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 13px;
  letter-spacing: .02em;
  opacity: .9;
  margin-bottom: 8px;
}

.claims-mini .chip {
  display: inline-block;
  min-width: 22px;
  padding: 2px 6px;
  border-radius: 999px;
  background: #2a7c4b; /* groen */
  color: #fff;
  font-size: 12px;
  text-align: center;
}

.claims-mini-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 6px;
  max-height: 180px;
  overflow: auto;
  scrollbar-width: thin;
}

.claims-mini-list li {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  line-height: 1.25;
  color: #e7e7e7;
  opacity: .95;
}

.claims-mini-list li .dot {
  width: 8px; height: 8px; border-radius: 50%;
  background: #ffd166; /* amber */
  flex: 0 0 auto;
}
.claims-mini-list li .time {
  margin-left: auto;
  font-size: 12px;
  opacity: .75;
}

/* Responsief: onder elkaar op small screens */
@media (max-width: 980px) {
  .header-with-claims {
    grid-template-columns: 1fr;
  }
  .header-with-claims .info-panels {
    grid-template-columns: repeat(2, minmax(180px, 1fr));
  }
}
@media (max-width: 640px) {
  .header-with-claims .info-panels {
    grid-template-columns: 1fr;
  }
}

