/* Shared panel system: collapsible + static panel surfaces and headers */

:root {
    --rs-panel-content-bg: color-mix(in srgb, var(--mud-palette-surface) 88%, black 12%);
    --rs-panel-header-bg: color-mix(in srgb, var(--mud-palette-surface) 72%, black 28%);
    --rs-panel-border-color: color-mix(in srgb, var(--mud-palette-lines-default) 70%, transparent);
}

.mud-paper.rs-panel,
.mud-paper.rs-static-panel {
    border: 1px solid var(--rs-panel-border-color);
    background: var(--rs-panel-content-bg);
    border-radius: 8px;
    overflow: hidden;
    /* Panels must never be squished by a parent flex column - they hold their
       natural height and push sibling content down, letting the scroll container
       (rs-panel-left) handle overflow via overflow-y: auto. */
    flex-shrink: 0;
}

.rs-panel-header,
.rs-static-panel-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    padding: 0.45rem 0.7rem;
    background: var(--rs-panel-header-bg);
    border-bottom: 1px solid var(--rs-panel-border-color);
}

.rs-panel-header-main {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    min-width: 0;
}

.rs-panel-header-actions {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    flex-shrink: 0;
}

.rs-panel-body,
.rs-static-panel-content {
    padding: 0.6rem 0.7rem;
    background: var(--rs-panel-content-bg);
}

.rs-panel-title-block {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    min-width: 0;
}

.rs-panel-title-block--passive {
    cursor: default;
}

.rs-panel-title {
    margin: 0;
}

.rs-panel--collapsed .rs-panel-header {
    border-bottom-color: transparent;
}
