/* NO-COMPATIBILITY HARD RED: One current runtime contract; no legacy accommodation, dual readers, aliases, fallback interpretation, or repair-on-read. Deterministic offline production transitions require an exact owner-approved plan. See docs/INVARIANTS/NO_COMPATIBILITY.md. */
/* Circuni public scenery: one intact upper scene; only overflowing content needs a short fade. */
body[class^="public-"] {
    --scenery-base: #160e14;
    background-color: var(--scenery-base);
    display: flex;
    flex-direction: column;
    position: relative;
    isolation: isolate;
    min-height: 100vh;
}

body[class^="public-"] .public-site-footer {
    --footer-link-min-height: var(--public-control-min-height-compact);
    --footer-row-gap: 0;
    margin-top: auto;
}

body.public-account-page .public-account-settings > .public-account-card {
    background: var(--public-frame-background);
}

body[class^="public-"]::before {
    position: absolute;
    inset: 0 0 auto;
    height: min(100%, max(100vh, clamp(48rem, 85vw, 72rem)));
    z-index: -1;
    background: url("../circuni/background.png") center top / cover no-repeat;
    content: "";
    pointer-events: none;
}

body[class^="public-"][data-scenery-overflow]::before {
    background-image: linear-gradient(to bottom, transparent calc(100% - 8rem), var(--scenery-base) 100%),
        url("../circuni/background.png");
}

body[class^="public-"] .public-circuni-wordmark {
    display: block;
    width: auto;
    height: var(--circuni-nav-image-height);
    max-width: 100%;
    object-fit: contain;
}

/* Use Hagglefor's 50px edge mask on the Circuni homepage marketplace viewport. */
body.public-browse-page .public-home-hagglefor-now__viewport {
    mask-image: linear-gradient(to right, transparent, #000 50px, #000 calc(100% - 50px), transparent);
    -webkit-mask-image: linear-gradient(to right, transparent, #000 50px, #000 calc(100% - 50px), transparent);
}

/* Match Hagglefor's graphic height and padding while retaining Circuni departments. */
body[class^="public-"] .public-site-nav[data-circuni-nav] {
    --circuni-nav-image-height: clamp(2rem, 5vw, 3.9rem);
    gap: 0.35rem 0.75rem;
    padding: 0.35rem 0.5rem;
}
body[class^="public-"] [data-circuni-nav] .public-circuni-nav__account {
    position: relative;
    justify-content: center;
    padding: 0;
    min-width: 2.75rem;
    min-height: 2.75rem;
    border: 0;
    background: transparent;
}
[data-circuni-nav] a:focus-visible { outline: 3px solid #773b26; outline-offset: 2px; }
[data-circuni-nav] .public-circuni-nav__account img {
    display: block;
    height: var(--circuni-nav-image-height);
    width: auto;
    object-fit: contain;
}
[data-circuni-nav] .public-circuni-nav__account .public-circuni-nav__cog {
    height: max(2.75rem, var(--circuni-nav-image-height));
}
body[class^="public-"] [data-circuni-nav] .public-site-nav__account-badge {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    min-width: 2.3rem;
    min-height: 2.3rem;
    padding: 0.1rem 0.4rem;
    font-size: 1.36rem;
    border: 1px solid #fff;
    pointer-events: none;
}
@media (max-width: 720px) {
    body[class^="public-"] [data-circuni-nav] .public-site-nav__account-badge {
        min-width: 1.725rem;
        min-height: 1.725rem;
        padding: 0.075rem 0.3rem;
        font-size: 1.02rem;
    }
    [data-circuni-nav] .public-site-nav__home { grid-column: 1; grid-row: 1; }
    [data-circuni-nav] .public-circuni-nav__account { grid-column: 2; grid-row: 1; }
    [data-circuni-nav] .public-site-nav__links { grid-row: 2; }
}
