/* ==========================================================================
   Protein Stats — Tool-specific styles
   Shared Benchling-style framework: tools/common/tbb-sequence-tools.css
   ========================================================================== */

/* ── Input textarea ──────────────────────────────────────────────────────── */
.tbb-protein-stats .tbb-seq-textarea {
	min-height:  160px;
	font-family: var(--tbb-seq-font-mono);
	font-size:   12px;
}

/* ── Per-sequence sections ───────────────────────────────────────────────── */
.tbb-ps-seq-section {
	margin-bottom: 24px;
}

.tbb-ps-seq-section:last-child {
	margin-bottom: 0;
}

.tbb-ps-seq-title {
	font-size:     13px;
	font-weight:   600;
	color:         var(--tbb-seq-text);
	margin-bottom: 8px;
	word-break:    break-all;
}

.tbb-ps-seq-len {
	font-weight: 400;
	color:       var(--tbb-seq-text-muted);
}

/* ── Results table ───────────────────────────────────────────────────────── */
.tbb-ps-table-wrap {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.tbb-ps-table {
	width:           100%;
	border-collapse: collapse;
	font-size:       12px;
}

.tbb-ps-table th {
	padding:        6px 12px;
	text-align:     left;
	font-size:      11px;
	font-weight:    600;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color:          var(--tbb-seq-text-muted);
	border-bottom:  2px solid var(--tbb-seq-border);
	white-space:    nowrap;
}

.tbb-ps-table th.tbb-ps-th--num { text-align: right; }

.tbb-ps-td {
	padding:        4px 12px;
	border-bottom:  1px solid var(--tbb-seq-surface);
	color:          var(--tbb-seq-text);
	vertical-align: middle;
}

.tbb-ps-td--label { font-size: 12px; }

.tbb-ps-td--num {
	font-family: var(--tbb-seq-font-mono);
	text-align:  right;
	white-space: nowrap;
}

/* Group rows — subtly distinguished background */
.tbb-ps-tr--group .tbb-ps-td {
	background: var(--tbb-seq-surface);
	font-weight: 500;
}

/* Visual separator above the first group row */
.tbb-ps-tr--sep .tbb-ps-td {
	border-top: 2px solid var(--tbb-seq-border);
}

.tbb-ps-table tbody tr:last-child .tbb-ps-td { border-bottom: none; }
.tbb-ps-table tbody tr:hover .tbb-ps-td      { filter: brightness(0.96); }

/* ── Output pre (copy block) ─────────────────────────────────────────────── */
@media ( min-width: 900px ) {
	.tbb-protein-stats .tbb-seq-output-pre {
		max-height: 480px;
	}
}
