.evoke-tools-card {
    border: 1px solid #e3ddec;
    border-radius: 1.15rem;
    background: #faf8fd;
    color: #292334;
    padding: clamp(1rem, 4vw, 1.8rem);
    margin: 1.7rem 0;
    min-width: 0;
    scroll-margin-top: 5rem;
}
.evoke-tools-card h2 { margin: 0 0 .65rem; }
.evoke-tools-card p:last-child { margin-bottom: 0; }
.evoke-tools-card a { text-decoration: underline; text-underline-offset: .15em; }
.evoke-tools-card .evoke-fields {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 12rem), 1fr));
    gap: .8rem;
    margin: 1rem 0;
}
.evoke-tools-card label { display: block; font-weight: 600; min-width: 0; }
.evoke-tools-card label input:not([type=checkbox]),
.evoke-tools-card label select {
    display: block;
    width: 100%;
    min-height: 2.75rem;
    margin-top: .3rem;
    border: 1px solid #93879f;
    border-radius: .45rem;
    background: #fff;
    color: #292334;
    padding: .4rem .65rem;
    font: inherit;
}
.evoke-tools-card button {
    min-height: 2.75rem;
    padding: .6rem 1.25rem;
    border: 0;
    border-radius: .45rem;
    background: #54258e;
    color: #fff;
    font: inherit;
    font-weight: 700;
}
.evoke-tools-card :focus-visible { outline: 3px solid #6b2eaa; outline-offset: 3px; }
.evoke-tools-card [data-result] { margin-block: 1rem; }
.evoke-tools-card [data-result]:empty { margin: 0; }
.evoke-tools-card dl { margin: 0; padding: .75rem 1rem; background: #ede5f7; border-radius: .55rem; }
.evoke-tools-card dd { margin-inline-start: 0; margin-bottom: .45rem; font-weight: 700; }
.evoke-tools-card dd:last-child { margin-bottom: 0; }
.evoke-tools-nav { display: flex; flex-wrap: wrap; gap: .5rem 1rem; margin-block: 1rem; }
