/* Pressure Test tool UI. PT-A5-CSS: scoped to .bs-pt (every tab root carries it).
   Buttons and list styles use !important because the theme overrides them
   (main#content button whitens tool buttons; .entry-content li forces numbering). */

.bs-pt { max-width: 1180px; margin: 0 auto; padding: 8px 0 24px; font-size: 14px; color: #1e293b; }
.bs-pt h3 { margin: 18px 0 8px; font-size: 16px; color: #0f172a; }
.bs-pt h4 { margin: 0 0 6px; font-size: 14px; color: #0f172a; }
.bs-pt h5 { margin: 0 0 4px; font-size: 13px; color: #334155; text-transform: uppercase; letter-spacing: .03em; }
.bs-pt p { margin: 0 0 8px; line-height: 1.5; }

.bs-pt-card { background: #fff; border: 1px solid #e2e8f0; border-radius: 12px; padding: 18px 20px; margin-bottom: 16px; }
.bs-pt-card > h3:first-child { margin-top: 0; }
.bs-pt-help { color: #64748b; font-size: 13px; }
.bs-pt-muted { color: #94a3b8; font-size: 13px; }
.bs-pt-group { margin: 0 0 10px; padding: 8px 12px; border-radius: 8px; background: #f1f5f9; color: #334155; font-size: 13px; }

.bs-pt-field { display: block; margin-bottom: 12px; }
.bs-pt-field label,
.bs-pt-premortem label { display: block; margin: 0 0 4px; font-weight: 600; font-size: 13px; color: #334155; }
.bs-pt textarea,
.bs-pt input[type="number"],
.bs-pt select { box-sizing: border-box; width: 100%; padding: 8px 10px; border: 1px solid #cbd5e1; border-radius: 6px; font: inherit; font-size: 13px; background: #fff; }
.bs-pt textarea { resize: vertical; min-height: 44px; }
.bs-pt-field-inline input[type="number"] { width: 110px; }
.bs-pt select { padding: 5px 6px; }

.bs-pt-actions { display: flex; flex-wrap: wrap; gap: 8px; margin: 12px 0 4px; }
.bs-pt .bs-btn { display: inline-flex !important; align-items: center; padding: 8px 16px !important; border-radius: 8px !important; border: 1px solid transparent !important; font-weight: 600 !important; font-size: 13px !important; cursor: pointer; }
.bs-pt .bs-btn-primary { background: #4f46e5 !important; color: #fff !important; }
.bs-pt .bs-btn-accent { background: #0f766e !important; color: #fff !important; }
.bs-pt .bs-btn-secondary { background: #fff !important; color: #334155 !important; border-color: #cbd5e1 !important; }
.bs-pt .bs-btn[data-pt-complete="1"] { opacity: .6; }

.bs-pt .bs-tool-status { min-height: 18px; font-size: 13px; color: #475569; }
.bs-pt .bs-tool-status[data-bs-pressure-test-status="error"] { color: #b91c1c; }
.bs-pt .bs-tool-status[data-bs-pressure-test-status="ok"] { color: #166534; }

.bs-pt-table-wrap { overflow-x: auto; margin-bottom: 8px; }
.bs-pt-table { width: 100%; border-collapse: collapse; font-size: 13px; }
.bs-pt-table th { text-align: left; padding: 8px; background: #f8fafc; border-bottom: 2px solid #e2e8f0; color: #334155; white-space: nowrap; }
.bs-pt-table td { padding: 6px 8px; border-bottom: 1px solid #f1f5f9; vertical-align: top; min-width: 90px; }
.bs-pt-table td textarea { min-width: 160px; }
.bs-pt-id { font-weight: 700; color: #4f46e5; white-space: nowrap; }
.bs-pt-score { font-weight: 700; text-align: center; }
.bs-pt-register tr[data-pt-quadrant="fragile"] .bs-pt-id { color: #b91c1c; }

.bs-pt-tag { display: inline-block; margin: 0 4px 4px 0; padding: 2px 8px; border-radius: 999px; background: #eef2ff; color: #3730a3; font-size: 12px; }
.bs-pt-tag-muted { background: #f1f5f9; color: #475569; }
.bs-pt-badge { display: inline-block; padding: 2px 8px; border-radius: 999px; font-size: 12px; font-weight: 600; }
.bs-pt-badge-danger { background: #fee2e2; color: #991b1b; }
.bs-pt-count { display: inline-block; min-width: 20px; padding: 0 6px; border-radius: 999px; background: #e2e8f0; font-size: 12px; text-align: center; }

.bs-pt-quadrants { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-bottom: 8px; }
.bs-pt-quadrant { border: 1px solid #e2e8f0; border-radius: 10px; padding: 12px; background: #fff; }
.bs-pt-q-fragile { border-color: #fecaca; background: #fef2f2; }
.bs-pt-q-watch { border-color: #fde68a; background: #fffbeb; }
.bs-pt-q-test_cheaply { border-color: #bfdbfe; background: #eff6ff; }
.bs-pt-q-safe { border-color: #bbf7d0; background: #f0fdf4; }

.bs-pt ul { margin: 4px 0 8px 18px !important; padding: 0 !important; list-style: disc !important; }
.bs-pt ul li { list-style: disc !important; margin: 0 0 4px !important; }
.bs-pt ul li::before { content: none !important; }

.bs-pt-two-col { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 8px; }
.bs-pt-premortem textarea { margin-bottom: 10px; }

.bs-pt-round-counter { font-weight: 600; font-size: 15px; }
.bs-pt-round { border: 1px solid #e2e8f0; border-radius: 10px; padding: 14px; margin-bottom: 12px; background: #fff; }
.bs-pt-round-breaking { border-color: #fca5a5; box-shadow: 0 0 0 2px #fee2e2; }
.bs-pt-move { margin-bottom: 8px; }
.bs-pt-callout { padding: 10px 12px; border-radius: 8px; margin: 8px 0; font-weight: 600; }
.bs-pt-callout-danger { background: #fef2f2; border: 1px solid #fecaca; color: #991b1b; }

@media (max-width: 720px) {
  .bs-pt-quadrants, .bs-pt-two-col { grid-template-columns: 1fr; }
  .bs-pt-card { padding: 14px; }
}
