/* Scoped to the directory; theme follows SPM's data-bs-theme. */
.spm-tools {--tools-accent:#6610f2;--tools-surface:#fff;--tools-border:#d9ccef;--tools-muted:#51465f;max-width:1440px;margin:auto;padding:clamp(1rem,3vw,2.5rem);color:var(--bs-body-color,#20152d)}
[data-bs-theme="dark"] .spm-tools {--tools-accent:#d2b5ff;--tools-surface:#170a2c;--tools-border:#543777;--tools-muted:#c6b9d9}
.spm-tools-hero {background:radial-gradient(ellipse at top right,#6610f2,transparent 65%),#0b011d;color:white;padding:clamp(3rem,7vw,6rem) 1.5rem;text-align:center}
.spm-tools-hero h1 {font-size:clamp(2rem,5vw,3.8rem);font-weight:800;color:inherit}
.spm-tools-eyebrow {letter-spacing:.14em;font-weight:700;color:#e1caff}
.spm-tools-intro {max-width:900px;font-size:1.15rem;line-height:1.7}
.spm-tools-controls {display:grid;grid-template-columns:2fr 1fr auto;gap:1rem;align-items:end;padding:1.25rem;background:var(--tools-surface);border:1px solid var(--tools-border);border-radius:20px;margin:1.5rem 0 1rem}
.spm-tools-controls label {display:block;margin-bottom:.5rem;font-weight:700}
.spm-tools-controls input,.spm-tools-controls select,.spm-tools-controls button {min-height:48px}
.spm-tools-category {margin:2.5rem 0;scroll-margin-top:100px}
.spm-tools-category h2 {font-size:clamp(1.5rem,3vw,2rem);border-left:4px solid var(--tools-accent);padding-left:.8rem;margin-bottom:1.25rem}
.spm-tools-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;list-style:none;margin:0;padding:0}
.spm-tools-card {display:flex;flex-direction:column;gap:.5rem;padding:1.5rem;background:var(--tools-surface);border:1px solid var(--tools-border);border-radius:20px;box-shadow:0 5px 20px #6610f20a;min-width:0;overflow-wrap:anywhere}
.spm-tools-card h3 {font-size:1.25rem;margin:0;font-weight:700}
.spm-tools-card p {line-height:1.6;color:var(--tools-muted);margin:0 0 .5rem}
.spm-tools-card .spm-tools-pick {color:var(--tools-accent);font-weight:700;font-size:.85rem}
.spm-tools-link {margin-top:auto}
.spm-tools a {color:var(--tools-accent);text-decoration:underline;text-underline-offset:.2em}
.spm-tools-link a {display:inline-flex;align-items:center;min-height:44px}
.spm-tools :focus-visible {outline:3px solid var(--tools-accent);outline-offset:4px}
.spm-tools-about {border-top:1px solid var(--tools-border);padding-top:2rem;margin-top:3rem}
.spm-tools [hidden] {display:none!important}
@media(max-width:1024px) {.spm-tools-grid {grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px) {.spm-tools-grid,.spm-tools-controls {grid-template-columns:1fr}.spm-tools-card {padding:1.25rem}}
