:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:#292344;background:#faf9ff;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:3px solid #7656e3;outline-offset:3px}button:disabled{opacity:.55;cursor:not-allowed}.shell{max-width:1160px;width:calc(100% - 40px);margin-inline:auto}.topbar{height:84px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:inline-flex;align-items:center;flex-shrink:0}.brand img{width:205px;max-width:100%;height:auto}.toplinks{display:flex;gap:10px;align-items:center}.toplinks a{font-size:13px;font-weight:750;padding:10px 14px;border-radius:12px;color:#5e567b}.toplinks a:hover{background:#eeebfa}.header-cta{border:1px solid #e3def4;background:#fff;border-radius:12px!important}.hero{position:relative;overflow:hidden;border:1px solid #ebe5fd;border-radius:28px;background:radial-gradient(circle at 88% 5%,#ead4ff 0,transparent 28%),radial-gradient(circle at 4% 90%,#dbe8ff 0,transparent 33%),linear-gradient(122deg,#f2ecff,#fff 64%);padding:42px 46px 44px}.hero:after{content:"";position:absolute;right:39px;top:28px;width:114px;height:114px;border:13px solid #c6b3ff;opacity:.24;border-radius:45px;transform:rotate(26deg);pointer-events:none}.eyebrow{display:inline-flex;align-items:center;gap:7px;background:#fff;border:1px solid #e7dafa;color:#6851af;font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:850;padding:8px 12px;border-radius:99px}.eyebrow:before{content:"";height:7px;width:7px;border-radius:50%;background:#7e55ef}.hero h1{font-size:clamp(31px,4.2vw,56px);line-height:1.08;letter-spacing:-.055em;margin:19px 0 14px;max-width:680px;color:#251a49}.hero h1 span{color:#7956e9}.hero-lead{font-size:clamp(15px,1.6vw,18px);line-height:1.6;color:#716783;max-width:615px;margin:0}.trustline{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.trustline span{background:#fff9;border:1px solid #ffffffaa;font-size:12px;color:#584f6c;padding:8px 12px;border-radius:99px;font-weight:700}.tool-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,460px);gap:20px;align-items:stretch;margin-top:-1px}.panel{background:#fff;border:1px solid #e9e5f0;box-shadow:0 15px 40px #33256a0c;border-radius:22px}.form-panel{padding:30px}.result-panel{position:relative;padding:29px;overflow:hidden;background:#282047;color:#fff;border-color:#3e315f}.panel-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:22px}.panel h2{font-size:21px;letter-spacing:-.035em;line-height:1.25;margin:0}.mini-label{display:inline-flex;align-items:center;gap:5px;font-size:11px;color:#8277a1;letter-spacing:.075em;font-weight:850;text-transform:uppercase}.mini-label:before{content:"";height:6px;width:6px;background:#a997ed;border-radius:50%}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.field label{display:block;margin-bottom:9px;font-size:13px;font-weight:760;color:#3b3355}.field input,.field select{width:100%;border:1.5px solid #dfd9ea;border-radius:12px;background:#fff;min-height:54px;padding:12px;color:#2b2547;outline:0;appearance:auto}.field input:focus,.field select:focus{border-color:#7956e9;box-shadow:0 0 0 4px #7956e915}.field-note{font-size:12px;color:#877f96;margin:7px 0 0;line-height:1.4}.field-wide{margin-top:16px}.field-wide select{min-height:46px}.form-actions{display:flex;gap:10px;margin-top:22px;flex-wrap:wrap}.btn-primary{min-height:52px;padding:12px 24px;color:#fff;border:0;border-radius:13px;background:linear-gradient(120deg,#7555ef,#a35eee);font-weight:850;box-shadow:0 8px 22px #7956e92c}.btn-primary:hover{filter:brightness(.96)}.btn-quiet{min-height:52px;padding:12px 18px;border:1px solid #e4ddef;background:#f7f5fc;border-radius:13px;color:#564a7e;font-weight:750}.error{display:none;margin:15px 0 0;padding:10px 12px;border:1px solid #f4c8c8;background:#fff1f1;color:#a53238;border-radius:10px;font-size:13px;line-height:1.5}.error.show{display:block}.result-panel .mini-label{color:#d6c9ff}.result-panel .mini-label:before{background:#d5b8ff}.result-panel:after{content:"";position:absolute;right:-68px;top:-80px;width:200px;height:200px;background:#ffffff0d;border-radius:50%;pointer-events:none}.result-empty{display:grid;place-items:center;min-height:300px;text-align:center;gap:12px}.result-empty svg{width:88px;height:88px;opacity:.9}.result-empty p{color:#cac3dd;max-width:260px;font-size:14px;line-height:1.6;margin:0}.result-content[hidden],.result-empty[hidden]{display:none}.age-display{display:flex;align-items:flex-end;gap:11px;flex-wrap:wrap;margin:29px 0 7px}.age-num{font-size:clamp(51px,6vw,80px);font-weight:900;line-height:.93;letter-spacing:-.07em;color:#fff}.age-unit{font-size:13px;color:#cfc7e0;font-weight:750;text-transform:uppercase;letter-spacing:.09em;margin-bottom:9px}.age-divider{align-self:center;color:#857aa1;margin:0 1px;font-size:22px}.age-caption{color:#c4bad9;line-height:1.5;font-size:13px;margin:11px 0 24px}.result-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:20px 0}.result-chip{border:1px solid #ffffff22;border-radius:13px;padding:14px;background:#ffffff0e}.result-chip small{display:block;font-size:11px;color:#c8bedf;margin-bottom:6px}.result-chip strong{font-size:19px;letter-spacing:-.04em;display:block}.birthday{display:flex;align-items:center;gap:12px;border-radius:14px;padding:15px;background:#d3ffeb;color:#145c46}.birthday svg{flex:0 0 28px}.birthday strong{display:block;font-size:14px}.birthday p{margin:3px 0 0;color:#33715c;font-size:12px}.result-foot{margin-top:14px;display:flex;align-items:center;gap:10px;justify-content:space-between;flex-wrap:wrap}.copy{border:1px solid #ffffff35;background:#ffffff12;color:#fff;border-radius:10px;padding:9px 12px;font-size:12px;font-weight:800}.copy:hover{background:#ffffff24}.result-foot small{font-size:11px;color:#b4a9cc}.details-wrap{margin:22px 0 0}.section-head{margin:0 0 15px;display:flex;align-items:end;justify-content:space-between;gap:12px}.section-head h2{font-size:clamp(22px,3vw,29px);letter-spacing:-.045em;margin:0}.section-head p{font-size:13px;color:#756d84;margin:7px 0 0}.stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.stat{padding:20px;border:1px solid #ebe7f4;background:#fff;border-radius:16px}.stat .symbol{height:36px;width:36px;display:grid;place-items:center;background:#f0ebff;border-radius:10px;color:#7956e9;font-size:17px;margin-bottom:17px}.stat strong{font-size:23px;letter-spacing:-.04em;display:block;font-variant-numeric:tabular-nums}.stat span{display:block;color:#777086;font-size:12px;margin-top:5px}.empty-stats{color:#817990;font-size:13px}.explainer{margin-top:29px;display:grid;grid-template-columns:1.08fr .92fr;gap:18px}.info{background:#fff;padding:24px;border:1px solid #eae5f3;border-radius:20px}.info h2{font-size:22px;margin:0 0 13px;letter-spacing:-.035em}.info p,.info li{color:#685f79;font-size:14px;line-height:1.7}.info p:last-child{margin-bottom:0}.info ol{padding-left:19px;margin:0}.info li+li{margin-top:8px}.faq{margin-top:32px}.faq h2{font-size:26px;letter-spacing:-.04em;margin:0 0 15px}.faq details{background:#fff;border:1px solid #eae5f3;border-radius:13px;padding:17px 19px;margin:9px 0}.faq summary{font-size:14px;font-weight:800;cursor:pointer;color:#39304e}.faq details p{font-size:13px;line-height:1.7;color:#6a6077;margin:12px 0 0}.other{margin:32px 0;border:1px solid #e9e5f4;background:#fff;border-radius:20px;padding:22px}.other h2{font-size:23px;letter-spacing:-.035em;margin:0 0 6px}.other>p{margin:0 0 15px;color:#82788b;font-size:13px}.other-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.other a{display:block;border:1px solid #e9e5f3;border-radius:13px;padding:14px;color:#38304f;background:#fdfcff;transition:transform .15s,border-color .15s}.other a:hover{transform:translateY(-2px);border-color:#bba8ee}.other b{display:block;font-size:13px}.other small{display:block;font-size:11px;color:#857a95;margin-top:7px;line-height:1.5}footer{padding:0 0 28px;color:#877b91;font-size:12px;display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap}footer a{text-decoration:underline}.print-only{display:none}@media(max-width:850px){.tool-layout{grid-template-columns:1fr}.hero{padding:32px}.topbar{height:70px}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.other-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:570px){.shell{width:calc(100% - 24px)}.hero{padding:25px 20px;border-radius:20px}.hero h1{font-size:clamp(31px,8vw,40px)}.toplinks{gap:3px}.toplinks a{font-size:11px;padding:8px}.toplinks .header-cta{display:none}.brand img{width:159px}.form-panel,.result-panel{padding:20px;border-radius:18px}.form-grid{grid-template-columns:1fr}.form-actions>*{flex:1}.age-num{font-size:59px}.result-panel .result-empty{min-height:220px}.explainer{grid-template-columns:1fr}.stats{gap:9px}.stat{padding:14px}.other-grid{grid-template-columns:1fr 1fr}.other{padding:17px}}@media(max-width:375px){.other-grid{grid-template-columns:1fr}.age-num{font-size:48px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.other a{transition:none}}@media print{body{background:#fff}.topbar,.hero,.form-panel,.details-wrap,.explainer,.faq,.other,footer,.copy{display:none!important}.shell{width:100%}.tool-layout{display:block;margin:0}.result-panel{background:white!important;color:black!important;box-shadow:none;border:0}.age-num,.age-unit,.result-panel .mini-label{color:#111!important}.result-chip{border:1px solid #ddd;color:black}.result-chip small{color:#333}.birthday{border:1px solid #aaa}.age-caption,.result-foot small{color:black}}

/* Explicit, locale-neutral date controls and high-visibility sticky brand. */
.topbar{position:sticky;top:0;z-index:40;min-height:86px;height:auto;padding-block:12px;background:rgba(250,249,255,.97);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid #ebe6fb}
.brand{gap:10px;min-width:0;text-decoration:none}
.brand img.brand-icon{height:54px;width:54px;max-width:none;object-fit:contain;flex-shrink:0}
.brand-name{display:inline-block;white-space:nowrap;font-size:clamp(24px,2.5vw,32px);font-weight:900;line-height:1;color:#272049;letter-spacing:-.055em}
.brand-name>span{color:#744ee9}
.brand-name small{display:block;margin-top:6px;font-size:10px;line-height:1.1;color:#655887;font-weight:800;text-transform:uppercase;letter-spacing:.13em}
.date-parts{display:grid;grid-template-columns:minmax(0,.70fr) minmax(0,1.30fr) minmax(0,.96fr);gap:8px;align-items:stretch}
.field .date-parts>select,.field .date-parts>input{min-width:0;max-width:100%;padding:9px 8px;font-size:14px;font-variant-numeric:tabular-nums}
.field .date-parts>input::-webkit-inner-spin-button{appearance:none}
@media(max-width:850px){.topbar{min-height:78px}}
@media(max-width:570px){.topbar{min-height:75px}.brand img.brand-icon{height:46px;width:46px}.brand-name{font-size:27px}.toplinks{display:none}.field .date-parts>select,.field .date-parts>input{font-size:14px}}
@media(max-width:355px){.brand-name{font-size:24px}.brand img.brand-icon{height:42px;width:42px}.field .date-parts>select,.field .date-parts>input{font-size:13px;padding-inline:5px}}
