.igv-card {
    overflow: hidden;
    border: 1px solid var(--conversion-border);
    border-radius: 14px;
    background: #091d40;
}

.igv-row {
    display: grid;
    grid-template-columns: minmax(8rem, 1fr) minmax(0, 3fr);
    align-items: baseline;
    gap: .6rem 1.25rem;
    padding: 1rem clamp(1rem, 3vw, 1.5rem);
    border-bottom: 1px solid var(--conversion-border);
}

.igv-row label,
.igv-row dt { margin: 0; color: #fff; font-weight: 700; }

.igv-input {
    display: flex;
    align-items: center;
    gap: .75rem;
    padding: 0 .85rem;
    border: 1px solid #547196;
    border-radius: 8px;
    background: #0c2748;
}

.igv-input:focus-within { outline: 2px solid var(--conversion-accent); }
.igv-input span { color: var(--conversion-muted); }
.igv-input input {
    width: 100%;
    min-width: 0;
    min-height: 3rem;
    padding: .55rem 0;
    border: 0;
    background: transparent;
    color: #fff;
    font: inherit;
    font-size: 1.2rem;
    font-variant-numeric: tabular-nums;
}

.igv-card .igv-input input:focus { outline: 0; }
.igv-input input::placeholder { color: var(--conversion-muted); }
.igv-error { margin: 0; padding: .75rem clamp(1rem, 3vw, 1.5rem); color: #ffabb6; font-size: .85rem; }
.igv-input:has(input[aria-invalid="true"]) { border-color: #ffabb6; }

.igv-results { margin: 0; }
.igv-results .igv-row:last-child { border-bottom: 0; }
.igv-results dd { margin: 0; overflow-wrap: anywhere; font-variant-numeric: tabular-nums; }
.igv-rate {
    display: inline-block;
    margin-left: .25rem;
    padding: .1rem .42rem;
    border-radius: .35rem;
    color: var(--conversion-accent);
    background: #153b54;
    font-size: .8rem;
    white-space: nowrap;
}

.igv-total { background: #0c2748; }
.igv-total input { color: var(--conversion-accent); font-weight: 700; }
#igv-words { color: var(--conversion-muted); }
.igv-noscript { margin: 0; padding: 1rem 1.5rem; color: var(--conversion-muted); }

@media (max-width: 479px) {
    .igv-row { grid-template-columns: 1fr; }
}
