/* Additional styles for ReviewPro */

/* Smooth page transitions */
html {
    scroll-behavior: smooth;
}

/* Loading state for buttons */
.rp-btn.loading {
    position: relative;
    color: transparent;
    pointer-events: none;
}

.rp-btn.loading::after {
    content: '';
    position: absolute;
    width: 16px;
    height: 16px;
    border: 2px solid rgba(255,255,255,0.3);
    border-top-color: #fff;
    border-radius: 50%;
    animation: rp-spin 0.6s linear infinite;
}

/* Alert/toast */
.rp-toast {
    position: fixed;
    bottom: 24px;
    right: 24px;
    background: var(--rp-gray-900);
    color: #fff;
    padding: 12px 20px;
    border-radius: var(--rp-radius);
    font-size: 14px;
    z-index: 9999;
    animation: rp-fadeIn 0.3s ease;
    box-shadow: var(--rp-shadow-lg);
}

/* Gradient text utility */
.rp-gradient-text {
    background: linear-gradient(135deg, var(--rp-primary), #A78BFA);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* Report print adjustments */
@media print {
    body { background: #fff !important; }
    .rp-report { max-width: none; padding: 0; }
    .rp-card { box-shadow: none; }
    canvas { max-height: 200px !important; }
}
