.tool-page{background:var(--color-morning-cream);color:var(--color-morning-text);padding:2rem 1.25rem 4rem}.tool-wrap{max-width:72rem;margin:auto}.tool-breadcrumb{margin-bottom:2.5rem;font-size:.875rem}.tool-breadcrumb a{text-underline-offset:4px;text-decoration:underline}.tool-eyebrow{text-transform:uppercase;letter-spacing:.15em;color:var(--color-coral-ink);margin-bottom:1rem;font-size:.75rem;font-weight:800}.tool-page h1{max-width:23ch;font-size:clamp(2.2rem,5vw,3.8rem);line-height:1.12}.tool-intro{max-width:64ch;margin:1.25rem 0 2.5rem;font-size:1.15rem;line-height:1.7}.tool-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.tool-card{background:#fff;border:1px solid #e1dad2;border-radius:1.25rem;padding:1.6rem;transition:transform .15s;display:block}.tool-card:hover{border-color:var(--color-coral-ink);transform:translateY(-3px)}.tool-card h2{margin:.75rem 0;font-size:1.35rem}.tool-card p{margin-bottom:1rem;font-size:.96rem;line-height:1.65}.tool-number{color:var(--color-coral-ink);font-size:.85rem;font-weight:800}.tool-workspace{grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:start;gap:1.5rem;display:grid}.tool-panel{background:#fff;border:1px solid #e1dad2;border-radius:1.5rem;padding:clamp(1.1rem,3vw,2.2rem);box-shadow:0 12px 30px #35271908}.tool-panel fieldset{min-width:0}.tool-panel label{margin-bottom:1rem;font-size:.9rem;font-weight:700;display:block}.tool-panel input,.tool-panel select{width:100%;font:inherit;color:inherit;background:#fff;border:1px solid #958b82;border-radius:.6rem;min-height:48px;margin-top:.4rem;padding:.8rem;display:block}.tool-fields{grid-template-columns:1fr 1fr;gap:0 1rem;display:grid}.tool-panel button{cursor:pointer;border:1px solid #958b82;border-radius:999px;min-height:44px;margin:.25rem .25rem .25rem 0;padding:.7rem 1.1rem;font-weight:750}.tool-panel button:disabled{opacity:.45;cursor:default}.tool-panel .tool-primary{background:var(--color-night-deep);color:var(--color-night-text);width:100%;margin:1rem 0;display:block}.tool-presets{flex-wrap:wrap;margin-bottom:1rem;display:flex}.tool-notice{background:#fff0d5;border-inline-start:3px solid #ad5b00;margin-bottom:1.5rem;padding:1rem;font-size:.9rem;line-height:1.6}.tool-result{background:#faf6ef;border-radius:1rem;margin-top:1.5rem;padding:1.3rem}.tool-result h2{margin-bottom:.8rem;font-size:1.1rem}.tool-result dl>div{border-bottom:1px solid #e5ddd3;justify-content:space-between;gap:1rem;padding:.7rem 0;display:flex}.tool-result dt{font-size:.9rem}.tool-result dd{text-align:end;font-weight:800}.tool-countdown{font-variant-numeric:tabular-nums;direction:ltr;margin-top:1rem;font-size:clamp(2.5rem,6vw,4.5rem);line-height:1.3;display:block}.tool-error{color:#9e2a20;margin-top:.7rem;font-weight:700}.tool-promo{background:#f6e7d5;border-radius:1.5rem;padding:1.8rem}.tool-promo h2{margin:.7rem 0 1.5rem;font-size:1.5rem;line-height:1.45}.tool-small{margin-top:1rem;font-size:.83rem;line-height:1.6;text-decoration:underline;display:block}.tool-reading{max-width:70ch;margin:3rem 0;line-height:1.85}.tool-reading h2{margin:1.7rem 0 .6rem;font-size:1.4rem}.tool-reading a{text-decoration:underline}.tool-reading summary{cursor:pointer;font-weight:750}.tool-reading details p{margin-top:.8rem}.tool-related-title{margin:2rem 0 1rem;font-size:1.5rem}.tool-related{grid-template-columns:repeat(2,minmax(0,1fr))}.tool-bottom{text-align:center;background:#f6e7d5;border-radius:1.5rem;margin-top:3rem;padding:3rem 1.25rem}.tool-bottom h2{margin-bottom:1.25rem;font-size:1.7rem}.tool-bottom>a{margin-top:1rem;font-size:.85rem;text-decoration:underline;display:block}.tool-qr{width:min(100%,320px);height:auto;margin:1.5rem auto;display:block}.tool-panel :focus-visible,.tool-page a:focus-visible,.tool-page summary:focus-visible{outline:3px solid var(--color-coral-ink);outline-offset:4px}@media (width<=850px){.tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tool-workspace{grid-template-columns:1fr}.tool-promo{padding:1.4rem}}@media (width<=480px){.tool-grid,.tool-fields{grid-template-columns:1fr}.tool-page{padding-top:1.5rem}.tool-result dl>div{flex-direction:column;gap:.2rem}.tool-result dd{text-align:start}}@media (prefers-reduced-motion:reduce){.tool-card{transition:none}}
