/* ==========================================================================
   Dog Pregnancy Standard Clinical Content Styling (v2.0)
   Implements K3 Design Tokens, Badges, Table Integrity, and Accessibility
   ========================================================================== */

:root {
  --dp-primary: #0E4B5C;
  --dp-primary-hover: #08323E;
  --dp-accent: #F28500;
  --dp-accent-hover: #D97706;
  --dp-bg-light: #F8FAFC;
  --dp-text-dark: #1E293B;
  --dp-text-muted: #64748B;
  --dp-border: #E2E8F0;
  
  --dp-emergency-bg: #FEE2E2;
  --dp-emergency-text: #991B1B;
  --dp-warning-bg: #FEF3C7;
  --dp-warning-text: #92400E;
  --dp-routine-bg: #DCFCE7;
  --dp-routine-text: #166534;
  --dp-info-bg: #E0F2FE;
  --dp-info-text: #075985;
}

/* Responsive Table Container */
.table-responsive {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  margin: 1.5rem 0;
  border-radius: 8px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

.clinical-table {
  width: 100%;
  border-collapse: collapse;
  text-align: left;
  font-size: 0.95rem;
  background-color: #FFFFFF;
}

.clinical-table thead tr {
  background-color: var(--dp-primary);
  color: #FFFFFF;
  font-weight: 600;
}

.clinical-table th,
.clinical-table td {
  padding: 0.85rem 1rem;
  border-bottom: 1px solid var(--dp-border);
  vertical-align: top;
}

.clinical-table tbody tr:nth-of-type(even) {
  background-color: var(--dp-bg-light);
}

.clinical-table tbody tr:hover {
  background-color: #F1F5F9;
}

/* Standardized Status Badges */
.badge {
  display: inline-block;
  padding: 0.25rem 0.6rem;
  font-size: 0.8rem;
  font-weight: 700;
  border-radius: 9999px;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  line-height: 1.2;
}

.badge-emergency {
  background-color: var(--dp-emergency-bg);
  color: var(--dp-emergency-text);
  border: 1px solid #FCA5A5;
}

.badge-warning {
  background-color: var(--dp-warning-bg);
  color: var(--dp-warning-text);
  border: 1px solid #FCD34D;
}

.badge-routine {
  background-color: var(--dp-routine-bg);
  color: var(--dp-routine-text);
  border: 1px solid #86EFAC;
}

.badge-info {
  background-color: var(--dp-info-bg);
  color: var(--dp-info-text);
  border: 1px solid #7DD3FC;
}

/* Standard Clinical Callout Box */
.clinical-callout {
  padding: 1.25rem;
  margin: 1.5rem 0;
  border-left: 4px solid var(--dp-primary);
  background-color: var(--dp-bg-light);
  border-radius: 0 8px 8px 0;
}

.clinical-callout.warning {
  border-left-color: #D97706;
  background-color: #FFFBEB;
}

.clinical-callout.emergency {
  border-left-color: #DC2626;
  background-color: #FEF2F2;
}


/* ==========================================================================
   Table Layout Definition: 10% Less Transparent, Solid Contrast, Zero Blue
   ========================================================================== */
.table-container,
.table-responsive,
.clinical-table-wrap,
.state-table-wrap,
div[style*="overflow-x: auto"] {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: auto !important;
  margin: 2rem 0 !important;
  border: 1.5px solid #94a3b8 !important;
  border-radius: 10px !important;
  background-color: #ffffff !important;
  opacity: 1 !important;
  box-shadow: 0 4px 16px rgba(15, 23, 42, 0.10) !important;
  -webkit-overflow-scrolling: touch !important;
}

table,
.table,
.clinical-table,
.clinical-data-table,
.article-content table,
.article-body table,
.standard-page-container table {
  width: 100% !important;
  border-collapse: collapse !important;
  background-color: #ffffff !important;
  opacity: 1 !important;
  text-align: left !important;
}

table th,
.clinical-table th,
.clinical-data-table th,
.article-content table th {
  background-color: #0f172a !important;
  color: #ffffff !important;
  font-weight: 750 !important;
  border: 1px solid #334155 !important;
  border-bottom: 3px solid #ea580c !important;
  padding: 13px 16px !important;
}

table td,
.clinical-table td,
.clinical-data-table td,
.article-content table td {
  padding: 12px 16px !important;
  border: 1px solid #cbd5e1 !important;
  color: #1e293b !important;
  vertical-align: top !important;
  background-color: #ffffff !important;
}

table tr:nth-child(even) td,
.clinical-table tbody tr:nth-of-type(even) td,
.article-content table tr:nth-child(even) td {
  background-color: #f1f5f9 !important;
}

table tr:hover td,
.clinical-table tbody tr:hover td,
.article-content table tr:hover td {
  background-color: #e2e8f0 !important;
}
