:root{--ac-primary:#2563eb;--ac-primary-hover:#1d4ed8;--ac-secondary:#f1f5f9;--ac-secondary-hover:#e2e8f0;--ac-text-main:#0f172a;--ac-text-muted:#64748b;--ac-bg-main:#f8fafc;--ac-card-bg:#fff;--ac-card-alt:#f8fafc;--ac-border:#e2e8f0;--ac-success:#10b981;--ac-success-bg:#d1fae5;--ac-success-text:#047857;--ac-danger:#ef4444;--ac-danger-bg:#fef2f2;--ac-danger-text:#b91c1c;--ac-focus-ring:#2563eb40;--ac-font-sans:system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--ac-radius-sm:8px;--ac-radius-md:12px;--ac-radius-lg:24px;--ac-shadow-sm:0 1px 2px 0 #0000000d;--ac-shadow-md:0 4px 6px -1px #0000000d, 0 2px 4px -1px #00000008;--ac-shadow-lg:0 10px 15px -3px #0000000d, 0 4px 6px -2px #00000006;--ac-shadow-hover:0 20px 25px -5px #0000000d, 0 10px 10px -5px #00000005;--ac-transition:all .25s cubic-bezier(.4, 0, .2, 1)}.age-calculator-layout{font-family:var(--ac-font-sans);color:var(--ac-text-main);background-color:var(--ac-bg-main);max-width:1000px;margin:0 auto;padding:3rem 1.5rem;line-height:1.6}.tool-content-wrapper{flex-direction:column;gap:2rem;display:flex}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.hidden{display:none!important}.text-capitalize{text-transform:capitalize}.hero-section{text-align:center;margin-bottom:3rem}.hero-title{color:var(--ac-text-main);letter-spacing:-.025em;margin:0 0 1rem;font-size:2.75rem;font-weight:800}.hero-description{color:var(--ac-text-muted);max-width:600px;margin:0 auto;font-size:1.125rem}.card-box{background:var(--ac-card-bg);border:1px solid var(--ac-border);border-radius:var(--ac-radius-lg);box-shadow:var(--ac-shadow-sm);transition:var(--ac-transition);padding:2rem}.card-box:not(.no-border):hover{box-shadow:var(--ac-shadow-md)}.card-box.no-border{box-shadow:none;background:0 0;border:none;padding:1rem 0}.calculator-form{flex-direction:column;gap:1.5rem;max-width:500px;margin:0 auto;display:flex}.form-group{flex-direction:column;gap:.5rem;display:flex}.input-label{color:var(--ac-text-main);font-size:.95rem;font-weight:600}.input-wrapper{position:relative}.input-field{width:100%;height:3.5rem;color:var(--ac-text-main);background-color:var(--ac-card-bg);border:2px solid var(--ac-border);border-radius:var(--ac-radius-md);transition:var(--ac-transition);appearance:none;padding:0 1rem;font-family:inherit;font-size:1.125rem}.input-field:focus{border-color:var(--ac-primary);box-shadow:0 0 0 4px var(--ac-focus-ring);outline:none}.input-field::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.6;transition:var(--ac-transition)}.input-field::-webkit-calendar-picker-indicator:hover{opacity:1}.error-message{background-color:var(--ac-danger-bg);color:var(--ac-danger-text);border-radius:var(--ac-radius-sm);border:1px solid #ef444433;align-items:center;padding:1rem;font-size:.95rem;font-weight:500;display:flex}.form-actions{gap:1rem;margin-top:.5rem;display:flex}.btn{border-radius:var(--ac-radius-md);cursor:pointer;height:3.5rem;transition:var(--ac-transition);user-select:none;border:none;justify-content:center;align-items:center;padding:0 1.5rem;font-family:inherit;font-size:1rem;font-weight:600;display:inline-flex}.btn:focus-visible{box-shadow:0 0 0 4px var(--ac-focus-ring);outline:none}.btn:active{transform:scale(.98)}.btn-primary{background-color:var(--ac-primary);color:#fff;flex:2;box-shadow:0 4px 14px #2563eb63}.btn-primary:hover{background-color:var(--ac-primary-hover);box-shadow:0 6px 20px #2563eb3b}.btn-secondary{background-color:var(--ac-secondary);color:var(--ac-text-main);flex:1}.btn-secondary:hover{background-color:var(--ac-secondary-hover)}.birthday-banner{background:linear-gradient(135deg, var(--ac-primary), #6366f1);color:#fff;border-radius:var(--ac-radius-lg);text-align:center;box-shadow:var(--ac-shadow-md);padding:2rem;animation:.5s cubic-bezier(.16,1,.3,1) forwards slideDown}.banner-content{flex-direction:column;align-items:center;gap:.5rem;display:flex}.banner-icon{margin-bottom:.5rem;font-size:3rem}.banner-title{margin:0;font-size:2rem;font-weight:800}.banner-description{opacity:.9;margin:0;font-size:1.1rem}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.results-wrapper{flex-direction:column;gap:2rem;display:flex}.section-header{border-bottom:1px solid var(--ac-border);margin-bottom:1.5rem;padding-bottom:1rem}.section-title{color:var(--ac-text-main);margin:0;font-size:1.5rem;font-weight:700}.grid-layout{gap:1.25rem;display:grid}.three-columns{grid-template-columns:repeat(3,1fr)}.two-columns{grid-template-columns:repeat(2,1fr)}.data-card{background-color:var(--ac-card-alt);border:1px solid var(--ac-border);border-radius:var(--ac-radius-md);transition:var(--ac-transition);flex-direction:column;gap:.5rem;padding:1.5rem;display:flex}.data-card:hover{box-shadow:var(--ac-shadow-md);border-color:#2563eb4d;transform:translateY(-3px)}.data-label{color:var(--ac-text-muted);text-transform:uppercase;letter-spacing:.05em;margin:0;font-size:.85rem;font-weight:600}.data-value{color:var(--ac-text-main);margin:0;font-size:1.25rem;font-weight:700}.primary-card{text-align:center;background-color:#2563eb08;border-color:#2563eb1a;align-items:center;padding:2rem 1rem}.primary-card:hover{background-color:#2563eb0d;border-color:#2563eb66}.primary-card .data-value.highlight{color:var(--ac-primary);font-size:3rem;font-weight:800;line-height:1.1}.info-card{background-color:var(--ac-success-bg);border-color:#10b98133}.info-card .data-label{color:var(--ac-success-text);opacity:.8}.info-card .data-value{color:var(--ac-success-text)}.utility-buttons-container{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.btn-utility{background-color:var(--ac-card-bg);color:var(--ac-text-muted);border:1px solid var(--ac-border);height:3rem;padding:0 1.25rem;font-size:.95rem}.btn-utility:hover{background-color:var(--ac-secondary);color:var(--ac-text-main);border-color:var(--ac-text-muted)}.icon-placeholder{opacity:.7;background-color:currentColor;width:18px;height:18px;margin-right:.5rem;display:inline-block;mask-image:radial-gradient(circle,#000 50%,#0000 50%)}.accordion-container{flex-direction:column;gap:1rem;display:flex}.accordion-item{background-color:var(--ac-card-alt);border:1px solid var(--ac-border);border-radius:var(--ac-radius-md);overflow:hidden}.accordion-header{cursor:pointer;user-select:none;transition:var(--ac-transition);justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;list-style:none;display:flex}.accordion-header::-webkit-details-marker{display:none}.accordion-header:hover{background-color:var(--ac-secondary)}.accordion-header:focus-visible{background-color:var(--ac-secondary);box-shadow:inset 0 0 0 2px var(--ac-primary);outline:none}.accordion-title{color:var(--ac-text-main);font-size:1.05rem;font-weight:600}.accordion-indicator{width:1.25rem;height:1.25rem;transition:var(--ac-transition);position:relative}.accordion-indicator:before,.accordion-indicator:after{content:"";background-color:var(--ac-text-muted);transition:var(--ac-transition);position:absolute}.accordion-indicator:before{width:100%;height:2px;margin-top:-1px;top:50%;left:0}.accordion-indicator:after{width:2px;height:100%;margin-left:-1px;top:0;left:50%}.accordion-item[open] .accordion-header{border-bottom:1px solid var(--ac-border);background-color:var(--ac-card-bg)}.accordion-item[open] .accordion-indicator:after{opacity:0;transform:rotate(90deg)}.accordion-content{background-color:var(--ac-card-bg);color:var(--ac-text-muted);padding:1.5rem;font-size:1rem;line-height:1.7}.accordion-content p{margin:0}@media (width<=992px){.three-columns{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.age-calculator-layout{padding:2rem 1rem}.hero-title{font-size:2.25rem}.hero-description{font-size:1rem}.card-box{padding:1.5rem}.grid-layout{gap:1rem}.two-columns,.three-columns{grid-template-columns:1fr}.primary-card{padding:1.5rem}.primary-card .data-value.highlight{font-size:2.5rem}.banner-title{font-size:1.5rem}.utility-buttons-container{flex-direction:column}.btn-utility{width:100%}}@media (width<=480px){.hero-title{font-size:1.75rem}.form-actions{flex-direction:column}.btn{width:100%}.card-box{padding:1.25rem}}
