.photo-modal .modal-content{display:flex;flex-direction:column;height:100%;width:100%;overflow:hidden;padding:0}.photo-modal .photo-container{position:relative;flex-grow:1;width:100%;height:100%;min-height:300px;transition:opacity .3s ease}.photo-modal .photo-container.transitioning{opacity:0}.photo-modal .photo-bg{position:absolute;inset:0;z-index:0;overflow:hidden}.photo-modal .photo-bg .bg-image{filter:blur(20px);transform:scale(1.1)}.photo-modal .photo-bg .bg-overlay{position:absolute;inset:0;background:rgba(0,0,0,.45)}.photo-modal .photo-main{position:relative;z-index:1}.photo-modal .photo-details{position:absolute;bottom:0;left:0;right:0;padding:1rem;background-color:rgba(var(--color-background-rgb),.8);backdrop-filter:blur(5px);max-height:30%;overflow-y:auto}.photo-modal .show-details-btn{font-size:1rem;color:var(--color-foreground);background:none;border:none;cursor:pointer;padding:.5rem 1rem;border-radius:4px;transition:background-color .3s ease}.photo-modal .show-details-btn:hover{background-color:rgba(var(--color-foreground-rgb),.1)}.photo-modal .photo-tags{margin-top:.5rem}.photo-modal .photo-tag{display:inline-block;background-color:rgba(var(--color-foreground-rgb),.1);color:var(--color-foreground);padding:.2rem .5rem;margin-right:.5rem;margin-bottom:.5rem;border-radius:4px;font-size:.8rem}.photo-modal p{padding:1rem}.modal-header{color:#fff}.modal-header .header-actions{display:flex;align-items:center;gap:1rem}.modal-header h2{color:#fff}.modal-header button{background:transparent}.modal-header .close-button,.modal-header .info-button,.modal-header button{color:hsla(0,0%,100%,.9)}.modal-header .close-button:hover,.modal-header .info-button:hover{color:#fff}.modal-header .close-button svg,.modal-header .info-button svg{color:currentColor;fill:currentColor}