[hidden] { display: none !important; }
#rythmbpm-builder, #rb-status-page { color: #273347; }
.rb-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(200px,1fr)); gap: 1rem; margin: 1rem 0; align-items: end; }
.rb-grid label, .rb-segment label { display: block; font-weight: 600; }
.rb-segment { border: 1px solid #cbd5e1; border-radius: 8px; padding: 1rem; margin: 1rem 0; background: #f8fafc; }
.rb-segment .rb-grid { grid-template-columns: repeat(auto-fit,minmax(130px,1fr)); }
.rb-jump { color: #9a3412; margin: .7rem 0; }
#rb-timeline { display: block; width: 100%; max-height: 240px; background: #f1f5f9; border-radius: 8px; margin-top: 1rem; }
#rb-message { overflow-wrap: anywhere; }
#rb-tracks td { vertical-align: middle; }
#rb-tracks input[type=checkbox] { width: 22px; height: 22px; }
#rb-status-page pre { white-space: pre-wrap; overflow-wrap: anywhere; max-height: 400px; overflow: auto; }
#rb-status-page audio { width: 100%; margin: 1rem 0; }
#rb-result { margin-top: 1rem; }
#rb-jobs a { display: block; padding: .6rem 0; }
.rb-scope-label { display: block; margin-top: 1rem; font-weight: 600; }
#rb-allocations { box-sizing: border-box; width: 100%; min-height: 9rem; }
@media (max-width: 600px) { .rb-grid { grid-template-columns: 1fr; } .rb-segment .rb-grid { grid-template-columns: 1fr 1fr; } #rb-generate { width: 100%; font-size: 1.1rem; } .section { padding: 1.5rem .75rem; } }
/* Keep the existing session-builder header readable at narrow widths. */
.hero .title + .subtitle { margin-top: 0; }
