/* A text file shown as it is (a memory, a skill), folded away until opened. */
.file-view {
    border: var(--border-width) solid var(--color-border);
    border-radius: var(--radius-sm);
    background-color: var(--color-surface-highlighted);
}

.file-view__summary {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--spacing-sm);
    padding: var(--spacing-sm) var(--spacing-md);
    cursor: pointer;
    list-style: none;
}

/* A flex summary loses the browser's own marker, so it draws one: pointing right when folded, down when open. */
.file-view__summary::before {
    content: "";
    flex-shrink: 0;
    width: 0.375rem;
    height: 0.375rem;
    border-right: 1.5px solid var(--color-on-surface-muted);
    border-bottom: 1.5px solid var(--color-on-surface-muted);
    transform: rotate(-45deg);
}

.file-view__summary::-webkit-details-marker {
    display: none;
}

.file-view[open] > .file-view__summary::before {
    transform: rotate(45deg);
}

.file-view__path {
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
    font-size: var(--font-size-sm);
}

.file-view__meta {
    color: var(--color-on-surface-muted);
    font-size: var(--font-size-sm);
}

.file-view__body {
    margin: 0;
    padding: var(--spacing-md);
    border-top: var(--border-width) solid var(--color-divider-subtle);
    overflow-x: auto;
    font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
    font-size: var(--font-size-sm);
    line-height: 1.5;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
}
