.tool{border-radius:var(--gb-radius-xl);background:var(--gb-color-surface);box-shadow:var(--gb-shadow-2);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid;overflow:hidden}.tool-in{gap:var(--gb-space-6);align-content:start;padding:clamp(1.5rem,1rem + 2vw,2.75rem);display:grid}.tool-out{background:var(--gb-color-surface-ink);color:var(--gb-color-text-on-ink);gap:var(--gb-space-5);align-content:start;padding:clamp(1.5rem,1rem + 2vw,2.75rem);display:grid}.tool-field{border:0;min-width:0;padding:0}.tool-field>legend,.tool-field>label,.tool-label{margin-bottom:var(--gb-space-3);font-weight:var(--gb-type-weight-bold);font-size:var(--gb-type-size-sm);padding:0;display:block}.tool-hint{font-size:var(--gb-type-size-xs);color:var(--gb-color-text-muted);margin-top:6px;display:block}.tool-seg{flex-wrap:wrap;gap:8px;display:flex}.tool-seg label{position:relative}.tool-seg input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.tool-seg span{border-radius:var(--gb-radius-pill);min-height:48px;box-shadow:inset 0 0 0 1.5px var(--gb-color-border-strong);font-weight:var(--gb-type-weight-semibold);font-size:var(--gb-type-size-sm);transition:background-color var(--gb-motion-duration-fast) ease, box-shadow var(--gb-motion-duration-fast) ease, transform var(--gb-motion-duration-fast) var(--gb-motion-ease-out);justify-content:center;align-items:center;padding:0 18px;display:inline-flex}.tool-seg input:checked+span{background:var(--gb-color-surface-ink);color:var(--gb-color-text-on-ink);box-shadow:none}.tool-seg input:focus-visible+span{box-shadow:var(--gb-shadow-focus)}.tool-seg label:active span{transform:scale(var(--gb-motion-press-scale))}@media (hover:hover) and (pointer:fine){.tool-seg input:not(:checked):hover+span{box-shadow:inset 0 0 0 1.5px var(--gb-color-text)}}.tool-step{border-radius:var(--gb-radius-pill);box-shadow:inset 0 0 0 1.5px var(--gb-color-border-strong);align-items:center;display:inline-flex}.tool-step button{width:48px;height:48px;color:var(--gb-color-text);border-radius:50%;place-items:center;display:grid}.tool-step button:active{transform:scale(var(--gb-motion-press-scale))}@media (hover:hover) and (pointer:fine){.tool-step button:hover{background:var(--gb-color-surface-sunk)}}.tool-step input{text-align:center;width:4.5ch;font-weight:var(--gb-type-weight-black);font-variant-numeric:tabular-nums;-moz-appearance:textfield;appearance:textfield;background:0 0;border:0}.tool-step input::-webkit-outer-spin-button,.tool-step input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.tool-step input:focus-visible{box-shadow:none;outline:none}.tool-step:focus-within{box-shadow:inset 0 0 0 2px var(--gb-color-text)}.tool-num{align-items:center;gap:var(--gb-space-3);display:flex}.tool-num .unit{font-size:var(--gb-type-size-sm);color:var(--gb-color-text-muted)}.tool-checks{gap:4px;display:grid}.tool-check{align-items:center;gap:var(--gb-space-3);cursor:pointer;min-height:48px;font-size:var(--gb-type-size-sm);font-weight:var(--gb-type-weight-semibold);display:flex}.tool-check input{width:22px;height:22px;accent-color:var(--gb-color-brand-strong);flex:none}.tool-kicker{font-size:var(--gb-type-size-sm);font-weight:var(--gb-type-weight-semibold);color:var(--gb-color-green-200)}.tool-big{font-family:var(--gb-type-family-body);font-weight:var(--gb-type-weight-black);font-variant-numeric:tabular-nums;letter-spacing:var(--gb-type-tracking-num);font-size:clamp(2.5rem,1.8rem + 2.6vw,3.75rem);line-height:1}.tool-rows{border-top:1px solid color-mix(in srgb, var(--gb-color-white) 16%, transparent);padding:0;list-style:none;display:grid}.tool-rows li{justify-content:space-between;align-items:baseline;gap:var(--gb-space-4);border-bottom:1px solid color-mix(in srgb, var(--gb-color-white) 16%, transparent);font-size:var(--gb-type-size-sm);color:var(--gb-color-ink-200);padding:12px 0;display:flex}.tool-rows b{color:var(--gb-color-text-on-ink);font-size:var(--gb-type-size-md);white-space:nowrap;font-variant-numeric:tabular-nums}.tool-say{font-size:var(--gb-type-size-md);color:var(--gb-color-text-on-ink)}.tool-say b{color:var(--gb-color-green-300)}.tool-say b.is-no{color:var(--gb-color-sun-300)}.tool-out .gb-btn{justify-self:start}.tool-fine{font-size:var(--gb-type-size-xs);color:var(--gb-color-ink-300)}.tool-fine a{color:inherit}[data-live]{transition:opacity var(--gb-motion-duration-fast) ease}@media (width<=900px){.tool{grid-template-columns:minmax(0,1fr)}}@media (width<=420px){.tool-seg span{padding:0 14px}}
