:root{--primary:#1f2a44;--secondary:#4a8a74;--accent:#3c6b5e;--light:#faf7f2;--dark:#212529;--gray:#6c757d;--light-gray:#e9ecef;--success:#28a745;--warning:#ffc107;--danger:#dc3545;--space-xs:0.25rem;--space-sm:0.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-xxl:3rem;--border-radius-sm:4px;--border-radius-md:8px;--border-radius-lg:12px;--text-xs:0.75rem;--text-sm:0.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--text-3xl:1.75rem;--text-4xl:2rem;--text-5xl:2.5rem}*{box-sizing:border-box}*,body{margin:0;padding:0}body{background-color:#faf7f2;background-color:var(--light);color:#1f2a44;color:var(--primary);display:flex;flex-direction:column;font-family:Arial,sans-serif;font-size:1rem;font-size:var(--text-base);line-height:1.6;min-height:100vh}h1{font-size:2rem;font-size:var(--text-4xl);font-weight:700;margin-bottom:1.5rem;margin-bottom:var(--space-lg);text-align:center}h2{font-size:1.75rem;font-size:var(--text-3xl);text-align:center}h2,h3{font-weight:600;margin-bottom:1rem;margin-bottom:var(--space-md)}h3{font-size:1.5rem;font-size:var(--text-2xl)}h4{font-size:1.25rem;font-size:var(--text-xl);font-weight:600}header{background-color:#1f2a44;background-color:var(--primary);box-shadow:0 2px 4px #0000001a;color:#faf7f2;color:var(--light);padding:.5rem 1rem;padding:var(--space-sm) var(--space-md);text-align:center}.header-container,.logo-container{align-items:center;display:flex;flex-direction:column;gap:.5rem;gap:var(--space-sm);width:100%}.logo-container{padding:.5rem 0;padding:var(--space-sm) 0}.app-logo,.logo-img{background-color:#faf7f2;background-color:var(--light);border-radius:8px;border-radius:var(--border-radius-md);box-shadow:0 2px 4px #0000001a;height:80px;padding:.5rem;padding:var(--space-sm);transition:transform .3s ease;width:auto}.app-logo:hover,.logo-img:hover{transform:scale(1.05)}.tagline{font-size:1.125rem;font-size:var(--text-lg);font-style:italic;font-weight:500;letter-spacing:1px}.tagline,nav{text-align:center}nav{background-color:#4a8a74;background-color:var(--secondary);padding:.5rem 0;padding:var(--space-sm) 0;width:100%}nav ul{display:flex;flex-wrap:wrap;gap:.5rem;gap:var(--space-sm);justify-content:center;list-style:none;margin:0;padding:0;width:100%}nav a{color:#faf7f2;color:var(--light);font-size:1rem;font-size:var(--text-base);font-weight:700;padding:.5rem 1rem;padding:var(--space-sm) var(--space-md);text-decoration:none;transition:all .3s ease}nav a.active,nav a:hover{background-color:#3c6b5e;background-color:var(--accent);border-radius:4px;border-radius:var(--border-radius-sm);transform:translateY(-2px)}.link-button{background:none;border:none;color:#faf7f2;color:var(--light);cursor:pointer;font-family:inherit;font-size:1.1rem;font-weight:700;padding:.5rem 1.5rem;padding:var(--space-sm) var(--space-lg);text-decoration:none;transition:all .3s ease}.link-button:hover{background-color:#3c6b5e;background-color:var(--accent);border-radius:4px;border-radius:var(--border-radius-sm);transform:translateY(-2px)}main{flex:1 1}.calculator-container,main{padding:1rem;padding:var(--space-md)}.calculator-container{margin:0 auto;max-width:1000px;text-align:center}.content-section{background:#fff;border:1px solid #e9ecef;border:1px solid var(--light-gray);border-radius:12px;border-radius:var(--border-radius-lg);box-shadow:0 2px 4px #0000001a;margin-bottom:1.5rem;margin-bottom:var(--space-lg);padding:1.5rem;padding:var(--space-lg)}.hero-description{color:#212529;color:var(--dark);line-height:1.6;margin:0 auto 2rem;margin:0 auto var(--space-xl);max-width:800px}.hero-description p{margin:0}.hero{margin-bottom:2rem;margin-bottom:var(--space-xl);padding:2rem 0;padding:var(--space-xl) 0;text-align:center}.hero h1{color:#1f2a44;color:var(--primary);font-size:2.5rem;line-height:1.2;margin-bottom:1rem;margin-bottom:var(--space-md)}.hero p{font-size:1.2rem;line-height:1.6;margin:0 auto 2rem;margin:0 auto var(--space-xl);max-width:700px}.auth-submit,.btn,.google-signin,.install-btn,.search-button{background-color:#4a8a74;background-color:var(--secondary);border:none;border-radius:8px;border-radius:var(--border-radius-md);color:#faf7f2;color:var(--light);cursor:pointer;display:inline-block;font-size:1.1rem;font-weight:700;margin:.5rem;margin:var(--space-sm);padding:.5rem 1.5rem;padding:var(--space-sm) var(--space-lg);text-align:center;text-decoration:none;transition:all .3s ease}.auth-submit:hover:not(:disabled),.btn:hover,.google-signin:hover:not(:disabled),.install-btn:hover,.search-button:hover:not(:disabled){background-color:#3c6b5e;background-color:var(--accent);box-shadow:0 4px 8px #0000001a;transform:translateY(-2px)}.auth-submit:disabled,.btn:disabled,.google-signin:disabled,.search-button:disabled{background:#ccc;box-shadow:none;cursor:not-allowed;transform:none}.btn-large{font-size:1.2rem;padding:1rem 2rem;padding:var(--space-md) var(--space-xl)}.btn-outline{background:#0000;border:2px solid #4a8a74;border:2px solid var(--secondary);color:#4a8a74;color:var(--secondary)}.btn-outline:hover{background:#4a8a74;background:var(--secondary);color:#faf7f2;color:var(--light)}.search-button{border-radius:12px;padding:16px 28px}.login-btn{background:linear-gradient(135deg,#4a8a74,#3c6b5e);background:linear-gradient(135deg,var(--secondary),var(--accent));border:none;border-radius:12px;border-radius:var(--border-radius-lg);box-shadow:0 6px 20px #4a8a7466;color:#fff;cursor:pointer;display:inline-block;font-size:1rem;font-weight:600;letter-spacing:1px;margin-right:auto;overflow:hidden;padding:10px 20px;position:relative;text-transform:uppercase;transition:all .3s ease}.login-btn:hover{background:linear-gradient(135deg,#3c6b5e,#2d5e4f);background:linear-gradient(135deg,var(--accent),#2d5e4f);transform:translateY(-3px) scale(1.05)}.login-btn:active{transform:translateY(-1px) scale(1.02)}.login-prompt{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin:20px 0;padding:20px;text-align:center}.login-prompt p{color:#495057;font-size:1.1rem;margin:0}.login-prompt .login-btn{margin:0 5px}.general-login-prompt{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;margin:20px 0;padding:15px;text-align:center}.general-login-prompt p{font-size:1.1rem;margin:0}.intro-login-prompt{margin-top:20px;text-align:left}.intro-login-btn{display:block;margin:10px 0;width:auto}.intro-login-text{color:#6c757d;font-size:1rem;margin-top:5px}.login-text-link{color:#4a8a74;color:var(--secondary);cursor:pointer;font-weight:600;text-decoration:underline}.login-text-link:hover{color:#3c6b5e;color:var(--accent)}.auth-buttons{position:absolute;right:25px;top:25px;z-index:100}.app-introduction{background-color:#f8f9fa;border-radius:8px;margin:20px 0;padding:20px}.app-introduction h3{color:#1f2a44;color:var(--primary);font-size:1.5rem;margin-bottom:10px}.app-introduction p{color:#212529;color:var(--dark);font-size:1.1rem;line-height:1.6;margin:0}@media (max-width:768px){.app-introduction{margin:15px 0;padding:15px}.app-introduction h3{font-size:1.3rem}.app-introduction p{font-size:1rem}}.user-menu{align-items:center;display:flex;gap:1rem;gap:var(--space-md)}.welcome-message{color:#fff;font-size:1.1rem;font-weight:600;text-shadow:0 1px 2px #0000004d}.logout-btn,.profile-btn{background:linear-gradient(135deg,#4a8a74,#3c6b5e);background:linear-gradient(135deg,var(--secondary),var(--accent));border:none;border-radius:8px;border-radius:var(--border-radius-md);box-shadow:0 3px 10px #0003;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:10px 20px;transition:all .3s ease}.logout-btn:hover,.profile-btn:hover{box-shadow:0 5px 15px #0000004d;transform:translateY(-2px)}.logout-btn{background:linear-gradient(135deg,#6c757d,#5a6268);background:linear-gradient(135deg,var(--gray),#5a6268)}.form-group{margin-bottom:1.5rem;margin-bottom:var(--space-lg)}.form-group label{color:#212529;color:var(--dark);display:block;font-weight:700;margin-bottom:.5rem;margin-bottom:var(--space-sm)}.form-group input,.form-group select,.form-group textarea,.search-input{border:1px solid #e9ecef;border:1px solid var(--light-gray);border-radius:4px;border-radius:var(--border-radius-sm);font-family:inherit;font-size:1rem;font-size:var(--text-base);padding:1rem;padding:var(--space-md);transition:all .3s ease;width:100%}.search-input-container{position:relative;width:100%}.search-section .suggestions-list{width:100%}.form-group textarea{min-height:150px;resize:vertical}.form-group input:focus,.form-group select:focus,.form-group textarea:focus,.search-input:focus{border-color:#1f2a44;border-color:var(--primary);box-shadow:0 0 0 3px #1f2a441a;outline:none}.search-input{border:3px solid #1f2a44;border:3px solid var(--primary);border-radius:12px;box-shadow:0 4px 12px #1f2a4426;font-size:1.125rem;font-size:var(--text-lg);font-weight:500}.search-input:focus{border-color:#4a8a74;border-color:var(--secondary);box-shadow:0 6px 20px #4a8a7440;transform:translateY(-2px)}.age-section,.feature-card,.gender-distribution,.install-step,.results-section,.service-node{background:#fff;border:1px solid #e9ecef;border:1px solid var(--light-gray);border-radius:12px;border-radius:var(--border-radius-lg);box-shadow:0 4px 6px #0000001a;display:flex;flex-direction:column;margin-bottom:1.5rem;margin-bottom:var(--space-lg);padding:2rem;padding:var(--space-xl);transition:transform .3s ease}.feature-card:hover{transform:translateY(-5px)}.features{grid-gap:1.5rem;grid-gap:var(--space-lg);display:grid;gap:1.5rem;gap:var(--space-lg);grid-template-columns:repeat(auto-fit,minmax(300px,1fr));padding:1.5rem 0;padding:var(--space-lg) 0}.feature-card h3{margin-top:1rem;margin-top:var(--space-md)}.feature-card h3,.feature-icon{color:#4a8a74;color:var(--secondary)}.feature-icon{font-size:2.5rem;margin-bottom:1rem;margin-bottom:var(--space-md)}.suggestions-list,.tools-list{list-style:none;padding:0}.suggestion-item,.tools-list li{background:#fff;border-radius:8px;border-radius:var(--border-radius-md);box-shadow:0 2px 4px #0000001a;margin-bottom:1rem;margin-bottom:var(--space-md);padding:1rem;padding:var(--space-md);transition:all .3s ease}.suggestion-item:hover,.tools-list li:hover{box-shadow:0 4px 8px #00000026;transform:translateY(-3px)}.tools-list a{color:#1f2a44;color:var(--primary);display:block;text-decoration:none}.suggestions-list{border:3px solid #1f2a44;border:3px solid var(--primary);border-radius:12px;box-shadow:0 8px 25px #00000026;left:0;position:absolute;top:100%;width:100%;z-index:1000}.side-effect-item{align-items:center;background:#fff;border-bottom:1px solid #e9ecef;border-bottom:1px solid var(--light-gray);border-radius:8px;border-radius:var(--border-radius-md);box-shadow:0 2px 4px #0000000d;display:flex;justify-content:space-between;margin-bottom:.5rem;margin-bottom:var(--space-sm);padding:1rem;padding:var(--space-md);transition:all .3s ease}.side-effect-item,.side-effect-item:hover{margin-left:0;padding-left:.5rem;padding-left:var(--space-sm)}.side-effect-item:hover{background:#f8f9fa;box-shadow:0 4px 8px #0000001a;transform:translateX(4px)}.loading-item{margin-bottom:.5rem;margin-bottom:var(--space-sm)}.effect-name{color:#212529;color:var(--dark);flex-grow:1;font-size:1.125rem;font-size:var(--text-lg)}.effect-count{background:linear-gradient(135deg,#4a8a74,#3c6b5e);background:linear-gradient(135deg,var(--secondary),var(--accent));border-radius:20px;color:#fff;font-size:1rem;font-size:var(--text-base);font-weight:600;min-width:80px;padding:6px 12px;text-align:center}.gender-bars{flex-direction:column}.gender-bar,.gender-bars{display:flex;gap:1rem;gap:var(--space-md)}.gender-bar{align-items:center}.gender-label{color:#212529;color:var(--dark);font-weight:600;min-width:80px;text-align:right}.gender-bar-container{background:#e9ecef;background:var(--light-gray);border-radius:20px;flex:1 1;height:35px;overflow:visible;position:relative}.gender-bar-fill{align-items:center;border-radius:20px;box-shadow:0 2px 4px #0003;color:#fff;display:flex;font-weight:600;height:100%;justify-content:flex-end;min-width:120px;padding:0 20px;transition:width .5s ease}.gender-bar-fill.male{background:linear-gradient(90deg,#1f2a44,#2d3a5c);background:linear-gradient(90deg,var(--primary),#2d3a5c)}.gender-bar-fill.female{background:linear-gradient(90deg,#4a8a74,#3a6b5a);background:linear-gradient(90deg,var(--secondary),#3a6b5a)}.auth-modal{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.auth-content{background:#fff;border-radius:12px;max-height:80vh;max-width:400px;overflow-y:auto;padding:2rem;position:relative;width:90%}.auth-close{background:none;border:none;color:#666;cursor:pointer;font-size:1.5rem;position:absolute;right:1rem;top:1rem}.auth-error{background:#ffe6e6;border-radius:4px;color:#dc3545;color:var(--danger);margin-bottom:1rem;padding:.5rem}.auth-success{background:#f0fff0;border:1px solid #28a745;border-radius:4px;color:#155724;margin-bottom:15px;padding:15px;text-align:center}footer{background-color:#1f2a44;background-color:var(--primary);color:#faf7f2;color:var(--light);margin-top:auto;padding:1.5rem;padding:var(--space-lg);text-align:center}.footer-links{display:flex;gap:2rem;gap:var(--space-xl);justify-content:center;margin-bottom:1.5rem;margin-bottom:var(--space-lg)}.footer-links a{color:#faf7f2;color:var(--light);text-decoration:none}.footer-links a:hover{text-decoration:underline}.copyright{font-size:.875rem;font-size:var(--text-sm);opacity:.8}.pwa-install-section{background:linear-gradient(135deg,#1f2a44,#4a8a74);background:linear-gradient(135deg,var(--primary) 0,#4a8a74 100%);border-radius:12px;border-radius:var(--border-radius-lg);box-shadow:0 8px 32px #00000026;color:#fff;margin:2rem auto;margin:var(--space-xl) auto;max-width:900px;padding:2rem;padding:var(--space-xl);text-align:center}.install-instructions{grid-gap:2rem;grid-gap:var(--space-xl);display:grid;gap:2rem;gap:var(--space-xl);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-top:1.5rem;margin-top:var(--space-lg);text-align:left}.install-step{background:#ffffff1a;border:1px solid #fff3;border-radius:8px;border-radius:var(--border-radius-md);padding:1.5rem;padding:var(--space-lg)}.install-step h4{color:#fff;margin-bottom:1rem;margin-bottom:var(--space-md);text-align:center}.install-step ol{margin:0;padding-left:1.5rem;padding-left:var(--space-lg)}.install-step li{line-height:1.5;margin-bottom:.5rem;margin-bottom:var(--space-sm)}.install-step strong{color:#ffeb3b;font-weight:600}.install-btn{background:#fff;border:none;border-radius:8px;border-radius:var(--border-radius-md);box-shadow:0 4px 12px #0003;color:#1f2a44;color:var(--primary);cursor:pointer;font-size:1rem;font-size:var(--text-base);font-weight:600;margin:1rem 0;margin:var(--space-md) 0;padding:1rem 2rem;padding:var(--space-md) var(--space-xl);transition:all .3s ease}.install-btn:hover{background:#f0f0f0;box-shadow:0 6px 20px #0000004d;transform:translateY(-2px)}.news-section{background:#fff;border:1px solid #e9ecef;border:1px solid var(--light-gray);border-radius:12px;border-radius:var(--border-radius-lg);box-shadow:0 4px 6px #0000001a;display:flex;flex-direction:column;margin:2rem auto;margin:var(--space-xl) auto;max-width:1000px;padding:2rem;padding:var(--space-xl);width:100%}.news-section,.news-section h2{margin-bottom:1.5rem;margin-bottom:var(--space-lg)}.news-section h2{border-bottom:2px solid #e9ecef;border-bottom:2px solid var(--light-gray);color:#4a8a74;color:var(--secondary);font-size:1.5rem;font-size:var(--text-2xl);padding-bottom:1rem;padding-bottom:var(--space-md);text-align:center}.news-grid{grid-gap:2rem;grid-gap:var(--space-xl);display:grid;gap:2rem;gap:var(--space-xl);grid-template-columns:1fr}.news-card{background:#fff;border:1px solid #e9ecef;border:1px solid var(--light-gray);border-radius:12px;border-radius:var(--border-radius-lg);box-shadow:0 4px 6px #0000001a;display:flex;flex-direction:column;padding:1.5rem;padding:var(--space-lg);position:relative;transition:transform .3s ease}.news-card:hover{box-shadow:0 8px 15px #00000026;transform:translateY(-5px)}.news-category{background:#4a8a74;background:var(--secondary);border-radius:18px;box-shadow:0 2px 6px #0003;color:#fff;font-size:.75rem;font-size:var(--text-xs);font-weight:600;letter-spacing:.5px;padding:6px 16px;position:absolute;right:16px;text-transform:uppercase;top:-12px}.news-card h3{color:#1f2a44;color:var(--primary);font-size:1.125rem;font-size:var(--text-lg);font-weight:600;line-height:1.4;margin:.25rem 0 .5rem;margin:var(--space-xs) 0 var(--space-sm)}.news-card p{color:#212529;color:var(--dark);flex-grow:1;font-size:1rem;font-size:var(--text-base);line-height:1.5;margin-bottom:1rem;margin-bottom:var(--space-md)}.news-link{align-items:column;color:#4a8a74;color:var(--secondary);display:inline-flex;font-weight:600;gap:4px;margin-top:.5rem;margin-top:var(--space-sm);text-decoration:none;transition:color .3s ease}.news-link:hover{color:#3c6b5e;color:var(--accent);text-decoration:underline}.news-footer{align-items:center;border-top:1px solid #e9ecef;border-top:1px solid var(--light-gray);display:flex;justify-content:space-between;margin-top:1rem;margin-top:var(--space-md);padding-top:1rem;padding-top:var(--space-md)}.news-date{color:#6c757d;color:var(--gray);font-size:.875rem;font-size:var(--text-sm);margin-top:auto;text-align:right}.news-actions{display:flex;gap:.5rem;gap:var(--space-sm)}.news-expand-btn,.news-link-btn{align-items:left;background:#1f2a44;background:var(--primary);border:none;border-radius:8px;border-radius:var(--border-radius-md);color:#fff;cursor:pointer;display:inline-flex;font-size:.875rem;font-size:var(--text-sm);gap:4px;padding:8px 16px;text-decoration:none;transition:all .3s ease}.news-expand-btn:hover,.news-link-btn:hover{background:#3c6b5e;background:var(--accent);transform:translateY(-2px)}.news-loading{background:#faf7f2;background:var(--light);color:#6c757d;color:var(--gray);font-style:italic;padding:2rem;padding:var(--space-xl)}.news-error,.news-loading{border-radius:8px;border-radius:var(--border-radius-md);text-align:center}.news-error{background:#dc35451a;border:1px solid #dc354533;color:#dc3545;color:var(--danger);padding:1.5rem;padding:var(--space-lg)}.news-empty{background:#faf7f2;background:var(--light);border:1px solid #e9ecef;border:1px solid var(--light-gray);border-radius:8px;border-radius:var(--border-radius-md);color:#6c757d;color:var(--gray);font-style:italic;padding:2rem;padding:var(--space-xl);text-align:center}.news-image{box-shadow:0 2px 8px #0000001a;height:200px;margin-bottom:1rem;margin-bottom:var(--space-md);object-fit:cover;width:100%}.news-content,.news-image{border-radius:8px;border-radius:var(--border-radius-md)}.news-content{background:#faf7f2;background:var(--light);border-left:3px solid #4a8a74;border-left:3px solid var(--secondary);margin-top:1rem;margin-top:var(--space-md);padding:1rem;padding:var(--space-md);text-align:left}.news-content p{line-height:1.6;margin-bottom:1rem;margin-bottom:var(--space-md);text-align:left}.news-external-link{background:#1f2a44;background:var(--primary);border-radius:8px;border-radius:var(--border-radius-md);color:#fff;display:inline-block;font-weight:600;margin-top:.5rem;margin-top:var(--space-sm);padding:10px 16px;text-decoration:none;transition:all .3s ease}.news-external-link:hover{background:#3c6b5e;background:var(--accent);transform:translateY(-2px)}@media (min-width:768px){.news-grid{gap:1.5rem;gap:var(--space-lg);grid-template-columns:1fr}.news-card{padding:1rem;padding:var(--space-md)}.news-footer{align-items:center;flex-direction:row;gap:.5rem;gap:var(--space-sm)}.news-actions{justify-content:flex-end;width:auto}}@media (min-width:1024px){.news-grid{grid-template-columns:1fr}}@media (max-width:767px){.news-grid{gap:1.5rem;gap:var(--space-lg);grid-template-columns:1fr}.news-card{padding:1rem;padding:var(--space-md)}.news-footer{align-items:flex-start;flex-direction:column;gap:.5rem;gap:var(--space-sm)}.news-actions{justify-content:space-between;width:100%}.news-expand-btn,.news-link-btn{flex:1 1;text-align:center}.news-date{margin-top:.5rem;margin-top:var(--space-sm);text-align:left}}@media (max-width:350px){.news-grid{grid-template-columns:1fr}}.password-input-container{align-items:center;display:flex;position:relative}.password-input-container input{padding-right:45px;width:100%}.password-toggle{align-items:center;background:none;background-color:#0000001a;border:none;border-radius:4px;cursor:pointer;display:flex;font-size:16px;height:30px;justify-content:center;padding:5px;position:absolute;right:10px;width:30px}.password-toggle:hover{background-color:#0003}
/*# sourceMappingURL=main.31dc5ec0.css.map*/