body.hrc-design-system-v1.hrc-family-public {
    --hrc-control-height: 44px;
    --hrc-public-header-height: 72px;
    --hrc-color-brand-strong: var(--hrc-brand-700);
    --hrc-color-on-brand: var(--hrc-neutral-0);
    --hrc-font-weight-bold: var(--hrc-weight-bold);
    min-width: 0;
    margin: 0;
    background: var(--hrc-color-bg-app);
    color: var(--hrc-color-text);
    font-family: var(--hrc-font-sans);
    line-height: var(--hrc-leading-normal);
}

body.hrc-design-system-v1.hrc-family-public,
body.hrc-design-system-v1.hrc-family-public *,
body.hrc-design-system-v1.hrc-family-public *::before,
body.hrc-design-system-v1.hrc-family-public *::after {
    box-sizing: border-box;
}

body.hrc-design-system-v1.hrc-family-public :where(img, svg, video, canvas) {
    max-width: 100%;
}

body.hrc-design-system-v1.hrc-family-public :where(
    .tcv-header,
    .public-community-header,
    .public-header,
    .site-header
) {
    border-color: var(--hrc-color-border);
    background-color: var(--hrc-color-surface);
    color: var(--hrc-color-text);
}

body.hrc-design-system-v1.hrc-family-public :where(
    main,
    .container,
    .section-inner,
    .jobs-shell,
    .company-shell,
    .public-community-main
) {
    min-width: 0;
}

body.hrc-design-system-v1.hrc-family-public :where(
    .job-card,
    .company-card,
    .news-card,
    .gallery-card,
    .verify-card,
    .public-card,
    .filter-panel,
    .empty-state
) {
    min-width: 0;
    border-color: var(--hrc-color-border);
    border-radius: var(--hrc-radius-card);
    background: var(--hrc-color-surface);
    color: var(--hrc-color-text);
    box-shadow: var(--hrc-shadow-xs);
}

body.hrc-design-system-v1.hrc-family-public :where(
    button,
    .btn,
    .button,
    input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
    select,
    textarea
) {
    min-height: var(--hrc-control-height);
    border-radius: var(--hrc-radius-control);
}

body.hrc-design-system-v1.hrc-family-public :where(
    input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
    select,
    textarea
) {
    border-color: var(--hrc-color-border-strong);
    background: var(--hrc-color-surface);
    color: var(--hrc-color-text);
}

body.hrc-design-system-v1.hrc-family-public :where(input[type="checkbox"], input[type="radio"]) {
    flex: 0 0 20px;
    width: 20px;
    min-width: 20px;
    height: 20px;
    min-height: 20px;
    margin: 0;
    padding: 0;
    accent-color: var(--hrc-color-brand);
}

body.hrc-design-system-v1.hrc-family-public input[type="checkbox"] {
    border-radius: 5px;
}

body.hrc-design-system-v1.hrc-family-public input[type="radio"] {
    border-radius: 50%;
}

body.hrc-design-system-v1.hrc-family-public .tcv-nav[data-public-navigation] .tcv-actions .tcv-erp {
    min-height: 48px;
    display: inline-flex;
    align-items: center;
    padding: var(--hrc-space-1) var(--hrc-space-3);
    border: 1px solid color-mix(in srgb, var(--hrc-brand-300) 50%, transparent);
    border-radius: var(--hrc-radius-lg);
    color: var(--hrc-color-on-brand) !important;
    background: linear-gradient(135deg, var(--hrc-brand-800), var(--hrc-brand-600) 58%, var(--hrc-violet-600) 125%);
    text-decoration: none;
}

body.hrc-design-system-v1.hrc-family-public .tcv-erp-copy {
    display: grid;
    color: inherit;
    line-height: 1.05;
    text-align: left;
}

body.hrc-design-system-v1.hrc-family-public .tcv-erp-copy strong {
    color: inherit;
    font-size: 13px;
    font-weight: 900;
}

body.hrc-design-system-v1.hrc-family-public .tcv-erp-copy small {
    color: inherit;
    font-size: 10px;
    font-weight: var(--hrc-weight-bold);
}

body.hrc-design-system-v1.hrc-family-public :where(a, button, input, select, textarea):focus-visible {
    outline: var(--hrc-focus-width) solid var(--hrc-color-focus);
    outline-offset: var(--hrc-focus-offset);
    box-shadow: var(--hrc-focus-ring);
}

body.hrc-design-system-v1.hrc-family-public :where(.table-wrap, .table-responsive) {
    max-width: 100%;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
}

body.hrc-design-system-v1.hrc-family-public :where(.badge) {
    max-width: 100%;
    white-space: normal;
    overflow-wrap: anywhere;
}

@media (max-width: 1023px) {
    body.hrc-design-system-v1.hrc-family-public .tcv-header {
        min-height: 72px !important;
        height: 72px !important;
        padding-block: 0 !important;
        padding-inline: 0 !important;
        -webkit-backdrop-filter: none !important;
        backdrop-filter: none !important;
    }

    body.hrc-design-system-v1.hrc-family-public .tcv-nav[data-public-navigation] {
        width: calc(100% - 24px) !important;
        max-width: calc(100% - 24px) !important;
        min-height: 72px !important;
        height: 72px !important;
        margin-inline: auto !important;
        padding: 0;
    }

    body.hrc-design-system-v1.hrc-family-public .tcv-nav[data-public-navigation] .tcv-actions {
        min-width: 0;
        max-width: min(44vw, 290px) !important;
    }

    body.hrc-design-system-v1.hrc-family-public .tcv-nav[data-public-navigation] .tcv-actions .tcv-login {
        min-width: 96px;
        max-width: 128px !important;
        display: inline-flex !important;
        padding-inline: var(--hrc-space-3);
    }

}

@media (max-width: 1023px) {
    /* A drawer is inside the sticky header's stacking context. Elevate that
       context only while open, above floating helpers and below modals. */
    body.hrc-design-system-v1.hrc-family-public.is-public-nav-open .tcv-header {
        z-index: var(--hrc-z-drawer);
    }
}

@media (min-width: 761px) and (max-width: 900px) {
    body.hrc-design-system-v1.hrc-family-public.public-trust-os .public-trust-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    body.hrc-design-system-v1.hrc-family-public.public-trust-os .public-trust-grid .ai-action-cards {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

/* Match the compact public navigation/tablet range without moving any layout
   breakpoint: portrait tablets need readable native controls as well. */
@media (max-width: 1023px) {
    body.hrc-design-system-v1.hrc-family-public {
        --hrc-public-control-font-size: var(--hrc-text-input-mobile);
    }

    /* Native editable controls need the same readable mobile floor as ERP.
       Keep toggles, hidden fields, upload controls and action buttons intact. */
    body.hrc-design-system-v1.hrc-family-public :where(
        input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="file"]):not([type="range"]):not([type="color"]):not([type="button"]):not([type="submit"]):not([type="reset"]),
        select,
        textarea
    ) {
        font-size: var(--hrc-public-control-font-size) !important;
    }
}

@media (max-width: 767.98px) {
    body.hrc-design-system-v1.hrc-family-public {
        --hrc-public-header-height: 68px;
    }

    body.hrc-design-system-v1.hrc-family-public :where(button, .btn, .button) {
        min-height: var(--hrc-control-height-lg);
    }

    body.hrc-design-system-v1.hrc-family-public .tcv-header,
    body.hrc-design-system-v1.hrc-family-public .tcv-nav[data-public-navigation] {
        min-height: 68px !important;
        height: 68px !important;
    }

    body.hrc-design-system-v1.hrc-family-public .tcv-nav[data-public-navigation] {
        width: calc(100% - 20px) !important;
        max-width: calc(100% - 20px) !important;
    }

    body.hrc-design-system-v1.hrc-family-public .tcv-nav[data-public-navigation] .tcv-actions .tcv-login {
        display: inline-flex !important;
        max-width: 96px !important;
    }

    body.hrc-design-system-v1.hrc-family-public .tcv-nav[data-public-navigation] .tcv-actions .tcv-erp {
        display: none !important;
    }
}

/* Shared navigation budget, including standalone content pages that do not
   load the homepage premium header. Never clip the account action to fit. */
@media (max-width: 359px) {
    body.hrc-design-system-v1.hrc-family-public .tcv-nav[data-public-navigation] {
        gap: var(--hrc-space-1);
    }

    body.hrc-design-system-v1.hrc-family-public .tcv-nav[data-public-navigation] .tcv-brand {
        flex: 1 1 78px;
        min-width: 78px !important;
    }

    body.hrc-design-system-v1.hrc-family-public .tcv-nav[data-public-navigation] .tcv-brand img {
        width: 82px;
        max-width: 100%;
    }

    body.hrc-design-system-v1.hrc-family-public .tcv-nav[data-public-navigation] :is(.tcv-nav-toggle, .public-theme-control) {
        flex: 0 0 var(--hrc-touch-target);
        width: var(--hrc-touch-target);
        height: var(--hrc-touch-target);
        min-height: var(--hrc-touch-target);
    }

    body.hrc-design-system-v1.hrc-family-public .tcv-nav[data-public-navigation] .tcv-actions {
        max-width: 136px !important;
        gap: var(--hrc-space-1);
    }

    body.hrc-design-system-v1.hrc-family-public .tcv-nav[data-public-navigation] .tcv-actions .tcv-login {
        min-width: var(--hrc-touch-target);
        max-width: 86px !important;
        padding-inline: var(--hrc-space-2);
    }
}

/* Anchor/sticky consumers share the two-row navigation's actual height. */
@media (min-width: 1024px) and (max-width: 1280px) {
    body.hrc-design-system-v1.hrc-family-public {
        --hrc-public-header-height: 124px;
    }
}
