span.ai-image-badge.ai-image-badge {
    position: absolute;
    z-index: 5;
    display: grid !important;
    box-sizing: border-box;
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    min-height: 20px !important;
    max-width: 20px !important;
    max-height: 20px !important;
    padding: 0 !important;
    margin: 0 !important;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, .8);
    border-radius: 2px;
    background: rgba(35, 43, 51, .82);
    color: #fff !important;
    font: 700 11px/1 Arial, sans-serif !important;
    letter-spacing: .2px;
    text-indent: 0;
    text-shadow: none;
    box-shadow: 0 1px 3px rgba(0, 0, 0, .18);
    pointer-events: none;
    user-select: none;
}
span.ai-image-badge[hidden] { display: none !important; }
.ai-image-background-badge { right: 4px; bottom: 4px; }
.footer-bottom-row { display: flex; align-items: center; justify-content: flex-end; gap: 18px; max-width: 100%; }
.footer-ai-note { display: flex; align-items: center; gap: 8px; min-width: 0; max-width: 520px; margin: 0; color: #fff; font-size: .72rem; line-height: 1.4; text-align: left; }
.footer-social-links { display: flex; flex: 0 0 auto; align-items: center; gap: 10px; }
.footer-social-links a { display: inline-grid; width: 30px; height: 30px; flex: 0 0 auto; place-items: center; border: 1px solid rgba(255,255,255,.45); border-radius: 50%; opacity: .78; transition: opacity .15s ease, background-color .15s ease; }
.footer-social-links svg { width: 17px; height: 17px; fill: currentColor; }
.footer-social-links a:hover, .footer-social-links a:focus-visible { background: rgba(255,255,255,.14); opacity: 1; }
.footer-social-links a:focus-visible { outline: 2px solid #fff; outline-offset: 3px; }
span.ai-image-badge.footer-ai-symbol { position: static; flex: 0 0 20px; }
label.ai-image-option {
    display: flex;
    align-items: center;
    gap: 8px;
    width: fit-content;
    max-width: 100%;
    min-height: 36px;
    margin: 6px 0 14px;
    padding: 3px 0;
    color: var(--gi-ink, #163857);
    font: 600 .9rem/1.35 var(--gi-font-ui, Arial, sans-serif);
    cursor: pointer;
}
.ai-image-option input[type="checkbox"] { flex: 0 0 auto; width: 18px; height: 18px; margin: 0; padding: 0; }
.ai-image-option > span { display: inline; margin: 0; padding: 0; font: inherit; }
html.pwa-mobile-app form label.ai-image-option { display: flex; align-items: center; }
.recipe-admin-existing-images > .ai-image-existing { min-width: 0; padding: 8px; border: 1px solid var(--border, #d6e5ef); border-radius: 7px; }
.recipe-admin-existing-images > .ai-image-existing > label { border: 0; border-radius: 0; background: transparent; box-shadow: none; padding: 3px 0; }
.recipe-admin-existing-images label.ai-image-option { font: inherit; font-weight: 700; }
.ai-image-existing .ai-image-option { margin-bottom: 3px; }
.ai-image-new-preview { width: fit-content; max-width: 100%; margin: 8px 0 16px; }
.ai-image-new-preview img { display: block; width: auto; max-width: 100%; max-height: 220px; }
.recipe-upload-preview .ai-image-option, .report-upload-preview .ai-image-option { margin: 2px 8px 5px; }
.recipe-detail-media-item:has(.ai-image-badge)::before { top: 15px; bottom: auto; }
.recipe-detail-media-item:has(.ai-image-badge)::after { top: 43px; bottom: auto; }
@media (max-width: 640px) {
    label.ai-image-option { min-height: 44px; }
}
