:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:#ffffffde;font-synthesizer:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#050505;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-weight:400;line-height:1.5}body{background:radial-gradient(circle at 50% -20%,#2a2a2a,#050505);place-items:center;min-width:320px;min-height:100vh;margin:0;display:flex}#root{box-sizing:border-box;flex-direction:column;align-items:center;gap:1.5rem;width:100%;max-width:600px;margin:0 auto;padding:2rem;display:flex}.glass-panel{-webkit-backdrop-filter:blur(20px);box-sizing:border-box;background:#ffffff08;border:1px solid #ffffff0d;border-radius:24px;width:100%;padding:2rem;box-shadow:0 8px 32px #0000004d}button{color:#fff;cursor:pointer;background-color:#1a1a1a;border:1px solid #0000;border-radius:12px;padding:.8em 1.2em;font-family:inherit;font-size:1rem;font-weight:500;transition:all .25s}button:hover{background-color:#2a2a2a;border-color:#fff3}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}input[type=password]{color:#fff;box-sizing:border-box;background:#0003;border:1px solid #ffffff1a;border-radius:12px;width:100%;margin-bottom:1rem;padding:1rem;font-size:1.1rem;transition:border-color .3s}input[type=password]:focus{border-color:#ffffff80;outline:none}.auth-container{text-align:center}.auth-container h1{letter-spacing:-.02em;margin-bottom:.5rem;font-size:2rem;font-weight:600}.auth-container p{color:#ffffff80;margin-bottom:2rem}.main-nav{box-sizing:border-box;background:#0000004d;border:1px solid #ffffff0d;border-radius:16px;width:100%;margin-bottom:.5rem;padding:4px;display:flex}.nav-btn{color:#ffffff80;background:0 0;border:none;border-radius:12px;flex:1;padding:.8rem;font-size:1rem}.nav-btn.active{color:#fff;background:#ffffff1a;box-shadow:0 4px 12px #0003}.category-toggle{box-sizing:border-box;background:#ffffff0d;border-radius:16px;width:100%;margin-bottom:1.5rem;padding:4px;display:flex}.category-btn{color:#ffffff80;background:0 0;border:none;border-radius:12px;flex:1;padding:1rem;font-size:1.1rem}.category-btn.active{color:#fff;background:#ffffff1a;box-shadow:0 4px 12px #0003}.upload-zone{cursor:pointer;border:2px dashed #ffffff1a;border-radius:24px;flex-direction:column;justify-content:center;align-items:center;padding:4rem 2rem;transition:all .3s;display:flex;position:relative;overflow:hidden}.upload-zone:hover,.upload-zone.drag-active{background:#ffffff05;border-color:#ffffff4d}.upload-zone.uploading{pointer-events:none;opacity:.7}.upload-icon{color:#fffc;width:64px;height:64px;margin-bottom:1rem;transition:transform .3s}.upload-zone:hover .upload-icon{transform:translateY(-5px)}.upload-text{margin-bottom:.5rem;font-size:1.2rem;font-weight:500}.upload-subtext{color:#fff6;font-size:.9rem}input[type=file]{display:none}.status-overlay{-webkit-backdrop-filter:blur(4px);background:#0009;border-radius:24px;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.spinner{animation:1s linear infinite spin}.spinner-large{width:48px;height:48px;margin-bottom:1rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.success-icon{color:#4ade80;width:48px;height:48px;margin-bottom:1rem;animation:.5s cubic-bezier(.175,.885,.32,1.275) bounceIn}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.1)}to{opacity:1;transform:scale(1)}}.header{justify-content:space-between;align-items:center;width:100%;margin-bottom:.5rem;display:flex}.header h2{margin:0;font-weight:600}.logout-btn{background:0 0;border:1px solid #ffffff1a;justify-content:center;align-items:center;padding:.5rem 1rem;font-size:.9rem;display:flex}.gallery-container{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:1rem;width:100%;display:grid}.gallery-item{aspect-ratio:1;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:16px;position:relative;overflow:hidden;box-shadow:0 4px 12px #0003}.gallery-item img{object-fit:cover;width:100%;height:100%;display:block}.delete-btn{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#f87171;opacity:.8;background:#0009;border:none;border-radius:50%;justify-content:center;align-items:center;padding:6px;display:flex;position:absolute;top:8px;right:8px}.delete-btn:hover{opacity:1;color:#ef4444;background:#000c;transform:scale(1.1)}.empty-state{text-align:center;color:#fff6;width:100%;padding:3rem 0}.gallery-loading{justify-content:center;width:100%;padding:3rem 0;display:flex}
