# presentation/styles/overlay.style.css

> 97 lines of code and 0 definitions.

Tree: Site tree
Language: css
Layer: product
Canonical: https://banes-lab.com/anatomy/tree#file-presentation-styles-overlay-style-css
Source text: https://banes-lab.com/assets/sources/source.d8cd62b650468dd37ff71418d2a87ca43126d309fb8c368116be199e84433c0a.generated.txt

## Source

```css
.u-scroll-lock {
    overflow: hidden;
}

.overlay {
    inset: 0;
    position: fixed;
    z-index: var(--z-modal);
}

.overlay-backdrop {
    align-items: center;
    backdrop-filter: var(--blur-heavy);
    display: flex;
    height: var(--percent-full);
    justify-content: center;
    padding: 0;
    width: var(--percent-full);
}

.overlay-dialog {
    background: var(--banes-lab-main);
    border: var(--border-s) solid var(--accent-subtle);
    border-radius: 0;
    display: flex;
    flex-direction: column;
    max-height: calc(var(--vh) * 100);
    max-width: var(--percent-full);
    opacity: 0;
    overflow: hidden;
    transform: scale(var(--scale-hidden));
    width: var(--percent-full);
}

.overlay.open .overlay-dialog {
    animation: overlay-pop-in var(--transition-slow) var(--easing-spring) forwards;
}

.overlay.closing .overlay-dialog {
    animation: overlay-pop-out var(--transition-fast) ease-in forwards;
}

.overlay-header {
    align-items: center;
    background: var(--code-block);
    border-bottom: var(--border-s) solid var(--accent-subtle);
    display: flex;
    flex-shrink: 0;
    gap: var(--space-md);
    justify-content: space-between;
    padding: var(--space-sm) var(--space-md);
}

.overlay-title {
    color: var(--banes-lab-accent);
    font-family: var(--font-family-mono);
    font-size: var(--font-sm);
    font-weight: var(--font-weight-medium);
}

.overlay-close {
    align-items: center;
    background: transparent;
    border: none;
    border-radius: var(--radius-sm);
    color: var(--white-alpha-muted);
    cursor: pointer;
    display: flex;
    font-size: var(--font-lg);
    height: var(--touch-target-min);
    justify-content: center;
    transition: all var(--transition-fast) ease;
    width: var(--touch-target-min);
}

.overlay-close:hover {
    background: var(--overlay-subtle);
    color: var(--white);
}

.overlay-body {
    flex: 1;
    overflow: auto;
}

.overlay-body::-webkit-scrollbar {
    width: var(--space-xs);
}

.overlay-body::-webkit-scrollbar-track {
    background: var(--code-block);
}

.overlay-body::-webkit-scrollbar-thumb {
    background: var(--accent-subtle);
    border-radius: var(--radius-xs);
}

.overlay-body::-webkit-scrollbar-thumb:hover {
    background: var(--banes-lab-accent);
}

@media (width >= 48rem) {
    .overlay-backdrop {
        padding: var(--space-lg);
    }

    .overlay-dialog {
        border-radius: var(--radius-md);
        max-height: calc(var(--vh) * 90);
        max-width: var(--width-modal-lg);
    }
}
```
