*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{background:var(--color-bg);color:var(--color-ink);font-family:var(--font-sans);margin:0;line-height:1.55}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:var(--line-focus) solid var(--color-focus);outline-offset:4px}.skip-link{background:var(--color-ink);color:var(--color-on-ink);z-index:10;padding:.7rem;position:absolute;top:-5rem;left:1rem}.skip-link:focus{top:1rem}.site-header,.site-footer,main{max-width:1280px;margin:auto}.site-header{border-bottom:var(--border-width) solid var(--color-line);justify-content:space-between;align-items:center;padding:28px 40px;display:flex}.wordmark{align-items:center;gap:13px;min-height:44px;font-size:16px;line-height:1.2;display:flex}.brand-mark{background:var(--color-ink);color:var(--color-highlight);place-items:center;width:48px;height:48px;font-size:39px;display:grid;transform:rotate(-5deg)}.site-header>p{text-align:right;color:var(--color-ink-muted);margin:0;font-size:13px}.hero{max-width:920px;padding:64px 40px 40px}.eyebrow{letter-spacing:.13em;text-transform:uppercase;margin:0 0 18px;font-size:11px;font-weight:700}h1,h2,h3,p{overflow-wrap:anywhere}h1{letter-spacing:-.055em;margin:0 0 26px;font-size:clamp(44px,6.5vw,80px);font-weight:500;line-height:1.04}h1 em{font-family:var(--font-serif);font-weight:400}.hero-copy{max-width:640px;color:var(--color-ink-muted);font-size:19px}.preview-note{border-left:var(--line-rule) solid var(--color-ink);max-width:690px;margin-top:25px;padding-left:16px;font-size:13px}.directory{padding:24px 40px 64px}.directory-toolbar{justify-content:space-between;align-items:end;gap:28px;padding-bottom:26px;display:flex}.directory-toolbar h2{letter-spacing:-.03em;margin:0;font-size:25px}.directory-toolbar p{color:var(--color-ink-muted);margin:6px 0 0;font-size:13px}.search-field{width:min(430px,100%)}label{margin-bottom:7px;font-size:13px;font-weight:700;display:block}input,select{border:var(--border-width) solid var(--color-line-strong);border-radius:var(--radius-field);background:var(--color-surface);width:100%;min-height:49px;color:var(--color-ink);padding:12px}.category-nav{border-top:var(--border-width) solid var(--color-line);border-bottom:var(--border-width) solid var(--color-line);flex-wrap:wrap;gap:4px 28px;padding:14px 0;display:flex}.category-nav a{align-items:center;gap:8px;padding:6px 0;font-size:14px;display:flex}.category-nav span{color:var(--color-ink-muted);font-size:11px}.search-summary{color:var(--color-ink-muted);margin:18px 0 4px;font-size:12px}.category-section{padding-top:30px}.category-heading{align-items:baseline;gap:14px;margin-bottom:17px;display:flex}.category-heading h2{letter-spacing:-.04em;margin:0;font-size:28px;font-weight:500}.category-number{color:var(--color-ink-muted);font-size:12px}.category-heading>span:last-child{color:var(--color-ink-muted);margin-left:auto;font-size:12px}.tool-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.tool-card{background:var(--color-surface-muted);border:var(--border-width) solid var(--color-line);flex-direction:column;min-height:225px;padding:20px;transition:transform .16s,box-shadow .16s;display:flex}.tool-card.implemented{background:var(--color-surface);border-top:var(--line-rule) solid var(--color-ink);padding-top:18px}.tool-card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-3px)}.tool-state{color:var(--color-ink-muted);font-size:11px}.tool-card.implemented .tool-state{color:var(--color-ink);font-weight:700}.tool-card h3{letter-spacing:-.02em;margin:17px 0 10px;font-size:19px;font-weight:500;line-height:1.25}.tool-card p{color:var(--color-ink-muted);margin:0 0 22px;font-size:13px}.card-action{border-top:var(--border-width) solid var(--color-line);justify-content:space-between;margin-top:auto;padding-top:12px;font-size:12px;display:flex}.empty-category{color:var(--color-ink-muted);font-size:14px}.site-footer{border-top:var(--border-width) solid var(--color-line);justify-content:space-between;align-items:center;gap:25px;padding:28px 40px 40px;font-size:13px;display:flex}.site-footer p{color:var(--color-ink-muted);text-align:right;margin:0}.site-footer>a{text-underline-offset:4px;text-decoration:underline}.detail-page{padding:35px 40px 65px}.back-link{color:var(--color-ink-muted);text-underline-offset:4px;font-size:13px;text-decoration:underline}.detail-header{margin:40px 0}.detail-header h1{max-width:950px;font-size:clamp(38px,5vw,64px)}.detail-header>p:last-child{color:var(--color-ink-muted);font-size:19px}.detail-grid{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:start;gap:36px;display:grid}.calculation-panel,.in-build{background:var(--color-surface);border:var(--border-width) solid var(--color-line);padding:32px}.calculation-panel h2,.in-build h2{margin:0 0 13px;font-size:25px;font-weight:500;line-height:1.2}.muted{color:var(--color-ink-muted);font-size:14px}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:19px;margin:28px 0;display:grid}.primary-button{background:var(--color-ink);color:var(--color-surface);cursor:pointer;border:0;justify-content:space-between;align-items:center;gap:35px;min-height:48px;padding:14px 22px;font-size:14px;font-weight:700;display:inline-flex}.primary-button:hover{background:var(--color-ink-hover)}.form-error{color:var(--color-danger);min-height:1.55em;font-size:14px}.result-region{border-top:var(--border-width) solid var(--color-line);margin-top:12px;padding-top:22px}.result-region .eyebrow{margin-bottom:10px}.result-value{margin:12px 0 25px;font-size:clamp(24px,4vw,38px);font-weight:600;line-height:1.2}dl{margin:0}dl>div{border-top:var(--border-width) solid var(--color-line);justify-content:space-between;gap:14px;padding:10px 0;font-size:13px;display:flex}dt{color:var(--color-ink-muted)}dd{text-align:right;overflow-wrap:anywhere;margin:0}.method-panel{padding:20px 0}.method-panel h2{margin:0 0 25px;font-size:25px;font-weight:500;line-height:1.2}.method-panel h3{margin:22px 0 6px;font-size:14px}.method-panel p,.method-panel li{color:var(--color-ink-muted);font-size:14px}.method-panel ul{padding-left:19px}.method-footnote{border-top:var(--border-width) solid var(--color-line);margin-top:25px;padding-top:20px}.in-build{border-left:var(--line-bold) solid var(--color-ink)}.related-section{margin-top:46px}.related-section h2{margin-bottom:5px;font-size:25px;font-weight:500}.related-section>p{color:var(--color-ink-muted);font-size:13px}.related-links{flex-wrap:wrap;gap:12px;display:flex}.related-links a{border-bottom:var(--border-width) solid var(--color-ink);justify-content:space-between;gap:28px;padding:12px 4px;font-size:14px;display:flex}@media (max-width:1000px){.tool-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.detail-grid{gap:24px}.calculation-panel,.in-build{padding:24px}}@media (max-width:740px){.site-header{padding:20px}.hero{padding:45px 20px 24px}.directory{padding:20px}.directory-toolbar{display:block}.search-field{width:100%;margin-top:22px}.tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.category-nav{gap:4px 20px}.tool-card{min-height:225px;padding:16px}.tool-card.implemented{padding-top:14px}.detail-page{padding:28px 20px 45px}.detail-grid{grid-template-columns:1fr}.detail-header{margin:32px 0}.site-footer{padding:26px 20px;display:block}.site-footer p{text-align:left;margin-top:16px}.method-panel{padding:16px 4px}.hero-copy{font-size:17px}}@media (max-width:420px){.tool-grid{grid-template-columns:1fr}.tool-card{min-height:180px}.field-grid{grid-template-columns:1fr}.site-header>p{font-size:11px}.wordmark{font-size:14px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.tool-card{transition:none}.tool-card:hover{transform:none}}.result-explanation{border-top:var(--border-width) solid var(--color-line);margin-top:18px}.result-explanation summary{cursor:pointer;min-height:44px;padding:12px 0;font-size:14px;font-weight:700}.result-explanation summary:focus-visible{outline:var(--line-focus) solid var(--color-focus);outline-offset:4px}.result-explanation dl>div{display:block}.result-explanation dt{margin-bottom:6px;font-weight:700}.result-explanation dd{text-align:left}.form-field-wide{grid-column:1/-1}.form-field textarea{border:var(--border-width) solid var(--color-line-strong);border-radius:var(--radius-field);background:var(--color-surface);width:100%;min-height:120px;color:var(--color-ink);font:inherit;resize:vertical;padding:12px;font-size:16px;display:block}.form-field textarea:focus-visible{outline:var(--line-focus) solid var(--color-focus);outline-offset:3px}.site-build-label{padding:0 max(20px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom));color:var(--color-ink-muted);text-align:right;font-variant-numeric:tabular-nums;flex-wrap:wrap;justify-content:flex-end;gap:2px 10px;font-size:11px;line-height:1.5;display:flex}.site-build-label time{overflow-wrap:anywhere}.site-footer nav{flex-wrap:wrap;gap:12px 24px;display:flex}.site-footer nav a{text-underline-offset:4px;align-items:center;min-height:44px;text-decoration:underline;display:inline-flex}.wordmark{min-width:0}.wordmark strong{overflow-wrap:anywhere;min-width:0}.brand-mark.brand-mark-svg{color:var(--color-ink);background:0 0;font-size:0;line-height:0;transform:none}.brand-mark-svg>svg{width:100%;height:100%;display:block}.brand-lede{color:var(--color-ink-muted);font-weight:400}.brand-key{color:var(--color-ink);font-weight:700}.recipe-watermark-frame{container:recipe-watermark-photo/inline-size}.recipe-watermark{width:var(--recipe-watermark-size);height:var(--recipe-watermark-size);border:var(--border-width) solid color-mix(in srgb,var(--color-watermark-ink) 22%,var(--color-watermark-paper));border-radius:var(--radius-round);background:var(--color-watermark-paper);max-width:100%;color:var(--color-watermark-ink);font-family:var(--font-sans);font-size:var(--text-xs);line-height:var(--leading-tight);white-space:nowrap;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-print-color-adjust:exact;print-color-adjust:exact;flex:none;justify-content:center;align-items:center;display:inline-flex}.recipe-watermark-mark{--color-ink:var(--color-watermark-ink);flex:none;width:24px;height:24px;display:block}.recipe-watermark-wordmark{white-space:nowrap;display:none}.recipe-watermark-wordmark .brand-lede{color:color-mix(in srgb,var(--color-watermark-ink) 82%,var(--color-watermark-paper))}.recipe-watermark-wordmark .brand-key{color:var(--color-watermark-ink)}@container recipe-watermark-photo (min-width:280px){.recipe-watermark--signature{gap:calc(var(--space-3) / 2);width:max-content;min-width:160px;height:36px;padding:var(--space-1) var(--space-2);border-radius:var(--radius-2)}.recipe-watermark--signature .recipe-watermark-wordmark{display:block}}@media (forced-colors:active){.recipe-watermark{--color-watermark-paper:Canvas;--color-watermark-ink:CanvasText;forced-color-adjust:none;border-color:canvastext}}@media (max-width:420px){.brand-mark.brand-mark-svg{width:42px;height:42px}}.brand-node,.brand-ink-fill{fill:var(--color-mark-node)}.brand-link,.brand-ink-stroke{fill:none;stroke:var(--color-mark-node)}.brand-glyph-fill{fill:var(--color-mark-glyph)}.brand-glyph-stroke{fill:none;stroke:var(--color-mark-glyph)}.brand-hub{fill:var(--color-mark-hub);stroke:var(--color-mark-hub-ring)}.brand-outline{fill:var(--color-mark-paper);stroke:var(--color-mark-node)}@media (forced-colors:active){.brand-node,.brand-ink-fill{fill:canvastext}.brand-link,.brand-ink-stroke{stroke:canvastext}.brand-glyph-fill{fill:canvas}.brand-glyph-stroke{stroke:canvas}.brand-hub{fill:canvastext;stroke:canvas}.brand-outline{fill:canvas;stroke:canvastext}}.page-about{margin:var(--space-8) 0 0;border-top:var(--line-fine) solid var(--color-line);color:var(--color-ink);font-family:var(--font-sans)}.page-about>summary{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:44px;padding:var(--space-3) 0;cursor:pointer;list-style:none;display:flex}.page-about>summary::-webkit-details-marker{display:none}.page-about>summary:after{content:"";width:8px;height:8px;margin-right:var(--space-1);border-right:var(--line-fine) solid var(--color-ink-muted);border-bottom:var(--line-fine) solid var(--color-ink-muted);transition:transform var(--motion-fast);flex:none;transform:rotate(45deg)}.page-about[open]>summary:after{transform:rotate(225deg)}.page-about>summary:focus-visible{outline:var(--line-focus) solid var(--color-focus);outline-offset:4px}.page-about .page-about-title{font-size:var(--text-m);font-weight:var(--weight-bold);line-height:var(--leading-tight);margin:0}.page-about-list{margin:0 0 var(--space-6)}.page-about-list dt{margin-top:var(--space-4);font-size:var(--text-s);color:var(--color-ink-muted)}.page-about-list dd{margin:var(--space-1) 0 0;text-align:left;font-size:var(--text-m);line-height:var(--leading-normal);overflow-wrap:anywhere}.page-about-list ul{padding-left:var(--space-5);margin:0}@media (prefers-reduced-motion:reduce){.page-about>summary:after{transition:none}}.site-footer{flex-wrap:wrap}footer .legal-notice{gap:var(--space-1);color:var(--color-ink-muted);font-size:var(--text-s);line-height:var(--leading-normal);text-align:start;overflow-wrap:anywhere;flex-basis:100%;margin:0;display:grid}footer .legal-notice p,footer .legal-notice address{color:inherit;text-align:start;margin:0;font-style:normal}footer .legal-notice a{min-height:0;color:inherit;text-underline-offset:var(--space-1);text-decoration:underline;display:inline}
.site-header.site-shell-network,.site-footer.site-shell-network{font-family:var(--font-network);max-width:var(--shell-max-width);color:var(--color-ink);margin-left:auto;margin-right:auto}.site-shell-network .brand-key{font-weight:var(--weight-key)}.site-shell-network :focus-visible{outline:var(--line-focus) solid var(--color-focus);outline-offset:var(--line-focus)}.ns-btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--target-min-height);padding:0 var(--space-4);border:var(--border-width) solid var(--color-ink);border-radius:var(--radius-2);background:var(--color-ink);color:var(--color-on-ink);font:inherit;font-size:var(--text-m);font-weight:var(--weight-bold);cursor:pointer;box-shadow:var(--level-1-x) var(--level-1-y) 0 var(--color-lift-shadow);transition:transform var(--motion-press),box-shadow var(--motion-press);text-decoration:none;display:inline-flex}.ns-btn:active{transform:translate(var(--level-1-x),var(--level-1-y));box-shadow:var(--level-0-x) var(--level-0-y) 0 var(--color-lift-shadow)}.ns-btn.ns-quiet{background:var(--color-surface);color:var(--color-ink);border-color:var(--color-line)}.ns-btn .ns-icon{width:var(--text-l);height:var(--text-l);stroke:currentColor;fill:none;stroke-width:var(--line-marker);stroke-linecap:round}.ns-btn .hm-mk{width:var(--mark-row);height:var(--mark-row);flex:none}.site-header.site-shell-network{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:var(--shell-header-min);padding:max(var(--space-3),env(safe-area-inset-top)) max(var(--space-4),env(safe-area-inset-right)) var(--space-2) max(var(--space-4),env(safe-area-inset-left));border-bottom:0;display:flex}.site-shell-network .ns-region{align-items:center;gap:var(--space-2);min-width:0;display:flex}.site-shell-network .wordmark{gap:var(--space-2);min-width:0;font-size:var(--shell-brand-size);letter-spacing:var(--tracking-name);color:inherit;text-decoration:none}.site-shell-network .wordmark strong{font-weight:var(--weight-regular);white-space:nowrap}.site-shell-network .brand-mark.brand-mark-svg{width:var(--mark-brand);height:var(--mark-brand);flex:none}.ns-daily-head{display:var(--header-cta-display)}body:has(.ns-desk){background-color:var(--color-home-desk);background-image:var(--home-texture-desk)}.ns-slip,.site-footer.site-shell-network{background-color:var(--color-home-paper);background-image:var(--home-texture-paper);border-radius:var(--radius-1);box-shadow:var(--level-1-x) var(--level-1-y) 0 var(--color-home-shadow),inset 0 0 0 var(--border-width) var(--color-home-paper-edge);border:0;position:relative}.ns-taped:before,.site-footer.site-shell-network:before{content:"";z-index:var(--z-tape);left:calc(var(--tape-center) - var(--tape-w-note) / 2);top:var(--tape-top);width:var(--tape-w-note);height:var(--tape-h);pointer-events:none;clip-path:var(--tape-edge-shape);transform:rotate(var(--tape-tilt-2));background:repeating-linear-gradient(var(--dir-across),var(--color-home-tape-line) 0 var(--border-width),transparent var(--border-width) var(--space-2)),var(--color-home-tape);box-shadow:inset 0 0 0 var(--border-width) var(--color-home-tape-edge);position:absolute}.site-footer.site-shell-network{width:min(var(--shell-max-width),calc(var(--fill) - var(--space-4) * 2));margin:var(--footer-slip-gap) auto max(var(--space-5),env(safe-area-inset-bottom));padding:var(--footer-slip-pad);transform:rotate(var(--note-tilt));font-size:var(--text-s);color:var(--color-ink-muted);display:block}.site-footer.site-shell-network .ns-region{display:block}.ns-foot-h{margin:0 0 var(--footer-heading-gap);font-size:var(--footer-heading-size);font-weight:var(--weight-strong);color:var(--color-ink)}.ns-band{margin:0 0 var(--footer-band-gap-bottom);flex-wrap:var(--footer-band-wrap);overflow-x:var(--footer-band-overflow);overscroll-behavior-x:contain;scrollbar-width:var(--footer-band-scrollbar);-webkit-mask-image:var(--footer-band-fade);mask-image:var(--footer-band-fade);gap:var(--band-gap);padding:0;list-style:none;display:flex}.ns-band li{flex:none}.ns-band a,.ns-band span{min-width:var(--target-min-height);min-height:var(--target-min-height);justify-content:center;align-items:center;display:flex}.ns-band-mark{width:var(--mark-band);height:var(--mark-band)}.ns-band .ns-soon{opacity:var(--home-faded)}.site-shell-network .ns-foot-links{gap:0 var(--space-4);margin:0 0 var(--space-3);flex-wrap:wrap;display:flex}.site-shell-network .ns-foot-links a{min-height:var(--target-min-height);color:var(--color-ink);text-underline-offset:var(--space-1);align-items:center;text-decoration:underline;display:inline-flex}footer .legal-notice address,footer .legal-notice .legal-notice-line{display:block}footer .legal-notice a{min-height:var(--footer-notice-link-height);display:inline}footer .legal-notice .brand-key{font-weight:var(--weight-key)}.site-shell-network .legal-notice{font-size:var(--text-meta)}.site-shell-network .legal-notice a{color:var(--color-ink)}.ns-sheet{inset:var(--sheet-inset);width:var(--fill);max-width:var(--sheet-max-width);max-height:var(--sheet-max-height);margin:var(--sheet-margin);border:var(--border-width) solid var(--color-home-paper-edge);border-radius:var(--sheet-corners);background:var(--color-home-paper);color:var(--color-ink);font-family:var(--font-network);box-shadow:var(--sheet-shadow-x) var(--sheet-shadow-y) 0 var(--color-home-shadow);overscroll-behavior:contain;padding:0;position:fixed;overflow:auto}.ns-sheet::backdrop{background:var(--color-home-scrim)}.ns-sheet-h{z-index:var(--z-raised);justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-home-paper);border-bottom:var(--border-width) solid var(--color-line);display:flex;position:sticky;top:0}.ns-sheet-h h2{font-size:var(--text-l);font-weight:var(--weight-strong);margin:0}.ns-sheet-body{padding:var(--space-3) var(--space-4) max(var(--space-6),env(safe-area-inset-bottom))}.ns-sheet-body h3{margin:var(--space-5) 0 var(--space-2);font-size:var(--text-s);font-weight:var(--weight-strong);color:var(--color-ink-muted)}.ns-sheet-body section:first-child h3{margin-top:var(--space-2)}.ns-sheet-rows{margin:0;padding:0;list-style:none}.ns-sheet-row{align-items:center;gap:var(--space-3);min-height:var(--target-min-height);padding:var(--space-2) 0;color:inherit;border-bottom:var(--border-width) solid var(--color-line);text-decoration:none;display:flex}.ns-sheet-mark{width:var(--mark-band);height:var(--mark-band);flex:none}.ns-sheet-mark.ns-soon{opacity:var(--home-faded)}.ns-sheet-text{min-width:0;display:grid}.ns-sheet-name .brand-key{font-weight:var(--weight-key)}.ns-sheet-words{font-size:var(--text-meta);color:var(--color-ink-muted)}.ns-sheet-state{font-size:var(--text-meta);color:var(--color-ink-muted);white-space:nowrap;margin-left:auto}a.ns-sheet-row:hover .ns-sheet-name{text-underline-offset:var(--space-1);text-decoration:underline}.ns-sheet :focus-visible{outline:var(--line-focus) solid var(--color-focus);outline-offset:var(--line-focus)}body:has(.ck-bar){padding-bottom:var(--cookie-bar-space)}.ck-bar{z-index:var(--z-bar);left:max(var(--space-3),env(safe-area-inset-left));right:max(var(--space-3),env(safe-area-inset-right));bottom:max(var(--space-3),env(safe-area-inset-bottom));max-width:var(--sheet-max-width);padding:var(--space-4);gap:var(--space-3);font-family:var(--font-network);font-size:var(--text-s);color:var(--color-ink);animation:ck-rise var(--motion-sheet) var(--ease-out);margin:0 auto;display:grid;position:fixed}@keyframes ck-rise{0%{transform:translateY(var(--sheet-enter));opacity:0}}.ck-bar p{line-height:var(--leading-normal);margin:0}.ck-bar-gpc{font-weight:var(--weight-bold)}.ck-bar-actions{gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.ck-bar-actions .ns-btn{white-space:nowrap;padding-inline:var(--space-2);justify-content:center}.ck-bar :focus-visible{outline:var(--line-focus) solid var(--color-focus);outline-offset:var(--line-focus)}
.staff-page-review-control{padding:12px max(20px,env(safe-area-inset-right)) 8px max(20px,env(safe-area-inset-left));justify-content:flex-end;font-size:13px;line-height:1.5;display:flex}.staff-page-review-control a{border:var(--border-width) solid var(--color-line-strong);border-radius:var(--radius-control);background:var(--color-bg);min-height:44px;color:var(--color-ink);text-underline-offset:3px;justify-content:center;align-items:center;padding:8px 12px;text-decoration:underline;display:inline-flex}.staff-page-review-control a:hover{background:var(--color-surface)}.staff-page-review-control a:focus-visible{outline:var(--line-focus) solid var(--color-ink);outline-offset:3px}@media print{.staff-page-review-control{display:none}}
