body{box-sizing:border-box;margin:0;padding:0}#root{min-height:100vh}.admin-container{color:#f3f4f6;background:radial-gradient(circle at 100% 0,#1a365d 0%,#080f1e 100%);flex-direction:column;align-items:center;min-height:100vh;padding:40px 20px;font-family:Inter,system-ui,-apple-system,sans-serif;display:flex}.auth-card{-webkit-backdrop-filter:blur(16px);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:16px;width:100%;max-width:420px;margin-top:10vh;padding:40px;animation:.6s ease-out fadeIn;box-shadow:0 8px 32px #0000005e}.auth-title{color:#fff;text-align:center;margin-bottom:30px;font-size:24px;font-weight:700}.form-group{flex-direction:column;margin-bottom:20px;display:flex}.form-label{color:#9ca3af;margin-bottom:8px;font-size:13px;font-weight:600}.form-input{color:#fff;background:#ffffff12;border:1px solid #ffffff1a;border-radius:8px;padding:12px 16px;font-size:15px;transition:all .3s}.form-input:focus{background:#ffffff1a;border-color:#fcb900;outline:none;box-shadow:0 0 0 3px #fcb90033}.auth-button{color:#0c162d;cursor:pointer;background:linear-gradient(135deg,#fcb900 0%,#f80 100%);border:none;border-radius:8px;margin-top:10px;padding:14px;font-size:16px;font-weight:700;transition:all .3s}.auth-button:hover{transform:translateY(-2px);box-shadow:0 8px 20px #fcb90066}.dashboard-layout{flex-direction:column;gap:30px;width:100%;max-width:1100px;animation:.6s ease-out fadeIn;display:flex}.dashboard-header{border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:center;padding-bottom:20px;display:flex}.dashboard-title{color:#fff;background:linear-gradient(90deg,#fff,#9ca3af);-webkit-text-fill-color:transparent;-webkit-background-clip:text;font-size:28px;font-weight:800}.logout-btn{color:#d1d5db;cursor:pointer;background:0 0;border:1px solid #fff3;border-radius:6px;padding:8px 16px;font-weight:600;transition:all .3s}.logout-btn:hover{color:#fca5a5;background:#ef444433;border-color:#ef4444}.dashboard-grid{grid-template-columns:1fr;gap:30px;display:grid}@media (width>=768px){.dashboard-grid{grid-template-columns:350px 1fr}}.upload-panel{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff08;border:1px solid #ffffff14;border-radius:16px;height:fit-content;padding:30px;box-shadow:0 4px 20px #0003}.panel-title{color:#fcb900;align-items:center;gap:8px;margin-bottom:20px;font-size:18px;font-weight:700;display:flex}.items-panel{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffff08;border:1px solid #ffffff14;border-radius:16px;padding:30px;box-shadow:0 4px 20px #0003}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:20px;display:grid}.gallery-card{background:#ffffff0d;border:1px solid #ffffff14;border-radius:12px;flex-direction:column;gap:10px;padding:10px;transition:all .3s;display:flex;position:relative}.gallery-card:hover{border-color:#ffffff26;transform:translateY(-3px);box-shadow:0 8px 16px #0000004d}.card-img-wrapper{border-radius:8px;height:120px;overflow:hidden}.card-img{object-fit:cover;width:100%;height:100%}.card-title{color:#e5e7eb;white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.delete-btn{color:#fca5a5;cursor:pointer;text-align:center;background:#ef44441a;border:1px solid #ef444433;border-radius:6px;padding:6px;font-size:12px;font-weight:600;transition:all .3s}.delete-btn:hover{color:#fff;background:#ef4444;border-color:#ef4444}@keyframes fadeIn{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.file-upload-wrapper{text-align:center;cursor:pointer;background:#ffffff0d;border:2px dashed #ffffff26;border-radius:8px;padding:20px;transition:all .3s;position:relative}.file-upload-wrapper:hover{background:#fcb90008;border-color:#fcb900}.file-upload-input{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;top:0;left:0}.file-upload-label{color:#9ca3af;flex-direction:column;align-items:center;gap:8px;font-size:14px;display:flex}.success-alert{color:#34d399;background:#10b98126;border:1px solid #10b981;border-radius:8px;margin-bottom:20px;padding:10px 15px;font-size:14px}.error-alert{color:#fca5a5;background:#ef444426;border:1px solid #ef4444;border-radius:8px;margin-bottom:20px;padding:10px 15px;font-size:14px}.upload-modal-overlay{-webkit-backdrop-filter:blur(8px);z-index:9999;background:#080f1ed9;justify-content:center;align-items:center;animation:.3s ease-out fadeIn;display:flex;position:fixed;inset:0}.upload-modal-content{text-align:center;background:#ffffff0d;border:1px solid #ffffff26;border-radius:16px;flex-direction:column;align-items:center;gap:20px;width:90%;max-width:400px;padding:40px;animation:.3s cubic-bezier(.34,1.56,.64,1) scaleIn;display:flex;box-shadow:0 20px 40px #00000080}.upload-modal-content h3{color:#fff;margin:0;font-size:20px;font-weight:700}.upload-modal-content p{color:#9ca3af;margin:0;font-size:14px;line-height:1.5}.upload-spinner{border:4px solid #ffffff1a;border-top-color:#fcb900;border-radius:50%;width:60px;height:60px;animation:1s linear infinite spin;box-shadow:0 0 15px #fcb90033}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.image-modal-overlay{-webkit-backdrop-filter:blur(10px);z-index:10000;cursor:zoom-out;background:#000000e6;justify-content:center;align-items:center;animation:.3s ease-out fadeIn;display:flex;position:fixed;inset:0}.image-modal-content{cursor:default;justify-content:center;align-items:center;max-width:90vw;max-height:90vh;animation:.3s cubic-bezier(.34,1.56,.64,1) scaleIn;display:flex;position:relative}.image-modal-img{object-fit:contain;border:2px solid #ffffff1a;border-radius:12px;max-width:100%;max-height:85vh;box-shadow:0 25px 50px -12px #0000008c}.image-modal-close{color:#fff;cursor:pointer;background:0 0;border:none;font-size:36px;font-weight:300;line-height:1;transition:color .2s;position:absolute;top:-45px;right:0}.image-modal-close:hover{color:#fcb900}
