html, body {
   height: 100%;
   font-family: SFS, Arial, sans-serif;
   color: #03234D;
   background-color: #f3f3f3;
}

/* Override: logo del header */
.slds-global-header__logo {
   background-image: url("../images/logo-cymaq-1500px.png") !important;
}

/* Tooltip custom */
.custom-tooltip-wrap {
   position: relative;
   display: inline-block;
}
.custom-tooltip-wrap .custom-tooltip-bubble {
   display: none !important;
   background-color: #1a1a1a;
   color: #fff;
   text-align: center;
   font-size: 0.78rem;
   line-height: 1.4;
   padding: 6px 10px;
   border-radius: 4px;
   white-space: normal;
   word-wrap: break-word;
   width: 200px;
   position: absolute;
   bottom: calc(100% + 8px);
   left: 50%;
   transform: translateX(-50%);
   z-index: 9000;
   pointer-events: none;
   box-shadow: 0 2px 8px rgba(0,0,0,0.25);
}
.custom-tooltip-wrap .custom-tooltip-bubble::after {
   content: '';
   position: absolute;
   top: 100%;
   left: 50%;
   transform: translateX(-50%);
   right: auto;
   border: 5px solid transparent;
   border-top-color: #1a1a1a;
}
.custom-tooltip-wrap:hover .custom-tooltip-bubble {
   display: block !important;
}


body {
   width: 100%;
   display: block; /* Changed from table to block to prevent auto-expansion */
   padding-top: var(--header-height);
}

div, form {
   margin: 0px;
   padding: 0px;
}

a {
   color: #0070d2;
   text-decoration: none;
   transition: all 0.1s;
}

.custom-select-header {
   border: none;
   background: transparent;
}
.slds-hide {
   display: none !important;
}
.custom-notificacion {
   top : 20px;
}

.custom-disabled {
   pointer-events: none;
   background-color: #f5f5f5;
   color: #a0a0a0;
   opacity: 0.80;
   cursor: not-allowed;
}

.bg-modal-view-all-custom {
   background: #f3f3f3;
}

/* user */
.user-header-custom {
   background: #242424;
   color: #d8e6fe;
   border-radius: 1.25rem;
}
.forceHighlightsPanel {
   position: relative;
}
.forceChatterUserProfileHighlightsStencilDesktop .profilePic {
   margin-top: -80px;
   width: var(--slds-g-sizing-13, 10rem);
   height: 10rem;
}
.uiMenu {
   position: relative;
}
.uiMenuList--right.uiMenuList {
   left: auto;
   right: 0;
   transform: translateX(0);
}
.uiMenuList--default.uiMenuList {
   background: var(--slds-g-color-surface-container-1, var(--lwc-colorBackgroundAlt));
   box-shadow: var(--slds-g-shadow-2, var(--lwc-shadowDropDown, 0 2px 3px 0 rgba(0, 0, 0, 0.16)));
   border: var(--slds-g-sizing-border-1, var(--lwc-borderWidthThin, 1px)) solid var(--slds-g-color-border-1, var(--lwc-colorBorder, rgb(229, 229, 229)));
   border-radius: var(--slds-g-radius-border-2, var(--lwc-borderRadiusMedium, 0.25rem));
   padding: var(--slds-g-spacing-1, var(--lwc-spacingXSmall, 0.5rem)) 0;
   float: left;
   position: absolute;
   min-width: 100px;
   max-width: 400px;
   left: 50%;
   transform: translateX(-50%);
   margin-top: var(--lwc-spacingXxxSmall, 0.125rem);
}
.uiPopupTarget .popupTargetContainer, .uiPopupTarget.popupTargetContainer {
   position: absolute;
   border-radius: 3px;
   background-color: var(--slds-g-color-surface-container-1, #FFF);
   box-shadow: 0 1px 5px var(--slds-g-color-neutral-10-opacity-75, rgba(0, 0, 0, .75));
}
div.uiPopupTarget {
   display: none;
   position: absolute;
   z-index: 9999;
}
.forceChatterEntityPhotoDetail .photoWrapper, .forceChatterEntityPhotoDetail .photoIconContainer {
   line-height: 0;
}
.forceChatterEntityPhoto.xLargeSize.circular {
   border: 5px solid var(--slds-g-color-neutral-base-95, var(--lwc-colorBackground, rgb(243, 243, 243)));
}
.forceChatterEntityPhoto.defaultPhoto {
   background-position: center;
   background-size: cover;
   background-repeat: no-repeat;
}
.forceChatterEntityPhoto.circular {
   border-radius: 50%;
}
.forceChatterEntityPhoto.xLargeSize {
   height: 10rem;
   width: 10rem;
}
.forceChatterEntityPhoto.entityPhotoSpecificity {
   overflow: hidden;
   display: inline-block;
   position: relative;
   box-sizing: content-box;
   flex-grow: initial;
}

.forceChatterEntityPhotoDetail .photoDropdown, .forceChatterEntityPhotoDetail .circularInMobile {
   position: absolute;
   bottom: 9%;
   right: 4%;
}
.forceChatterEntityPhotoDetail .photoDropdown .photoIcon {
   width: 21px;
   height: 21px;
   padding: 3.5px;
}
.forceChatterEntityPhotoDetail .photoIcon {
   background: rgba(255, 255, 255, 0.6);
   border-radius: var(--lwc-borderRadiusSmall, 0.125rem);
   color: rgb(74, 74, 74);
   padding: 0;
   line-height: 0;
}
.forceChatterUserProfileHighlightsStencilDesktop .highlightsH1 {
   font-weight: 400;
   font-size: 1.5rem;
   margin-top: 1rem;
}
.forceStyle.truncate, .forceStyle .truncate, .slds-truncate {
   overflow: hidden;
   text-overflow: ellipsis;
   white-space: nowrap;
   min-width: 0; 
}
.slds-media__body, .slds-col {
   min-width: 0; /* Prevents flex children from pushing parents */
}
.slds-item_detail, .slds-tile__title, .slds-truncate {
   max-width: 100%;
}
.slds-item_detail {
   overflow-wrap: anywhere;
   word-break: break-word;
}
.forceChatterUserProfileHighlightsStencilDesktop .up-m-top_small {
   margin-top: 0.5rem;
}
.forceChatterUserProfileHighlightsStencilDesktop .secondaryFields {
   font-weight: bold;
}
.forceChatterUserProfileHighlightsStencilDesktop .secondaryFields li, .forceChatterUserProfileHighlightsStencilDesktop .secondaryFields div {
   display: inline;
   white-space: nowrap;
}
.forceChatterUserProfileHighlightsStencilDesktop .editAboutMe {
   width: 10rem;
}
/* .forceChatterUserProfileHighlightsStencilDesktop .aboutMeText {
   line-height: 0.25rem;
} */
.forceStyle .assistiveText {
   position: absolute;
   border: 0;
   clip: rect(0, 0, 0, 0);
   width: 1px;
   height: 1px;
   margin: -1px;
   padding: 0;
   overflow: hidden;
}
.assistiveText {
   position: absolute !important;
   height: 1px;
   width: 1px;
   overflow: hidden;
   clip: rect(1px, 1px, 1px, 1px);
}
/* user */

/* Login */
.custom_logo-container {
   height: 100%; 
   display: table-cell; 
   vertical-align: bottom;
}
.login-background {
   /* display: flex; */
   height: 100%;
   border: none;
}
.custom-login-container {
   padding: 20px 0px 0px 0px;
   margin-top: 0px;
   margin-bottom: 0px;
   margin-left: auto;
   margin-right: auto;
   max-width: 380px;
   -moz-transition: all 0.25s;
   -webkit-transition: all 0.25s;
   -o-transition: all 0.25s;
   transition: all 0.25s;
}
.custom_logo_wrapper {
   height: 113px;
   overflow: hidden;
   width: 180px;
   margin-left: auto;
   margin-right: auto;
   text-align: center;
   display: table;
}
.custom-login-column {
   height: 100%;
}
.custom_logo {
   margin-left: auto;
   margin-right: auto;
   vertical-align: middle;
   max-width: 180px;
   max-height: 113px;
}
img {
   vertical-align: middle;
   border: 0;
}
.custom-login-content {
   margin: 0px auto;
   padding: 1.25rem;
   border-radius: 0.25rem;
   border: 1px solid #D8DDE6;
   color: #03234D;
   margin-bottom: 24px;
   background-color: #ffffff;
}
.loginError {
   color: #C23934;
   margin-bottom: 14px;
   font-size: .75rem;
}
.loginSuccess {
   color: #2e844a;
   margin-bottom: 14px;
   font-size: .75rem;
   font-weight: 600;
}

/* SSO Microsoft */
.sso-divider {
   display: flex;
   align-items: center;
   margin: 18px 0;
   color: #706e6b;
   font-size: 13px;
}
.sso-divider::before,
.sso-divider::after {
   content: '';
   flex: 1;
   border-bottom: 1px solid #d8dde6;
}
.sso-divider span {
   padding: 0 12px;
   text-transform: lowercase;
}
.microsoft-sso-btn {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 10px;
   width: 100%;
   padding: 11px 16px;
   background: #ffffff;
   color: #5e5e5e;
   border: 1px solid #8c8c8c;
   border-radius: 4px;
   font-size: .8125rem;
   font-family: SFS, Arial, sans-serif;
   font-weight: 600;
   cursor: pointer;
   text-decoration: none;
   transition: background-color 0.15s ease, box-shadow 0.15s ease;
   box-sizing: border-box;
}
.microsoft-sso-btn:hover {
   background-color: #f2f2f2;
   box-shadow: 0 1px 4px rgba(0, 0, 0, 0.12);
   color: #5e5e5e;
   text-decoration: none;
}
.microsoft-sso-btn:active {
   background-color: #e6e6e6;
}
.microsoft-sso-btn svg {
   flex-shrink: 0;
}
/* SSO Microsoft */

/* Login */

.label {
   font-size: .75rem;
   color: #54698d;
   margin: 0 0 8px 0;
   line-height: inherit;
   cursor: default;
}

/* input */
.custom-input-form {
   width: 100%;
   border: none;
}
.inputgroup {
   position: relative;
}
.input:focus {
   background-color: #ffffff;
   border: 1px solid #1589ee;
   outline: 0;
   box-shadow: 0 0 3px #0070D2;
}
.input {
   padding: 12px;
}
input.input, select.input, input.answer-input.input, input.password-input.input {
   border: 1px solid #969492;
   border-radius: 4px;
   border-image-source: initial;
   border-image-slice: initial;
   border-image-width: initial;
   border-image-outset: initial;
   border-image-repeat: initial;
   background-color: #fff;
   font-family: SFS, Arial, sans-serif;
   box-sizing: border-box;
   -webkit-appearance: none;
   font-size: .8125rem;
   transition: all 0.1s;
}
input:-internal-autofill-selected {
   appearance: menulist-button;
   background-image: none !important;
   background-color: light-dark(rgb(232, 240, 254), rgba(70, 90, 126, 0.4)) !important;
   color: fieldtext !important;
}

input:not([type="image" i], [type="range" i], [type="checkbox" i], [type="radio" i]) {
   overflow-clip-margin: 0px !important;
   overflow: clip !important;
}
/* input[type="email" i] {
    padding-block: 1px;
    padding-inline: 2px;
} */
input[type="password" i] {
   -webkit-text-security: disc !important;
   /* padding-block: 1px;
   padding-inline: 2px; */
}
input[type='submit'] {
   -webkit-appearance: none;
}
input {
   height: auto !important;
}

.password {
   display: block;
}
/* input */

.slds-tabs_card, .slds-tabs_card.slds-tabs_card {
   border-radius: 1.25rem;
}

/* Botones */
.primary {
   background-color: #0070d2;
   color: white;
   transition: all 0.1s;
   border: 1px solid transparent;
}

.button {
   padding: 12px 24px;
   border-radius: 4px;
   border: 0;
   font-size: .8125rem;
   font-family: SFS, Arial, sans-serif;
   color: white;
   /* background-color: #D8DDE6; */
   cursor: pointer;
   background-image: none !important;
}
/* Botones */

/* Custom SF */
.wide {
   width: 100%;
}
.bt {
   border-top: 1px solid #F4F6F9;
}
.pt16 {
   padding-top: 16px;
}
.r4 {
   border-radius: 4px;
}
.mt8 {
   margin-top: .5rem;
}
.mb16 {
   margin-bottom: 1rem;
}
.mb20 {
   margin-bottom: 1.25rem;
}
.mb24 {
   margin-bottom: 1.5rem;
}

.small {
   font-size: .75rem;
}
.fl {
   float: left;
}

.slds-icon-custom-departamentos {
   background-color: #1B96FF;
}

.div-tabla-custom {
   border-radius: 0.25rem !important;
}

.custom-a-form {
   color: #0b5cab;
   text-decoration: none;
   -webkit-transition: color 0.1s linear;
   transition: color 0.1s linear;
   border: none;
}
.custom-a-form:focus, .custom-a-form:active {
   border: none;
   --slds-c-input-shadow: unset;
}
.slds-input {
   padding-left: unset;
}
.custom-lookup-form {
   -webkit-box-shadow: none !important;
   box-shadow: none !important;
   border: none !important;
}
.slds-input[disabled], .slds-input.slds-is-disabled {
   background-color: transparent;
}
.custom-div-button {
   width: 100%; 
   display: flex; 
   padding-top: 1rem;
}
.slds-modal__header {
   border-top-right-radius: 1.25rem;
   border-top-left-radius: 1.25rem;
}
.slds-modal__footer, .custom-footer-sn-botones {
   border-bottom-right-radius: 1.25rem !important;
   border-bottom-left-radius: 1.25rem !important;
}
.slds-m-bottom_xx-small-important {
   margin-bottom:0.25rem !important;
}

.slds-page-header__col-title {
   display: flex;
   align-items: center;
   flex-wrap: wrap;
   gap: 1.5rem;
}

.custom-filtro-header {
   margin: 0;
}
/* Custom SF */

/* --- Estilos para los Lookups --- */
.slds-combobox__form-element .slds-combobox__input,
.slds-combobox__form-element .slds-input_faux {
    border: none !important;
    box-shadow: none !important;
    background-color: transparent !important;
    min-height: calc(1.875rem + 2px) !important;
}
.slds-combobox__form-element .slds-combobox__input:focus,
.slds-combobox__form-element.slds-has-input-focus .slds-combobox__input {
    border: none !important;
    box-shadow: none !important;
}

#modal-sesion-nuevo-relacionados .slds-modal__content,
#modal-nuevo-departamento .slds-modal__content,
#modal-departamento-nuevo-relacionados .slds-modal__content,
#modal-usuario-nuevo-relacionados .slds-modal__content,
#modal-nuevo-usuario .slds-modal__content {
    overflow: visible !important; 
}
/* --- Fin Estilos para los Lookups --- */

/* media queries */

/* Hasta 599px */
@media (max-width: 599px) {
  /* estilos para celulares pequeños */
   .slds-m-left_x-large {
      margin-left: 0rem;
   }
   .slds-m-right_medium {
      margin-right: 0rem;
   }
   .media__figure .profilePicWrapper {
      display: none;
   }
   .slds-p-left_x-large {
      padding-left: 0rem;
   }
   .forceChatterEntityPhoto.xLargeSize {
      height: 8rem;
      width: 8rem;
   }
   .forceChatterUserProfileHighlightsStencilDesktop .highlightsH1 {
      margin-top: 0rem;
   }
   .slds-m-right_small {
      margin-right: 0rem;
   }
   .forceChatterUserProfileHighlightsStencilDesktop .highlightsH1 {
      font-size: 1.25rem;
   }
   /* Page header responsivo */
   .slds-page-header__row {
      flex-wrap: wrap;
      gap: 0.5rem;
   }
   .slds-page-header__title {
      white-space: normal !important;
      word-wrap: break-word;
   }
   .slds-page-header__col-title {
      flex-direction: column !important;
      align-items: flex-start !important;
      gap: 0.5rem !important;
      min-width: 0;
   }
   .slds-page-header__col-actions {
      width: 100%;
      margin-top: 0.5rem;
   }
   .slds-page-header__col-actions .slds-page-header__controls {
      justify-content: flex-start;
   }
   .custom-filtro-header {
      width: 100%;
      margin-top: 0.5rem !important;
   }
   .btn-label-full { display: none !important; }
   .btn-label-short { display: inline !important; }
   .slds-radio_button__label {
      white-space: nowrap;
      font-size: 0.7rem;
      /* padding: 0 0.5rem; */
   }
   #form-filtro-vista {
      margin-top: 0.5rem !important;
   }
   .slds-radio_button .slds-radio_faux, .slds-radio_button .slds-radio--faux, .slds-radio--button .slds-radio_faux, .slds-radio--button .slds-radio--faux {
      padding-left: 0.5rem;
      padding-right: 0.5rem;
   }
   
   /* Scroll horizontal para el Path en móviles */
   .slds-path__scroller {
      overflow-x: auto !important;
      -webkit-overflow-scrolling: touch;
      width: 100%;
      padding-bottom: 5px; /* Espacio para scrollbar nativo */
   }
   
   /* Notificaciones responsivas */
   .custom-notificacion .slds-notify_toast {
      min-width: 0 !important;
      width: 90% !important;
      margin: 0 auto !important;
      padding: 0.5rem 1rem !important;
   }
   .custom-notificacion .slds-notify_toast h2,
   .custom-notificacion .slds-notify_toast p,
   .custom-notificacion .slds-notify_toast span {
      font-size: 0.85rem !important;
      white-space: normal !important;
      word-wrap: break-word;
   }
   .slds-path__nav {
      width: max-content !important;
   }
   .slds-path__item {
      min-width: 70px;
      max-width: 85px;
   }
   .form-acciones-notificar {
      text-align: right !important;
   }
}

/* 600px hasta 767px */
@media (min-width: 600px) and (max-width: 767px) {
   /* estilos para móviles grandes */
   .slds-m-left_x-large {
      margin-left: 1.5rem;
   }

   .slds-m-right_medium {
      margin-right: 0.75rem;
   }

   /* Page header responsivo */
   .slds-page-header__name-title {
      flex-direction: column !important;
      align-items: flex-start !important;
      gap: 0.5rem !important;
   }
   .btn-label-full { display: none !important; }
   .btn-label-short { display: inline !important; }
   .slds-radio_button__label {
      white-space: nowrap;
      font-size: 0.7rem;
      padding: 0 0.5rem;
   }
   #form-filtro-vista {
      margin-top: 0.5rem !important;
   }
}

/* 768px hasta 991px */
@media (min-width: 768px) and (max-width: 991px) {
  /* estilos para tablets en vertical */
   .slds-m-left_x-large {
      margin-left: 1.5rem;
   }

   .slds-m-right_medium {
      margin-right: 0.75rem;
   }
}

/* Custom table mobile styles */
@media (max-width: 767px) {
   .slds-max-medium-table_stacked-horizontal, 
   .slds-max-medium-table_stacked-horizontal tbody {
      background-color: transparent !important;
   }
   .mobile-card-row {
      margin-bottom: 1.25rem !important;
      border: 1px solid #dddbda !important;
      border-radius: 0.25rem !important;
      box-shadow: 0 2px 2px rgba(0,0,0,0.05) !important;
      background-color: #ffffff !important;
   }
   .mobile-val-pad {
      padding-left: 0.75rem !important;
   }
   .mobile-wrap {
      white-space: normal !important;
      word-wrap: break-word !important;
      text-align: right !important;
      width: 100% !important;
      flex-grow: 1 !important;
      display: block !important;
   }
   .mobile-bold {
      font-weight: bold !important;
   }
   .columna-seleccionar {
      width: auto !important;
   }
   .form-acciones-notificar {
      text-align: right !important;
   }
   
   /* Fix para superposición de botón Editar en celular */
   .user-header-custom .primaryFieldAndActions,
   .user-header-custom .primaryFieldAndActions span.uiOutputText {
      white-space: normal !important;
      word-wrap: break-word !important;
   }
   
   .forceChatterUserProfileHighlightsStencilDesktop .editAboutMe {
       width: 9rem;
   }
   .forceChatterUserProfileHighlightsStencilDesktop .profilePic {
       width: 9rem;
   }
   .forceChatterUserProfileHighlightsStencilDesktop .highlightsH1 {
       font-size: 1.2rem;
   }
   
   .user-header-custom .slds-button {
       padding-top: 0rem !important;
       padding-right: 0.35rem !important;
       padding-bottom: 0rem !important;
       padding-left: 0.35rem !important;
   }
   
   .user-header-custom .forceActionLink {
       font-size: small !important;
   }
}

/* Botón de notificación en sesiones */
.btn-notificar-seguimiento {
   transition: all 0.3s ease !important;
   border-radius: 15px !important;
   /* padding-left: 1.2rem !important;
   padding-right: 1.2rem !important; */
   font-weight: 600 !important;
   font-size: 0.75rem !important;
   /* text-transform: uppercase; */
   letter-spacing: 0.5px;
}

.btn-notificar-seguimiento:hover {
   background-color: #0070d2 !important;
   color: white !important;
}

.btn-notificar-seguimiento:active {
   transform: translateY(0);
}

/* Alineación de formularios de acciones */
.form-acciones-notificar {
   text-align: left;
   margin: 0;
}

/* Columna seleccionar tabla responsiva */
.columna-seleccionar {
   width: 3.25rem;
   text-align: center; 
   padding: 0.5rem 0.25rem;
}

/* Accordion styles for collaborator sections */
.colaborador-section {
   background-color: #ffffff;
   border: 1px solid #dddbda;
   border-radius: 0.25rem;
   margin-bottom: 1rem;
   box-shadow: 0 2px 2px rgba(0,0,0,0.03);
   overflow: hidden;
   width: 100%;
}

.colaborador-summary {
   display: flex;
   align-items: center;
   padding: 0.65rem 1rem;
   background-color: #f3f3f3;
   border-bottom: 1px solid #dddbda;
   font-size: 0.95rem;
   font-weight: 600;
   cursor: pointer;
   user-select: none;
   list-style: none; /* Hide default list-style for chrome */
   transition: background-color 0.15s ease;
}

.colaborador-summary:hover {
   background-color: #eef1f6;
}

.colaborador-summary a {
   color: #0176d3;
   font-weight: 600;
   text-decoration: none;
}
.colaborador-summary a:hover {
   text-decoration: underline;
   color: #014486;
}

/* Hide default marker in Safari and Chrome */
.colaborador-summary::-webkit-details-marker {
   display: none;
}
.colaborador-summary::marker {
   display: none;
}

/* Arrow icon on the left */
.colaborador-summary::before {
   content: "";
   display: inline-block;
   width: 0.45rem;
   height: 0.45rem;
   border-right: 2px solid #0176d3;
   border-bottom: 2px solid #0176d3;
   transform: rotate(-45deg); /* Pointing right (closed) */
   margin-right: 0.75rem;
   transition: transform 0.2s ease;
   flex-shrink: 0;
}

.colaborador-section[open] > .colaborador-summary::before {
   transform: rotate(45deg); /* Pointing down (open) */
}

.colaborador-section:not([open]) > .colaborador-summary {
   border-bottom: none;
}

.colaborador-content {
   background-color: #ffffff;
}

/* Table refinements inside accordion content */
.colaborador-content table {
   border: none !important;
}

.colaborador-content table thead tr th {
   border-top: none !important;
   background-color: #f9fafc !important;
}

/* Ensure details wrapper takes full width */
.slds-page-header__row_gutters-block {
   display: block !important;
   width: 100% !important;
}

/* Prevent horizontal resizing of textareas and force 100% width */
textarea.slds-textarea, 
textarea.slds-input,
textarea.custom-input-form,
textarea {
   width: 100% !important;
   max-width: 100% !important;
   resize: vertical !important;
   box-sizing: border-box !important;
}

/* --- App Launcher Styles (List View) --- */
.custom-menu-list {
   background: #fdfdfd;
   padding: 10px; /* Restore padding around list */
   box-sizing: border-box;
   width: 100%;
   overflow-x: hidden;
}

.custom-menu-list .slds-listbox__item {
   margin-top: 4px;
   margin-bottom: 4px; 
   border-bottom: none;
   box-sizing: border-box;
   width: 100%;
}

.custom-menu-list .slds-listbox__item:first-child {
   margin-top: 0;
}

.custom-menu-list .slds-listbox__item:last-child {
   margin-bottom: 0;
}

.custom-menu-list .slds-listbox__option {
   padding: 10px 16px !important; /* Smaller padding */
   border: 1px solid #e5e5e5; /* Restore borders */
   border-radius: 8px; /* Restore rounded corners */
   transition: all 0.2s ease-in-out;
   background: #fff;
   box-shadow: 0 1px 2px rgba(0,0,0,0.05); /* Restore subtle shadow */
   display: flex;
   width: 100%;
   box-sizing: border-box;
   align-items: center;
}

.custom-menu-list .slds-listbox__option:hover {
   background: #f9f9f9; 
   box-shadow: 0 2px 5px rgba(0,0,0,0.1);
   border-color: #d8d8d8;
}

.custom-menu-list .slds-listbox__option.is-active {
   background: #eef4fb; 
   box-shadow: none;
   border-color: #c9e0fa; /* Subtle border for active */
}

.custom-menu-list .slds-listbox__option.is-active .slds-listbox__option-text {
   font-weight: 700;
   color: #001f3f;
}

.custom-menu-list .slds-icon_container--circle {
   border-radius: 50%;
   padding: 4px; /* Smaller padding inside icon container */
   box-shadow: 0 1px 2px rgba(0,0,0,0.1);
}

.custom-menu-list .slds-icon_small {
   width: 1rem;
   height: 1rem;
}

.custom-menu-list .slds-listbox__option-text {
   font-size: 0.9rem; /* Smaller text size */
   color: #080707;
   font-weight: 400;
}

#app-launcher-popover {
   width: 380px !important;
   max-width: 95vw;
   border-radius: 8px;
   border: 1px solid #d8dde6;
   box-shadow: 0 4px 12px rgba(0,0,0,0.15);
}

@media (max-width: 768px) {
   #app-launcher-popover {
      position: absolute !important;
      top: calc(100% + 5px) !important;
      left: 2% !important;
      width: 96% !important;
      max-width: none !important;
      min-width: 0 !important; /* Fix for SLDS min-width 25rem */
      border-radius: 8px;
      border: 1px solid #d8dde6 !important;
      max-height: calc(100vh - 80px);
      overflow-y: auto;
      z-index: 10000;
      box-sizing: border-box !important;
   }
   
   .custom-menu-list {
      width: 100% !important;
      box-sizing: border-box !important;
   }

   .custom-menu-list .slds-listbox__option {
      padding: 8px 12px !important; /* Smaller padding for mobile */
      width: 100% !important;
      box-sizing: border-box !important;
   }
}

