#tool:has(#birth-year){max-width:860px;margin:22px auto 34px;padding:0;overflow:hidden;border:1px solid #dce6f5;border-radius:22px;background:#fff;box-shadow:0 14px 36px rgba(32,67,119,.08)}
#tool .age-head{padding:30px 32px 26px;background:linear-gradient(125deg,#f5f9ff 0%,#edf5ff 58%,#f8fbff 100%);border-bottom:1px solid #e2eaf7}
#tool .age-kicker{display:inline-block;margin-bottom:10px;padding:5px 10px;border-radius:999px;background:#dfeeff;color:#2456a3;font-size:.72rem;font-weight:750;letter-spacing:.08em}
#tool .age-head h2{margin:0;color:#16294c;font-size:1.55rem;line-height:1.3;letter-spacing:-.025em}
#tool .age-head p{margin:9px 0 0;color:#63748f;font-size:.91rem;line-height:1.6}
#tool .age-picker{margin:0;padding:25px 32px 0;border:0;min-width:0}
#tool .age-picker legend{float:left;width:100%;padding:0;margin:0 0 12px;color:#283b5c;font-size:.91rem;font-weight:700}
#tool .age-selects{clear:both;display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:12px}
#tool .age-selects label,#tool .age-manual label{display:block;margin:0;color:#586b89;font-size:.78rem;font-weight:650}
#tool .age-selects select,#tool .age-manual input{display:block;width:100%;height:48px;margin-top:7px;padding:0 14px;border:1px solid #cedbed;border-radius:12px;background:#fff;color:#1d3152;font-family:inherit;font-size:.96rem;box-shadow:0 1px 2px rgba(30,64,110,.025);transition:border-color .15s,box-shadow .15s}
#tool .age-selects select{cursor:pointer}
#tool .age-selects select:focus,#tool .age-manual input:focus{border-color:#5085d9;box-shadow:0 0 0 4px rgba(80,133,217,.13);outline:0}
#tool .age-divider{display:flex;align-items:center;gap:14px;margin:23px 32px;color:#95a3b8;font-size:.78rem}
#tool .age-divider:before,#tool .age-divider:after{content:"";height:1px;background:#e3eaf3;flex:1}
#tool .age-manual{padding:0 32px}
#tool .age-manual input::placeholder{color:#a1afc0}
#tool .age-manual p{margin:8px 0 0;color:#8998ad;font-size:.79rem}
#tool #birth-error{margin:6px 32px 0;min-height:0;color:#c4414e}
#tool #birth-error:empty{display:none}
#tool .age-result{margin:26px 32px 32px;border:1px solid #d9e7fa;border-radius:17px;background:#f7faff;overflow:hidden;color:#263a5b}
#tool .age-empty{padding:30px;text-align:center;color:#8291a8;font-size:.9rem}
#tool .age-summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:23px 26px;background:linear-gradient(115deg,#e8f2ff,#f5f9ff)}
#tool .age-summary-label{display:block;color:#5875a1;font-size:.78rem;font-weight:700;letter-spacing:.05em}
#tool .age-years{display:block;margin-top:2px;color:#19457e;font-size:3.55rem;font-weight:780;line-height:1.08;letter-spacing:-.05em}
#tool .age-years small{margin-left:6px;font-size:1rem;font-weight:650;letter-spacing:0}
#tool .age-next{text-align:right;color:#567091;font-size:.77rem}
#tool .age-next strong{display:block;margin:5px 0 2px;color:#24599d;font-size:1.38rem;font-weight:750}
#tool .age-next span{display:block;color:#8596ad}
#tool .age-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;background:#fff}
#tool .age-metric{padding:17px 20px;border-top:1px solid #e4edf8}
#tool .age-metric+.age-metric{border-left:1px solid #e4edf8}
#tool .age-metric span{display:block;margin-bottom:5px;color:#8494ac;font-size:.76rem}
#tool .age-metric strong{color:#263d60;font-size:1rem;font-weight:700}
@media(max-width:600px){#tool:has(#birth-year){border-radius:17px}#tool .age-head{padding:25px 22px 22px}#tool .age-head h2{font-size:1.35rem}#tool .age-picker{padding:22px 22px 0}#tool .age-divider{margin:22px}#tool .age-manual{padding:0 22px}#tool #birth-error{margin-left:22px;margin-right:22px}#tool .age-result{margin:22px}#tool .age-selects{gap:8px}#tool .age-selects select{padding:0 8px;font-size:.88rem}}
@media(max-width:430px){#tool .age-selects{grid-template-columns:1fr 1fr}#tool .age-selects label:first-child{grid-column:1/-1}#tool .age-summary{padding:19px 18px}#tool .age-years{font-size:3rem}#tool .age-metric{padding:14px 10px}#tool .age-metric strong{font-size:.9rem}}
