/* ============================================================
   TicGrup - Estilos de marca para PrivateBin
   Manual de marca: #46A0DE (azul claro) / #16149A (azul oscuro)
   Tipografía: Basis Grotesque Pro
   ============================================================ */

/* Fuente corporativa: sube los .woff2 licenciados a linkseguro-app/fonts/
   con estos nombres. Si no existen, cae al fallback sin romper nada. */
@font-face {
  font-family: 'Basis Grotesque Pro';
  src: url('../fonts/BasisGrotesquePro-Regular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Basis Grotesque Pro';
  src: url('../fonts/BasisGrotesquePro-Medium.woff2') format('woff2');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Basis Grotesque Pro';
  src: url('../fonts/BasisGrotesquePro-Bold.woff2') format('woff2');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

:root {
  --tg-blue: #46A0DE;        /* azul claro corporativo (acentos) */
  --tg-indigo: #16149A;      /* azul oscuro corporativo (acciones) */
  --tg-indigo-hover: #0f0d73;
  --tg-dark: #1c1c1c;
  --tg-bg: #f6f7f9;
  --tg-font: 'Basis Grotesque Pro', system-ui, -apple-system, 'Segoe UI',
             Roboto, 'Helvetica Neue', Arial, sans-serif;
}

body {
  background: var(--tg-bg);
  font-family: var(--tg-font);
}

/* Navbar limpia con el logo y filete en azul claro de marca */
nav.navbar {
  background: #ffffff !important;
  border-bottom: 3px solid var(--tg-blue);
  box-shadow: 0 1px 4px rgba(22, 20, 154, 0.08);
}

/* Botones de acción (Enviar / Copiar enlace / Descifrar) en índigo */
.btn-primary,
.btn-success {
  background-color: var(--tg-indigo);
  border-color: var(--tg-indigo);
  font-family: var(--tg-font);
  font-weight: 500;
}
.btn-primary:hover, .btn-primary:focus, .btn-primary:active,
.btn-success:hover, .btn-success:focus, .btn-success:active {
  background-color: var(--tg-indigo-hover) !important;
  border-color: var(--tg-indigo-hover) !important;
}

/* Foco accesible en azul claro de marca */
.btn:focus-visible,
.form-control:focus,
.form-select:focus {
  border-color: var(--tg-blue);
  box-shadow: 0 0 0 0.25rem rgba(70, 160, 222, 0.35);
}

/* Enlaces en índigo (el azul claro no da contraste suficiente en texto) */
a {
  color: var(--tg-indigo);
}
a:hover {
  color: var(--tg-indigo-hover);
}

/* Pie de página TicGrup */
.tg-footer {
  color: #6c757d;
  padding: 1rem 0 1.5rem;
  border-top: 1px solid #e3e6ea;
  margin-top: 2rem;
  font-family: var(--tg-font);
}
.tg-footer strong {
  color: var(--tg-indigo);
}

/* Ocultar el conmutador de modo oscuro para mantener estética uniforme */
#bd-theme {
  display: none;
}

/* ============================================================
   Modo embed (dentro del iframe de ticgrup.com/linkseguro)
   La clase .tg-embed la añade js/ticgrup-embed.js al detectar iframe
   ============================================================ */

/* Ocultar siempre el conmutador de modo oscuro (también fuera del iframe) */
.form-check.form-switch.navbar-text:has(#bd-theme) {
  display: none !important;
}

.tg-embed body {
  background: transparent;
}

/* El logo ya está en la página de WordPress: no repetirlo dentro */
.tg-embed .navbar-brand {
  display: none;
}

/* Navbar como barra de opciones ligera, sin aspecto de cabecera */
.tg-embed nav.navbar {
  background: transparent !important;
  border-bottom: 0;
  box-shadow: none;
  padding-top: 0;
}

/* Selector de formato: solo hay "Texto plano", fuera */
.tg-embed #formatter {
  display: none !important;
}

/* Footer propio fuera: el texto explicativo va en la página WP */
.tg-embed .tg-footer {
  display: none;
}

/* Textarea a una altura razonable para no provocar scroll */
.tg-embed #message {
  height: 220px;
  min-height: 220px;
  resize: vertical;
}

/* Clave anti-bucle del auto-ajuste: la plantilla pone html/body a
   height:100% (clase h-100), con lo que la altura medida seguiría
   siempre al iframe y crecería sin fin. En embed, altura por contenido. */
html.tg-embed,
html.tg-embed body {
  height: auto !important;
  min-height: 0 !important;
}

/* ============================================================
   Vista standalone (quien abre el enlace directamente)
   Solo aplica fuera del iframe: html:not(.tg-embed)
   ============================================================ */

/* Fondo con tinte suave de marca y contenido centrado */
html:not(.tg-embed) body {
  background: linear-gradient(180deg, #eef5fb 0%, #f6f7f9 320px);
}
html:not(.tg-embed) main {
  max-width: 880px;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  padding-top: 1rem;
}

/* Cabecera con logo y tagline */
.tg-tagline {
  margin-left: 0.85rem;
  padding-left: 0.85rem;
  border-left: 2px solid var(--tg-blue);
  color: var(--tg-indigo);
  font-size: 0.95rem;
  font-weight: 500;
  vertical-align: middle;
}

/* Modal de confirmación (primera pantalla del destinatario) */
.modal-content {
  border: 0;
  border-radius: 14px;
  box-shadow: 0 12px 40px rgba(22, 20, 154, 0.18);
}
.modal-header {
  border-bottom: 0;
  padding-bottom: 0;
}
.modal-header .modal-title {
  color: var(--tg-indigo);
  font-weight: 700;
  font-size: 1.15rem;
}
.tg-confirm-body {
  padding: 0.75rem 2rem 2rem;
}
.tg-confirm-icon {
  width: 64px;
  height: 64px;
  margin: 0.5rem auto 1rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  background: linear-gradient(135deg, var(--tg-blue), var(--tg-indigo));
  box-shadow: 0 6px 18px rgba(70, 160, 222, 0.45);
}
.tg-confirm-text {
  color: #3a3f47;
  margin-bottom: 0.75rem;
}
.tg-confirm-text strong {
  color: var(--tg-indigo);
}
.tg-confirm-btn {
  margin-top: 0.5rem;
  padding-left: 2.5rem;
  padding-right: 2.5rem;
  border-radius: 10px;
}

/* El secreto: tarjeta protagonista */
html:not(.tg-embed) #prettymessage {
  border: 0;
  border-top: 4px solid var(--tg-indigo);
  border-radius: 12px;
  box-shadow: 0 6px 24px rgba(28, 28, 28, 0.08);
}
html:not(.tg-embed) #prettymessage pre {
  padding: 1.5rem;
  font-size: 1.05rem;
  line-height: 1.7;
}
html:not(.tg-embed) #plaintext {
  background: #fff;
  border-top: 4px solid var(--tg-indigo);
  border-radius: 12px;
  box-shadow: 0 6px 24px rgba(28, 28, 28, 0.08);
  padding: 1.5rem;
  font-size: 1.05rem;
}

/* Avisos (autodestrucción, caducidad, documento borrado) en tono de marca */
html:not(.tg-embed) .alert-info {
  background: rgba(70, 160, 222, 0.12);
  border: 1px solid rgba(70, 160, 222, 0.35);
  color: var(--tg-indigo);
  border-radius: 10px;
}
html:not(.tg-embed) #remainingtime {
  font-weight: 500;
}
