/* SLD Studio – standard styles shared by every page (linked after each page's own styles) */

/* Page title: the first bold item in the top bar, e.g. "Projects", "Material list", "Bay Configuration" */
header > b:first-child { font-size: 20px; font-weight: 700; letter-spacing: .2px; line-height: 1.2 }

/* Frozen table header: put class "freeze" on a scrolling box around a table; its header row stays in view */
.freeze { overflow: auto }
.freeze thead th { position: sticky; top: 0; z-index: 2; background: var(--pn); box-shadow: inset 0 -1px 0 var(--ln) }

/* Forms: each label is exactly as wide as its box; long labels wrap onto a second line */
.fgrid { display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 10px 12px; align-items: end }
.fgrid > label { display: flex; flex-direction: column; gap: 3px; min-width: 0; font-size: 12px; color: var(--mut); overflow-wrap: anywhere }
.fgrid > label > input, .fgrid > label > select, .fgrid > label > textarea { width: 100%; box-sizing: border-box; margin: 0 }
.fgrid > .w2 { grid-column: span 2 }
.fgrid > .full { grid-column: 1 / -1 }
@media (max-width: 480px) { .fgrid > .w2 { grid-column: 1 / -1 } }
