.overlay { position: fixed; top: 0; left: 0; right: 0; bottom: 0; background-color: rgba(0, 0, 0, 0.6); display: flex; align-items: center; justify-content: center; z-index: 1000; backdrop-filter: blur(8px); padding: 1rem; } .modal { background-color: var(--md-sys-color-surface-container); border: 1px solid var(--md-sys-color-outline-variant); border-radius: var(--radius-xl); padding: var(--space-xl); width: 100%; max-width: 560px; /* Slightly wider */ max-height: 90vh; overflow-y: auto; position: relative; box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.5); /* Deep shadow */ color: var(--md-sys-color-on-surface); } .closeButton { position: absolute; top: var(--space-md); right: var(--space-md); background: none; border: none; cursor: pointer; color: var(--md-sys-color-on-surface-variant); padding: 0.5rem; border-radius: var(--radius-full); display: flex; align-items: center; justify-content: center; transition: background-color var(--transition-fast), color var(--transition-fast); } .closeButton:hover { background-color: var(--md-sys-color-surface-container-high); color: var(--md-sys-color-on-surface); } .header { margin-bottom: var(--space-lg); padding-right: var(--space-xl); /* Make room for close button */ } .title { font-family: var(--md-sys-typescale-display-font); font-size: 1.5rem; font-weight: 600; margin: 0; color: var(--md-sys-color-on-surface); letter-spacing: -0.025em; } .content { color: var(--md-sys-color-on-surface-variant); font-family: var(--md-sys-typescale-body-font); line-height: 1.6; } /* Scrollbar styling for webkit browsers */ .modal::-webkit-scrollbar { width: 8px; } .modal::-webkit-scrollbar-track { background: transparent; } .modal::-webkit-scrollbar-thumb { background-color: var(--md-sys-color-outline-variant); border-radius: var(--radius-full); } .modal::-webkit-scrollbar-thumb:hover { background-color: var(--md-sys-color-outline); }