.tool-hero{position:relative;overflow:hidden;padding:clamp(72px,12vh,140px) 0 clamp(28px,5vh,56px)}.tool-hero .aurora{opacity:calc(var(--aurora-opacity) * .8)}.tool-title{max-width:20ch}.tool{margin-top:clamp(24px,3vw,40px);padding:clamp(22px,3vw,34px);max-width:720px}.tool-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:16px;gap:16px}.tool-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.tool-field{display:flex;flex-direction:column;justify-content:flex-end;gap:8px}.tool-field span{font-size:.92rem;color:var(--text-2)}.tool-field input{height:52px;width:100%;min-width:0;box-sizing:border-box;padding:0 14px;font-size:1.15rem;font-family:var(--font-mono);color:var(--text);background:var(--surface);border:1px solid var(--line-strong);border-radius:12px;outline:none}.tool-field input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.tool-result{margin-top:22px;padding-top:20px;border-top:1px solid var(--line)}.tool-num-row{display:flex;align-items:center;flex-wrap:wrap;gap:14px}.tool-num{font-size:clamp(2.6rem,7vw,3.4rem);line-height:1}.tool-note{margin-top:12px;color:var(--text-2);font-size:1rem;line-height:1.5}.tool-table{width:100%;margin-top:22px;border-collapse:collapse;font-size:.96rem}.tool-table td,.tool-table th{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line)}.tool-table th{color:var(--text-3);font-weight:600;font-size:.85rem;text-transform:uppercase;letter-spacing:.04em}.tool-table td:first-child{font-family:var(--font-mono);color:var(--text);white-space:nowrap}.tool-fineprint{margin-top:14px;color:var(--text-3);font-size:.86rem;line-height:1.5}.tool-body{max-width:760px}.g-h2{font-family:var(--font-display);font-size:clamp(1.4rem,2.5vw,1.9rem);line-height:1.18;font-weight:600;letter-spacing:-.01em;margin-top:clamp(28px,4vh,44px)}.g-h2:first-child{margin-top:0}.g-p{margin-top:14px;color:var(--text);font-size:1.12rem;line-height:1.72}.g-p a{color:var(--accent);text-decoration:underline;text-underline-offset:3px}.g-p a:hover{color:var(--brand-bright)}.tool-cta{text-align:center}.tool-cta-inner{display:grid;place-items:center;grid-gap:18px;gap:18px}.tool-cta-actions{display:flex;flex-wrap:wrap;gap:14px;justify-content:center}@media (max-width:680px){.tool-grid,.tool-grid-2{grid-template-columns:1fr}.tool,.tool-body{max-width:100%}.g-p{font-size:1.06rem}}.tools-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));grid-gap:clamp(18px,2vw,28px);gap:clamp(18px,2vw,28px)}.tcard{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:10px;padding:clamp(24px,2.6vw,34px);text-decoration:none;color:var(--text);transition:transform .25s ease,border-color .25s ease}.tcard[data-accent=cool]{--tc:var(--ok)}.tcard[data-accent=warm]{--tc:var(--warn)}.tcard:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--tc) 55%,var(--line))}.tcard-glow{position:absolute;top:-45%;right:-25%;width:70%;height:90%;background:radial-gradient(circle,color-mix(in srgb,var(--tc) 38%,transparent),transparent 70%);filter:blur(42px);opacity:calc(.55 * var(--glow));pointer-events:none;transition:opacity .3s ease}.tcard:hover .tcard-glow{opacity:calc(.9 * var(--glow))}.tcard-tag{color:var(--tc);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;position:relative}.tcard-viz{display:grid;place-items:center;padding:10px 0 4px;position:relative}.tviz{width:min(100%,250px);height:auto;overflow:visible}.tviz-end{fill:var(--text-3);font-family:var(--font-mono);font-size:13px}.tcard-readout{display:flex;align-items:center;gap:12px}.tcard-reading{font-size:1.85rem;font-weight:700;line-height:1}.tcard-reading,.tcard-title{font-family:var(--font-display)}.tcard-title{font-size:1.3rem;font-weight:600;line-height:1.2;margin-top:2px}.tcard-desc{color:var(--text-2);font-size:1rem;line-height:1.55}.tcard-sample{color:var(--text-3);font-size:.82rem}.tcard-cta{margin-top:auto;padding-top:10px;color:var(--tc);font-weight:600;font-size:.98rem}.tviz-needle{transform-box:view-box;transform-origin:110px 100px}.tviz-marker{transform-box:view-box;transform-origin:98px 68px}@keyframes tviz-sweep{0%{transform:rotate(-104deg)}to{transform:rotate(0deg)}}@keyframes tviz-slide{0%{transform:translateX(-74px);opacity:0}to{transform:translateX(0);opacity:1}}html.kd-anim .tviz-needle{animation:tviz-sweep 1.15s cubic-bezier(.2,.8,.2,1) both}html.kd-anim .tviz-marker{animation:tviz-slide 1s cubic-bezier(.2,.8,.2,1) both}@media (prefers-reduced-motion:reduce){.tviz-marker,.tviz-needle{animation:none!important}}