body:has(dialog[open]) { overflow: hidden; }

dialog {
    background-color: var(--background-color);
    border: 1px solid var(--global-border-color);
    padding: 2rem;
    width: 90%;
    max-width: 600px;
    position: fixed;
    inset-block-start: 50%;
    inset-inline-start: 50%;
    translate: -50% -50%;
    
    &[open] { 
        display: grid; 
        gap: 1rem; 
    }

    &::backdrop {
		background-color: var(--overlay);
		pointer-events: none;
	}
}

#modal-title {
    font-weight: 1000;
    font-size: 1.5rem;
}

#modal-type {
    color: var(--color-muted);
    opacity: 50%;
    text-transform: capitalize;
}

#modal-image video {
    width: 100%;
    height: 300px;
    object-fit: cover;
    clip-path: inset(0);
}

.modal-text {
    font-style: italic;
}

#modal-image img {
    width: 100%;
    height: 400px;
    object-fit: cover;
    clip-path: inset(5%);
    transform: scale(1.11);
}

#modal-link {
    margin-block-start: auto;
    padding: 0.4rem 1rem;
    background-color: var(--global-border-color);
    border: none;
    border-radius: 0.75rem;
    font-family: var(--font-family);
    font-size: 0.8rem;
    cursor: pointer;
    width: fit-content;
    text-decoration: none;
}

#modal-link:hover {
    background-color: var(--global-border-color-dark);
    color: var(--color);
}