:root{--glass-bg: rgba(255, 255, 255, .08);--glass-border: 1px solid rgba(255, 255, 255, .1);--glass-shadow: 0 8px 32px 0 rgba(31, 38, 135, .2);--primary-gradient: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--primary-light: rgba(102, 126, 234, .2);--white: rgba(255, 255, 255, .95);--white-muted: rgba(255, 255, 255, .7);--error-gradient: linear-gradient(135deg, #ff6b6b 0%, #ee5253 100%);--navbar-height: 80px;--transition-smooth: all .3s cubic-bezier(.4, 0, .2, 1)}.navbar{display:flex;justify-content:space-between;align-items:center;padding:0 2.5rem;height:var(--navbar-height);position:sticky;top:0;z-index:1000;background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:var(--glass-border);box-shadow:var(--glass-shadow);animation:slideDown .5s ease-out}.navbar-brand{display:flex;align-items:center}.brand-link{display:flex;align-items:center;gap:.5rem;text-decoration:none;transition:var(--transition-smooth)}.brand-icon{font-size:1.75rem;filter:drop-shadow(0 4px 8px rgba(102,126,234,.3));transition:var(--transition-smooth)}.brand-text{font-size:1.5rem;font-weight:800;background:linear-gradient(135deg,#fff,#ffffffe6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;text-shadow:0 2px 10px rgba(102,126,234,.3);letter-spacing:.5px}.brand-link:hover .brand-icon{transform:rotate(10deg) scale(1.1)}.brand-link:hover .brand-text{background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.mobile-menu-btn{display:none;flex-direction:column;justify-content:space-around;width:30px;height:30px;background:transparent;border:none;cursor:pointer;padding:0}.hamburger-line{width:30px;height:2px;background:var(--white);border-radius:10px;transition:var(--transition-smooth)}.navbar-links-container{flex:1;display:flex;justify-content:center;margin:0 2rem}.navbar-links{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;justify-content:center}.nav-link{position:relative;color:var(--white-muted);text-decoration:none;padding:.75rem 1.25rem;border-radius:12px;font-size:.95rem;font-weight:500;letter-spacing:.3px;transition:var(--transition-smooth);display:flex;flex-direction:column;align-items:center}.nav-label{position:relative;z-index:1;transition:var(--transition-smooth)}.nav-underline{position:absolute;bottom:8px;left:50%;transform:translate(-50%);width:0;height:2px;background:linear-gradient(90deg,#667eea,#764ba2);transition:width .3s ease;border-radius:2px}.nav-link:hover{color:var(--white);background:#ffffff0d;transform:translateY(-2px)}.nav-link:hover .nav-underline{width:calc(100% - 2.5rem)}.nav-link.active{color:var(--white);background:linear-gradient(135deg,#667eea26,#764ba226);border:1px solid rgba(102,126,234,.3);box-shadow:0 4px 12px #667eea1a}.nav-link.active .nav-underline{width:calc(100% - 2.5rem);background:linear-gradient(90deg,#667eea,#764ba2);opacity:.8}.nav-icon{margin-right:.5rem;font-size:1.1rem;display:inline-block;transition:transform .3s ease}.nav-link:hover .nav-icon{transform:scale(1.1)}.nav-link.active .nav-icon{filter:drop-shadow(0 0 8px rgba(102,126,234,.5))}.navbar-auth{display:flex;align-items:center;min-width:200px;justify-content:flex-end}.user-menu{display:flex;align-items:center;gap:1rem}.user-greeting{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:#ffffff0d;border-radius:100px;border:1px solid rgba(255,255,255,.1);transition:var(--transition-smooth)}.user-greeting:hover{background:#ffffff14;border-color:#667eea4d}.greeting-emoji{font-size:1.1rem}.greeting-text{color:var(--white-muted);font-size:.95rem;font-weight:500}.user-name{color:var(--white);font-weight:700;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.quick-profile-link{text-decoration:none;color:inherit;display:block;transition:var(--transition-smooth)}.quick-profile-link:hover{transform:translateY(-1px)}.quick-profile-link .user-greeting{cursor:pointer;transition:var(--transition-smooth);border:1px solid transparent}.quick-profile-link:hover .user-greeting{background:#667eea26;border-color:#667eea4d;box-shadow:0 4px 12px #667eea33}.quick-profile-link .greeting-emoji{transition:transform .3s ease}.quick-profile-link:hover .greeting-emoji{animation:wave 1s ease infinite}.logout-btn{display:flex;align-items:center;gap:.5rem;padding:.6rem 1.25rem;background:linear-gradient(135deg,#ef44441a,#dc26261a);border:1px solid rgba(239,68,68,.3);border-radius:100px;color:#ff8a8a;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);letter-spacing:.3px}.logout-icon{font-size:1.1rem;transition:transform .2s ease}.logout-text{transition:color .2s ease}.logout-btn:hover{background:linear-gradient(135deg,#ef444426,#dc262626);border-color:#ef444480;color:#ffa5a5;transform:translateY(-2px);box-shadow:0 8px 16px #ef444426}.logout-btn:hover .logout-icon{transform:translate(3px)}.logout-btn:active{transform:scale(.95);background:linear-gradient(135deg,#ef444433,#dc262633);box-shadow:0 2px 8px #ef44441a}.auth-buttons{display:flex;align-items:center;gap:.75rem}.auth-link{display:flex;align-items:center;gap:.5rem;padding:.6rem 1.25rem;border-radius:100px;text-decoration:none;font-size:.95rem;font-weight:600;transition:var(--transition-smooth);letter-spacing:.3px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.auth-icon{font-size:1.1rem;transition:transform .2s ease}.auth-text{transition:color .2s ease}.login-link{background:#ffffff0d;border:1px solid rgba(255,255,255,.15);color:var(--white-muted)}.login-link:hover{background:#ffffff1a;border-color:#ffffff4d;color:var(--white);transform:translateY(-2px);box-shadow:0 8px 16px #0000001a}.login-link:hover .auth-icon{transform:rotate(5deg)}.register-link{background:linear-gradient(135deg,#667eea33,#764ba233);border:1px solid rgba(102,126,234,.4);color:#a5b4fc}.register-link:hover{background:linear-gradient(135deg,#667eea4d,#764ba24d);border-color:#667eea99;color:#fff;transform:translateY(-2px);box-shadow:0 8px 20px #667eea33}.register-link:hover .auth-icon{transform:rotate(10deg) scale(1.1)}.auth-link:active{transform:scale(.95)}.navbar-auth-mobile{display:none}.mobile-nav-link{display:flex;align-items:center;gap:1rem;padding:1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;color:var(--white);text-decoration:none;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s ease;width:100%}.mobile-nav-link:hover{background:#ffffff1a;border-color:#667eea80}.mobile-nav-link.logout{background:#ef44441a;border-color:#ef44444d;color:#ff8a8a}.mobile-nav-link.logout:hover{background:#ef444426;border-color:#ef444480}.mobile-menu-overlay{display:none}@keyframes slideDown{0%{transform:translateY(-100%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes fadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes wave{0%,to{transform:rotate(0)}25%{transform:rotate(15deg)}75%{transform:rotate(-10deg)}}.navbar-links a{animation:fadeIn .4s ease-out forwards;animation-delay:calc(var(--index) * .05s);opacity:0}@media (max-width: 1200px){.navbar{padding:0 1.5rem}.navbar-links{gap:.25rem}.nav-link{padding:.6rem 1rem;font-size:.9rem}}@media (max-width: 992px){.mobile-menu-btn{display:flex;z-index:1002}.navbar-links-container,.navbar-auth{display:none}.navbar-links-container.mobile-open{display:block;position:fixed;top:80px;left:0;right:0;height:calc(100vh - 80px);background:#1a1a2efa;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:2rem;z-index:1001;overflow-y:auto}.navbar-links-container.mobile-open .navbar-links{flex-direction:column;gap:.75rem;margin-bottom:2rem}.navbar-links-container.mobile-open .nav-link{width:100%;padding:1rem;background:#ffffff0d;border-radius:12px;font-size:1rem}.navbar-auth-mobile{display:flex;flex-direction:column;gap:.75rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.1)}.mobile-menu-overlay{display:block;position:fixed;top:80px;left:0;right:0;bottom:0;background:#000000b3;z-index:1000}}@media (max-width: 768px){.navbar{padding:1rem}.brand-text{font-size:1.25rem}.brand-icon{font-size:1.5rem}.user-greeting .greeting-text,.auth-link .auth-text{display:none}.auth-link{padding:.6rem}.auth-icon{margin:0;font-size:1.25rem}.logout-btn .logout-text{display:none}.logout-btn{padding:.6rem}.logout-icon{margin:0;font-size:1.25rem}.quick-profile-link{display:flex;align-items:center}.quick-profile-link .user-greeting{padding:.5rem}.quick-profile-link .greeting-text{display:none}.quick-profile-link .greeting-emoji{font-size:1.25rem;margin:0}.mobile-menu-btn.active .hamburger-line:nth-child(1){transform:translateY(8px) rotate(45deg)}.mobile-menu-btn.active .hamburger-line:nth-child(2){opacity:0}.mobile-menu-btn.active .hamburger-line:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.navbar-links-container.mobile-open{display:flex!important;position:fixed;top:var(--navbar-height);left:0;right:0;background:#1a1a2efa;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:1rem;z-index:999;animation:slideDown .3s ease;box-shadow:0 8px 32px #0000004d}.navbar-links-container.mobile-open .navbar-links{flex-direction:column;width:100%;gap:.5rem}.navbar-links-container.mobile-open .nav-link{width:100%;padding:1rem;justify-content:flex-start;border-radius:12px;background:#ffffff0d}.navbar-auth.mobile-open{display:flex!important;position:fixed;bottom:0;left:0;right:0;background:#1a1a2efa;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:1rem;z-index:999;border-top:1px solid rgba(255,255,255,.1);animation:slideUp .3s ease}.navbar-auth.mobile-open .user-menu,.navbar-auth.mobile-open .auth-buttons{flex-direction:column;width:100%;gap:.5rem}.navbar-auth.mobile-open .auth-link,.navbar-auth.mobile-open .logout-btn{width:100%;justify-content:center}.mobile-menu-overlay{display:block;position:fixed;top:var(--navbar-height);left:0;right:0;bottom:0;background:#00000080;z-index:998;animation:fadeIn .3s ease}}@media (max-width: 480px){.navbar{padding:.75rem}.brand-text{font-size:1.1rem}.user-greeting{padding:.4rem .8rem}.greeting-emoji{font-size:1rem}.quick-profile-link .user-greeting{padding:.4rem}}@media (prefers-color-scheme: dark){.navbar{background:#0a0a14b3}}:root{--glass-bg: rgba(255, 255, 255, .1);--glass-border: 1px solid rgba(255, 255, 255, .2);--glass-shadow: 0 8px 32px 0 rgba(31, 38, 135, .37);--primary-gradient: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--text-primary: rgba(255, 255, 255, .95);--text-secondary: rgba(255, 255, 255, .7)}.home{min-height:100vh;position:relative;overflow-x:hidden;background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);padding:2rem}.background-effects{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none}.floating-circle{position:absolute;border-radius:50%;background:linear-gradient(135deg,#667eea33,#764ba233);animation:float 20s infinite ease-in-out;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.circle-1{width:300px;height:300px;top:-150px;left:-150px;animation-delay:0s}.circle-2{width:400px;height:400px;top:50%;right:-200px;animation-delay:-5s}.circle-3{width:200px;height:200px;bottom:100px;left:10%;animation-delay:-10s}.circle-4{width:350px;height:350px;bottom:-100px;right:20%;animation-delay:-15s}@keyframes float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-20px) rotate(5deg)}}.glass-card{background:var(--glass-bg);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:var(--glass-border);box-shadow:var(--glass-shadow);transition:all .3s ease}.hero-section{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:4rem;padding:4rem;margin-bottom:4rem;border-radius:32px;animation:fadeInUp 1s ease-out}.hero-content{display:flex;flex-direction:column;gap:1.5rem}.hero-badge{display:inline-block;padding:.5rem 1rem;background:#667eea33;border:1px solid rgba(102,126,234,.5);border-radius:100px;color:#667eea;font-weight:600;font-size:.875rem;text-transform:uppercase;letter-spacing:1px;width:fit-content}.hero-greeting{font-size:1.25rem;color:var(--text-secondary)}.hero-title{font-size:4rem;font-weight:800;line-height:1.1;color:var(--text-primary);margin:0}.gradient-text{background:linear-gradient(135deg,#667eea,#764ba2,#ff6b6b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-subtitle{font-size:1.25rem;line-height:1.6;color:var(--text-secondary);max-width:600px}.hero-actions{display:flex;gap:1rem;margin-top:1rem}.btn-primary,.btn-secondary{padding:.875rem 2rem;border-radius:12px;font-weight:600;text-decoration:none;transition:all .3s ease;border:none;cursor:pointer;font-size:1rem}.btn-primary{background:var(--primary-gradient);color:#fff;box-shadow:0 4px 15px #667eea66}.btn-secondary{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2)}.btn-large{padding:1rem 2.5rem;font-size:1.125rem}.btn-primary:hover,.btn-secondary:hover{transform:translateY(-3px);box-shadow:0 6px 20px #667eea80}.hero-visual{position:relative;display:flex;justify-content:center;align-items:center}.floating-icon{font-size:3rem;padding:1.5rem;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:50%;border:1px solid rgba(255,255,255,.2);animation:floatingIcon 3s infinite ease-in-out;position:absolute}.floating-icon:nth-child(1){animation-delay:0s;top:20%;left:20%;font-size:4rem}.floating-icon:nth-child(2){animation-delay:.5s;top:50%;right:20%;font-size:3rem}.floating-icon:nth-child(3){animation-delay:1s;bottom:20%;left:30%;font-size:3.5rem}.floating-icon:nth-child(4){animation-delay:1.5s;bottom:30%;right:30%;font-size:2.5rem}@keyframes floatingIcon{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-20px) scale(1.1)}}.features-section{position:relative;z-index:1;padding:2rem 0}.section-header{text-align:center;margin-bottom:3rem}.section-header h2{font-size:2.5rem;font-weight:700;color:var(--text-primary);margin-bottom:1rem}.section-subtitle{font-size:1.125rem;color:var(--text-secondary)}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;padding:1rem}.feature-card-link{text-decoration:none;animation:fadeInUp .6s ease-out forwards;animation-delay:var(--card-delay);opacity:0}.feature-card{position:relative;padding:2rem;border-radius:24px;height:100%;display:flex;flex-direction:column;transition:all .3s ease;overflow:hidden}.feature-card:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:var(--card-gradient);opacity:0;transition:opacity .3s ease;z-index:0;border-radius:24px}.feature-card:hover{transform:translateY(-10px) scale(1.02);border-color:#ffffff80}.feature-card:hover:before{opacity:.1}.card-glow{position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);opacity:0;transition:opacity .3s ease;pointer-events:none}.feature-card:hover .card-glow{opacity:1}.card-icon-wrapper{position:relative;z-index:1;width:fit-content;padding:1rem;background:#ffffff1a;border-radius:18px;margin-bottom:1.5rem;border:1px solid rgba(255,255,255,.2)}.card-icon{font-size:2.5rem}.card-title{position:relative;z-index:1;font-size:1.5rem;font-weight:600;color:var(--text-primary);margin-bottom:.75rem}.card-description{position:relative;z-index:1;color:var(--text-secondary);line-height:1.6;margin-bottom:1.5rem;flex-grow:1}.card-footer{position:relative;z-index:1;margin-top:auto}.card-link{color:#667eea;font-weight:600;display:inline-flex;align-items:center;gap:.5rem;transition:gap .3s ease}.feature-card:hover .card-link{gap:1rem}.stats-section{position:relative;z-index:1;padding:3rem;margin-top:4rem;border-radius:24px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;text-align:center}.stat-item{display:flex;flex-direction:column;gap:.5rem}.stat-value{font-size:2.5rem;font-weight:700;color:var(--text-primary);background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.stat-label{font-size:1rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px}.cta-section{position:relative;z-index:1;margin-top:4rem;padding:4rem;border-radius:32px;text-align:center}.cta-content{max-width:800px;margin:0 auto}.cta-content h2{font-size:2.5rem;font-weight:700;color:var(--text-primary);margin-bottom:1rem}.cta-content p{font-size:1.25rem;color:var(--text-secondary);margin-bottom:2rem}.cta-buttons{display:flex;gap:1rem;justify-content:center}@media (max-width: 1200px){.hero-title{font-size:3.5rem}}@media (max-width: 992px){.hero-section{grid-template-columns:1fr;text-align:center;padding:3rem}.hero-badge{margin:0 auto}.hero-actions{justify-content:center}.hero-visual{display:none}.section-header h2{font-size:2rem}}@media (max-width: 768px){.home{padding:1rem}.hero-section{padding:2rem}.hero-title{font-size:2.5rem}.features-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}.cta-section{padding:2rem}.cta-content h2{font-size:1.75rem}.cta-buttons{flex-direction:column}}@media (max-width: 480px){.hero-title{font-size:2rem}.hero-actions{flex-direction:column}.stats-grid{grid-template-columns:1fr}}@media (prefers-color-scheme: dark){:root{--glass-bg: rgba(0, 0, 0, .2);--text-primary: rgba(255, 255, 255, .95);--text-secondary: rgba(255, 255, 255, .7)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{transform:translate(-100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.animate-fade-in{animation:fadeIn var(--transition-base) forwards}.animate-fade-in-up{animation:fadeInUp var(--transition-base) forwards}.animate-fade-in-down{animation:fadeInDown var(--transition-base) forwards}.animate-pulse{animation:pulse 2s infinite}.animate-shimmer{animation:shimmer 2s infinite linear;background:linear-gradient(to right,#f6f7f8 8%,#edeef1 18%,#f6f7f8 33%);background-size:1000px 100%}.stagger-children>*{opacity:0;animation:fadeInUp .5s ease-out forwards}.stagger-children>*:nth-child(1){animation-delay:.1s}.stagger-children>*:nth-child(2){animation-delay:.2s}.stagger-children>*:nth-child(3){animation-delay:.3s}.stagger-children>*:nth-child(4){animation-delay:.4s}.stagger-children>*:nth-child(5){animation-delay:.5s}.stagger-children>*:nth-child(6){animation-delay:.6s}.stagger-children>*:nth-child(7){animation-delay:.7s}.stagger-children>*:nth-child(8){animation-delay:.8s}:root{--glass-bg: rgba(255, 255, 255, .05);--glass-bg-hover: rgba(255, 255, 255, .1);--glass-border: rgba(255, 255, 255, .1);--glass-shadow: rgba(0, 0, 0, .1);--bg-gradient: linear-gradient(135deg, #1e3c72 0%, #2a5298 50%, #7e22ce 100%);--bg-gradient-alt: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--text-primary: rgba(255, 255, 255, .95);--text-secondary: rgba(255, 255, 255, .7);--text-tertiary: rgba(255, 255, 255, .5);--accent-primary: #8b5cf6;--accent-secondary: #ec4899;--accent-gradient: linear-gradient(135deg, #8b5cf6 0%, #ec4899 100%);--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 1.5rem;--spacing-lg: 2rem;--spacing-xl: 3rem;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 20px;--radius-xl: 30px}.glass-page{min-height:100vh;background:var(--bg-gradient);background-attachment:fixed;padding:2rem 1rem;position:relative;overflow-x:hidden}.glass-page:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 50%,rgba(139,92,246,.15) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(236,72,153,.15) 0%,transparent 50%);pointer-events:none}.glass-container{max-width:1400px;margin:0 auto;position:relative;z-index:1}.glass-card{background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:var(--radius-lg);border:1px solid var(--glass-border);padding:var(--spacing-lg);box-shadow:0 8px 32px var(--glass-shadow);transition:all .3s ease}.glass-card:hover{background:var(--glass-bg-hover);transform:translateY(-2px);box-shadow:0 12px 40px #00000026}.glass-card-sm{background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:var(--radius-md);border:1px solid var(--glass-border);padding:var(--spacing-md);box-shadow:0 4px 16px var(--glass-shadow)}.glass-page-header{text-align:center;margin-bottom:var(--spacing-xl);animation:fadeInDown .6s ease}.glass-page-header h1,.glass-page-header h2{font-size:3rem;font-weight:800;color:var(--text-primary);margin-bottom:.5rem;line-height:1.2}.glass-page-header .subtitle{color:var(--text-secondary);font-size:1.2rem;font-weight:300}.glass-search-section{margin-bottom:var(--spacing-xl);animation:fadeInUp .6s ease .1s backwards}.glass-search-box{display:flex;gap:1rem;max-width:800px;margin:0 auto;flex-wrap:wrap}.glass-input{flex:1;min-width:250px;padding:1rem 1.5rem;background:var(--glass-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--radius-md);color:var(--text-primary);font-size:1rem;transition:all .3s ease}.glass-input::placeholder{color:var(--text-tertiary)}.glass-input:focus{outline:none;background:var(--glass-bg-hover);border-color:var(--accent-primary);box-shadow:0 0 0 3px #8b5cf61a}.glass-select{padding:1rem 1.5rem;background:var(--glass-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--radius-md);color:var(--text-primary);font-size:1rem;cursor:pointer;transition:all .3s ease}.glass-select:focus{outline:none;background:var(--glass-bg-hover);border-color:var(--accent-primary)}.glass-select option{background:#1e293b;color:#fff}.glass-tabs{display:flex;gap:1rem;margin-bottom:2rem}.glass-tab{flex:1;font-weight:600;font-size:1rem;padding:1rem 2rem;border-radius:12px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);color:var(--text-secondary);transition:all .3s ease;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.glass-tab:hover{background:#ffffff1a;border-color:#fff3;transform:translateY(-2px)}.glass-tab.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea80;color:#fff;box-shadow:0 8px 20px #667eea4d}.glass-btn{padding:1rem 2rem;background:var(--accent-gradient);border:none;border-radius:var(--radius-md);color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 16px #8b5cf64d}.glass-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 24px #8b5cf666}.glass-btn:active:not(:disabled){transform:translateY(0)}.glass-btn:disabled{opacity:.5;cursor:not-allowed}.glass-btn-secondary{padding:.75rem 1.5rem;background:var(--glass-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--radius-md);color:var(--text-primary);font-size:.95rem;font-weight:600;cursor:pointer;transition:all .3s ease}.glass-btn-secondary:hover:not(:disabled){background:var(--glass-bg-hover);transform:translateY(-2px)}.glass-btn-sm{padding:.6rem 1.2rem;font-size:.9rem}.glass-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;animation:fadeInUp .6s ease .2s backwards}.glass-grid-lg{grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:2rem}.glass-item-card{background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:var(--radius-lg);border:1px solid var(--glass-border);overflow:hidden;transition:all .3s ease;animation:fadeInScale .5s ease backwards}.glass-item-card:hover{background:var(--glass-bg-hover);transform:translateY(-4px);box-shadow:0 12px 40px #0003}.glass-item-image{width:100%;height:200px;object-fit:cover;border-bottom:1px solid var(--glass-border)}.glass-item-info{padding:1.5rem}.glass-item-title{color:var(--text-primary);font-size:1.3rem;font-weight:700;margin-bottom:.75rem;line-height:1.3}.glass-item-meta{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.glass-meta-tag{padding:.4rem .8rem;background:#8b5cf633;border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.85rem;border:1px solid rgba(139,92,246,.3)}.glass-loading{text-align:center;padding:4rem 2rem}.glass-spinner{width:50px;height:50px;border:4px solid var(--glass-border);border-top-color:var(--accent-primary);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 1rem}.glass-loading p{color:var(--text-secondary);font-size:1.1rem}.glass-empty-state{text-align:center;padding:4rem 2rem;background:var(--glass-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:var(--radius-lg);border:1px solid var(--glass-border)}.glass-empty-icon{font-size:4rem;margin-bottom:1rem;display:block}.glass-empty-state h3{color:var(--text-primary);font-size:1.8rem;margin-bottom:.5rem}.glass-empty-state p{color:var(--text-secondary);font-size:1.1rem;margin-bottom:2rem}.glass-suggestion-tags{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;margin-top:1.5rem}.glass-suggestion-tags button{padding:.6rem 1.2rem;background:#8b5cf626;border:1px solid rgba(139,92,246,.3);border-radius:var(--radius-sm);color:var(--text-primary);font-size:.95rem;cursor:pointer;transition:all .3s ease}.glass-suggestion-tags button:hover{background:#8b5cf640;transform:translateY(-2px)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes spin{to{transform:rotate(360deg)}}.glass-item-card:nth-child(1){animation-delay:.1s}.glass-item-card:nth-child(2){animation-delay:.15s}.glass-item-card:nth-child(3){animation-delay:.2s}.glass-item-card:nth-child(4){animation-delay:.25s}.glass-item-card:nth-child(5){animation-delay:.3s}.glass-item-card:nth-child(6){animation-delay:.35s}.glass-item-card:nth-child(7){animation-delay:.4s}.glass-item-card:nth-child(8){animation-delay:.45s}.glass-item-card:nth-child(9){animation-delay:.5s}@media (max-width: 768px){.glass-page-header h1,.glass-page-header h2{font-size:2rem}.glass-search-box{flex-direction:column}.glass-grid{grid-template-columns:1fr}}.dash-saved-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem}.dash-saved-card{background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);overflow:hidden;display:flex;flex-direction:column;transition:transform .25s ease,box-shadow .25s ease,background .25s ease;animation:fadeInScale .4s ease backwards}.dash-saved-card:hover{background:var(--glass-bg-hover);transform:translateY(-3px);box-shadow:0 12px 36px #00000040}.dash-saved-card-row{flex-direction:row;align-items:stretch}.dash-card-img-wrap{position:relative;width:100%;height:175px;flex-shrink:0;overflow:hidden;background:#00000059}.dash-art-img-wrap{height:210px;display:flex;align-items:center;justify-content:center}.dash-card-img{width:100%;height:100%;display:block}.dash-card-img-cover{object-fit:cover;object-position:center}.dash-card-img-contain{object-fit:contain;object-position:center;padding:.5rem}.dash-card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to bottom,transparent 40%,rgba(0,0,0,.5) 100%);pointer-events:none}.dash-card-img-placeholder{height:110px;display:flex;align-items:center;justify-content:center;font-size:3rem;background:#ffffff08;border-bottom:1px solid var(--glass-border)}.dash-card-body{padding:1rem 1.1rem 1.1rem;display:flex;flex-direction:column;gap:.35rem;flex:1}.dash-card-type-row{display:flex;justify-content:space-between;align-items:center}.dash-card-emoji{font-size:1.1rem}.dash-card-date{font-size:.75rem;color:var(--text-tertiary)}.dash-card-title{font-size:.95rem;font-weight:700;color:var(--text-primary);line-height:1.3;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.dash-card-subtitle{font-size:.82rem;color:var(--text-secondary);margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dash-card-excerpt{font-size:.8rem;color:var(--text-secondary);line-height:1.4;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.dash-card-tags{display:flex;flex-wrap:wrap;gap:.3rem;margin-top:.15rem}.dash-card-tag{padding:.2rem .55rem;background:#8b5cf626;border:1px solid rgba(139,92,246,.25);border-radius:20px;font-size:.72rem;color:var(--text-secondary);max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dash-card-actions{display:flex;gap:.5rem;margin-top:auto;padding-top:.65rem}.dash-book-cover{width:85px;min-width:85px;object-fit:cover;object-position:center top;border-right:1px solid var(--glass-border);flex-shrink:0}.dash-book-cover-placeholder{width:85px;min-width:85px;display:flex;align-items:center;justify-content:center;font-size:2.2rem;background:#ffffff0a;border-right:1px solid var(--glass-border);flex-shrink:0}.dash-weather-icon{width:85px;min-width:85px;display:flex;align-items:center;justify-content:center;background:#ffffff08;border-right:1px solid var(--glass-border);flex-shrink:0}.dash-saved-card-journal{background:#8b5cf60f!important}.dash-journal-mood{width:75px;min-width:75px;display:flex;align-items:center;justify-content:center;font-size:2.2rem;background:#8b5cf614;border-right:1px solid var(--glass-border);flex-shrink:0}.dash-stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1rem;margin-bottom:0}.dash-stat-card{background:var(--glass-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:1.25rem 1rem;text-align:center;cursor:pointer;transition:all .25s ease;display:flex;flex-direction:column;align-items:center;gap:.4rem}.dash-stat-card:hover{background:var(--glass-bg-hover);transform:translateY(-3px);box-shadow:0 8px 24px #0003;border-color:#8b5cf666}.dash-stat-icon{font-size:2rem}.dash-stat-count{font-size:1.6rem;font-weight:800;color:var(--text-primary);line-height:1}.dash-stat-label{font-size:.78rem;color:var(--text-secondary);font-weight:500}.dash-stat-hint{font-size:.68rem;color:var(--text-tertiary);margin-top:.1rem}.dash-section-title{color:var(--text-primary);font-size:1.4rem;font-weight:700;margin-bottom:1.25rem}.dashboard-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.dashboard-header-row .glass-page-header{margin-bottom:0;flex:1;min-width:280px}.weather-widget{background:var(--glass-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:.75rem 1.25rem;display:flex;align-items:center;gap:1rem;cursor:pointer;transition:all .25s ease;min-width:280px;animation:fadeIn .5s ease}.weather-widget:hover{background:var(--glass-bg-hover);transform:translateY(-2px);box-shadow:0 8px 24px #0003;border-color:#4facfe66}.weather-widget.loading{min-width:280px;height:76px;display:flex;justify-content:center;align-items:center}.weather-widget-loader{width:30px;height:30px;border:2px solid var(--glass-border);border-top-color:#4facfe;border-radius:50%;animation:spinner .8s linear infinite}@keyframes spinner{to{transform:rotate(360deg)}}.weather-widget-icon{font-size:2.5rem;line-height:1}.weather-widget-info{flex:1}.weather-widget-location{font-size:.8rem;color:var(--text-tertiary);margin-bottom:.1rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.weather-widget-temp{font-size:1.6rem;font-weight:700;background:linear-gradient(135deg,#4facfe,#00f2fe);-webkit-background-clip:text;-webkit-text-fill-color:transparent;line-height:1.2}.weather-widget-condition{font-size:.75rem;color:var(--text-secondary);white-space:nowrap}.weather-widget-details{display:flex;flex-direction:column;gap:.25rem;font-size:.7rem;color:var(--text-tertiary);border-left:1px solid var(--glass-border);padding-left:.75rem}.weather-widget-temp-container{display:flex;align-items:center;gap:.5rem}.weather-unit-toggle{background:#ffffff1a;border:1px solid var(--glass-border);border-radius:12px;color:var(--text-secondary);font-size:.7rem;font-weight:600;padding:.15rem .4rem;cursor:pointer;transition:all .2s ease;line-height:1.2}.weather-unit-toggle:hover{background:#4facfe33;border-color:#4facfe66;color:#4facfe}.weather-unit-toggle.active{background:#4facfe4d;border-color:#4facfe;color:#4facfe}.collection-section{margin-bottom:3rem;width:100%}.collection-subtitle{color:var(--text-secondary);margin-bottom:1.25rem;margin-top:-.75rem;font-size:.9rem}.dashboard-content-row{display:flex;gap:2rem;align-items:flex-start;margin-bottom:2rem}.recent-section{flex:1;min-width:0}.logout-section{text-align:center;padding-top:1rem}.shopping-list{background:var(--glass-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:1.25rem;width:270px;flex-shrink:0;align-self:flex-start;position:sticky;top:1rem}.shopping-list-title{color:var(--text-primary);font-size:1rem;font-weight:700;margin:0 0 1rem}.shopping-list-count{font-size:.75rem;color:var(--text-tertiary);font-weight:400;margin-left:.5rem}.shopping-list-add{display:flex;gap:.35rem;margin-bottom:1rem}.shopping-list-select{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-sm);color:var(--text-primary);padding:.4rem;font-size:.85rem;cursor:pointer;flex-shrink:0}.shopping-list-input{flex:1;background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-sm);color:var(--text-primary);padding:.4rem .6rem;font-size:.82rem;min-width:0}.shopping-list-btn{padding:.4rem .65rem;font-size:.9rem;flex-shrink:0}.shopping-list-added{color:#86efac;font-size:.75rem;margin-bottom:.5rem}.shopping-list-divider{border-top:1px solid var(--glass-border);margin:.85rem 0}.shopping-list-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.5rem}.shopping-list-clear{background:none;border:none;color:var(--text-tertiary);font-size:.7rem;cursor:pointer}.shopping-list-empty{color:var(--text-tertiary);font-size:.75rem;font-style:italic;margin:0}.shopping-list-item{display:flex;align-items:center;gap:.4rem;margin-bottom:.3rem}.shopping-list-item-name{flex:1;font-size:.8rem;color:var(--text-secondary);word-break:break-word}.shopping-list-item-name.checked{text-decoration:line-through;opacity:.45}.shopping-list-measure{color:#fbbf24;margin-right:.25rem;font-weight:600}.shopping-list-remove{background:none;border:none;color:var(--text-tertiary);cursor:pointer;font-size:.75rem;padding:0 2px;flex-shrink:0}.birthday-banner{background:linear-gradient(135deg,#ff6b6b33,#ff8e5333);border:2px solid rgba(255,107,107,.3);border-radius:var(--radius-lg);padding:2rem;margin-bottom:2rem;text-align:center}.birthday-countdown{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);padding:1rem;margin-bottom:2rem;text-align:center}@keyframes birthdayFall{0%{transform:translateY(-60px) rotate(0);opacity:1}to{transform:translateY(110vh) rotate(360deg);opacity:.3}}@media (max-width: 768px){.dashboard-header-row{flex-direction:column;align-items:stretch}.weather-widget{width:100%}.weather-widget-location{max-width:200px}.dashboard-content-row{flex-direction:column}.shopping-list{width:100%;position:static}.dash-stat-grid{grid-template-columns:repeat(4,1fr)}}@media (max-width: 640px){.dash-saved-grid{grid-template-columns:1fr}.dash-stat-grid{grid-template-columns:repeat(4,1fr);gap:.6rem}.dash-stat-count{font-size:1.2rem}.dash-stat-label{font-size:.68rem}.dash-saved-card-row{flex-direction:column}.dash-book-cover,.dash-book-cover-placeholder,.dash-weather-icon,.dash-journal-mood{width:100%;min-width:unset;min-height:90px;border-right:none;border-bottom:1px solid var(--glass-border)}}@media (max-width: 480px){.dash-stat-grid{grid-template-columns:repeat(2,1fr)}.weather-widget{padding:.75rem 1rem}.weather-widget-icon{font-size:2rem}.weather-widget-temp{font-size:1.4rem}.weather-unit-toggle{font-size:.65rem;padding:.1rem .35rem}}.weather-map-background{position:fixed;top:0;left:0;right:0;bottom:0;z-index:0;opacity:.5;pointer-events:none}.world-map-container{width:100%;height:100%;background:#1a1a2e}.leaflet-tile-pane{opacity:.8}.leaflet-container{width:100%;height:100%;background:#1a1a2e}.custom-marker{background:transparent;border:none}.marker-pin{width:30px;height:30px;background:#ff7e5f;border-radius:50%;border:3px solid white;box-shadow:0 0 15px #ff7e5fcc;animation:pulse 2s infinite}@keyframes pulse{0%{transform:scale(1);box-shadow:0 0 #ff7e5fb3}70%{transform:scale(1.2);box-shadow:0 0 0 15px #ff7e5f00}to{transform:scale(1);box-shadow:0 0 #ff7e5f00}}.leaflet-container{background-color:#0000004d!important}.leaflet-tile{filter:brightness(.7) contrast(1.2) saturate(.8)!important}.weather-content-overlay{position:relative;z-index:1}.weather-search-section{margin-bottom:2rem}.weather-default-city{text-align:center;margin-top:1rem;color:var(--text-tertiary);font-size:.9rem}.weather-default-city strong{color:var(--text-primary)}.weather-current-card{margin-bottom:2rem;background:#ffffff0d!important;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;overflow:visible;-webkit-mask-image:radial-gradient(circle 125px at 50% 40%,transparent 0,transparent 125px,black 125px);mask-image:radial-gradient(circle 125px at 50% 40%,transparent 0,transparent 125px,black 125px)}.weather-current-card:before{content:"";position:absolute;top:40%;left:50%;transform:translate(-50%,-50%);width:250px;height:250px;border-radius:50%;background:#0000!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;border:2px solid rgba(255,255,255,.3);box-shadow:0 0 0 8px #ffffff0d,0 0 30px #ffffff1a;pointer-events:none;z-index:10}.weather-current-card>*{position:relative;z-index:2}.weather-location-header{margin-bottom:2rem;text-align:center}.weather-location-name{color:var(--text-primary);font-size:2.5rem;margin-bottom:.5rem;font-weight:700;text-shadow:0 2px 10px rgba(0,0,0,.3)}.weather-location-time{color:var(--text-secondary);font-size:1rem}.weather-main-display{display:grid;grid-template-columns:1fr 200px 1fr;align-items:center;margin-bottom:2rem;padding:2rem 1rem;min-height:250px;position:relative}.weather-icon-section{text-align:center;grid-column:1}.weather-icon-large{font-size:4rem;margin-bottom:.5rem}.weather-condition-text{color:var(--text-secondary);font-size:1rem}.weather-temp-section{text-align:center;grid-column:3}.weather-temp-large{font-size:4rem;font-weight:700;color:var(--text-primary)}.weather-feels-like{color:var(--text-tertiary);font-size:1rem;margin-top:.5rem}.weather-unit-toggle-large{background:#ffffff1a;border:1px solid var(--glass-border);border-radius:20px;color:var(--text-secondary);font-size:.8rem;padding:.3rem 1rem;cursor:pointer;transition:all .2s ease;margin-top:.5rem}.weather-unit-toggle-large:hover{background:#4facfe33;border-color:#4facfe66;color:#4facfe}.weather-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:2rem}.weather-detail-card{background:#ffffff0d;padding:1rem;border-radius:12px;text-align:center;transition:transform .2s}.weather-detail-card:hover{transform:translateY(-2px);background:#ffffff14}.weather-detail-label{color:var(--text-tertiary);font-size:.9rem;margin-bottom:.5rem}.weather-detail-value{color:var(--text-primary);font-size:1.3rem;font-weight:600}.weather-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.weather-btn-default{background:#ffffff1a;border-color:#fff3}.weather-btn-default.is-default{background:#22c55e33;border-color:#22c55e4d}.weather-saved-section{margin-top:3rem}.weather-saved-title{color:var(--text-primary);margin-bottom:1.5rem;font-size:1.5rem;font-weight:600}.weather-saved-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.5rem}.weather-saved-card{position:relative;cursor:pointer;transition:transform .2s}.weather-saved-card:hover{transform:translateY(-4px)}.weather-saved-icon{font-size:3rem;text-align:center;margin-bottom:1rem}.weather-saved-title-text{text-align:center;font-size:1.2rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.weather-saved-temp{color:var(--text-primary);font-size:2rem;font-weight:600;text-align:center;margin-top:.5rem}.weather-saved-condition{color:var(--text-secondary);font-size:.9rem;text-align:center;margin-top:.5rem}.weather-saved-date{color:var(--text-tertiary);font-size:.85rem;text-align:center;margin-top:.5rem}.weather-saved-delete{position:absolute;top:.5rem;right:.5rem;padding:.5rem 1rem;background:#ef444433;border-color:#ef44444d;z-index:10}@media (max-width: 768px){.weather-main-display{grid-template-columns:1fr;gap:2rem}.weather-icon-section,.weather-temp-section{grid-column:1}.weather-temp-large{font-size:3rem}.weather-icon-large{font-size:4rem}.weather-details-grid{grid-template-columns:repeat(2,1fr)}.weather-location-name{font-size:1.8rem}}@media (max-width: 480px){.weather-location-name{font-size:1.5rem}.weather-details-grid,.weather-saved-grid{grid-template-columns:1fr}.weather-actions{flex-direction:column}.weather-actions button{width:100%}}.art-mosaic-background{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0;opacity:.15;pointer-events:none;overflow:hidden}.art-mosaic-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-auto-rows:200px;gap:10px;width:100%;height:100%;padding:20px}.art-mosaic-tile{overflow:hidden;animation:fadeIn 1s ease-in}.art-mosaic-tile img{width:100%;height:100%;object-fit:cover;filter:grayscale(30%) blur(1px)}.art-content-overlay{position:relative;z-index:1}.art-clickable{cursor:pointer;transition:all .3s ease}.art-clickable:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 10px 30px #0000004d}.art-fallback-image{width:100%;height:250px;background:linear-gradient(135deg,#667eea1a,#764ba21a);display:flex;align-items:center;justify-content:center;border-radius:12px 12px 0 0;font-size:3rem}.art-card-title{font-size:1.1rem;margin-bottom:.5rem;color:var(--text-primary)}.art-card-artist{color:var(--text-secondary);margin-bottom:.5rem}.art-card-date{font-size:.85rem;color:var(--text-tertiary);margin-bottom:.25rem}.art-card-saved-date{font-size:.8rem;color:var(--text-tertiary);margin-bottom:1rem}.art-card-image{width:100%;height:250px;object-fit:cover;border-radius:12px 12px 0 0}.art-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000d9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:2rem;animation:modalFadeIn .3s ease}.art-modal-content{background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:24px;border:1px solid rgba(255,255,255,.2);max-width:1200px;width:100%;max-height:90vh;overflow-y:auto;position:relative;animation:modalSlideUp .3s ease;box-shadow:0 20px 60px #00000080}.art-modal-close{position:absolute;top:1rem;right:1rem;width:40px;height:40px;border-radius:50%;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;font-size:1.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;transition:all .2s}.art-modal-close:hover{background:#fff3;transform:rotate(90deg)}.art-modal-layout{display:grid;grid-template-columns:400px 1fr;gap:2rem;padding:2rem;align-items:start}.art-modal-image-section{display:flex;align-items:flex-start;justify-content:center;background:#0000004d;border-radius:16px;padding:1.5rem;align-self:start}.art-modal-image{width:100%;max-width:350px;height:auto;max-height:500px;object-fit:contain;border-radius:8px}.art-fallback-image-large{width:100%;height:500px;display:flex;align-items:center;justify-content:center;font-size:5rem;background:linear-gradient(135deg,#667eea1a,#764ba21a)}.art-modal-details{display:flex;flex-direction:column;gap:1.5rem}.art-modal-title{font-size:2rem;font-weight:700;color:var(--text-primary);margin:0;line-height:1.3}.art-modal-info{display:flex;flex-direction:column;gap:1rem}.art-info-item{display:flex;gap:.75rem;align-items:flex-start}.art-info-label{font-weight:600;color:var(--text-secondary);min-width:120px;flex-shrink:0}.art-info-value{color:var(--text-primary);flex:1}.art-modal-description{background:#ffffff0d;padding:1.5rem;border-radius:12px;border:1px solid rgba(255,255,255,.1)}.art-modal-description h3{font-size:1.2rem;color:var(--text-primary);margin-bottom:1rem}.art-modal-description p,.art-modal-description *{color:#ffffffd9;line-height:1.6}@media (max-width: 900px){.art-modal-layout{grid-template-columns:1fr}.art-modal-image{max-height:50vh}}@media (max-width: 600px){.art-mosaic-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-auto-rows:150px}.art-modal-overlay,.art-modal-content{padding:1rem}}.books-mosaic-background{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0;opacity:.12;pointer-events:none;overflow:hidden}.books-mosaic-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));grid-auto-rows:180px;gap:8px;width:100%;height:100%;padding:20px}.books-mosaic-tile{overflow:hidden;animation:fadeIn 1s ease-in;border-radius:4px}.books-mosaic-tile img{width:100%;height:100%;object-fit:cover;filter:grayscale(40%) blur(.5px)}.books-content-overlay{position:relative;z-index:1}.books-clickable{cursor:pointer;transition:all .3s ease}.books-clickable:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 10px 30px #0000004d}.books-card-image{width:100%;height:350px;object-fit:contain;border-radius:12px 12px 0 0;background:#0003}.books-card-content{padding:1.5rem}.books-card-title{font-size:1.1rem;margin-bottom:.5rem;color:var(--text-primary)}.books-card-author{color:var(--text-secondary);margin-bottom:.5rem}.books-card-year{font-size:.85rem;color:var(--text-tertiary);margin-bottom:.25rem}.books-card-saved-date{font-size:.8rem;color:var(--text-tertiary);margin-bottom:1rem}.books-remove-btn{position:absolute;top:4rem;right:1rem;padding:.5rem 1rem;background:#ef444433;border-color:#ef44444d;z-index:10;border-radius:8px;font-size:.9rem}.books-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000d9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:2rem;animation:modalFadeIn .3s ease}@keyframes modalFadeIn{0%{opacity:0;-webkit-backdrop-filter:blur(0px);backdrop-filter:blur(0px)}to{opacity:1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}}.books-modal-content{background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:24px;border:1px solid rgba(255,255,255,.2);max-width:1200px;width:100%;max-height:90vh;overflow-y:auto;position:relative;animation:modalSlideUp .3s ease;box-shadow:0 20px 60px #00000080}.books-modal-close{position:absolute;top:1rem;right:1rem;width:40px;height:40px;border-radius:50%;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;font-size:1.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:20;transition:all .2s}.books-modal-close:hover{background:#fff3;transform:rotate(90deg)}.books-modal-layout{display:grid;grid-template-columns:350px 1fr;gap:2rem;padding:2rem}.books-modal-image-section{display:flex;align-items:flex-start;justify-content:center;background:#0000004d;border-radius:16px;padding:2rem}.books-modal-image{max-width:100%;max-height:500px;object-fit:contain;border-radius:8px;box-shadow:0 10px 30px #00000080}.books-no-cover{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;color:var(--text-tertiary);min-height:400px}.books-no-cover span{font-size:4rem}.books-modal-details{display:flex;flex-direction:column;gap:1.5rem}.books-modal-title{font-size:2rem;font-weight:700;color:var(--text-primary);margin:0;line-height:1.3}.books-modal-subtitle{font-size:1.2rem;color:var(--text-secondary);margin-top:.5rem;margin-bottom:1.5rem;font-style:italic}.books-modal-info{display:flex;flex-direction:column;gap:1rem}.books-info-item{display:flex;gap:.75rem;align-items:flex-start}.books-info-label{font-weight:600;color:var(--text-secondary);min-width:120px;flex-shrink:0}.books-info-value{color:var(--text-primary);flex:1}.books-modal-description{background:#ffffff0d;padding:1.5rem;border-radius:12px;border:1px solid rgba(255,255,255,.1);margin-bottom:1.5rem}.books-modal-description h3{font-size:1.2rem;color:var(--text-primary);margin-bottom:1rem}.books-modal-description p{color:#ffffffd9;line-height:1.6}.books-stats-grid{display:flex;gap:2rem;flex-wrap:wrap}.books-stat{text-align:center}.books-stat-value{font-size:1.5rem;font-weight:700;color:var(--text-primary)}.books-stat-label{font-size:.85rem;color:var(--text-secondary)}.books-opening-line{font-style:italic;font-size:1.05rem;color:#ffffffd9}.books-modal-subjects{background:#ffffff0d;padding:1.5rem;border-radius:12px;border:1px solid rgba(255,255,255,.1)}.books-modal-subjects h3{font-size:1.2rem;color:var(--text-primary);margin-bottom:1rem}.books-subject-tags{display:flex;flex-wrap:wrap;gap:.5rem}.books-subject-tag{padding:.5rem 1rem;background:#ffffff1a;border-radius:20px;font-size:.85rem;color:var(--text-secondary);border:1px solid rgba(255,255,255,.1)}@media (max-width: 900px){.books-modal-layout{grid-template-columns:1fr}.books-modal-image-section{max-height:400px}}@media (max-width: 600px){.books-mosaic-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));grid-auto-rows:150px}.books-modal-overlay{padding:1rem}}.drinks-bar-background{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0;opacity:.25;pointer-events:none;overflow:hidden}.drinks-bar-image{width:100%;height:100%;object-fit:cover;filter:brightness(.6) blur(2px)}.drinks-content-overlay{position:relative;z-index:1}.drinks-clickable{cursor:pointer;transition:all .3s ease}.drinks-clickable:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 10px 30px #0000004d}.drinks-card-image{width:100%;height:250px;object-fit:contain;border-radius:12px 12px 0 0;background:#0000000d}.drinks-card-content{padding:1.5rem}.drinks-card-title{font-size:1.1rem;margin-bottom:.5rem;color:var(--text-primary)}.drinks-card-category{color:var(--text-secondary);margin-bottom:.5rem;font-size:.9rem}.drinks-card-meta{font-size:.85rem;color:var(--text-tertiary);margin-bottom:1rem}.drinks-card-saved-date{font-size:.8rem;color:var(--text-tertiary);margin-bottom:1rem}.drinks-remove-btn{position:absolute;top:.5rem;right:.5rem;padding:.5rem 1rem;background:#ef444433;border-color:#ef44444d;z-index:10}.drinks-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000d9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:2rem;animation:modalFadeIn .3s ease}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.drinks-modal-content{position:relative;border-radius:24px;border:2px solid rgba(255,255,255,.4);max-width:1100px;width:100%;max-height:90vh;overflow:hidden;animation:modalSlideUp .3s ease;box-shadow:0 30px 80px #0009}@keyframes modalSlideUp{0%{transform:translateY(50px);opacity:0}to{transform:translateY(0);opacity:1}}.drinks-modal-bg-full{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center;filter:blur(8px) brightness(.5) saturate(1.3);transform:scale(1.1);z-index:0}.drinks-modal-bg-full:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#000000b3,#141428d9,#000000bf)}.drinks-modal-close{position:absolute;top:1rem;right:1rem;width:40px;height:40px;border-radius:50%;background:#fff3;border:1px solid rgba(255,255,255,.3);color:#fff;font-size:1.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;transition:all .2s;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.drinks-modal-close:hover{background:#ffffff4d;transform:rotate(90deg)}.drinks-modal-layout-new{position:relative;z-index:1;display:grid;grid-template-columns:400px 1fr;gap:2rem;padding:2rem;max-height:90vh;overflow-y:auto}.drinks-featured-section{display:flex;flex-direction:column;align-items:center;gap:1.5rem;padding:1rem}.drinks-featured-frame{position:relative;width:300px;height:300px;border-radius:20px;padding:1rem;background:#ffffff0d;border:2px solid rgba(255,255,255,.3);box-shadow:0 20px 60px #00000080}.drinks-featured-image{width:100%;height:100%;object-fit:cover;border-radius:12px;box-shadow:0 10px 40px #0009}.drinks-featured-glow{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:80%;height:80%;background:radial-gradient(circle,rgba(255,255,255,.3) 0%,transparent 70%);border-radius:50%;filter:blur(30px);pointer-events:none}.drinks-featured-title{font-size:2rem;font-weight:700;color:#fff;text-align:center;text-shadow:0 4px 12px rgba(0,0,0,.8);margin:0}.drinks-featured-badges{display:flex;flex-direction:column;gap:.5rem;width:100%}.drinks-badge-new{padding:.75rem 1.5rem;background:#ffffff26;border-radius:12px;font-size:.9rem;color:#fff;border:1px solid rgba(255,255,255,.3);font-weight:600;text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.drinks-recipe-section{display:flex;flex-direction:column;gap:1.5rem;overflow-y:auto;max-height:calc(90vh - 4rem)}.drinks-ingredients-box,.drinks-instructions-box{background:#ffffff1a;border-radius:16px;padding:1.5rem;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.drinks-ingredients-box h3,.drinks-instructions-box h3{font-size:1.4rem;color:#fff;margin:0 0 1rem;font-weight:700;text-shadow:0 2px 8px rgba(0,0,0,.5)}.drinks-ingredients-list-new{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.75rem}.drinks-ingredient-item{display:flex;gap:1rem;padding:.75rem;background:#ffffff14;border-radius:8px;border:1px solid rgba(255,255,255,.1);align-items:center}.ingredient-measure-new{font-weight:700;color:#fbbf24;min-width:100px;flex-shrink:0}.ingredient-name-new{color:#fff;font-weight:500;flex:1}.drinks-add-btn{background:#a78bfa26;border:1px solid rgba(167,139,250,.35);border-radius:8px;color:#a78bfa;font-size:.72rem;font-weight:600;cursor:pointer;padding:.3rem .6rem;white-space:nowrap;flex-shrink:0;margin-left:.5rem;transition:all .2s ease}.drinks-add-btn.added{background:#86efac33;border:1px solid rgba(134,239,172,.4);color:#86efac}.drinks-instructions-new{color:#fffffff2;line-height:1.8;font-size:1.05rem;margin:0}.drinks-save-btn{width:100%;padding:1rem 2rem;font-size:1.1rem}@media (max-width: 900px){.drinks-modal-layout-new{grid-template-columns:1fr}.drinks-featured-section{border-bottom:1px solid rgba(255,255,255,.2);padding-bottom:2rem}}@media (max-width: 768px){.drinks-modal-overlay{padding:1rem}.drinks-featured-frame{width:250px;height:250px}}html{overflow-y:auto;overflow-x:hidden}body{min-height:100vh;overflow-y:auto;overflow-x:hidden}.space-page{position:relative;min-height:100vh;width:100%}.space-background-static{position:fixed;top:0;left:0;width:100%;height:100vh;background-image:url(https://images-assets.nasa.gov/image/carina_nebula/carina_nebula~large.jpg);background-size:cover;background-repeat:no-repeat;background-attachment:fixed;background-position:center;filter:brightness(.7) blur(3px);z-index:-2;pointer-events:none}.space-overlay{position:fixed;top:0;left:0;width:100%;height:100vh;background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);opacity:.5;z-index:-1;pointer-events:none}.space-content{position:relative;z-index:1;padding:2rem}.space-date-section{max-width:600px;margin:0 auto 2rem}.space-photo-card{background:#ffffff08;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:20px;border:1px solid rgba(255,255,255,.1);overflow:hidden;animation:slideUp .5s ease;box-shadow:0 8px 32px #0000004d}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.space-image-container{width:100%;max-height:600px;overflow:hidden;background:#0000004d}.space-main-image{width:100%;height:auto;display:block;object-fit:contain;max-height:600px}.space-video-container{position:relative;width:100%;padding-bottom:56.25%;background:#0000004d}.space-video{position:absolute;top:0;left:0;width:100%;height:100%}.space-info-section{padding:2rem}.space-photo-title{font-size:2rem;font-weight:700;color:var(--text-primary);margin:0 0 1rem}.space-date{font-size:1rem;color:var(--text-secondary);margin-bottom:.5rem}.space-copyright{font-size:.9rem;color:var(--text-tertiary);margin-bottom:1.5rem;font-style:italic}.space-explanation{font-size:1.05rem;line-height:1.8;color:var(--text-secondary);margin-bottom:2rem;text-align:justify}.space-actions{display:flex;gap:1rem;flex-wrap:wrap}.space-saved-card{cursor:pointer;transition:all .3s ease}.space-saved-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0003}.space-saved-image{width:100%;height:200px;object-fit:cover;border-radius:12px 12px 0 0}.space-saved-placeholder{height:120px;display:flex;align-items:center;justify-content:center;font-size:3rem;background:#ffffff08;border-radius:12px 12px 0 0}.space-saved-info{padding:1.25rem}.space-saved-title{color:var(--text-primary);margin-bottom:.5rem;font-size:1rem}.space-saved-date{color:var(--text-tertiary);font-size:.8rem;margin-bottom:.5rem}.space-saved-meta{color:var(--text-tertiary);font-size:.8rem;margin-bottom:1rem}.space-remove-btn{background:#ef444426;border-color:#ef44444d}.space-modal{max-width:900px;width:100%;max-height:90vh;overflow-y:auto;position:relative}.modal-close-btn{position:absolute;top:1rem;right:1rem;width:36px;height:36px;border-radius:50%;background:#00000080;border:none;color:#fff;font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;transition:all .2s ease}.modal-close-btn:hover{background:#fff3;transform:rotate(90deg)}@media (max-width: 768px){.space-photo-title{font-size:1.5rem}.space-info-section{padding:1.5rem}.space-explanation{text-align:left}.space-actions{flex-direction:column}.space-actions .glass-btn,.space-actions .glass-btn-secondary{width:100%}}.journal-page{min-height:100vh;background:linear-gradient(135deg,#1e3c72,#2a5298,#7e22ce);position:relative;overflow:hidden}.journal-page:before{content:"";position:absolute;top:-100px;right:-100px;width:300px;height:300px;background:radial-gradient(circle,rgba(255,255,255,.05) 0%,transparent 70%);border-radius:50%;animation:float 8s ease-in-out infinite}.journal-page:after{content:"";position:absolute;bottom:-150px;left:-150px;width:400px;height:400px;background:radial-gradient(circle,rgba(139,92,246,.1) 0%,transparent 70%);border-radius:50%;animation:float 10s ease-in-out infinite reverse}@keyframes float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-30px) rotate(5deg)}}.journal-page-header{text-align:center;margin-bottom:3rem;animation:fadeInDown .6s ease-out}.journal-icon{font-size:4rem;display:inline-block;animation:bookOpen 1s ease-out;filter:drop-shadow(0 10px 30px rgba(139,92,246,.3))}@keyframes bookOpen{0%{transform:rotateY(-90deg);opacity:0}to{transform:rotateY(0);opacity:1}}.journal-page-header h2{font-size:2.5rem;background:linear-gradient(135deg,#a78bfa,#ec4899,#f59e0b);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.5rem;font-weight:700;animation:fadeIn .8s ease-out .2s both}.journal-form-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:24px;padding:2.5rem;margin-bottom:2rem;box-shadow:0 8px 32px #0000001a;animation:slideInUp .6s ease-out .3s both;transition:all .3s ease}.journal-form-card:hover{transform:translateY(-2px);box-shadow:0 12px 40px #8b5cf633}.journal-edit-banner{background:#8b5cf633;padding:1rem;border-radius:12px;margin-bottom:1.5rem}.journal-edit-banner p{color:var(--text-primary);margin:0}.journal-form-group{margin-bottom:1.5rem}.journal-form-group label{display:block;margin-bottom:.75rem;color:var(--text-primary);font-size:1.1rem;font-weight:600}.mood-selector{display:flex;gap:1rem;margin:1.5rem 0;flex-wrap:wrap}.mood-option{padding:.75rem 1.5rem;border-radius:50px;background:#ffffff0d;border:2px solid rgba(255,255,255,.1);color:var(--text-primary);cursor:pointer;transition:all .3s ease;font-size:1rem;font-weight:500}.mood-option:hover{transform:translateY(-2px);background:#ffffff1a;border-color:#8b5cf680}.mood-option.selected{background:linear-gradient(135deg,#8b5cf6,#ec4899);border-color:transparent;box-shadow:0 4px 20px #8b5cf666;transform:scale(1.05)}.journal-input{width:100%;padding:1rem 1.5rem;background:#ffffff0d;border:2px solid rgba(255,255,255,.1);border-radius:16px;color:var(--text-primary);font-size:1.1rem;transition:all .3s ease;font-family:inherit}.journal-input:focus{outline:none;background:#ffffff14;border-color:#8b5cf680;box-shadow:0 0 0 4px #8b5cf61a}.journal-input::placeholder{color:#ffffff4d}.journal-textarea{min-height:200px;resize:vertical;font-family:Georgia,serif;line-height:1.8}.journal-actions{display:flex;gap:1rem;margin-top:2rem}.journal-btn-primary{flex:1;padding:1rem 2rem;background:linear-gradient(135deg,#8b5cf6,#ec4899);border:none;border-radius:16px;color:#fff;font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 20px #8b5cf64d}.journal-btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 30px #8b5cf666}.journal-btn-primary:active:not(:disabled){transform:translateY(0)}.journal-btn-primary:disabled{opacity:.5;cursor:not-allowed}.journal-btn-secondary{padding:1rem 2rem;background:#ffffff0d;border:2px solid rgba(255,255,255,.1);border-radius:16px;color:var(--text-primary);font-size:1.1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.journal-btn-secondary:hover:not(:disabled){background:#ffffff1a;transform:translateY(-2px)}.journal-btn-secondary:disabled{opacity:.5;cursor:not-allowed}.journal-tabs{display:flex;gap:1rem;margin-bottom:2rem;justify-content:center}.journal-entries-section{animation:fadeIn .6s ease-out .5s both}.journal-entries-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem;margin-top:2rem}.journal-entry-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:20px;padding:2rem;transition:all .3s ease;cursor:pointer;position:relative;overflow:hidden}.journal-entry-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#8b5cf6,#ec4899,#f59e0b)}.journal-entry-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #8b5cf640;background:#ffffff1f}.journal-entry-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.journal-entry-date{color:var(--text-tertiary);font-size:.9rem}.journal-entry-mood{padding:.5rem 1rem;background:#8b5cf633;border-radius:20px;font-size:.9rem;color:var(--text-primary)}.journal-entry-title{font-size:1.4rem;color:var(--text-primary);margin-bottom:1rem;font-weight:600}.journal-entry-content{color:var(--text-secondary);line-height:1.7;margin-bottom:1.5rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.journal-entry-actions{display:flex;gap:.5rem;margin-top:1rem}.journal-entry-btn{padding:.5rem 1rem;border-radius:12px;border:none;cursor:pointer;font-size:.9rem;font-weight:600;transition:all .2s ease}.journal-entry-btn-view{background:#8b5cf633;color:var(--text-primary)}.journal-entry-btn-view:hover{background:#8b5cf64d}.journal-entry-btn-delete{background:#ef444433;color:#ef4444}.journal-entry-btn-delete:hover{background:#ef44444d}.journal-empty-state{text-align:center;padding:4rem 2rem;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#ffffff0d;border:2px dashed rgba(255,255,255,.2);border-radius:24px;animation:fadeIn .6s ease-out}.journal-empty-icon{font-size:5rem;margin-bottom:1.5rem;display:inline-block;animation:gentleSway 3s ease-in-out infinite}@keyframes gentleSway{0%,to{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}.journal-empty-state h3{color:var(--text-primary);font-size:1.8rem;margin-bottom:1rem}.journal-empty-state p{color:var(--text-secondary);font-size:1.1rem;margin-bottom:2rem}.journal-full-entry{max-width:700px;width:100%;max-height:80vh;overflow:auto}.journal-full-mood{margin-bottom:1rem}.journal-full-title{color:var(--text-primary);margin-bottom:.5rem}.journal-full-date{color:var(--text-tertiary);margin-bottom:2rem}.journal-full-content{color:var(--text-secondary);line-height:1.8;white-space:pre-wrap}.journal-full-actions{display:flex;gap:1rem;margin-top:2rem}.journal-delete-btn{background:#ef444433;border-color:#ef44444d}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (max-width: 768px){.journal-form-card{padding:1.5rem}.journal-entries-grid{grid-template-columns:1fr}.mood-selector{justify-content:center}.journal-tabs,.journal-full-actions{flex-direction:column}}.pokemon-page{position:relative;overflow-x:hidden}.poke-bg-orb{position:fixed;border-radius:50%;pointer-events:none;z-index:0;filter:blur(80px);opacity:.18}.poke-orb-1{width:500px;height:500px;background:#ef4444;top:-100px;right:-100px}.poke-orb-2{width:400px;height:400px;background:#3b82f6;bottom:100px;left:-150px}.poke-orb-3{width:300px;height:300px;background:#f59e0b;top:50%;left:50%;transform:translate(-50%,-50%)}.poke-type-badge{display:inline-block;padding:.3rem .7rem;border-radius:20px;font-size:.75rem;font-weight:700;text-transform:uppercase;color:#fff;letter-spacing:.05em;text-shadow:0 1px 2px rgba(0,0,0,.4)}.poke-types{display:flex;flex-wrap:wrap;gap:.5rem;margin:.75rem 0}.poke-card-layout{display:grid;grid-template-columns:340px 1fr;gap:2rem;animation:fadeInUp .5s ease}@media (max-width: 900px){.poke-card-layout{grid-template-columns:1fr}}.poke-sprite-card{text-align:center;display:flex;flex-direction:column;align-items:center}.poke-sprite-large{width:220px;height:220px;object-fit:contain;filter:drop-shadow(0 8px 24px rgba(0,0,0,.5));animation:pokeBob 3s ease-in-out infinite}@keyframes pokeBob{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.poke-name{font-size:1.6rem;font-weight:800;color:var(--text-primary);text-transform:capitalize;margin:.5rem 0}.poke-nav-row{display:flex;gap:.75rem;margin:1rem 0}.poke-nav-btn{flex:1}.poke-add-btn{width:100%;margin-top:.5rem}.poke-added{background:linear-gradient(135deg,#16a34a,#15803d)!important}.poke-section-title{font-size:1rem;font-weight:700;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.1em;margin-bottom:.75rem}.poke-stat-row{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.poke-stat-label{width:60px;font-size:.8rem;color:var(--text-secondary);font-weight:600;text-align:right;flex-shrink:0}.poke-stat-val{width:32px;font-size:.85rem;color:var(--text-primary);font-weight:700;text-align:right;flex-shrink:0}.poke-stat-bar{flex:1;height:8px;background:#ffffff14;border-radius:4px;overflow:hidden}.poke-stat-fill{height:100%;border-radius:4px;transition:width .8s ease}.poke-ability-list{display:flex;flex-wrap:wrap;gap:.5rem}.poke-ability-tag{padding:.4rem .8rem;background:#8b5cf626;border:1px solid rgba(139,92,246,.3);border-radius:20px;color:var(--text-secondary);font-size:.85rem;text-transform:capitalize}.poke-ability-tag.hidden{background:#ec489926;border-color:#ec48994d}.poke-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.poke-info-item{display:flex;flex-direction:column;gap:.2rem;padding:.75rem;background:#ffffff0a;border-radius:var(--radius-sm)}.poke-info-item span{font-size:.8rem;color:var(--text-tertiary)}.poke-info-item strong{color:var(--text-primary);font-size:1rem}.poke-error{color:#f87171;text-align:center;padding:2rem;font-size:1.1rem}.poke-team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1.25rem}.poke-team-card{text-align:center;display:flex;flex-direction:column;align-items:center;padding:1.25rem 1rem!important;transition:all .3s ease}.poke-team-card:hover{transform:translateY(-4px)}.poke-team-sprite{width:90px;height:90px;object-fit:contain;filter:drop-shadow(0 4px 12px rgba(0,0,0,.4))}.poke-team-name{font-size:1rem;font-weight:700;color:var(--text-primary);text-transform:capitalize;margin:.5rem 0 .25rem}.poke-team-level{color:var(--text-tertiary);font-size:.85rem;margin-bottom:.75rem}.poke-mini-hp{width:100%;margin-bottom:.25rem}.poke-mini-hp-text{color:var(--text-secondary);font-size:.8rem}.poke-mini-hp-bar{height:5px;background:#ffffff14;border-radius:3px;overflow:hidden;margin-top:4px}.poke-mini-hp-fill{height:100%;background:#4ade80;border-radius:3px;transition:width .5s ease}.poke-empty-slot{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;border:2px dashed rgba(255,255,255,.1)!important;background:#ffffff05!important}.poke-empty-icon{font-size:2.5rem;opacity:.3}.poke-empty-text{color:var(--text-tertiary);margin-top:.5rem;font-size:.9rem}.poke-remove-btn{width:100%;font-size:.85rem;padding:.5rem 1rem;background:#ef444426;border-color:#ef44444d;margin-top:.75rem}.poke-team-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.poke-team-count{color:var(--text-secondary)}.poke-team-actions{display:flex;gap:.75rem}.poke-battle-setup{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:1.5rem}@media (max-width: 768px){.poke-battle-setup{grid-template-columns:1fr}}.poke-setup-card{padding:1.5rem!important}.poke-setup-empty{color:var(--text-secondary)}.poke-select-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:.75rem}.poke-select-card{display:flex;flex-direction:column;align-items:center;padding:.75rem .5rem;background:#ffffff0a;border:2px solid rgba(255,255,255,.08);border-radius:var(--radius-md);cursor:pointer;transition:all .2s ease;text-align:center}.poke-select-card:hover{background:#ffffff14;border-color:#fff3;transform:translateY(-2px)}.poke-select-card.selected{border-color:#8b5cf6;background:#8b5cf626;box-shadow:0 0 16px #8b5cf64d}.poke-select-card img{width:60px;height:60px;object-fit:contain}.poke-select-card p{font-size:.75rem;color:var(--text-primary);text-transform:capitalize;margin:.3rem 0 0;font-weight:600}.poke-select-card span{font-size:.7rem;color:var(--text-tertiary)}.poke-start-btn-container{text-align:center;margin-top:2rem}.poke-start-btn{padding:1.1rem 3rem;font-size:1.2rem;letter-spacing:.05em}.poke-battle-arena{display:flex;flex-direction:column;gap:1.5rem}.poke-battle-field{position:relative;min-height:280px;background:linear-gradient(180deg,#1e3c7266,#0f193299)!important;border:1px solid rgba(255,255,255,.1)!important;overflow:hidden;display:flex;justify-content:space-between;align-items:flex-end;padding:2rem!important}.poke-battle-field:before{content:"";position:absolute;bottom:0;left:0;right:0;height:60px;background:#ffffff08;border-top:1px solid rgba(255,255,255,.06)}.poke-fighter{display:flex;align-items:flex-end;gap:1rem}.opp-fighter{flex-direction:row-reverse;align-self:flex-start}.player-fighter{align-self:flex-end}.poke-fighter-sprite{object-fit:contain;filter:drop-shadow(0 8px 20px rgba(0,0,0,.6))}.opp-sprite{width:140px;height:140px}.player-sprite{width:150px;height:150px}.poke-fighter-info{background:#0006;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);padding:.75rem 1rem;min-width:160px}.poke-fighter-name{font-size:1rem;font-weight:800;color:#fff;text-transform:capitalize}.poke-fighter-level{font-size:.8rem;color:#fff9;margin-bottom:.3rem}.poke-fighter-hp-text{font-size:.85rem;color:#fffc;margin-bottom:.4rem}.poke-battle-hp-bar{height:10px;background:#ffffff1a;border-radius:5px;overflow:hidden;width:100%}.poke-battle-hp-fill{height:100%;border-radius:5px;transition:width .6s ease,background .4s ease}.poke-battle-lower{display:grid;grid-template-columns:1fr 1.6fr;gap:1.5rem;align-items:start}@media (max-width: 768px){.poke-battle-lower{grid-template-columns:1fr}}.poke-battle-log{padding:1rem!important;max-height:240px;display:flex;flex-direction:column}.poke-battle-log h4{color:var(--text-secondary);margin-bottom:.5rem;font-size:.85rem}.poke-log-entries{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:.25rem}.poke-log-entry{font-size:.85rem;color:var(--text-secondary);padding:.3rem .5rem;border-radius:4px;background:#ffffff08;animation:fadeInUp .3s ease}.poke-log-entry:last-child{color:var(--text-primary);background:#8b5cf61a}.poke-battle-commands{padding:1.25rem!important}.poke-command-title{font-size:.9rem;font-weight:600;color:var(--text-secondary);margin-bottom:1rem;min-height:1.4em}.poke-action-btns{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.poke-action-btn{padding:.9rem .5rem;border:none;border-radius:var(--radius-md);font-weight:700;font-size:.95rem;cursor:pointer;transition:all .2s ease;color:#fff}.poke-action-btn:hover:not(:disabled){transform:translateY(-2px);filter:brightness(1.1)}.poke-action-btn:disabled{opacity:.5;cursor:not-allowed}.poke-action-btn.fight{background:linear-gradient(135deg,#ef4444,#b91c1c)}.poke-action-btn.bag{background:linear-gradient(135deg,#f59e0b,#d97706)}.poke-action-btn.poke{background:linear-gradient(135deg,#3b82f6,#2563eb)}.poke-action-btn.run{background:linear-gradient(135deg,#6b7280,#4b5563)}.poke-move-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:.75rem}.poke-move-btn{display:flex;flex-direction:column;gap:.25rem;padding:.7rem .75rem;background:#ffffff0d;border:2px solid rgba(255,255,255,.1);border-radius:var(--radius-md);cursor:pointer;color:#fff;text-align:left;transition:all .2s ease}.poke-move-btn:hover:not(:disabled){background:#ffffff1a;transform:translateY(-1px)}.poke-move-btn:disabled{opacity:.4;cursor:not-allowed}.poke-move-name{font-weight:700;font-size:.9rem}.poke-move-pp,.poke-move-pwr{font-size:.72rem;color:#ffffff80}.poke-item-grid{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}.poke-item-btn{padding:.75rem 1rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);color:#fff;font-size:.9rem;font-weight:600;cursor:pointer;text-align:left;transition:all .2s ease;display:flex;justify-content:space-between;align-items:center}.poke-item-btn:hover:not(:disabled){background:#ffffff1a}.poke-item-btn:disabled{opacity:.4;cursor:not-allowed}.poke-switch-grid{display:flex;flex-direction:column;gap:.5rem;margin-bottom:.75rem}.poke-switch-btn{display:flex;align-items:center;gap:.75rem;padding:.6rem .75rem;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);color:#fff;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease;text-transform:capitalize}.poke-switch-btn:hover:not(:disabled){background:#ffffff1a}.poke-switch-btn:disabled{opacity:.4;cursor:not-allowed}.poke-switch-status{font-size:.75rem;color:var(--text-tertiary)}.poke-back-btn{margin-top:.25rem;font-size:.85rem;padding:.5rem 1rem}.poke-result-screen{animation:fadeInScale .5s ease}.poke-result-card{text-align:center;padding:3rem!important}.poke-result-icon{font-size:4rem;margin-bottom:1rem}.poke-result-message{color:var(--text-primary);font-size:2rem;margin-bottom:1rem}.poke-result-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.confirm-dialog-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:1100;animation:fadeIn .3s ease}.confirm-dialog{background:#1e1e32f2;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.15);border-radius:var(--radius-lg);padding:2rem;max-width:400px;width:100%;animation:slideInUp .3s ease}.confirm-dialog h3{color:var(--text-primary);margin-bottom:1rem;font-size:1.5rem}.confirm-dialog p{color:var(--text-secondary);margin-bottom:2rem}.confirm-dialog-actions{display:flex;gap:1rem;justify-content:center}@media (max-width: 600px){.poke-battle-field{flex-direction:column;align-items:center;gap:1rem;padding:1rem!important;min-height:auto}.opp-fighter,.player-fighter{flex-direction:column;align-items:center}.poke-fighter-info{min-width:200px}.opp-sprite,.player-sprite{width:100px;height:100px}.poke-action-btns{grid-template-columns:1fr 1fr}.poke-team-grid{grid-template-columns:repeat(2,1fr)}.poke-result-actions{flex-direction:column}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;overflow-x:hidden;scroll-behavior:smooth}body{margin:0;padding:0;font-family:var(--font-primary);font-size:var(--text-base);font-weight:400;line-height:1.6;color:var(--gray-800);background-color:var(--background-default);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{width:100%;min-height:100vh;display:flex;flex-direction:column}:root{--brand-primary: #667eea;--brand-secondary: #764ba2;--brand-gradient: linear-gradient(135deg, var(--brand-primary) 0%, var(--brand-secondary) 100%);--success: #10b981;--success-dark: #059669;--warning: #f59e0b;--warning-dark: #d97706;--error: #ef4444;--error-dark: #dc2626;--info: #3b82f6;--info-dark: #2563eb;--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;--black: #000000;--font-primary: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, sans-serif;--font-secondary: "Georgia", "Times New Roman", serif;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--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);--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .3s cubic-bezier(.4, 0, .2, 1);--transition-slow: .5s cubic-bezier(.4, 0, .2, 1);--transition-bounce: .4s cubic-bezier(.175, .885, .32, 1.275);--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--breakpoint-2xl: 1536px;--navbar-height: 80px;--container-padding: 2rem;--border-radius-sm: .375rem;--border-radius-md: .5rem;--border-radius-lg: .75rem;--border-radius-xl: 1rem;--border-radius-2xl: 1.5rem;--border-radius-full: 9999px;--background-default: var(--gray-50)}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2;margin-bottom:var(--space-4);color:var(--gray-900)}h1{font-size:var(--text-5xl)}h2{font-size:var(--text-4xl)}h3{font-size:var(--text-3xl)}h4{font-size:var(--text-2xl)}h5{font-size:var(--text-xl)}h6{font-size:var(--text-lg)}p{margin-bottom:var(--space-4);line-height:1.7}a{color:var(--brand-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--brand-secondary);text-decoration:underline}.app-container{width:100%;min-height:100vh;display:flex;flex-direction:column}.page-content{width:100%;flex:1;padding-top:var(--navbar-height);min-height:calc(100vh - var(--navbar-height))}.container{width:100%;max-width:1400px;margin:0 auto;padding:0 var(--container-padding)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.m-0{margin:0}.p-0{padding:0}.mt-1{margin-top:var(--space-1)}.mt-2{margin-top:var(--space-2)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mt-8{margin-top:var(--space-8)}.mb-1{margin-bottom:var(--space-1)}.mb-2{margin-bottom:var(--space-2)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.mb-8{margin-bottom:var(--space-8)}.p-4{padding:var(--space-4)}.p-6{padding:var(--space-6)}.p-8{padding:var(--space-8)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-xs{font-size:var(--text-xs)}.text-sm{font-size:var(--text-sm)}.text-base{font-size:var(--text-base)}.text-lg{font-size:var(--text-lg)}.text-xl{font-size:var(--text-xl)}.text-2xl{font-size:var(--text-2xl)}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.text-white{color:var(--white)}.text-gray-500{color:var(--gray-500)}.text-gray-700{color:var(--gray-700)}.text-gray-900{color:var(--gray-900)}.text-brand{color:var(--brand-primary)}.bg-white{background-color:var(--white)}.bg-gray-50{background-color:var(--gray-50)}.bg-gray-100{background-color:var(--gray-100)}.rounded-sm{border-radius:var(--border-radius-sm)}.rounded-md{border-radius:var(--border-radius-md)}.rounded-lg{border-radius:var(--border-radius-lg)}.rounded-xl{border-radius:var(--border-radius-xl)}.rounded-full{border-radius:var(--border-radius-full)}.card{background:var(--white);border-radius:var(--border-radius-lg);padding:var(--space-6);box-shadow:var(--shadow-md);transition:transform var(--transition-base),box-shadow var(--transition-base);border:1px solid var(--gray-200)}.card:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl)}.grid{display:grid;gap:var(--space-6)}.grid-cols-1{grid-template-columns:repeat(1,1fr)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-6);font-size:var(--text-base);font-weight:600;border-radius:var(--border-radius-md);border:none;cursor:pointer;transition:all var(--transition-base);white-space:nowrap;letter-spacing:.3px}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--brand-gradient);color:var(--white);box-shadow:var(--shadow-md)}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-lg);filter:brightness(1.05)}.btn-success{background:linear-gradient(135deg,var(--success) 0%,var(--success-dark) 100%);color:var(--white)}.btn-success:hover:not(:disabled){background:linear-gradient(135deg,var(--success-dark) 0%,#047857 100%);transform:translateY(-2px);box-shadow:0 4px 12px #10b9814d}.btn-error{background:linear-gradient(135deg,var(--error) 0%,var(--error-dark) 100%);color:var(--white)}.btn-error:hover:not(:disabled){background:linear-gradient(135deg,var(--error-dark) 0%,#b91c1c 100%);transform:translateY(-2px);box-shadow:0 4px 12px #ef44444d}.form-group{margin-bottom:var(--space-4)}.form-label{display:block;margin-bottom:var(--space-2);font-weight:500;color:var(--gray-700)}.form-input{width:100%;padding:var(--space-3) var(--space-4);font-size:var(--text-base);border:2px solid var(--gray-200);border-radius:var(--border-radius-md);background:var(--white);color:var(--gray-800);transition:all var(--transition-fast)}.form-input:focus{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 3px #667eea1a}.form-input.error{border-color:var(--error)}.error-text{color:var(--error);font-size:var(--text-sm);margin-top:var(--space-1);display:block}@media (max-width: 1024px){:root{--container-padding: 1.5rem;--navbar-height: 70px}h1{font-size:var(--text-4xl)}h2{font-size:var(--text-3xl)}h3{font-size:var(--text-2xl)}}@media (max-width: 768px){:root{--container-padding: 1rem;--navbar-height: auto}h1{font-size:var(--text-3xl)}h2{font-size:var(--text-2xl)}h3{font-size:var(--text-xl)}.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:1fr}.container{padding:0 var(--container-padding)}}@media (max-width: 480px){h1{font-size:var(--text-2xl)}h2{font-size:var(--text-xl)}}
