.tool{max-width:720px;margin:0 auto;padding:2.5rem 1.25rem 4rem}.crumbs{font-family:Public Sans,sans-serif;font-size:.75rem;color:var(--ink-60);text-transform:uppercase;letter-spacing:.1em;margin-bottom:1.25rem}.crumbs a{color:var(--ink-60)}.crumbs a:hover{color:var(--mauve)}.crumbs span{color:var(--ink-40);margin:0 .4rem}.tool-head{margin-bottom:2.5rem}.tool-head h1{font-size:clamp(2.25rem,6vw,3.25rem);line-height:1.05;margin-bottom:.75rem}.tool-head h1 em{color:var(--mauve);font-family:EB Garamond,serif;font-style:italic;font-weight:400}.lede{font-family:EB Garamond,serif;font-style:italic;font-size:1.15rem;color:var(--ink-80);line-height:1.55;margin-bottom:.5rem}.ephemeral{font-family:Public Sans,sans-serif;font-size:.78rem;color:var(--mauve);text-transform:uppercase;letter-spacing:.1em}.step{margin:2.5rem 0}.step-row{display:flex;align-items:center;gap:.85rem;margin-bottom:1rem}.step-num{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:var(--mauve);color:#fff;font-family:Sora,sans-serif;font-weight:800;font-size:1rem;flex-shrink:0}.step-label{font-family:Sora,sans-serif;font-weight:700;font-size:1.15rem}.form-line{display:flex;gap:.65rem;align-items:center;margin-left:51px;flex-wrap:wrap}@media(max-width:560px){.form-line{margin-left:0}}.date-input{padding:.85rem 1.1rem;border:1.5px solid var(--ink-16);border-radius:var(--radius-field);background:var(--surface);font-family:Manrope,sans-serif;font-size:1.05rem;color:var(--ink);flex:1;min-width:200px;max-width:280px;transition:border-color .2s,box-shadow .2s}.date-input:focus{outline:none;border-color:var(--pink);box-shadow:0 0 0 4px var(--pink-tint)}.btn-primary{background:var(--pink);color:#fff;padding:.95rem 1.85rem;border:none;border-radius:999px;font-family:Public Sans,sans-serif;font-weight:700;font-size:.9rem;cursor:pointer;transition:background .2s,transform .15s,box-shadow .2s;box-shadow:var(--shadow-button);letter-spacing:.02em}.btn-primary:hover{background:var(--mauve);transform:translateY(-2px)}.result{margin:3rem 0 2rem;padding:2.5rem 1.5rem;background:var(--surface);border-radius:28px;box-shadow:var(--shadow-card);border:1.5px solid var(--ink-08);text-align:center;opacity:0;transform:translateY(12px);transition:opacity .5s ease,transform .5s ease}.result[data-shown=true]{opacity:1;transform:translateY(0)}.result-eyebrow{font-family:Public Sans,sans-serif;font-weight:700;font-size:.75rem;color:var(--mauve);text-transform:uppercase;letter-spacing:.16em;margin-bottom:1rem}.big-number{display:flex;flex-direction:column;align-items:center;gap:.5rem;margin-bottom:1rem}.bn-value{font-family:Sora,sans-serif;font-weight:800;font-size:clamp(4.5rem,16vw,7rem);line-height:.95;letter-spacing:-.04em;color:var(--ink)}.bn-label{font-family:EB Garamond,serif;font-style:italic;font-size:1.4rem;color:var(--mauve)}.result-sub{color:var(--ink-60);font-size:.95rem;margin-bottom:2rem}.thresholds{display:flex;flex-direction:column;gap:.6rem;text-align:left}.threshold{display:grid;grid-template-columns:32px 1fr auto;gap:.85rem;align-items:center;padding:.9rem 1.1rem;border-radius:14px;border:1.5px solid}.threshold.met{background:var(--green-bg);border-color:var(--green-border);color:var(--green-fg)}.threshold.not-met{background:var(--canvas-deep);border-color:var(--ink-08);color:var(--ink-60)}.threshold .icon{font-family:Sora,sans-serif;font-weight:800;font-size:1.3rem;text-align:center}.threshold .label{font-family:Manrope,sans-serif;font-size:.95rem;line-height:1.4}.threshold .label strong{font-weight:700}.threshold .delta{font-family:Public Sans,sans-serif;font-weight:700;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;white-space:nowrap}.explain{margin:3rem 0 1.5rem}.explain h2{font-size:1.35rem;margin-bottom:1.25rem}.explain ul{list-style:none;padding:0;display:flex;flex-direction:column;gap:.85rem}.explain li{background:var(--parchment);padding:1rem 1.25rem;border-radius:16px;line-height:1.6}.ruling-pill{display:inline-block;background:var(--mauve);color:#fff;padding:.2rem .6rem;border-radius:999px;font-family:Public Sans,sans-serif;font-weight:700;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;margin-right:.5rem}.see-also{margin-top:1.25rem;color:var(--ink-60);font-size:.95rem}
