@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";.home-container{width:100%;overflow-x:hidden}.hero-section{display:flex;align-items:center;justify-content:space-between;padding:6rem 10%;min-height:90vh;background:linear-gradient(135deg,#f5f3ff,#fdf2f8,#eff6ff);position:relative;overflow:hidden}.hero-section:before{content:"";position:absolute;top:-50%;right:-20%;width:80%;height:150%;background:radial-gradient(circle,rgba(124,58,237,.05) 0%,transparent 70%);pointer-events:none}.hero-section:after{content:"";position:absolute;bottom:-30%;left:-20%;width:60%;height:100%;background:radial-gradient(circle,rgba(236,72,153,.05) 0%,transparent 70%);pointer-events:none}.hero-content{flex:1;max-width:650px;position:relative;z-index:1;animation:slideUp .8s ease-out}.hero-content h1{font-size:clamp(2.5rem,5vw,4rem);line-height:1.1;margin-bottom:1.5rem;color:var(--text-dark);font-weight:800;letter-spacing:-.03em}.hero-content h1 .gradient-text{background:var(--primary-gradient);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.hero-subtitle{font-size:1.25rem;line-height:1.7;color:var(--text-medium);margin-bottom:2.5rem;max-width:540px}.hero-buttons{display:flex;gap:1rem;flex-wrap:wrap}.hero-image{flex:1;display:flex;justify-content:center;align-items:center;position:relative;z-index:1;animation:slideInRight .8s ease-out .2s both}.hero-image img{max-width:100%;height:auto;border-radius:var(--radius-2xl);box-shadow:var(--shadow-2xl)}.section-header{text-align:center;max-width:700px;margin:0 auto 4rem}.section-header h2{font-size:clamp(2rem,4vw,3rem);color:var(--text-dark);margin-bottom:1rem;font-weight:800;letter-spacing:-.02em}.section-header p{font-size:1.125rem;color:var(--text-medium);line-height:1.7}.features-section{padding:6rem 10%;background-color:var(--surface);position:relative}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem}.feature-card{background:var(--surface);border-radius:var(--radius-xl);padding:2.5rem;box-shadow:var(--shadow-card);border:1px solid var(--border-light);text-align:center;transition:all var(--transition-normal);position:relative;overflow:hidden}.feature-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--primary-gradient);opacity:0;transition:opacity var(--transition-normal)}.feature-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-card-hover)}.feature-card:hover:before{opacity:1}.feature-icon{width:70px;height:70px;display:flex;align-items:center;justify-content:center;font-size:2rem;background:var(--soft-purple);color:var(--primary);margin:0 auto 1.5rem;border-radius:var(--radius-lg);transition:all var(--transition-normal)}.feature-card:hover .feature-icon{background:var(--primary-gradient);color:#fff;transform:scale(1.1)}.feature-card h3{font-size:1.25rem;color:var(--text-dark);margin-bottom:.75rem;font-weight:700}.feature-card p{color:var(--text-medium);line-height:1.6;font-size:.95rem;margin-bottom:0}.how-it-works-section{padding:6rem 10%;background:linear-gradient(180deg,var(--surface) 0%,var(--soft-purple) 100%)}.steps-container{display:flex;justify-content:center;flex-wrap:wrap;gap:2rem;position:relative}.steps-container:before{content:"";position:absolute;top:50px;left:20%;right:20%;height:3px;background:linear-gradient(90deg,transparent,var(--primary-light),transparent);z-index:0}.step-card{flex:1;min-width:220px;max-width:280px;text-align:center;padding:2rem;position:relative;z-index:1}.step-number{width:64px;height:64px;display:flex;align-items:center;justify-content:center;background:var(--primary-gradient);color:#fff;font-size:1.5rem;font-weight:700;border-radius:50%;margin:0 auto 1.5rem;box-shadow:0 10px 30px -10px #7c3aed66;position:relative}.step-number:after{content:"";position:absolute;width:80px;height:80px;border:2px dashed var(--primary-light);border-radius:50%;opacity:.5}.step-card h3{font-size:1.2rem;color:var(--text-dark);margin-bottom:.75rem;font-weight:700}.step-card p{color:var(--text-medium);font-size:.95rem;line-height:1.6}.benefits-section{display:flex;align-items:center;padding:6rem 10%;background:var(--surface);gap:4rem}.benefits-content{flex:1;max-width:550px}.benefits-content h2{font-size:clamp(1.75rem,3vw,2.5rem);color:var(--text-dark);margin-bottom:1.5rem;font-weight:800;letter-spacing:-.02em}.benefits-list{list-style:none;padding:0;margin:0 0 2rem}.benefits-list li{margin-bottom:1.25rem;padding-left:2.5rem;position:relative;color:var(--text-medium);font-size:1.05rem;line-height:1.6}.benefits-list li i{position:absolute;left:0;top:.25rem;width:24px;height:24px;display:flex;align-items:center;justify-content:center;color:var(--success);background:var(--success-light);border-radius:50%;font-size:.75rem}.benefits-image{flex:1;display:flex;justify-content:center;align-items:center}.benefits-image img{max-width:100%;height:auto;border-radius:var(--radius-2xl);box-shadow:var(--shadow-xl)}.testimonials-section{padding:6rem 10%;background:linear-gradient(135deg,var(--soft-pink) 0%,var(--soft-purple) 100%)}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem}.testimonial-card{background:var(--surface);border-radius:var(--radius-xl);padding:2rem;box-shadow:var(--shadow-card);border:1px solid var(--border-light);display:flex;flex-direction:column;transition:all var(--transition-normal)}.testimonial-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-card-hover)}.testimonial-text{flex:1;margin-bottom:1.5rem}.testimonial-text p{color:var(--text-dark);font-style:italic;line-height:1.7;position:relative;padding-left:1rem;border-left:3px solid var(--primary-light);margin-bottom:0}.testimonial-author{display:flex;align-items:center;gap:.75rem}.testimonial-author .avatar{width:48px;height:48px;border-radius:50%;background:var(--primary-gradient);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700}.testimonial-author p{margin:0;color:var(--text-medium);font-size:.875rem}.testimonial-author p:first-child{color:var(--text-dark);font-weight:600;font-size:1rem}.faq-section{padding:6rem 10%;background:var(--surface)}.faq-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:1.5rem;max-width:1000px;margin:0 auto}.faq-item{background:var(--surface);border-radius:var(--radius-lg);padding:1.75rem;box-shadow:var(--shadow-card);border:1px solid var(--border-light);transition:all var(--transition-normal)}.faq-item:hover{border-color:var(--primary-light);box-shadow:var(--shadow-md)}.faq-item h3{font-size:1.05rem;color:var(--text-dark);margin-bottom:.75rem;font-weight:600;display:flex;align-items:flex-start;gap:.75rem}.faq-item h3:before{content:"?";display:flex;align-items:center;justify-content:center;width:24px;height:24px;min-width:24px;background:var(--soft-purple);color:var(--primary);border-radius:50%;font-size:.75rem;font-weight:700}.faq-item p{color:var(--text-medium);line-height:1.6;font-size:.95rem;padding-left:2.25rem;margin-bottom:0}.cta-section{padding:6rem 10%;text-align:center;background:var(--primary-gradient);color:#fff;position:relative;overflow:hidden}.cta-section:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.05'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E")}.cta-section h2{font-size:clamp(2rem,4vw,3rem);margin-bottom:1rem;font-weight:800;position:relative}.cta-section p{font-size:1.2rem;margin-bottom:2.5rem;opacity:.95;max-width:600px;margin-left:auto;margin-right:auto;position:relative}.cta-section .primary-button{background:#fff;color:var(--primary);font-size:1.1rem;padding:1rem 2.5rem;box-shadow:0 10px 30px -10px #0000004d}.cta-section .primary-button:hover{background:#fffffff2;transform:translateY(-3px) scale(1.02);box-shadow:0 15px 40px -10px #0006}.home-footer{background:linear-gradient(180deg,#1f2937,#111827);color:#fff;padding:5rem 10% 2rem}.footer-content{display:flex;flex-wrap:wrap;justify-content:space-between;gap:3rem;margin-bottom:3rem}.footer-brand{max-width:300px}.footer-logo{display:flex;align-items:center;font-size:1.5rem;font-weight:700;margin-bottom:1rem}.footer-logo .logo-icon-img{width:180px;height:70px;object-fit:contain;filter:brightness(0) invert(1)}.logo-icon{margin-right:.5rem;font-size:1.8rem}.footer-brand p{color:#fff9;font-size:.95rem;line-height:1.7;margin-bottom:0}.footer-links{display:flex;flex-wrap:wrap;gap:4rem}.footer-column h4{font-size:1rem;margin-bottom:1.5rem;font-weight:600;color:#fff;text-transform:uppercase;letter-spacing:.05em}.footer-column ul{list-style:none;padding:0;margin:0}.footer-column ul li{margin-bottom:.75rem}.footer-column ul li a{color:#fff9;text-decoration:none;font-size:.95rem;transition:all var(--transition-fast);display:inline-flex;align-items:center;gap:.5rem}.footer-column ul li a:hover{color:#fff;transform:translate(4px)}.social-links{display:flex;gap:1rem}.social-links li a{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#ffffff1a;border-radius:50%;font-size:1.1rem;transition:all var(--transition-normal)}.social-links li a:hover{background:var(--primary);transform:translateY(-3px)}.footer-bottom{text-align:center;padding-top:2rem;border-top:1px solid rgba(255,255,255,.1);color:#ffffff80;font-size:.875rem}.primary-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background:var(--primary-gradient);color:#fff;padding:.875rem 2rem;border-radius:var(--radius-lg);text-decoration:none;font-weight:600;transition:all var(--transition-normal);border:none;cursor:pointer;box-shadow:0 10px 30px -10px #7c3aed80;font-size:1rem}.primary-button:hover{transform:translateY(-3px);box-shadow:0 15px 40px -10px #7c3aed99;color:#fff}.secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background:transparent;color:var(--primary);padding:.875rem 2rem;border-radius:var(--radius-lg);text-decoration:none;font-weight:600;transition:all var(--transition-normal);border:2px solid var(--primary);cursor:pointer;font-size:1rem}.secondary-button:hover{background:var(--soft-purple);transform:translateY(-3px);color:var(--primary)}@media(max-width:991px){.hero-section{flex-direction:column;padding:4rem 5%;text-align:center;gap:3rem;min-height:auto}.hero-content{max-width:100%}.hero-subtitle{margin-left:auto;margin-right:auto}.hero-buttons{justify-content:center}.benefits-section{flex-direction:column-reverse;padding:4rem 5%;gap:3rem;text-align:center}.benefits-content,.benefits-image{max-width:100%}.benefits-list li{text-align:left}.steps-container:before{display:none}}@media(max-width:768px){.features-section,.how-it-works-section,.testimonials-section,.faq-section,.cta-section{padding:4rem 5%}.section-header{margin-bottom:3rem}.feature-card,.step-card{padding:1.5rem}.footer-content,.footer-links{flex-direction:column;gap:2rem}}@media(max-width:480px){.hero-buttons{flex-direction:column;gap:1rem;width:100%}.hero-buttons .primary-button,.hero-buttons .secondary-button{width:100%}.feature-card{padding:1.25rem}.feature-icon{width:56px;height:56px;font-size:1.5rem}}.auth-container{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 80px);padding:var(--spacing-xl) var(--spacing-md);background:var(--background)}.auth-card{display:flex;flex-direction:column;background:var(--surface);border-radius:var(--radius-2xl);overflow:hidden;width:100%;max-width:1000px;margin:0 auto;box-shadow:var(--shadow-2xl);border:1px solid var(--border-light);animation:authSlideUp .6s ease-out}@keyframes authSlideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@media(min-width:768px){.auth-card{flex-direction:row;min-height:600px}}.auth-branding{flex:1;background:var(--primary-gradient);padding:var(--spacing-2xl);display:flex;flex-direction:column;color:#fff;position:relative;overflow:hidden}.auth-branding:before{content:"";position:absolute;top:-50%;right:-50%;width:100%;height:100%;background:radial-gradient(circle,rgba(255,255,255,.12) 0%,transparent 70%);animation:floatBubble 8s ease-in-out infinite}.auth-branding:after{content:"";position:absolute;bottom:-30%;left:-30%;width:80%;height:80%;background:radial-gradient(circle,rgba(255,255,255,.08) 0%,transparent 70%);animation:floatBubble 10s ease-in-out infinite reverse}@keyframes floatBubble{0%,to{transform:translate(0) scale(1)}33%{transform:translate(10px,-15px) scale(1.05)}66%{transform:translate(-5px,10px) scale(.98)}}.auth-logo{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-xl);position:relative;z-index:1}.auth-logo-img{height:60px;width:auto;filter:drop-shadow(0 4px 12px rgba(0,0,0,.2)) brightness(0) invert(1)}.auth-branding-content{position:relative;z-index:1;flex:1;display:flex;flex-direction:column}.auth-branding h2,.auth-branding-title{font-size:var(--text-3xl);margin-bottom:var(--spacing-md);font-weight:700;line-height:1.2;color:#fff}.auth-branding p,.auth-branding-text{font-size:var(--text-md);opacity:1;margin-bottom:var(--spacing-xl);font-weight:400;line-height:1.8;max-width:90%;color:#fff}.auth-features{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-top:auto}.auth-feature{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--text-sm);font-weight:500;background:#ffffff1f;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all var(--transition-fast)}.auth-feature:hover{background:#fff3;transform:translate(5px)}.auth-feature i{font-size:var(--text-base);width:24px;text-align:center}.auth-form-side{flex:1;padding:var(--spacing-2xl);display:flex;flex-direction:column;justify-content:center;background:var(--surface)}.auth-form-header{margin-bottom:var(--spacing-xl)}.auth-form-header h2{font-size:var(--text-2xl);color:var(--text-dark);font-weight:800;letter-spacing:-.02em;margin:0 0 var(--spacing-xs) 0}.auth-form-header p{color:var(--text-medium);font-size:var(--text-sm);margin:0}.auth-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.auth-input-group{position:relative}.auth-input-group label{display:block;font-size:var(--text-sm);font-weight:600;color:var(--text-dark);margin-bottom:var(--spacing-xs)}.auth-input-wrapper{position:relative;display:flex;align-items:center}.auth-input-wrapper i{position:absolute;left:var(--spacing-md);color:var(--text-light);font-size:var(--text-base);transition:color var(--transition-fast);pointer-events:none}.auth-input-wrapper input{width:100%;padding:var(--spacing-md) var(--spacing-md) var(--spacing-md) calc(var(--spacing-md) + 28px);border:2px solid var(--border-light);border-radius:var(--radius-lg);font-size:var(--text-md);transition:all var(--transition-fast);background:var(--surface);color:var(--text-dark)}.auth-input-wrapper input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px #7c3aed1a}.auth-input-wrapper input:focus+i,.auth-input-wrapper:focus-within i{color:var(--primary)}.auth-input-wrapper input:hover:not(:focus){border-color:var(--primary-light)}.auth-input-wrapper input:disabled{background:var(--background);cursor:not-allowed;opacity:.7}.auth-input-wrapper input::placeholder{color:var(--text-light)}.auth-password-toggle{position:absolute;right:var(--spacing-md);background:none;border:none;color:var(--text-light);cursor:pointer;padding:var(--spacing-xs);transition:color var(--transition-fast)}.auth-password-toggle:hover{color:var(--primary)}.auth-submit-btn{width:100%;padding:var(--spacing-md) var(--spacing-lg);background:var(--primary-gradient);color:#fff;border:none;border-radius:var(--radius-lg);font-size:var(--text-md);font-weight:600;cursor:pointer;transition:all var(--transition-fast);position:relative;overflow:hidden;margin-top:var(--spacing-sm)}.auth-submit-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(120deg,transparent,rgba(255,255,255,.3),transparent);transition:all .6s}.auth-submit-btn:hover:not(:disabled):before{left:100%}.auth-submit-btn:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 10px 25px -8px #7c3aed80}.auth-submit-btn:active:not(:disabled){transform:translateY(-1px)}.auth-submit-btn:disabled{opacity:.7;cursor:not-allowed;transform:none}.auth-submit-btn i{margin-right:var(--spacing-sm)}.auth-divider{display:flex;align-items:center;margin:var(--spacing-lg) 0;color:var(--text-light);font-size:var(--text-sm);font-weight:500}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:2px;background:var(--border-light)}.auth-divider:before{margin-right:var(--spacing-md)}.auth-divider:after{margin-left:var(--spacing-md)}.auth-google-btn{width:100%;padding:var(--spacing-md) var(--spacing-lg);display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);font-size:var(--text-md);font-weight:600;color:var(--text-dark);background:var(--surface);border:2px solid var(--border-light);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast)}.auth-google-btn:hover:not(:disabled){border-color:var(--primary-light);background:var(--soft-purple);transform:translateY(-2px);box-shadow:var(--shadow-md)}.auth-google-btn:disabled{opacity:.6;cursor:not-allowed}.auth-google-btn svg{width:20px;height:20px}.auth-footer{text-align:center;margin-top:var(--spacing-xl);color:var(--text-medium);font-size:var(--text-sm)}.auth-footer a{color:var(--primary);text-decoration:none;font-weight:600;transition:all var(--transition-fast)}.auth-footer a:hover{color:var(--secondary);text-decoration:underline}.auth-privacy{display:flex;align-items:center;gap:var(--spacing-sm);margin-top:var(--spacing-lg);padding:var(--spacing-md);background:linear-gradient(135deg,var(--soft-purple) 0%,var(--soft-pink) 100%);border-radius:var(--radius-lg);font-size:var(--text-xs);color:var(--text-medium)}.auth-privacy i{color:var(--success);font-size:var(--text-base);flex-shrink:0}.auth-privacy p{margin:0;line-height:1.5}.auth-alert{padding:var(--spacing-md);border-radius:var(--radius-lg);font-weight:500;font-size:var(--text-sm);display:flex;align-items:center;gap:var(--spacing-sm);animation:alertSlide .3s ease-out}@keyframes alertSlide{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.auth-alert.error{background:#ef44441a;color:var(--error);border:1px solid rgba(239,68,68,.2)}.auth-alert.success{background:#22c55e1a;color:var(--success);border:1px solid rgba(34,197,94,.2)}.auth-alert i{font-size:var(--text-base)}@media(max-width:767px){.auth-container{padding:var(--spacing-md);min-height:auto}.auth-card{margin:var(--spacing-md) 0}.auth-branding{padding:var(--spacing-xl);min-height:280px}.auth-branding h2{font-size:var(--text-2xl)}.auth-branding p{font-size:var(--text-sm);display:none}.auth-features{display:none}.auth-form-side{padding:var(--spacing-xl)}.auth-logo-text{font-size:var(--text-xl)}}@media(max-width:480px){.auth-container{padding:var(--spacing-sm)}.auth-branding{padding:var(--spacing-lg);min-height:200px}.auth-form-side{padding:var(--spacing-lg)}.auth-form-header h2{font-size:var(--text-xl)}.auth-privacy{flex-direction:column;text-align:center}}.auth-loading{position:relative}.auth-loading:after{content:"";position:absolute;top:50%;left:50%;width:20px;height:20px;margin:-10px 0 0 -10px;border:2px solid transparent;border-top-color:#fff;border-radius:50%;animation:authSpin .6s linear infinite}@keyframes authSpin{to{transform:rotate(360deg)}}.password-strength{margin-top:var(--spacing-xs)}.password-strength-bar{height:4px;background:var(--border-light);border-radius:var(--radius-full);overflow:hidden}.password-strength-fill{height:100%;transition:all var(--transition-normal);border-radius:var(--radius-full)}.password-strength-fill.weak{width:33%;background:var(--error)}.password-strength-fill.medium{width:66%;background:var(--warning)}.password-strength-fill.strong{width:100%;background:var(--success)}.password-strength-text{font-size:var(--text-xs);margin-top:var(--spacing-xs);color:var(--text-light)}.password-strength-text.weak{color:var(--error)}.password-strength-text.medium{color:var(--warning)}.password-strength-text.strong{color:var(--success)}.alert{padding:var(--spacing-md) var(--spacing-lg);margin-bottom:var(--spacing-md);border-radius:var(--radius-lg);font-size:var(--text-sm);line-height:1.6;animation:slideDown .3s ease-out;display:flex;align-items:center;gap:var(--spacing-sm);font-weight:500}.alert:before{font-family:"Font Awesome 6 Free";font-weight:900;font-size:var(--text-md)}.alert-error{color:#991b1b;background:linear-gradient(135deg,#ef44441a,#ef44440d);border:1px solid rgba(239,68,68,.2)}.alert-error:before{content:"";color:var(--error)}.alert-success{color:#166534;background:linear-gradient(135deg,#22c55e1a,#22c55e0d);border:1px solid rgba(34,197,94,.2)}.alert-success:before{content:"";color:var(--success)}.alert-warning{color:#92400e;background:linear-gradient(135deg,#f59e0b1a,#f59e0b0d);border:1px solid rgba(245,158,11,.2)}.alert-warning:before{content:"";color:var(--warning)}.profile-container{max-width:900px;margin:0 auto;padding:var(--spacing-xl) var(--spacing-lg);animation:fadeIn .5s ease-out}.profile-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-2xl);flex-wrap:wrap;gap:var(--spacing-md)}.profile-header h1{font-size:var(--text-3xl);color:var(--text-dark);margin:0;font-weight:800;letter-spacing:-.02em}.logout-button{background:transparent;color:var(--error);border:2px solid var(--error);border-radius:var(--radius-lg);padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;gap:var(--spacing-xs)}.logout-button:hover{background:var(--error);color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px -4px #ef444466}.profile-card{background:var(--surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);padding:var(--spacing-2xl);display:flex;flex-direction:column;gap:var(--spacing-xl);margin-bottom:var(--spacing-xl);border:1px solid var(--border-light);animation:slideUp .5s ease-out}@media(min-width:768px){.profile-card{flex-direction:row;align-items:flex-start}}.profile-image{display:flex;justify-content:center;align-items:center;flex-shrink:0;margin:0 auto}@media(min-width:768px){.profile-image{margin:0}}.profile-image img{width:120px;height:120px;border-radius:var(--radius-full);object-fit:cover;border:4px solid transparent;background:linear-gradient(#fff,#fff) padding-box,var(--primary-gradient) border-box;box-shadow:var(--shadow-lg)}.profile-avatar{width:120px;height:120px;border-radius:var(--radius-full);background:var(--primary-gradient);display:flex;justify-content:center;align-items:center;font-size:var(--text-4xl);color:#fff;font-weight:700;box-shadow:var(--shadow-lg)}.profile-details{flex-grow:1;display:flex;flex-direction:column;width:100%}.profile-details h2{font-size:var(--text-2xl);margin:0 0 var(--spacing-xs) 0;color:var(--text-dark);text-align:center;font-weight:700}@media(min-width:768px){.profile-details h2{text-align:left}}.profile-details .email{color:var(--text-light);margin-bottom:var(--spacing-lg);font-size:var(--text-md);text-align:center;display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs)}@media(min-width:768px){.profile-details .email{text-align:left;justify-content:flex-start}}.profile-info{margin-bottom:var(--spacing-lg)}.profile-info p{margin:var(--spacing-sm) 0;font-size:var(--text-md);color:var(--text-medium);text-align:center;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm)}.profile-info p i{color:var(--primary);width:20px}@media(min-width:768px){.profile-info p{text-align:left;justify-content:flex-start}}.edit-button{background:var(--primary-gradient);color:#fff;border:none;border-radius:var(--radius-lg);padding:var(--spacing-md) var(--spacing-xl);font-size:var(--text-md);cursor:pointer;font-weight:600;transition:all var(--transition-normal);box-shadow:0 4px 12px -4px #7c3aed66;margin:0 auto;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);width:100%;max-width:200px;position:relative;overflow:hidden}.edit-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(120deg,transparent,rgba(255,255,255,.3),transparent);transition:all .5s}.edit-button:hover:before{left:100%}.edit-button:hover{transform:translateY(-3px);box-shadow:0 8px 20px -8px #7c3aed80}@media(min-width:768px){.edit-button{margin:0;width:auto}}.form-group{margin-bottom:var(--spacing-lg)}.form-row{display:flex;flex-direction:column;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg)}@media(min-width:576px){.form-row{flex-direction:row;gap:var(--spacing-md)}}.form-row .form-group{flex:1;margin-bottom:0}.profile-card label{display:block;margin-bottom:var(--spacing-sm);font-weight:600;color:var(--text-dark);font-size:var(--text-sm)}.profile-card input{width:100%;padding:var(--spacing-md) var(--spacing-lg);font-size:var(--text-md);border:2px solid var(--border-light);border-radius:var(--radius-lg);transition:all var(--transition-fast);background:var(--surface);color:var(--text-dark)}.profile-card input:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 4px #7c3aed1a}.profile-card input:hover{border-color:var(--primary-light)}.button-group{display:flex;flex-direction:column;gap:var(--spacing-md);margin-top:var(--spacing-xl)}@media(min-width:576px){.button-group{flex-direction:row}}.button-group button{flex:1;padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-lg);font-weight:600;cursor:pointer;transition:all var(--transition-fast);font-size:var(--text-md)}.button-group button[type=submit]{background:var(--primary-gradient);color:#fff;border:none;box-shadow:0 4px 12px -4px #7c3aed66}.button-group button[type=submit]:hover{transform:translateY(-3px);box-shadow:0 8px 20px -8px #7c3aed80}.cancel-button{background:transparent;color:var(--text-medium);border:2px solid var(--border-light)}.cancel-button:hover{background:var(--soft-purple);border-color:var(--primary-light);color:var(--primary)}.error-card{margin-bottom:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-sm)}.reconnect-button{background:linear-gradient(135deg,#4285f4,#34a853);color:#fff;border:none;border-radius:var(--radius-lg);padding:var(--spacing-md) var(--spacing-xl);font-size:var(--text-sm);cursor:pointer;font-weight:600;transition:all var(--transition-fast);align-self:center;width:100%;max-width:250px;margin-top:var(--spacing-sm);display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm)}.reconnect-button:hover{transform:translateY(-3px);box-shadow:0 8px 20px -8px #4285f480}@media(min-width:576px){.reconnect-button{align-self:flex-end;width:auto}}.google-status,.storage-status{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg);margin-top:var(--spacing-lg);text-align:center;border-radius:var(--radius-lg);background:linear-gradient(135deg,var(--soft-purple) 0%,var(--soft-pink) 100%)}@media(min-width:576px){.google-status,.storage-status{flex-direction:row;justify-content:space-between;text-align:left}}.google-status{margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:2px solid var(--border-light);background:transparent}.storage-status{box-shadow:var(--shadow-sm)}.status-connected{color:var(--success);font-size:var(--text-lg);margin-right:var(--spacing-xs)}.status-disconnected{color:var(--error);font-size:var(--text-lg);margin-right:var(--spacing-xs)}.status-cloud{color:#4285f4;font-size:var(--text-lg);margin-right:var(--spacing-xs)}.status-local{color:var(--warning);font-size:var(--text-lg);margin-right:var(--spacing-xs)}.status-note{display:block;font-size:var(--text-xs);color:var(--text-light);margin-top:var(--spacing-xs)}@media(min-width:768px){.status-note{display:inline;margin-left:var(--spacing-sm)}}.spinner-fullpage{position:fixed;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background:var(--background);z-index:9999}.spinner-inline{display:flex;align-items:center;justify-content:center;min-height:200px;padding:var(--spacing-xl)}.spinner-wrapper{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xl)}.spinner-message{margin:0;font-size:var(--text-lg);font-weight:600;background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:messageFade 2s ease-in-out infinite}@keyframes messageFade{0%,to{opacity:1}50%{opacity:.5}}.loader-three-rings{position:relative;width:80px;height:80px}.loader-three-rings .ring{position:absolute;width:100%;height:100%;border-radius:50%;border:3px solid transparent;animation:ringRotate 1.5s cubic-bezier(.68,-.55,.27,1.55) infinite}.loader-three-rings .ring:nth-child(1){border-top-color:var(--primary)}.loader-three-rings .ring:nth-child(2){width:65%;height:65%;top:17.5%;left:17.5%;border-right-color:var(--secondary);animation-delay:.15s;animation-direction:reverse}.loader-three-rings .ring:nth-child(3){width:35%;height:35%;top:32.5%;left:32.5%;border-bottom-color:var(--accent);animation-delay:.3s}.loader-three-rings .dot{position:absolute;top:50%;left:50%;width:12px;height:12px;margin:-6px 0 0 -6px;background:var(--primary-gradient);border-radius:50%;animation:dotPulse 1s ease-in-out infinite}@keyframes ringRotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes dotPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.4);opacity:.7}}@media(max-width:576px){.loader-three-rings{width:60px;height:60px}.loader-three-rings .dot{width:10px;height:10px;margin:-5px 0 0 -5px}.spinner-message{font-size:var(--text-base)}}.dashboard-container{max-width:1400px;margin:0 auto;padding:var(--spacing-xl) var(--spacing-lg);animation:fadeIn .5s ease-out;overflow-x:hidden;box-sizing:border-box}.dashboard-container *{box-sizing:border-box}.dashboard-header{margin-bottom:var(--spacing-xl)}.dashboard-header h1{font-size:var(--text-3xl);color:var(--text-dark);margin:0 0 var(--spacing-xs) 0;font-weight:800;letter-spacing:-.02em}.dashboard-header p{color:var(--text-medium);font-size:var(--text-base);margin:0}.date-today{display:inline-block;margin-top:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-md);background:var(--soft-purple);border-radius:var(--radius-full);color:var(--primary);font-size:var(--text-sm);font-weight:600}.cycle-overview-banner{display:flex;flex-direction:column;gap:var(--spacing-lg);width:100%;padding:var(--spacing-xl);margin-bottom:var(--spacing-xl);background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);position:relative;overflow:hidden;animation:slideUp .4s ease-out}.cycle-overview-banner:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--primary-gradient)}.cycle-overview-banner.period:before{background:var(--period-color)}.cycle-overview-banner.fertile:before{background:var(--fertile-color)}.cycle-overview-banner.ovulation:before{background:var(--ovulation-color)}.cycle-overview-banner.pms:before{background:var(--pms-color)}.cycle-overview-banner.follicular:before{background:var(--follicular-color)}.banner-top-row{display:flex;align-items:center;gap:var(--spacing-lg);flex-wrap:wrap}.banner-phase-info{display:flex;align-items:center;gap:var(--spacing-md);flex:1;min-width:280px}.banner-phase-icon{display:flex;align-items:center;justify-content:center;width:56px;height:56px;min-width:56px;font-size:24px;flex-shrink:0;background:var(--primary-gradient);color:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.cycle-overview-banner.period .banner-phase-icon{background:var(--period-color)}.cycle-overview-banner.fertile .banner-phase-icon{background:var(--fertile-color)}.cycle-overview-banner.ovulation .banner-phase-icon{background:var(--ovulation-color)}.cycle-overview-banner.pms .banner-phase-icon{background:var(--pms-color)}.cycle-overview-banner.follicular .banner-phase-icon{background:var(--follicular-color)}.banner-phase-text{flex:1;min-width:0}.banner-phase-label{display:block;font-size:var(--text-xs);font-weight:600;color:var(--text-light);text-transform:uppercase;letter-spacing:.08em;margin-bottom:4px}.banner-phase-title{font-size:var(--text-xl);font-weight:700;color:var(--text-dark);margin:0 0 4px;line-height:1.2}.banner-phase-desc{font-size:var(--text-sm);color:var(--text-medium);line-height:1.4;margin:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.banner-stats-row{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);justify-content:center;width:100%}.banner-stat{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-md) var(--spacing-lg);background:var(--background);border-radius:var(--radius-lg);min-width:100px;flex:1;border:1px solid var(--border-light);transition:all var(--transition-fast)}.banner-stat:hover{background:var(--soft-purple);border-color:var(--primary-light)}.banner-stat-value{font-size:var(--text-xl);font-weight:700;color:var(--primary);line-height:1.2;display:flex;align-items:center;gap:var(--spacing-xs)}.banner-stat-value i{font-size:var(--text-sm)}.banner-stat-label{font-size:var(--text-xs);font-weight:500;color:var(--text-medium);text-align:center;margin-top:4px}.banner-stat.period-stat .banner-stat-value{color:var(--period-color)}.banner-stat.fertile-stat .banner-stat-value{color:var(--fertile-color)}.banner-stat.ovulation-stat .banner-stat-value{color:var(--ovulation-color)}.banner-progress{width:100%;padding-top:var(--spacing-sm)}.progress-labels{display:flex;justify-content:space-between;margin-bottom:var(--spacing-xs)}.progress-labels span{font-size:var(--text-xs);color:var(--text-light);font-weight:500}.progress-bar-track{height:8px;background:var(--border-light);border-radius:var(--radius-full);overflow:hidden;position:relative}.progress-bar-fill{height:100%;background:var(--primary-gradient);border-radius:var(--radius-full);transition:width 1s cubic-bezier(.4,0,.2,1);position:relative}.progress-bar-fill:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.quick-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.quick-action-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-lg) var(--spacing-md);border-radius:var(--radius-xl);border:none;cursor:pointer;transition:all var(--transition-normal);gap:var(--spacing-sm);text-decoration:none;position:relative;overflow:hidden;animation:slideUp .5s ease-out both}.quick-action-btn:nth-child(1){animation-delay:.1s}.quick-action-btn:nth-child(2){animation-delay:.15s}.quick-action-btn:nth-child(3){animation-delay:.2s}.quick-action-btn:nth-child(4){animation-delay:.25s}.quick-action-btn:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(180deg,rgba(255,255,255,.15) 0%,transparent 50%);pointer-events:none}.quick-action-btn:hover{transform:translateY(-4px)}.quick-action-btn i{font-size:1.75rem;color:#fff;transition:transform var(--transition-normal);filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.quick-action-btn:hover i{transform:scale(1.15)}.quick-action-btn span{font-weight:700;color:#fff;font-size:var(--text-sm);text-shadow:0 1px 2px rgba(0,0,0,.15)}.quick-action-btn.period-action{background:linear-gradient(135deg,#f43f5e,#e11d48);box-shadow:0 4px 15px #f43f5e66}.quick-action-btn.period-action:hover{box-shadow:0 8px 25px #f43f5e80}.quick-action-btn.symptom-action{background:linear-gradient(135deg,#8b5cf6,#7c3aed);box-shadow:0 4px 15px #8b5cf666}.quick-action-btn.symptom-action:hover{box-shadow:0 8px 25px #8b5cf680}.quick-action-btn.mood-action{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 4px 15px #10b98166}.quick-action-btn.mood-action:hover{box-shadow:0 8px 25px #10b98180}.quick-action-btn.health-action{background:linear-gradient(135deg,#3b82f6,#2563eb);box-shadow:0 4px 15px #3b82f666}.quick-action-btn.health-action:hover{box-shadow:0 8px 25px #3b82f680}.dashboard-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-lg)}.dashboard-card{background:var(--surface);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-card);transition:all var(--transition-normal);display:flex;flex-direction:column;border:1px solid var(--border-light);animation:slideUp .5s ease-out}.dashboard-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-card-hover)}.card-header{padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;align-items:center;background:linear-gradient(180deg,var(--soft-purple) 0%,transparent 100%)}.card-header h2{margin:0;font-size:var(--text-base);font-weight:700;color:var(--text-dark)}.card-header-icon{font-size:var(--text-lg);color:var(--primary);width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--soft-purple);border-radius:var(--radius-md)}.card-content{padding:var(--spacing-lg);flex-grow:1}.card-footer{padding:var(--spacing-sm) var(--spacing-lg);border-top:1px solid var(--border-light);background:var(--background)}.card-link{color:var(--primary);text-decoration:none;font-size:var(--text-sm);font-weight:600;transition:all var(--transition-fast);display:inline-flex;align-items:center;gap:var(--spacing-xs)}.card-link:hover{color:var(--primary-dark);gap:var(--spacing-sm)}.card-link:after{content:"→";transition:transform var(--transition-fast)}.card-link:hover:after{transform:translate(4px)}.prediction-card{border-left:4px solid var(--primary)}.prediction-card.next-period{border-left-color:var(--period-color)}.prediction-card.fertility{border-left-color:var(--fertile-color)}.prediction-card.ovulation{border-left-color:var(--ovulation-color)}.prediction-card .card-header-icon{background:var(--period-color-light)}.prediction-card .card-header-icon i{color:var(--period-color)}.prediction-card.fertility .card-header-icon{background:var(--fertile-color-light)}.prediction-card.fertility .card-header-icon i{color:var(--fertile-color)}.prediction-card.ovulation .card-header-icon{background:var(--ovulation-color-light)}.prediction-card.ovulation .card-header-icon i{color:var(--ovulation-color)}.prediction-main-value{font-size:var(--text-2xl);color:var(--text-dark);font-weight:700;margin-bottom:var(--spacing-xs)}.prediction-secondary{font-size:var(--text-sm);color:var(--text-medium);display:flex;align-items:center;gap:var(--spacing-xs)}.prediction-secondary .highlight{color:var(--period-color);font-weight:700}.prediction-card.fertility .prediction-secondary .highlight{color:var(--fertile-color)}.stat-row{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) 0;border-bottom:1px dashed var(--border-light)}.stat-row:last-child{border-bottom:none}.stat-label{color:var(--text-medium);font-size:var(--text-sm)}.stat-value{font-weight:700;color:var(--primary);font-size:var(--text-sm)}.insights-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.insight-item{display:flex;align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-md);border-radius:var(--radius-lg);background:var(--background);transition:all var(--transition-fast);border:1px solid var(--border-light)}.insight-item:hover{transform:translate(4px);border-color:var(--primary-light)}.insight-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);background:var(--soft-purple);flex-shrink:0}.insight-icon i{font-size:var(--text-base);color:var(--primary)}.insight-item.warning{background:var(--warning-light);border-color:var(--warning)}.insight-item.warning .insight-icon{background:#f59e0b33}.insight-item.warning .insight-icon i{color:var(--warning)}.insight-item.positive{background:var(--success-light);border-color:var(--success)}.insight-item.positive .insight-icon{background:#10b98133}.insight-item.positive .insight-icon i{color:var(--success)}.insight-item.tip{background:var(--soft-purple);border-color:var(--primary-light)}.insight-content h4{margin:0 0 var(--spacing-xs) 0;font-size:var(--text-sm);color:var(--text-dark);font-weight:600}.insight-content p{margin:0;font-size:var(--text-sm);color:var(--text-medium);line-height:1.5}.tips-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.tip-item{display:flex;align-items:flex-start;gap:var(--spacing-sm);font-size:var(--text-sm);color:var(--text-medium);line-height:1.5;padding:var(--spacing-sm);background:var(--soft-purple);border-radius:var(--radius-md)}.tip-item i{color:var(--primary);margin-top:2px;flex-shrink:0}.welcome-message{background:var(--surface);border-radius:var(--radius-2xl);padding:var(--spacing-3xl);text-align:center;box-shadow:var(--shadow-lg);max-width:550px;margin:var(--spacing-3xl) auto;border:1px solid var(--border-light);animation:slideUp .6s ease-out}.welcome-message h1{font-size:var(--text-3xl);color:var(--text-dark);margin-bottom:var(--spacing-md);font-weight:800;background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.welcome-message p{color:var(--text-medium);margin-bottom:var(--spacing-xl);font-size:var(--text-lg);line-height:1.7}.welcome-buttons{display:flex;gap:var(--spacing-md);justify-content:center;flex-wrap:wrap}.primary-button{background:var(--primary-gradient);color:#fff;border:none;border-radius:var(--radius-lg);padding:var(--spacing-md) var(--spacing-xl);font-size:var(--text-base);font-weight:600;cursor:pointer;transition:all var(--transition-normal);box-shadow:0 10px 30px -10px #7c3aed80}.primary-button:hover{transform:translateY(-3px);box-shadow:0 15px 40px -10px #7c3aed99}.secondary-button{background:var(--surface);color:var(--primary);border:2px solid var(--primary);border-radius:var(--radius-lg);padding:var(--spacing-md) var(--spacing-xl);font-size:var(--text-base);font-weight:600;cursor:pointer;transition:all var(--transition-normal)}.secondary-button:hover{background:var(--soft-purple);transform:translateY(-3px)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1024px){.dashboard-grid{grid-template-columns:repeat(2,1fr)}.quick-actions{grid-template-columns:repeat(4,1fr)}.banner-stat{min-width:90px;padding:var(--spacing-sm) var(--spacing-md)}}@media(max-width:768px){.dashboard-container{padding:var(--spacing-md)}.dashboard-header h1{font-size:var(--text-2xl)}.cycle-overview-banner{padding:var(--spacing-lg)}.banner-phase-icon{width:48px;height:48px;min-width:48px;font-size:20px}.banner-phase-title{font-size:var(--text-lg)}.banner-stats-row{justify-content:center}.banner-stat{min-width:80px;max-width:none;flex:1 1 calc(33.33% - var(--spacing-sm))}.quick-actions{grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm)}.quick-action-btn{padding:var(--spacing-md)}.dashboard-grid{grid-template-columns:1fr;gap:var(--spacing-md)}}@media(max-width:576px){.dashboard-container{padding:var(--spacing-sm)}.dashboard-header{margin-bottom:var(--spacing-md)}.dashboard-header h1{font-size:var(--text-xl)}.dashboard-header p{font-size:var(--text-sm)}.cycle-overview-banner{padding:var(--spacing-md);gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.banner-top-row{flex-direction:column;align-items:stretch}.banner-phase-info{min-width:100%}.banner-phase-icon{width:44px;height:44px;min-width:44px;font-size:18px}.banner-phase-title{font-size:var(--text-base)}.banner-phase-desc{font-size:var(--text-xs)}.banner-stats-row{gap:var(--spacing-xs)}.banner-stat{flex:1 1 calc(50% - var(--spacing-xs));padding:var(--spacing-sm);min-width:auto}.banner-stat-value{font-size:var(--text-lg)}.banner-stat-label{font-size:10px}.quick-actions{grid-template-columns:repeat(2,1fr);gap:var(--spacing-xs);margin-bottom:var(--spacing-md)}.quick-action-btn{padding:var(--spacing-sm);gap:var(--spacing-xs);border-radius:var(--radius-lg)}.quick-action-btn i{font-size:1.25rem}.quick-action-btn span{font-size:var(--text-xs)}.dashboard-card{border-radius:var(--radius-lg)}.card-header{padding:var(--spacing-sm) var(--spacing-md)}.card-header h2{font-size:var(--text-sm)}.card-header-icon{width:32px;height:32px;font-size:var(--text-base)}.card-content{padding:var(--spacing-md)}.prediction-main-value{font-size:var(--text-xl)}.welcome-message{padding:var(--spacing-xl);margin:var(--spacing-lg) auto}.welcome-message h1{font-size:var(--text-xl)}.welcome-message p{font-size:var(--text-base)}.welcome-buttons{flex-direction:column}.primary-button,.secondary-button{width:100%;padding:var(--spacing-md)}}@media(max-width:360px){.dashboard-container{padding:var(--spacing-xs)}.banner-stat{flex:1 1 100%;max-width:none}.quick-actions{grid-template-columns:1fr 1fr}}.analytics-container{max-width:1400px;margin:0 auto;padding:var(--spacing-xl) var(--spacing-lg);animation:fadeIn .5s ease-out}.analytics-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-2xl);flex-wrap:wrap;gap:1rem}.analytics-header h1{font-size:var(--text-3xl);color:var(--text-dark);margin:0;font-weight:800;letter-spacing:-.02em}.time-range-selector{display:flex;align-items:center;gap:.75rem}.time-range-selector label{color:var(--text-medium);font-weight:500;font-size:var(--text-sm)}.time-range-select{padding:.625rem 1rem;border-radius:var(--radius-lg);border:2px solid var(--border);background-color:var(--surface);font-size:var(--text-sm);font-weight:500;color:var(--text-dark);cursor:pointer;transition:all var(--transition-fast);min-width:140px}.time-range-select:hover{border-color:var(--text-light)}.time-range-select:focus{border-color:var(--primary);box-shadow:0 0 0 4px #7c3aed1a;outline:none}.analytics-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-lg)}@media(min-width:768px){.analytics-grid{grid-template-columns:repeat(2,1fr)}}.chart-card{background:var(--surface);border-radius:var(--radius-xl);padding:var(--spacing-xl);box-shadow:var(--shadow-card);border:1px solid var(--border-light);transition:all var(--transition-normal);animation:slideUp .5s ease-out}.chart-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-card-hover)}.chart-card h2{font-size:var(--text-lg);color:var(--text-dark);margin-top:0;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:2px solid var(--border-light);font-weight:700;display:flex;align-items:center;gap:.75rem}.chart-card h2 i{color:var(--primary);font-size:1.25rem}.chart-container{height:260px;position:relative}.statistics-card{background:var(--surface);border-radius:var(--radius-xl);padding:var(--spacing-xl);box-shadow:var(--shadow-card);border:1px solid var(--border-light);grid-column:1 / -1;transition:all var(--transition-normal)}.statistics-card:hover{box-shadow:var(--shadow-card-hover)}.statistics-card h2{font-size:var(--text-lg);color:var(--text-dark);margin-top:0;margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:2px solid var(--border-light);font-weight:700;display:flex;align-items:center;gap:.75rem}.statistics-card h2 i{color:var(--primary)}.statistics-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-lg)}@media(min-width:768px){.statistics-grid{grid-template-columns:repeat(3,1fr)}}.statistic-item{text-align:center;padding:var(--spacing-lg);background:var(--soft-purple);border-radius:var(--radius-lg);transition:all var(--transition-normal)}.statistic-item:hover{transform:translateY(-2px);background:linear-gradient(135deg,var(--soft-purple) 0%,var(--soft-pink) 100%)}.statistic-value{font-size:var(--text-3xl);font-weight:800;background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.25rem}.statistic-label{font-size:var(--text-sm);color:var(--text-medium);font-weight:500}.cycle-regularity{grid-column:span 2;text-align:center;padding:var(--spacing-lg);border-top:2px dashed var(--border-light);margin-top:var(--spacing-sm)}@media(min-width:768px){.cycle-regularity{grid-column:span 3}}.regularity-value{font-size:var(--text-2xl);font-weight:700;color:var(--primary);margin-bottom:.25rem}.regularity-label{font-size:var(--text-sm);color:var(--text-medium)}.data-needed-card{background:var(--surface);border-radius:var(--radius-2xl);padding:var(--spacing-3xl);text-align:center;box-shadow:var(--shadow-lg);max-width:550px;margin:var(--spacing-3xl) auto;border:1px solid var(--border-light);animation:slideUp .6s ease-out}.icon-container{width:100px;height:100px;background:var(--soft-purple);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto var(--spacing-xl);position:relative}.icon-container:after{content:"";position:absolute;width:120px;height:120px;border:2px dashed var(--primary-light);border-radius:50%;animation:spin 20s linear infinite}.icon-container i{font-size:2.5rem;background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.data-needed-card h2{font-size:var(--text-2xl);color:var(--text-dark);margin-bottom:var(--spacing-md);font-weight:700}.data-needed-card p{color:var(--text-medium);margin-bottom:var(--spacing-xl);line-height:1.7;font-size:var(--text-base)}.analytics-container .welcome-message{background:var(--surface);border-radius:var(--radius-2xl);padding:var(--spacing-3xl);text-align:center;box-shadow:var(--shadow-lg);border:1px solid var(--border-light)}.analytics-container .welcome-message h1{font-size:var(--text-2xl);color:var(--text-dark);margin-bottom:var(--spacing-md);font-weight:700}.analytics-container .welcome-message p{color:var(--text-medium);margin-bottom:var(--spacing-xl)}.analytics-container .primary-button{background:var(--primary-gradient);color:#fff;border:none;border-radius:var(--radius-lg);padding:.875rem 2rem;font-size:var(--text-base);font-weight:600;cursor:pointer;transition:all var(--transition-normal);box-shadow:0 10px 30px -10px #7c3aed80}.analytics-container .primary-button:hover{transform:translateY(-3px);box-shadow:0 15px 40px -10px #7c3aed99}@media(min-width:768px){.analytics-container{padding:var(--spacing-2xl)}.chart-card{padding:var(--spacing-xl)}}.cycle-chart{display:flex;align-items:flex-end;height:200px;gap:10px;padding:0 var(--spacing-sm)}.bar-container{flex:1;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end}.bar{width:100%;background:var(--primary-gradient);border-radius:var(--radius-sm) var(--radius-sm) 0 0;transition:all var(--transition-normal);min-height:4px;position:relative}.bar:hover{filter:brightness(1.1);transform:scaleY(1.02);transform-origin:bottom}.bar:after{content:"";position:absolute;top:0;left:0;right:0;height:50%;background:linear-gradient(180deg,rgba(255,255,255,.2) 0%,transparent 100%);border-radius:var(--radius-sm) var(--radius-sm) 0 0}.bar-label{font-size:var(--text-xs);color:var(--text-light);margin-top:var(--spacing-sm);font-weight:500}.chart-legend{display:flex;justify-content:center;gap:var(--spacing-lg);margin-top:var(--spacing-lg);flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:var(--text-sm);color:var(--text-medium)}.legend-color{width:14px;height:14px;border-radius:var(--radius-xs)}.symptom-chart{display:flex;flex-direction:column;gap:var(--spacing-md);height:100%;justify-content:center}.horizontal-bar-container{display:flex;align-items:center;gap:var(--spacing-md)}.horizontal-bar-label{width:30%;font-size:var(--text-sm);text-align:right;color:var(--text-dark);font-weight:500}.horizontal-bar-wrapper{width:70%;display:flex;align-items:center;gap:var(--spacing-sm)}.horizontal-bar{height:16px;background:linear-gradient(90deg,var(--secondary) 0%,var(--period-color) 100%);border-radius:var(--radius-full);min-width:4px;transition:all var(--transition-normal);position:relative}.horizontal-bar:hover{transform:scaleX(1.02);transform-origin:left;filter:brightness(1.1)}.horizontal-bar:after{content:"";position:absolute;top:0;left:0;right:0;height:50%;background:linear-gradient(180deg,rgba(255,255,255,.3) 0%,transparent 100%);border-radius:var(--radius-full)}.horizontal-bar-value{font-size:var(--text-sm);color:var(--text-medium);font-weight:600;min-width:30px}.mood-chart{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md);padding:var(--spacing-md) 0}@media(min-width:768px){.mood-chart{grid-template-columns:repeat(4,1fr)}}.mood-item{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-lg);background:var(--soft-purple);border-radius:var(--radius-lg);transition:all var(--transition-normal);border:2px solid transparent}.mood-item:hover{transform:translateY(-4px);border-color:var(--primary-light);box-shadow:var(--shadow-md)}.mood-icon{font-size:2rem;background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.mood-name{font-size:var(--text-sm);color:var(--text-dark);font-weight:600;text-transform:capitalize}.mood-count{font-size:var(--text-xl);font-weight:800;color:var(--primary)}.trackers-container{max-width:1400px;margin:0 auto;padding:var(--spacing-xl) var(--spacing-lg);animation:fadeIn .5s ease-out;overflow-x:hidden;box-sizing:border-box}.trackers-container *{box-sizing:border-box}.trackers-header{margin-bottom:var(--spacing-lg);text-align:center}.trackers-header h1{font-size:var(--text-3xl);font-weight:800;color:var(--text-dark);margin:0 0 var(--spacing-xs) 0;letter-spacing:-.02em}.trackers-subtitle{font-size:var(--text-md);color:var(--text-medium);margin:0}.phase-banner{display:flex;flex-direction:column;gap:var(--spacing-md);width:100%;padding:var(--spacing-lg);margin-bottom:var(--spacing-lg);background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);position:relative;overflow:hidden;animation:slideUp .4s ease-out}.phase-banner:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--primary-gradient)}.phase-banner.period:before{background:var(--period-color)}.phase-banner.fertile:before{background:var(--fertile-color)}.phase-banner.ovulation:before{background:var(--ovulation-color)}.phase-banner.pms:before{background:var(--pms-color)}.phase-banner.follicular:before{background:var(--follicular-color)}.phase-banner-main{display:flex;align-items:center;gap:var(--spacing-md);flex:1;min-width:0}.phase-banner-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;min-width:48px;font-size:20px;flex-shrink:0;background:var(--primary-gradient);color:#fff;border-radius:var(--radius-lg)}.phase-banner.period .phase-banner-icon{background:var(--period-color)}.phase-banner.fertile .phase-banner-icon{background:var(--fertile-color)}.phase-banner.ovulation .phase-banner-icon{background:var(--ovulation-color)}.phase-banner.pms .phase-banner-icon{background:var(--pms-color)}.phase-banner.follicular .phase-banner-icon{background:var(--follicular-color)}.phase-banner-info{flex:1;min-width:0;overflow:hidden}.phase-banner-label{display:block;font-size:var(--text-xs);font-weight:600;color:var(--text-light);text-transform:uppercase;letter-spacing:.08em}.phase-banner-title{font-size:var(--text-lg);font-weight:700;color:var(--text-dark);margin:4px 0;line-height:1.2}.phase-banner-desc{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;font-size:var(--text-sm);color:var(--text-medium);line-height:1.4;margin:0}.phase-banner-stats{display:flex;flex-wrap:wrap;align-items:stretch;justify-content:center;gap:var(--spacing-sm);flex-shrink:0}.phase-stat{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:70px;padding:var(--spacing-sm) var(--spacing-md);background:var(--soft-purple);border-radius:var(--radius-md);text-align:center}.phase-stat-value{display:flex;align-items:center;justify-content:center;gap:4px;font-size:var(--text-md);font-weight:700;color:var(--primary);white-space:nowrap}.phase-stat-value i{font-size:var(--text-sm)}.phase-stat-label{font-size:10px;color:var(--text-light);text-transform:uppercase;letter-spacing:.03em;margin-top:2px;white-space:nowrap}.phase-stat-divider{display:none;align-self:center;width:1px;height:36px;background:var(--border-light)}.fertility-stat{background:var(--fertile-color-light);border:1px solid var(--fertile-color)}.fertility-stat .phase-stat-value{color:var(--fertile-color)}.ovulation-stat{background:var(--ovulation-color-light);border:1px solid var(--ovulation-color)}.ovulation-stat .phase-stat-value{color:var(--ovulation-color)}.fertile-window-stat{background:var(--fertile-color-light);border:1px solid var(--fertile-color)}.fertile-window-stat .phase-stat-value{color:var(--fertile-color)}.fertility-predictions-card{padding:var(--spacing-lg);margin-bottom:var(--spacing-lg);background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);animation:slideUp .4s ease-out .1s both}.fertility-predictions-title{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--text-md);font-weight:700;color:var(--text-dark);margin:0 0 var(--spacing-md) 0}.fertility-predictions-title i{font-size:var(--text-lg);color:var(--fertile-color)}.fertility-predictions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md)}.prediction-item{display:flex;align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--soft-gray);border-radius:var(--radius-lg);border:2px solid transparent;transition:all var(--transition-fast)}.prediction-item:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm)}.prediction-item.active{border-color:currentColor}.prediction-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;flex-shrink:0;font-size:var(--text-lg);color:#fff;border-radius:var(--radius-md)}.prediction-info{display:flex;flex-direction:column;gap:2px;min-width:0}.prediction-label{font-size:var(--text-xs);font-weight:600;color:var(--text-light);text-transform:uppercase;letter-spacing:.05em}.prediction-value{font-size:var(--text-md);font-weight:700;color:var(--text-dark);line-height:1.2}.prediction-active{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;font-size:var(--text-sm);font-weight:700;color:#fff;background:var(--primary-gradient);border-radius:var(--radius-sm);animation:pulse 2s ease-in-out infinite}.prediction-desc{font-size:var(--text-xs);color:var(--text-medium);line-height:1.3}.ovulation-prediction{background:var(--ovulation-color-bg)}.ovulation-prediction .prediction-icon{background:var(--ovulation-color)}.ovulation-prediction .prediction-value{color:var(--ovulation-color)}.ovulation-prediction.active{border-color:var(--ovulation-color);background:var(--ovulation-color-light)}.ovulation-prediction.active .prediction-active{background:var(--ovulation-color)}.fertile-prediction{background:var(--fertile-color-bg)}.fertile-prediction .prediction-icon{background:var(--fertile-color)}.fertile-prediction .prediction-value{color:var(--fertile-color)}.fertile-prediction.active{border-color:var(--fertile-color);background:var(--fertile-color-light)}.fertile-prediction.active .prediction-active{background:var(--fertile-color)}.period-prediction{background:var(--period-color-bg)}.period-prediction .prediction-icon{background:var(--period-color)}.period-prediction .prediction-value{color:var(--period-color)}.period-prediction.active{border-color:var(--period-color);background:var(--period-color-light)}.period-prediction.active .prediction-active{background:var(--period-color)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.trackers-main-layout{display:grid;grid-template-columns:1fr;gap:var(--spacing-lg);margin-bottom:var(--spacing-lg);align-items:start}.calendar-section{width:100%;padding:var(--spacing-lg);background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);overflow:hidden;animation:slideUp .5s ease-out}.tracker-calendar{width:100%}.calendar-header{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.calendar-month{font-size:var(--text-md);font-weight:700;color:var(--text-dark);white-space:nowrap}.calendar-controls{display:flex;gap:4px}.calendar-control-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;font-size:var(--text-sm);background:var(--soft-purple);color:var(--primary);border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.calendar-control-btn:hover{background:var(--primary-gradient);color:#fff;transform:scale(1.05)}.calendar-control-btn:focus{outline:none;box-shadow:0 0 0 3px #7c3aed26}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:var(--spacing-xs);font-size:10px;font-weight:600;color:var(--text-light);text-align:center;text-transform:uppercase;letter-spacing:.02em}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.calendar-day{aspect-ratio:1;display:flex;align-items:center;justify-content:center;position:relative;min-width:0;font-size:var(--text-xs);font-weight:500;color:var(--text-dark);border-radius:var(--radius-md);cursor:pointer;-webkit-user-select:none;user-select:none;transition:all var(--transition-fast)}.calendar-day:hover{background:var(--soft-purple);transform:scale(1.05);z-index:1}.calendar-day.other-month{color:var(--text-muted)}.calendar-day.selected{font-weight:700;background:var(--primary-gradient);color:#fff;box-shadow:0 2px 8px -2px #7c3aed80;transform:scale(1.05);z-index:2}.calendar-day.today{font-weight:700;color:var(--text-dark);background:transparent;border:2px solid var(--primary)}.calendar-day.period{font-weight:600;background:var(--period-color)!important;color:#fff!important}.calendar-day.period.predicted{background:var(--period-color-light)!important;color:var(--period-color)!important;border:1px dashed var(--period-color)}.calendar-day.fertile{background:var(--fertile-color)!important;color:#fff!important}.calendar-day.ovulation{font-weight:700;background:var(--ovulation-color)!important;color:#fff!important;box-shadow:0 0 0 2px var(--ovulation-color-light)}.calendar-day.pms{font-weight:500;background:var(--pms-color-light)!important;color:var(--pms-color)!important}.calendar-day .entry-dot{position:absolute;bottom:2px;left:50%;transform:translate(-50%);width:4px;height:4px;background:var(--primary);border-radius:var(--radius-full)}.selected-date-info{display:flex;flex-direction:column;align-items:center;margin-top:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:var(--soft-purple);border-radius:var(--radius-md);text-align:center}.selected-date-label{font-size:10px;font-weight:600;color:var(--text-light);text-transform:uppercase;letter-spacing:.08em}.selected-date-value{font-size:var(--text-sm);font-weight:600;color:var(--primary);margin-top:2px}.calendar-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--spacing-sm);margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--border-light)}.legend-item{display:flex;align-items:center;gap:4px;font-size:10px;color:var(--text-medium)}.legend-color{width:12px;height:12px;flex-shrink:0;border-radius:var(--radius-sm);box-shadow:var(--shadow-xs)}.legend-color.period{background:var(--period-color)}.legend-color.predicted{background:var(--period-color-light);border:1px dashed var(--period-color)}.legend-color.fertile{background:var(--fertile-color)}.legend-color.ovulation{background:var(--ovulation-color)}.legend-color.pms{background:var(--pms-color)}.trackers-section{min-width:0;padding:var(--spacing-lg);background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);overflow:hidden;animation:slideUp .5s ease-out .1s both}.tracker-tabs{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);padding:var(--spacing-xs);background:var(--background);border-radius:var(--radius-lg);overflow-x:auto;scrollbar-width:thin;scrollbar-color:var(--primary) transparent;-webkit-overflow-scrolling:touch}.tracker-tabs::-webkit-scrollbar{height:3px}.tracker-tabs::-webkit-scrollbar-thumb{background:var(--primary-gradient);border-radius:var(--radius-full)}.tab-button{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);flex:1;min-width:0;padding:var(--spacing-md) var(--spacing-lg);font-size:var(--text-sm);font-weight:600;color:var(--text-medium);background:transparent;border:none;border-radius:var(--radius-md);white-space:nowrap;cursor:pointer;transition:all var(--transition-fast)}.tab-button i{font-size:var(--text-base);flex-shrink:0}.tab-button:hover{color:var(--primary);background:var(--soft-purple)}.tab-button.active{color:#fff;background:var(--primary-gradient);box-shadow:0 4px 12px -4px #7c3aed80}.tracker-content{min-height:280px;overflow:visible}.tracker-form{display:flex;flex-direction:column;gap:var(--spacing-lg)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-xs)}.form-group label{font-size:var(--text-sm);font-weight:600;color:var(--text-dark)}.form-row{display:flex;flex-direction:column;gap:var(--spacing-md)}.form-control{width:100%;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--text-sm);color:var(--text-dark);background:var(--surface);border:2px solid var(--border-light);border-radius:var(--radius-md);transition:all var(--transition-fast)}.form-control:hover{border-color:var(--primary-light)}.form-control:focus{border-color:var(--primary);box-shadow:0 0 0 3px #7c3aed1a;outline:none}.form-actions{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-lg)}.submit-button,.delete-button{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--text-sm);font-weight:600;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal)}.submit-button{flex:2;position:relative;color:#fff;background:var(--primary-gradient);border:none;overflow:hidden}.submit-button:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(120deg,transparent,rgba(255,255,255,.3),transparent);transition:all .5s}.submit-button:hover:before{left:100%}.submit-button:hover{transform:translateY(-3px);box-shadow:0 8px 20px -8px #7c3aed80}.delete-button{flex:1;color:var(--error);background:transparent;border:2px solid var(--error)}.delete-button:hover{background:#ef44441a;transform:translateY(-2px);box-shadow:0 2px 8px -2px #ef44444d}.symptom-checkboxes{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm)}.symptom-checkbox{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);background:var(--soft-purple);border-radius:var(--radius-md);transition:all var(--transition-fast)}.symptom-checkbox:hover{background:linear-gradient(135deg,var(--soft-purple) 0%,var(--soft-pink) 100%)}.symptom-checkbox input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;position:relative;width:18px;height:18px;flex-shrink:0;border:2px solid var(--primary-light);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.symptom-checkbox input[type=checkbox]:checked{background:var(--primary-gradient);border-color:transparent}.symptom-checkbox input[type=checkbox]:checked:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:11px;font-weight:700;color:#fff}.symptom-checkbox label{font-size:var(--text-xs);font-weight:500;color:var(--text-medium);cursor:pointer;-webkit-user-select:none;user-select:none}.mood-buttons{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm)}.mood-button{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-md);background:var(--surface);border:2px solid var(--border-light);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-normal)}.mood-button i{font-size:var(--text-xl);color:var(--text-light);transition:all var(--transition-normal)}.mood-button span{font-size:var(--text-xs);font-weight:500;color:var(--text-medium)}.mood-button:hover{border-color:var(--primary);box-shadow:var(--shadow-md);transform:translateY(-2px)}.mood-button:hover i{color:var(--primary);transform:scale(1.1)}.mood-button.selected{background:linear-gradient(135deg,var(--soft-purple) 0%,var(--soft-pink) 100%);border-color:transparent;box-shadow:0 4px 12px -4px #7c3aed66;transform:translateY(-2px)}.mood-button.selected i{color:var(--primary);animation:float 2s ease-in-out infinite}.logs-list{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--border-light)}.logs-list h3{font-size:var(--text-md);font-weight:700;color:var(--text-dark);margin:0 0 var(--spacing-md) 0}.log-item{position:relative;margin-bottom:var(--spacing-sm);padding:var(--spacing-md);background:linear-gradient(135deg,var(--soft-purple) 0%,rgba(255,255,255,.5) 100%);border:1px solid var(--border-light);border-radius:var(--radius-md);overflow:hidden;transition:all var(--transition-fast)}.log-item:before{content:"";position:absolute;top:0;left:0;width:3px;height:100%;background:var(--primary-gradient)}.log-item:hover{transform:translate(4px);box-shadow:var(--shadow-sm)}.log-item .log-date{font-size:var(--text-xs);font-weight:600;color:var(--primary);margin-bottom:4px}.log-item .log-details{font-size:var(--text-sm);color:var(--text-dark);line-height:1.5}.phase-info-card{position:relative;margin:var(--spacing-lg) 0;padding:var(--spacing-xl);background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);overflow:hidden;animation:slideUp .4s ease-out}.phase-info-card:before{content:"";position:absolute;top:0;left:0;width:5px;height:100%;background:var(--primary-gradient)}.phase-info-card.period:before{background:var(--period-color)}.phase-info-card.fertile:before{background:var(--fertile-color)}.phase-info-card.ovulation:before{background:var(--ovulation-color)}.phase-info-card.pms:before{background:var(--pms-color)}.phase-info-card.follicular:before{background:var(--follicular-color)}.phase-info-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.phase-info-header h3{font-size:var(--text-lg);font-weight:700;color:var(--text-dark);margin:0}.phase-info-header .phase-date{margin-left:auto;padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--text-sm);font-weight:500;color:var(--text-light);background:var(--soft-purple);border-radius:var(--radius-md)}.phase-info-description{font-size:var(--text-md);color:var(--text-medium);line-height:1.7;margin-bottom:var(--spacing-lg)}.phase-info-tips{padding:var(--spacing-lg);background:linear-gradient(135deg,var(--soft-purple) 0%,var(--soft-pink) 100%);border-radius:var(--radius-lg)}.phase-info-tips h4{font-size:var(--text-md);font-weight:700;color:var(--primary);margin:0 0 var(--spacing-sm) 0}.phase-info-tips h4 i{margin-right:var(--spacing-xs);color:var(--accent)}.phase-info-tips ul{margin:0;padding-left:var(--spacing-lg)}.phase-info-tips li{font-size:var(--text-sm);color:var(--text-medium);line-height:1.6;margin-bottom:var(--spacing-xs)}.phase-details-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.phase-detail-item{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--soft-gray);border-radius:var(--radius-lg);transition:all var(--transition-fast)}.phase-detail-item:hover{background:var(--soft-purple);transform:translateY(-2px)}.phase-detail-item i{font-size:var(--text-lg);color:var(--primary);margin-top:2px}.phase-detail-item div{display:flex;flex-direction:column;gap:2px}.phase-detail-item .detail-label{font-size:var(--text-xs);font-weight:600;color:var(--text-light);text-transform:uppercase;letter-spacing:.05em}.phase-detail-item .detail-value{font-size:var(--text-sm);font-weight:600;color:var(--text-dark)}.phase-detail-item.fertile-alert{background:var(--fertile-color-light);border:1px solid var(--fertile-color)}.phase-detail-item.fertile-alert i,.phase-detail-item.fertile-alert .detail-value{color:var(--fertile-color)}.phase-detail-item.ovulation-alert{background:var(--ovulation-color-light);border:1px solid var(--ovulation-color)}.phase-detail-item.ovulation-alert i,.phase-detail-item.ovulation-alert .detail-value{color:var(--ovulation-color)}.phase-quick-actions{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--border-light)}.quick-action-label{display:block;font-size:var(--text-sm);color:var(--text-light);margin-bottom:var(--spacing-sm)}.quick-action-buttons{display:flex;flex-wrap:wrap;gap:var(--spacing-sm)}.quick-action-btn{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-md);font-size:var(--text-sm);font-weight:600;color:#fff;background:var(--primary-gradient);border:none;border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast)}.quick-action-btn i{font-size:var(--text-md)}.quick-action-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.phase-tips-section{padding:var(--spacing-lg);margin-bottom:var(--spacing-lg);background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-card);animation:slideUp .6s ease-out}.tips-section-title{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--text-md);font-weight:700;color:var(--text-dark);margin:0 0 var(--spacing-md) 0}.tips-section-title i{font-size:var(--text-lg);color:var(--accent)}.tips-horizontal-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.tip-card{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-md);background:linear-gradient(135deg,var(--soft-purple) 0%,var(--soft-pink) 100%);border:1px solid transparent;border-radius:var(--radius-md);transition:all var(--transition-fast)}.tip-card:hover{border-color:var(--primary-light);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.tip-number{display:flex;align-items:center;justify-content:center;width:28px;height:28px;min-width:28px;flex-shrink:0;font-size:var(--text-xs);font-weight:700;color:#fff;background:var(--primary-gradient);border-radius:var(--radius-full)}.tip-text{font-size:var(--text-sm);font-weight:500;color:var(--text-dark);line-height:1.5;margin:0}.hormone-info-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--spacing-sm);margin-top:var(--spacing-sm);padding:var(--spacing-md);background:linear-gradient(135deg,var(--soft-purple) 0%,rgba(255,255,255,.8) 100%);border-radius:var(--radius-md)}.hormone-item{display:flex;align-items:center;gap:6px;padding:var(--spacing-xs) var(--spacing-sm);background:var(--surface);border-radius:var(--radius-md);box-shadow:var(--shadow-xs)}.hormone-item i{font-size:var(--text-sm);color:var(--primary)}.hormone-item span{font-size:var(--text-xs);font-weight:500;color:var(--text-medium)}.hormone-label{font-weight:600;color:var(--text-dark)}.hormone-value{color:var(--text-medium)}@media(min-width:480px){.mood-buttons{grid-template-columns:repeat(3,1fr)}}@media(min-width:600px){.form-row{flex-direction:row}.form-row .form-group{flex:1}.symptom-checkboxes{grid-template-columns:repeat(3,1fr)}.tips-horizontal-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:768px){.mood-buttons{grid-template-columns:repeat(4,1fr)}}@media(min-width:900px){.phase-banner{flex-direction:row;align-items:center;justify-content:space-between;padding:var(--spacing-xl);gap:var(--spacing-lg)}.phase-banner-stats{justify-content:flex-end}.phase-stat-divider{display:block}}@media(min-width:1024px){.trackers-main-layout{grid-template-columns:minmax(320px,380px) 1fr;gap:var(--spacing-xl)}.calendar-section{position:sticky;top:var(--spacing-lg)}.tips-horizontal-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:1024px){.calendar-section{max-width:500px;margin:0 auto}}@media(max-width:768px){.trackers-container{padding:var(--spacing-md)}.trackers-header h1{font-size:var(--text-2xl)}.phase-banner{padding:var(--spacing-md)}.phase-banner-main{gap:var(--spacing-sm)}.phase-banner-icon{width:40px;height:40px;min-width:40px;font-size:18px}.phase-banner-title{font-size:var(--text-md)}.phase-banner-desc{font-size:var(--text-xs)}.phase-stat{min-width:60px;padding:6px 10px}.phase-stat-value{font-size:var(--text-sm)}.phase-stat-label{font-size:9px}.tab-button{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--text-xs);gap:var(--spacing-xs)}.tab-button i{font-size:var(--text-sm)}.calendar-section{max-width:100%}.form-actions{flex-direction:column}.submit-button,.delete-button{flex:1;width:100%}.fertility-predictions-card{padding:var(--spacing-md)}.fertility-predictions-grid{grid-template-columns:1fr}}@media(max-width:480px){.trackers-container{padding:var(--spacing-sm)}.trackers-header{margin-bottom:var(--spacing-md)}.trackers-header h1{font-size:var(--text-xl)}.trackers-subtitle{font-size:var(--text-sm)}.phase-banner{padding:var(--spacing-sm);gap:var(--spacing-sm)}.phase-banner-main{flex-direction:row;align-items:center;text-align:left}.phase-banner-icon{width:36px;height:36px;min-width:36px;font-size:16px}.phase-banner-title{font-size:var(--text-sm);margin:2px 0}.phase-banner-label{font-size:9px}.phase-banner-desc{display:none}.phase-banner-stats{width:100%;justify-content:space-between;gap:4px}.phase-stat{min-width:0;flex:1;padding:4px 6px}.phase-stat-value{font-size:var(--text-xs)}.phase-stat-label{font-size:8px}.phase-stat-divider{display:none}.calendar-section,.trackers-section,.phase-tips-section{padding:var(--spacing-md);border-radius:var(--radius-lg)}.calendar-month{font-size:var(--text-md)}.tracker-tabs{gap:var(--spacing-xs);margin-bottom:var(--spacing-md);padding:var(--spacing-xs)}.tab-button{padding:var(--spacing-sm) var(--spacing-sm);flex:1;min-width:0}.tab-button span{display:none}.tab-button i{margin:0;font-size:var(--text-base)}.symptom-checkboxes{grid-template-columns:1fr}.mood-buttons{grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm)}.mood-button{padding:var(--spacing-md)}.mood-button i{font-size:var(--text-xl)}.phase-info-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-xs)}.phase-info-header .phase-date{margin-left:0}.tip-card{padding:var(--spacing-sm)}.tip-number{width:24px;height:24px;min-width:24px;font-size:10px}.tip-text{font-size:var(--text-xs)}.tips-section-title{font-size:var(--text-sm)}.hormone-info-bar{padding:var(--spacing-sm)}.hormone-item{padding:4px 8px}.hormone-item span{font-size:10px}.selected-date-info{padding:var(--spacing-xs) var(--spacing-sm)}.selected-date-value{font-size:var(--text-xs)}.fertility-predictions-card{padding:var(--spacing-sm)}.fertility-predictions-title{font-size:var(--text-sm)}.fertility-predictions-title i{font-size:var(--text-md)}.prediction-item{padding:var(--spacing-sm);gap:var(--spacing-sm)}.prediction-icon{width:36px;height:36px;font-size:var(--text-md)}.prediction-value{font-size:var(--text-sm)}.prediction-desc{font-size:10px}}.navbar{display:flex;align-items:center;justify-content:center;background:#ffffffd9;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:var(--shadow-sm);position:sticky;top:0;z-index:999;transition:all var(--transition-normal);height:72px;margin:12px 20px 0;border-radius:var(--radius-2xl);border:1px solid rgba(255,255,255,.6)}.navbar.scrolled{height:64px;margin:0;border-radius:0;border:none;border-bottom:1px solid var(--border-light);box-shadow:var(--shadow-md);background:#fffffff2}.navbar-container{display:flex;justify-content:space-between;align-items:center;width:100%;max-width:1280px;padding:0 var(--spacing-xl);position:relative}.navbar-logo{display:flex;align-items:center;text-decoration:none;font-size:1.5rem;font-weight:800;color:var(--primary);transition:all var(--transition-normal);letter-spacing:-.02em}.navbar-logo:hover{transform:scale(1.02)}.logo-icon{margin-right:10px;font-size:1.8rem}.logo-icon-img{width:160px;height:50px;object-fit:contain;transition:all var(--transition-normal)}.navbar-logo:hover .logo-icon-img{filter:brightness(1.1)}.logo-text{background:var(--primary-gradient);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;display:inline-block}.nav-menu{display:flex;align-items:center;list-style:none;margin:0;padding:0;transition:all var(--transition-normal);gap:.25rem}.nav-item{margin:0}.nav-link{display:flex;align-items:center;color:var(--text-medium);text-decoration:none;padding:10px 18px;border-radius:var(--radius-lg);font-weight:500;transition:all var(--transition-normal);position:relative;overflow:hidden;font-size:var(--text-sm);gap:8px}.nav-link i{font-size:1.1rem;transition:all var(--transition-normal)}.nav-link:hover{color:var(--primary);background:var(--soft-purple)}.nav-link:hover i{transform:translateY(-2px)}.nav-link.active{color:var(--primary);font-weight:600;background:var(--soft-purple)}.nav-link.active:after{content:"";position:absolute;bottom:6px;left:50%;transform:translate(-50%);width:24px;height:3px;background:var(--primary-gradient);border-radius:var(--radius-full)}.signup-button,.signin-button{background:var(--primary-gradient);color:#fff!important;margin-left:8px;border-radius:var(--radius-lg);font-weight:600;box-shadow:0 6px 20px -6px #7c3aed80;padding:10px 20px}.signup-button:hover,.signin-button:hover{transform:translateY(-2px);box-shadow:0 10px 25px -6px #7c3aed99}.signup-button:after,.signin-button:after{display:none}.logout-button{background:transparent;border:2px solid var(--primary);cursor:pointer;font-size:var(--text-sm);padding:8px 18px;border-radius:var(--radius-lg);display:flex;align-items:center;gap:8px;color:var(--primary);font-weight:600;transition:all var(--transition-normal)}.logout-button:hover{background:var(--soft-purple);transform:translateY(-2px)}.menu-icon{display:none;flex-direction:column;justify-content:space-around;width:28px;height:20px;cursor:pointer;z-index:10;background:transparent;border:none;padding:0}.menu-icon span{width:100%;height:2.5px;background:var(--primary-gradient);border-radius:var(--radius-full);transition:all var(--transition-normal);transform-origin:center}.menu-icon.active span:nth-child(1){transform:translateY(8px) rotate(45deg)}.menu-icon.active span:nth-child(2){opacity:0;transform:scaleX(0)}.menu-icon.active span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.home-navbar{background:#ffffffe6;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.home-navbar.scrolled{background:#fffffffa}@media screen and (max-width:960px){.menu-icon{display:flex}.nav-menu{display:flex;flex-direction:column;width:calc(100% - 40px);position:absolute;top:76px;left:-100%;opacity:0;padding:var(--spacing-lg);background:#fffffffa;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:var(--shadow-xl);border-radius:var(--radius-xl);margin:0 20px;border:1px solid var(--border-light);transition:all .4s cubic-bezier(.175,.885,.32,1.275);visibility:hidden;gap:.5rem}.nav-menu.active{left:0;opacity:1;visibility:visible}.nav-item{width:100%;margin:0}.nav-link{width:100%;padding:14px 20px;border-radius:var(--radius-lg);justify-content:flex-start}.nav-link.active:after{display:none}.nav-link.active{background:var(--soft-purple)}.signup-button,.signin-button{margin-left:0;margin-top:.5rem;padding:14px 20px;text-align:center;justify-content:center;width:100%}.navbar.scrolled .nav-menu{top:68px}}@media screen and (max-width:768px){.navbar{height:64px;border-radius:var(--radius-xl);margin:10px 15px 0}.navbar-container{padding:0 var(--spacing-md)}.nav-menu{top:68px}.logo-text{font-size:1.35rem}.logo-icon{font-size:1.5rem}.logo-icon-img{width:140px;height:44px}}@media screen and (max-width:480px){.navbar{height:58px;border-radius:var(--radius-lg);margin:8px 10px 0}.navbar.scrolled{height:54px}.nav-menu{top:62px;padding:var(--spacing-md);width:calc(100% - 20px);margin:0 10px}.logo-icon{font-size:1.35rem}.logo-text{font-size:1.2rem}.logo-icon-img{width:120px;height:40px}.navbar-container{padding:0 var(--spacing-sm)}}.education-container{max-width:1400px;margin:0 auto;padding:var(--spacing-xl) var(--spacing-lg);animation:fadeIn .5s ease-out}.education-hero{text-align:center;margin-bottom:var(--spacing-2xl);background:linear-gradient(135deg,var(--soft-purple) 0%,var(--soft-pink) 100%);padding:var(--spacing-3xl) var(--spacing-xl);border-radius:var(--radius-2xl);position:relative;overflow:hidden}.education-hero:before{content:"";position:absolute;top:-50%;right:-20%;width:50%;height:150%;background:radial-gradient(circle,rgba(124,58,237,.1) 0%,transparent 70%);animation:float 8s ease-in-out infinite}.education-hero h1{background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-size:var(--text-4xl);margin-bottom:var(--spacing-md);font-weight:800;letter-spacing:-.02em;position:relative;z-index:1}.education-hero p{color:var(--text-medium);font-size:var(--text-lg);max-width:600px;margin:0 auto;line-height:1.7;position:relative;z-index:1}.category-filter{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-2xl);justify-content:center}.category-button{background:var(--surface);border:2px solid var(--border-light);border-radius:var(--radius-lg);padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--text-sm);font-weight:600;color:var(--text-medium);cursor:pointer;transition:all var(--transition-fast)}.category-button.active{background:var(--primary-gradient);color:#fff;border-color:transparent;box-shadow:0 4px 12px -4px #7c3aed66}.category-button:hover:not(.active){background:var(--soft-purple);color:var(--primary);border-color:var(--primary);transform:translateY(-2px)}.article-grid{display:grid;grid-template-columns:repeat(1,1fr);gap:var(--spacing-xl)}@media(min-width:640px){.article-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.article-grid{grid-template-columns:repeat(3,1fr)}}.article-card{display:flex;flex-direction:column;background:var(--surface);border-radius:var(--radius-xl);overflow:hidden;text-decoration:none;color:inherit;box-shadow:var(--shadow-card);border:1px solid var(--border-light);transition:all var(--transition-normal);height:100%}.article-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-card-hover)}.article-image{height:200px;overflow:hidden;position:relative}.article-image:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#7c3aed1a,#ec48991a);opacity:0;transition:opacity var(--transition-fast)}.article-card:hover .article-image:after{opacity:1}.article-image img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-normal)}.article-card:hover .article-image img{transform:scale(1.08)}.article-placeholder{width:100%;height:100%;background:linear-gradient(135deg,var(--soft-purple) 0%,var(--soft-pink) 100%)}.article-content{padding:var(--spacing-xl);flex-grow:1;display:flex;flex-direction:column}.article-content h3{font-size:var(--text-lg);margin-bottom:var(--spacing-sm);color:var(--text-dark);line-height:1.4;font-weight:700;transition:color var(--transition-fast)}.article-card:hover .article-content h3{color:var(--primary)}.article-excerpt{color:var(--text-medium);margin-bottom:var(--spacing-md);line-height:1.7;flex-grow:1;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;font-size:var(--text-sm)}.article-meta{display:flex;align-items:center;font-size:var(--text-xs);color:var(--text-light);margin-top:auto;justify-content:space-between}.article-category{background:linear-gradient(135deg,var(--soft-purple) 0%,var(--soft-pink) 100%);color:var(--primary);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-md);font-weight:600}.read-time{display:flex;align-items:center;gap:var(--spacing-xs)}.article-page-container{max-width:900px;margin:0 auto;padding:var(--spacing-xl) var(--spacing-lg);animation:fadeIn .5s ease-out}.article-header{margin-bottom:var(--spacing-2xl)}.article-header h1{font-size:var(--text-4xl);color:var(--text-dark);margin-bottom:var(--spacing-md);line-height:1.2;font-weight:800;letter-spacing:-.02em}.article-meta-full{display:flex;align-items:center;gap:var(--spacing-lg);margin-bottom:var(--spacing-xl);flex-wrap:wrap}.article-meta-item{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--text-light);font-size:var(--text-sm);background:var(--soft-purple);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-md)}.article-meta-item i{color:var(--primary)}.article-featured-image{width:100%;height:auto;max-height:450px;object-fit:cover;border-radius:var(--radius-xl);margin-bottom:var(--spacing-2xl);box-shadow:var(--shadow-lg)}.article-content-full{line-height:1.9;color:var(--text-medium);font-size:var(--text-md)}.article-content-full h2{font-size:var(--text-2xl);color:var(--text-dark);margin:var(--spacing-2xl) 0 var(--spacing-md);font-weight:700}.article-content-full h3{font-size:var(--text-xl);color:var(--text-dark);margin:var(--spacing-xl) 0 var(--spacing-md);font-weight:600}.article-content-full p{margin-bottom:var(--spacing-lg)}.article-content-full ul,.article-content-full ol{margin-bottom:var(--spacing-lg);padding-left:var(--spacing-xl)}.article-content-full li{margin-bottom:var(--spacing-sm)}.article-content-full img{max-width:100%;border-radius:var(--radius-lg);margin:var(--spacing-xl) 0;box-shadow:var(--shadow-md)}.article-content-full blockquote{border-left:4px solid var(--primary);padding-left:var(--spacing-lg);margin:var(--spacing-xl) 0;font-style:italic;color:var(--text-dark);background:var(--soft-purple);padding:var(--spacing-lg);border-radius:0 var(--radius-lg) var(--radius-lg) 0}.back-to-education{display:inline-flex;align-items:center;gap:var(--spacing-sm);color:var(--primary);text-decoration:none;font-weight:600;margin-bottom:var(--spacing-xl);padding:var(--spacing-sm) var(--spacing-md);background:var(--soft-purple);border-radius:var(--radius-lg);transition:all var(--transition-fast)}.back-to-education:hover{background:var(--primary-gradient);color:#fff;transform:translate(-4px)}.loading-spinner{text-align:center;padding:var(--spacing-3xl);color:var(--text-light);font-size:var(--text-lg)}@media(max-width:768px){.education-hero{padding:var(--spacing-2xl) var(--spacing-lg)}.education-hero h1,.article-header h1{font-size:var(--text-2xl)}}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;background-color:var(--background);color:var(--text-dark);line-height:1.6;overflow-x:hidden;min-height:100vh;font-size:var(--text-base)}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2;margin-bottom:var(--spacing-sm);color:var(--text-dark);letter-spacing:-.02em}h1{font-size:clamp(2rem,5vw,3.5rem);font-weight:800}h2{font-size:clamp(1.5rem,4vw,2.5rem)}h3{font-size:clamp(1.25rem,3vw,1.75rem)}h4{font-size:var(--text-lg)}p{margin-bottom:var(--spacing-md);color:var(--text-medium);line-height:1.7}a{color:var(--primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--primary-dark)}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);background:var(--primary-gradient);color:#fff;border:none;padding:.75rem 1.75rem;border-radius:var(--radius-lg);font-weight:600;cursor:pointer;transition:all var(--transition-normal);font-family:inherit;font-size:var(--text-sm);letter-spacing:.01em;position:relative;overflow:hidden}button:before,.button:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(255,255,255,.2) 0%,transparent 50%);opacity:0;transition:opacity var(--transition-fast)}button:hover,.button:hover{transform:translateY(-2px);box-shadow:0 10px 30px -10px #7c3aed80}button:hover:before,.button:hover:before{opacity:1}button:active,.button:active{transform:translateY(0)}button:disabled,.button:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.btn-secondary{background:transparent;color:var(--primary);border:2px solid var(--primary)}.btn-secondary:hover{background:var(--soft-purple);box-shadow:none}.btn-secondary:before{display:none}.btn-ghost{background:transparent;color:var(--text-dark);padding:.5rem 1rem}.btn-ghost:hover{background:var(--border-light);box-shadow:none}.btn-ghost:before{display:none}input,select,textarea{font-family:inherit;font-size:var(--text-sm);padding:.875rem 1rem;border:2px solid var(--border);border-radius:var(--radius-md);transition:all var(--transition-fast);background-color:var(--surface);color:var(--text-dark);width:100%}input::placeholder,textarea::placeholder{color:var(--text-light)}input:hover,select:hover,textarea:hover{border-color:var(--text-light)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 4px #7c3aed1a}.container{width:100%;max-width:1280px;margin:0 auto;padding:0 var(--spacing-lg)}.card{background:var(--surface);border-radius:var(--radius-xl);padding:var(--spacing-xl);box-shadow:var(--shadow-card);border:1px solid var(--border-light);transition:all var(--transition-normal)}.card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-2px)}.badge{display:inline-flex;align-items:center;padding:.25rem .75rem;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em}.badge-primary{background:var(--soft-purple);color:var(--primary)}.badge-success{background:var(--success-light);color:var(--success)}.badge-warning{background:var(--warning-light);color:var(--warning)}.badge-error{background:var(--error-light);color:var(--error)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-primary{color:var(--primary)}.text-secondary{color:var(--secondary)}.text-success{color:var(--success)}.text-muted{color:var(--text-light)}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.mt-1{margin-top:var(--spacing-sm)}.mt-2{margin-top:var(--spacing-md)}.mt-3{margin-top:var(--spacing-lg)}.mt-4{margin-top:var(--spacing-xl)}.mt-5{margin-top:var(--spacing-xxl)}.mb-1{margin-bottom:var(--spacing-sm)}.mb-2{margin-bottom:var(--spacing-md)}.mb-3{margin-bottom:var(--spacing-lg)}.mb-4{margin-bottom:var(--spacing-xl)}.mb-5{margin-bottom:var(--spacing-xxl)}.gap-1{gap:var(--spacing-sm)}.gap-2{gap:var(--spacing-md)}.gap-3{gap:var(--spacing-lg)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.grid{display:grid}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(30px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideDown{0%{transform:translateY(-30px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes slideInLeft{0%{transform:translate(-30px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideInRight{0%{transform:translate(30px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.gradient-text{background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.glass{background:#fffc;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--border-light);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb{background:var(--text-light);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-medium)}::selection{background:var(--primary-light);color:#fff}@media screen and (max-width:1024px){.container{padding:0 var(--spacing-md)}}@media screen and (max-width:768px){h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.25rem}button,.button{padding:.625rem 1.25rem;font-size:var(--text-sm)}}@media screen and (max-width:480px){h1{font-size:1.75rem}h2{font-size:1.375rem}h3{font-size:1.125rem}.container{padding:0 var(--spacing-sm)}}:root{--primary: #7C3AED;--primary-light: #A78BFA;--primary-dark: #5B21B6;--primary-rgb: 124, 58, 237;--primary-gradient: linear-gradient(135deg, #7C3AED 0%, #EC4899 100%);--secondary: #EC4899;--secondary-light: #F9A8D4;--secondary-dark: #BE185D;--secondary-rgb: 236, 72, 153;--accent: #06B6D4;--accent-light: #67E8F9;--accent-dark: #0891B2;--soft-pink: #FDF2F8;--soft-purple: #F5F3FF;--soft-blue: #EFF6FF;--soft-green: #ECFDF5;--soft-orange: #FFF7ED;--soft-gray: #F9FAFB;--background: #FAFAFA;--surface: #FFFFFF;--surface-elevated: #FFFFFF;--border: #E5E7EB;--border-light: #F3F4F6;--text-dark: #1F2937;--text-medium: #6B7280;--text-light: #9CA3AF;--text-muted: #D1D5DB;--success: #10B981;--success-light: #D1FAE5;--warning: #F59E0B;--warning-light: #FEF3C7;--error: #EF4444;--error-light: #FEE2E2;--info: #3B82F6;--info-light: #DBEAFE;--period-color: #F43F5E;--period-color-light: #FFE4E6;--period-color-bg: rgba(244, 63, 94, .08);--fertile-color: #14B8A6;--fertile-color-light: #CCFBF1;--fertile-color-bg: rgba(20, 184, 166, .08);--ovulation-color: #EC4899;--ovulation-color-light: #FCE7F3;--ovulation-color-bg: rgba(236, 72, 153, .08);--pms-color: #F97316;--pms-color-light: #FFEDD5;--pms-color-bg: rgba(249, 115, 22, .08);--follicular-color: #3B82F6;--follicular-color-light: #DBEAFE;--follicular-color-bg: rgba(59, 130, 246, .08);--luteal-color: #8B5CF6;--luteal-color-light: #EDE9FE;--luteal-color-bg: rgba(139, 92, 246, .08);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .04);--shadow-sm: 0 2px 4px rgba(0, 0, 0, .04), 0 1px 2px rgba(0, 0, 0, .06);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .05), 0 2px 4px -1px rgba(0, 0, 0, .04);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .06), 0 4px 6px -2px rgba(0, 0, 0, .04);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .08), 0 10px 10px -5px rgba(0, 0, 0, .02);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .15);--shadow-inner: inset 0 2px 4px 0 rgba(0, 0, 0, .04);--shadow-glow: 0 0 20px rgba(124, 58, 237, .15);--shadow-card: 0 1px 3px rgba(0, 0, 0, .04), 0 1px 2px rgba(0, 0, 0, .06);--shadow-card-hover: 0 10px 40px -10px rgba(124, 58, 237, .15), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-hover: 0 8px 20px rgba(124, 58, 237, .12);--radius-xs: 4px;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px;--radius-2xl: 28px;--radius-full: 9999px;--radius-round: 50%;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-xxl: 3rem;--spacing-3xl: 4rem;--spacing-4xl: 5rem;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-normal: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .35s cubic-bezier(.4, 0, .2, 1);--transition-bounce: .5s cubic-bezier(.34, 1.56, .64, 1);--text-2xs: .65rem;--text-xs: .75rem;--text-sm: .875rem;--text-md: 1rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-xxl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--font-light: 300;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--font-extrabold: 800;--leading-none: 1;--leading-tight: 1.25;--leading-snug: 1.375;--leading-normal: 1.5;--leading-relaxed: 1.625;--leading-loose: 2;--z-dropdown: 100;--z-sticky: 200;--z-fixed: 300;--z-modal-backdrop: 400;--z-modal: 500;--z-popover: 600;--z-tooltip: 700}[data-theme=dark]{--background: #0F172A;--surface: #1E293B;--surface-elevated: #334155;--border: #334155;--border-light: #475569;--text-dark: #F1F5F9;--text-medium: #CBD5E1;--text-light: #94A3B8;--text-muted: #64748B;--primary: #A78BFA;--primary-light: #C4B5FD;--primary-dark: #7C3AED;--shadow-sm: 0 2px 4px rgba(0, 0, 0, .3);--shadow-md: 0 4px 8px rgba(0, 0, 0, .4);--shadow-lg: 0 8px 16px rgba(0, 0, 0, .5)}.test-mode-container{position:fixed;bottom:24px;right:24px;z-index:1000;background:var(--surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-2xl);padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-sm);max-width:320px;border:1px solid var(--border-light);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.test-mode-toggle{display:flex;align-items:center;gap:var(--spacing-sm)}.toggle-switch{position:relative;display:inline-block;width:48px;height:26px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background:var(--border-light);transition:all var(--transition-fast);border-radius:var(--radius-full)}.toggle-slider:before{position:absolute;content:"";height:20px;width:20px;left:3px;bottom:3px;background:#fff;transition:all var(--transition-fast);border-radius:var(--radius-full);box-shadow:var(--shadow-sm)}input:checked+.toggle-slider{background:var(--primary-gradient)}input:focus+.toggle-slider{box-shadow:0 0 0 4px #7c3aed1a}input:checked+.toggle-slider:before{transform:translate(22px)}.toggle-label{font-size:var(--text-sm);font-weight:600;color:var(--text-dark)}.test-user-selector{position:relative}.test-user-button{width:100%;padding:var(--spacing-sm) var(--spacing-md);display:flex;align-items:center;justify-content:space-between;border:2px solid var(--border-light);border-radius:var(--radius-lg);background:var(--soft-purple);cursor:pointer;font-size:var(--text-sm);font-weight:500;color:var(--text-dark);transition:all var(--transition-fast)}.test-user-button:hover{border-color:var(--primary);background:linear-gradient(135deg,var(--soft-purple) 0%,var(--soft-pink) 100%)}.test-user-dropdown{position:absolute;bottom:100%;left:0;right:0;margin-bottom:var(--spacing-xs);background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-2xl);border:1px solid var(--border-light);max-height:300px;overflow-y:auto;z-index:1001}.test-user-option{padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;border-bottom:1px solid var(--border-light);transition:all var(--transition-fast)}.test-user-option:last-child{border-bottom:none}.test-user-option:hover{background:var(--soft-purple)}.test-user-option.active{background:linear-gradient(135deg,var(--soft-purple) 0%,var(--soft-pink) 100%);border-left:3px solid var(--primary)}.user-option-name{font-weight:600;font-size:var(--text-sm);margin-bottom:2px;color:var(--text-dark)}.user-option-desc{font-size:var(--text-xs);color:var(--text-light)}@media(max-width:576px){.test-mode-container{bottom:var(--spacing-md);right:var(--spacing-md);left:var(--spacing-md);max-width:none}}
