/* MEDECAL · compartición pública sin rastreadores externos */
.me-share-launcher, .me-share-inline {
  font: inherit; cursor: pointer; border: 1px solid #217d86;
  background: #0f5260; color: #fff; border-radius: 999px;
  padding: 11px 19px; font-weight: 650; line-height: 1.3;
}
.me-share-launcher {
  position: fixed; bottom: 22px; right: 22px; z-index: 880;
  box-shadow: 0 10px 34px rgba(0, 0, 0, .20);
}
.me-share-launcher, .me-share-inline {
  display: inline-flex; align-items: center; justify-content: center;
  gap: 9px;
}
.me-share-icon {
  display: inline-block; flex: 0 0 19px;
  width: 19px; height: 19px; vertical-align: middle;
}
.me-share-dialog [data-share-link="whatsapp"] .me-share-icon { color: #128c62; }
.me-share-dialog [data-share-link="facebook"] .me-share-icon { color: #1877f2; }
.me-share-dialog [data-share-link="linkedin"] .me-share-icon { color: #0a66c2; }
.me-share-dialog [data-share-link="telegram"] .me-share-icon { color: #229ed9; }
.me-share-dialog [data-share-action="instagram"] .me-share-icon { color: #c13584; }
.me-share-inline { display: inline-flex; margin: 12px 0 18px; }
.me-share-launcher:hover, .me-share-inline:hover { background: #116b72; }
.me-share-launcher:focus-visible, .me-share-inline:focus-visible,
.me-share-dialog a:focus-visible, .me-share-dialog button:focus-visible {
  outline: 3px solid #36caba; outline-offset: 3px;
}
.me-share-dialog {
  position: fixed; inset: auto 18px 82px auto; box-sizing: border-box;
  margin: 0; width: min(430px, calc(100vw - 36px)); max-height: min(720px, calc(100dvh - 110px));
  overflow-y: auto; padding: 22px; background: #fff; color: #153447;
  border: 1px solid #c9dadd; border-radius: 20px;
  box-shadow: 0 25px 80px rgba(8, 33, 52, .30); z-index: 900;
  font: 15px/1.5 system-ui, -apple-system, "Segoe UI", sans-serif;
}
.me-share-dialog::backdrop { background: rgba(8, 24, 37, .32); }
.me-share-top { display: flex; justify-content: space-between; align-items: center; gap: 12px; }
.me-share-top strong { font-size: 18px; }
.me-share-top button {
  font-size: 28px; color: #31546a; background: transparent; border: 0; cursor: pointer;
}
.me-share-heading { margin: 12px 0; font-weight: 650; overflow-wrap: anywhere; }
.me-share-url-label { display: block; font-size: 12px; color: #476576; }
.me-share-url-label input {
  display: block; width: 100%; box-sizing: border-box; padding: 10px;
  margin-top: 5px; background: #f3f8f8; color: #1b4350;
  border: 1px solid #d5e3e5; border-radius: 8px; font: inherit;
}
.me-share-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin-top: 15px; }
.me-share-dialog .me-share-grid a, .me-share-dialog .me-share-grid button,
.me-share-dialog .me-share-publish button {
  box-sizing: border-box; display: flex; align-items: center; justify-content: center;
  gap: 8px; text-align: center;
  padding: 10px 8px; min-height: 46px; text-decoration: none;
  color: #174658; background: #f0f7f7; border: 1px solid #cee1e4;
  border-radius: 10px; font: 600 13px/1.3 system-ui, sans-serif; cursor: pointer;
}
.me-share-dialog a:hover, .me-share-dialog .me-share-grid button:hover,
.me-share-dialog .me-share-publish button:hover { background: #e0f1ee; }
.me-share-publish { display: grid; gap: 8px; margin-top: 13px; }
.me-share-dialog .me-share-publish button { min-height: 48px; }
.me-share-dialog .me-share-grid a span, .me-share-dialog .me-share-grid button span,
.me-share-dialog .me-share-publish button span { min-width: 0; }
.me-share-dialog .me-share-grid a, .me-share-dialog .me-share-grid button { white-space: nowrap; }
@media (max-width: 375px) {
  .me-share-dialog .me-share-grid a,
  .me-share-dialog .me-share-grid button { padding: 9px 5px; }
  .me-share-dialog .me-share-grid .me-share-icon { width: 17px; height: 17px; flex-basis: 17px; }
}
.me-share-dialog [hidden] { display: none !important; }
.me-share-note { color: #536b79; font-size: 12px; margin: 13px 0 6px; }
.me-share-status { font-size: 13px; color: #14615c; min-height: 24px; margin: 6px 0 0; }
.me-share-caption {
  display: block; box-sizing: border-box; width: 100%; min-height: 118px;
  margin-top: 12px; padding: 12px; resize: vertical;
  border-radius: 12px; border: 1px solid #b2d4d2;
  background: #f5fbfa; color: #123547; font: 13px/1.5 ui-monospace, monospace;
}
.me-share-caption[hidden] { display: none !important; }

@media (max-width: 520px) {
  .me-share-launcher { bottom: 15px; right: 15px; padding: 10px 14px; }
  .me-share-dialog { inset: auto 10px 68px 10px; width: auto; padding: 16px; max-height: calc(100dvh - 90px); }
  .me-share-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (prefers-reduced-motion: reduce) {
  .me-share-launcher, .me-share-inline, .me-share-dialog { scroll-behavior: auto; transition: none; }
}

/* Interfaz móvil: Compartir es una opción accesible en el menú.
   Evita que un botón flotante cubra las tarjetas y el dock de navegación. */
@media(max-width:760px){
 #main-nav .me-share-launcher{
  position:static;inset:auto;z-index:auto;display:inline-flex;
  align-items:center;justify-content:flex-start;gap:10px;width:100%;
  min-height:46px;margin:5px 0 0;box-sizing:border-box;
  padding:10px 14px;border:1px solid #b9d8df;border-radius:10px;
  background:#edf7f8;color:#15556a;font-size:14px;font-weight:750;
  box-shadow:none;text-align:left;
 }
 #main-nav .me-share-launcher:hover,#main-nav .me-share-launcher:focus-visible{
  background:#ddf0ef;outline-offset:2px;
 }
 body:not(:has(#main-nav)) .me-share-launcher{
  bottom:calc(18px + env(safe-area-inset-bottom,0px));
  right:14px;padding:10px 11px;font-size:12px;
 }
 body:has(#main-nav) .me-share-dialog{
  max-height:calc(100dvh - 92px);
 }
}