.wowrb-card{border:1px solid #ddd;padding:16px;border-radius:14px;margin:14px 0;background:#fff}
.wowrb-grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.wowrb-btn{padding:10px 14px;border:1px solid #ccc;border-radius:10px;background:#fff;cursor:pointer}
.wowrb-btn:hover{background:#f7f7f7}
.wowrb-btn-secondary{background:#f8f8ff}
.wowrb-btn-danger{background:#fff5f5;border-color:#f0b3b3}
.wowrb-pill{display:inline-block;padding:2px 10px;border-radius:999px;margin-left:8px;font-size:12px}
.wowrb-pill-info{background:#f3f6ff}
.wowrb-alert{padding:10px;border-radius:10px;margin:10px 0;border:1px solid transparent}
.wowrb-alert-ok{background:#ecffef;border-color:#a7f0b0}
.wowrb-alert-warn{background:#fff2f2;border-color:#ffb3b3}
.wowrb-alert-info{background:#f1f5ff;border-color:#b7c7ff}
.wowrb-msg{margin-top:10px}
.wowrb-raid-list{display:flex;flex-direction:column;gap:10px}
.wowrb-raid-row{display:flex;gap:14px;align-items:center;justify-content:space-between;border:1px solid #eee;border-radius:14px;padding:12px}
.wowrb-raid-title{font-weight:700}
.wowrb-raid-meta{opacity:.8;font-size:13px;margin-top:4px}
.wowrb-raid-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.wowrb-modal{position:fixed;inset:0;display:none;z-index:9999}
.wowrb-modal.is-open{display:block}
.wowrb-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.45)}
.wowrb-modal-panel{position:relative;max-width:620px;margin:6vh auto;background:#fff;border-radius:18px;padding:16px 16px 18px;box-shadow:0 10px 40px rgba(0,0,0,.2)}
.wowrb-modal-close{position:absolute;right:10px;top:8px;border:0;background:transparent;font-size:26px;cursor:pointer}
#wowrb-modal-body label{display:block;margin-top:10px;font-weight:600}
#wowrb-modal-body input, #wowrb-modal-body select, #wowrb-modal-body textarea{width:100%;max-width:520px;padding:9px;border-radius:10px;border:1px solid #ddd;margin-top:6px}
.wowrb-inline{display:flex;gap:16px;flex-wrap:wrap;margin-top:10px}
.wowrb-inline label{font-weight:500;margin-top:0}
.wowrb-meta{border:1px dashed #e5e5e5;border-radius:12px;padding:10px;margin-bottom:12px}
.wowrb-note{opacity:.85;margin-top:10px;font-size:13px}
.wowrb-skeleton{padding:12px;opacity:.75}
/* Create form layout */
.wowrb-card-create { max-width: 760px; margin: 20px auto; }
.wowrb-form { display: flex; flex-direction: column; gap: 14px; }

.wowrb-field label { display:block; font-weight: 700; margin-bottom: 6px; }
.wowrb-help { display:block; margin-top: 6px; font-size: 12px; opacity: .75; }

.wowrb-form input,
.wowrb-form select,
.wowrb-form textarea {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

.wowrb-actions { margin-top: 4px; }
.wowrb-btn-block { width: 100%; }

/* Improve grid responsiveness */
.wowrb-grid3 { display:grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
@media (max-width: 720px) {
  .wowrb-grid3 { grid-template-columns: 1fr; }
}

/* =========================
   Raid Book – nicer layout
   ========================= */

/* container */
.wowrb-raid-list{
  display:flex;
  flex-direction:column;
  gap:14px;
}

/* card */
.wowrb-raid-row{
  display:grid;
  grid-template-columns: 1fr auto;
  gap:14px;
  align-items:center;
  border:1px solid rgba(255,255,255,.14);
  border-radius:16px;
  padding:14px 16px;
  background: rgba(0,0,0,.35);
  backdrop-filter: blur(6px);
}

/* left side */
.wowrb-raid-main{
  min-width: 0;
}
.wowrb-raid-title{
  font-weight:800;
  font-size:18px;
  line-height:1.2;
  margin-bottom:6px;
}
.wowrb-raid-meta{
  opacity:.82;
  font-size:13px;
  display:flex;
  gap:10px;
  flex-wrap:wrap;
}
.wowrb-raid-meta .wowrb-pill{
  margin-left:0;
}

/* right side actions */
.wowrb-raid-actions{
  display:flex;
  gap:10px;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:wrap;
}

/* buttons */
.wowrb-btn{
  padding:10px 14px;
  border-radius:12px;
  border:1px solid rgba(255,255,255,.18);
  background: rgba(255,255,255,.06);
  color: inherit;
}
.wowrb-btn:hover{
  background: rgba(255,255,255,.10);
}
.wowrb-btn-secondary{
  background: rgba(255,255,255,.08);
}
.wowrb-btn-danger{
  background: rgba(255,80,80,.10);
  border-color: rgba(255,80,80,.35);
}

/* badges */
.wowrb-badges{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  align-items:center;
  margin-top:10px;
}
.wowrb-badge{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.16);
  background: rgba(255,255,255,.06);
  font-size:12px;
  line-height:1;
}
.wowrb-badge strong{ font-weight:800; }

/* status colors via border hint only (keine wilden Farben) */
.wowrb-status-confirmed{ border-color: rgba(46,204,113,.45); }
.wowrb-status-pending{ border-color: rgba(241,196,15,.45); }
.wowrb-status-bench{ border-color: rgba(52,152,219,.45); }
.wowrb-status-rejected{ border-color: rgba(231,76,60,.55); }
.wowrb-status-locked{ border-color: rgba(255,140,0,.55); }

/* "locked" appearance for buttons */
.wowrb-btn[disabled],
.wowrb-btn.is-disabled{
  opacity:.55;
  cursor:not-allowed;
  pointer-events:none;
}

/* mobile */
@media (max-width: 860px){
  .wowrb-raid-row{
    grid-template-columns: 1fr;
    gap:10px;
  }
  .wowrb-raid-actions{
    justify-content:flex-start;
  }
}

/* =========================
   Info Modal (Raid Details)
   ========================= */
.wowrb-grid2{
  display:grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap:12px;
}
@media (max-width:720px){ .wowrb-grid2{grid-template-columns:1fr;} }

.wowrb-muted{opacity:.75;font-size:12px}
.wowrb-info-grid{
  display:grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap:12px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:14px;
  padding:12px;
  background: rgba(255,255,255,.04);
  margin-bottom:12px;
}
@media (max-width:720px){ .wowrb-info-grid{grid-template-columns:1fr;} }

.wowrb-info-value{font-weight:800;margin-top:4px}
.wowrb-info-desc{
  border:1px solid rgba(255,255,255,.12);
  border-radius:14px;
  padding:12px;
  background: rgba(255,255,255,.04);
  margin-bottom:14px;
}
.wowrb-desc-content{margin-top:6px}

.wowrb-roster-group{margin-top:14px}
.wowrb-roster-group h4{margin:0 0 8px 0}

.wowrb-table-wrap{
  overflow:auto;
  border:1px solid rgba(255,255,255,.12);
  border-radius:14px;
}
.wowrb-table{
  width:100%;
  border-collapse:collapse;
  min-width:720px;
}
.wowrb-table th, .wowrb-table td{
  padding:10px 12px;
  border-bottom:1px solid rgba(255,255,255,.08);
  text-align:left;
  font-size:13px;
  vertical-align:top;
}
.wowrb-table th{
  font-weight:800;
  background: rgba(255,255,255,.04);
}
.wowrb-table tr:last-child td{border-bottom:none}