.jba-application-form { display: grid; gap: 1rem; max-width: 760px; margin-top: 2rem; }
.jba-application-form label { display: grid; gap: .45rem; }
.jba-application-form input,
.jba-application-form textarea { width: 100%; }
.jba-application-form .jba-check { display: flex; align-items: flex-start; }
.jba-application-form .jba-check input { width: auto; margin-top: .35rem; }
.jba-public-cta { display: flex; justify-content: center; margin: 2rem 0; }
.jba-public-cta .wp-element-button { display: inline-flex; align-items: center; justify-content: center; min-height: 52px; padding: .9rem 1.35rem; border: 1px solid #b28a4c; background: #b28a4c; color: #140f0a; font-weight: 800; letter-spacing: .04em; text-decoration: none; }
.jba-hp { position: absolute !important; left: -9999px !important; }
.jba-notice { padding: 1rem; border: 1px solid currentColor; margin-top: 1rem; }
.jba-metrics { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 1rem; list-style: none; padding: 0; }
.jba-metrics li { display: grid; gap: .35rem; border: 1px solid rgba(194,160,106,.35); padding: 1rem; }

.jba-status-grid,
.jba-metric-grid,
.jba-card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr));
  gap: 1rem;
  margin: 1.25rem 0;
}
.jba-status-grid > div,
.jba-metric-grid > article {
  display: grid;
  gap: .35rem;
  min-width: 0;
  padding: 1rem;
  border: 1px solid rgba(194,160,106,.35);
  background: rgba(20,16,11,.35);
}
.jba-status-grid span,
.jba-metric-grid span { color: var(--jb-muted, #b9ad98); font-size: .86rem; }
.jba-status-grid strong,
.jba-metric-grid strong { overflow-wrap: anywhere; font-size: 1.15rem; }
.jba-filter,
.jba-actions,
.jba-mini-metrics {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  gap: .75rem;
}
.jba-filter label { display: grid; gap: .35rem; min-width: 130px; }
.jba-actions form { margin: 0; }
.jba-mini-metrics span {
  display: grid;
  gap: .2rem;
  min-width: 100px;
  padding: .65rem .8rem;
  border-left: 2px solid rgba(194,160,106,.55);
}
.jba-bars {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(18px, 1fr));
  align-items: end;
  gap: .35rem;
  min-height: 210px;
  overflow-x: auto;
}
.jba-bars > div { display: grid; grid-template-rows: 160px auto; align-items: end; gap: .35rem; min-width: 18px; text-align: center; }
.jba-bars span { display: block; width: 100%; min-height: 3px; background: #c2a06a; }
.jba-bars small { font-size: .68rem; writing-mode: vertical-rl; }
.jba-unread { border-left: 3px solid #c2a06a !important; }
.jba-empty { padding: 2rem; border: 1px dashed rgba(194,160,106,.35); }
.jba-card-grid code,
.jbpc-resource code { overflow-wrap: anywhere; word-break: break-word; }
.jba-card-grid .jbpc-panel { min-width: 0; }
.woocommerce-MyAccount-content .jbpc-panel,
.woocommerce-MyAccount-content .jbpc-resource { min-width: 0; max-width: 100%; }
.woocommerce-MyAccount-content .jbpc-resource { display: flex; flex-wrap: wrap; }
.woocommerce-MyAccount-content .jbpc-resource code,
.woocommerce-MyAccount-content .jbpc-panel > code {
  display: block;
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: break-word;
}
.woocommerce-MyAccount-content .jbpc-profile-form select { max-width: 100%; }
.jba-card-grid progress,
.jbpc-panel progress { width: 100%; }
.woocommerce-MyAccount-content .jbpc-table-wrap {
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.woocommerce-MyAccount-content .jbpc-table-wrap table { width: 100%; }

@media (max-width: 600px) {
  .jba-status-grid,
  .jba-metric-grid,
  .jba-card-grid { grid-template-columns: 1fr; }
  .jba-filter { align-items: stretch; }
  .jba-filter label,
  .jba-filter input,
  .jba-filter select,
  .jba-filter .button,
  .jba-actions .button { width: 100%; }
  .jba-actions > * { flex: 1 1 100%; }
  .jba-mini-metrics { align-items: stretch; }
  .jba-mini-metrics span { flex: 1 1 calc(50% - .75rem); min-width: 0; }
  .woocommerce-MyAccount-content .jbpc-profile-form,
  .woocommerce-MyAccount-content .jbpc-profile-form label,
  .woocommerce-MyAccount-content .jbpc-profile-form select,
  .woocommerce-MyAccount-content .jbpc-profile-form input {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box;
  }
  .woocommerce-MyAccount-navigation ul { display: flex; overflow-x: auto; gap: .35rem; padding-bottom: .5rem; }
  .woocommerce-MyAccount-navigation li { flex: 0 0 auto; }
  .woocommerce-MyAccount-content { min-width: 0; }
}
