.input-group{margin-bottom:1.5rem}.input-group label{display:block;margin-bottom:.5rem;font-weight:600;color:var(--text-primary)}.date-time-wrapper{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap}.date-time-wrapper input[type=date],.date-time-wrapper input[type=time]{flex:1;min-width:120px}.button-group{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap}.results-section{margin-top:2rem;padding-top:2rem;border-top:2px solid var(--border-color)}.results-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1rem;margin-bottom:1rem}.result-item{text-align:center;padding:1.25rem;background:var(--bg-secondary);border-radius:.5rem;border:1px solid var(--border-color);transition:transform .2s,box-shadow .2s}.result-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.1)}.result-value{display:block;font-size:2.5rem;font-weight:700;color:var(--primary-color);margin-bottom:.5rem}.result-label{display:block;font-size:.875rem;color:var(--text-secondary);font-weight:500;text-transform:uppercase;letter-spacing:.5px}.total-section{background:linear-gradient(135deg,rgba(59,130,246,.05) 0,rgba(124,58,237,.05) 100%);padding:1.5rem;border-radius:.75rem;border:1px solid rgba(59,130,246,.2)}.total-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:1rem}.total-item{text-align:center;padding:1rem}.total-value{display:block;font-size:1.75rem;font-weight:700;color:var(--primary-color);margin-bottom:.25rem}.total-label{display:block;font-size:.75rem;color:var(--text-secondary);font-weight:600;text-transform:uppercase}.age-display{background:linear-gradient(135deg,rgba(59,130,246,.1) 0,rgba(124,58,237,.1) 100%);padding:2rem;border-radius:1rem;border:2px solid rgba(59,130,246,.3)}.age-number{display:block;font-size:4rem;font-weight:800;color:var(--primary-color);line-height:1;margin-bottom:.5rem}.age-label{display:block;font-size:1.25rem;color:var(--text-secondary);font-weight:500}.anniversary-info,.birthday-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem}.info-card{display:flex;align-items:flex-start;gap:1rem;padding:1.25rem;background:var(--bg-secondary);border-radius:.5rem;border:1px solid var(--border-color);transition:transform .2s,box-shadow .2s}.info-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(0,0,0,.1)}.info-card i{font-size:1.5rem;color:var(--primary-color);flex-shrink:0;margin-top:.125rem}.info-content{flex:1;display:flex;flex-direction:column;gap:.25rem}.info-content strong{font-size:.875rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.info-content span{font-size:1rem;color:var(--text-primary);font-weight:600}.info-detail{font-size:.875rem!important;color:var(--text-secondary)!important;font-weight:400!important}.anniversary-display{background:linear-gradient(135deg,rgba(236,72,153,.1) 0,rgba(239,68,68,.1) 100%);padding:2rem;border-radius:1rem;border:2px solid rgba(236,72,153,.3)}.anniversary-number{font-size:4rem;font-weight:800;color:#ec4899;line-height:1;margin-bottom:.5rem}.anniversary-name{font-size:1.5rem;font-weight:700;color:var(--text-primary);margin-bottom:.25rem}.anniversary-subtitle{font-size:1rem;color:var(--text-secondary);font-weight:500}.milestone-list{display:flex;flex-direction:column;gap:.75rem}.milestone-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:var(--bg-secondary);border-radius:.5rem;border:1px solid var(--border-color);transition:background .2s}.milestone-item:hover{background:var(--bg-tertiary)}.milestone-year{font-size:1.25rem;font-weight:700;color:var(--primary-color);min-width:60px}.milestone-name{flex:1;font-size:1rem;font-weight:600;color:var(--text-primary);padding:0 1rem}.milestone-date{font-size:.875rem;color:var(--text-secondary);text-align:right}@media (max-width:768px){.date-time-wrapper{flex-direction:column}.date-time-wrapper input[type=date],.date-time-wrapper input[type=time]{width:100%}.results-grid,.total-grid{grid-template-columns:repeat(2,1fr)}.age-number,.anniversary-number{font-size:3rem}.anniversary-info,.birthday-info{grid-template-columns:1fr}}@media (max-width:480px){.result-value{font-size:2rem}.age-number,.anniversary-number{font-size:2.5rem}.button-group{flex-direction:column;width:100%}.button-group .btn{width:100%}}