.rc-change-password-form,
.rc-forgot-password-form,
.rc-reset-password-form {
margin: 20px;
}
.rc-change-password-form input,
.rc-forgot-password-form input,
.rc-reset-password-form input,
.rc-change-password-form select,
.rc-forgot-password-form select,
.rc-reset-password-form select,
.rc-change-password-form textarea,
.rc-forgot-password-form textarea,
.rc-reset-password-form textarea {
width: 100% !important;
padding: 14px 12px !important;
border-radius: 4px !important;
border: 1px solid #ddd !important;
background-color: #fff !important;
box-sizing: border-box !important;
margin: 0!important;
} button.cf7-btn {
font-size: 13px;
font-weight: 700;
color: #0077b6;
background: #ffffff;
padding: 10px 10px;
margin-right: 8px;
cursor: pointer;
border: 2px solid #0077b6;
border-radius: 6px;
text-decoration: none;
display: block !important;
width: 100% !important;
box-sizing: border-box !important;
line-height: 1;
transition: background .15s ease, border-color .15s ease, transform .06s ease;
}
button.cf7-btn:active {
background: #8ebce7;
border-color: #8ebce7;
}
button.cf7-btn:focus {
outline: none;
box-shadow: 0 0 0 3px rgba(0, 119, 182, 0.20);
}
button.cf7-btn:hover {
background: #0077b6;
color: #ffffff;
border-color: #0077b6;
} button.cf7-btn-invert {
font-size: 13px;
font-weight: 700;
color: #ffffff; background: #0077b6; padding: 10px 10px;
margin-right: 8px;
cursor: pointer;
border: 2px solid #ffffff; border-radius: 6px;
text-decoration: none;
display: block !important;
width: 100% !important;
box-sizing: border-box !important;
line-height: 1;
transition: background .15s ease, border-color .15s ease, transform .06s ease;
} button.cf7-btn-invert:hover {
background: #ffffff; color: #0077b6; border-color: #0077b6; } button.cf7-btn-invert:active {
background: #0077b6;
border-color: #ffffff;
box-shadow: inset 0 0 0 100px rgba(0,0,0,0.12);
transform: scale(0.98);
} button.cf7-btn-invert:focus {
outline: none;
box-shadow: 0 0 0 3px rgba(0, 119, 182, 0.20);
} .cf7-rb-mensaje {
display: block;
margin-bottom: 1rem;
font-weight: 700;
padding: 8px 10px;
border-radius: 6px;
border: 1px solid rgba(0,0,0,0.06);
width: 100% !important;
box-sizing: border-box;
} .cf7-rb-mensaje[style*="display: none"] {
display: none !important;
} .cf7-rb-mensaje.rc-pw-success {
background: #e6ffef;
color: #0a6b2f;
border-color: rgba(10,107,47,0.12);
} .cf7-rb-mensaje.rc-pw-error {
background: #fff0f0;
color: #8b1e1e;
border-color: rgba(139,30,30,0.12);
} .rc-pw-note {
display: block; padding: 8px 12px; margin-bottom: 1rem;
font-weight: 700;
border-radius: 6px;
border: 1px solid rgba(0,0,0,0.06);
box-sizing: border-box;
}
.rc-pw-note {
background: #fffbe6;
color: #8b6b1e;
border-color: rgba(139,107,30,0.12);
}  @media (max-width: 480px) {
.cf7-btn {
font-size: 14px;
padding: 8px 12px;
display: block;
width: 100%;
margin: 0 0 8px 0;
}
.cf7-rb-mensaje,
.rc-pw-note {
width: 100%;
margin: 0 0 8px 0;
padding: 8px 12px;
}
} .rc-horarios-wrapper { margin-top: 0; margin-bottom: 0; font-family: Montserrat, Roboto; color:#333; }
.rc-horarios-compact { list-style:none; margin:0; padding:0; }
.rc-horarios-compact .rc-item { padding: 8px 0; border-bottom: 1px solid #b7b7b7; }
.rc-horarios-compact .rc-denominacion { color:#0077b6; font-weight:700; }
.rc-horarios-compact .rc-nombre { color:#333; margin-left:6px; font-style:normal; }
.rc-horarios-compact .rc-dia { color:#333; font-weight:700; font-style:normal; }
.rc-horarios-compact .rc-hora { color:#333; font-weight:700; font-style:normal; }
.rc-horarios-table { width:100%; border-collapse:collapse; margin:0 0 1em 0; }
.rc-horarios-table th, .rc-horarios-table td { padding:8px; border:1px solid #eee; text-align:left; vertical-align:middle; }
.rc-horarios-cards { display:flex; gap:12px; flex-wrap:wrap; margin:0; padding:0; }
.rc-card { border:1px solid #eee; padding:12px; width:calc(50% - 12px); box-sizing:border-box; border-radius:6px; background:#fff; }
.rc-card-title { margin:0 0 6px 0; font-size:1em; color::#0077b6; }
.rc-card-prof { color:#444; margin-top:4px; }
.rc-card-meta { color:#666; font-size:0.95em; margin-top:6px; }
.rc-empty { color:#999; font-style:italic; }  .cf-row-ea {
display: flex;
flex-wrap: wrap;
gap: 20px;
margin-bottom: 20px;
} .cf-col-2{
flex: 1;
min-width: 0;
} .cf-col-3 {
flex: 0 0 calc(33.333% - 20px);
}
.cf-col-4 {
flex: 0 0 calc(25% - 20px);
} @media (max-width: 768px) {
.cf-col-2,
.cf-col-3,
.cf-col-4 {
flex: 0 0 100%;
}
}