:root{
  --bbgp-navy:#1C173F;
  --bbgp-navy-2:#161832;
  --bbgp-ink:#0f1020;
  --bbgp-green:#78BE4A;
  --bbgp-teal:#056852;
  --bbgp-line:#2a2d55;
  --bbgp-text:#d7dae8;
  --bbgp-dim:#8f95b5;
  --bbgp-err:#d9534f;
  --bbgp-warn:#f0ad4e;
  --bbgp-radius:8px;
}

.bbgp-wrap{max-width:860px;margin:0 auto;color:var(--bbgp-text);font-size:15px;line-height:1.6}
.bbgp-wrap *{box-sizing:border-box}

/* ---------- notices ---------- */
.bbgp-notice{padding:12px 16px;border-radius:var(--bbgp-radius);margin:0 0 20px;border-left:3px solid var(--bbgp-green);background:rgba(120,190,74,.10)}
.bbgp-notice--error{border-left-color:var(--bbgp-err);background:rgba(217,83,79,.10)}
.bbgp-callout{padding:12px 14px;border-radius:var(--bbgp-radius);background:rgba(255,255,255,.04);border-left:3px solid var(--bbgp-green);margin:14px 0}
.bbgp-callout--warn{border-left-color:var(--bbgp-warn)}
.bbgp-callout--err{border-left-color:var(--bbgp-err)}

/* ---------- fee banner ---------- */
.bbgp-fee-banner{display:flex;flex-wrap:wrap;gap:8px 24px;align-items:baseline;justify-content:space-between;
  padding:18px 22px;margin:0 0 24px;border:1px solid var(--bbgp-line);border-left:4px solid var(--bbgp-green);
  border-radius:var(--bbgp-radius);background:var(--bbgp-navy-2)}
.bbgp-fee-banner__label{display:block;font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:var(--bbgp-dim)}
.bbgp-fee-banner__amount{font-size:30px;font-weight:800;color:#fff;line-height:1.1}
.bbgp-fee-banner__note{margin-left:8px;font-size:13px;color:var(--bbgp-dim)}
.bbgp-fee-banner__terms{margin:0;font-size:13px;color:var(--bbgp-dim);max-width:42ch}

/* ---------- form ---------- */
.bbgp-form{display:block}
.bbgp-fieldset{border:1px solid var(--bbgp-line);border-radius:var(--bbgp-radius);padding:18px 20px 8px;margin:0 0 20px;background:var(--bbgp-navy-2)}
.bbgp-fieldset legend{padding:0 8px;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--bbgp-green);font-weight:700}
.bbgp-field{display:block;margin:0 0 16px}
.bbgp-label{display:block;font-size:13px;margin:0 0 6px;color:var(--bbgp-text)}
.bbgp-label em{color:var(--bbgp-green);font-style:normal}
.bbgp-field input[type=text],.bbgp-field input[type=email],.bbgp-field input[type=url],
.bbgp-field select,.bbgp-field textarea{
  width:100%;padding:10px 12px;border:1px solid var(--bbgp-line);border-radius:6px;
  background:var(--bbgp-ink);color:#fff;font:inherit}
.bbgp-field input:focus,.bbgp-field select:focus,.bbgp-field textarea:focus{
  outline:none;border-color:var(--bbgp-green);box-shadow:0 0 0 2px rgba(120,190,74,.22)}
.bbgp-help{display:block;margin-top:5px;font-size:12px;color:var(--bbgp-dim)}
.bbgp-row{display:flex;gap:14px;flex-wrap:wrap}
.bbgp-row .bbgp-field{flex:1 1 220px}
.bbgp-row .bbgp-field--narrow{flex:0 1 140px}
.bbgp-check{display:flex;gap:10px;align-items:flex-start;margin:0 0 20px;font-size:14px}
.bbgp-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.bbgp-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}

/* ---------- buttons ---------- */
.bbgp-btn{display:inline-block;padding:11px 20px;border:1px solid var(--bbgp-green);border-radius:6px;
  background:var(--bbgp-green);color:var(--bbgp-ink);font-weight:700;font-size:14px;text-decoration:none;cursor:pointer}
.bbgp-btn:hover{filter:brightness(1.08);color:var(--bbgp-ink)}
.bbgp-btn--ghost{background:transparent;color:var(--bbgp-green)}
.bbgp-btn--ghost:hover{background:rgba(120,190,74,.12);color:var(--bbgp-green)}
.bbgp-btn--primary{background:var(--bbgp-green)}
.bbgp-btn--sm{padding:7px 14px;font-size:13px}
.bbgp-link{color:var(--bbgp-green);font-size:14px}
.bbgp-inline{display:inline}

/* ---------- cards / dashboard ---------- */
.bbgp-card{border:1px solid var(--bbgp-line);border-radius:var(--bbgp-radius);padding:22px;background:var(--bbgp-navy-2)}
.bbgp-card__title{margin:0 0 6px;font-size:20px;color:#fff}
.bbgp-card__lead{margin:0 0 18px;color:var(--bbgp-dim)}
.bbgp-card--empty{text-align:center;color:var(--bbgp-dim)}
.bbgp-toolbar{margin:0 0 18px}
.bbgp-list{display:flex;flex-direction:column;gap:14px}
.bbgp-item{border:1px solid var(--bbgp-line);border-left:4px solid var(--bbgp-line);border-radius:var(--bbgp-radius);
  padding:18px 20px;background:var(--bbgp-navy-2)}
.bbgp-item--draft{border-left-color:var(--bbgp-dim)}
.bbgp-item--bbgp_await_pay{border-left-color:var(--bbgp-warn)}
.bbgp-item--bbgp_review{border-left-color:#4a90d9}
.bbgp-item--publish{border-left-color:var(--bbgp-green)}
.bbgp-item--bbgp_declined,.bbgp-item--bbgp_refunded{border-left-color:var(--bbgp-err)}
.bbgp-item__head{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.bbgp-item__title{margin:0;font-size:17px;color:#fff}
.bbgp-item__meta{display:flex;flex-wrap:wrap;gap:6px 26px;margin:12px 0 0}
.bbgp-item__meta div{display:flex;gap:6px;font-size:13px}
.bbgp-item__meta dt{color:var(--bbgp-dim);margin:0}
.bbgp-item__meta dd{margin:0;color:#fff}
.bbgp-item__actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}
.bbgp-muted,.muted{color:var(--bbgp-dim)}

/* ---------- badges ---------- */
.bbgp-badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:11px;font-weight:700;
  letter-spacing:.06em;text-transform:uppercase;background:rgba(255,255,255,.08);color:var(--bbgp-text)}
.bbgp-badge--publish,.bbgp-badge--approved,.bbgp-badge--paid{background:rgba(120,190,74,.18);color:var(--bbgp-green)}
.bbgp-badge--bbgp_await_pay,.bbgp-badge--awaiting_payment{background:rgba(240,173,78,.18);color:var(--bbgp-warn)}
.bbgp-badge--bbgp_review{background:rgba(74,144,217,.18);color:#7fb4ea}
.bbgp-badge--bbgp_declined,.bbgp-badge--declined,.bbgp-badge--bbgp_refunded,.bbgp-badge--refunded{background:rgba(217,83,79,.18);color:#e8837f}

/* ---------- payment block ---------- */
.bbgp-payblock{border:1px solid var(--bbgp-line);border-radius:var(--bbgp-radius);overflow:hidden;margin:0 0 18px}
.bbgp-payblock__row{display:flex;justify-content:space-between;gap:16px;padding:12px 16px;border-bottom:1px solid var(--bbgp-line)}
.bbgp-payblock__row:last-child{border-bottom:0}
.bbgp-payblock__row span{color:var(--bbgp-dim);font-size:13px}
.bbgp-payblock__row strong{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:#fff;text-align:right}
.bbgp-payblock__row--accent strong{color:var(--bbgp-green);font-size:17px}
.bbgp-copy{cursor:pointer;position:relative}
.bbgp-copy:hover{text-decoration:underline dotted}
.bbgp-copy.is-copied::after{content:"copied";position:absolute;right:0;top:-16px;font-size:10px;color:var(--bbgp-green);
  letter-spacing:.08em;text-transform:uppercase}

/* ---------- published post decorations ---------- */
.bbgp-disclosure{padding:10px 14px;margin:0 0 22px;border-left:3px solid #c9a227;background:rgba(201,162,39,.09);
  font-size:13px;line-height:1.5}
.bbgp-author-box{margin:32px 0 0;padding:18px 20px;border:1px solid rgba(0,0,0,.12);border-radius:8px;background:rgba(0,0,0,.03)}
.bbgp-author-box__name{margin:0 0 6px;font-size:16px}
.bbgp-author-box__bio{margin:0 0 6px;font-size:14px}
.bbgp-author-box__link{margin:0;font-size:13px}

/* ---------- admin ---------- */
.bbgp-admin .bbgp-grid{display:flex;gap:20px;align-items:flex-start;flex-wrap:wrap;margin-top:16px}
.bbgp-admin .bbgp-col{flex:1 1 520px;min-width:340px}
.bbgp-admin .bbgp-col--side{flex:0 1 360px}
.bbgp-admin .bbgp-box{background:#fff;border:1px solid #c3c4c7;border-radius:4px;padding:14px 16px;margin:0 0 16px}
.bbgp-admin .bbgp-box h2{margin:0 0 10px;font-size:14px;text-transform:uppercase;letter-spacing:.06em;color:#50575e}
.bbgp-admin .bbgp-box label{display:block;font-weight:600;margin-bottom:4px}
.bbgp-admin .bbgp-box input[type=text],.bbgp-admin .bbgp-box input[type=date],
.bbgp-admin .bbgp-box input[type=datetime-local],.bbgp-admin .bbgp-box textarea,
.bbgp-admin .bbgp-box select{width:100%;font-weight:400;margin-top:2px}
.bbgp-admin .bbgp-stats{display:flex;gap:10px;flex-wrap:wrap;margin:14px 0}
.bbgp-admin .bbgp-stat{display:block;min-width:120px;padding:12px 16px;background:#fff;border:1px solid #c3c4c7;
  border-radius:4px;text-decoration:none;color:#1d2327}
.bbgp-admin .bbgp-stat__n{display:block;font-size:22px;font-weight:700;line-height:1.1}
.bbgp-admin .bbgp-stat__l{display:block;font-size:12px;color:#646970}
.bbgp-admin .bbgp-cats{display:flex;flex-wrap:wrap;gap:6px 18px;max-height:220px;overflow:auto;
  border:1px solid #dcdcde;padding:10px;background:#fff;border-radius:4px}
.bbgp-admin .bbgp-cats label{white-space:nowrap}
.bbgp-admin .bbgp-badge{color:#1d2327}

/* ---------- block editor sidebar ---------- */
.bbgp-panel__stat{display:flex;justify-content:space-between;font-size:12px;padding:4px 0;border-bottom:1px solid #e0e0e0}
.bbgp-panel__errors{margin:8px 0 0;padding-left:18px;font-size:12px;color:#cc1818}
.bbgp-panel__ref{font-family:ui-monospace,Menlo,Consolas,monospace;font-weight:700}

@media (max-width:640px){
  .bbgp-fee-banner{flex-direction:column;align-items:flex-start}
  .bbgp-payblock__row{flex-direction:column;gap:2px}
  .bbgp-payblock__row strong{text-align:left}
}
