.auth-container{min-height:calc(100vh - 140px);display:flex;align-items:center;justify-content:center;padding:2rem;background:linear-gradient(135deg,#41a2ec,tomato)}.auth-card{background:var(--bg-secondary);border-radius:16px;box-shadow:0 20px 40px var(--shadow-light);padding:2.5rem;width:100%;max-width:420px;animation:slideUp .5s ease-out;border:1px solid var(--border-color)}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.auth-header{text-align:center;margin-bottom:2rem}.auth-header h2{color:var(--text-primary);font-size:1.8rem;margin-bottom:.5rem;font-weight:600}.auth-header p{color:var(--text-secondary);font-size:.95rem}.error-message{background-color:var(--error-bg);color:var(--error-text);padding:.875rem;border-radius:8px;border:1px solid var(--error-border);font-size:.9rem;text-align:center;margin-bottom:1.5rem}.google-auth-button{width:100%;display:flex;align-items:center;justify-content:center;gap:.75rem;padding:.875rem 1rem;background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:8px;font-size:1rem;font-weight:500;color:var(--text-primary);cursor:pointer;transition:all .3s ease;margin-bottom:1.5rem}.google-auth-button:hover:not(:disabled){border-color:#4285f4;box-shadow:0 2px 8px #4285f433;transform:translateY(-1px)}.google-auth-button:disabled{opacity:.7;cursor:not-allowed;transform:none}.google-icon{display:flex;align-items:center;justify-content:center}.auth-divider{position:relative;text-align:center;margin:1.5rem 0}.auth-divider:before{content:"";position:absolute;top:50%;left:0;right:0;height:1px;background:var(--border-color)}.auth-divider span{background:var(--bg-secondary);color:var(--text-secondary);padding:0 1rem;font-size:.9rem;position:relative}.auth-form{display:flex;flex-direction:column;gap:1.5rem}.form-group label{font-weight:500;color:var(--text-primary);font-size:.9rem}.form-group input{padding:.875rem;border:2px solid var(--border-color);border-radius:8px;font-size:1rem;transition:all .3s ease;background-color:var(--bg-tertiary);color:var(--text-primary)}.form-group input:focus{outline:none;border-color:var(--accent-primary);background-color:var(--bg-secondary);box-shadow:0 0 0 3px #ff63471a}.form-group input:disabled{background-color:var(--bg-tertiary);cursor:not-allowed;opacity:.7}.auth-button{background:linear-gradient(135deg,var(--accent-primary) 0%,var(--accent-secondary) 100%);color:#fff;border:none;padding:1rem;border-radius:8px;font-size:1rem;font-weight:600;transition:all .3s ease;margin-top:.5rem}.auth-button:hover:not(:disabled){background:linear-gradient(135deg,#e8533f,#ff7043);transform:translateY(-2px);box-shadow:0 8px 20px #ff63474d}.auth-button:disabled{opacity:.7;cursor:not-allowed;transform:none}.auth-footer{text-align:center;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid var(--border-color)}.auth-footer p{color:var(--text-secondary);font-size:.9rem}.auth-link{color:var(--accent-primary);font-weight:500;transition:color .3s ease}.auth-link:hover{color:#e8533f;text-decoration:underline}@media (max-width: 480px){.auth-container{padding:1rem}.auth-card{padding:2rem}.auth-header h2{font-size:1.5rem}.google-auth-button{font-size:.9rem;padding:.75rem}}.search-bar{display:flex;justify-content:center;gap:10px;margin:20px 0;flex-wrap:wrap}.search-bar input{width:100%;max-width:300px;padding:8px;border:1px solid var(--border-color);border-radius:6px;background-color:var(--bg-secondary);color:var(--text-primary);transition:all .3s ease}.search-bar input:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 3px #ff63471a}.search-bar button{background-color:var(--accent-primary);color:#fff;padding:8px 12px;border:none;border-radius:6px;cursor:pointer;transition:all .3s ease}.search-bar button:hover{background-color:#e8533f}.filters{display:flex;justify-content:center;gap:1.5rem;margin-bottom:2rem;flex-wrap:wrap;padding:1.5rem;background:var(--bg-secondary);border-radius:12px;box-shadow:0 2px 8px var(--shadow-light);max-width:1000px;margin-left:auto;margin-right:auto;border:1px solid var(--border-color)}.filters label{display:flex;flex-direction:column;font-weight:600;color:var(--text-primary);font-size:.9rem;min-width:140px}.filters select{padding:.5rem;margin-top:.5rem;border:2px solid var(--border-color);border-radius:6px;font-size:.9rem;background-color:var(--bg-tertiary);color:var(--text-primary);transition:all .3s ease}.filters select:focus{outline:none;border-color:var(--accent-primary);background-color:var(--bg-secondary);box-shadow:0 0 0 3px #ff63471a}.filters select:hover{border-color:var(--accent-secondary)}@media (max-width: 768px){.filters{gap:1rem;padding:1rem;margin-bottom:1.5rem}.filters label{min-width:120px;font-size:.85rem}.filters select{font-size:.85rem}}@media (max-width: 480px){.filters{flex-direction:column;gap:.75rem}.filters label{min-width:auto}}.recipe-card{background:var(--bg-secondary);border-radius:12px;box-shadow:0 4px 12px var(--shadow-light);overflow:hidden;transition:all .3s ease;cursor:pointer;position:relative;border:1px solid var(--border-color)}.recipe-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px var(--shadow-medium)}.recipe-image-container{position:relative;overflow:hidden}.recipe-card img{width:100%;height:200px;object-fit:cover;transition:transform .3s ease}.recipe-card:hover img{transform:scale(1.05)}.favorite-btn{position:absolute;top:.75rem;right:.75rem;background:#ffffffe6;border:none;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.favorite-btn:hover{background:#fff;transform:scale(1.1)}.favorite-btn.favorited{background:#ff6347e6;color:#fff}.recipe-card-content{padding:1rem}.recipe-card-content h3{font-size:1.1rem;color:var(--text-primary);margin-bottom:.75rem;line-height:1.4;font-weight:600}.recipe-meta{display:flex;flex-direction:column;gap:.25rem;margin-bottom:.75rem}.recipe-time,.recipe-diet,.recipe-cuisine{font-size:.85rem;color:var(--text-secondary);display:flex;align-items:center;gap:.25rem}.recipe-nutrition{display:flex;justify-content:space-between;align-items:center;padding-top:.5rem;border-top:1px solid var(--border-color)}.calories,.protein{font-size:.8rem;color:var(--accent-primary);font-weight:500}@media (max-width: 480px){.recipe-card img{height:180px}.recipe-card-content{padding:.75rem}.recipe-card-content h3{font-size:1rem}.favorite-btn{width:36px;height:36px;font-size:1rem}.recipe-nutrition{flex-direction:column;gap:.25rem;align-items:flex-start}}.recipe-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px;padding:10px}.modal-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{position:relative;background:var(--bg-secondary);padding:20px;border-radius:8px;max-width:600px;max-height:80vh;overflow-y:auto;border:1px solid var(--border-color)}.modal-close{position:absolute;top:8px;right:12px;background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--text-primary);transition:color .3s ease}.modal-close:hover{color:var(--accent-primary)}.recipe-modal{max-width:600px;width:100%}.recipe-modal-header{display:flex;gap:1rem;margin-bottom:1.5rem}.recipe-modal-image{width:200px;height:150px;object-fit:cover;border-radius:8px;flex-shrink:0}.recipe-modal-info{flex:1}.recipe-modal-info h2{font-size:1.5rem;color:var(--text-primary);margin-bottom:1rem;line-height:1.3}.recipe-modal-meta{display:flex;flex-wrap:wrap;gap:.75rem}.meta-item{background-color:var(--bg-tertiary);padding:.25rem .5rem;border-radius:4px;font-size:.85rem;color:var(--text-secondary);border:1px solid var(--border-color)}.recipe-modal-content{display:flex;flex-direction:column;gap:1.5rem}.recipe-section h3{font-size:1.2rem;color:var(--text-primary);margin-bottom:.75rem;border-bottom:2px solid var(--accent-primary);padding-bottom:.25rem}.nutrition-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.nutrition-item{background-color:var(--bg-tertiary);padding:1rem;border-radius:8px;text-align:center;border:1px solid var(--border-color)}.nutrition-label{display:block;font-size:.85rem;color:var(--text-secondary);margin-bottom:.25rem}.nutrition-value{display:block;font-size:1.2rem;font-weight:600;color:var(--accent-primary)}.ingredients-list{list-style:none;padding:0;margin:0}.ingredient-item{display:flex;align-items:center;gap:.5rem;padding:.5rem 0;border-bottom:1px solid var(--border-color);color:var(--text-primary)}.ingredient-item:last-child{border-bottom:none}.ingredient-bullet{color:var(--accent-primary);font-weight:700;font-size:1.2rem}.recipe-actions{display:flex;justify-content:center;padding-top:1rem;border-top:1px solid var(--border-color)}.action-btn{background:linear-gradient(135deg,var(--accent-primary) 0%,var(--accent-secondary) 100%);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease}.action-btn:hover{background:linear-gradient(135deg,#e8533f,#ff7043);transform:translateY(-2px);box-shadow:0 8px 20px #ff63474d}@media (max-width: 768px){.recipe-modal-header{flex-direction:column}.recipe-modal-image{width:100%;height:200px}.nutrition-grid{grid-template-columns:1fr;gap:.75rem}.recipe-modal-meta{justify-content:center}}@media (max-width: 480px){.recipe-modal{margin:1rem}.recipe-modal-info h2{font-size:1.3rem}.meta-item{font-size:.8rem}}.homepage{max-width:1200px;margin:0 auto;padding:0 1rem}.homepage-header{text-align:center;margin-bottom:2rem;padding:2rem 0}.homepage-header h1{font-size:2.5rem;color:var(--text-primary);margin-bottom:.5rem;font-weight:700}.homepage-header p{font-size:1.1rem;color:var(--text-secondary);max-width:600px;margin:0 auto}.no-recipes{text-align:center;padding:3rem 2rem;color:var(--text-primary);background:var(--bg-secondary);border-radius:16px;box-shadow:0 4px 12px var(--shadow-light);margin:2rem 0;border:1px solid var(--border-color)}.no-recipes-img{width:280px;max-width:90%;margin-bottom:1.5rem;border-radius:16px;box-shadow:0 4px 12px var(--shadow-light)}.no-recipes h2{font-size:1.8rem;margin-bottom:.5rem;color:var(--text-primary)}.no-recipes p{font-size:1rem;color:var(--text-secondary);margin-bottom:1.5rem}.reset-btn{padding:.75rem 1.5rem;background:linear-gradient(135deg,var(--accent-primary) 0%,var(--accent-secondary) 100%);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .3s ease}.reset-btn:hover{background:linear-gradient(135deg,#e8533f,#ff7043);transform:translateY(-2px);box-shadow:0 8px 20px #ff63474d}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:4rem 2rem;color:var(--text-secondary);background:var(--bg-secondary);border-radius:16px;box-shadow:0 4px 12px var(--shadow-light);margin:2rem 0;border:1px solid var(--border-color)}.loading-container p{margin-top:1rem;font-size:1.1rem}@media (max-width: 768px){.homepage-header h1{font-size:2rem}.homepage-header p{font-size:1rem}.no-recipes{padding:2rem 1rem}.no-recipes h2{font-size:1.5rem}}.favorites-page{max-width:1200px;margin:0 auto;padding:2rem 1rem}.favorites-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;padding-bottom:1rem;border-bottom:2px solid var(--border-color)}.favorites-header h2{font-size:2rem;color:var(--text-primary);font-weight:600}.clear-all-btn{background-color:#dc3545;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;font-size:.9rem;font-weight:500;transition:all .3s ease}.clear-all-btn:hover{background-color:#c82333;transform:translateY(-1px)}.no-favorites{text-align:center;padding:4rem 2rem;background:var(--bg-secondary);border-radius:16px;box-shadow:0 4px 12px var(--shadow-light);border:1px solid var(--border-color)}.no-favorites-icon{font-size:4rem;margin-bottom:1rem}.no-favorites h3{font-size:1.5rem;color:var(--text-primary);margin-bottom:.5rem}.no-favorites p{color:var(--text-secondary);font-size:1rem;max-width:400px;margin:0 auto}.favorites-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.5rem}.favorite-card{background:var(--bg-secondary);border-radius:12px;box-shadow:0 4px 12px var(--shadow-light);overflow:hidden;transition:all .3s ease;border:1px solid var(--border-color)}.favorite-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px var(--shadow-medium)}.favorite-card img{width:100%;height:200px;object-fit:cover}.favorite-card-content{padding:1rem}.favorite-card-content h3{font-size:1.1rem;color:var(--text-primary);margin-bottom:1rem;line-height:1.4}.favorite-card-actions{display:flex;justify-content:flex-end}.remove-btn{background-color:#dc3545;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;font-size:.85rem;font-weight:500;transition:all .3s ease}.remove-btn:hover{background-color:#c82333;transform:translateY(-1px)}@media (max-width: 768px){.favorites-page{padding:1rem}.favorites-header{flex-direction:column;gap:1rem;align-items:stretch;text-align:center}.favorites-header h2{font-size:1.5rem}.favorites-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem}.no-favorites{padding:2rem 1rem}.no-favorites h3{font-size:1.3rem}}.about-page{min-height:calc(100vh - 140px);background-color:var(--bg-primary)}.about-container{max-width:1200px;margin:0 auto;padding:0 1rem}.about-hero{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center;padding:4rem 0;background:var(--bg-secondary);border-radius:16px;margin:2rem 0;padding:3rem;box-shadow:0 4px 12px var(--shadow-light);border:1px solid var(--border-color)}.about-hero-content h1{font-size:3rem;color:var(--text-primary);margin-bottom:1rem;font-weight:700}.hero-subtitle{font-size:1.2rem;color:var(--text-secondary);line-height:1.6}.about-hero-image img{width:100%;height:300px;object-fit:cover;border-radius:12px}.about-section{background:var(--bg-secondary);border-radius:16px;padding:3rem;margin:2rem 0;box-shadow:0 4px 12px var(--shadow-light);border:1px solid var(--border-color)}.section-content h2{font-size:2.2rem;color:var(--text-primary);margin-bottom:1.5rem;text-align:center}.section-content p{font-size:1.1rem;line-height:1.8;color:var(--text-secondary);margin-bottom:1.5rem}.mission-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-top:2rem}.mission-item{text-align:center;padding:2rem;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:12px;transition:transform .3s ease}.mission-item:hover{transform:translateY(-4px)}.mission-icon{font-size:3rem;margin-bottom:1rem}.mission-item h3{font-size:1.3rem;color:var(--text-primary);margin-bottom:1rem}.mission-item p{color:var(--text-secondary);line-height:1.6}.team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-top:2rem}.team-member{text-align:center;background:var(--bg-tertiary);border:1px solid var(--border-color);padding:2rem;border-radius:12px;transition:transform .3s ease}.team-member:hover{transform:translateY(-4px)}.team-member img{width:120px;height:120px;border-radius:50%;object-fit:cover;margin-bottom:1rem}.team-member h3{font-size:1.3rem;color:var(--text-primary);margin-bottom:.5rem}.team-role{color:var(--accent-primary);font-weight:600;margin-bottom:1rem}.team-member p:last-child{color:var(--text-secondary);line-height:1.6}.stats-section{background:linear-gradient(135deg,var(--accent-primary) 0%,var(--accent-secondary) 100%);color:#fff}.stats-section h2{color:#fff}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;margin-top:2rem}.stat-item{text-align:center;padding:2rem;background:#ffffff1a;border-radius:12px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.stat-number{font-size:3rem;font-weight:700;margin-bottom:.5rem}.stat-label{font-size:1.1rem;opacity:.9}@media (max-width: 768px){.about-hero{grid-template-columns:1fr;gap:2rem;padding:2rem}.about-hero-content h1{font-size:2.2rem}.about-section{padding:2rem}.section-content h2{font-size:1.8rem}.mission-grid,.team-grid,.stats-grid{grid-template-columns:1fr;gap:1.5rem}}@media (max-width: 480px){.about-container{padding:0 .5rem}.about-hero,.about-section{padding:1.5rem}.about-hero-content h1{font-size:1.8rem}.hero-subtitle{font-size:1rem}}.contact-page{min-height:calc(100vh - 140px);background-color:var(--bg-primary);padding:2rem 0}.contact-container{max-width:1200px;margin:0 auto;padding:0 1rem}.contact-hero{text-align:center;background:var(--bg-secondary);padding:3rem;border-radius:16px;margin-bottom:2rem;box-shadow:0 4px 12px var(--shadow-light);border:1px solid var(--border-color)}.contact-hero h1{font-size:2.5rem;color:var(--text-primary);margin-bottom:1rem;font-weight:700}.contact-hero p{font-size:1.1rem;color:var(--text-secondary);max-width:600px;margin:0 auto}.contact-content{display:grid;grid-template-columns:2fr 1fr;gap:3rem}.contact-form-section,.contact-info-section{background:var(--bg-secondary);padding:2.5rem;border-radius:16px;box-shadow:0 4px 12px var(--shadow-light);border:1px solid var(--border-color)}.contact-form-section h2,.contact-info-section h2{font-size:1.8rem;color:var(--text-primary);margin-bottom:1.5rem}.success-message{background-color:var(--success-bg);color:var(--success-text);padding:1rem;border-radius:8px;margin-bottom:1.5rem;border:1px solid var(--success-border)}.contact-form{display:flex;flex-direction:column;gap:1.5rem}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-weight:600;color:var(--text-primary);font-size:.9rem}.form-group input,.form-group select,.form-group textarea{padding:.875rem;border:2px solid var(--border-color);border-radius:8px;font-size:1rem;transition:all .3s ease;background-color:var(--bg-tertiary);color:var(--text-primary)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--accent-primary);background-color:var(--bg-secondary);box-shadow:0 0 0 3px #ff63471a}.form-group textarea{resize:vertical;min-height:120px}.submit-btn{background:linear-gradient(135deg,var(--accent-primary) 0%,var(--accent-secondary) 100%);color:#fff;border:none;padding:1rem 2rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;align-self:flex-start}.submit-btn:hover:not(:disabled){background:linear-gradient(135deg,#e8533f,#ff7043);transform:translateY(-2px);box-shadow:0 8px 20px #ff63474d}.submit-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.contact-info-grid{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:2rem}.contact-info-item{display:flex;gap:1rem;align-items:flex-start}.contact-icon{font-size:1.5rem;width:40px;height:40px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.contact-details h3{font-size:1.1rem;color:var(--text-primary);margin-bottom:.5rem}.contact-details p{color:var(--text-secondary);line-height:1.6;margin:0}.faq-section{margin-top:2rem;padding-top:2rem;border-top:1px solid var(--border-color)}.faq-section h3{font-size:1.3rem;color:var(--text-primary);margin-bottom:1rem}.faq-item{margin-bottom:1.5rem}.faq-item h4{font-size:1rem;color:var(--accent-primary);margin-bottom:.5rem}.faq-item p{color:var(--text-secondary);line-height:1.6;margin:0}@media (max-width: 768px){.contact-content{grid-template-columns:1fr;gap:2rem}.form-row{grid-template-columns:1fr}.contact-hero{padding:2rem}.contact-hero h1{font-size:2rem}.contact-form-section,.contact-info-section{padding:2rem}}@media (max-width: 480px){.contact-container{padding:0 .5rem}.contact-hero,.contact-form-section,.contact-info-section{padding:1.5rem}.contact-hero h1{font-size:1.8rem}.submit-btn{width:100%}}.navbar{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(135deg,var(--accent-primary) 0%,var(--accent-secondary) 100%);padding:1rem 2rem;color:#fff;box-shadow:0 2px 10px var(--shadow-light);position:sticky;top:0;z-index:100}.navbar-logo{font-size:1.8rem;font-weight:700;display:flex;align-items:center;gap:.5rem}.navbar-logo a{color:#fff;text-decoration:none;display:flex;align-items:center;gap:.5rem}.navbar-logo span{font-family:Georgia,serif}.navbar-hamburger{display:none;flex-direction:column;cursor:pointer;gap:4px}.navbar-hamburger span{width:25px;height:3px;background-color:#fff;transition:all .3s ease}.navbar-links{display:flex;align-items:center;gap:1.5rem}.nav-link{color:#fff;text-decoration:none;font-weight:500;font-size:1rem;padding:.5rem 1rem;border-radius:6px;transition:all .3s ease}.nav-link:hover{background-color:#ffffff1a;transform:translateY(-1px)}.theme-toggle{background:#fff3;border:1px solid rgba(255,255,255,.3);color:#fff;padding:.5rem;border-radius:50%;width:40px;height:40px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;cursor:pointer;transition:all .3s ease}.theme-toggle:hover{background-color:#ffffff4d;transform:translateY(-1px) scale(1.05)}.user-info{display:flex;align-items:center;gap:1rem}.user-name{font-size:.9rem;opacity:.9}.logout-btn{background-color:#fff3;color:#fff;border:1px solid rgba(255,255,255,.3);padding:.5rem 1rem;border-radius:6px;font-size:.9rem;font-weight:500;transition:all .3s ease}.logout-btn:hover{background-color:#ffffff4d;transform:translateY(-1px)}.navbar-loading{color:#fffc;font-size:.9rem}@media (max-width: 768px){.navbar{padding:1rem}.navbar-hamburger{display:flex}.navbar-links{position:fixed;top:70px;left:0;right:0;background:linear-gradient(135deg,var(--accent-primary) 0%,var(--accent-secondary) 100%);flex-direction:column;padding:2rem;gap:1rem;transform:translateY(-100%);opacity:0;visibility:hidden;transition:all .3s ease;box-shadow:0 4px 12px var(--shadow-light)}.navbar-links.active{transform:translateY(0);opacity:1;visibility:visible}.nav-link{width:100%;text-align:center;padding:1rem;border-radius:8px}.theme-toggle{align-self:center}.user-info{flex-direction:column;gap:.5rem;width:100%;text-align:center}.user-name{font-size:.85rem}.logout-btn{width:100%;padding:.75rem}.navbar-logo{font-size:1.5rem}}@media (max-width: 480px){.navbar{padding:.75rem}.navbar-logo{font-size:1.3rem}.navbar-links{top:60px;padding:1.5rem}}.footer{background:var(--bg-secondary);color:var(--text-primary);margin-top:auto;border-top:1px solid var(--border-color);transition:background-color .3s ease,color .3s ease}.footer-container{max-width:1200px;margin:0 auto;padding:0 1rem}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;padding:3rem 0 2rem}.footer-section h3,.footer-section h4{margin-bottom:1rem;color:var(--accent-primary)}.footer-logo h3{font-size:1.5rem;margin-bottom:.5rem}.footer-logo p{color:var(--text-secondary);line-height:1.6;margin-bottom:1.5rem}.social-links{display:flex;gap:1rem}.social-links a{display:inline-block;width:40px;height:40px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:50%;text-align:center;line-height:40px;font-size:1.2rem;transition:all .3s ease;text-decoration:none}.social-links a:hover{background:var(--accent-primary);transform:translateY(-2px);border-color:var(--accent-primary)}.footer-links{list-style:none;padding:0;margin:0}.footer-links li{margin-bottom:.5rem}.footer-links a{color:var(--text-secondary);text-decoration:none;transition:color .3s ease}.footer-links a:hover{color:var(--accent-primary)}.contact-info p{color:var(--text-secondary);margin-bottom:.5rem;display:flex;align-items:center;gap:.5rem}.newsletter-section{background:var(--bg-tertiary);border:1px solid var(--border-color);padding:2rem;border-radius:12px;margin:2rem 0;text-align:center}.newsletter-section h4{margin-bottom:.5rem;color:var(--accent-primary)}.newsletter-section p{color:var(--text-secondary);margin-bottom:1.5rem}.newsletter-form{display:flex;gap:1rem;max-width:400px;margin:0 auto}.newsletter-input{flex:1;padding:.75rem;border:1px solid var(--border-color);border-radius:6px;font-size:1rem;background-color:var(--bg-secondary);color:var(--text-primary)}.newsletter-input:focus{outline:none;border-color:var(--accent-primary)}.newsletter-btn{background:var(--accent-primary);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:6px;font-weight:500;cursor:pointer;transition:background .3s ease}.newsletter-btn:hover{background:#e8533f}.footer-bottom{border-top:1px solid var(--border-color);padding:1.5rem 0}.footer-bottom-content{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}.footer-bottom-content p{color:var(--text-secondary)}.footer-bottom-links{display:flex;gap:2rem}.footer-bottom-links a{color:var(--text-secondary);text-decoration:none;font-size:.9rem;transition:color .3s ease}.footer-bottom-links a:hover{color:var(--accent-primary)}@media (max-width: 768px){.footer-content{grid-template-columns:1fr;gap:1.5rem;padding:2rem 0 1.5rem}.newsletter-form{flex-direction:column}.footer-bottom-content{flex-direction:column;text-align:center}.footer-bottom-links{gap:1rem}}@media (max-width: 480px){.footer-container{padding:0 .5rem}.newsletter-section{padding:1.5rem;margin:1.5rem 0}.social-links{justify-content:center}}:root{--bg-primary: #f8f9fa;--bg-secondary: #ffffff;--bg-tertiary: #f8f9fa;--text-primary: #333333;--text-secondary: #666666;--text-muted: #999999;--border-color: #e1e5e9;--shadow-light: rgba(0, 0, 0, .1);--shadow-medium: rgba(0, 0, 0, .15);--accent-primary: #ff6347;--accent-secondary: #ff8a65;--success-bg: #d4edda;--success-text: #155724;--success-border: #c3e6cb;--error-bg: #fee;--error-text: #c53030;--error-border: #fed7d7}.dark{--bg-primary: #1a1a1a;--bg-secondary: #2d2d2d;--bg-tertiary: #3a3a3a;--text-primary: #ffffff;--text-secondary: #cccccc;--text-muted: #999999;--border-color: #404040;--shadow-light: rgba(0, 0, 0, .3);--shadow-medium: rgba(0, 0, 0, .4);--accent-primary: #ff6347;--accent-secondary: #ff8a65;--success-bg: #1e4620;--success-text: #4ade80;--success-border: #166534;--error-bg: #4c1d1d;--error-text: #f87171;--error-border: #7f1d1d}.app{min-height:100vh;display:flex;flex-direction:column;background-color:var(--bg-primary);color:var(--text-primary);transition:background-color .3s ease,color .3s ease}.main-content{flex:1;padding-top:20px}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;color:var(--text-secondary)}.loading-spinner{width:40px;height:40px;border:4px solid var(--border-color);border-top:4px solid var(--accent-primary);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6;color:var(--text-primary);background-color:var(--bg-primary);transition:background-color .3s ease,color .3s ease}button{cursor:pointer;transition:all .3s ease}button:hover{transform:translateY(-1px)}a{text-decoration:none;color:inherit}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}
