.plan{gap:var(--gap);--chart-surface:var(--surface-2);display:grid}.plan__inputs,.plan__out,.plan__out>*{min-width:0}.plan__inputs{padding:var(--card-pad);border-radius:var(--radius);background:var(--surface-2);align-content:start;gap:1.25rem;display:grid}.plan__field{display:grid}.plan__top{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.plan__top label{align-items:center;gap:.5rem;font-size:.9375rem;font-weight:600;display:inline-flex}.plan__val{font-family:var(--font-display), sans-serif;font-variant-numeric:tabular-nums;font-size:1.75rem;font-weight:800;line-height:1}.plan__hint{color:var(--text-muted);font-size:.8125rem}.plan__set{border:0;border-top:1px solid var(--border);gap:.5rem;min-width:0;margin:0;padding:1.25rem 0 0;display:grid}.plan__set legend{float:left;width:100%;padding:0;font-weight:600}.plan__set legend+*{clear:both}.plan__pillars{grid-template-columns:repeat(auto-fit,minmax(min(100%,10.5rem),1fr));gap:.5rem;margin-top:.25rem;display:grid}.plan__pillar{min-height:3rem;padding-left:2.75rem;font-size:.9375rem}.plan__pillar:before{content:"";width:1.25rem;height:1.25rem;box-shadow:inset 0 0 0 .125rem var(--border-strong);background:50%/.8rem no-repeat;border-radius:.375rem;position:absolute;left:.875rem}.plan__pillar:has(input:checked):before{background-color:var(--primary);box-shadow:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M3 8.5l3.2 3.2L13 4.8' fill='none' stroke='%230f0e14' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}.plan__warn{background:var(--primary-soft);border-radius:.75rem;padding:.625rem .875rem;font-size:.875rem}.plan__out{gap:var(--gap);align-content:start;display:grid}.plan__stats{padding:var(--card-pad);border-radius:var(--radius);background:var(--primary);color:var(--on-primary);grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.plan__stats .stat__n{font-size:clamp(2.25rem,5vw,3.75rem)}.plan__stats .stat__l{color:color-mix(in oklab, var(--on-primary) 82%, var(--primary));font-size:.8125rem}.plan__cal-card,.plan__donut-card{padding:var(--card-pad);border-radius:var(--radius);background:var(--surface-2);gap:1rem;display:grid}.plan__split{gap:var(--gap);display:grid}.plan__table{background:var(--surface-2);align-self:stretch}@media (width>=48rem){.plan__split{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr)}}@media (width>=64rem){.plan{grid-template-columns:22rem minmax(0,1fr);align-items:start}.plan__inputs{top:calc(var(--header-row) + 1.75rem);position:sticky}}.cal{gap:.25rem;display:grid}.cal__row{grid-template-columns:1.75rem repeat(7,minmax(0,1fr));align-items:stretch;gap:.25rem;display:grid}.cal__row--head{color:var(--text-muted);text-align:center;font-size:.6875rem}.cal__wk{color:var(--text-muted);place-items:center start;font-size:.6875rem;display:grid}.cal__cell{background:var(--surface-3);border-radius:.625rem;align-content:center;gap:.1875rem;min-height:3rem;padding:.1875rem;display:grid}.cal__cell.is-empty{box-shadow:inset 0 0 0 1px var(--border);background:0 0}.slot{background:var(--c);min-height:1.5rem;color:var(--bg);white-space:nowrap;border-radius:.4375rem;justify-content:center;align-items:center;gap:.375rem;padding:.125rem .25rem;font-size:.6875rem;font-weight:700;line-height:1;display:flex;overflow:hidden}.slot[style*=series-2]{color:var(--on-accent)}.slot b{font-weight:800}.slot i{font-style:normal;font-weight:600;display:none}.slot--key{width:1.375rem;min-height:1.375rem;padding:0;display:inline-flex}@media (width>=48rem){.cal__cell{min-height:3.75rem;padding:.3125rem}.slot i{display:inline}.slot b{display:none}.slot--key b{display:inline}.cal__row{grid-template-columns:2.25rem repeat(7,minmax(0,1fr));gap:.375rem}.cal{gap:.375rem}}@media (prefers-reduced-motion:no-preference){html.js:not(.a11y-motion) [data-reveal=fill]:not(.is-live) .cal__cell{opacity:0;transform:scale(.6)}html.js:not(.a11y-motion) [data-reveal=fill].is-visible:not(.is-live) .cal__cell{opacity:1;transition:opacity .32s ease calc(var(--i) * 38ms), transform .52s var(--ease-spring) calc(var(--i) * 38ms);transform:none}}.tool-frame[data-astro-cid-5a3vc5eb]{border-radius:var(--radius-lg);background:var(--surface);padding:clamp(.625rem,1.6vw,1.25rem)}dl[data-astro-cid-5a3vc5eb].rows{margin:0}
