/* ========== General Layout ========== */ body { font-family: Arial, sans-serif; margin: 0; padding: 0 1rem; background-color: #5d6668; } .mainview { max-width: 1600px; margin: 0 auto; background-color: rgba(0,0,0,.4); } /* Navbar container */ .navbar { display: flex; background-color: #1e1e1e; border-bottom: 1px solid rgba(255, 255, 255, 0.1); justify-content: flex-start; flex-wrap: wrap; justify-content: center; } /* Button-style nav links */ .nav-button { display: inline-block; padding: 0.5rem 1rem; color: white; text-decoration: none; border-radius: 5px; font-weight: bold; font-size: 1.5rem; transition: background-color 0.2s ease, transform 0.1s ease; } .nav-button:hover { background-color: #444; transform: translateY(-1px); } .nav-button:active { background-color: #1a1a1a; transform: translateY(1px); } .flash { padding: 0.5rem 1rem; margin: 1rem 0; border-radius: 4px; } .flash.success { background-color: #d4edda; color: #155724; } .flash.danger { background-color: #f8d7da; color: #721c24; } .content { padding: 8px; } /* ========== Gallery Layout ========== */ .image-date { display: block; font-size: 0.8rem; color: #e2e2e2; margin-top: 0.25rem; } .gallery-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 1rem; padding: 1rem; } .gallery-item { display: flex; flex-direction: column; align-items: center; height: 450px; background-color: rgba(1,1,1,.1); box-shadow: 0 3px 4px rgba(0,0,0,0.7); padding: 8px; border-radius: 8px; transition: transform 0.2s ease; } .gallery-item:hover { transform: scale(1.03); } .gallery-thumb { width: 100%; height: 100%; background-size: cover; background-position: center; box-shadow: 0 4px 4px rgba(0,0,0,0.4); border-radius: 12px; cursor: pointer; } .gallery-item a { color: #d4aeff; font-weight: bold; text-decoration: none; font-size: 0.95rem; } .gallery-item a:hover { text-decoration: underline; color: #d4d4d4; } .pagination-container { text-align: center; margin: 2rem 0; } .pagination-link { display: inline-block; margin: 0 0.3rem; padding: 0.5rem 1rem; border: 1px solid #aaa; border-radius: 4px; color: #333; text-decoration: none; } .pagination-link.active, .pagination-link:hover { background-color: #007BFF; color: white; border-color: #007BFF; } /* MODAL STYLES */ .modal { display: none; position: fixed; inset: 0; z-index: 1000; background: rgba(0, 0, 0, 0.85); justify-content: center; align-items: center; } .modal.active { display: flex; } .modal-content { position: relative; max-width: 95vw; max-height: 95vh; display: flex; flex-direction: column; align-items: center; } .modal-body { display: flex; flex-direction: column; align-items: center; gap: 0.75rem; } .modal-body img { max-width: 90vw; max-height: 80vh; object-fit: contain; border-radius: 6px; box-shadow: 0 0 10px rgba(0,0,0,0.6); } .modal-filename { color: #fff; background: rgba(0, 0, 0, 0.6); padding: 0.5rem 1rem; border-radius: 4px; font-size: 0.9rem; text-align: center; word-break: break-word; } /* Modal arrows and close */ .modal-button { position: absolute; top: 50%; transform: translateY(-50%); background: rgba(0, 0, 0, 0.4); border: none; color: white; font-size: 2rem; padding: 0.5rem 1rem; cursor: pointer; z-index: 1001; opacity: 0; transition: opacity 0.2s; } .modal:hover .modal-button { opacity: 1; } .modal-prev { left: -60px; } .modal-next { right: -60px; } .modal-close { top: 10px; right: 10px; transform: none; font-size: 1.5rem; opacity: 1; }