/* GENERAL */
.urc-google-wrapper, .urc-slider-wrapper {
    font-family: 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
    max-width: 100%; margin: 30px auto; background: #fff; box-sizing: border-box;
}

/* LISTA GOOGLE */
.urc-google-wrapper { border: 1px solid #e1e4e8; border-radius: 12px; box-shadow: 0 4px 12px rgba(0,0,0,0.05); overflow: hidden; }
.urc-google-header {
    padding: 20px; border-bottom: 1px solid #f0f0f0; display: flex; justify-content: space-between; align-items: center; background: #fafafa;
}
.urc-reviews-scroll-container { max-height: 600px; overflow-y: auto; }
.urc-g-card { padding: 25px; border-bottom: 1px solid #f0f0f0; transition: background 0.2s; }
.urc-g-card:hover { background: #fdfdfd; }
.urc-g-card-header { display: flex; margin-bottom: 15px; }
.urc-g-avatar { width: 48px; height: 48px; margin-right: 15px; flex-shrink: 0; }
.urc-g-avatar img, .urc-g-initial { width: 100%; height: 100%; border-radius: 50%; object-fit: cover; display: flex; align-items: center; justify-content: center; color: white; font-weight: bold; font-size: 20px; }
.urc-g-author { font-weight: 700; color: #333; display: block; }
.urc-g-text { margin-left: 63px; color: #444; line-height: 1.6; }

/* RESPUESTA ADMIN */
.urc-g-response { margin-top: 15px; margin-left: 63px; background: #f1f3f4; padding: 15px; border-radius: 12px; }
.urc-g-response strong { display: block; font-size: 11px; text-transform: uppercase; color: #5f6368; margin-bottom: 5px; }

/* BOTONES */
.urc-btn-google, .urc-btn-modern {
    background: #0073aa; color: #fff; border: none; padding: 10px 24px; border-radius: 50px; font-weight: 600; cursor: pointer; transition: 0.3s;
}
.urc-btn-google:hover { background: #005177; box-shadow: 0 4px 10px rgba(0,0,0,0.2); }

/* SLIDER */
.urc-modern-card { background: #fff; border: 1px solid #eee; padding: 20px; border-radius: 12px; min-height: 250px; display: flex; flex-direction: column; }
.urc-card-top { display: flex; align-items: center; margin-bottom: 15px; }
.urc-card-avatar { width: 40px; height: 40px; margin-right: 10px; }
.urc-card-avatar img, .urc-initial-circle { width: 100%; height: 100%; border-radius: 50%; display: flex; align-items: center; justify-content: center; color: white; background: #0073aa; }

/* SCROLL HINT (Flecha Animada Móvil) */
.urc-scroll-hint {
    position: absolute; right: 0; top: 50%; transform: translateY(-50%);
    background: linear-gradient(to left, #fff 30%, transparent);
    padding: 10px 15px 10px 40px; pointer-events: none; opacity: 0; transition: opacity 0.3s;
}
.urc-scroll-hint.is-visible { opacity: 1; }
.urc-arrow-icon {
    width: 10px; height: 10px; border-right: 3px solid #f39c12; border-bottom: 3px solid #f39c12;
    transform: rotate(-45deg); animation: bounceRight 1.5s infinite;
}
@keyframes bounceRight {
    0%, 100% { transform: rotate(-45deg) translate(0, 0); }
    50% { transform: rotate(-45deg) translate(-5px, -5px); }
}

/* MODAL */
.urc-modal {
    display: none; position: fixed; z-index: 99999; left: 0; top: 0; width: 100%; height: 100%;
    background-color: rgba(0,0,0,0.6); backdrop-filter: blur(4px);
    justify-content: center; align-items: center; padding: 20px;
}
.urc-modal-content {
    background: #fff; width: 100%; max-width: 500px; border-radius: 12px; box-shadow: 0 20px 50px rgba(0,0,0,0.3); overflow: hidden; position: relative;
    max-height: 90vh; overflow-y: auto;
}
form { padding: 30px; }
.urc-form-group { margin-bottom: 15px; }
.urc-form-group input, .urc-form-group select, .urc-form-group textarea {
    width: 100%; padding: 12px; border: 1px solid #ccc; border-radius: 6px; box-sizing: border-box;
}
.urc-btn-submit {
    width: 100%; background: #222; color: #fff; padding: 15px; border: none; border-radius: 6px; font-weight: bold; cursor: pointer; font-size: 16px;
}
.urc-btn-submit:disabled { background: #777; cursor: wait; }