:root{font-family:SF Pro Display,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html,body{margin:0;padding:0;min-height:100vh;overflow-x:hidden}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2)}#root{width:100%;margin:0;padding:0}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}*{margin:0;padding:0;box-sizing:border-box}:root{--primary-gradient: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--secondary-gradient: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);--tertiary-gradient: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%);--accent-gradient: linear-gradient(135deg, #ffecd2 0%, #fcb69f 100%);--aurora-gradient: linear-gradient(135deg, #a8edea 0%, #fed6e3 50%, #d299c2 100%);--sunset-gradient: linear-gradient(135deg, #fa709a 0%, #fee140 100%);--ocean-gradient: linear-gradient(135deg, #667eea 0%, #764ba2 50%, #f093fb 100%);--white: #ffffff;--gray-50: #f9fafb;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-400: #9ca3af;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--gray-800: #1f2937;--gray-900: #111827;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--radius-2xl: 1.5rem;--radius-full: 9999px;--duration-fast: .15s;--duration-normal: .3s;--duration-slow: .5s}body{font-family:SF Pro Display,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;background:var(--ocean-gradient);background-attachment:fixed;min-height:100vh;color:var(--gray-800);line-height:1.6;overflow-x:hidden}body:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at 20% 80%,rgba(255,255,255,.1) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(255,255,255,.1) 0%,transparent 50%),radial-gradient(circle at 40% 40%,rgba(255,255,255,.05) 0%,transparent 50%);pointer-events:none;z-index:-1}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#ffffff1a;border-radius:var(--radius-full)}::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:var(--radius-full);transition:background var(--duration-normal) ease}::-webkit-scrollbar-thumb:hover{background:#ffffff80}::selection{background:#ffffff4d;color:var(--white)}::-moz-selection{background:#ffffff4d;color:var(--white)}.app{min-height:100vh;display:flex;flex-direction:column;position:relative}.app:before{content:"";position:fixed;top:0;left:0;width:100%;height:100%;background:var(--ocean-gradient);z-index:9999;opacity:0;pointer-events:none;transition:opacity .5s ease}.app.loading:before{opacity:1;pointer-events:all}.app-nav{background:#ffffff1a;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);padding:1.25rem 2rem;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.15);position:sticky;top:0;z-index:100;transition:all var(--duration-normal) ease}.app-nav:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,#ffffff1a,#ffffff0d,#ffffff1a);pointer-events:none;z-index:-1}.nav-btn{background:none;border:none;font-size:1.3rem;font-weight:700;color:var(--white);cursor:pointer;display:flex;align-items:center;gap:.75rem;transition:all var(--duration-normal) ease;padding:.5rem 1rem;border-radius:var(--radius-xl);position:relative;overflow:hidden}.nav-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left var(--duration-slow) ease}.nav-btn:hover:before{left:100%}.nav-btn:hover{color:var(--white);text-shadow:0 0 20px rgba(255,255,255,.5);transform:translateY(-1px)}.nav-btn.active{color:var(--white);background:#ffffff26;box-shadow:var(--shadow-lg)}.back-btn{background:var(--aurora-gradient);color:var(--white);border:none;padding:.75rem 1.5rem;border-radius:var(--radius-full);cursor:pointer;font-weight:600;font-size:.95rem;transition:all var(--duration-normal) ease;box-shadow:var(--shadow-md);position:relative;overflow:hidden}.back-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left var(--duration-slow) ease}.back-btn:hover:before{left:100%}.back-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-xl)}.app-main{flex:1;padding:2rem;display:flex;justify-content:center;align-items:flex-start;min-height:calc(100vh - 120px)}.home-view{max-width:900px;width:100%;text-align:center;position:relative}.hero-section{margin-bottom:4rem;position:relative}.hero-section:before{content:"";position:absolute;top:-2rem;left:50%;transform:translate(-50%);width:200px;height:200px;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);border-radius:50%;filter:blur(40px);z-index:-1}.app-title{font-size:4rem;font-weight:800;color:var(--white);margin-bottom:1.5rem;display:flex;align-items:center;justify-content:center;gap:1.5rem;text-shadow:0 4px 20px rgba(0,0,0,.3);letter-spacing:-.02em}.title-icon{animation:sparkle 4s ease-in-out infinite;filter:drop-shadow(0 0 10px rgba(255,255,255,.5))}@keyframes sparkle{0%,to{transform:rotate(0) scale(1);opacity:1;filter:drop-shadow(0 0 10px rgba(255,255,255,.5))}25%{transform:rotate(90deg) scale(1.05);opacity:.9;filter:drop-shadow(0 0 15px rgba(255,255,255,.7))}50%{transform:rotate(180deg) scale(1.1);opacity:.8;filter:drop-shadow(0 0 20px rgba(255,255,255,.9))}75%{transform:rotate(270deg) scale(1.05);opacity:.9;filter:drop-shadow(0 0 15px rgba(255,255,255,.7))}}.app-subtitle{font-size:1.5rem;color:#fffffff2;margin-bottom:1.5rem;font-weight:400;text-shadow:0 2px 10px rgba(0,0,0,.2);letter-spacing:.02em}.app-description{font-size:1.1rem;color:#ffffffd9;line-height:1.8;max-width:600px;margin:0 auto;text-shadow:0 2px 8px rgba(0,0,0,.2);font-weight:300}.stats-section{margin-bottom:4rem}.stats-card{background:#ffffff1a;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:var(--radius-2xl);padding:2.5rem 3rem;display:inline-flex;flex-direction:column;align-items:center;border:1px solid rgba(255,255,255,.2);box-shadow:var(--shadow-xl);position:relative;overflow:hidden;transition:all var(--duration-normal) ease}.stats-card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);transition:left 2s ease}.stats-card:hover:before{left:100%}.stats-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-2xl)}.stats-number{font-size:3.5rem;font-weight:800;color:var(--white);display:block;text-shadow:0 4px 20px rgba(0,0,0,.3);margin-bottom:.5rem}.stats-label{color:#ffffffe6;font-size:1rem;font-weight:500;text-shadow:0 2px 8px rgba(0,0,0,.2)}.action-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:2rem;max-width:700px;margin:0 auto}.action-card{background:#ffffff1a;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.2);border-radius:var(--radius-2xl);padding:2.5rem 2rem;cursor:pointer;transition:all var(--duration-normal) ease;display:flex;flex-direction:column;align-items:center;gap:1rem;text-align:center;box-shadow:var(--shadow-lg);position:relative;overflow:hidden;color:var(--white)}.action-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:var(--primary-gradient);opacity:0;transition:opacity var(--duration-normal) ease;z-index:-1}.action-card.primary:before{background:var(--primary-gradient)}.action-card.secondary:before{background:var(--secondary-gradient)}.action-card.tertiary:before{background:var(--tertiary-gradient)}.action-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:var(--shadow-2xl)}.action-card:hover:before{opacity:.9}.action-card svg{transition:all var(--duration-normal) ease}.action-card:hover svg{transform:scale(1.1);filter:drop-shadow(0 0 10px rgba(255,255,255,.5))}.action-card span{font-size:1.2rem;font-weight:700;text-shadow:0 2px 8px rgba(0,0,0,.3);z-index:1}.action-card small{font-size:.9rem;opacity:.9;font-weight:400;text-shadow:0 2px 8px rgba(0,0,0,.3);z-index:1}.create-moment{background:#ffffff1a;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:var(--radius-2xl);padding:2.5rem;max-width:650px;width:100%;box-shadow:var(--shadow-2xl);border:1px solid rgba(255,255,255,.2);position:relative;overflow:hidden}.create-moment:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#ffffff1a,#ffffff0d,#ffffff1a);pointer-events:none;z-index:-1}.create-moment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2.5rem}.create-moment-header h3{font-size:1.8rem;font-weight:700;color:var(--white);text-shadow:0 2px 10px rgba(0,0,0,.3)}.close-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);font-size:1.5rem;cursor:pointer;color:var(--white);padding:.75rem;border-radius:var(--radius-full);transition:all var(--duration-normal) ease;width:3rem;height:3rem;display:flex;align-items:center;justify-content:center}.close-btn:hover{background:#fff3;transform:scale(1.1);box-shadow:var(--shadow-lg)}.create-form{display:flex;flex-direction:column;gap:2rem}.author-input input,.content-input textarea,.image-input input{width:100%;border:2px solid rgba(255,255,255,.2);border-radius:var(--radius-xl);padding:1.25rem;font-size:1rem;transition:all var(--duration-normal) ease;font-family:inherit;resize:none;background:#ffffff1a;color:var(--white);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.author-input input::placeholder,.content-input textarea::placeholder,.image-input input::placeholder{color:#ffffffb3}.author-input input:focus,.content-input textarea:focus,.image-input input:focus{outline:none;border-color:#ffffff80;box-shadow:0 0 0 3px #ffffff1a;background:#ffffff26}.content-input{position:relative}.char-count{position:absolute;bottom:1rem;right:1.25rem;font-size:.85rem;color:#ffffffb3;background:#0000004d;padding:.25rem .5rem;border-radius:var(--radius-md);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.image-input,.lifespan-input{display:flex;align-items:center;gap:1rem}.image-input svg,.lifespan-input svg{color:var(--white);flex-shrink:0;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.lifespan-input select{border:2px solid rgba(255,255,255,.2);border-radius:var(--radius-lg);padding:.75rem 1rem;font-size:1rem;cursor:pointer;background:#ffffff1a;color:var(--white);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:all var(--duration-normal) ease}.lifespan-input select:focus{outline:none;border-color:#ffffff80;box-shadow:0 0 0 3px #ffffff1a}.lifespan-input select option{background:var(--gray-800);color:var(--white)}.lifespan-hint{font-size:.95rem;color:#fffc;font-weight:500}.form-actions{display:flex;gap:1.5rem;justify-content:flex-end;margin-top:1.5rem}.cancel-btn,.submit-btn{padding:1rem 2rem;border-radius:var(--radius-xl);font-weight:600;font-size:1rem;cursor:pointer;transition:all var(--duration-normal) ease;display:flex;align-items:center;gap:.75rem;position:relative;overflow:hidden}.cancel-btn{background:#ffffff1a;border:2px solid rgba(255,255,255,.3);color:var(--white);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.cancel-btn:hover{background:#fff3;transform:translateY(-2px);box-shadow:var(--shadow-lg)}.submit-btn{background:var(--aurora-gradient);border:none;color:var(--white);box-shadow:var(--shadow-lg)}.submit-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left var(--duration-slow) ease}.submit-btn:hover:not(:disabled):before{left:100%}.submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-xl)}.submit-btn:disabled{opacity:.5;cursor:not-allowed}.moment-card{background:#ffffff1a;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:var(--radius-2xl);padding:2rem;margin-bottom:1.5rem;box-shadow:var(--shadow-lg);border:1px solid rgba(255,255,255,.2);transition:all var(--duration-normal) ease;position:relative;overflow:hidden}.moment-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#ffffff1a,#ffffff0d,#ffffff1a);pointer-events:none;z-index:-1}.moment-card:hover{transform:translateY(-5px) scale(1.01);box-shadow:var(--shadow-2xl)}.moment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;font-size:.9rem;color:#fffc}.moment-author,.moment-time{display:flex;align-items:center;gap:.75rem;font-weight:500}.moment-author svg,.moment-time svg{filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.moment-content p{color:var(--white);line-height:1.7;margin-bottom:1.5rem;white-space:pre-wrap;font-size:1.05rem;text-shadow:0 2px 8px rgba(0,0,0,.3)}.moment-image{margin-top:1.5rem}.moment-image img{width:100%;max-height:350px;object-fit:cover;border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);transition:all var(--duration-normal) ease}.moment-image img:hover{transform:scale(1.02);box-shadow:var(--shadow-xl)}.moment-footer{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.2)}.lifespan-indicator{display:flex;align-items:center;gap:1.5rem}.lifespan-bar{flex:1;height:6px;background:#fff3;border-radius:var(--radius-full);overflow:hidden;box-shadow:inset 0 2px 4px #0000001a}.lifespan-progress{height:100%;background:var(--sunset-gradient);border-radius:var(--radius-full);transition:all var(--duration-normal) ease;box-shadow:0 0 10px #ffffff4d}.lifespan-text{font-size:.85rem;color:#fffc;white-space:nowrap;font-weight:500;text-shadow:0 2px 4px rgba(0,0,0,.3)}.drift-bottle{max-width:700px;width:100%;text-align:center}.drift-bottle-header{margin-bottom:3rem}.drift-bottle-header h2{font-size:2.5rem;font-weight:700;color:var(--white);margin-bottom:1rem;text-shadow:0 4px 20px rgba(0,0,0,.3)}.drift-bottle-header p{color:#ffffffe6;font-size:1.1rem;text-shadow:0 2px 8px rgba(0,0,0,.2)}.drift-bottle-content{min-height:450px;display:flex;align-items:center;justify-content:center;margin-bottom:3rem}.searching-indicator{text-align:center;color:var(--white)}.ripple-container{position:relative;width:120px;height:120px;margin:0 auto 2rem}.ripple{position:absolute;top:50%;left:50%;width:24px;height:24px;border:3px solid rgba(255,255,255,.7);border-radius:50%;transform:translate(-50%,-50%);animation:ripple 3s infinite ease-out}.ripple:nth-child(2){animation-delay:1s}.ripple:nth-child(3){animation-delay:2s}@keyframes ripple{0%{width:24px;height:24px;opacity:1;border-width:3px}50%{opacity:.7;border-width:2px}to{width:120px;height:120px;opacity:0;border-width:1px}}.empty-state{color:#fffc;text-align:center;padding:3rem}.empty-state svg{margin-bottom:1.5rem;opacity:.6;filter:drop-shadow(0 4px 8px rgba(0,0,0,.3))}.empty-state h3{font-size:1.3rem;margin-bottom:.5rem;color:var(--white)}.drifted-moment{animation:drift-in 1s ease-out}@keyframes drift-in{0%{opacity:0;transform:translateY(50px) rotateX(20deg) scale(.9);filter:blur(10px)}50%{opacity:.7;filter:blur(5px)}to{opacity:1;transform:translateY(0) rotateX(0) scale(1);filter:blur(0)}}.drift-btn{background:var(--secondary-gradient);color:var(--white);border:none;padding:1.25rem 2.5rem;border-radius:var(--radius-full);font-weight:700;font-size:1.1rem;cursor:pointer;display:flex;align-items:center;gap:.75rem;margin:0 auto;transition:all var(--duration-normal) ease;box-shadow:var(--shadow-lg);position:relative;overflow:hidden}.drift-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);transition:left var(--duration-slow) ease}.drift-btn:hover:not(:disabled):before{left:100%}.drift-btn:hover:not(:disabled){transform:translateY(-3px) scale(1.05);box-shadow:var(--shadow-2xl)}.drift-btn:disabled{opacity:.6;cursor:not-allowed}.time-capsule{max-width:900px;width:100%}.time-capsule-header{text-align:center;margin-bottom:3rem}.time-capsule-header h2{font-size:2.5rem;font-weight:700;color:var(--white);margin-bottom:1rem;text-shadow:0 4px 20px rgba(0,0,0,.3)}.time-capsule-header p{color:#ffffffe6;font-size:1.1rem;text-shadow:0 2px 8px rgba(0,0,0,.2)}.date-selector{background:#ffffff1a;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:var(--radius-2xl);padding:2rem;display:flex;align-items:center;gap:1.5rem;margin-bottom:3rem;box-shadow:var(--shadow-lg);border:1px solid rgba(255,255,255,.2);transition:all var(--duration-normal) ease}.date-selector:hover{transform:translateY(-2px);box-shadow:var(--shadow-xl)}.date-selector svg{color:var(--white);filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.date-input{border:2px solid rgba(255,255,255,.2);border-radius:var(--radius-lg);padding:.75rem 1rem;font-size:1rem;cursor:pointer;background:#ffffff1a;color:var(--white);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:all var(--duration-normal) ease}.date-input:focus{outline:none;border-color:#ffffff80;box-shadow:0 0 0 3px #ffffff1a}.date-display{font-weight:600;color:var(--white);font-size:1.1rem;text-shadow:0 2px 8px rgba(0,0,0,.3)}.moments-container{min-height:450px}.loading-indicator{text-align:center;color:var(--white);padding:4rem}.loading-indicator svg{margin-bottom:2rem;animation:pulse 2s infinite ease-in-out;filter:drop-shadow(0 4px 8px rgba(0,0,0,.3))}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.05)}}.empty-capsule{text-align:center;color:#fffc;padding:4rem}.empty-capsule svg{margin-bottom:2rem;opacity:.6;filter:drop-shadow(0 4px 8px rgba(0,0,0,.3))}.empty-capsule h3{font-size:1.3rem;margin-bottom:1rem;color:var(--white)}.empty-capsule span{display:block;font-size:1rem;opacity:.8;margin-top:.5rem}.moments-count{text-align:center;color:#ffffffe6;margin-bottom:2.5rem;font-weight:600;font-size:1.1rem;text-shadow:0 2px 8px rgba(0,0,0,.3)}.moments-grid{display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.app-footer{background:#0003;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);padding:1.5rem 2rem;text-align:center;color:#fffc;font-size:1rem;border-top:1px solid rgba(255,255,255,.15);font-weight:400;text-shadow:0 2px 8px rgba(0,0,0,.3)}@media (max-width: 768px){.app-main{padding:1rem}.app-title{font-size:2.8rem;gap:1rem}.app-subtitle{font-size:1.2rem}.app-description{font-size:1rem}.action-grid{grid-template-columns:1fr;gap:1.5rem}.action-card{padding:2rem 1.5rem}.moments-grid{grid-template-columns:1fr;gap:1.5rem}.app-nav{padding:1rem 1.5rem}.nav-btn{font-size:1.1rem;gap:.5rem}.date-selector{flex-direction:column;align-items:stretch;text-align:center;gap:1rem;padding:1.5rem}.create-moment{padding:2rem;margin:1rem}.create-moment-header h3{font-size:1.5rem}.form-actions{flex-direction:column;gap:1rem}.cancel-btn,.submit-btn{width:100%;justify-content:center}.drift-bottle-header h2,.time-capsule-header h2{font-size:2rem}.stats-card{padding:2rem}.stats-number{font-size:2.5rem}}@media (max-width: 480px){.app-title{font-size:2.2rem;flex-direction:column;gap:.5rem}.hero-section,.stats-section{margin-bottom:3rem}.action-card,.moment-card{padding:1.5rem}.create-moment{padding:1.5rem;margin:.5rem}.app-nav{padding:1rem}.back-btn{padding:.5rem 1rem;font-size:.9rem}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes glow{0%,to{box-shadow:0 0 20px #fff3}50%{box-shadow:0 0 30px #fff6}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.stats-card{animation:float 6s ease-in-out infinite}.action-card:nth-child(1){animation:float 6s ease-in-out infinite;animation-delay:.5s}.action-card:nth-child(2){animation:float 6s ease-in-out infinite;animation-delay:1s}.action-card:nth-child(3){animation:float 6s ease-in-out infinite;animation-delay:1.5s}.moment-card:hover{animation:glow 2s ease-in-out infinite}.loading-shimmer{background:linear-gradient(90deg,#ffffff1a,#ffffff4d,#ffffff1a);background-size:200% 100%;animation:shimmer 2s infinite}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid rgba(255,255,255,.5);outline-offset:2px}button:disabled,input:disabled,textarea:disabled,select:disabled{opacity:.5;cursor:not-allowed;filter:grayscale(50%)}.page-transition-enter{opacity:0;transform:translateY(20px)}.page-transition-enter-active{opacity:1;transform:translateY(0);transition:opacity .3s ease,transform .3s ease}.page-transition-exit{opacity:1;transform:translateY(0)}.page-transition-exit-active{opacity:0;transform:translateY(-20px);transition:opacity .3s ease,transform .3s ease}
