/* LuJuBO · Planeación Docente · Blue Obsidian Build 013 */
:root{
  --lujubo-bg:#020817;
  --lujubo-panel:#071327;
  --lujubo-panel-2:#0a1930;
  --lujubo-card:#0b1730;
  --lujubo-line:#24456c;
  --lujubo-line-soft:rgba(83,139,205,.34);
  --lujubo-blue:#4b93ff;
  --lujubo-blue-2:#76b6ff;
  --lujubo-text:#f7fbff;
  --lujubo-muted:#9fb1c8;
  --lujubo-danger:#ef5b68;
}

body{
  background:
    radial-gradient(circle at 10% 0%, rgba(44,93,163,.22), transparent 28rem),
    linear-gradient(180deg,#071120 0%,#020817 100%) !important;
  color:var(--lujubo-text) !important;
}

/* contenedores y superficies */
.plan-shell,.proy-shell,.container{max-width:1160px !important;}
.plan-main-card,.proy-main-card,.card,.sesion-card,.vinculo-box,.sec,
.border.rounded,.alert-info{
  background:linear-gradient(145deg,rgba(12,28,53,.96),rgba(6,18,37,.98)) !important;
  border:1px solid var(--lujubo-line-soft) !important;
  box-shadow:0 18px 45px rgba(0,0,0,.18) !important;
  color:var(--lujubo-text) !important;
}
.plan-main-card,.proy-main-card,.card.shadow-sm{border-radius:18px !important;}

/* encabezados */
.plan-icon{
  background:linear-gradient(145deg,#1956a6,#267bf3) !important;
  border:1px solid rgba(118,182,255,.52) !important;
  color:#fff !important;
  box-shadow:0 0 24px rgba(50,130,255,.24) !important;
}
.plan-title,.proy-header-title,.page-header-title,
h1,h2,h3,h4,h5,h6,.card-title,.sesion-title,.fase-title{
  color:var(--lujubo-text) !important;
}
.plan-subheader,.proy-header-sub,.page-header-sub,.text-muted,.text-secondary,small,
.card-text{color:var(--lujubo-muted) !important;}

/* chips y badges */
.plan-badge,.plan-chip-info,.plan-chip-inst,.proy-header-chip,.badge-disc,.chip-grupo,
.badge.bg-secondary{
  background:rgba(23,55,94,.56) !important;
  color:#cde4ff !important;
  border:1px solid rgba(88,151,226,.45) !important;
  border-radius:999px !important;
}
.badge-disc{padding:.35rem .65rem !important;}

/* todos los botones de navegación y acción primaria */
.btn-regresar,.btn-back-main,.plan-btn-back,
a.btn-warning,a.btn-primary,a.btn-success,.btn-nuevo,
.btn.btn-warning,.btn.btn-success,.btn.btn-primary,
.btn-outline-primary,.btn-outline-light,.btn-outline-secondary{
  background:linear-gradient(180deg,rgba(31,91,178,.92),rgba(20,67,139,.96)) !important;
  border:1px solid #4b93ff !important;
  color:#eaf4ff !important;
  border-radius:999px !important;
  box-shadow:none !important;
  text-decoration:none !important;
}
.btn-regresar:hover,.btn-back-main:hover,.plan-btn-back:hover,
a.btn-warning:hover,a.btn-primary:hover,a.btn-success:hover,.btn-nuevo:hover,
.btn.btn-warning:hover,.btn.btn-success:hover,.btn.btn-primary:hover,
.btn-outline-primary:hover,.btn-outline-light:hover,.btn-outline-secondary:hover{
  background:linear-gradient(180deg,#2f7ae8,#1f5cb4) !important;
  color:#fff !important;
  transform:translateY(-1px);
}

/* acciones de tarjetas: azul para ver/editar; rojo solo eliminar */
.btn-icon,.card .btn-sm{
  border-radius:11px !important;
}
.btn-view,.btn-edit,.card .btn-primary.btn-sm,.card .btn-warning.btn-sm{
  background:#123d78 !important;
  border:1px solid #397fd3 !important;
  color:#ddecff !important;
}
.btn-del,.btn-danger,.card .btn-danger.btn-sm{
  background:rgba(126,34,49,.76) !important;
  border:1px solid rgba(239,91,104,.68) !important;
  color:#ffdce0 !important;
}

/* formularios */
.form-control,.form-select,textarea,input[type="text"],input[type="number"],input[type="date"]{
  background:#071a33 !important;
  color:#f4f8ff !important;
  border:1px solid #24507f !important;
  border-radius:12px !important;
  box-shadow:none !important;
}
.form-control:focus,.form-select:focus,textarea:focus,input:focus{
  border-color:#4b93ff !important;
  box-shadow:0 0 0 .2rem rgba(75,147,255,.13) !important;
}
.form-control::placeholder,textarea::placeholder{color:#7f95b0 !important;}
.form-label,label{color:#aebdd0 !important;}
.form-check-input{background-color:#071a33 !important;border-color:#4776aa !important;}
.form-check-input:checked{background-color:#2c74dc !important;border-color:#5ca1ff !important;}

/* tablas y áreas de sesión/proyecto */
.table,.tabla-planea,.tabla-planeas{--bs-table-bg:transparent !important;--bs-table-color:#eaf2ff !important;color:#eaf2ff !important;}
.table th,.table td,.tabla-planea th,.tabla-planea td,.tabla-planeas th,.tabla-planeas td{
  background:#071a33 !important;
  color:#eaf2ff !important;
  border-color:#31557d !important;
}
.table th,.tabla-planea th,.tabla-planeas th,.card-header{
  background:#10294d !important;
  color:#eaf3ff !important;
}
.table-responsive{border-radius:14px !important;overflow:auto !important;border:1px solid var(--lujubo-line-soft) !important;}

/* CKEditor */
.ck.ck-toolbar,.ck.ck-editor__top .ck-sticky-panel .ck-toolbar{
  background:#0d1a31 !important;
  border-color:#31557d !important;
}
.ck.ck-editor__main>.ck-editor__editable{
  background:#020817 !important;
  color:#f2f6fb !important;
  border-color:#31557d !important;
  min-height:90px;
}
.ck.ck-button,.ck.ck-button .ck-button__label,.ck.ck-icon{color:#b9c9dc !important;}
.ck.ck-button:hover,.ck.ck-button.ck-on{background:#173a66 !important;}

/* headings que antes usaban verde lima */
.plan-main-card h4,.plan-main-card h5,.proy-main-card h4,.proy-main-card h5,
.proy-main-card .fase-title,.plan-main-card .fase-title{
  color:#8bc0ff !important;
}

/* listas */
.card{transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease !important;}
.card:hover{border-color:rgba(80,150,235,.68) !important;transform:translateY(-2px) !important;box-shadow:0 18px 42px rgba(0,0,0,.26) !important;}
.alert-info{color:#c9e4ff !important;}

/* vista detalle */
.info-label{color:#83b7ef !important;}
.info-value,.bloque-html,.ck-content{color:#e6effb !important;}
.divider{border-color:#284d76 !important;}

/* LUMA permanece como acompañante, pero sin competir con el módulo */
.lumia-fab{box-shadow:0 8px 28px rgba(0,0,0,.25) !important;}

/* responsive */
@media (max-width:767px){
  .plan-header,.d-flex.justify-content-between.align-items-center,.d-flex.justify-content-between.align-items-start{
    gap:12px !important;
  }
  .plan-shell,.proy-shell,.container{padding-left:14px !important;padding-right:14px !important;}
  .table-responsive{overflow-x:auto !important;}
}


/* Build 013 · neutraliza residuos cromáticos de la etapa anterior */
[style*="#c2ff05"],[style*="lime"]{color:#f7fbff!important;}
.text-success:not(.alert-success){color:#8bc0ff!important;}
