:root{--glass-bg:#ffffff1a;--glass-border:#fff3;--glass-shadow:0 8px 32px 0 #1f26875e;--text-primary:#fff;--text-secondary:#ffffffb3;--accent-color:#ffb8d1}*{box-sizing:border-box;margin:0;padding:0}body{color:var(--text-primary);-webkit-user-select:none;user-select:none;background:linear-gradient(45deg,#1a0b2e,#4b1d52,#1a0b2e) 0 0/300% 300%;min-height:100vh;font-family:Outfit,system-ui,-apple-system,sans-serif;animation:15s infinite gradientBG;overflow:hidden}@keyframes gradientBG{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);border-radius:20px}button{cursor:pointer;color:inherit;background:0 0;border:none;font-family:inherit}input{font-family:inherit}h1,h2,h3,.desktop-title,.gallery-title,.folder-name,.login-header h1{font-family:Playfair Display,serif}.app-container{width:100vw;height:100vh;position:relative;overflow:hidden}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-10px)}to{transform:translateY(0)}}.fade-in{animation:.8s ease-out forwards fadeIn}@keyframes fadeInOpacity{0%{opacity:0}to{opacity:1}}.fade-in-opacity{animation:.8s ease-out forwards fadeInOpacity}.login-container{justify-content:center;align-items:center;width:100vw;height:100vh;display:flex}.login-box{text-align:center;background:#ffffff26;flex-direction:column;align-items:center;width:90%;max-width:400px;padding:40px;display:flex}.login-header{margin-bottom:30px}.heart-icon{color:var(--accent-color);margin-bottom:15px;animation:2s infinite pulse}.login-header h1{color:var(--text-primary);text-shadow:0 2px 4px #0003;font-size:1.5rem;font-weight:600}.login-form{flex-direction:column;gap:20px;width:100%;display:flex}.input-group{align-items:center;display:flex;position:relative}.lock-icon{color:var(--text-secondary);position:absolute;left:15px}input{border:1px solid var(--glass-border);color:#fff;background:#0003;border-radius:12px;outline:none;width:100%;padding:15px 15px 15px 45px;font-size:1rem;transition:all .3s}input::placeholder{color:var(--text-secondary)}input:focus{border-color:var(--accent-color);background:#0000004d}.login-button{background:var(--accent-color);color:#1a0b2e;border-radius:12px;padding:15px;font-size:1rem;font-weight:700;transition:all .3s;box-shadow:0 4px 15px #ffb8d166}.login-button:hover{transform:translateY(-2px);box-shadow:0 6px 20px #ffb8d199}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.1)}to{transform:scale(1)}}@keyframes shake{10%,90%{transform:translate(-1px)}20%,80%{transform:translate(2px)}30%,50%,70%{transform:translate(-4px)}40%,60%{transform:translate(4px)}}.shake{animation:.82s cubic-bezier(.36,.07,.19,.97) both shake}@media (width<=768px){.login-box{width:95%;padding:30px 20px}.login-header h1{font-size:1.2rem}}.folder-container{cursor:pointer;border-radius:20px;flex-direction:column;align-items:center;gap:15px;padding:15px;transition:all .4s cubic-bezier(.175,.885,.32,1.275);animation:6s ease-in-out infinite float;display:flex}.folder-container:hover{transform:translateY(-15px)scale(1.05)}.folder-glass-card{-webkit-backdrop-filter:blur(12px);background:#ffffff26;border:1px solid #fff6;border-radius:30px;justify-content:center;align-items:center;width:140px;height:140px;transition:all .5s cubic-bezier(.25,.8,.25,1);display:flex;position:relative;box-shadow:0 10px 30px #0003,inset 0 2px 10px #fff6}.folder-container:hover .folder-glass-card{background:#ffffff4d;border-color:#fffc;transform:rotate(2deg);box-shadow:0 20px 50px #ffc0cb66,inset 0 2px 15px #fff9}.folder-secret-icon{justify-content:center;align-items:center;display:flex;position:relative}.secret-lock-large{color:#fff;filter:drop-shadow(0 2px 5px #0009);position:absolute}.folder-name{color:#fff;text-shadow:0 2px 4px #00000080;letter-spacing:1px;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0003;border-radius:20px;padding:5px 15px;font-size:1.2rem;font-weight:500}.folder-soon{opacity:.7}.folder-soon:hover{transform:translateY(-10px)scale(1.02)}.soon-badge{-webkit-backdrop-filter:blur(10px);color:#fff;z-index:10;background:#fff3;border:1px solid #fff6;border-radius:20px;align-items:center;gap:5px;padding:6px 10px;font-size:.8rem;font-weight:600;animation:3s ease-in-out infinite float-badge;display:flex;position:absolute;top:-10px;right:-25px;box-shadow:0 4px 15px #0003}.soon-badge span{font-size:1.1rem}@keyframes float-badge{0%,to{transform:translateY(0)rotate(5deg)}50%{transform:translateY(-5px)rotate(-5deg)}}@media (width<=768px){.folder-glass-card{width:100px;height:100px}.folder-name{font-size:1.1rem}}.gallery-container{flex-direction:column;width:100vw;height:100vh;padding:40px;display:flex;position:absolute;top:0;left:0;overflow:hidden}.gallery-container.scrollable{overflow:hidden auto}.gallery-header{z-index:10;justify-content:space-between;align-items:center;min-height:60px;margin-bottom:20px;display:flex;position:relative}.back-button,.view-toggle{color:#fff;cursor:pointer;align-items:center;gap:10px;padding:12px 24px;font-weight:500;transition:all .3s;display:flex}.back-button:hover,.view-toggle:hover{background:#fff3;transform:translateY(-2px)}.gallery-title{text-align:center;color:#fff;letter-spacing:2px;text-shadow:0 4px 15px #fff6;pointer-events:none;font-size:3rem;font-weight:300;position:absolute;left:50%;transform:translate(-50%)}.secret-letter{color:#fff;background:#ffffff26;max-width:600px;margin:30px auto;padding:60px;font-size:1.2rem;line-height:1.8}.secret-letter h3{color:var(--accent-color);text-align:center;margin-bottom:30px;font-size:2.2rem}.polaroid-container{flex:1;width:100%;max-width:1200px;margin:0 auto;position:relative}.spiral-view{justify-content:center;align-items:center;display:flex}.grid-view{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));align-items:start;gap:40px;padding:20px 0 60px;display:grid}.polaroid-positioner{opacity:0;transition:z-index .3s,transform .5s cubic-bezier(.175,.885,.32,1.275)}.spiral-view .polaroid-positioner{pointer-events:none;position:absolute}.grid-view .polaroid-positioner{justify-content:center;display:flex;position:relative}.polaroid-positioner:hover{z-index:200!important}.polaroid{pointer-events:auto;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;background:#fff3;border:1px solid #ffffff4d;border-radius:5px;padding:15px 15px 45px;transition:all .4s cubic-bezier(.175,.885,.32,1.275);display:inline-block;box-shadow:0 15px 35px #0003}.spiral-view .floating-polaroid{animation:4s ease-in-out infinite alternate float-polaroid}@keyframes float-polaroid{0%{margin-top:0;box-shadow:0 15px 35px #0003}to{margin-top:-10px;box-shadow:0 25px 45px #0000004d}}.polaroid:hover{animation-play-state:paused;transform:rotate(0)scale(1.15)translateY(-10px)!important;box-shadow:0 30px 60px #00000080!important}.polaroid img{object-fit:cover;border-radius:3px;width:250px;height:250px;box-shadow:inset 0 0 10px #0000001a}.lightbox{-webkit-backdrop-filter:blur(8px);z-index:1000;background:#000000d9;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.lightbox-image{object-fit:contain;border-radius:10px;max-width:85vw;max-height:85vh;animation:.3s cubic-bezier(.175,.885,.32,1.275) scaleIn;box-shadow:0 0 50px #00000080}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.close-lightbox{color:#fff;background:#ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;transition:all .3s;display:flex;position:absolute;top:30px;right:30px;box-shadow:0 4px 15px #0003}.close-lightbox:hover{background:#ffffff4d;transform:scale(1.1)rotate(90deg)}@media (width<=768px){.gallery-container{padding:20px}.gallery-header{flex-direction:column-reverse;gap:20px;margin-bottom:30px}.gallery-title{font-size:2.2rem;position:relative;left:0;transform:none}.grid-view{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:20px}.polaroid img{width:140px;height:140px}.spiral-view .polaroid{transform-origin:50%;scale:.8}.spiral-view .polaroid:hover{scale:.9!important}.secret-letter{padding:30px 20px;font-size:1rem}.lightbox-image{max-width:95vw;max-height:80vh}.close-lightbox{width:40px;height:40px;top:15px;right:15px}}.desktop-environment{flex-direction:column;align-items:center;width:100vw;height:100vh;padding:8vh 50px;display:flex;position:relative}.desktop-header{text-align:center;margin-bottom:60px;animation:4s ease-in-out infinite float-header}@keyframes float-header{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.desktop-title{color:#fff;text-shadow:0 4px 15px #fff6;letter-spacing:2px;margin-bottom:5px;font-size:3.5rem;font-weight:300}.desktop-subtitle{color:#fffc;letter-spacing:1px;text-shadow:0 2px 5px #00000080;font-size:1.2rem;font-weight:300}.folders-grid{flex-wrap:wrap;justify-content:center;gap:60px;width:100%;max-width:1000px;display:flex}@media (width<=768px){.desktop-environment{height:auto;min-height:100vh;padding:5vh 20px;overflow-y:auto}.desktop-title{margin-bottom:40px;font-size:2rem}.folders-grid{gap:30px}}.particles-container{z-index:0;pointer-events:none;width:100vw;height:100vh;position:absolute;top:0;left:0;overflow:hidden}.particle{opacity:0;animation:linear infinite floatUp;position:absolute;bottom:-10%}.particle.orb{background:radial-gradient(circle,#ffb8d166 0%,#ffb8d100 70%);border-radius:50%}.particle.heart{color:#ffb8d180;filter:drop-shadow(0 0 5px #ffb8d14d);justify-content:center;align-items:center;display:flex}@keyframes floatUp{0%{opacity:0;transform:translateY(0)translate(0)rotate(0)scale(.8)}10%{opacity:1}90%{opacity:1;transform:translateY(-90vh)translate(100px)rotate(180deg)scale(1.2)}to{opacity:0;transform:translateY(-110vh)translate(150px)rotate(360deg)scale(.8)}}.music-player-wrapper{z-index:100;position:absolute;bottom:30px;right:30px}.music-player{border-radius:30px;align-items:center;gap:15px;padding:10px 20px;display:flex}.music-icon{color:var(--accent-color)}.spinning{animation:4s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.control-button{color:#fff;background:#ffffff1a;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;transition:all .3s;display:flex}.control-button:hover{background:#fff3;transform:scale(1.1)}
