/* Rocking-wall tube viewer layout (the tube section of index.html; depends on the site's --bg/--panel/--line/--accent vars) */
.tube-explorer { display: grid; grid-template-columns: minmax(0, 3fr) minmax(220px, 1.2fr); gap: 18px; align-items: start; }
.tube-explorer .viewer3d { aspect-ratio: 16 / 10; width: 100%; border: 1px solid var(--line); border-radius: 10px; overflow: hidden; background: var(--bg); }
.tube-controls { display: flex; flex-direction: column; gap: 14px; font-size: 0.9rem; }
.tube-presets { display: flex; flex-wrap: wrap; gap: 8px; }
.tube-presets button { padding: 7px 11px; border: 1px solid var(--line); border-radius: 999px; background: var(--panel); color: var(--text); cursor: pointer; font: inherit; font-size: 0.82rem; }
.tube-presets button.active { border-color: var(--accent); color: var(--accent); }
.tube-controls label { display: grid; grid-template-columns: 1fr auto; gap: 4px 10px; color: var(--muted); }
.tube-controls label span.val { color: var(--text); font-variant-numeric: tabular-nums; }
.tube-controls input[type=range] { grid-column: 1 / -1; width: 100%; accent-color: var(--accent); }
.tube-controls select { grid-column: 1 / -1; padding: 6px 8px; background: var(--panel); color: var(--text); border: 1px solid var(--line); border-radius: 6px; font: inherit; }
.tube-controls .check { display: flex; gap: 8px; align-items: center; color: var(--muted); }
.tube-readout { font-size: 0.86rem; color: var(--muted); line-height: 1.5; border-top: 1px solid var(--line); padding-top: 10px; }
.tube-readout b { color: var(--text); }
@media (max-width: 820px) { .tube-explorer { grid-template-columns: 1fr; } }
.metric-table { width: 100%; border-collapse: collapse; margin-top: 22px; font-size: 0.9rem; }
.metric-table caption { text-align: left; color: var(--muted); font-size: 0.84rem; padding-bottom: 8px; }
.metric-table th, .metric-table td { padding: 8px 10px; border-bottom: 1px solid var(--line); text-align: right; }
.metric-table th:first-child, .metric-table td:first-child { text-align: left; }
.metric-table thead th { color: var(--muted); font-weight: 500; }
#tube-title { white-space: normal; line-height: 1.35; color: var(--text); font-size: 0.86rem; }
