/* Visible on both light and dark surfaces. Keep focus rings inside clipped controls. */
body:not(.wp-admin) :where(a[href], button, input:not([type="hidden"]), select, textarea, summary, [tabindex]):focus-visible {
    outline: 3px solid #111827 !important;
    outline-offset: 3px !important;
    box-shadow: 0 0 0 6px #fff !important;
}
body:not(.wp-admin) .hu-header a:focus-visible,
body:not(.wp-admin) .hu-cats a:focus-visible {
    outline: 3px solid #fff !important;
    outline-offset: -4px !important;
    box-shadow: none !important;
}
body:not(.wp-admin) .hu-cats .hu-blog-link:focus-visible,
body:not(.wp-admin) .hu-search :is(input, select, button):focus-visible {
    outline: 3px solid #111827 !important;
    outline-offset: -4px !important;
    box-shadow: none !important;
}
.hu-cats a.hu-blog-link { color: #111827 !important; }
body:not(.wp-admin) :where(a[href], button, input, select, textarea, summary, [tabindex]) {
    scroll-margin-block: 150px 24px;
}
.hu-a11y-skip {
    position: fixed !important;
    top: 12px;
    left: 12px;
    transform: translateY(-180%);
    z-index: 2147483646;
    background: #fff;
    color: #111827 !important;
    padding: 12px 18px;
    border: 2px solid #111827;
    border-radius: 4px;
    font: 700 16px/1.4 Arial, sans-serif;
    text-decoration: underline;
}
.hu-a11y-skip:focus { transform: none; }
.hu-a11y-sr-only {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}
/* The catalog sits on the site's dark background, while its cards are white. */
body.page-id-42754 #hup-count,
body.page-id-42754 .hup-page-gap { color: #e2e8f0 !important; }
.hup-stock { color: #15803d !important; }
body:not(.wp-admin) #page-container :is(.woocommerce-info, .woocommerce-message) { color: #132007 !important; }
body:not(.wp-admin) #page-container :is(.woocommerce-info, .woocommerce-message) a:not(.button) { color: #132007 !important; text-decoration: underline; }
body.single-product .product .summary .price,
body.single-product .product .summary .price * { color: #326500 !important; }
body.single-product .product .summary .stock.in-stock { color: #326500 !important; }
body.single-product .product .summary a:not(.button) { color: #326500 !important; text-decoration: underline; }
body.woocommerce-page .woocommerce-result-count,
body.woocommerce-page .woocommerce-pagination .page-numbers { color: #515151 !important; }
.vi-woo-orders-tracking-form-search-tracking-number-btnclick { background-color: #b91c1c !important; color: #fff !important; }
.wp-block-search__button { color: #333 !important; }
body.hu-a11y-arcade-policy .entry-content a { color: #326500 !important; text-decoration: underline; }
body.single-post .entry-content :is(p, li, td, th) a:not(.button) { color: #326500 !important; text-decoration: underline; }
/* Preserve the gate and its original yes/no actions, with readable button text. */
#evav_confirm_age { color: #111827 !important; }
#evav_not_confirm_age { color: #fff !important; }
#evav-overlay-wrap { overflow-y: auto !important; overscroll-behavior: contain; }
#evav-overlay { max-height: none; }
#evav-overlay-wrap :is(button, input, a):focus-visible {
    outline: 3px solid #fff !important;
    outline-offset: 3px !important;
    box-shadow: 0 0 0 6px #111827 !important;
}
@media (max-width: 600px) {
    .hu-header { flex-wrap: wrap !important; gap: 8px !important; min-height: 118px !important; }
    .hu-header .hu-logo { order: 1; }
    .hu-header .hu-location { order: 2; min-width: 44px; min-height: 44px; justify-content: center; }
    .hu-header .hu-right { order: 3; margin-left: auto; }
    .hu-header .hu-search { order: 4; flex: 0 0 100%; width: 100%; max-width: none; height: 42px; }
    .hu-header .hu-search input { font-size: 16px; }
    .hu-cats { top: 118px !important; }
    body:not(.wp-admin) :where(a[href], button, input, select, textarea, summary, [tabindex]) { scroll-margin-top: 190px; }
}
.hu-store-info .hu-a11y-map-button { margin-right: 8px; margin-bottom: 8px; }
.hu-age-badge { color: #111827 !important; }
#hu-age-modal-backdrop .hu-age-head { background-color: #117537 !important; }
.hu-a11y-upload-label { display: block; color: #111827; font-weight: 700; margin-bottom: 8px; }
#hu-age-modal-backdrop { overscroll-behavior: contain; }
.woocommerce-EditAccountForm fieldset.hu-age-account-panel {
    background: #111a13 !important;
    color: #f5f5f5 !important;
    border-color: #6b776d !important;
}
.woocommerce-EditAccountForm .hu-age-account-panel :is(legend, p, strong) { color: #f5f5f5 !important; }
.woocommerce-EditAccountForm .hu-age-account-panel legend { background: #111a13; }
.woocommerce-EditAccountForm .hu-age-account-panel a { color: #c7ff2f !important; text-decoration: underline; }
.hu-verification-page { max-width: 760px; margin: 24px auto; color: #111827; }
.hu-verification-page .hu-age-inline-box {
    padding: clamp(20px, 4vw, 32px);
    margin-bottom: 24px;
    border: 1px solid #64748b;
    border-radius: 16px;
    background: #fff;
    color: #111827;
}
.hu-verification-page :is(h2, h3, h4, p, label) { color: #111827 !important; }
.hu-verification-page a { color: #326500 !important; text-decoration: underline; }
.hu-verification-page .hu-age-note { padding: 16px 0; }
.hu-verification-page input[type="file"] { max-width: 100%; width: 100%; min-height: 44px; color: #111827; }
.hu-verification-page .hu-age-actions { margin-top: 20px; }
.hu-verification-page .hu-age-btn {
    display: inline-block;
    min-height: 44px;
    padding: 12px 24px;
    border: 2px solid #326500;
    border-radius: 24px;
    background: #c7ff2f;
    color: #111827 !important;
    font: inherit;
    font-weight: 700;
    cursor: pointer;
}
@media (forced-colors: active) {
    body:not(.wp-admin) :where(a[href], button, input, select, textarea, summary, [tabindex]):focus-visible {
        outline: 3px solid Highlight !important;
        box-shadow: none !important;
    }
}
