.wp-vindec {
    --vd-ink: #14201b;
    --vd-muted: #64736c;
    --vd-line: #dfe7e2;
    --vd-accent: #167451;
    --vd-accent-dark: #0d5138;
    --vd-surface: #f4f8f5;
    --vd-white: #fff;
    --vd-result-bg: #edf3ef;
    --vd-result-border: #cbd8d0;
    --vd-result-headline: #fff;
    --vd-result-subline: #d1ddd7;
    --vd-result-rule: #d8e2dc;
    --vd-form-bg: linear-gradient(145deg, #f8fbf9 0%, #edf5f0 100%);
    --vd-form-border: #d5e2da;
    --vd-form-shadow: rgba(20, 32, 27, .06);
    --vd-btn-primary: #19825b;
    --vd-btn-primary-dark: #0f6545;
    --vd-btn-text: #ffffff;
    --vd-btn-text-hover: #ffffff;
    --vd-btn-primary-shadow: 0 7px 16px rgba(15, 101, 69, .22);
    --vd-btn-primary-shadow-hover: 0 10px 22px rgba(15, 101, 69, .3);
    --vd-btn-secondary: #6f7a73;
    --vd-btn-secondary-dark: #495450;
    --vd-btn-text-secondary: #ffffff;
    --vd-btn-secondary-shadow: 0 6px 15px rgba(73, 84, 80, .22);
    --vd-btn-secondary-shadow-hover: 0 10px 22px rgba(73, 84, 80, .28);
    --vd-result-heading-bg: linear-gradient(140deg, #101d18 0%, #18342a 58%, #194d38 100%);
    --vd-result-heading-pattern: rgba(72, 173, 127, .22);
    --vd-result-heading-blob: rgba(255, 255, 255, .08);
    --vd-toggle-bg: linear-gradient(135deg, #1d5db3, #143f81);
    --vd-toggle-shadow: 0 7px 16px rgba(20, 63, 129, .2);
    --vd-toggle-shadow-hover: 0 10px 22px rgba(20, 63, 129, .3);
    --vd-label: #34433c;
    --vd-control-bg: rgba(255, 255, 255, .96);
    --vd-control-border: #b8c8bf;
    --vd-control-focus-ring: rgba(22, 116, 81, .14);
    --vd-card-border: #dbe4de;
    --vd-card-heading-bg: #fff;
    --vd-card-heading-border: #e4eae6;
    --vd-card-count-bg: #fff;
    --vd-card-count-border: #dce5df;
    --vd-subcategory-border: #dce4df;
    --vd-subcategory-count: #89958f;
    --vd-datum-bg: #f7f9f8;
    --vd-datum-border: #edf1ee;
    --vd-datum-label: #75827c;
    --vd-datum-value: #1b2b24;
    --vd-saved-border: #d8e2dc;
    --vd-saved-title: #1f2f2a;
    --vd-saved-label: #6b7872;
    --vd-saved-value: #1d2d27;
    --vd-saved-hover-shadow: 0 8px 16px rgba(15, 101, 69, .16);
    --vd-card-accent-1: #197d58;
    --vd-card-accent-2: #3876a8;
    --vd-card-accent-3: #b16427;
    --vd-card-accent-4: #6d60ad;
    --vd-card-accent-5: #a13f55;
    --vd-card-accent-6: #4d7184;
    --vd-card-accent-7: #626c67;
    --vd-card-accent-8: #6d3b73;
    --vd-card-soft-1: #e5f4eb;
    --vd-card-soft-2: #e9f2fa;
    --vd-card-soft-3: #fbefe5;
    --vd-card-soft-4: #f0edfa;
    --vd-card-soft-5: #faecef;
    --vd-card-soft-6: #eaf2f5;
    --vd-card-soft-7: #eef1ef;
    --vd-card-soft-8: #f5edf7;
    color: var(--vd-ink);
    font-family: inherit;
    margin: 2rem auto;
    max-width: 74rem;
}

.wp-vindec--theme {
    --vd-ink: var(--global-palette3, var(--wp--preset--color--contrast, var(--wp--style--color--text, #14201b)));
    --vd-muted: var(--global-palette5, var(--wp--preset--color--contrast-2, #64736c));
    --vd-line: var(--global-palette7, var(--wp--preset--color--tertiary, #dfe7e2));
    --vd-accent: var(--global-palette-highlight, var(--global-palette1, var(--wp--preset--color--secondary, #167451)));
    --vd-accent-dark: var(--global-palette-highlight-alt, var(--global-palette2, var(--wp--preset--color--primary, #0d5138)));
    --vd-surface: var(--global-palette8, var(--wp--preset--color--base-2, #f4f8f5));
    --vd-white: var(--global-palette9, var(--wp--preset--color--base, var(--wp--preset--color--background, #fff)));
    --vd-result-bg: var(--global-palette8, var(--wp--preset--color--background, #edf3ef));
    --vd-result-border: var(--global-palette7, var(--vd-line));
    --vd-result-rule: var(--vd-line);
    --vd-form-bg: linear-gradient(145deg, var(--vd-white) 0%, var(--vd-surface) 100%);
    --vd-form-border: var(--vd-line);
    --vd-form-shadow: rgba(20, 32, 27, .08);
    --vd-btn-primary: var(--global-palette-btn-bg, var(--vd-accent));
    --vd-btn-primary-dark: var(--global-palette-btn-bg-hover, var(--vd-accent-dark));
    --vd-btn-text: var(--global-palette-btn, var(--vd-white));
    --vd-btn-text-hover: var(--global-palette-btn-hover, var(--vd-btn-text));
    --vd-btn-primary-shadow: 0 7px 16px rgba(20, 32, 27, .16);
    --vd-btn-primary-shadow-hover: 0 10px 22px rgba(20, 32, 27, .22);
    --vd-btn-secondary: var(--global-palette4, var(--vd-accent-dark));
    --vd-btn-secondary-dark: var(--vd-ink);
    --vd-btn-text-secondary: var(--global-palette-btn, var(--vd-white));
    --vd-btn-secondary-shadow: 0 6px 15px rgba(20, 32, 27, .16);
    --vd-btn-secondary-shadow-hover: 0 10px 22px rgba(20, 32, 27, .22);
    --vd-result-heading-bg: linear-gradient(140deg, var(--vd-accent-dark) 0%, var(--vd-accent) 100%);
    --vd-result-heading-pattern: rgba(255, 255, 255, .14);
    --vd-result-heading-blob: rgba(255, 255, 255, .18);
    --vd-result-headline: var(--global-palette-btn, var(--vd-white));
    --vd-result-subline: var(--global-palette-btn, var(--vd-white));
    --vd-toggle-bg: linear-gradient(135deg, var(--vd-btn-primary), var(--vd-btn-primary-dark));
    --vd-toggle-shadow: var(--vd-btn-primary-shadow);
    --vd-toggle-shadow-hover: var(--vd-btn-primary-shadow-hover);
    --vd-label: var(--global-palette4, var(--vd-ink));
    --vd-control-bg: var(--global-palette9, var(--vd-white));
    --vd-control-border: var(--global-palette6, var(--vd-line));
    --vd-control-focus-ring: rgba(20, 32, 27, .14);
    --vd-card-border: var(--global-palette7, var(--vd-line));
    --vd-card-heading-bg: var(--global-palette9, var(--vd-white));
    --vd-card-heading-border: var(--global-palette7, var(--vd-line));
    --vd-card-count-bg: var(--global-palette9, var(--vd-white));
    --vd-card-count-border: var(--global-palette7, var(--vd-line));
    --vd-subcategory-border: var(--global-palette7, var(--vd-line));
    --vd-subcategory-count: var(--global-palette6, var(--vd-muted));
    --vd-datum-bg: var(--global-palette8, var(--vd-surface));
    --vd-datum-border: var(--global-palette7, var(--vd-line));
    --vd-datum-label: var(--global-palette5, var(--vd-muted));
    --vd-datum-value: var(--global-palette4, var(--vd-ink));
    --vd-saved-border: var(--global-palette7, var(--vd-line));
    --vd-saved-title: var(--global-palette3, var(--vd-ink));
    --vd-saved-label: var(--global-palette5, var(--vd-muted));
    --vd-saved-value: var(--global-palette4, var(--vd-ink));
    --vd-saved-hover-shadow: var(--vd-btn-primary-shadow);
    --vd-card-accent-1: var(--global-palette1, var(--vd-accent));
    --vd-card-accent-2: var(--global-palette2, var(--vd-accent-dark));
    --vd-card-accent-3: var(--global-palette4, var(--vd-ink));
    --vd-card-accent-4: var(--global-palette5, var(--vd-muted));
    --vd-card-accent-5: var(--global-palette1, var(--vd-accent));
    --vd-card-accent-6: var(--global-palette2, var(--vd-accent-dark));
    --vd-card-accent-7: var(--global-palette6, var(--vd-muted));
    --vd-card-accent-8: var(--global-palette4, var(--vd-ink));
    --vd-card-soft-1: var(--global-palette8, var(--vd-surface));
    --vd-card-soft-2: var(--global-palette8, var(--vd-surface));
    --vd-card-soft-3: var(--global-palette8, var(--vd-surface));
    --vd-card-soft-4: var(--global-palette8, var(--vd-surface));
    --vd-card-soft-5: var(--global-palette8, var(--vd-surface));
    --vd-card-soft-6: var(--global-palette8, var(--vd-surface));
    --vd-card-soft-7: var(--global-palette8, var(--vd-surface));
    --vd-card-soft-8: var(--global-palette8, var(--vd-surface));
}

.wp-vindec * { box-sizing: border-box; }

.wp-vindec__sr-only {
    border: 0 !important;
    clip: rect(1px, 1px, 1px, 1px) !important;
    clip-path: inset(50%) !important;
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    width: 1px !important;
    white-space: nowrap !important;
}

.wp-vindec [data-vd-card-actions][hidden],
.wp-vindec .wp-vindec__category[hidden] {
    display: none !important;
}

.wp-vindec__form {
    align-items: end;
    background: var(--vd-form-bg);
    border: 1px solid var(--vd-form-border);
    border-radius: 18px;
    box-shadow: 0 10px 30px var(--vd-form-shadow);
    display: grid;
    gap: 1rem;
    grid-template-columns: minmax(16ch, 1fr) minmax(11ch, 11ch) minmax(11ch, 11ch) auto;
    padding: 1.25rem;
}

.wp-vindec__form--decoded {
    grid-template-columns: minmax(0, 1fr);
}

.wp-vindec__form--decoded .wp-vindec__field--vin {
    grid-column: 1 / -1;
}

.wp-vindec__form--decoded .wp-vindec__field--year {
    display: none !important;
}

.wp-vindec__form-actions {
    align-items: center;
    display: flex;
    gap: .65rem;
    justify-content: flex-end;
}

.wp-vindec__form-actions button {
    white-space: nowrap;
}

.wp-vindec__form-actions .wp-vindec__button-save {
    background: linear-gradient(135deg, var(--vd-btn-primary), var(--vd-btn-primary-dark));
    border: 0;
    border-radius: 10px;
    box-shadow: var(--vd-btn-primary-shadow);
    color: var(--vd-btn-text);
    cursor: pointer;
    font: inherit;
    font-weight: 750;
    min-height: 48px;
    padding: .7rem 1.3rem;
    transition: transform .18s ease, box-shadow .18s ease;
}

.wp-vindec__form-actions .wp-vindec__button-save:hover,
.wp-vindec__form-actions .wp-vindec__button-save:focus {
    box-shadow: var(--vd-btn-primary-shadow-hover);
    color: var(--vd-btn-text-hover);
    transform: translateY(-1px);
}

.wp-vindec__field label {
    color: var(--vd-label);
    display: block;
    font-size: .8rem;
    font-weight: 750;
    letter-spacing: .01em;
    margin-bottom: .45rem;
}

.wp-vindec__field input {
    background: var(--vd-control-bg);
    border: 1px solid var(--vd-control-border);
    border-radius: 10px;
    box-shadow: inset 0 1px 2px rgba(20, 32, 27, .04);
    color: var(--vd-ink);
    font: inherit;
    min-height: 48px;
    outline: none;
    padding: .7rem .85rem;
    text-transform: uppercase;
    transition: border-color .18s ease, box-shadow .18s ease;
    min-width: 26ch;
    width: min(100%, 30ch);
}

.wp-vindec__field--year input {
    min-width: 9ch;
    text-transform: none;
    text-align: center;
    width: min(100%, 12ch);
}

.wp-vindec__field--year {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-self: center;
    text-align: center;
}

.wp-vindec__field--year label {
    white-space: nowrap;
    margin-bottom: .45rem;
}

.wp-vindec__field--year {
    grid-column: 2 / span 2;
}

.wp-vindec__vin-input-row {
    display: flex;
    gap: .6rem;
}

.wp-vindec__vin-input-row input {
    flex: 1;
    min-width: 0;
}

.wp-vindec__vin-input-row .wp-vindec__button-save {
    flex: 0 0 auto;
}

.wp-vindec__field--vin input {
    min-width: 20ch;
}

.wp-vindec__field input:focus {
    border-color: var(--vd-accent);
    box-shadow: 0 0 0 3px var(--vd-control-focus-ring);
}

.wp-vindec__form button {
    background: linear-gradient(135deg, var(--vd-btn-primary), var(--vd-btn-primary-dark));
    border: 0;
    border-radius: 10px;
    box-shadow: var(--vd-btn-primary-shadow);
    color: var(--vd-btn-text);
    cursor: pointer;
    font: inherit;
    font-weight: 750;
    min-height: 48px;
    padding: .7rem 1.3rem;
    transition: transform .18s ease, box-shadow .18s ease;
}

.wp-vindec__form button:hover,
.wp-vindec__form button:focus {
    box-shadow: var(--vd-btn-primary-shadow-hover);
    color: var(--vd-btn-text-hover);
    transform: translateY(-1px);
}

.wp-vindec__result {
    background: var(--vd-result-bg);
    border: 1px solid var(--vd-result-border);
    border-radius: 24px;
    box-shadow: 0 24px 60px rgba(16, 35, 27, .13), 0 3px 10px rgba(16, 35, 27, .06);
    margin-top: 1.35rem;
    overflow: hidden;
    position: relative;
}

.wp-vindec__result::before {
    background: var(--vd-result-heading-pattern);
    background: linear-gradient(90deg, color-mix(in srgb, var(--vd-accent) 62%, transparent), color-mix(in srgb, var(--vd-accent) 44%, transparent), color-mix(in srgb, var(--vd-accent) 24%, transparent));
    content: "";
    height: 5px;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 2;
}

.wp-vindec__result-heading {
    align-items: center;
    background: radial-gradient(circle at 85% 15%, var(--vd-result-heading-pattern), transparent 28%), var(--vd-result-heading-bg);
    color: var(--vd-result-headline);
    display: flex;
    gap: 1.5rem;
    justify-content: space-between;
    min-height: 160px;
    padding: 2rem 2.1rem 1.8rem;
    position: relative;
}

.wp-vindec__result-heading::after {
    border: 1px solid var(--vd-result-heading-blob);
    border-radius: 50%;
    content: "";
    height: 180px;
    position: absolute;
    right: 8%;
    top: -105px;
    width: 180px;
}

.wp-vindec__result-heading > * { position: relative; z-index: 1; }
.wp-vindec__result-heading h3 { color: inherit; font-size: clamp(1.55rem, 3vw, 2.25rem); letter-spacing: -.025em; line-height: 1.1; margin: .3rem 0; }

.wp-vindec__result-heading [data-vd-result-focus]:focus,
.wp-vindec__notice[data-vd-notice-focus]:focus {
    outline: 3px solid currentColor;
    outline-offset: 4px;
}
.wp-vindec__vin { color: inherit; font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-size: .88rem; letter-spacing: .08em; margin: .55rem 0 0; }

.wp-vindec__categories {
    display: grid;
    gap: 1.1rem;
    grid-template-columns: 1fr;
    grid-auto-columns: 1fr;
    grid-auto-flow: row;
    padding: 1.25rem;
}

.wp-vindec__categories[data-vd-category-state] .wp-vindec__category {
    width: 100%;
}

.wp-vindec__details-actions {
    margin: 0 1.25rem 1rem;
    position: relative;
    text-align: right;
    z-index: 1;
}

.wp-vindec__details-actions:empty {
    display: none;
}

.wp-vindec__button-details-toggle {
    align-items: center;
    color: var(--vd-btn-text);
    display: inline-flex;
    font: inherit;
    font-weight: 700;
    line-height: 1;
    background: var(--vd-toggle-bg);
    border: 0;
    border-radius: 9px;
    box-shadow: var(--vd-toggle-shadow);
    cursor: pointer;
    min-height: 40px;
    padding: .45rem .95rem;
    transition: transform .18s ease, box-shadow .18s ease;
    text-decoration: none;
}

.wp-vindec__button-details-toggle:hover,
.wp-vindec__button-details-toggle:focus {
    box-shadow: var(--vd-toggle-shadow-hover);
    color: var(--vd-btn-text-hover);
    transform: translateY(-1px);
    text-decoration: none;
}

.wp-vindec__cards-actions {
    margin: 0 1.25rem .9rem;
    position: relative;
    text-align: center;
    z-index: 1;
}

.wp-vindec__button-cards-toggle {
    align-items: center;
    color: var(--vd-btn-text);
    display: inline-flex;
    font: inherit;
    font-weight: 700;
    line-height: 1;
    background: var(--vd-toggle-bg);
    border: 0;
    border-radius: 9px;
    box-shadow: var(--vd-toggle-shadow);
    cursor: pointer;
    min-height: 40px;
    padding: .45rem .95rem;
    transition: transform .18s ease, box-shadow .18s ease;
}

.wp-vindec__button-cards-toggle:hover,
.wp-vindec__button-cards-toggle:focus {
    box-shadow: var(--vd-toggle-shadow-hover);
    color: var(--vd-btn-text-hover);
    transform: translateY(-1px);
}

.wp-vindec__categories[data-vd-card-state="collapsed"] .wp-vindec__category--overflow {
    display: none;
}

.wp-vindec__categories[data-vd-card-state="expanded"] .wp-vindec__category--overflow {
    display: block;
}

.wp-vindec__source {
    font-weight: 650;
}

.wp-vindec__result--selected .wp-vindec__datum--optional {
    display: none;
}

.wp-vindec__category {
    --vd-card-accent: var(--vd-card-accent-1);
    --vd-card-soft: var(--vd-card-soft-1);
    --vd-card-title-base: #0f6846;
    --vd-card-title: var(--vd-card-title-base);
    align-self: start;
    background: var(--vd-white);
    border: 1px solid var(--vd-card-border);
    border-radius: 16px;
    box-shadow: 0 8px 22px rgba(20, 32, 27, .055);
    min-width: 0;
    overflow: hidden;
    transition: box-shadow .2s ease, transform .2s ease;
}

.wp-vindec__category:hover { box-shadow: 0 13px 30px rgba(20, 32, 27, .09); transform: translateY(-2px); }
.wp-vindec__category--2 { --vd-card-accent: var(--vd-card-accent-2); --vd-card-soft: var(--vd-card-soft-2); }
.wp-vindec__category--3 { --vd-card-accent: var(--vd-card-accent-3); --vd-card-soft: var(--vd-card-soft-3); }
.wp-vindec__category--4 { --vd-card-accent: var(--vd-card-accent-4); --vd-card-soft: var(--vd-card-soft-4); }
.wp-vindec__category--5 { --vd-card-accent: var(--vd-card-accent-5); --vd-card-soft: var(--vd-card-soft-5); }
.wp-vindec__category--6 { --vd-card-accent: var(--vd-card-accent-6); --vd-card-soft: var(--vd-card-soft-6); }
.wp-vindec__category--7 { --vd-card-accent: var(--vd-card-accent-7); --vd-card-soft: var(--vd-card-soft-7); }
.wp-vindec__category--8 { --vd-card-accent: var(--vd-card-accent-8); --vd-card-soft: var(--vd-card-soft-8); }

.wp-vindec__category--vehicle-overview { --vd-card-title-base: #0f6846; }
.wp-vindec__category--dimensions-and-capacity { --vd-card-title-base: #245f8f; }
.wp-vindec__category--engine-and-fuel { --vd-card-title-base: #8a4518; }
.wp-vindec__category--electric-and-hybrid { --vd-card-title-base: #554294; }
.wp-vindec__category--safety-and-driver-assistance { --vd-card-title-base: #8a3048; }
.wp-vindec__category--specialized-vehicles { --vd-card-title-base: #365e70; }
.wp-vindec__category--decode-and-nhtsa-metadata { --vd-card-title-base: #4d5551; }
.wp-vindec__category--additional-fields { --vd-card-title-base: #6d3b73; }

@supports (color: color-mix(in srgb, #000 50%, #fff)) {
    .wp-vindec--theme .wp-vindec__category {
        --vd-card-title: color-mix(in srgb, var(--vd-card-title-base) 55%, var(--vd-ink));
    }
}

.wp-vindec__category-heading {
    align-items: center;
    background: linear-gradient(115deg, var(--vd-card-soft), var(--vd-card-heading-bg) 75%);
    border-bottom: 1px solid var(--vd-card-heading-border);
    display: grid;
    gap: .8rem;
    grid-template-columns: minmax(0, 1fr) auto;
    padding: 1rem 1.05rem;
}

.wp-vindec__category-copy { min-width: 0; }
.wp-vindec__category-eyebrow { color: var(--vd-card-title); font-size: .61rem; font-weight: 850; letter-spacing: .12em; margin: 0 0 .2rem; text-transform: uppercase; }
.wp-vindec__category-title { align-items: center; display: flex; flex-wrap: nowrap; gap: .5rem; min-width: 0; }
.wp-vindec__category-heading h4 { color: var(--vd-card-title); flex: 0 1 auto; font-size: 1.08rem; font-weight: 800; line-height: 1.25; margin: 0; min-width: 0; overflow-wrap: anywhere; }
.wp-vindec__category-icons { align-items: center; align-self: center; color: var(--vd-card-title); display: inline-flex; flex: 0 0 auto; flex-wrap: nowrap; gap: .28rem; line-height: 1; transform: translateY(-.06em); }
.wp-vindec__category-icon { display: block; height: 1.3rem; overflow: visible; width: 1.3rem; }
.wp-vindec__category-count { background: var(--vd-card-count-bg); border: 1px solid var(--vd-card-count-border); border-radius: 999px; color: var(--vd-muted); font-size: .68rem; font-weight: 750; padding: .3rem .55rem; white-space: nowrap; }
.wp-vindec__category-body { padding: .2rem 1.05rem .8rem; }
.wp-vindec__subcategory + .wp-vindec__subcategory { border-top: 1px dashed var(--vd-subcategory-border); margin-top: .25rem; padding-top: .25rem; }

.wp-vindec__subcategory-pair,
.wp-vindec__subcategory-pair--mechanical {
    display: grid;
    gap: .75rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    min-width: 0;
    width: 100%;
}

.wp-vindec__category-body > .wp-vindec__subcategory + .wp-vindec__subcategory-pair,
.wp-vindec__category-body > .wp-vindec__subcategory-pair + .wp-vindec__subcategory,
.wp-vindec__category-body > .wp-vindec__subcategory-pair + .wp-vindec__subcategory-pair {
    border-top: 1px dashed var(--vd-subcategory-border);
    margin-top: .25rem;
    padding-top: .25rem;
}

.wp-vindec__subcategory-pair > .wp-vindec__subcategory {
    min-width: 0;
}

.wp-vindec__subcategory-pair > .wp-vindec__subcategory + .wp-vindec__subcategory {
    border-top: 0;
    margin-top: 0;
    padding-top: 0;
}

.wp-vindec__subcategory-heading {
    align-items: center;
    display: flex;
    gap: .7rem;
    justify-content: space-between;
    padding-top: .75rem;
}

.wp-vindec__subcategory-heading h5 { color: var(--vd-card-accent); font-size: .67rem; font-weight: 850; letter-spacing: .075em; margin: 0; overflow-wrap: anywhere; text-transform: uppercase; }
.wp-vindec__subcategory-heading span { color: var(--vd-subcategory-count); font-size: .63rem; white-space: nowrap; }

.wp-vindec__grid {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    margin: 0;
    padding: .6rem 0 .35rem;
}

.wp-vindec__datum {
    background: var(--vd-datum-bg);
    border: 1px solid var(--vd-datum-border);
    border-radius: 9px;
    flex: 1 1 17rem;
    min-width: 0;
    padding: .65rem .7rem;
}

.wp-vindec__datum dt { color: var(--vd-datum-label); font-size: .62rem; font-weight: 800; letter-spacing: .045em; line-height: 1.35; margin: 0 0 .18rem; text-transform: uppercase; }
.wp-vindec__datum dd { color: var(--vd-datum-value); font-size: .88rem; font-weight: 700; line-height: 1.35; margin: 0; overflow-wrap: anywhere; }
.wp-vindec__notice { border-radius: 10px; margin-top: 1rem; padding: .9rem 1rem; }
.wp-vindec__notice--error { background: #fff0f0; border: 1px solid #e7bcbc; color: #7a2424; }
.wp-vindec__notice--warning { background: #fff8df; border: 1px solid #ead694; color: #634c00; margin: 1rem 1.25rem 0; }
.wp-vindec__notice--success { background: #e9f8ed; border: 1px solid #a9dcaf; color: #196e34; }
.wp-vindec__decode-guidance.wp-vindec__notice { margin: .95rem 0 0; }
.wp-vindec__decode-guidance[hidden] { display: none !important; }
.wp-vindec__data-notices {
    background: var(--vd-surface);
    border: 1px solid var(--vd-line);
    border-left: 4px solid var(--vd-accent);
    border-radius: 10px;
    color: var(--vd-ink);
    font-size: .78rem;
    line-height: 1.6;
    margin: 0 0 .95rem;
    overflow-wrap: anywhere;
    padding: .85rem 1rem;
}
.wp-vindec__data-notices p { margin: 0; }
.wp-vindec__data-notices a { color: var(--vd-accent-dark); font-weight: 750; text-decoration: underline; text-underline-offset: .12em; }
.wp-vindec__data-notices a:focus-visible { outline: 2px solid var(--vd-accent); outline-offset: 2px; }
.wp-vindec__footnote { border-top: 1px solid var(--vd-result-rule); color: var(--vd-muted); font-size: .72rem; line-height: 1.55; margin: 0; padding: .9rem 1.4rem 1.05rem; text-align: center; }

.wp-vindec__saved-list {
    background: var(--vd-white);
    border: 1px solid var(--vd-saved-border);
    border-radius: 16px;
    box-shadow: 0 8px 20px rgba(20, 32, 27, .055);
    margin-top: .95rem;
    padding: 1rem;
}

.wp-vindec__saved-list h4 {
    color: var(--vd-saved-title);
    margin: 0 0 .5rem;
}

.wp-vindec__saved-list-header {
    align-items: center;
    display: grid;
    gap: .65rem;
    grid-template-columns: 1fr auto;
}

.wp-vindec__saved-list-title {
    min-width: 0;
}

.wp-vindec__saved-list-title,
.wp-vindec__saved-list-actions {
    align-items: center;
    display: flex;
}

.wp-vindec__saved-list-actions {
    gap: .55rem;
    justify-content: flex-end;
}

.wp-vindec__saved-list-actions > button {
    min-width: fit-content;
}

.wp-vindec__saved-list ul {
    display: grid;
    gap: .55rem;
}

.wp-vindec__saved-list-empty {
    color: var(--vd-muted);
    margin: 0 0 .55rem;
}

.wp-vindec__saved-list a {
    text-decoration: none;
    width: 100%;
}

.wp-vindec__saved-list ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

.wp-vindec__saved-list li + li {
    margin-top: .55rem;
}

.wp-vindec__saved-list a {
    background: var(--vd-white);
    border: 1px solid var(--vd-result-rule);
    border-radius: 10px;
    color: var(--vd-accent-dark);
    display: block;
    font-size: .93rem;
    font-weight: 650;
    overflow-wrap: anywhere;
    padding: .65rem .75rem;
    text-decoration: none;
    transition: border-color .15s ease, box-shadow .15s ease;
}

.wp-vindec__saved-list a:hover,
.wp-vindec__saved-list a:focus {
    border-color: var(--vd-accent);
    box-shadow: var(--vd-saved-hover-shadow);
}

.wp-vindec__saved-item {
    display: flex;
    align-items: center;
    gap: .65rem;
}

.wp-vindec__saved-item a {
    flex: 1;
}

.wp-vindec__saved-item-row {
    align-items: flex-start;
    display: grid;
    gap: .45rem;
    grid-template-columns: minmax(0, 1fr) minmax(11ch, 11ch);
}

.wp-vindec__saved-item-row + .wp-vindec__saved-item-row {
    margin-top: .45rem;
}

.wp-vindec__saved-item-row--empty {
    display: none !important;
    margin: 0 !important;
}

.wp-vindec__saved-item-row-1 {
    margin-top: 0;
}

.wp-vindec__saved-item-row-1 .wp-vindec__saved-item-cell--primary {
    color: var(--vd-ink);
    font-weight: 650;
}

.wp-vindec__saved-item-cell {
    min-width: 0;
    overflow-wrap: anywhere;
}

.wp-vindec__saved-item-cell--placeholder {
    color: transparent;
    min-width: 11ch;
}

.wp-vindec__saved-item-engine-grid {
    display: grid;
    gap: .35rem;
}

.wp-vindec__saved-item-engine-item {
    align-items: baseline;
    display: grid;
    gap: .1rem .5rem;
    grid-template-columns: minmax(11rem, 1fr) minmax(0, 2fr);
}

.wp-vindec__saved-item-label {
    color: var(--vd-saved-label);
    font-size: .62rem;
    font-weight: 780;
    letter-spacing: .03em;
    text-transform: uppercase;
    white-space: nowrap;
}

.wp-vindec__saved-item-value {
    color: var(--vd-saved-value);
    font-size: .9rem;
    font-weight: 700;
    line-height: 1.35;
    word-break: break-word;
}

.wp-vindec__button-save {
    background: linear-gradient(135deg, var(--vd-btn-primary), var(--vd-btn-primary-dark));
    border: 0;
    border-radius: 10px;
    box-shadow: var(--vd-btn-primary-shadow);
    color: var(--vd-btn-text);
    cursor: pointer;
    font: inherit;
    font-size: .84rem;
    font-weight: 750;
    min-height: 40px;
    padding: .42rem 1rem;
    transition: transform .18s ease, box-shadow .18s ease;
}

.wp-vindec__button-save:hover,
.wp-vindec__button-save:focus {
    box-shadow: var(--vd-btn-primary-shadow-hover);
    color: var(--vd-btn-text-hover);
    transform: translateY(-1px);
}

.wp-vindec__button-remove {
    width: auto;
}

.wp-vindec__button-remove.wp-vindec__button-remove--primary {
    background: linear-gradient(135deg, var(--vd-btn-primary), var(--vd-btn-primary-dark));
    border: 0;
    border-radius: 10px;
    box-shadow: var(--vd-btn-primary-shadow);
    color: var(--vd-btn-text);
    cursor: pointer;
    font: inherit;
    font-size: .84rem;
    font-weight: 750;
    min-height: 40px;
    padding: .42rem 1rem;
    margin-left: 10px;
    transition: transform .18s ease, box-shadow .18s ease;
}

.wp-vindec__button-remove.wp-vindec__button-remove--primary:hover,
.wp-vindec__button-remove.wp-vindec__button-remove--primary:focus {
    box-shadow: var(--vd-btn-primary-shadow-hover);
    color: var(--vd-btn-text-hover);
    transform: translateY(-1px);
}

.wp-vindec__button-save-hidden {
    display: none !important;
}

@media (max-width: 850px) {
    .wp-vindec__categories { grid-template-columns: 1fr; }
}

@media (max-width: 700px) {
    .wp-vindec__form {
        display: flex;
        flex-direction: column;
        grid-template-columns: 1fr;
    }

    .wp-vindec__field {
        width: 100%;
    }

    .wp-vindec__field--year {
        justify-self: stretch;
        text-align: left;
    }

    .wp-vindec__field--year label {
        text-align: left;
    }

    .wp-vindec__field--year input {
        justify-self: stretch;
        width: 100%;
        text-align: center;
    }

    .wp-vindec__vin-input-row {
        align-items: stretch;
        display: flex;
        flex-direction: column;
    }

    .wp-vindec__vin-input-row input,
    .wp-vindec__vin-input-row button,
    .wp-vindec__vin-input-row .wp-vindec__button-save {
        flex: 0 0 auto;
        min-width: 0;
        width: 100%;
    }

    .wp-vindec__result { border-radius: 18px; }
    .wp-vindec__result-heading { align-items: flex-start; flex-direction: column; min-height: 0; padding: 1.65rem 1.3rem 1.45rem; }
    .wp-vindec__categories { gap: .85rem; padding: .85rem; }

    .wp-vindec__subcategory-pair,
    .wp-vindec__subcategory-pair--mechanical {
        gap: 0;
        grid-template-columns: minmax(0, 1fr);
    }

    .wp-vindec__subcategory-pair > .wp-vindec__subcategory + .wp-vindec__subcategory {
        border-top: 1px dashed var(--vd-subcategory-border);
        margin-top: .25rem;
        padding-top: .25rem;
    }
}

@media (max-width: 460px) {
    .wp-vindec__category-heading { align-items: start; grid-template-columns: 1fr; }
    .wp-vindec__category-count { grid-column: 1; justify-self: start; }
    .wp-vindec__grid {
        flex-direction: column;
        gap: .45rem;
    }
    .wp-vindec__datum {
        flex: 1 1 100%;
        min-width: 0;
        width: 100%;
    }
    .wp-vindec__saved-item-row {
        grid-template-columns: 1fr;
    }
    .wp-vindec__saved-item-row--empty .wp-vindec__saved-item-cell--placeholder,
    .wp-vindec__saved-item-cell--placeholder {
        display: none;
    }
    .wp-vindec__saved-item-engine-item {
        gap: .15rem;
        grid-template-columns: 1fr;
    }
    .wp-vindec__saved-item {
        align-items: stretch;
        flex-direction: column;
    }
    .wp-vindec__button-remove {
        width: 100%;
    }
    .wp-vindec__button-remove.wp-vindec__button-remove--primary {
        margin-left: 0;
    }
    .wp-vindec__result-heading h3 {
        font-size: 1.3rem;
    }
    .wp-vindec__result {
        border-radius: 16px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .wp-vindec__category,
    .wp-vindec__form button { transition: none; }
}
