*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f8f9fa;color:#333;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:8px;padding:10px 20px;text-decoration:none;transition:all .2s ease}.btn-primary{background-color:#0061fe;color:#fff}.btn-primary:hover{background-color:#0051d4}.btn-secondary{background-color:#f8f9fa;border:1px solid #ddd;color:#333}.btn-secondary:hover{background-color:#e9ecef}.btn-danger{background-color:#dc3545;color:#fff}.btn-danger:hover{background-color:#c82333}.btn-success{background-color:#28a745;color:#fff}.btn-success:hover{background-color:#218838}.form-input{border-radius:6px;font-size:14px;padding:12px 16px;width:100%}.form-input:focus{outline:none}.form-textarea{min-height:100px;resize:vertical}.card{background:var(--card-bg);border-radius:8px;box-shadow:0 2px 4px var(--shadow-color);overflow:hidden;transition:box-shadow .2s ease,background-color .3s ease}.card:hover{box-shadow:0 4px 8px #00000026}.card-header{border-bottom:1px solid var(--border-color);padding:20px;transition:border-color .3s ease}.card-body{padding:20px}.card-footer{background-color:var(--bg-secondary);border-top:1px solid var(--border-color);padding:20px;transition:border-color .3s ease,background-color .3s ease}.grid{grid-gap:20px;display:grid;gap:20px}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.grid-4{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.text-center{text-align:center}.text-right{text-align:right}.mb-1{margin-bottom:8px}.mb-2{margin-bottom:16px}.mb-3{margin-bottom:24px}.mb-4{margin-bottom:32px}.mt-1{margin-top:8px}.mt-2{margin-top:16px}.mt-3{margin-top:24px}.mt-4{margin-top:32px}.p-1{padding:8px}.p-2{padding:16px}.p-3{padding:24px}.p-4{padding:32px}.d-flex{display:flex}.align-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:8px}.gap-2{gap:16px}.gap-3{gap:24px}.w-full{width:100%}.h-full{height:100%}.spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#0061fe;height:40px;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:768px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}.card-body{padding:16px}.btn{font-size:13px;padding:8px 16px}}.theme-toggle{align-items:center;background:var(--card-bg);border:1px solid var(--border-color);border-radius:50%;box-shadow:0 2px 4px var(--shadow-color);color:var(--text-primary);cursor:pointer;display:flex;font-size:16px;height:40px;justify-content:center;transition:all .2s ease;width:40px}.theme-toggle:hover{background:var(--hover-bg);box-shadow:0 4px 8px var(--shadow-color);transform:scale(1.05)}.theme-toggle:active{transform:scale(.95)}.theme-toggle svg{transition:transform .3s ease}.theme-toggle:hover svg{transform:rotate(15deg)}.login-container{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;justify-content:center;min-height:100vh;padding:20px}.login-card{background:var(--card-bg);border-radius:12px;box-shadow:0 20px 40px var(--shadow-color);max-width:400px;padding:40px;transition:background-color .3s ease,box-shadow .3s ease;width:100%}.login-header{margin-bottom:32px;text-align:center}.login-header-top{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.login-theme-toggle{position:absolute;right:20px;top:20px}.login-header h1{color:var(--text-primary);font-size:28px;font-weight:700;margin-bottom:8px;transition:color .3s ease}.login-header p{color:var(--text-secondary);font-size:16px;transition:color .3s ease}.login-form{margin-bottom:24px}.form-label{color:var(--text-primary);display:block;font-weight:500;margin-bottom:8px;transition:color .3s ease}.form-group{margin-bottom:20px}.input-wrapper{align-items:center;display:flex;position:relative}.input-icon{color:var(--text-muted);font-size:18px;left:16px;position:absolute;transition:color .3s ease}.form-input{background-color:var(--input-bg);border:1px solid var(--input-border);color:var(--text-primary);padding-left:48px;padding-right:48px;transition:all .3s ease}.form-input:focus{border-color:var(--button-primary);box-shadow:0 0 0 3px #0061fe1a}.form-input::placeholder,.password-toggle{color:var(--text-muted)}.password-toggle{align-items:center;background:none;border:none;cursor:pointer;display:flex;font-size:18px;position:absolute;right:16px;transition:color .3s ease}.password-toggle:hover{color:var(--text-secondary)}.login-btn{display:block;font-size:16px;font-weight:600;justify-content:center;margin-top:8px;padding:14px 20px;text-align:center;width:100%}.login-btn:disabled{cursor:not-allowed;opacity:.7}.login-footer{border-top:1px solid var(--border-color);color:var(--text-secondary);font-size:14px;padding-top:24px;text-align:center;transition:border-color .3s ease,color .3s ease}.login-footer p{margin-bottom:4px}.login-footer strong{color:var(--text-primary);transition:color .3s ease}@media (max-width:480px){.login-card{padding:24px}.login-header h1{font-size:24px}}.navbar{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);box-shadow:0 2px 4px var(--shadow-color);position:sticky;top:0;transition:background-color .3s ease,border-color .3s ease;z-index:1000}.navbar-container{height:70px;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 20px}.navbar-brand,.navbar-container,.navbar-logo{align-items:center;display:flex}.navbar-logo{color:var(--text-primary);font-size:20px;font-weight:600;gap:12px;text-decoration:none;transition:color .3s ease}.logo-icon{color:#0061fe;font-size:24px}.navbar-menu{align-items:center;display:flex;gap:24px}.navbar-link{border-radius:6px;color:var(--text-secondary);font-weight:500;padding:8px 16px;text-decoration:none;transition:all .2s ease}.navbar-link:hover{background-color:var(--hover-bg);color:var(--button-primary)}.navbar-user{gap:16px}.navbar-user,.user-info{align-items:center;display:flex}.user-info{color:var(--text-secondary);font-size:14px;gap:8px}.user-icon{font-size:16px}.user-email{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logout-btn{align-items:center;background:none;border:1px solid var(--border-color);border-radius:6px;color:var(--text-secondary);cursor:pointer;display:flex;font-size:14px;gap:8px;padding:8px 16px;transition:all .2s ease}.logout-btn:hover{background-color:var(--hover-bg);border-color:var(--text-primary);color:var(--text-primary)}@media (max-width:768px){.navbar-container{padding:0 16px}.logout-btn span,.navbar-logo span,.navbar-menu,.user-email{display:none}}.search-wrapper{align-items:center;display:flex;position:relative}.search-icon{color:var(--text-muted);font-size:16px;left:16px;pointer-events:none;position:absolute;transition:color .3s ease;z-index:1}.search-input{background-color:var(--input-bg);border:1px solid var(--input-border);border-radius:8px;color:var(--text-primary);font-size:14px;min-width:250px;padding:12px 16px 12px 48px;transition:all .3s ease}.search-input:focus{border-color:var(--button-primary);box-shadow:0 0 0 3px #0061fe1a;outline:none}.search-input::placeholder{color:var(--text-muted)}.stats-grid{grid-gap:24px;gap:24px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:40px}.stat-card{border-radius:12px;box-shadow:0 4px 12px var(--shadow-color);padding:32px 24px;text-align:center;transition:all .3s ease}.stat-card:hover{box-shadow:0 8px 24px var(--shadow-color);transform:translateY(-2px)}.stat-number{font-size:36px;margin-bottom:12px}.stat-label{font-weight:500}.actions-bar{gap:24px;margin-bottom:40px}.actions-left{flex:1 1}.events-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(380px,1fr))}.event-card{background:var(--card-bg);border-radius:12px;box-shadow:0 4px 12px var(--shadow-color);overflow:hidden;transition:all .3s ease}.event-card:hover{box-shadow:0 8px 24px var(--shadow-color);transform:translateY(-4px)}.event-header{align-items:flex-start;border-bottom:1px solid var(--border-color);display:flex;gap:16px;justify-content:space-between;padding:24px;transition:border-color .3s ease}.event-title{flex:1 1;font-size:18px;font-weight:600;line-height:1.3;margin:0}.event-actions{display:flex;flex-shrink:0;gap:8px}.btn-sm{font-size:12px;min-width:auto;padding:6px 10px}.event-content{padding:24px}.event-info{color:var(--text-secondary);display:flex;font-size:14px;gap:20px;margin-bottom:12px}.event-date,.event-images{align-items:center;display:flex;gap:6px}.event-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;font-size:14px;line-height:1.5;overflow:hidden}.event-footer{background-color:var(--bg-secondary);border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;padding:24px;transition:border-color .3s ease,background-color .3s ease}@media (max-width:768px){.events-grid{grid-template-columns:1fr}.event-header{align-items:stretch;flex-direction:column;gap:12px}.event-actions{justify-content:flex-end}.event-info{flex-direction:column;gap:8px}}.form-container{margin:0 auto;max-width:600px}.event-form{background:var(--card-bg);border-radius:8px;box-shadow:0 2px 4px var(--shadow-color);padding:32px;transition:background-color .3s ease,box-shadow .3s ease}.date-input-wrapper{align-items:center;display:flex;position:relative}.date-icon{color:var(--text-muted);font-size:18px;left:16px;position:absolute;transition:color .3s ease;z-index:1}.date-input-wrapper .form-input{padding-left:48px}.form-help{color:var(--text-muted);display:block;font-size:12px;line-height:1.4;margin-top:8px;transition:color .3s ease}.form-actions{border-top:1px solid var(--border-color);display:flex;gap:12px;justify-content:flex-end;margin-top:32px;padding-top:24px;transition:border-color .3s ease}@media (max-width:768px){.event-form{padding:24px}.form-actions{flex-direction:column}.form-actions .btn{justify-content:center;width:100%}}.event-detail-header{align-items:flex-start;background:var(--card-bg);border-radius:12px;box-shadow:0 4px 12px var(--shadow-color);display:flex;gap:32px;justify-content:space-between;margin-bottom:32px;padding:32px;transition:background-color .3s ease,box-shadow .3s ease}.header-left{flex:1 1}.back-btn{align-items:center;border-radius:6px;color:var(--text-secondary);display:inline-flex;font-size:14px;gap:8px;margin-bottom:20px;padding:8px 12px;text-decoration:none;transition:all .2s ease}.back-btn:hover{background-color:var(--hover-bg);color:var(--text-primary)}.event-title{color:var(--text-primary);font-size:32px;font-weight:700;line-height:1.2;margin:0 0 16px;transition:color .3s ease}.event-meta{color:var(--text-secondary);display:flex;font-size:15px;gap:24px;margin-bottom:16px}.event-date,.event-images-count{align-items:center;display:flex;gap:6px}.event-description{color:var(--text-secondary);font-size:16px;line-height:1.6;margin:0;max-width:600px;transition:color .3s ease}.header-actions{align-items:flex-start;display:flex;flex-shrink:0;gap:16px}.upload-section{margin-bottom:32px}.dropzone{background:var(--card-bg);border:2px dashed var(--border-color);border-radius:12px;cursor:pointer;padding:48px 32px;text-align:center;transition:all .3s ease}.dropzone.active,.dropzone:hover{background-color:var(--hover-bg);border-color:var(--button-primary);box-shadow:0 8px 24px var(--shadow-color);transform:translateY(-2px)}.upload-icon{color:var(--text-muted);font-size:56px;margin-bottom:20px;transition:color .3s ease}.dropzone h3{color:var(--text-primary);font-size:24px;font-weight:600;margin:0 0 12px;transition:color .3s ease}.dropzone p{color:#666;margin:0 0 8px}.dropzone small{color:var(--text-muted);font-size:12px;transition:color .3s ease}.upload-progress{color:var(--button-primary);font-weight:500;margin-top:16px}.images-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));margin-top:32px}.image-card{background:var(--card-bg);border-radius:12px;box-shadow:0 4px 12px var(--shadow-color);overflow:hidden;transition:all .3s ease}.image-card:hover{box-shadow:0 8px 24px var(--shadow-color);transform:translateY(-4px)}.image-preview{cursor:pointer;height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.image-card:hover .image-preview{transform:scale(1.05)}.image-overlay{gap:12px}.image-card:hover .image-overlay{opacity:1}.overlay-btn.delete:hover{background:#dc3545;color:#fff}.image-info{padding:20px}.image-name{color:var(--text-primary);font-size:14px;font-weight:500;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.image-name,.image-size{transition:color .3s ease}.image-size{color:var(--text-secondary);font-size:12px}.lightbox-filename{font-size:16px;font-weight:500;margin-bottom:8px}.lightbox-details{color:#fffc;display:flex;font-size:14px;gap:8px;justify-content:center}@media (max-width:768px){.event-detail-header{flex-direction:column;gap:16px}.header-actions{justify-content:stretch;width:100%}.header-actions .btn{flex:1 1;justify-content:center}.event-title{font-size:24px}.event-meta{flex-direction:column;gap:8px}.dropzone{padding:24px}.images-grid{gap:16px;grid-template-columns:1fr}}.dashboard{display:flex;flex-direction:column;min-height:100vh}.dashboard-content{background-color:var(--bg-primary);flex:1 1;min-height:calc(100vh - 70px);transition:background-color .3s ease}.dashboard-header{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);padding:20px 0;transition:background-color .3s ease,border-color .3s ease}.dashboard-title{color:var(--text-primary);font-size:24px;font-weight:600;margin:0;transition:color .3s ease}.dashboard-subtitle{color:var(--text-secondary);font-size:14px;margin-top:4px;transition:color .3s ease}.stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:30px}.stat-card{background:var(--card-bg);border-radius:8px;box-shadow:0 2px 4px var(--shadow-color);padding:20px;transition:background-color .3s ease,box-shadow .3s ease}.stat-number{color:var(--button-primary);font-size:32px;font-weight:700;margin-bottom:8px}.stat-label{color:var(--text-secondary);font-size:14px;letter-spacing:.5px;text-transform:uppercase;transition:color .3s ease}.actions-bar{background:var(--card-bg);border-radius:8px;box-shadow:0 2px 4px var(--shadow-color);justify-content:space-between;margin-bottom:20px;padding:20px;transition:background-color .3s ease,box-shadow .3s ease}.actions-bar,.actions-left{align-items:center;display:flex}.actions-left{gap:16px}.actions-right{align-items:center;display:flex;gap:12px}@media (max-width:768px){.actions-bar{align-items:stretch;flex-direction:column;gap:16px}.actions-left,.actions-right{justify-content:center}.stats-grid{grid-template-columns:1fr}}.gallery-container{background-color:var(--bg-primary);min-height:100vh;transition:background-color .3s ease}.gallery-header{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);margin-bottom:40px;padding:48px 0;transition:background-color .3s ease,border-color .3s ease}.user-container{border-radius:8px}.gallery-info{margin-bottom:32px}.gallery-title{color:var(--text-primary);font-size:36px;font-weight:700;line-height:1.2;margin:0 0 20px;transition:color .3s ease}.gallery-meta{display:flex;gap:32px;margin-bottom:20px}.meta-item{align-items:center;color:var(--text-secondary);display:flex;font-size:14px;gap:8px}.gallery-description{color:var(--text-secondary);font-size:18px;line-height:1.6;margin:0;max-width:700px;transition:color .3s ease}.gallery-actions{align-items:center;display:flex;flex-wrap:wrap;gap:16px}.gallery-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));margin-bottom:48px}.gallery-item{background:var(--card-bg);border-radius:12px;box-shadow:0 4px 12px var(--shadow-color);overflow:hidden;position:relative;transition:all .3s ease}.gallery-item:hover{box-shadow:0 8px 24px var(--shadow-color);transform:translateY(-4px)}.image-container{aspect-ratio:4/3;overflow:hidden;position:relative}.gallery-image{cursor:pointer;height:100%;object-fit:cover;transition:transform .3s ease;width:100%}.gallery-item:hover .gallery-image{transform:scale(1.05)}.image-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .2s ease}.gallery-item:hover .image-overlay{opacity:1}.overlay-btn{align-items:center;background:#fff;border:none;border-radius:50%;color:#333;cursor:pointer;display:flex;font-size:16px;height:40px;justify-content:center;margin:0 4px;transition:all .2s ease;width:40px}.overlay-btn:hover{background:#f8f9fa;transform:scale(1.1)}.download-btn{align-items:center;background:#fff;border:none;border-radius:50%;color:#333;cursor:pointer;display:flex;font-size:18px;height:48px;justify-content:center;transition:all .2s ease;width:48px}.download-btn:hover{background:#f8f9fa;transform:scale(1.1)}.lightbox{background:#000000e6;bottom:0;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1000}.lightbox,.lightbox-content{align-items:center;display:flex}.lightbox-content{flex-direction:column;max-height:90vh;max-width:90vw;position:relative}.lightbox-close{align-items:center;background:none;border:none;color:#fff;cursor:pointer;display:flex;font-size:32px;height:40px;justify-content:center;padding:0;position:absolute;right:0;top:-50px;width:40px}.lightbox-image{border-radius:8px;max-height:70vh;max-width:100%;object-fit:contain}.lightbox-info{color:#fff;margin-top:20px;text-align:center}.lightbox-filename{color:#ccc;font-size:14px;margin-bottom:12px}@media (max-width:768px){.gallery-header{padding:24px 0}.gallery-title{font-size:24px}.gallery-meta{gap:8px}.gallery-actions,.gallery-meta{flex-direction:column}.gallery-grid{gap:16px;grid-template-columns:1fr}.lightbox-content{max-width:95vw}.lightbox-close{right:0;top:-40px}}.App{display:flex;flex-direction:column;min-height:100vh}.container{margin:0 auto;max-width:1200px;padding:40px 24px}.page-header{background:#fff;border-bottom:1px solid #eee;margin-bottom:30px}.page-title{color:#333;font-size:28px;font-weight:600;margin:0}.page-subtitle{color:#666;font-size:16px;margin-top:8px}.content-wrapper{flex:1 1;padding:20px 0}.loading-container{align-items:center;display:flex;justify-content:center;min-height:400px}.error-container{padding:40px 20px;text-align:center}.error-title{color:#dc3545;font-size:24px;margin-bottom:16px}.error-message{color:#666;margin-bottom:24px}.empty-state{color:#666;padding:60px 20px;text-align:center}.empty-state-icon{color:#ddd;font-size:48px;margin-bottom:16px}.empty-state-title{color:#333;font-size:20px;font-weight:500;margin-bottom:8px}.empty-state-message{color:#666;font-size:14px}@media (max-width:768px){.container{padding:0 16px}.page-header{margin-bottom:20px;padding:16px 24px}.page-title{font-size:24px}.content-wrapper{padding:16px 0}}[data-theme=dark]{--bg-primary:#1a1a1a;--bg-secondary:#2d2d2d;--bg-tertiary:#3a3a3a;--text-primary:#fff;--text-secondary:#b0b0b0;--text-muted:#888;--border-color:#404040;--shadow-color:#0000004d;--hover-bg:#404040;--card-bg:#2d2d2d;--input-bg:#3a3a3a;--input-border:#404040;--button-primary:#0061fe;--button-secondary:#404040;--button-hover:#0051d4;--danger-color:#dc3545;--success-color:#28a745;--warning-color:#ffc107}[data-theme=light]{--bg-primary:#fff;--bg-secondary:#f8f9fa;--bg-tertiary:#fff;--text-primary:#333;--text-secondary:#666;--text-muted:#888;--border-color:#e9ecef;--shadow-color:#0000001a;--hover-bg:#f8f9fa;--card-bg:#fff;--input-bg:#fff;--input-border:#ced4da;--button-primary:#0061fe;--button-secondary:#6c757d;--button-hover:#0051d4;--danger-color:#dc3545;--success-color:#28a745;--warning-color:#ffc107}.App{color:var(--text-primary);transition:background-color .3s ease,color .3s ease}.App,.container{background-color:var(--bg-primary)}.page-header{background-color:var(--bg-secondary);border-bottom-color:var(--border-color);border-radius:8px;margin-bottom:40px;padding:32px 24px}.page-title{color:var(--text-primary)}.empty-state,.page-subtitle{color:var(--text-secondary)}.empty-state-title{color:var(--text-primary)}.empty-state-message{color:var(--text-secondary)}
/*# sourceMappingURL=main.d46c944c.css.map*/