.aibg-app {
    max-width: 720px;
    margin: 0 auto;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
}

.aibg-upload-box {
    border: 2px dashed #cbd5e1;
    border-radius: 16px;
    padding: 48px 24px;
    text-align: center;
    cursor: pointer;
    transition: border-color .2s ease, background-color .2s ease;
    background: #fafafa;
}
.aibg-upload-box.dragover {
    border-color: #2563eb;
    background: #eff6ff;
}
.aibg-icon-upload { color: #64748b; margin-bottom: 12px; }
.aibg-drop-text { color: #475569; font-size: 16px; margin: 8px 0 20px; }

.aibg-btn {
    display: inline-block;
    padding: 12px 28px;
    border-radius: 999px;
    font-weight: 600;
    font-size: 15px;
    border: none;
    cursor: pointer;
    text-decoration: none;
    transition: transform .1s ease, box-shadow .2s ease;
}
.aibg-btn:hover { transform: translateY(-1px); }
.aibg-btn-primary { background: #2563eb; color: #fff; }
.aibg-btn-secondary { background: #e2e8f0; color: #1e293b; margin-inline-start: 10px; }

.aibg-result { text-align: center; }
.aibg-image-compare {
    position: relative;
    display: inline-block;
    max-width: 100%;
    border-radius: 16px;
    overflow: hidden;
    background-image:
        linear-gradient(45deg, #eee 25%, transparent 25%),
        linear-gradient(-45deg, #eee 25%, transparent 25%),
        linear-gradient(45deg, transparent 75%, #eee 75%),
        linear-gradient(-45deg, transparent 75%, #eee 75%);
    background-size: 20px 20px;
    background-position: 0 0, 0 10px, 10px -10px, -10px 0px;
}
.aibg-image-compare img { max-width: 100%; display: block; }
#aibg-original-preview { display: none; }

.aibg-actions { margin-top: 24px; }

.aibg-loading { text-align: center; padding: 40px 0; }
.aibg-spinner {
    width: 40px; height: 40px;
    border: 4px solid #e2e8f0;
    border-top-color: #2563eb;
    border-radius: 50%;
    margin: 0 auto 16px;
    animation: aibg-spin 0.8s linear infinite;
}
@keyframes aibg-spin { to { transform: rotate(360deg); } }

.aibg-error {
    background: #fef2f2;
    color: #b91c1c;
    padding: 14px 18px;
    border-radius: 10px;
    margin-top: 16px;
    text-align: center;
}
