@media (max-width: 620px) {
.entrar-link-dir {
display: none !important;
}
}

@media (min-width: 992px) and (max-width: 1120px) {
.sp-megamenu-parent > li > a, .sp-megamenu-parent > li > span {
	padding: 0 6px !important;
}
}

.splms-attachments__title {
display: none;
}

/* Attachments table */
.splms-attachments { margin: 2rem 0; }
.splms-attachments__title {
  margin-bottom: 1rem;
  font-size: 1.25rem;
  font-weight: 600;
}
.splms-attachments__empty {
  padding: .75rem 1rem;
  background: #f6f7f9;
  border: 1px solid #e8eaf0;
  border-radius: .5rem;
  color: #555;
}

.splms-attachments__table-wrap { overflow-x: auto; }
.splms-attachments__table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed; /* ✅ helps column consistency */
  min-width: 640px;
}

/* Header cells */
.splms-attachments__table thead th {
  text-align: left;
  font-weight: 600;
  font-size: .95rem;
  padding: .75rem 1rem;
  background: #f3f4f6;
  border-bottom: 1px solid #e5e7eb;
  color: #111827;
}

/* Column widths */
.splms-attachments__col--name   { width: 55%; }   /* filenames */
.splms-attachments__col--author { width: 20%; }   /* author */
.splms-attachments__col--size   { width: 12%; text-align: right; }  /* ✅ right-align header */
.splms-attachments__col--action { width: 13%; text-align: right; }  /* ✅ right-align header */
.splms-attachments__col.splms-attachments__col--action {
	text-align: right;
	/* margin-right: 3px; */
}
/* Body cells */
.splms-attachments__table tbody td {
  padding: .75rem 1rem;
  border-bottom: 1px solid #eef1f5;
  vertical-align: middle;
}

/* Alignments */
.splms-attachments__cell--name { font-weight: 500; text-align: left; }
.splms-attachments__cell--author { text-align: left; }
/* Body cells already: */
.splms-attachments__cell--size   { text-align: left; white-space: nowrap; }
.splms-attachments__cell--action { text-align: right; white-space: nowrap; }
/* Buttons */
.splms-btn {
  display: inline-block;
  padding: .5rem .875rem;
  border-radius: .5rem;
  text-decoration: none;
  font-weight: 600;
  border: 1px solid transparent;
}
.splms-btn--download {
  background: #0ea5e9;
  color: #fff;
}
.splms-btn--download:hover {
  background: #0284c7;
}

/* Make sure header/body use the same padding so edges line up */
.splms-attachments__table thead th,
.splms-attachments__table tbody td {
  padding: .75rem 1rem;
}

/* Responsive behavior */
@media (max-width: 768px) {
  .splms-attachments__table {
    font-size: .9rem;
  }
  .splms-attachments__col--name { width: 55%; }
  .splms-attachments__col--action { width: auto; }
}




/* ------------ Base (desktop stays as you have) ------------ */

/* Your existing styles… (keep them) */

/* ------------ Mobile: stack rows, hide size, keep all info readable ------------ */
@media (max-width: 1200px) {
  /* Remove horizontal scroll and fixed table width */
  .splms-attachments__table-wrap {
    overflow: visible; /* we’re stacking, no need to scroll horizontally */
  }
  .splms-attachments__table {
    display: block;
    border: 0;
    min-width: 0;         /* override previous min-width */
    table-layout: auto;   /* free up layout for stacking */
    font-size: .95rem;
  }

  /* Hide the header row on mobile (we’ll use td::before for labels) */
  .splms-attachments__table thead {
    display: none;
  }

  /* Each row becomes a card-like block */
  .splms-attachments__table tbody,
  .splms-attachments__table tr {
    display: block;
    width: 100%;
  }

  .splms-attachments__table tr.splms-attachments__row {
    border: 1px solid #eef1f5;
    border-radius: .5rem;
    padding: .5rem .75rem;
    margin-bottom: .75rem;
    background: #fff;
  }

  /* Cells become stacked lines */
  .splms-attachments__table td {
    display: block;
    width: 100%;
    border: 0;
    padding: .4rem 0;
  }

  /* Use the data-label as an inline label before the value */
  .splms-attachments__table td::before {
    content: attr(data-label);
    display: inline-block;
    min-width: 6.5rem;          /* label width */
    margin-right: .5rem;
    font-weight: 600;
    color: #4b5563;
  }

  /* Filename on top: make it bold, bigger, and on its own line without label */
  .splms-attachments__cell--name {
    font-weight: 600;
    font-size: 1rem;
    padding-top: .2rem;
  }
  .splms-attachments__cell--name::before {
    content: ''; /* no label for the first line */
    display: none;
  }

  /* Hide the size column on mobile as requested */
  .splms-attachments__cell--size {
    display: none;
  }

  /* Author line under the file name */
  .splms-attachments__cell--author {
    margin-top: .1rem;
  }

  /* Download button: pull it to the left, on its own line */
  .splms-attachments__cell--action {
    margin-top: .35rem;
    text-align: left;
  }
  .splms-attachments__cell--action::before {
    content: ''; /* No label for the button line */
    display: none;
  }

  /* Slightly smaller button on mobile */
  .splms-btn {
    padding: .45rem .7rem;
    font-size: .95rem;
    border-radius: .45rem;
  }
}


@media (max-width: 1300px) {
.logo-image-phone {
	height: auto !important;
}
.logo-image {
	height: auto !important;
}
}




.sp-page-title-heading {
  text-align: center;
}

.course-header.clearfix {
	text-align: center;
}

.sp-page-title {
	padding: 35px 0px !important;
	background-size: cover;
	background-repeat: no-repeat;
}

.papers .nav-area {
	display: none;
}

.papers .splms-course-description {
	display: none;
}

#sp-footer {
	display: none;
}

section#sp-bottom-top {
	padding: 0px 0px 0px 0px !important;
}

.splms-lesson-description p {
	display: none !important;
}


/* Neutralize Helix floating/toast style and show messages inline */
#system-message-container {
  position: static !important;
  inset: auto !important;      /* top/right/bottom/left reset */
  width: 100% !important;
  max-width: 920px;
  z-index: auto !important;
}

/* If Helix wraps messages in its own floating container (sp-message / sp-notifications) */
.sp-message, .sp-notifications {
  position: static !important;
  inset: auto !important;
  width: 120% !important;
  max-width: 920px;
  margin: 20px auto !important;
  pointer-events: auto;
}

/* Ensure the web component itself isn’t positioned as a toast */
joomla-alert[role="alert"] {
  position: static !important;
  inset: auto !important;
  margin: 0 0 1rem 0 !important;
  box-shadow: none !important;
}

#system-message-container joomla-alert {
	font-size: 16px !important;
}

joomla-alert[type="info"] {
	background-color: #00ae0b !important;
	color: #fff !important
}

@media screen and (min-width: 576px) {
joomla-alert {
	min-width: 500px !important;
}
}

.alert-message {
	text-align: center !important;
}

/* Apply background to Perfil (Edit Profile) page */
body.perfil #sp-main-body {
	background-image: url("/images/2025/10/21/advips_logotipo_bck-2.png");
	background-repeat: no-repeat;
	background-size: contain;
	background-attachment: fixed;
	background-position: 0 0;
	box-shadow: 0 0 0 0 #ffffff;
}

body.papers #sp-main-body {
	background-image: url("/images/2025/10/21/advips_logotipo_bck-2.png");
	background-repeat: no-repeat;
	background-size: contain;
	background-attachment: fixed;
	background-position: 0 0;
	box-shadow: 0 0 0 0 #ffffff;
}



/* Hide list bullet (marker) for login menu */
.menumenu-right-login,
.menumenu-right-login li {
	list-style: none;
	text-transform: uppercase;
}

.menumenu-right-login li::marker {
	display: none;
	content: none;
}

/* Match the style of the main menu for the right login menu */
.menumenu-right-login {
	list-style: none;
	padding: 0;
	margin: 0 -15px;
	z-index: 99;
	display: block;
	position: relative;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

/* Align menu items horizontally like the main menu */
.menumenu-right-login > li {
	display: inline-block;
	position: relative;
	padding: 0;
}

/* Match the link styling of the main menu */
.menumenu-right-login > li > a {
	color: #95a3ae;
	text-decoration: none;
	padding: 0 15px;
	line-height: 60px; /* match header height */
	display: inline-block;
	transition: color 0.3s ease;
}

/* Hover & active styles like the main menu */
.menumenu-right-login > li > a:hover,
.menumenu-right-login > li.current > a,
.menumenu-right-login > li.active > a {
	color: #95a3ae; /* adjust if main menu uses another hover color */
	font-weight: bold;
	font-size: 14px;
	font-family: Arial, Helvetica, sans-serif;
}

/* Remove bullets/markers */
.menumenu-right-login li::marker {
	display: none;
	content: none;
}

/* Optional: alignment fix if it sits on the right side of the header */
.menumenu-right-login {
	float: right;
}


#jform_username-lbl,
#jform_username {
display: none;
}

.course-details .nav-area {
	display: none;
}

.course-details #course-about {
	display: none;
}

.course-details .course-short-info {
	display: none;
}

#topicId0 span {
	display: none;
}

#topicId0::after {
	display: none;
}

#course-lessons h3 {
	text-align: center;
}


.list-unstyled li::before {
	display: none;
}


/* Wrapper */
.adv-cluster {
  padding: clamp(24px, 5vw, 10px) 0;
}

.adv-cluster__inner {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 clamp(16px, 3vw, 24px);
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(28px, 6vw, 80px);
  align-items: center;
}

/* Mobile stack */
@media (max-width: 860px) {
  .adv-cluster__inner {
    grid-template-columns: 1fr;
  }
}

/* Pills container */
.adv-cluster__pills {
  position: relative;
  min-height: 300px;
}

/* Pill style */
.pill {
  --h: clamp(54px, 7vw, 70px);
  --r: 999px;
  --padx: clamp(12px, 1.5vw, 20px); /* smaller padding */

  position: relative;
  z-index: var(--z, 1);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  height: var(--h);
  border-radius: var(--r);
  padding: 0 var(--padx);
  background: #e5e7eb;
  border: 2px solid rgba(0,0,0,0.05);
  transform: translate(var(--x,0), var(--y,0));
  margin-bottom: -5px; /* small overlap */
}

/* Text inside pill */
.pill span {
  font-weight: 800;
  font-size: clamp(15px, 1.2vw, 19px);
  line-height: 1.2;
  color: #0b1a23;
  white-space: nowrap;
}

/* Varied widths (narrower overall) */
.pill.pill--c1 { width: clamp(280px, 30vw, 380px); }
.pill.pill--c2 { width: clamp(300px, 32vw, 420px); }
.pill.pill--c3 { width: clamp(260px, 28vw, 360px); }
.pill.pill--c4 { width: clamp(310px, 34vw, 440px); }

/* Colors */
.pill--c1 { background:#10c7e6; }
.pill--c2 { background:#ffd34a; }
.pill--c3 { background:#8a7ff7; }
.pill--c4 { background:#22c58b; }

/* Right column text */
.adv-cluster__content p {
  margin: 0;
  font-size: clamp(16px, 1.25vw, 18px);
  line-height: 1.6;
  color: #112433;
}

/* Mobile layout adjustments */
@media (max-width: 860px) {
  .adv-cluster__pills {
    min-height: auto;
    display: grid;
    gap: 14px;
    justify-items: start;
  }
  .pill {
    transform: none !important;
    margin: 0;
    width: 100%;
    max-width: 263px;
  }
  .pill span {
    white-space: normal;
  }
}


@media (min-width: 860px) and (max-width:1200px) {
  .pill {
    transform: none !important;
    margin: 10px 0px;
    width: 100%;
    max-width: 400px;
  }
}
.edocman-document-title-td-header {
	display: block !important;
}

#edocman-category {
	display: none;
}

.sortPagiBar {
  display: none !important;
}

.edocman-document-title-td-header {
	font-family: "Inter" !important;
	font-size: 16px !important;
  font-weight: 500 !important;
}

.edocman-document-title-td-header a {
	font-family: "Inter" !important;
	font-size: 16px !important;
  font-weight: 500 !important;
  color: rgb(17, 33, 45) !important;
}

.edocman-document-title-td-header a:visited {
  color: rgb(17, 33, 45);
}

.edocman-document-title-td-header a:hover {
  text-decoration: underline !important;
}
.edocman-download-link {
display: inline-block;
  padding: .5rem .875rem !important;
  border-radius: .5rem !important;
  text-decoration: none !important;
  font-weight: 600 !important;
  border: 1px solid transparent !important;
  background: #0ea5e9 !important;
}

.edocman_download_label {
	color: #FFF;
	font-size: 16px !important;
	font-family: "Inter" !important;
	font-weight: 600 !important;
}

.edicon.edicon-cloud-download {
	display: none !important;
}

/* -------------------------------
   FRONTEND TAG STYLING - FINAL
   ------------------------------- */
.tag_module {
  list-style: none !important;
  padding-left: 0 !important;
  margin: 0 !important;
}

.tag_module > li {
  list-style: none !important;
  margin: 6px 8px !important;          /* more spacing between rows and columns */
  display: inline-block !important;
}

.tag_module > li > a {
  position: relative !important;
  display: inline-block !important;
  background: rgb(20, 86, 130) !important;   /* base color */
  color: #fff !important;
  border-radius: 9999px !important;          /* fully rounded */
  font-size: 14px !important;
  line-height: 1.5 !important;
  text-decoration: none !important;
  padding: 6px 16px !important;              /* more padding for the pill shape */
  transition: background-color 0.2s ease !important;
}

/* hover / focus state */
.tag_module > li > a:hover,
.tag_module > li > a:focus {
  background: rgb(28, 104, 150) !important;  /* slightly lighter on hover */
  color: #fff !important;
}

/* remove arrow and dot decorations */
.tag_module > li > a::before,
.tag_module > li > a::after {
  content: none !important;
  display: none !important;
}



/* Make the old search table display as flex row */
.search_table {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: 100% !important;
  border: none !important;
  margin-bottom: 1rem !important;
}

.search_table tbody,
.search_table tr,
.search_table td {
  display: contents !important; /* flatten the table structure */
}

/* Style the input */
.search_table input[type="text"],
.search_table .form-control {
  flex: 1 1 auto !important;
  width: 100% !important;
  max-width: none !important;
  padding: 10px 14px !important;
  border: 1px solid #ccc !important;
  border-radius: 6px 0 0 6px !important;
  font-size: 14px !important;
  box-sizing: border-box !important;
}

/* Style the button */
.search_table .search_button {
  flex: 0 0 auto !important;
  padding: 10px 20px !important;
  border-radius: 0 6px 6px 0 !important;
  margin-left: 0 !important;
  background: rgb(20, 86, 130) !important;
  border: none !important;
  font-weight: 500 !important;
  transition: background 0.2s ease !important;
}

/* Hover effect */
.search_table .search_button:hover {
  background: rgb(28, 104, 150) !important;
  cursor: pointer !important;
}

#edocmanSearchDiv {
	padding-top: 40px !important;
}

.edocman-page-heading {
	font-weight: 600 !important;
}

.sp-module-content-top {
	margin-bottom: 50px !important;
}
@media screen and (max-width: 600px) {
#table-document td {
	text-align: left !important;
	font-size: 13px;
}
}

.pagination .page-item.active .page-link {
	border: solid 2px rgb(28, 104, 150) !important;
	border-radius: 50%;
	color: rgb(28, 104, 150) !important;
	width: 48px;
	height: 48px;
	padding-top: 12px;
	line-height: normal;
}

.pagination .page-item.active .page-link:hover, .pagination .page-item.active .page-link:focus, .pagination .page-item.active .page-link:active {
	background-color: rgb(28, 104, 150) !important;
	color: #fff !important;
}

.pagination .page-item .page-link:hover, .pagination .page-item .page-link:focus, .pagination .page-item .page-link:active {
	color: rgb(28, 104, 150) !important;
	box-shadow: none;
}

a:hover, a:focus, a:active {
	color: rgb(28, 104, 150) !important;
  transform: scale(1.1);
}

.splms-btn.splms-btn--download:hover {
	color: #fff !important;
}