.login-button{background-color:#4a9eff;border-color:#4a9eff}.login-modal{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000c;display:flex;justify-content:center;align-items:center;z-index:1000}.login-content{background-color:#1a1a1a;padding:2rem;border-radius:8px;border:1px solid #333;min-width:300px}.login-content h2{margin-bottom:1.5rem;font-size:1.25rem}.login-content form{display:flex;flex-direction:column;gap:1rem}.login-content input{padding:.75rem;background-color:#2a2a2a;border:1px solid #444;border-radius:4px;color:#fff;font-size:1rem}.login-content input:focus{outline:none;border-color:#4a9eff}.login-actions{display:flex;gap:.5rem}.login-actions button{flex:1;padding:.75rem;background-color:#2a2a2a;border:1px solid #444;border-radius:4px;color:#fff}.login-actions button[type=submit]{background-color:#4a9eff;border-color:#4a9eff}.login-actions button:hover:not(:disabled){opacity:.9}.login-actions button:disabled{opacity:.5;cursor:not-allowed}.error{color:#ff4a4a;font-size:.875rem}.media-modal{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000f2;display:flex;justify-content:center;align-items:center;z-index:2000}.modal-content{position:relative;width:100vw;height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;cursor:pointer}.modal-close{position:absolute;top:1rem;right:1rem;background:none;border:none;color:#fff;font-size:3rem;line-height:1;padding:0;width:3rem;height:3rem;display:flex;align-items:center;justify-content:center;z-index:10;transition:opacity .2s}.modal-close:hover{opacity:.7}.modal-media{width:100%;height:calc(100vh - 8rem);display:flex;justify-content:center;align-items:center}.modal-media img,.modal-media video{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.modal-info{position:absolute;bottom:2rem;left:50%;transform:translate(-50%);background-color:#000000b3;padding:1rem 2rem;border-radius:4px;text-align:center}.modal-info p{margin:.25rem 0}.modal-counter{color:#999;font-size:.875rem}.album-manager{background-color:#1a1a1a;border:1px solid #333;border-radius:8px;padding:1.5rem;margin-bottom:2rem}.album-manager-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.album-manager-header h3{margin:0;font-size:1.25rem}.create-album-btn{background-color:#4a9eff;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;font-weight:500;transition:background-color .2s}.create-album-btn:hover{background-color:#3a8eef}.create-album-form{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem;padding:1rem;background-color:#0a0a0a;border-radius:4px}.create-album-form input{padding:.75rem;background-color:#2a2a2a;border:1px solid #444;border-radius:4px;color:#fff;font-size:1rem}.create-album-form input:focus{outline:none;border-color:#4a9eff}.create-album-form button{padding:.75rem;background-color:#4a9eff;color:#fff;border:none;border-radius:4px;font-weight:500}.album-error{color:#ff4a4a;margin-bottom:1rem}.albums-list{display:flex;flex-direction:column;gap:.5rem}.album-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background-color:#2a2a2a;border:1px solid #333;border-radius:4px;cursor:pointer;transition:all .2s}.album-item:hover{background-color:#3a3a3a;border-color:#4a9eff}.album-info{flex:1}.album-info h4{margin:0 0 .25rem;font-size:1rem}.album-description{margin:.25rem 0;color:#999;font-size:.875rem}.album-count{margin:.25rem 0 0;color:#666;font-size:.875rem}.delete-album-btn{background:none;border:none;color:#ff4a4a;font-size:1.5rem;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s}.delete-album-btn:hover{background-color:#ff4a4a1a}.album-manager-loading{text-align:center;padding:2rem;color:#999}.gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem}.gallery-item{aspect-ratio:1;overflow:hidden;border-radius:8px;cursor:pointer;position:relative;background-color:#1a1a1a;border:1px solid #333;transition:transform .2s,border-color .2s}.gallery-item:hover{transform:scale(1.02);border-color:#4a9eff}.gallery-item img,.gallery-item video{width:100%;height:100%;object-fit:cover}.video-thumbnail{position:relative;width:100%;height:100%}.video-thumbnail video{pointer-events:none}.play-icon{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:4rem;height:4rem;background-color:#000000b3;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;color:#fff;pointer-events:none}.gallery-message{text-align:center;padding:4rem 2rem;font-size:1.25rem;color:#999}.gallery-message.error{color:#ff4a4a}.admin-panel{max-width:1400px;margin:0 auto}.upload-section{background-color:#1a1a1a;padding:2rem;border-radius:8px;border:1px solid #333;margin-bottom:2rem}.upload-section h2{margin-bottom:1rem;font-size:1.25rem}.album-select{width:100%;padding:.75rem;background-color:#2a2a2a;border:1px solid #444;border-radius:4px;color:#fff;font-size:1rem;margin-bottom:1rem;cursor:pointer}.album-select:focus{outline:none;border-color:#4a9eff}.upload-button{display:inline-block;padding:1rem 2rem;background-color:#4a9eff;color:#fff;border-radius:4px;cursor:pointer;transition:background-color .2s;font-weight:500}.upload-button:hover{background-color:#3a8eef}.upload-button input{display:none}.error-message{color:#ff4a4a;margin-top:1rem}.media-list h2{margin-bottom:1.5rem;font-size:1.25rem}.loading-message,.empty-message{text-align:center;padding:3rem;color:#999}.media-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem}.media-card{background-color:#1a1a1a;border:1px solid #333;border-radius:8px;overflow:hidden;transition:border-color .2s}.media-card:hover{border-color:#4a9eff}.media-preview{aspect-ratio:1;overflow:hidden;background-color:#0a0a0a}.media-preview img,.media-preview video{width:100%;height:100%;object-fit:cover}.media-info{padding:1rem}.media-filename{font-weight:500;margin-bottom:.5rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.media-date{color:#999;font-size:.875rem;margin-bottom:1rem}.delete-button{width:100%;padding:.5rem;background-color:#ff4a4a;color:#fff;border:none;border-radius:4px;font-weight:500;transition:background-color .2s}.delete-button:hover{background-color:#ef3a3a}.app{min-height:100vh;display:flex;flex-direction:column}.header{background-color:#1a1a1a;padding:1rem 2rem;border-bottom:1px solid #333;display:flex;justify-content:space-between;align-items:center}.header h1{font-size:1.5rem;font-weight:600}.header nav{display:flex;gap:1rem;align-items:center}.header button{background-color:#2a2a2a;color:#fff;border:1px solid #444;padding:.5rem 1rem;border-radius:4px;transition:all .2s}.header button:hover{background-color:#3a3a3a;border-color:#666}.header button.active{background-color:#4a9eff;border-color:#4a9eff}.main{flex:1;padding:2rem}*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#0a0a0a;color:#fff}button{cursor:pointer;font-family:inherit}input{font-family:inherit}
