/* ================================================================
   Boxlity Brand Theme para osTicket
   Basado en la identidad visual de boxlity.com.mx
   Fondo carbÃ³n oscuro Â· Acento magenta Â· Tarjeta blanca central
   Todas las clases/IDs/atributos HTML originales intactos
   ================================================================ */

/* â”€â”€ Variables de marca â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
:root {
  /* Magenta Boxlity â€” color corporativo principal */
  --bx-magenta:        #D9008D;
  --bx-magenta-dark:   #A8006D;
  --bx-magenta-deeper: #7A004F;
  --bx-magenta-light:  #FFF0F8;
  --bx-magenta-mid:    #FFD6EF;
  --bx-magenta-border: #F7AADC;

  /* Fondos oscuros â€” carbÃ³n Boxlity */
  --bx-dark:           #1C1C1C;
  --bx-dark-mid:       #242424;
  --bx-dark-surface:   #2C2C2C;
  --bx-dark-border:    #383838;
  --bx-dark-text:      #E8E8E8;
  --bx-dark-muted:     #9A9A9A;

  /* Superficie blanca (tarjeta) */
  --bx-white:          #FFFFFF;
  --bx-off-white:      #F7F7F7;
  --bx-border:         #E5E5E5;
  --bx-border-dark:    #D0D0D0;
  --bx-text:           #1A1A1A;
  --bx-text-muted:     #666666;
  --bx-text-light:     #999999;

  /* SemÃ¡nticos */
  --bx-success:        #00A86B;
  --bx-success-light:  #E6F9F3;
  --bx-success-border: #7ADBB9;

  --bx-warning:        #E08A00;
  --bx-warning-light:  #FFF8E6;
  --bx-warning-border: #F5CC6A;

  --bx-danger:         #D42B2B;
  --bx-danger-light:   #FEF0F0;
  --bx-danger-border:  #F5A0A0;

  --bx-info:           #0078C8;
  --bx-info-light:     #EBF5FF;
  --bx-info-border:    #80C0F0;

  /* Radios */
  --r-sm:  4px;
  --r-md:  8px;
  --r-lg:  14px;
  --r-xl:  18px;
  --r-full: 100px;

  /* Sombras con tono magenta */
  --shadow-card: 0 4px 6px rgba(0,0,0,0.12), 0 20px 40px rgba(0,0,0,0.18);
  --shadow-sm:   0 1px 3px rgba(0,0,0,0.12);
  --shadow-md:   0 4px 12px rgba(0,0,0,0.16);
  --shadow-lg:   0 8px 24px rgba(0,0,0,0.20);
  --shadow-mag:  0 4px 16px rgba(217,0,141,0.35);

  --transition: all 0.18s ease;
}

/* â”€â”€ Reset â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
html {
  font-size: 100%;
  overflow-y: scroll;
  -webkit-text-size-adjust: 100%;
  box-sizing: border-box;
}

*, *::before, *::after { box-sizing: inherit; }

body {
  margin: 0;
  padding: 0;
  font-size: 14px;
  line-height: 1.6;
}

body,
input,
select,
textarea {
  font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
  color: var(--bx-text);
}

b, strong { font-weight: 600; }

blockquote {
  margin: 1em 0;
  padding: 0.75em 1.2em;
  border-left: 4px solid var(--bx-magenta);
  background: var(--bx-magenta-light);
  border-radius: 0 var(--r-sm) var(--r-sm) 0;
  color: var(--bx-text-muted);
  font-style: italic;
}

hr {
  display: block;
  height: 0;
  border: 0;
  border-top: 1px solid var(--bx-border);
  margin: 1.25em 0;
  padding: 0;
}

small { font-size: 85%; }

ul, ol {
  margin: 1em 0;
  padding: 0 0 0 28px;
}

img {
  border: 0;
  vertical-align: middle;
}

form  { margin: 0; }
fieldset { border: 0; margin: 0; padding: 0; }
label { cursor: pointer; }

input, select, textarea {
  font-size: 100%;
  margin: 0;
  vertical-align: baseline;
}

input { line-height: normal; }

input[type="button"],
input[type="reset"],
input[type="submit"] {
  cursor: pointer;
  -webkit-appearance: button;
}

input[type="checkbox"],
input[type="radio"] { box-sizing: border-box; }

textarea {
  overflow: auto;
  vertical-align: top;
  resize: vertical;
}

table { border-collapse: collapse; border-spacing: 0; }
th, td { vertical-align: top; }
th { text-align: left; font-weight: 600; }
h1, h2, h3, h4, h5, h6, form, fieldset { margin: 0; padding: 0; }

/* â”€â”€ TipografÃ­a â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
a, .link {
  color: #0545a9;
  text-decoration: none;
  display: inline;
  transition: var(--transition);
}

a:hover, .link:hover {
  color: var(--bx-magenta-dark);
  text-decoration: underline;
  cursor: pointer;
}

h1 {
  color: var(--bx-text);
  font-weight: 700;
  font-size: 22px;
  letter-spacing: -0.4px;
}

h2, .subject {
  font-size: 17px;
  font-weight: 600;
  color: var(--bx-text);
}

h3 {
  font-size: 15px;
  font-weight: 600;
  color: var(--bx-text);
}

/* â”€â”€ Helpers â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.centered    { text-align: center; }
.flush-right { text-align: right; }
.flush-left  { text-align: left; }
.pull-right  { float: right; }
.pull-left   { float: left; }

.clear {
  clear: both;
  height: 1px;
  visibility: hidden;
}

.hidden  { display: none; }
.faded   { color: var(--bx-text-light); }

/* â”€â”€ Layout global â€” fondo carbÃ³n con tarjeta blanca â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
body {
  min-height: 100vh;
  background: var(--bx-dark);
  /* Textura sutil de puntos â€” evoca la marca */
 background: radial-gradient(circle, #2c2c2c 0%, #121212 100%);
  background-attachment: fixed;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  padding: 32px 16px 56px;
}

/* Tarjeta blanca central â€” el card de la captura */
#container {
  background: var(--bx-white);
  width: 100%;
  max-width: 920px;
  margin: 0 auto;
  border-radius: var(--r-xl);
  box-shadow: var(--shadow-card);
  overflow: hidden;
}

/* â”€â”€ Header â€” carbÃ³n oscuro, logo a blanco â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
#header {
  position: relative;
  background: #152331; /* fallback for old browsers */
  background: -webkit-linear-gradient(to right, #000000, #152331); /* Chrome 10-25, Safari 5.1-6 */
  background: linear-gradient(to right, #000000, #152331); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
  padding: 20px 28px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 80px;
  /* LÃ­nea magenta inferior â€” acento de marca */
  border-bottom: 3px solid var(--bx-magenta);
}

#logo {
  display: flex;
  align-items: center;
  height: 56px;
  text-decoration: none;
}

/* El logo de Boxlity ya es de colores; no se invierte */
#header #logo img {
  max-height: 54px;
  max-width: 220px;
  width: auto;
  height: auto;
  vertical-align: middle;
}

.valign-helper {
  height: 100%;
  display: inline-block;
  vertical-align: middle;
}

#header p {
  margin: 0;
  padding: 2px 0;
  font-size: 12px;
  color: var(--bx-dark-muted);
  text-align: right;
}

#header p a {
  color: var(--bx-dark-text);
  font-size: 12px;
  margin-left: 8px;
  transition: var(--transition);
}

#header p a:hover {
  color: var(--bx-magenta);
  text-decoration: none;
}

/* â”€â”€ NavegaciÃ³n â€” barra magenta, estilo marca Boxlity â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
#nav {
  display: flex;
  align-items: center;
  margin: 0;
  padding: 0 20px;
  height: 46px;
  /* Magenta sÃ³lido como las barras de la captura */
  background: linear-gradient(90deg, #800069 0%, #8d05a2 50%, #620080 100%);
  border-top: 1px solid #971eb2; /* Brillo superior sutil */
  border-bottom: 1px solid #660033;
  color: white;
  white-space: nowrap;
  list-style: none;
  gap: 2px;
}

#nav li {
  margin: 0;
  padding: 0;
  list-style: none;
  display: inline;
}

#nav li a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 30px;
  padding: 0 14px 0 34px;
  color: rgba(255,255,255,0.85);
  font-size: 13px;
  font-weight: 500;
  border-radius: var(--r-full);
  text-decoration: none;
  transition: var(--transition);
  background-repeat: no-repeat;
  background-position: 11px center;
  position: relative;
  letter-spacing: 0.01em;
}

/* Ãconos Font Awesome para la nav */
#nav li a::before {
  font-family: "FontAwesome";
  font-size: 13px;
  position: absolute;
  left: 12px;
  top: 50%;
  transform: translateY(-50%);
  color: rgba(255,255,255,0.75);
  transition: var(--transition);
}

#nav li a.home::before    { content: "\f015"; }
#nav li a.kb::before      { content: "\f02d"; }
#nav li a.new::before     { content: "\f055"; }
#nav li a.status::before  { content: "\f05a"; }
#nav li a.tickets::before { content: "\f0ae"; }

/* Eliminar imÃ¡genes PNG del tema por defecto */
#nav li a.home,
#nav li a.kb,
#nav li a.new,
#nav li a.status,
#nav li a.tickets {
  background-image: none;
}

#nav li a.active,
#nav li a:hover {
  background-color: rgba(0,0,0,0.20);
  color: #fff;
}

#nav li a.active::before,
#nav li a:hover::before {
  color: #fff;
}

.rtl #nav li a {
  padding-left: 14px;
  padding-right: 34px;
}

.rtl #nav li a::before {
  left: auto;
  right: 12px;
}

/* â”€â”€ Contenido â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
#content {
  padding: 32px 28px;
  min-height: 400px;
  background: var(--bx-white);
}

/* â”€â”€ Footer â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
#footer {
  text-align: center;
  font-size: 12px;
  color: var(--bx-text-muted);
  padding: 16px 20px;
  /* Barra magenta superior â€” como en la captura */
  border-top: 3px solid var(--bx-magenta);
  background: var(--bx-dark-mid);
  display: none;
}

#footer a {
  color: var(--bx-dark-muted);
  transition: var(--transition);
}

#footer a:hover {
  color: var(--bx-magenta);
  text-decoration: none;
}

#footer p { margin: 0 0 8px; color: var(--bx-dark-text); }

#footer #poweredBy {
  display: inline-block;
  width: 126px;
  height: 23px;
  outline: none;
  text-indent: -9999px;
  background-size: auto 20px;
  filter: brightness(0) invert(1);
  opacity: 0.5;
}

/* â”€â”€ Barras de mensaje en el header â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.error_bar, .warning_bar, .notice_bar {
  padding: 10px 28px;
  font-size: 13px;
  font-weight: 500;
}

.error_bar   { background: var(--bx-danger-light);  color: #7F1D1D; border-bottom: 1px solid var(--bx-danger-border); }
.warning_bar { background: var(--bx-warning-light); color: #78350F; border-bottom: 1px solid var(--bx-warning-border); }
.notice_bar  { background: var(--bx-success-light); color: #065F46; border-bottom: 1px solid var(--bx-success-border); }

/* â”€â”€ Alertas & Avisos â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
#msg_notice,
#msg_warning,
.warning-banner,
#msg_error,
#msg_info {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 16px;
  padding: 12px 16px;
  border-radius: var(--r-md);
  font-size: 13.5px;
  line-height: 1.5;
  font-weight: 500;
}

#msg_notice {
  border: 1px solid var(--bx-success-border);
  background: var(--bx-success-light);
  color: #065F46;
}
#msg_notice::before {
  font-family: "FontAwesome";
  content: "\f058";
  font-size: 16px;
  color: var(--bx-success);
  flex-shrink: 0;
}

#msg_warning, .warning-banner {
  border: 1px solid var(--bx-warning-border);
  background: var(--bx-warning-light);
  color: #78350F;
  height: auto;
}
#msg_warning::before, .warning-banner::before {
  font-family: "FontAwesome";
  content: "\f071";
  font-size: 16px;
  color: var(--bx-warning);
  flex-shrink: 0;
}

#msg_error {
  border: 1px solid var(--bx-danger-border);
  background: var(--bx-danger-light);
  color: #7F1D1D;
  height: auto;
}
#msg_error::before {
  font-family: "FontAwesome";
  content: "\f057";
  font-size: 16px;
  color: var(--bx-danger);
  flex-shrink: 0;
}

#msg_info {
  border: 1px solid var(--bx-info-border);
  background: var(--bx-info-light);
  color: #0C4A6E;
}
#msg_info::before {
  font-family: "FontAwesome";
  content: "\f05a";
  font-size: 16px;
  color: var(--bx-info);
  flex-shrink: 0;
}

.warning {
  background: var(--bx-warning-light);
  border-left: 3px solid var(--bx-warning);
  padding: 8px 12px;
  border-radius: 0 var(--r-sm) var(--r-sm) 0;
}

.warning strong {
  text-transform: uppercase;
  color: var(--bx-danger);
  font-style: normal;
}

.error { color: var(--bx-danger); }
.error input { border: 1px solid var(--bx-danger) !important; }

/* â”€â”€ Botones â€” magenta Boxlity â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.button,
.button:visited {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  font-family: "Inter", "Helvetica Neue", Arial, sans-serif;
  font-size: 14px;
  font-weight: 700;
  padding: 10px 24px;
  max-width: 280px;
  text-align: center;
  color: #fff;
  text-decoration: none;
  border: none;
  border-radius: var(--r-full); /* pÃ­ldora â€” estilo "ConÃ³cenos" de la captura */
  box-shadow: var(--shadow-mag);
  cursor: pointer;
  transition: var(--transition);
  position: relative;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.button:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(217,0,141,0.45);
  text-decoration: none;
  color: #fff;
}

.button:active {
  transform: translateY(0);
  box-shadow: var(--shadow-sm);
}

/* BotÃ³n verde â†’ magenta (acciÃ³n positiva de marca) */
.button,
.button:visited,
.green.button,
.green.button:visited {
  background: var(--bx-magenta);
}

.green.button:hover {
  background: var(--bx-magenta-dark);
}

/* BotÃ³n azul â†’ carbÃ³n oscuro (acciÃ³n secundaria) */
.blue.button,
.blue.button:visited {
  background: var(--bx-dark-surface);
  box-shadow: var(--shadow-md);
}

.blue.button:hover {
  background: var(--bx-dark-mid);
  box-shadow: var(--shadow-lg);
}

/* â”€â”€ Front-page buttons â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.front-page-button { margin-bottom: 20px; }

.front-page-button .button {
  width: 100%;
  max-width: 100%;
  margin-bottom: 10px;
  font-size: 13px;
  padding: 10px 24px;
}

/* â”€â”€ Landing page â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
#landing_page #new_ticket {
  margin-top: 32px;
  background: none;
  padding-left: 0;
}

#landing_page #check_status {
  margin-top: 16px;
  background: none;
  padding-left: 0;
}

#landing_page #new_ticket,
#landing_page #check_status { width: auto; }

#landing_page h1,
#landing_page h2,
#landing_page h3 { margin-bottom: 12px; }

/* â”€â”€ Sidebar â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.sidebar {
  margin-bottom: 24px;
  margin-left: 24px;
  width: 210px;
  float: right;
}

.rtl .sidebar {
  margin-left: 0;
  margin-right: 24px;
}

.sidebar .content {
  padding: 16px;
  border: 1px solid var(--bx-border);
  background: var(--bx-off-white);
  border-radius: var(--r-md);
  box-shadow: var(--shadow-sm);
  border-top: 3px solid var(--bx-magenta);
}

.sidebar .content:empty { display: none; }

.sidebar section .header {
  font-weight: 700;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: var(--bx-magenta);
  margin-bottom: 10px;
  padding-bottom: 6px;
  border-bottom: 1px solid var(--bx-border);
}

.sidebar section a {
  display: block;
  padding: 5px 0;
  color: var(--bx-text);
  font-size: 13px;
  border-bottom: 1px solid var(--bx-border);
  transition: var(--transition);
}

.sidebar section a:hover {
  color: var(--bx-magenta);
  text-decoration: none;
  padding-left: 4px;
}

.sidebar section + section { margin-top: 18px; }

/* â”€â”€ Main content â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.main-content { width: 565px; }

/* â”€â”€ PaginaciÃ³n â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
#pagination {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 4px;
  border: 0;
  margin: 0 0 32px;
  padding: 12px 0 0;
}

#pagination li {
  border: 0;
  margin: 0;
  padding: 0;
  font-size: 12px;
  list-style: none;
  display: inline;
}

#pagination li a {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 30px;
  height: 30px;
  padding: 0 8px;
  border: 1px solid var(--bx-border);
  border-radius: var(--r-sm);
  color: var(--bx-text);
  text-decoration: none;
  background: var(--bx-white);
  transition: var(--transition);
  float: none;
  margin: 0;
}

#pagination li a:hover {
  border-color: var(--bx-magenta);
  color: var(--bx-magenta);
  background: var(--bx-magenta-light);
}

#pagination .previousOff,
#pagination .nextOff {
  display: flex;
  align-items: center;
  min-width: 30px;
  height: 30px;
  padding: 0 8px;
  color: var(--bx-text-light);
  border: 1px solid var(--bx-border);
  border-radius: var(--r-sm);
  background: var(--bx-off-white);
  float: none;
  font-weight: 400;
}

#pagination .next a,
#pagination .previous a { font-weight: 600; }

#pagination .active {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 30px;
  height: 30px;
  padding: 0 8px;
  background: var(--bx-magenta);
  color: #fff;
  font-weight: 700;
  border-radius: var(--r-sm);
  text-decoration: none;
  float: none;
  margin: 0;
  box-shadow: var(--shadow-sm);
}

/* â”€â”€ BÃºsqueda â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.search-form { padding-top: 12px; }

.searchbar .search,
.search-form .search {
  display: inline-block;
  width: 400px;
  border-radius: var(--r-full);
  border: 1.5px solid var(--bx-border);
  padding: 8px 16px;
  font-size: 14px;
  background: var(--bx-white);
  color: var(--bx-text);
  transition: var(--transition);
  box-shadow: var(--shadow-sm);
}

.searchbar .search:focus,
.search-form .search:focus {
  outline: none;
  border-color: var(--bx-magenta);
  box-shadow: 0 0 0 3px rgba(217,0,141,0.12);
}

.searchbar .search {
  width: 100%;
  box-sizing: border-box;
  margin-bottom: 12px;
}

.search.well {
  padding: 14px 16px;
  background: var(--bx-off-white);
  border: 1px solid var(--bx-border);
  border-radius: var(--r-md);
  margin-bottom: 20px;
  margin-top: 0;
}

/* â”€â”€ Grid helpers â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.bleed { margin: 0 !important; padding: 0 !important; }

.row {}

.span4 {
  display: inline-block;
  width: 29.5%;
  margin: 0 1%;
  vertical-align: top;
}

.span8 {
  display: inline-block;
  width: 66%;
  margin: 0 1%;
  vertical-align: top;
}

.truncate {
  display: inline-block;
  width: auto;
  max-width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: bottom;
}

/* â”€â”€ Formularios â€” Ticket & Login â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
#ticketForm div.clear,
#clientLogin div.clear {
  clear: both;
  padding: 3px 0;
  overflow: hidden;
}

#ticketForm div label,
#clientLogin div label {
  display: block;
  font-size: 13px;
  font-weight: 600;
  color: var(--bx-text);
  margin-bottom: 4px;
}

label.required, span.required { font-weight: 700; }

#ticketForm div label.required,
#clientLogin div label.required { text-align: left; }

#ticketForm div input,
#clientLogin div input,
#ticketForm div textarea,
#clientLogin div textarea {
  width: auto;
  border: 1.5px solid var(--bx-border);
  background: var(--bx-white);
  border-radius: var(--r-sm);
  padding: 8px 12px;
  font-size: 14px;
  color: var(--bx-text);
  transition: var(--transition);
  display: block;
}

#ticketForm div input:focus,
#clientLogin div input:focus,
#ticketForm div textarea:focus,
#clientLogin div textarea:focus {
  outline: none;
  border-color: var(--bx-magenta);
  box-shadow: 0 0 0 3px rgba(217,0,141,0.12);
}

#ticketForm div input[type=file],
#clientLogin div input[type=file] { border: 0; padding: 0; }

#ticketForm div select,
#clientLogin div select {
  display: block;
  float: left;
  padding: 8px 12px;
  border: 1.5px solid var(--bx-border);
  border-radius: var(--r-sm);
  background: var(--bx-white);
  color: var(--bx-text);
  font-size: 14px;
  transition: var(--transition);
}

#ticketForm div select:focus,
#clientLogin div select:focus {
  outline: none;
  border-color: var(--bx-magenta);
}

#ticketForm div div.captchaRow,
#clientLogin div div.captchaRow { line-height: 31px; }

#ticketForm div div.captchaRow input,
#clientLogin div div.captchaRow input { position: relative; top: 6px; }

#ticketForm > table { table-layout: fixed; }
#ticketForm > table td { width: 160px; }
#ticketForm > table td + td { width: auto; }

#ticketForm td textarea,
#clientLogin td textarea,
#ticketForm div textarea,
#clientLogin div textarea { width: 600px; }

#ticketForm td em,
#clientLogin td em,
#ticketForm div em,
#clientLogin div em {
  color: var(--bx-text-muted);
  font-size: 12px;
}

#ticketForm td .captcha,
#clientLogin td .captcha,
#ticketForm div .captcha,
#clientLogin div .captcha {
  width: 88px;
  height: 31px;
  background: #000;
  display: block;
  float: left;
  margin-right: 20px;
  border-radius: var(--r-sm);
}

#ticketForm td label.inline,
#clientLogin td label.inline,
#ticketForm div label.inline,
#clientLogin div label.inline {
  width: auto;
  padding: 0 10px;
}

#ticketForm div.error input,
#clientLogin div.error input { border: 1.5px solid var(--bx-danger); }

#ticketForm div.error label,
#clientLogin div.error label { color: var(--bx-danger); }

/* â”€â”€ Caja de login â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
#clientLogin {
  display: block;
  margin-top: 24px;
  padding: 28px 32px;
  border: 1px solid var(--bx-border);
  border-radius: var(--r-lg);
  box-shadow: var(--shadow-md);
  background: var(--bx-off-white);
  /* Acento superior magenta */
  border-top: 3px solid var(--bx-magenta);
}

.rtl #clientLogin { background-position: 5% 50%; }

#clientLogin .instructions {
  display: table-cell;
  padding-left: 2em;
  padding-right: 90px;
}

.rtl #clientLogin .instructions {
  padding-left: 90px;
  padding-right: 2em;
}

#clientLogin p { clear: both; }

#clientLogin strong {
  font-size: 12px;
  color: var(--bx-danger);
  display: block;
  margin-bottom: 8px;
}

#clientLogin #email,
#clientLogin #ticketno { margin-right: 0; }

#clientLogin input[type=text],
#clientLogin input[type=password] {
  width: 100%;
  padding: 10px 14px;
  border: 1.5px solid var(--bx-border);
  border-radius: var(--r-md);
  margin-bottom: 14px;
  font-size: 14px;
  background: var(--bx-white);
  transition: var(--transition);
  box-shadow: var(--shadow-sm);
}

#clientLogin input[type=text]:focus,
#clientLogin input[type=password]:focus {
  outline: none;
  border-color: var(--bx-magenta);
  box-shadow: 0 0 0 3px rgba(217,0,141,0.12);
}

#clientLogin input[type=submit] {
  padding: 10px 28px;
  border-radius: var(--r-full);
  border: none;
  background: var(--bx-magenta);
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  cursor: pointer;
  transition: var(--transition);
  box-shadow: var(--shadow-mag);
}

#clientLogin input[type=submit]:hover {
  background: var(--bx-magenta-dark);
  transform: translateY(-1px);
  box-shadow: 0 6px 20px rgba(217,0,141,0.45);
}

/* â”€â”€ Login box (table-cell) â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.login-box {
  width: 40%;
  display: table-cell;
  padding: 20px;
  border-right: 1px solid var(--bx-border);
}

.rtl .login-box { border-right: none; border-left: 1px solid var(--bx-border); }

/* â”€â”€ Auth externa â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.external-auth + .external-auth { margin-top: 8px; }

a.external-sign-in { text-decoration: none; }

.external-auth-box {
  vertical-align: middle;
  border-radius: var(--r-md);
  border: 1.5px solid var(--bx-border);
  display: inline-flex;
  align-items: center;
  overflow: hidden;
  transition: var(--transition);
}

.external-auth-box:hover {
  border-color: var(--bx-magenta);
  box-shadow: var(--shadow-sm);
}

.external-auth-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: var(--bx-text);
  width: 36px;
  padding: 6px 10px;
  border-right: 1px solid var(--bx-border);
  background: var(--bx-off-white);
}

.external-auth-name {
  color: var(--bx-text);
  padding: 6px 14px;
  font-size: 13px;
  font-weight: 500;
  line-height: 30px;
}

img.sign-in-image {
  border: none;
  max-height: 40px;
  max-width: 200px;
  width: auto;
  height: auto;
}

/* â”€â”€ Tabla de tickets â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
#ticketTable {
  width: 100%;
  border: none;
  border-radius: var(--r-lg);
  overflow: hidden;
  box-shadow: var(--shadow-md);
  margin-bottom: 20px;
}

#ticketTable caption {
  padding: 10px 16px;
  text-align: left;
  color: var(--bx-text-muted);
  background: var(--bx-off-white);
  border: 1px solid var(--bx-border);
  border-bottom: none;
  border-radius: var(--r-lg) var(--r-lg) 0 0;
  font-weight: 600;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

/* Header de tabla â€” fondo carbÃ³n, texto magenta */
#ticketTable th {
  height: auto;
  line-height: 1.4;
  background: var(--bx-dark-mid);
  border: 0;
  border-bottom: 2px solid var(--bx-magenta);
  padding: 11px 14px;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--bx-dark-text);
}

#ticketTable th a {
  color: var(--bx-dark-text);
  display: flex;
  align-items: center;
  gap: 4px;
  white-space: nowrap;
}

#ticketTable th a:hover {
  color: var(--bx-magenta);
  text-decoration: none;
}

#ticketTable td {
  padding: 11px 14px;
  border: 0;
  border-bottom: 1px solid var(--bx-border);
  font-size: 13.5px;
  vertical-align: middle;
}

#ticketTable tr:last-child td { border-bottom: none; }

#ticketTable tr.alt td { background: var(--bx-off-white); }

#ticketTable tbody tr { transition: background 0.12s ease; }

#ticketTable tbody tr:hover td {
  background: var(--bx-magenta-light) !important;
}

#ticketTable th.required,
#ticketTable td.required { font-weight: 700; text-align: left; }

/* â”€â”€ Info Table â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.infoTable {
  background: var(--bx-white);
  border: 1px solid var(--bx-border);
  border-radius: var(--r-md);
  overflow: hidden;
  box-shadow: var(--shadow-sm);
}

.infoTable th {
  background: var(--bx-off-white);
  padding: 9px 14px;
  font-size: 12px;
  font-weight: 600;
  color: var(--bx-text-muted);
  white-space: nowrap;
  border-bottom: 1px solid var(--bx-border);
}

.infoTable td {
  padding: 9px 14px;
  border-bottom: 1px solid var(--bx-border);
  font-size: 13.5px;
}

.infoTable tr:last-child th,
.infoTable tr:last-child td { border-bottom: none; }

table.padded tr > td,
table.padded tr > th {
  height: 20px;
  padding-bottom: 5px;
}

/* â”€â”€ Custom Data Table â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
table.custom-data {
  margin-top: 14px;
  border: 1px solid var(--bx-border);
  border-radius: var(--r-md);
  overflow: hidden;
  width: 100%;
}

table.custom-data th {
  width: 25%;
  background: var(--bx-off-white);
  padding: 9px 12px;
  font-size: 12px;
  font-weight: 600;
  color: var(--bx-text-muted);
  border-bottom: 1px solid var(--bx-border);
}

/* Headline â€” carbÃ³n oscuro con acento magenta */
table .headline,
table.custom-data .headline {
  background: var(--bx-dark-mid);
  font-weight: 700;
  font-size: 12px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #f1ebef;
  border-bottom: 2px solid var(--bx-magenta);
  padding: 9px 14px;
}

/* â”€â”€ Detalle de ticket â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
#ticketInfo h1 {
  padding-bottom: 14px;
  margin-bottom: 10px;
  border-bottom: 2px solid var(--bx-border);
  font-size: 20px;
}

#ticketInfo h1 small {
  font-weight: 400;
  font-size: 14px;
  color: var(--bx-text-muted);
  margin-left: 8px;
}

/* â”€â”€ Reply form â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
#reply {
  margin-top: 24px;
  padding: 24px;
  background: var(--bx-off-white);
  border: 1px solid var(--bx-border);
  border-radius: var(--r-lg);
  box-shadow: var(--shadow-sm);
  border-top: 3px solid var(--bx-magenta);
}

#reply h2 {
  margin-bottom: 14px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--bx-border);
  font-size: 16px;
  font-weight: 700;
  color: var(--bx-text);
}

#reply > table { width: auto; }
#reply table td { vertical-align: top; }

#reply textarea {
  width: 100% !important;
  max-width: 628px;
  border: 1.5px solid var(--bx-border);
  border-radius: var(--r-md);
  padding: 10px 12px;
  font-size: 14px;
  transition: var(--transition);
  background: var(--bx-white);
}

#reply textarea:focus {
  outline: none;
  border-color: var(--bx-magenta);
  box-shadow: 0 0 0 3px rgba(217,0,141,0.12);
}

#reply input[type=text],
#reply #response_options textarea {
  border: 1.5px solid var(--bx-border);
  background: var(--bx-white);
  border-radius: var(--r-sm);
  padding: 7px 10px;
  font-size: 14px;
}

/* â”€â”€ Ticket icons â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.Icon {
  width: auto;
  padding-left: 22px;
  background-position: left center;
  background-repeat: no-repeat;
  color: var(--bx-magenta);
  text-decoration: none;
}

.Icon.Ticket         { background-image: url('../../default/images/icons/ticket.gif'); }
.Icon.webTicket      { background-image: url('../../default/images/icons/ticket_source_web.gif'); }
.Icon.emailTicket    { background-image: url('../../default/images/icons/ticket_source_email.gif'); }
.Icon.phoneTicket    { background-image: url('../../default/images/icons/ticket_source_phone.gif'); }
.Icon.otherTicket,
.Icon.apiTicket      { background-image: url('../../default/images/icons/ticket_source_other.gif'); }
.Icon.attachment     { background-image: url('../../default/images/icons/attachment.gif'); }
.Icon.file           { background-image: url('../../default/images/icons/attachment.gif'); }
.Icon.refresh        { background-image: url('../../default/images/icons/refresh.gif'); }
.Icon.thread {
  font-weight: 700;
  font-size: 1em;
  background-image: url('../../default/images/icons/thread.gif');
}

/* â”€â”€ Thread â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.thread-entry { margin-bottom: 18px; }

.thread-entry.avatar { margin-left: 60px; }

.thread-entry.response.avatar {
  margin-right: 60px;
  margin-left: 0;
}

.thread-entry > .avatar {
  margin-left: -60px;
  display: inline-block;
  width: 48px;
  height: auto;
  border-radius: var(--r-md);
}

.thread-entry.response > .avatar {
  margin-left: initial;
  margin-right: -60px;
}

img.avatar { border-radius: inherit; }

.avatar > img.avatar {
  width: 100%;
  height: auto;
}

.thread-entry .header {
  padding: 10px 14px;
  border: 1px solid var(--bx-border);
  border-radius: var(--r-md) var(--r-md) 0 0;
  font-size: 13px;
  font-weight: 500;
}

.thread-entry.avatar .header:before {
  position: absolute;
  top: 7px;
  right: -8px;
  content: '';
  border-top: 8px solid transparent;
  border-bottom: 8px solid transparent;
  border-left: 8px solid var(--bx-border);
  display: inline-block;
}

.thread-entry.avatar .header:after {
  position: absolute;
  top: 7px;
  right: -8px;
  content: '';
  border-top: 7px solid transparent;
  border-bottom: 7px solid transparent;
  display: inline-block;
  margin-top: 1px;
}

.thread-entry.avatar .header { position: relative; }

/* Respuesta del agente â€” gris muy claro */
.thread-entry.response .header {
  background: var(--bx-off-white);
  border-color: var(--bx-border-dark);
}

.thread-entry.avatar.response .header:after {
  border-left: 7px solid var(--bx-off-white);
  margin-right: 1px;
}

/* Mensaje del cliente â€” magenta muy suave */
.thread-entry.message .header {
  background: var(--bx-magenta-light);
  border-color: var(--bx-magenta-border);
}

.thread-entry.avatar.message .header:before {
  top: 7px;
  left: -8px;
  right: initial;
  border-left: none;
  border-right: 8px solid var(--bx-magenta-border);
}

.thread-entry.avatar.message .header:after {
  top: 7px;
  left: -8px;
  right: initial;
  border-left: none;
  border-right: 7px solid var(--bx-magenta-light);
  margin-left: 1px;
}

.thread-entry .header .title {
  max-width: 500px;
  vertical-align: bottom;
  display: inline-block;
  margin-left: 12px;
}

.thread-entry .thread-body {
  border: 1px solid var(--bx-border);
  border-top: none;
  border-bottom: 2px solid var(--bx-border-dark);
  border-radius: 0 0 var(--r-md) var(--r-md);
  padding: 14px;
  font-size: 14px;
  line-height: 1.65;
  background: var(--bx-white);
}

.thread-body .attachments {
  background: var(--bx-off-white);
  margin: 0 -14px;
  position: relative;
  top: 14px;
  padding: 8px 14px;
  border-top: 1px solid var(--bx-border);
  border-radius: 0 0 var(--r-md) var(--r-md);
}

.thread-body .attachments .filesize {
  margin-left: 6px;
  color: var(--bx-text-light);
  font-size: 12px;
}

.thread-body .attachments a,
.thread-body .attachments a:hover { text-decoration: none; }

.thread-body .attachment-info {
  margin-right: 12px;
  display: inline-block;
  width: 48%;
}

.thread-body .attachment-info .filename {
  max-width: 80%;
  max-width: calc(100% - 70px);
}

/* â”€â”€ Labels â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.label {
  font-size: 11px;
  padding: 2px 9px;
  border-radius: var(--r-full);
  font-weight: 700;
  line-height: 16px;
  color: #fff;
  vertical-align: baseline;
  white-space: nowrap;
  background: var(--bx-magenta);
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.label-bare {
  background: transparent;
  border: 1.5px solid var(--bx-magenta);
  color: var(--bx-magenta);
}

/* â”€â”€ Thread Events â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.thread-event {
  padding: 0 2px 14px;
  margin-left: 60px;
  font-size: 13px;
  color: var(--bx-text-muted);
}

.type-icon {
  border-radius: var(--r-md);
  background: var(--bx-magenta-light);
  padding: 5px 7px;
  margin-right: 6px;
  text-align: center;
  display: inline-block;
  font-size: 1em;
  border: 1px solid var(--bx-magenta-border);
  vertical-align: top;
  color: var(--bx-magenta);
}

.type-icon.dark {
  border-color: var(--bx-dark);
  background: var(--bx-dark-mid);
  color: var(--bx-dark-text);
}

.thread-event img.avatar {
  vertical-align: middle;
  border-radius: var(--r-sm);
  width: auto;
  max-height: 24px;
  margin: -3px 3px 0;
}

.thread-event .description {
  margin-left: -30px;
  padding-top: 6px;
  padding-left: 30px;
  display: inline-block;
  width: calc(100% - 95px);
  line-height: 1.5em;
}

.thread-event .type-icon { position: relative; }

.thread-event .type-icon::after {
  content: "";
  border: 16px solid white;
  position: absolute;
  top: -3px;
  bottom: 0;
  left: -3px;
  right: 0;
  z-index: -1;
}

.thread-entry::after {
  content: "";
  border-bottom: 2px solid var(--bx-white);
  display: block;
}

.thread-entry::before {
  content: "";
  display: block;
  border-top: 2px solid var(--bx-white);
}

#ticketThread::before {
  border-left: 2px dotted var(--bx-magenta-border);
  position: absolute;
  margin-left: 74px;
  z-index: -1;
  content: "";
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
}

#ticketThread {
  z-index: 0;
  position: relative;
  border-bottom: 2px solid var(--bx-border);
  padding-bottom: 10px;
}

/* â”€â”€ Estados â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
i.refresh {
  color: var(--bx-success);
  font-size: 80%;
  vertical-align: middle;
}

.states small { font-size: 75%; }

.active.state {
  font-weight: 700;
  color: var(--bx-magenta);
}

/* â”€â”€ Action buttons â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.action-button {
  border-radius: var(--r-sm);
  color: var(--bx-text-muted) !important;
  display: inline-flex;
  align-items: center;
  gap: 5px;
  border: 1px solid var(--bx-border);
  cursor: pointer;
  font-size: 12px;
  background: var(--bx-white);
  padding: 4px 10px;
  text-decoration: none;
  line-height: 20px;
  margin-left: 6px;
  transition: var(--transition);
  box-shadow: var(--shadow-sm);
}

.action-button:hover {
  background: var(--bx-magenta-light);
  border-color: var(--bx-magenta);
  color: var(--bx-magenta) !important;
  box-shadow: var(--shadow-mag);
}

.action-button span,
.action-button a {
  color: var(--bx-text-muted) !important;
  display: inline-block;
  float: left;
}

.action-button a {
  color: var(--bx-text-muted);
  text-decoration: none;
}

.image-hover a.action-button:hover,
.image-hover a.action-button {
  color: initial !important;
  text-decoration: none;
}

/* â”€â”€ FAQ â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
#faq {
  clear: both;
  margin: 0;
  padding: 6px;
}

#faq ol {
  font-size: 14px;
  margin-left: 0;
  padding-left: 0;
  border-top: 1px solid var(--bx-border);
}

#faq ol li {
  list-style: none;
  margin: 0;
  padding: 0;
  color: var(--bx-text-muted);
}

#faq ol li a {
  display: block;
  padding: 10px 0 10px 28px;
  height: auto !important;
  overflow: hidden;
  margin: 0;
  border-bottom: 1px solid var(--bx-border);
  line-height: 1.5;
  color: var(--bx-text);
  font-size: 14px;
  transition: var(--transition);
  position: relative;
}

#faq ol li a::before {
  font-family: "FontAwesome";
  content: "\f105"; /* chevron-right â€” estilo limpio */
  position: absolute;
  left: 8px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--bx-magenta);
  font-size: 14px;
  font-weight: 700;
}

#faq ol li a:hover {
  background: var(--bx-magenta-light);
  color: var(--bx-magenta);
  text-decoration: none;
  padding-left: 32px;
}

#faq .article-meta {
  padding: 6px 8px;
  background: var(--bx-off-white);
  font-size: 12px;
  color: var(--bx-text-muted);
  border-radius: var(--r-sm);
}

/* â”€â”€ Knowledge Base â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
#kb {
  margin: 4px 0;
  padding: 0;
  overflow: hidden;
  list-style: none;
}

#kb > li {
  padding: 16px;
  height: auto !important;
  overflow: hidden;
  margin: 0 0 10px;
  background: var(--bx-white);
  border: 1px solid var(--bx-border);
  border-radius: var(--r-md);
  box-shadow: var(--shadow-sm);
  display: block;
  transition: var(--transition);
  border-left: 4px solid var(--bx-magenta);
}

#kb > li:hover {
  box-shadow: var(--shadow-mag);
  border-left-color: var(--bx-magenta-dark);
}

#kb > li h4 span { color: var(--bx-text-muted); }

#kb > li h4 a {
  font-size: 15px;
  font-weight: 600;
  color: var(--bx-text);
}

#kb > li h4 a:hover {
  color: var(--bx-magenta);
  text-decoration: none;
}

#kb > li > i {
  display: block;
  width: 36px;
  height: 36px;
  float: left;
  margin-right: 10px;
  background: url('../../default/images/kb_large_folder.png') top left no-repeat;
}

.featured-category {
  margin-top: 12px;
  width: 49.5%;
  display: inline-block;
  box-sizing: border-box;
  vertical-align: top;
  padding: 16px;
  border: 1px solid var(--bx-border);
  border-radius: var(--r-md);
  background: var(--bx-white);
  box-shadow: var(--shadow-sm);
  transition: var(--transition);
  border-top: 3px solid var(--bx-dark-mid);
}

.featured-category:hover {
  border-top-color: var(--bx-magenta);
  box-shadow: var(--shadow-mag);
}

.category-name {
  display: inline-block;
  font-weight: 600;
  font-size: 15px;
  color: var(--bx-text);
}

.featured-category i {
  color: var(--bx-magenta);
  display: inline-block;
  vertical-align: middle;
  font-size: 1.3em;
}

.article-headline { margin-left: 36px; }

.rtl .article-headline {
  margin-left: 0;
  margin-right: 36px;
}

.article-teaser {
  font-size: 13px;
  line-height: 1.55em;
  height: 3em;
  overflow: hidden;
  color: var(--bx-text-muted);
  margin-top: 4px;
}

.article-title {
  font-weight: 600;
  color: var(--bx-text);
}

.faq-content .article-title {
  font-size: 20px;
  margin-top: 16px;
}

/* â”€â”€ KB Search â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
#kb-search {
  padding: 12px 0;
  overflow: hidden;
}

#kb-search div {
  clear: both;
  overflow: hidden;
  padding-top: 6px;
}

#kb-search #query {
  margin: 0;
  display: inline-block;
  float: left;
  width: 200px;
  margin-right: 6px;
  padding: 7px 14px;
  border: 1.5px solid var(--bx-border);
  border-radius: var(--r-full);
  font-size: 14px;
  transition: var(--transition);
}

#kb-search #query:focus {
  outline: none;
  border-color: var(--bx-magenta);
  box-shadow: 0 0 0 3px rgba(217,0,141,0.12);
}

#kb-search #cid {
  margin: 0;
  display: inline-block;
  float: left;
  width: 200px;
  margin-right: 6px;
  position: relative;
  top: 2px;
}

#kb-search #topic-id {
  margin: 0;
  display: inline-block;
  float: left;
  width: 410px;
}

#kb-search #searchSubmit {
  margin: 0;
  display: inline-block;
  float: left;
  position: relative;
  top: 2px;
}

#kb-search #breadcrumbs {
  color: var(--bx-text-muted);
  margin-bottom: 16px;
  font-size: 13px;
}

#kb-search #breadcrumbs a { color: var(--bx-magenta); }

/* â”€â”€ Freetext files â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.freetext-files {
  padding: 12px;
  margin-top: 12px;
  border: 1px dashed var(--bx-magenta-border);
  border-radius: var(--r-md);
  background: var(--bx-magenta-light);
}

.freetext-files .file {
  margin-right: 10px;
  display: inline-block;
  width: 48%;
  padding-top: 0.2em;
}

.freetext-files .title {
  font-weight: 700;
  margin-bottom: 6px;
  font-size: 13px;
  color: var(--bx-text);
}

/* â”€â”€ Inputs globales â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
input[type=submit],
input[type=button],
input[type=reset] {
  padding: 8px 20px;
  border-radius: var(--r-full);
  border: 1.5px solid var(--bx-border);
  background: var(--bx-white);
  color: var(--bx-text);
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  transition: var(--transition);
  margin-right: 6px;
}

input[type=submit] {
   background: #680185;
  border-color: var(--bx-magenta);
  color: #fff;
  box-shadow: var(--shadow-mag);
  text-transform: uppercase;
  letter-spacing: 0.03em;
}

input[type=submit]:hover {
  background: var(--bx-magenta-dark);
  transform: translateY(-1px);
  box-shadow: 0 6px 20px rgba(217,0,141,0.4);
}

input[type=reset]:hover,
input[type=button]:hover {
  background: var(--bx-off-white);
  border-color: var(--bx-border-dark);
}

input[type=text]:not([class]),
input[type=email]:not([class]),
input[type=password]:not([class]),
select:not([class]),
textarea:not([class]) {
  padding: 7px 12px;
  border: 1.5px solid var(--bx-border);
  border-radius: var(--r-sm);
  font-size: 14px;
  color: var(--bx-text);
  background: var(--bx-white);
  transition: var(--transition);
}

input[type=text]:not([class]):focus,
input[type=email]:not([class]):focus,
input[type=password]:not([class]):focus,
select:not([class]):focus,
textarea:not([class]):focus {
  outline: none;
  border-color: var(--bx-magenta);
  box-shadow: 0 0 0 3px rgba(217,0,141,0.12);
}

/* â”€â”€ Overlay / Loading â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
#overlay {
  display: none;
  position: fixed;
  inset: 0;
  background: rgba(28,28,28,0.72);
  z-index: 1000;
  backdrop-filter: blur(3px);
}

#loading {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: var(--bx-white);
  border-radius: var(--r-lg);
  padding: 28px 36px;
  box-shadow: var(--shadow-card);
  z-index: 1001;
  text-align: center;
  min-width: 200px;
  border-top: 4px solid var(--bx-magenta);
}

#loading h4 {
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 6px;
  color: var(--bx-text);
}

#loading p {
  color: var(--bx-text-muted);
  font-size: 13px;
  margin: 0;
}

/* â”€â”€ RTL â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
.rtl #nav li a {
  padding-left: 14px;
  padding-right: 34px;
}

/* â”€â”€ Responsive â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€â”€ */
@media (max-width: 860px) {
  body { padding: 0; }

  #container {
    border-radius: 0;
    max-width: 100%;
  }

  #content { padding: 20px 16px; }

  #header { padding: 14px 16px; min-height: auto; }

  .main-content { width: 100%; }

  .sidebar {
    float: none;
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 16px;
  }

  #ticketForm td textarea,
  #clientLogin td textarea,
  #ticketForm div textarea,
  #clientLogin div textarea { width: 100%; }

  #reply textarea { max-width: 100%; }

  .span4, .span8 {
    display: block;
    width: 100%;
    margin: 0 0 12px;
  }

  .featured-category {
    width: 100%;
    margin-top: 8px;
  }

  #ticketTable { font-size: 12px; }
  #ticketTable th, #ticketTable td { padding: 8px 10px; }

  .login-box {
    width: 100%;
    display: block;
    border-right: none;
    border-bottom: 1px solid var(--bx-border);
  }
}
