/* BHP System – Frontend Styles v2 */
.bhp-front-wrap { max-width:920px; margin:0 auto; font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; }

.bhp-front-header { margin-bottom:20px; }
.bhp-front-header h2 { font-size:22px; margin-bottom:6px; }

.bhp-error, .bhp-notice {
  padding:12px 18px; border-radius:6px; margin:16px 0;
}
.bhp-error  { background:#fef2f2; border:1px solid #fca5a5; color:#991b1b; }
.bhp-notice { background:#fff3cd; border:1px solid #ffc107; color:#856404; }

.bhp-controls-bar {
  display:flex; align-items:center; gap:16px; flex-wrap:wrap;
  background:#f8f9fa; padding:12px 16px; border-radius:8px;
  margin-bottom:16px; border:1px solid #dee2e6;
}
.bhp-control-group { display:flex; align-items:center; gap:8px; }
.bhp-control-group label { font-weight:600; font-size:14px; white-space:nowrap; }
.bhp-control-group input {
  padding:6px 10px; border:1px solid #ced4da; border-radius:5px; font-size:14px;
}
#bhp-front-status { margin-left:auto; font-size:13px; color:#6c757d; }

/* Card */
.bhp-placowka-card {
  border:1px solid #dee2e6; border-radius:8px; margin-bottom:8px;
  overflow:hidden; transition:box-shadow .2s;
}
.bhp-placowka-card:hover { box-shadow:0 2px 8px rgba(0,0,0,.08); }
.bhp-placowka-card.bhp-hidden { display:none; }
.bhp-placowka-card.bhp-open .bhp-placowka-header { background:#f0f6fc; border-bottom:1px solid #dee2e6; }

.bhp-placowka-header {
  display:flex; justify-content:space-between; align-items:center;
  padding:10px 14px; background:#fff; cursor:pointer; user-select:none;
}
.bhp-placowka-info { display:flex; align-items:baseline; gap:10px; flex-wrap:wrap; flex:1; }
.bhp-numer-id {
  background:#2271b1; color:#fff; padding:2px 8px;
  border-radius:12px; font-size:12px; font-weight:700; white-space:nowrap; flex-shrink:0;
}
.bhp-placowka-info strong { font-size:15px; }
.bhp-placowka-info small { color:#6c757d; font-size:12px; }

.bhp-toggle-btn {
  background:none; border:1px solid #dee2e6; border-radius:5px;
  padding:4px 10px; cursor:pointer; font-size:12px; white-space:nowrap;
  flex-shrink:0; margin-left:10px;
}
.bhp-toggle-btn:hover { background:#f0f0f0; }

/* Zadania grid */
.bhp-zadania-grid { padding:12px 14px; background:#fafbfc; }

.bhp-zadanie-row {
  display:grid; grid-template-columns:1fr 100px 22px;
  align-items:center; gap:10px;
  padding:6px 0; border-bottom:1px solid #eee;
}
.bhp-zadanie-row:last-of-type { border-bottom:none; }
.bhp-zadanie-row label { font-size:13px; }

.bhp-ilosc-input {
  width:90px; padding:5px 8px; border:1px solid #ced4da; border-radius:5px;
  text-align:center; font-size:15px; font-weight:700;
  transition:border-color .15s, background .15s;
}
.bhp-ilosc-input:focus { outline:none; border-color:#2271b1; background:#f0f6fc; }
.bhp-ilosc-input.changed { border-color:#f59e0b; background:#fffbeb; }
.bhp-ilosc-input.saved   { border-color:#10b981; background:#ecfdf5; }

.bhp-save-indicator { font-size:15px; text-align:center; }

.bhp-card-footer {
  display:flex; align-items:center; gap:12px;
  margin-top:10px; padding-top:10px; border-top:1px dashed #dee2e6;
}
.bhp-save-all-btn {
  padding:6px 14px; background:#2271b1; color:#fff;
  border:none; border-radius:5px; cursor:pointer; font-size:13px;
}
.bhp-save-all-btn:hover { background:#135e96; }
.bhp-save-all-btn:disabled { background:#aaa; cursor:default; }
.bhp-card-status { font-size:13px; font-weight:600; color:#10b981; }
