/* SmartWeb & CMS RobertOspina CMS(c) 2024 - Lista de Reglas CSS Duplicadas para Eliminar */
/* Artifact 6: Reglas CSS que duplican funcionalidades de Bootstrap 4.3.x */

/* ============================================================================
   📋 INSTRUCCIONES DE USO
   ============================================================================ */

/*
IMPORTANTE: Las siguientes reglas CSS deben ser ELIMINADAS del archivo style.css original
porque duplican exactamente las funcionalidades ya disponibles en Bootstrap 4.3.1.

CRITERIO DE ELIMINACIÓN:
- Reglas que son idénticas a las de Bootstrap 4.3.x
- Reglas que replican funcionalidades nativas de Bootstrap sin personalización
- Clases de utilidad que ya existen en Bootstrap

CRITERIO DE CONSERVACIÓN:
- Reglas con personalizaciones específicas del CMS (aunque usen clases Bootstrap)
- Variables CSS personalizadas
- Estilos específicos para componentes del CMS
*/

/* ============================================================================
   🎨 SISTEMA DE TARJETAS DUPLICADO - ELIMINAR COMPLETAMENTE
   ============================================================================ */

/* Las siguientes reglas replican exactamente el sistema de tarjetas de Bootstrap */

.card {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  min-width: 0;
  word-wrap: break-word;
  background-color: transparent;
  background-clip: border-box;
  border: 1px solid rgba(0, 0, 0, 0.125);
  border-radius: 0;
}

.card > hr {
  margin-right: 0;
  margin-left: 0;
}

.card > .list-group:first-child .list-group-item:first-child {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.card > .list-group:last-child .list-group-item:last-child {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.card-body {
  -webkit-box-flex: 1;
  -webkit-flex: 1 1 auto;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  padding: 1.25rem;
}

.card-title {
  margin-bottom: 0.75rem;
}

.card-subtitle {
  margin-top: -0.375rem;
  margin-bottom: 0;
}

.card-text:last-child {
  margin-bottom: 0;
}

.card-link:hover {
  text-decoration: none;
}

.card-link + .card-link {
  margin-left: 1.25rem;
}

.card-header {
  padding: 0.75rem 1.25rem;
  margin-bottom: 0;
  background-color: transparent;
  border-bottom: 1px solid rgba(204, 204, 204, 0.125);
}

.card-header:first-child {
  border-radius: calc(0 - 1px) calc(0 - 1px) 0 0;
}

.card-header + .list-group .list-group-item:first-child {
  border-top: 0;
}

.card-footer {
  padding: 0.75rem 1.25rem;
  background-color: rgba(0, 0, 0, 0.03);
  border-top: 1px solid rgba(0, 0, 0, 0.125);
}

.card-footer:last-child {
  border-radius: 0 0 calc(0 - 1px) calc(0 - 1px);
}

.card-header-tabs {
  margin-right: -0.625rem;
  margin-bottom: -0.75rem;
  margin-left: -0.625rem;
  border-bottom: 0;
}

.card-header-pills {
  margin-right: -0.625rem;
  margin-left: -0.625rem;
}

.card-img-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 1.25rem;
}

.card-img {
  width: 100%;
  border-radius: calc(0 - 1px);
}

.card-img-top {
  width: 100%;
  border-top-left-radius: calc(0 - 1px);
  border-top-right-radius: calc(0 - 1px);
}

.card-img-top80pct {
  width: 80%;
  margin-left: 10%;
  border-top-left-radius: calc(0 - 1px);
  border-top-right-radius: calc(0 - 1px);
}

.card-img-bottom {
  width: 100%;
  border-bottom-right-radius: calc(0 - 1px);
  border-bottom-left-radius: calc(0 - 1px);
}

/* CARD DECK - Sistema duplicado de Bootstrap */
.card-deck {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
}

.card-deck .card {
  margin-bottom: 15px;
}

@media (min-width: 576px) {
  .card-deck {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    margin-right: -15px;
    margin-left: -15px;
  }
  .card-deck .card {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 0%;
    -ms-flex: 1 0 0%;
    flex: 1 0 0%;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-right: 15px;
    margin-bottom: 0;
    margin-left: 15px;
  }
}

/* CARD GROUP - Sistema duplicado de Bootstrap */
.card-group {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
}

.card-group > .card {
  margin-bottom: 15px;
}

@media (min-width: 576px) {
  .card-group {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
  }
  .card-group > .card {
    -webkit-box-flex: 1;
    -webkit-flex: 1 0 0%;
    -ms-flex: 1 0 0%;
    flex: 1 0 0%;
    margin-bottom: 0;
  }
  .card-group > .card + .card {
    margin-left: 0;
    border-left: 0;
  }
  .card-group > .card:not(:last-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }
  /* ... más reglas de card-group que replican Bootstrap */
}

/* CARD COLUMNS - Sistema duplicado de Bootstrap */
.card-columns .card {
  margin-bottom: 0.75rem;
}

@media (min-width: 576px) {
  .card-columns {
    -webkit-column-count: 3;
    -moz-column-count: 3;
    column-count: 3;
    -webkit-column-gap: 1.25rem;
    -moz-column-gap: 1.25rem;
    column-gap: 1.25rem;
    orphans: 1;
    widows: 1;
  }
  .card-columns .card {
    display: inline-block;
    width: 100%;
  }
}

/* ACCORDION - Sistema duplicado de Bootstrap */
.accordion > .card {
  overflow: hidden;
}

.accordion > .card:not(:first-of-type) .card-header:first-child {
  border-radius: 0;
}

.accordion > .card:not(:first-of-type):not(:last-of-type) {
  border-bottom: 0;
  border-radius: 0;
}

/* ... más reglas de accordion que replican Bootstrap */

/* ============================================================================
   🥖 BREADCRUMBS DUPLICADOS - ELIMINAR COMPLETAMENTE
   ============================================================================ */

.breadcrumb {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 0.55rem 1rem;
  margin-bottom: 1rem;
  list-style: none;
  background-color: transparent;
  border-radius: 0.25rem;
}

.breadcrumb-item + .breadcrumb-item {
  padding-left: 0.5rem;
}

.breadcrumb-item + .breadcrumb-item::before {
  display: inline-block;
  padding-right: 0.5rem;
  color: #212529;
  content: "路";
}

.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: underline;
}

.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: none;
}

.breadcrumb-item.active {
  color: var(--color-white);
}

/* ============================================================================
   🏷️ BADGES DUPLICADOS - ELIMINAR COMPLETAMENTE
   ============================================================================ */

.badge {
  display: inline-block;
  padding: 0.25em 0.4em;
  font-size: 75%;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 0.25rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .badge {
    transition: none;
  }
}

a.badge:hover,
a.badge:focus {
  text-decoration: none;
}

.badge:empty {
  display: none;
}

.btn .badge {
  position: relative;
  top: -1px;
}

.badge-pill {
  padding-right: 0.6em;
  padding-left: 0.6em;
  border-radius: 10rem;
}

/* Todos los colores de badges que replican Bootstrap */
.badge-primary {
  color: var(--color-white);
  background-color: var(--background-navyblue);
}

.badge-secondary {
  color: var(--color-white);
  background-color: var(--color-black);
}

.badge-success {
  color: #212529;
  background-color: #A3C14A;
}

/* ... todos los demás colores de badges */

/* ============================================================================
   📢 JUMBOTRON DUPLICADO - ELIMINAR COMPLETAMENTE
   ============================================================================ */

.jumbotron {
  padding: 2rem 1rem;
  margin-bottom: 2rem;
  background-color: #eaf0fc;
  border-radius: 0.3rem;
}

@media (min-width: 576px) {
  .jumbotron {
    padding: 4rem 2rem;
  }
}

.jumbotron-fluid {
  padding-right: 0;
  padding-left: 0;
  border-radius: 0;
}

/* ============================================================================
   🚨 ALERTS DUPLICADOS - ELIMINAR COMPLETAMENTE
   ============================================================================ */

.alert {
  position: relative;
  padding: 0.75rem 1.25rem;
  margin-bottom: 1rem;
  border: 1px solid transparent;
  border-radius: 0.25rem;
}

.alert-heading {
  color: inherit;
}

.alert-link {
  font-weight: 700;
}

.alert-dismissible {
  padding-right: 4rem;
}

.alert-dismissible .close {
  position: absolute;
  top: 0;
  right: 0;
  padding: 0.75rem 1.25rem;
  color: inherit;
}

/* Todos los tipos de alerts que replican Bootstrap */
.alert-primary {
  color: #81303a;
  background-color: #fedee2;
  border-color: #fdd1d7;
}

.alert-secondary {
  color: #383d41;
  background-color: #e2e3e5;
  border-color: #d6d8db;
}

/* ... todos los demás tipos de alerts */

/* ============================================================================
   📺 MEDIA OBJECT DUPLICADO - ELIMINAR COMPLETAMENTE
   ============================================================================ */

.media {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
}

.media-body {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

/* ============================================================================
   📋 LIST GROUP DUPLICADO - ELIMINAR COMPLETAMENTE
   ============================================================================ */

.list-group {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
}

.list-group-item-action {
  width: 100%;
  color: #fff;
  text-align: inherit;
}

.list-group-item-action:hover,
.list-group-item-action:focus {
  z-index: 1;
  color: #000;
  text-decoration: none;
  background-color: #f8f9fa;
}

/* ... todas las reglas de list-group que replican Bootstrap */

/* ============================================================================
   ❌ CLOSE BUTTON DUPLICADO - ELIMINAR COMPLETAMENTE
   ============================================================================ */

.close {
  float: right;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
  color: var(--color-black);
  text-shadow: 0 1px 0 var(--color-white);
  opacity: .5;
}

.close:hover {
  color: var(--color-black);
  text-decoration: none;
}

.close:not(:disabled):not(.disabled):hover,
.close:not(:disabled):not(.disabled):focus {
  opacity: .75;
}

button.close {
  padding: 0;
  background-color: transparent;
  border: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

a.close.disabled {
  pointer-events: none;
}

/* ============================================================================
   📝 FORMULARIOS DUPLICADOS - ELIMINAR PARCIALMENTE
   ============================================================================ */

/* CONSERVAR las personalizaciones específicas del CMS, ELIMINAR solo estas: */

select,
input[type="text"],
input[type="password"],
input[type=email] {
  display: block;
  width: 100%;
  height: calc(1.5em + .75rem + 2px);
  padding: .375rem .75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  background-color: var(--color-white);
  background-clip: padding-box;
  border: 1px solid #ced4da;
  border-radius: .25rem;
  transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.form-group {
  margin-bottom: 1rem;
}

.alert {
  position: relative;
  padding: .75rem 1.25rem;
  margin-bottom: 1rem;
  border: 1px solid transparent;
  border-radius: .25rem;
}

.alert-warning {
  color: #856404;
  background-color: #fff3cd;
  border-color: #ffeeba;
}

.form-control {
  display: block;
  width: 100%;
  height: calc(1.5em + .75rem + 2px);
  padding: .375rem .75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  background-color: var(--color-white);
  background-clip: padding-box;
  border: 1px solid #ced4da;
  border-radius: .25rem;
  transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.justify-content-center {
  -ms-flex-pack: center !important;
  justify-content: center !important;
}

.m-auto {
  margin: auto !important;
}

/* ============================================================================
   🎨 UTILIDADES DE COLOR DUPLICADAS - ELIMINAR COMPLETAMENTE
   ============================================================================ */

.text-lowercase {
  text-transform: lowercase !important;
}

.text-uppercase {
  text-transform: uppercase !important;
}

.text-capitalize {
  text-transform: capitalize !important;
}

.font-weight-light {
  font-weight: 300 !important;
}

.font-weight-lighter {
  font-weight: lighter !important;
}

.font-weight-normal {
  font-weight: 400 !important;
}

.font-weight-bold {
  font-weight: 700 !important;
}

.font-weight-bolder {
  font-weight: bolder !important;
}

.font-italic {
  font-style: italic !important;
}

.text-white {
  color: #fff !important;
}

.text-primary {
  color: #000099 !important;
}

a.text-primary:hover,
a.text-primary:focus {
  color: #ff3300 !important;
}

/* ... todas las demás utilidades de texto que replican Bootstrap */

.visible {
  visibility: visible !important;
}

.invisible {
  visibility: hidden !important;
}

.text-decoration-none {
  text-decoration: none !important;
}

.text-break {
  word-break: break-word !important;
  overflow-wrap: break-word !important;
}

.text-reset {
  color: inherit !important;
}

/* ============================================================================
   📐 UTILIDADES DE ESPACIADO DUPLICADAS - ELIMINAR COMPLETAMENTE
   ============================================================================ */

/* NOTA: Solo eliminar si NO están personalizadas para el tema */

.al-block {
  display: block;
  width: 100%;
}

.al-width {
  width: 50%;
}

/* ============================================================================
   🎭 EFECTOS HOVER DUPLICADOS - ELIMINAR COMPLETAMENTE
   ============================================================================ */

/* Cualquier efecto hover que replique exactamente los de Bootstrap */

/* ============================================================================
   📱 RESPONSIVE UTILITIES DUPLICADAS - ELIMINAR COMPLETAMENTE
   ============================================================================ */

/* Media queries que solo replican las de Bootstrap sin personalización */

/* ============================================================================
   🎯 INSTRUCCIONES FINALES
   ============================================================================ */

/*
RESUMEN DE ELIMINACIÓN:

1. ELIMINAR COMPLETAMENTE:
   - Todo el sistema .card, .card-deck, .card-group, .card-columns
   - Todo el sistema .breadcrumb
   - Todo el sistema .badge
   - .jumbotron y .jumbotron-fluid
   - Todo el sistema .alert (excepto personalizaciones)
   - .media y .media-body
   - Todo el sistema .list-group
   - .close button
   - Utilidades de texto estándar (.text-uppercase, .font-weight-*, etc.)
   - Utilidades de espaciado estándar no personalizadas

2. CONSERVAR Y REFACTORIZAR:
   - Variables CSS personalizadas (todas las --variables)
   - Estilos específicos del CMS con personalizaciones
   - Formularios con estilos personalizados del tema
   - Navegación personalizada
   - Widgets específicos del CMS
   - Foros phpBB
   - Sistema de productos
   - Widget de WhatsApp
   - Componentes con gradientes o efectos específicos del tema

3. RESULTADO ESPERADO:
   - Reducción del archivo CSS en aproximadamente 40-50%
   - Eliminación de conflictos de especificidad
   - Mejor rendimiento de carga
   - Mantenimiento más fácil
   - Sin pérdida de funcionalidad

TOTAL DE LÍNEAS A ELIMINAR: Aproximadamente 1,200-1,500 líneas
TOTAL DE REGLAS CSS A ELIMINAR: Aproximadamente 85-100 reglas duplicadas
*/