/* Lexcellens visual identity 1.17.1 */
:root{
  --lx-brand-black:#111111;
  --lx-brand-petrol:#0F4661;
  --lx-brand-gold:#C9A227;
  --lx-brand-white:#FFFFFF;
}

/* Radar normativo empresarial. */
.lx-radar-dashboard,.lx-radar-profile-form{max-width:1180px;margin:0 auto;color:#101828;font-family:"Inter","Segoe UI",Arial,sans-serif}
.lx-radar-dashboard>header,.lx-radar-profile-form>header{padding:24px 28px;background:#07133f;border-bottom:4px solid #C9A227}
.lx-radar-dashboard>header{display:flex;align-items:center;justify-content:space-between;gap:24px}
.lx-radar-dashboard>header span{color:#C9A227;font-size:12px;font-weight:600;letter-spacing:.09em;text-transform:uppercase}
.lx-radar-dashboard>header h1,.lx-radar-profile-form>header h2{margin:5px 0 4px;color:#fff;font-size:28px;font-weight:600}
.lx-radar-dashboard>header p,.lx-radar-profile-form>header p{margin:0;color:#fff;font-size:15px}
.lx-radar-toolbar{display:grid;grid-template-columns:minmax(240px,1fr) auto minmax(190px,.45fr);gap:12px;align-items:end;padding:20px 24px;background:#fff;border:1px solid #d8dee9;border-top:0}
.lx-radar-toolbar label,.lx-radar-fields label{display:grid;gap:7px}
.lx-radar-toolbar label>span,.lx-radar-fields label>span{color:#27364b;font-size:13px;font-weight:600}
.lx-radar-toolbar select,.lx-radar-fields input,.lx-radar-fields select,.lx-radar-alert select{width:100%;min-height:44px;padding:9px 11px;color:#07133f;background:#fff;border:1px solid #8091a7;border-radius:3px;font:inherit}
.lx-radar-dashboard>aside{display:flex;flex-wrap:wrap;gap:10px 24px;padding:16px 24px;color:#07133f;background:#fff;border:1px solid #d8dee9;border-top:0}
.lx-radar-dashboard>aside span{color:#536174}
.lx-radar-alerts{display:grid;gap:16px;padding:22px 0}
.lx-radar-alert{padding:22px 24px;background:#fff;border:1px solid #d8dee9;border-left:4px solid #C9A227;border-radius:3px}
.lx-radar-alert>header{display:flex;justify-content:space-between;gap:16px}
.lx-radar-alert>header div{display:flex;gap:8px}.lx-radar-alert>header span{padding:4px 7px;color:#07133f;background:#fff;border:1px solid #C9A227;font-size:11px;font-weight:600;letter-spacing:.05em}
.lx-radar-alert>header>strong{color:#526176;font-size:13px;font-weight:600}.lx-radar-alert h3{margin:14px 0 8px;color:#07133f;font-size:20px;font-weight:600}.lx-radar-alert p{line-height:1.6}
.lx-radar-alert dl{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}.lx-radar-alert dl div{padding:10px 12px;border:1px solid #e0e5ed}.lx-radar-alert dt{color:#647185;font-size:12px}.lx-radar-alert dd{margin:3px 0 0;color:#07133f;font-weight:600}
.lx-radar-alert section{margin-top:14px;padding-top:13px;border-top:1px solid #e0e5ed}.lx-radar-alert h4{margin:0 0 5px;color:#07133f;font-size:15px;font-weight:600}.lx-radar-alert footer{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:18px}.lx-radar-alert footer a{text-decoration:none}
.lx-radar-empty{padding:40px;text-align:center;background:#fff;border:1px solid #d8dee9}.lx-radar-empty h3{color:#07133f;font-weight:600}.lx-radar-empty p,.lx-radar-muted{color:#647185}
.lx-radar-profile-form{background:#fff;border:1px solid #d8dee9}.lx-radar-profile-form>header{margin:-1px -1px 0}.lx-radar-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:24px}.lx-radar-check{display:flex;gap:9px;align-items:center;margin:0 24px 22px;color:#27364b}.lx-radar-conventions{margin:0 24px;padding:20px 0;border-top:1px solid #d8dee9}.lx-radar-conventions>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:18px}.lx-radar-conventions h3{color:#07133f;font-size:18px;font-weight:600}.lx-radar-convention{display:grid;grid-template-columns:auto 1fr;gap:11px;align-items:start;margin-top:10px;padding:13px;border:1px solid #d8dee9}.lx-radar-convention strong,.lx-radar-convention small{display:block}.lx-radar-convention strong{color:#07133f;font-weight:600}.lx-radar-convention small{margin-top:4px;color:#647185}.lx-radar-profile-form>footer{display:flex;justify-content:flex-end;gap:12px;padding:18px 24px;border-top:1px solid #d8dee9}
@media(max-width:760px){.lx-radar-dashboard>header{align-items:stretch;flex-direction:column}.lx-radar-toolbar,.lx-radar-fields,.lx-radar-alert dl{grid-template-columns:1fr}.lx-radar-alert footer,.lx-radar-conventions>div:first-child{align-items:stretch;flex-direction:column}.lx-radar-alert footer .lx-secondary{text-align:center}}

.lx-app,
.lx-app *{
  font-family:"Inter","Segoe UI",Arial,sans-serif;
}

.lx-app{
  --lx-brand-line-top:#0F4661;
  --lx-brand-line-main:#0F4661;
  --lx-brand-line-accent:#C9A227;
  --lx-brand-line-start:75%;
  --lx-brand-line-end:80%;
  --lx-brand-line-size:4px;
  font-size:17px;
  line-height:1.6;
  border-top:var(--lx-brand-line-size) solid var(--lx-brand-line-top)!important;
}

.lx-hero{
  border-bottom:var(--lx-brand-line-size) solid transparent!important;
}

.lx-hero:after{
  left:0;
  right:auto;
  width:100%;
  bottom:calc(-1 * var(--lx-brand-line-size));
  height:var(--lx-brand-line-size);
  background:linear-gradient(90deg,var(--lx-brand-line-main) 0%,var(--lx-brand-line-main) var(--lx-brand-line-start),var(--lx-brand-line-accent) var(--lx-brand-line-end),var(--lx-brand-line-accent) 100%);
}

.lx-brandline{
  align-items:center;
}

.lx-monogram,
.lx-welcome-mark{
  display:none!important;
}

.lx-brand-logo{
  display:block;
  width:190px;
  height:auto;
  max-height:48px;
  object-fit:contain;
  object-position:left center;
}

.lx-welcome-logo{
  display:block;
  width:min(280px,70vw);
  height:auto;
  margin:0 auto 22px;
  object-fit:contain;
}

.lx-app .lx-bubble{
  max-width:none;
}

.lx-app .lx-assistant .lx-bubble{
  width:auto;
  flex:1 1 auto;
  min-width:0;
}

.lx-app .lx-assistant{
  width:100%;
}

.lx-related-sources{
  margin-top:18px;
  border:1px solid #0F4661;
  border-radius:5px;
  background:#FFFFFF;
}

.lx-related-sources>summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:14px 17px;
  color:#FFFFFF;
  background:#0F4661;
  cursor:pointer;
  list-style:none;
  font-weight:500;
}

.lx-related-sources>summary::-webkit-details-marker{
  display:none;
}

.lx-related-sources>summary span{
  display:inline-grid;
  min-width:28px;
  height:28px;
  padding:0 7px;
  place-items:center;
  color:#111111;
  background:#C9A227;
  border-radius:14px;
  font-size:13px;
}

.lx-related-content{
  padding:6px 17px 15px;
}

.lx-related-group h5{
  margin:20px 0 8px;
  color:#0F4661;
  font-family:"Inter","Segoe UI",Arial,sans-serif!important;
  font-size:20px;
  font-weight:600!important;
  line-height:1.4;
  letter-spacing:.01em;
}

.lx-related-group article{
  display:grid;
  grid-template-columns:minmax(0,1fr) 468px;
  align-items:center;
  gap:20px;
  padding:13px 0;
  border-bottom:1px solid #d7e0e4;
}

.lx-related-group article>.lx-source-links{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  align-items:stretch;
  width:468px;
  margin-top:0;
}

.lx-related-group article>.lx-source-links .lx-source-button{
  width:100%;
  min-height:60px;
}

.lx-related-group article>.lx-source-links .lx-source-official{
  grid-column:1;
}

.lx-related-group article>.lx-source-links .lx-source-open{
  grid-column:2;
}

.lx-related-group article:last-child{
  border-bottom:0;
}

.lx-related-group article p{
  margin:3px 0 0;
  color:#4d5b62;
  font-size:13px;
}

@media(max-width:900px){
  .lx-related-group article{
    align-items:flex-start;
    grid-template-columns:1fr;
    gap:12px;
  }

  .lx-related-group article>.lx-source-links{
    width:100%;
  }
}

@media(max-width:520px){
  .lx-related-group article>.lx-source-links{
    grid-template-columns:1fr;
  }

  .lx-related-group article>.lx-source-links .lx-source-official,
  .lx-related-group article>.lx-source-links .lx-source-open{
    grid-column:1;
  }
}

.lx-app .lx-bubble p,
.lx-app .lx-bubble li{
  line-height:1.6;
}

.lx-app .lx-form textarea{
  font-family:"Inter","Segoe UI",Arial,sans-serif;
  font-size:17px;
  line-height:1.6;
}

.lx-app button,
.lx-app input,
.lx-app select{
  font-family:"Inter","Segoe UI",Arial,sans-serif;
}

/* Botones limpios: sin barras inferiores decorativas. */
.lx-app button{
  border-radius:5px;
  border-bottom-width:1px!important;
  font-weight:500!important;
  transition:background-color .15s ease,color .15s ease,border-color .15s ease,transform .15s ease;
}

.lx-app .lx-primary{
  font-size:16px;
}

.lx-app .lx-primary,
.lx-app .lx-source-compare,
.lx-app .lx-executive-button{
  color:#FFFFFF;
  background:#0F4661;
  border:1px solid #0F4661;
}

.lx-app .lx-primary:hover,
.lx-app .lx-primary:focus,
.lx-app .lx-source-compare:hover,
.lx-app .lx-source-compare:focus,
.lx-app .lx-executive-button:hover,
.lx-app .lx-executive-button:focus{
  color:#FFFFFF;
  background:#111111;
  border-color:#111111;
  transform:translateY(-1px);
}

.lx-app .lx-secondary,
.lx-app .lx-timeline-button{
  color:#111111;
  background:#FFFFFF;
  border:1px solid #0F4661;
}

.lx-app .lx-secondary:hover,
.lx-app .lx-secondary:focus,
.lx-app .lx-timeline-button:hover,
.lx-app .lx-timeline-button:focus{
  color:#FFFFFF;
  background:#0F4661;
  border-color:#0F4661;
}

.lx-app button:focus-visible,
.lx-app a:focus-visible,
.lx-app input:focus-visible,
.lx-app select:focus-visible,
.lx-app textarea:focus-visible{
  outline:2px solid #0F4661;
  outline-offset:2px;
}

.lx-avatar{
  width:44px;
  height:44px;
  border-bottom:0!important;
  font-family:"Inter","Segoe UI",Arial,sans-serif!important;
  font-size:12px;
  font-weight:500!important;
  letter-spacing:.04em;
}

.lx-user .lx-bubble{
  border-bottom:0!important;
}

.lx-tree-button,
.lx-decision-branches button,
.lx-document-actions button,
.lx-standalone-toolbar button{
  border-bottom-width:1px!important;
  border-bottom-color:#0F4661!important;
}

.lx-standalone,
.lx-ficha-print,
.lx-decision-document,
.lx-temporal-document{
  font-family:"Inter","Segoe UI",Arial,sans-serif;
  font-size:17px;
  line-height:1.6;
}

.lx-ficha-print header{
  border-bottom:4px solid transparent!important;
}

.lx-ficha-print header:after{
  left:0;
  width:100%;
  bottom:-4px;
  height:4px;
  background:linear-gradient(90deg,#0F4661 0%,#0F4661 75%,#C9A227 80%,#C9A227 100%);
}

/* Companion views use the same brand tokens as the main chat. */
.lx-decision-node[data-node-type="resultado"],
.lx-decision-path-print{
  background:#FFF9E6;
}

.lx-temporal-content{
  box-shadow:0 7px 18px rgba(17,17,17,.06);
}

.lx-temporal-conclusion{
  background:#FFF9E6;
  border-color:#E6CC67;
}

.lx-temporal-warning{
  color:#604A00;
  background:#FFF9D9;
  border-color:#EAD36D;
}

/* Acciones principales situadas antes de la respuesta. */
.lx-initial-services{
  width:100%;
  max-width:1180px;
  margin-top:28px;
  text-align:left;
}

.lx-service-panel-initial{
  margin-bottom:0;
}

.lx-service-panel{
  margin:0 0 30px;
  padding:20px;
  background:#0F4661;
  border:1px solid #0F4661;
  border-top:4px solid #0F4661;
  border-radius:6px;
}

.lx-service-panel>header{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:20px;
  margin-bottom:16px;
}

.lx-service-panel>header span{
  display:block;
  margin-bottom:3px;
  color:#C9A227;
  font-size:12px;
  font-weight:600;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.lx-service-panel>header strong{
  display:block;
  color:#FFFFFF;
  font-size:20px;
  font-weight:600;
  line-height:1.3;
}

.lx-service-panel>header small{
  max-width:360px;
  color:#4d5b62;
  font-size:13px;
  line-height:1.45;
  text-align:right;
}

.lx-service-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:11px;
}

.lx-service-grid .lx-plan-button,
.lx-service-grid .lx-calculators-button,
.lx-service-grid .lx-radar-button{
  grid-column:1/-1;
  min-height:74px;
  border-left-width:5px;
}

.lx-app button.lx-service-card.lx-plan-button>.lx-service-copy,
.lx-app button.lx-service-card.lx-calculators-button>.lx-service-copy,
.lx-app button.lx-service-card.lx-radar-button>.lx-service-copy{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  row-gap:7px!important;
  width:100%;
}

.lx-app button.lx-service-card.lx-plan-button>.lx-service-copy>strong,
.lx-app button.lx-service-card.lx-plan-button>.lx-service-copy>small,
.lx-app button.lx-service-card.lx-calculators-button>.lx-service-copy>strong,
.lx-app button.lx-service-card.lx-calculators-button>.lx-service-copy>small,
.lx-app button.lx-service-card.lx-radar-button>.lx-service-copy>strong,
.lx-app button.lx-service-card.lx-radar-button>.lx-service-copy>small{
  display:block!important;
  width:100%!important;
  margin:0!important;
  white-space:normal!important;
}

.lx-app button.lx-service-card.lx-plan-button>.lx-service-copy>strong,
.lx-app button.lx-service-card.lx-calculators-button>.lx-service-copy>strong,
.lx-app button.lx-service-card.lx-radar-button>.lx-service-copy>strong{
  line-height:1.3!important;
}

.lx-app button.lx-service-card.lx-plan-button>.lx-service-copy>small,
.lx-app button.lx-service-card.lx-calculators-button>.lx-service-copy>small,
.lx-app button.lx-service-card.lx-radar-button>.lx-service-copy>small{
  line-height:1.4!important;
}

.lx-app .lx-service-card,
.lx-app .lx-service-card.lx-executive-button,
.lx-app .lx-service-card.lx-timeline-button{
  display:block;
  align-items:center;
  width:100%;
  min-height:82px;
  padding:15px 17px;
  color:#111111;
  background:#FFFFFF;
  border:2px solid #C9A227;
  border-bottom:2px solid #C9A227!important;
  border-radius:6px;
  box-shadow:none;
  font-family:"Inter","Segoe UI",Arial,sans-serif!important;
  text-align:left;
}

.lx-app .lx-service-card:hover,
.lx-app .lx-service-card:focus,
.lx-app .lx-service-card.lx-executive-button:hover,
.lx-app .lx-service-card.lx-executive-button:focus,
.lx-app .lx-service-card.lx-timeline-button:hover,
.lx-app .lx-service-card.lx-timeline-button:focus{
  color:#111111;
  background:#FFFFFF;
  border-color:#C9A227;
  transform:translateY(-2px);
  box-shadow:none;
}

.lx-app .lx-service-card:active,
.lx-app .lx-service-card.lx-executive-button:active,
.lx-app .lx-service-card.lx-timeline-button:active{
  color:#111111;
  background:#FFFFFF;
  border-color:#C9A227;
  transform:translateY(0);
}

.lx-service-copy strong,
.lx-service-copy small{
  display:block;
}

.lx-service-copy strong{
  font-size:15px;
  font-weight:600;
  line-height:1.3;
}

.lx-service-copy small{
  margin-top:6px;
  color:#0F4661!important;
  font-size:14px;
  line-height:1.4;
}

.lx-service-card:hover .lx-service-copy strong,
.lx-service-card:focus .lx-service-copy strong,
.lx-service-card:active .lx-service-copy strong{
  color:#C9A227;
}

.lx-service-card:hover .lx-service-copy small,
.lx-service-card:focus .lx-service-copy small,
.lx-service-card:active .lx-service-copy small{
  color:#0F4661!important;
}

/* Enlaces y botones de acceso a fuentes con la identidad acordada. */
.lx-app .lx-source-links a{
  color:#0F4661!important;
  font-family:"Inter","Segoe UI",Arial,sans-serif!important;
  font-size:14px!important;
  font-weight:500!important;
  line-height:1.4;
  text-decoration:underline;
  text-underline-offset:3px;
}

.lx-app .lx-source-links a:hover,
.lx-app .lx-source-links a:focus{
  color:#111111!important;
}

.lx-app .lx-source-open{
  min-height:38px;
  padding:8px 13px;
  color:#FFFFFF;
  background:#0F4661;
  border:1px solid #0F4661;
  border-bottom:1px solid #0F4661!important;
  font-family:"Inter","Segoe UI",Arial,sans-serif!important;
  font-size:14px;
  font-weight:500!important;
}

.lx-app .lx-source-open:hover,
.lx-app .lx-source-open:focus{
  color:#FFFFFF;
  background:#111111;
  border-color:#111111;
}

.lx-app .lx-source-links .lx-source-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
  padding:8px 14px;
  color:#0F4661!important;
  background:#FFFFFF;
  border:1px solid #0F4661;
  border-bottom:1px solid #0F4661!important;
  border-radius:5px;
  font-family:"Inter","Segoe UI",Arial,sans-serif!important;
  font-size:14px!important;
  font-weight:500!important;
  line-height:1.35;
  text-align:center;
  text-decoration:none;
  text-underline-offset:0;
  white-space:normal;
}

.lx-app .lx-source-links .lx-source-button:hover,
.lx-app .lx-source-links .lx-source-button:focus{
  color:#FFFFFF!important;
  background:#0F4661;
  border-color:#0F4661;
  transform:translateY(-1px);
}

.lx-app .lx-source-links .lx-source-button:disabled{
  cursor:wait;
  opacity:.62;
  transform:none;
}

.lx-app .lx-source-title{
  color:#111111;
  font-family:"Inter","Segoe UI",Arial,sans-serif!important;
  font-size:18px;
  font-weight:500;
  line-height:1.5;
}

.lx-app .lx-sources article>span{
  font-size:18px;
  line-height:1.5;
}

/* La cita seleccionada conduce a su fuente y resalta únicamente el texto. */
.lx-app .lx-sources article{
  scroll-margin-top:24px;
  background:#FFFFFF;
}

.lx-app .lx-sources article.lx-source-selected{
  background:#FFFFFF;
}

.lx-app .lx-sources article.lx-source-selected .lx-source-title{
  color:#C9A227!important;
  font-weight:600;
}

.lx-app .lx-sources article.lx-source-selected>span{
  color:#C9A227!important;
  font-weight:600;
}

@media (max-width:1050px){
  .lx-service-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width:700px){
  .lx-app{
    font-size:16px;
  }

  .lx-service-panel{
    padding:15px;
  }

  .lx-service-panel>header{
    align-items:flex-start;
    flex-direction:column;
    gap:5px;
  }

  .lx-service-panel>header small{
    text-align:left;
  }

  .lx-service-grid{
    grid-template-columns:1fr;
    gap:8px;
  }

  .lx-app .lx-service-card,
  .lx-app .lx-service-card.lx-executive-button,
  .lx-app .lx-service-card.lx-timeline-button{
    min-height:68px;
    padding:10px;
  }

}
