/* Project focus (#D1554). While the Project focus tab is the active one, the document
   view shows only the preview and the property panel. Any ordinary tab switch removes
   .active from the button, which restores the list without a listener. */
.dm-tabs:has(> .dm-tab[data-tab="project-focus"].active) ~ .dm-tab-content[data-tab="docs"] > .dm-filters,
.dm-tabs:has(> .dm-tab[data-tab="project-focus"].active) ~ .dm-tab-content[data-tab="docs"] > .dm-bulk-bar,
.dm-tabs:has(> .dm-tab[data-tab="project-focus"].active) ~ .dm-tab-content[data-tab="docs"] .dm-content > .dm-sidebar-rail,
.dm-tabs:has(> .dm-tab[data-tab="project-focus"].active) ~ .dm-tab-content[data-tab="docs"] .dm-content > .dm-panel-tree,
.dm-tabs:has(> .dm-tab[data-tab="project-focus"].active) ~ .dm-tab-content[data-tab="docs"] .dm-content > .dm-panel-areas,
.dm-tabs:has(> .dm-tab[data-tab="project-focus"].active) ~ .dm-tab-content[data-tab="docs"] .dm-content > #resizeTree,
.dm-tabs:has(> .dm-tab[data-tab="project-focus"].active) ~ .dm-tab-content[data-tab="docs"] .dm-content > #panelLeft,
.dm-tabs:has(> .dm-tab[data-tab="project-focus"].active) ~ .dm-tab-content[data-tab="docs"] .dm-content > #resizeLeft {
    display: none !important;
}

.spv-pf-pane {
    overflow: auto;
    background: var(--dm-bg);
}

.spv-pf-empty {
    max-width: 720px;
    margin: 32px auto;
    padding: 24px 28px;
    background: var(--dm-card);
    border: 1px solid var(--dm-border);
    border-radius: var(--dm-radius);
    box-shadow: var(--dm-shadow);
    color: var(--dm-text);
    line-height: 1.55;
}

.spv-pf-empty h2 {
    margin: 0 0 12px;
    font-size: 20px;
    color: var(--dm-text-strong);
}

.spv-pf-empty h3 {
    margin: 18px 0 6px;
    font-size: 15px;
    color: var(--dm-text-strong);
}

.spv-pf-empty p {
    margin: 0 0 10px;
}

.spv-pf-lead {
    font-size: 15px;
}

.spv-pf-steps {
    margin: 0 0 10px;
    padding-left: 22px;
}

.spv-pf-steps li {
    margin: 0 0 8px;
}

.spv-pf-actions {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.spv-pf-hint {
    margin-top: 10px;
    color: var(--dm-text-secondary);
}

.spv-pf-note {
    padding: 8px 12px;
    border-left: 3px solid var(--dm-warning);
    background: var(--dm-bg-subtle);
    color: var(--dm-text-secondary);
}

.spv-pf-prompt {
    margin: 14px 0 10px;
    padding: 12px 14px;
    background: var(--dm-bg-code);
    color: var(--dm-text-code);
    border-radius: var(--dm-radius);
    white-space: pre-wrap;
    word-break: break-word;
    font-size: 13px;
}

@media (max-width: 640px) {
    .spv-pf-empty {
        margin: 16px;
        padding: 16px;
    }
}
