.public-freshness-notice {
    position: fixed; z-index: 1025; left: 50%; bottom: 24px;
    transform: translateX(-50%); display: flex; align-items: center; gap: 10px;
    max-width: calc(100vw - 28px); width: max-content; padding: 6px 8px 6px 16px;
    border: 1px solid var(--theme-line, #dfe5ef); border-radius: 30px;
    background: var(--theme-surface, #fff); color: var(--theme-text, #1e293b);
    box-shadow: 0 6px 28px #0002; font-size: .875rem;
}
.public-freshness-notice[hidden] { display: none !important; }
.public-freshness-notice button {
    border: 0; border-radius: 22px; padding: 10px 12px; min-height: 44px;
    font: inherit; font-weight: 700; background: var(--theme-raised, #f1f3f8);
    color: var(--theme-accent, #6354db);
}
.public-freshness-notice button:focus-visible { outline: 2px solid var(--theme-accent, #6354db); outline-offset: 2px; }
.public-freshness-notice button:hover { filter: brightness(.94); }
#public-freshness-dismiss { font-size: 22px; padding: 4px 12px; background: transparent; }
.public-freshness-status {
    position: absolute; bottom: 12px; right: 10px; z-index: 5; max-width: calc(100% - 20px);
    border-radius: 16px; padding: 5px 9px; color: #fff; background: #192131e8;
    font-size: 12px; font-weight: 700; pointer-events: none;
}
.public-freshness-status:empty { display: none; }
@media (max-width: 991.98px) {
    .public-freshness-notice { bottom: calc(96px + env(safe-area-inset-bottom, 0px)); gap: 4px; padding-left: 12px; }
}
.home-visual-reason[hidden] { display: none !important; }

/* Long detail notices remain readable above the mobile action bar. */
#public-freshness-message { min-width: 0; overflow-wrap: anywhere; line-height: 1.35; }
.public-freshness-notice button { flex-shrink: 0; }
@media (max-width: 991.98px) {
    .mobile-detail-app-shell .public-freshness-notice {
        bottom: calc(var(--mobile-detail-floating-pill-bottom, 10px) + 88px);
        border-radius: 18px;
    }
}
