@import"https://fonts.googleapis.com/css2?family=DM+Serif+Display:ital@0;1&family=Manrope:wght@300;400;500;600;700;800&display=swap";:root{font-family:Manrope,Segoe UI,sans-serif;color:#16313a;background:radial-gradient(circle at top left,rgba(243,184,104,.24),transparent 28%),radial-gradient(circle at 85% 15%,rgba(104,177,165,.18),transparent 22%),linear-gradient(180deg,#fff9ef,#f4f7f2);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input{font:inherit}#root{min-height:100vh}.page-shell{width:min(1120px,calc(100% - 2rem));margin:0 auto;padding:2rem 0 4rem}.hero-panel{display:grid;grid-template-columns:1.15fr .85fr;gap:1.5rem;align-items:stretch}.hero-copy,.form-card,.rules-panel{border:1px solid rgba(22,49,58,.08);border-radius:28px;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);box-shadow:0 20px 60px #17353614}.hero-copy{padding:clamp(2rem,4vw,4rem);background:linear-gradient(135deg,#fffaf2eb,#f4f9f6d1)}.hero-copy h1,.section-heading h2,.result-card h2,.rule-card h3{font-family:"DM Serif Display",Georgia,serif;line-height:1}.hero-copy h1{margin:.3rem 0 1rem;font-size:clamp(2.6rem,5vw,4.7rem);max-width:11ch}.lede{max-width:44ch;font-size:1.05rem;line-height:1.7;color:#16313ac7}.eyebrow{margin:0;text-transform:uppercase;letter-spacing:.18em;font-size:.78rem;font-weight:700;color:#c56f1a}.form-card{display:flex;flex-direction:column;gap:1rem;padding:1.5rem;background:#ffffffb8}.field-label{font-size:.96rem;font-weight:600}.input-stack{display:flex;flex-direction:column;gap:.55rem}.data-input{width:100%;border:1px solid rgba(22,49,58,.14);border-radius:18px;padding:.95rem 1rem;background:#fffffff5;color:#16313a}.data-input:disabled{cursor:not-allowed;background:#f0f2f3f2;color:#16313a70}.or-divider{position:relative;display:flex;justify-content:center;margin:.1rem 0}.or-divider:before{content:"";position:absolute;inset:50% 0 auto;border-top:1px solid rgba(22,49,58,.1)}.or-divider span{position:relative;padding:.2rem .8rem;border-radius:999px;background:#ffffffeb;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.14em;color:#16313a8f}.field-note{margin:-.35rem 0 0;font-size:.88rem;color:#16313a99}.field-hint{margin:0;font-size:.9rem;font-weight:600;color:#16313aad}.placeholder-card,.result-card{border-radius:22px;padding:1.1rem 1.2rem}.placeholder-card{background:linear-gradient(135deg,#f0f8f5d9,#fff8eff5);color:#16313ab3}.result-card{border:1px solid transparent;animation:card-enter .3s ease}.result-card.success{background:linear-gradient(135deg,#d8f4e5f2,#f7fffce0);border-color:#3579562e}.result-card.warning{background:linear-gradient(135deg,#ffebcaf2,#fffaeee0);border-color:#c56f1a2e}.result-card.info{background:linear-gradient(135deg,#d3ecf1f2,#f3fbffe0);border-color:#2378962e}.result-card.neutral{background:linear-gradient(135deg,#edeff0f2,#f9fbfce0);border-color:#16313a14}.result-header{display:flex;align-items:start;justify-content:space-between;gap:.8rem}.result-kicker{margin:0;font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;color:#16313a99}.months-value{display:block;margin-top:.3rem;font-size:clamp(1.6rem,3vw,2.6rem)}.pill{display:inline-flex;align-items:center;border-radius:999px;padding:.55rem .9rem;background:#ffffffb8;font-size:.84rem;font-weight:700}.result-card h2{margin:1rem 0 .55rem;font-size:clamp(1.45rem,3vw,2rem)}.result-card p:last-child{margin-bottom:0;line-height:1.6}.rules-panel{margin-top:1.5rem;padding:1.6rem;background:#ffffffa8}.section-heading{margin-bottom:1rem}.section-heading h2{margin:.35rem 0 0;font-size:clamp(1.8rem,4vw,3rem)}.rule-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem}.rule-card{min-height:220px;border-radius:24px;padding:1.2rem;border:1px solid transparent}.rule-card.success{background:#ddf6e8d1}.rule-card.warning{background:#ffefd2db}.rule-card.info{background:#dbf1f6db}.rule-range{margin:0;font-size:.84rem;letter-spacing:.08em;text-transform:uppercase;color:#16313a94}.rule-card h3{margin:.8rem 0;font-size:1.5rem}.rule-card p:last-child{line-height:1.65;margin:0}@keyframes card-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media(max-width:900px){.hero-panel{grid-template-columns:1fr}.rule-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.page-shell{width:min(100% - 1rem,1120px);padding-top:1rem}.hero-copy,.form-card,.rules-panel{border-radius:22px}.result-header{flex-direction:column}.rule-grid{grid-template-columns:1fr}}
