.d-tools .tiny{font-size:var(--fs-xs)}.d-tools .num{font-variant-numeric:tabular-nums}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.btn-row{gap:var(--sp-3);flex-wrap:wrap;align-items:center;display:flex}.tool-hero__art svg{width:100%;height:auto;display:block}.card__title-row{align-items:center;gap:var(--sp-3);margin-bottom:var(--sp-4);display:flex}.card__title-row h2,.card__title-row h3{margin:0}.step-num{background:var(--c-accent);border:var(--bd);width:36px;height:36px;font-family:var(--font-display);border-radius:50%;flex:none;place-items:center;font-weight:700;display:grid}.result-card{min-height:0}.result-card__value{overflow-wrap:anywhere}.result-card--empty{background:var(--c-surface);box-shadow:none;text-align:center;color:var(--c-muted);border-style:dashed}.result-card--empty .result-card__art{width:88px;margin:0 auto var(--sp-3);position:static}.result-card--warn{background:var(--c-primary-soft)}.result-card--good{background:var(--c-secondary-soft)}.result-card__art svg{width:100%;height:auto;display:block}@media (width<=560px){.result-card__art{width:84px}}.stats{gap:var(--sp-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.stats .metric{min-width:0}.stats .metric b{font-size:var(--fs-lg);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}@media (width>=640px){.stats--3{grid-template-columns:repeat(3,minmax(0,1fr))}}.d-tools .gauge{width:min(100%,320px)}.gauge__value-text{font-variant-numeric:tabular-nums}.gauge__unit{font-size:var(--fs-sm);color:var(--c-muted);font-weight:700;display:block}.d-tools .field__hint{font-weight:400;font-size:var(--fs-xs);color:var(--c-muted);margin-top:var(--sp-1);display:block}.field-row{gap:var(--sp-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.field-row--3{grid-template-columns:repeat(3,minmax(0,1fr))}@media (width<=480px){.field-row--3{grid-template-columns:repeat(2,minmax(0,1fr))}}.input-unit{position:relative}.d-tools .input-unit input{padding-right:56px}.input-unit__u{font-size:var(--fs-sm);color:var(--c-muted);pointer-events:none;font-weight:700;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.d-tools .slider-field{margin-bottom:var(--sp-6)}.slider-field__val{align-items:baseline;gap:var(--sp-1);font-family:var(--font-display);white-space:nowrap;font-weight:600;display:inline-flex}.d-tools .slider-field__val input{text-align:right;width:calc(5ch + 28px);min-height:40px;font-family:var(--font-display);font-variant-numeric:tabular-nums;background:var(--c-accent-soft);border-radius:var(--r-pill);-moz-appearance:textfield;appearance:textfield;padding:2px 12px;font-weight:600}.d-tools .slider-field__val input::-webkit-inner-spin-button,.d-tools .slider-field__val input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.seg{gap:var(--sp-2);margin:0 0 var(--sp-4);border:0;flex-wrap:wrap;min-width:0;padding:0;display:flex}.seg legend{font-weight:700;font-size:var(--fs-sm);margin-bottom:var(--sp-2);padding:0}.seg label{margin:0;font-weight:600}.seg input{opacity:0;width:1px;height:1px;position:absolute}.seg span{min-height:44px;padding:var(--sp-2) var(--sp-4);border-radius:var(--r-pill);border:var(--bd);background:var(--c-surface);cursor:pointer;font-family:var(--font-display);font-weight:600;font-size:var(--fs-sm);transition:transform var(--dur) var(--ease-bounce), background var(--dur);justify-content:center;align-items:center;gap:6px;display:inline-flex}.seg input:checked+span{background:var(--c-accent);box-shadow:var(--sh-sticker);transform:translateY(-2px)}.seg input:focus-visible+span{outline:3px solid var(--c-secondary);outline-offset:2px}.chips{gap:var(--sp-2);margin-bottom:var(--sp-4);display:grid}.chip{margin:0;display:block;position:relative}.chip input{opacity:0;width:1px;height:1px;position:absolute}.chip__body{align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);border-radius:var(--r-md);border:2px solid var(--c-line);background:var(--c-surface);cursor:pointer;min-height:48px;font-weight:400;font-size:var(--fs-sm);transition:border-color var(--dur), transform var(--dur) var(--ease-bounce), background var(--dur);grid-template-columns:28px 1fr auto;line-height:1.4;display:grid}.chip__box{border:var(--bd);background:var(--c-surface);border-radius:8px;place-items:center;width:26px;height:26px;display:grid}.chip__box svg{opacity:0;width:16px;transition:transform var(--dur) var(--ease-bounce), opacity var(--dur);transform:scale(.4)}.chip__wh{font-family:var(--font-display);white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:600}.chip input:checked+.chip__body{border-color:var(--c-ink);background:var(--c-accent-soft)}.chip input:checked+.chip__body .chip__box{background:var(--c-accent)}.chip input:checked+.chip__body .chip__box svg{opacity:1;transform:none}.chip input:focus-visible+.chip__body{outline:3px solid var(--c-secondary);outline-offset:2px}.chip__name{font-weight:700;display:block}.d-tools .check{gap:var(--sp-3);font-weight:400;font-size:var(--fs-sm);cursor:pointer;grid-template-columns:26px 1fr;align-items:start;display:grid}.d-tools .check input{margin:2px 0 0}.tool-grid{gap:var(--sp-6);grid-template-columns:1fr;align-items:start;display:grid}@media (width>=960px){.tool-grid{gap:var(--sp-8);grid-template-columns:minmax(0,5fr) minmax(0,6fr)}.tool-grid__inputs{top:calc(var(--nav-h) + var(--sp-4));position:sticky}}.tool-results{gap:var(--sp-4);display:grid}.tool-results>*{animation:rise .45s var(--ease-bounce) both}.tool-results>:nth-child(2){animation-delay:60ms}.tool-results>:nth-child(3){animation-delay:.12s}.tool-results>:nth-child(4){animation-delay:.18s}@keyframes rise{0%{opacity:0;transform:translateY(14px)}}.product-card--compact{flex-direction:row}.product-card--compact .product-card__media{width:auto;min-width:0;height:auto;padding:var(--sp-3);border-bottom:0;border-right:var(--bd);flex:0 0 112px}.product-card--compact .product-card__media .illustration{height:72px;margin:0}.product-card--compact .product-card__body{padding:var(--sp-4);gap:var(--sp-1)}.product-card--compact .product-card__body .badge{font-size:var(--fs-xs);white-space:normal;align-self:flex-start}.product-card--compact .product-card__title{font-size:var(--fs-base)}.product-card--compact .product-card__cta{padding-top:var(--sp-2)}@media (width>=560px){.product-card--compact .product-card__cta .btn{width:auto}}@media (width<=420px){.product-card--compact .product-card__media{flex-basis:80px}.product-card--compact .product-card__media .illustration{height:56px}}.chart-card h3{justify-content:space-between;align-items:baseline;gap:var(--sp-3);flex-wrap:wrap;display:flex}.hbars{gap:var(--sp-3);display:grid}.hbar{gap:4px;display:grid}.hbar__top{justify-content:space-between;gap:var(--sp-3);font-size:var(--fs-sm);display:flex}.hbar__top b{font-family:var(--font-display);white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:600}.hbar__track{border-radius:var(--r-pill);background:var(--c-bg);border:var(--bd);height:18px;overflow:hidden}.hbar__fill{border-radius:var(--r-pill);background:var(--c-primary);width:0;height:100%;transition:width .8s var(--ease-bounce)}.hbar__fill--pine{background:var(--c-secondary)}.hbar__fill--sun{background:var(--c-accent)}.hbar__fill--sky{background:var(--c-sky)}.stackbar{border-radius:var(--r-pill);border:var(--bd);background:var(--c-bg);height:34px;display:flex;overflow:hidden}.stackbar__seg{height:100%;transition:flex-basis .8s var(--ease-bounce);flex:0 0 0;min-width:0}.stackbar__seg+.stackbar__seg{border-left:var(--bd)}.legend{gap:var(--sp-2) var(--sp-4);margin:var(--sp-3) 0 0;font-size:var(--fs-sm);flex-wrap:wrap;padding:0;list-style:none;display:flex}.legend li{align-items:center;gap:6px;margin:0;display:inline-flex}.legend i{border:var(--bd);border-radius:4px;flex:none;width:14px;height:14px;display:inline-block}.vbars{grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;align-items:end;gap:6px;height:200px;padding-top:24px;display:grid}.vbar{text-align:center;grid-template-rows:1fr auto;gap:6px;min-width:0;height:100%;display:grid}.vbar__col{border:var(--bd);background:var(--c-accent);width:100%;height:0;transition:height .8s var(--ease-bounce);border-radius:10px 10px 4px 4px;align-self:end;position:relative}.vbar__col--hi{background:var(--c-primary)}.vbar__col--lo{background:var(--c-sky)}.vbar__val{font-size:var(--fs-xs);white-space:nowrap;font-variant-numeric:tabular-nums;font-weight:700;position:absolute;top:-22px;left:50%;transform:translate(-50%)}.vbar__lab{font-size:var(--fs-xs);color:var(--c-muted);white-space:nowrap;text-overflow:ellipsis;font-weight:700;overflow:hidden}@media (width<=520px){.vbars--12 .vbar__val{display:none}.vbars--12 .vbar__col--hi .vbar__val,.vbars--12 .vbar__col--lo .vbar__val{display:block}}.linechart svg{width:100%;height:auto;display:block;overflow:visible}.linechart .grid line{stroke:var(--c-line);stroke-width:1.5px}.linechart .axis text{fill:var(--c-muted);font-size:12px;font-family:var(--font-body);font-weight:700}.linechart .draw{stroke-dasharray:var(--len);stroke-dashoffset:var(--len);animation:draw 1.2s var(--ease-bounce) forwards}@keyframes draw{to{stroke-dashoffset:0}}.math{border:var(--bd);border-radius:var(--r-md);background:var(--c-surface)}.math summary{cursor:pointer;padding:var(--sp-4) var(--sp-6);font-family:var(--font-display);font-weight:600;font-size:var(--fs-lg);justify-content:space-between;align-items:center;gap:var(--sp-3);min-height:44px;list-style:none;display:flex}.math summary::-webkit-details-marker{display:none}.math summary:after{content:"+";transition:transform var(--dur) var(--ease-bounce);font-size:1.6rem;line-height:1}.math[open] summary:after{transform:rotate(45deg)}.math__body{padding:0 var(--sp-6) var(--sp-6)}.math__body code{background:var(--c-bg);overflow-wrap:anywhere;border-radius:6px;padding:2px 6px;font-size:.92em}.math__body ul{margin:0 0 var(--sp-4);padding-left:1.2em}.math__body li+li{margin-top:var(--sp-2)}.tool-tiles{gap:var(--sp-4);grid-template-columns:1fr;display:grid}@media (width>=640px){.tool-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1000px){.tool-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}}.tool-tile{gap:var(--sp-4);color:var(--c-ink);background:var(--c-surface);border:var(--bd);border-radius:var(--r-md);padding:var(--sp-6) var(--sp-4) var(--sp-6) var(--sp-6);box-shadow:var(--sh-sticker);transition:transform var(--dur) var(--ease-bounce), box-shadow var(--dur) var(--ease-bounce);grid-template-columns:76px 1fr;align-items:start;text-decoration:none;display:grid}.tool-tile:hover{color:var(--c-ink);box-shadow:0 8px 0 var(--c-ink);transform:translateY(-4px)rotate(-.6deg)}.tool-tile__art{background:var(--c-accent-soft);border:2px solid var(--c-line);border-radius:22px;place-items:center;width:76px;height:76px;display:grid}.tool-tile:nth-child(3n+2) .tool-tile__art{background:var(--c-secondary-soft)}.tool-tile:nth-child(3n) .tool-tile__art{background:var(--c-sky-soft)}.tool-tile__art svg{width:56px;height:56px;transition:transform var(--dur) var(--ease-bounce)}.tool-tile:hover .tool-tile__art svg{transform:scale(1.1)rotate(-6deg)}.tool-tile h3{font-size:var(--fs-lg);margin:0 0 var(--sp-1)}.tool-tile p{font-size:var(--fs-sm);color:var(--c-muted);margin:0}.tool-tile .badge{margin-top:var(--sp-3);font-size:var(--fs-xs)}.tool-tile--feature{background:var(--c-accent);padding:var(--sp-8);grid-column:1/-1;grid-template-columns:1fr}@media (width>=760px){.tool-tile--feature{grid-template-columns:1fr 280px;align-items:center}}.tool-tile--feature h3,.tool-tile--feature .tool-tile__title{font-size:var(--fs-2xl);margin:0 0 var(--sp-1)}.tool-tile--feature p{color:var(--c-ink);font-size:var(--fs-base);max-width:52ch}.tool-tile--feature .tool-tile__hero svg{width:100%;height:auto}.group-title{align-items:center;gap:var(--sp-3);margin:var(--sp-12) 0 var(--sp-4);display:flex}.group-title h2{font-size:var(--fs-xl);margin:0}.group-title:after{content:"";border-top:3px dotted var(--c-line);flex:1;height:0}.result-peek{left:var(--sp-3);right:var(--sp-3);bottom:var(--sp-3);z-index:60;align-items:center;column-gap:var(--sp-3);padding:var(--sp-2) var(--sp-4);border-radius:var(--r-md);border:var(--bd);background:var(--c-accent);color:var(--c-ink);box-shadow:var(--sh-sticker);animation:rise .3s var(--ease-bounce) both;grid-template-columns:1fr auto;grid-template-areas:"label go""value go";text-decoration:none;display:grid;position:fixed}.result-peek:hover{color:var(--c-ink)}.result-peek[hidden]{display:none}.result-peek__label{font-size:var(--fs-xs);white-space:nowrap;text-overflow:ellipsis;grid-area:label;font-weight:700;overflow:hidden}.result-peek__value{font-family:var(--font-display);font-weight:700;font-size:var(--fs-lg);white-space:nowrap;text-overflow:ellipsis;font-variant-numeric:tabular-nums;grid-area:value;line-height:1.2;overflow:hidden}.result-peek__go{font-family:var(--font-display);font-weight:600;font-size:var(--fs-sm);background:var(--c-surface);border:var(--bd);border-radius:var(--r-pill);grid-area:go;padding:8px 14px}@media (width>=960px){.result-peek{display:none!important}}.tabs{background:var(--c-surface);border:var(--bd);border-radius:var(--r-pill);margin-bottom:var(--sp-6);flex-wrap:wrap;gap:4px;padding:4px;display:inline-flex}.tabs button{min-height:44px;padding:var(--sp-2) var(--sp-4);border-radius:var(--r-pill);font-family:var(--font-display);font-weight:600;font-size:var(--fs-sm);cursor:pointer;color:var(--c-ink);background:0 0;border:0}.tabs button[aria-selected=true]{background:var(--c-accent);box-shadow:inset 0 0 0 2px var(--c-ink)}.loading{align-items:center;gap:var(--sp-3);color:var(--c-muted);font-weight:700;display:flex}.loading__sun{width:36px;height:36px;animation:2.4s linear infinite spin}.loading__sun svg{width:100%;height:100%}@keyframes spin{to{transform:rotate(360deg)}}.table-scroll{overflow-x:auto}@media (prefers-reduced-motion:reduce){.d-tools *,.d-tools :before,.d-tools :after{transition:none!important;animation:none!important}.linechart .draw{stroke-dashoffset:0}}.disclosure-line{font-size:var(--fs-xs);color:var(--c-muted);margin:0}.tool-disclosure{margin-top:var(--sp-6)}.tool-disclosure .callout{margin:0}
