/* Frontend Styles */
.carl-groupsio-container { max-width:600px; margin:0 auto; padding:30px; background:#fff; border-radius:8px; box-shadow:0 2px 10px rgba(0,0,0,0.08); }
.carl-groupsio-container h3 { margin:0 0 25px; padding-bottom:15px; border-bottom:2px solid #f0f0f0; font-size:1.5em; color:#333; }
.carl-groupsio-status { background:#f8f9fa; padding:15px 20px; border-radius:6px; margin-bottom:25px; }
.carl-groupsio-status p { margin:5px 0; }
.carl-groupsio-status-badge { display:inline-block; padding:3px 10px; border-radius:4px; font-size:0.85em; font-weight:600; }
.carl-groupsio-status-sub_status_normal { background:#d4edda; color:#155724; }
.carl-groupsio-status-sub_status_pending { background:#fff3cd; color:#856404; }
.carl-groupsio-status-sub_status_bouncing { background:#f8d7da; color:#721c24; }
.carl-groupsio-field { margin-bottom:25px; }
.carl-groupsio-field label { display:block; margin-bottom:5px; color:#333; }
.carl-groupsio-field-description { margin:5px 0 10px; font-size:0.9em; color:#666; }
.carl-groupsio-field select { width:100%; padding:12px 15px; border:1px solid #ddd; border-radius:6px; font-size:1em; background:#fff; }
.carl-groupsio-field select:focus { outline:none; border-color:#0073aa; }
.carl-groupsio-checkbox-field label { display:flex; align-items:center; gap:10px; cursor:pointer; }
.carl-groupsio-actions { display:flex; align-items:center; gap:15px; margin-top:30px; padding-top:20px; border-top:1px solid #f0f0f0; }
.carl-groupsio-button { display:inline-block; padding:12px 30px; border:none; border-radius:6px; font-size:1em; font-weight:600; cursor:pointer; text-decoration:none; }
.carl-groupsio-button-primary { background:#0073aa; color:#fff; }
.carl-groupsio-button-primary:hover { background:#005d8c; color:#fff; }
.carl-groupsio-button-secondary { background:#f3f4f6; color:#374151; border:1px solid #d1d5db; }
.carl-groupsio-spinner { display:inline-block; width:20px; height:20px; border:3px solid #f3f3f3; border-top:3px solid #0073aa; border-radius:50%; animation:carl-spin 1s linear infinite; }
@keyframes carl-spin { 0%{transform:rotate(0deg);} 100%{transform:rotate(360deg);} }
.carl-groupsio-notice { padding:15px 20px; border-radius:6px; margin-bottom:20px; }
.carl-groupsio-notice p { margin:0; }
.carl-groupsio-notice-success { background:#d4edda; color:#155724; border:1px solid #c3e6cb; }
.carl-groupsio-notice-error { background:#f8d7da; color:#721c24; border:1px solid #f5c6cb; }
.carl-groupsio-notice-warning { background:#fff3cd; color:#856404; border:1px solid #ffeeba; }
.carl-groupsio-notice-info { background:#e7f3ff; color:#004085; border:1px solid #b8daff; }
.carl-groupsio-help { margin-top:25px; padding-top:20px; border-top:1px solid #f0f0f0; font-size:0.9em; color:#666; }
.carl-groupsio-help a { color:#0073aa; }
.carl-groupsio-subscribe-prompt { text-align:center; padding:20px 0; }
.carl-groupsio-subscribe-icon { font-size:3em; margin-bottom:15px; }
.carl-groupsio-subscribe-prompt h4 { margin:0 0 15px; font-size:1.3em; color:#333; }
.carl-groupsio-subscribe-prompt p { margin:0 0 15px; color:#555; line-height:1.6; }
.carl-groupsio-email-note { background:#f8f9fa; padding:10px 15px; border-radius:6px; font-size:0.9em; }
.carl-groupsio-subscribe-button { margin:20px 0 15px; padding:15px 40px; font-size:1.1em; }
.carl-groupsio-subscribe-help { font-size:0.85em; color:#888; }
.carl-groupsio-pending { background:#fffbeb; border:1px solid #fde68a; border-radius:8px; padding:30px; margin:-30px; }
.carl-groupsio-pending h4 { color:#92400e; }
.carl-groupsio-pending-help { margin-top:25px; padding-top:20px; border-top:1px solid #fde68a; }
@media (max-width:600px) { .carl-groupsio-container { padding:20px; margin:0 10px; } .carl-groupsio-button { width:100%; text-align:center; } }
.et_pb_section .carl-groupsio-container { max-width:600px; }
.et_pb_section .carl-groupsio-field select { height:auto; line-height:1.5; }
