/* Plantilla Fiori del foro de abap.es.
   Se carga después de index.css de SMF y de los estilos de la web (abapes.css + tema-*.css):
   redefine las piezas de SMF con las variables de color de la web, así que todo cambia con el modo claro u oscuro. */

/* ---------- Base ---------- */
html { scroll-padding-top: 8rem; }
body { background: var(--fondo); color: var(--texto); font-family: var(--fuente); font-size: .875rem; line-height: 1.5; padding: 0; }
#footerfix { min-height: 100vh; display: flex; flex-direction: column; }
#wrapper { width: 100%; max-width: 76rem; margin: 0 auto; padding: 0 var(--pad); background: none; box-shadow: none; border: 0; flex: 1; }
a, a:link, a:visited { color: var(--marca); }
a:hover { color: var(--marca-hover); }
hr, .hrcolor { border-color: var(--borde-suave); }
.ico { width: 1rem; height: 1rem; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }

/* ---------- Cabecera de abap.es ---------- */
.foro-shell { margin: 0; }
.foro-shell .shell-barra svg { width: 1.25rem; height: 1.25rem; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.foro-shell .buscar > svg { width: 1rem; height: 1rem; pointer-events: none; }
/* Los estilos de SMF para los campos quitaban el hueco de la lupa: el texto empieza después del icono */
.foro-shell .buscar input[type="search"] { padding-left: 2.25rem; padding-right: 1rem; }
.foro-usuario { display: flex; align-items: center; gap: .25rem; margin: 0; padding: 0; list-style: none; float: none; }
.foro-usuario > li { position: relative; margin: 0; padding: 0; }
.foro-usuario .shell-btn { position: relative; color: var(--shell-texto); }
.foro-usuario .shell-btn img.avatar { width: 1.75rem; height: 1.75rem; border-radius: 50%; object-fit: cover; }
.foro-iniciales { display: grid; place-items: center; width: 1.75rem; height: 1.75rem; border-radius: 50%; background: var(--marca); color: var(--sobre-marca); font-weight: 700; font-size: .8125rem; }
.foro-usuario .amt { position: absolute; top: .125rem; right: .125rem; min-width: 1rem; height: 1rem; padding: 0 .25rem; border-radius: .5rem; background: var(--critico); color: #fff; font-size: .625rem; line-height: 1rem; font-weight: 700; text-align: center; }
.foro-usuario .btn-sec, .foro-usuario .btn-enfasis { height: 2rem; padding: 0 .875rem; font-size: .875rem; }
.foro-usuario .btn-enfasis, .foro-usuario .btn-enfasis:visited { color: var(--sobre-marca); }
.btn-sec { display: inline-flex; align-items: center; gap: .5rem; height: 2.25rem; padding: 0 1rem; border-radius: var(--r-ctrl); border: 1px solid var(--borde); background: var(--superficie); color: var(--marca); font: inherit; font-weight: 700; cursor: pointer; }
.btn-sec:hover { background: var(--hover); text-decoration: none; }
.btn-enfasis, .btn-enfasis:visited { color: var(--sobre-marca); }
.btn-enfasis:hover { color: var(--sobre-marca); }
/* Menús desplegables de SMF (perfil, mensajes, avisos) */
.top_menu { position: absolute; right: 0; left: auto; top: 2.75rem; z-index: 60; min-width: 18rem; background: var(--superficie); color: var(--texto); border: 0; border-radius: .75rem; box-shadow: var(--sombra-2); }
.top_menu a { color: var(--marca); }
.top_menu .profile_user_links li a, .top_menu .unread_notify { color: var(--texto); }

/* ---------- Barra del foro (menú de SMF y ruta) ---------- */
#upper_section { background: none; padding: 1.25rem 0 0; border: 0; margin: 0; }
#inner_section { background: none; padding: 0; border: 0; box-shadow: none; }
#main_menu { float: none; margin: 0 0 .75rem; }
#main_menu .dropmenu { display: flex; flex-wrap: wrap; gap: .25rem; padding: 0; margin: 0; }
#main_menu .dropmenu li a, #main_menu .dropmenu li a:visited { display: inline-flex; align-items: center; gap: .375rem; padding: .375rem .75rem; border-radius: var(--r-ctrl); border: 0; background: none; color: var(--texto); font-size: .875rem; box-shadow: none; }
#main_menu .dropmenu li a:hover, #main_menu .dropmenu li:hover > a { background: var(--hover); color: var(--marca); }
#main_menu .dropmenu li a.active, #main_menu .dropmenu li a.active:hover { background: var(--marca-suave); color: var(--marca); font-weight: 700; box-shadow: none; }
#main_menu .dropmenu li ul, #main_menu .dropmenu li li ul { background: var(--superficie); border: 0; border-radius: .75rem; box-shadow: var(--sombra-2); padding: .375rem; }
#main_menu .dropmenu li ul li a { color: var(--texto); }
.main_icons.home, .dropmenu .main_icons { opacity: .75; }
.navigate_section { padding: 0; margin: 0 0 .75rem; }
.navigate_section ul { background: none; border: 0; box-shadow: none; padding: 0; margin: 0; font-size: .875rem; color: var(--etiqueta); }
.navigate_section ul li a { color: var(--marca); }
.navigate_section ul li .dividers { color: var(--borde); }
.mobile_user_menu { display: none; }

/* ---------- Superficies de SMF ---------- */
.windowbg, .roundframe, .information, .noticebox, .descbox, .approvebg, .approvetopic, .popup_window, #profileview .windowbg, .generic_list_wrapper, .table_grid {
  background: var(--superficie); color: var(--texto); border: 0; border-radius: .75rem; box-shadow: var(--sombra-1);
}
.windowbg:nth-of-type(even), .windowbg:nth-of-type(odd), .windowbg:hover { background: var(--superficie); }
.information, .noticebox, .descbox { background: var(--marca-suave); box-shadow: none; }
.errorbox { background: var(--critico-suave); color: var(--texto); border: 0; border-radius: .75rem; box-shadow: none; }
.infobox { background: var(--positivo-suave); color: var(--texto); border: 0; border-radius: .75rem; }
.cat_bar, .title_bar { background: none; border: 0; border-radius: 0; box-shadow: none; margin-top: 1.5rem; }
h3.catbg, h4.catbg, h3.titlebg, h4.titlebg, .catbg, .titlebg, .catbg a, .titlebg a { background: none; color: var(--texto); font-family: var(--fuente); font-size: 1rem; font-weight: 700; text-shadow: none; padding: 0 0 .5rem; }
.catbg a:hover, .titlebg a:hover { color: var(--marca); }
.table_grid { overflow: hidden; }
.table_grid thead tr.title_bar th, .table_grid th { background: var(--superficie); color: var(--etiqueta); font-weight: 400; border-bottom: 1px solid var(--borde-suave); }
.table_grid td { border-color: var(--borde-suave); }
.sub_bar, .subbg { background: var(--relleno); color: var(--texto); border: 0; }

/* ---------- Botones, formularios y paginación ---------- */
.button, a.button, input[type="submit"], input[type="button"], button.button {
  display: inline-flex; align-items: center; gap: .375rem; height: 2.25rem; padding: 0 1rem;
  border: 1px solid var(--borde); border-radius: var(--r-ctrl); background: var(--superficie); color: var(--marca);
  font: inherit; font-weight: 700; box-shadow: none; text-shadow: none; cursor: pointer;
}
.button:hover, a.button:hover, input[type="submit"]:hover, input[type="button"]:hover { background: var(--hover); color: var(--marca); }
.button.active, .button_strip_new_topic, .buttonlist .button.active, input[type="submit"].button_submit, #post_confirm_buttons input[type="submit"], .button.you_sure { background: var(--marca); border-color: var(--marca); color: var(--sobre-marca); }
.button.active:hover, .button_strip_new_topic:hover { background: var(--marca-hover); color: var(--sobre-marca); }
.buttonlist { display: flex; flex-wrap: wrap; gap: .5rem; }
.buttonlist .button { margin: 0; }
input[type="text"], input[type="password"], input[type="email"], input[type="search"], input[type="number"], input[type="url"], input[type="date"], select, textarea {
  border: 1px solid var(--campo-borde); border-radius: var(--r-ctrl); background: var(--superficie); color: var(--texto);
  font: inherit; padding: .375rem .625rem; box-shadow: none;
}
input:focus, select:focus, textarea:focus { outline: .125rem solid var(--marca); outline-offset: .0625rem; }
.pagelinks { display: flex; flex-wrap: wrap; align-items: center; gap: .25rem; }
.pagelinks .pages { color: var(--etiqueta); margin-right: .25rem; }
.nav_page, .current_page, .expand_pages { display: inline-grid; place-items: center; min-width: 2rem; height: 2rem; padding: 0 .375rem; border-radius: var(--r-ctrl); border: 0; background: none; color: var(--texto); }
.nav_page:hover { background: var(--hover); text-decoration: none; }
.current_page { background: var(--marca); color: var(--sobre-marca); font-weight: 700; }

/* Etiquetas y estados */
.chip { display: inline-flex; align-items: center; gap: .25rem; font-size: .75rem; padding: .0625rem .5rem; border-radius: var(--r-chip); background: var(--relleno); color: var(--etiqueta); font-weight: 700; vertical-align: middle; white-space: nowrap; }
.chip.ok { background: var(--positivo-suave); color: var(--positivo); }
.chip.azul { background: var(--marca-suave); color: var(--marca); }
.chip .ico { width: .875rem; height: .875rem; }

/* ---------- Código ---------- */
.codigo { max-width: 100%; }
.codigo figcaption .btn-trans { display: inline-flex; align-items: center; gap: .375rem; border: 0; background: none; color: var(--marca); font: inherit; cursor: pointer; padding: .25rem .5rem; border-radius: var(--r-ctrl); }
.codigo figcaption .btn-trans:hover { background: var(--hover); }
.codigo .kw { color: var(--kw); } .codigo .str { color: var(--str); } .codigo .com { color: var(--com); font-style: italic; } .codigo .num { color: var(--num); }
blockquote.bbc_standard_quote, blockquote.bbc_alternate_quote { background: var(--relleno); color: var(--texto); border: 0; border-left: .25rem solid var(--marca); border-radius: .5rem; box-shadow: none; }
blockquote cite { color: var(--etiqueta); }

/* ---------- Pie ---------- */
.pie { margin-top: 3rem; }
.foro-copyright { padding-top: 0; font-size: .75rem; color: var(--etiqueta); }
.foro-copyright a { color: var(--etiqueta); }

/* ---------- Móvil ---------- */
@media (max-width: 52rem) {
  .foro-shell .marca-texto { display: none; }
  .foro-shell .espacios { display: none; }
  .mobile_user_menu { display: inline-flex; align-items: center; gap: .5rem; margin-bottom: .75rem; padding: .375rem .75rem; border-radius: var(--r-ctrl); background: var(--superficie); box-shadow: var(--sombra-1); color: var(--texto); cursor: pointer; }
  #main_menu { margin: 0; }
}
@media (max-width: 40rem) {
  :root { --pad: 1rem; }
  .foro-shell .buscar { margin: 0 .25rem; }
  .foro-usuario .foro-registro { display: none; }
}

/* ===== Componentes del foro (de la maqueta foro-maqueta/foro.css) ===== */
.f-acciones { display: flex; flex-wrap: wrap; gap: .75rem; align-items: center; margin-top: 1.25rem; }
.f-buscar { display: flex; align-items: center; gap: .5rem; height: 2.25rem; min-width: min(22rem, 100%); padding: 0 .75rem; border-radius: var(--r-buscar); background: var(--buscar-fondo); color: var(--etiqueta); }
.f-buscar input { border: 0; background: none; font: inherit; color: var(--texto); width: 100%; outline: none; }

.f-cuerpo { padding-top: 1.5rem; padding-bottom: 3rem; }
.f-rejilla { display: grid; grid-template-columns: minmax(0, 1fr) 20rem; gap: 2rem; align-items: start; }
@media (max-width: 64rem) { .f-rejilla { grid-template-columns: 1fr; } }
.f-cat { margin-bottom: 2rem; }
.f-cat h2 { font-size: 1rem; margin: 0 0 .75rem; display: flex; align-items: baseline; gap: .5rem; }
.f-cat h2 small { font-weight: 400; color: var(--etiqueta); font-size: .8125rem; }

/* Secciones del foro: mosaicos anchos con KPI y último mensaje */
.f-secciones { display: grid; grid-template-columns: repeat(auto-fill, minmax(17rem, 1fr)); gap: 1rem; }
.f-sec { display: flex; flex-direction: column; gap: .5rem; min-height: 9.5rem; padding: 1rem; background: var(--superficie); border-radius: var(--r-tile); box-shadow: var(--sombra-1); color: var(--texto); transition: box-shadow .15s, background-color .15s; }
.f-sec:hover { text-decoration: none; background: var(--tile-hover); box-shadow: var(--sombra-2); }
.f-sec-cab { display: flex; gap: .75rem; align-items: flex-start; }
.f-sec-cab .tile-ico { flex: none; }
.f-sec-cab b { display: block; font-size: 1rem; line-height: 1.25; }
.f-sec-cab small { display: block; margin-top: .125rem; color: var(--etiqueta); font-size: .8125rem; line-height: 1.3; }
.f-sec-pie { margin-top: auto; display: flex; align-items: flex-end; justify-content: space-between; gap: .75rem; }
.f-ultimo { font-size: .75rem; color: var(--etiqueta); line-height: 1.35; min-width: 0; }
.f-ultimo b { color: var(--texto); font-weight: 400; display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 11rem; }
.f-sec .kpi { font-size: 1.75rem; }

/* Paneles laterales */
.f-panel { background: var(--superficie); border-radius: .75rem; box-shadow: var(--sombra-1); margin-bottom: 1.25rem; overflow: hidden; }
.f-panel h2 { font-size: .9375rem; margin: 0; padding: .875rem 1rem; border-bottom: 1px solid var(--borde-suave); }
.f-panel ol { list-style: none; margin: 0; padding: 0; }
.f-panel li a { display: block; padding: .625rem 1rem; border-bottom: 1px solid var(--borde-suave); color: var(--texto); font-size: .875rem; line-height: 1.35; }
.f-panel li:last-child a { border-bottom: 0; }
.f-panel li a:hover { background: var(--tabla-hover); text-decoration: none; }
.f-panel li small { display: block; color: var(--etiqueta); font-size: .75rem; margin-top: .125rem; }
.f-panel p { margin: 0; padding: .875rem 1rem; font-size: .875rem; color: var(--etiqueta); }

/* Lista de temas (List Report) */
.f-tabla td { vertical-align: middle; }
.f-tabla td:first-child { width: auto; white-space: normal; }
.f-tema { display: flex; gap: .75rem; align-items: flex-start; }
.f-estado { flex: none; width: 1.75rem; height: 1.75rem; border-radius: 50%; display: grid; place-items: center; background: var(--relleno); color: var(--etiqueta); }
.f-estado.resuelto { background: var(--positivo-suave); color: var(--positivo); }
.f-estado.sin-resp { background: rgba(233, 115, 12, .14); color: #C35500; }
:root[data-modo="oscuro"] .f-estado.sin-resp { color: #FFB25C; }
.f-tema a { color: var(--texto); font-weight: 700; }
.f-tema small { display: block; color: var(--etiqueta); font-size: .8125rem; margin-top: .125rem; }
.f-num { text-align: right !important; font-variant-numeric: tabular-nums; white-space: nowrap; }
.f-ult { font-size: .8125rem; color: var(--etiqueta); white-space: nowrap; }
.chip { display: inline-flex; align-items: center; gap: .25rem; font-size: .75rem; padding: .0625rem .5rem; border-radius: var(--r-chip); background: var(--relleno); color: var(--etiqueta); font-weight: 700; vertical-align: middle; }
.chip.ok { background: var(--positivo-suave); color: var(--positivo); }
.chip.azul { background: var(--marca-suave); color: var(--marca); }
.f-paginas { display: flex; gap: .25rem; justify-content: center; padding: 1rem; }
.f-paginas a { min-width: 2rem; height: 2rem; display: grid; place-items: center; border-radius: var(--r-ctrl); color: var(--texto); font-size: .875rem; }
.f-paginas a[aria-current] { background: var(--marca); color: var(--sobre-marca); font-weight: 700; }
.f-paginas a:hover { background: var(--hover); text-decoration: none; }
@media (max-width: 40rem) { .f-tabla .f-ocultar { display: none; } }

/* Hilo de mensajes */
.f-hilo { max-width: 52rem; }
.f-msg { display: grid; grid-template-columns: 11rem minmax(0, 1fr); background: var(--superficie); border-radius: .75rem; box-shadow: var(--sombra-1); margin-bottom: 1rem; overflow: hidden; }
.f-msg.mejor { box-shadow: var(--sombra-1), inset .1875rem 0 0 var(--positivo); }
.f-autor { padding: 1rem; border-right: 1px solid var(--borde-suave); background: var(--relleno); font-size: .8125rem; color: var(--etiqueta); }
.f-avatar { width: 3rem; height: 3rem; border-radius: 50%; display: grid; place-items: center; font-weight: 700; font-size: 1.125rem; color: var(--sobre-marca); background: var(--marca); margin-bottom: .5rem; }
.f-autor b { display: block; color: var(--texto); font-size: .9375rem; }
.f-texto { padding: 1rem 1.25rem; min-width: 0; }
.f-meta { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; font-size: .8125rem; color: var(--etiqueta); margin-bottom: .75rem; }
.f-meta .f-n { margin-left: auto; }
.f-texto p { margin: 0 0 .75rem; line-height: 1.6; }
.f-texto .codigo { margin: .75rem 0; }
.f-msg-pie { display: flex; gap: .5rem; padding-top: .5rem; border-top: 1px solid var(--borde-suave); margin-top: 1rem; }
.btn-trans-f { display: inline-flex; align-items: center; gap: .375rem; height: 2rem; padding: 0 .625rem; border: 0; border-radius: var(--r-ctrl); background: none; color: var(--marca); font: inherit; font-size: .8125rem; cursor: pointer; }
.btn-trans-f:hover { background: var(--hover); }
@media (max-width: 40rem) {
  .f-msg { grid-template-columns: 1fr; }
  .f-autor { display: flex; align-items: center; gap: .75rem; border-right: 0; border-bottom: 1px solid var(--borde-suave); padding: .75rem 1rem; }
  .f-avatar { width: 2.25rem; height: 2.25rem; font-size: .875rem; margin: 0; }
}

/* Responder */
.f-responder { background: var(--superficie); border-radius: .75rem; box-shadow: var(--sombra-1); padding: 1rem 1.25rem 1.25rem; }
.f-responder h2 { font-size: 1rem; margin: 0 0 .75rem; }
.f-editor { border: 1px solid var(--campo-borde); border-radius: var(--r-ctrl); overflow: hidden; }
.f-barra { display: flex; gap: .25rem; padding: .25rem; background: var(--relleno); border-bottom: 1px solid var(--borde-suave); }
.f-barra button { min-width: 2rem; height: 2rem; border: 0; border-radius: .375rem; background: none; color: var(--texto); font: inherit; font-size: .8125rem; cursor: pointer; }
.f-barra button:hover { background: var(--hover); }
.f-editor textarea { display: block; width: 100%; min-height: 7rem; border: 0; padding: .75rem; font: inherit; color: var(--texto); background: var(--superficie); resize: vertical; box-sizing: border-box; }
.f-editor textarea:focus { outline: none; }
.f-responder .f-acciones { justify-content: flex-end; margin-top: .75rem; }
.f-tabla thead th { position: static; }
.f-chips { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: .625rem; }

/* Cabecera de la portada dentro del foro */
.f-cab { background: none; padding: .5rem 0 1.5rem; }
.f-cab h1 { font-size: 1.5rem; margin: 0; color: var(--texto); }
.f-rejilla { margin-top: .5rem; }
.f-sec.f-nuevo .f-sec-cab b::after { content: "nuevo"; margin-left: .5rem; font-size: .6875rem; padding: .0625rem .375rem; border-radius: var(--r-chip); background: var(--marca-suave); color: var(--marca); vertical-align: middle; }
.f-sec, .f-sec:visited { color: var(--texto); }
.f-sec:hover { color: var(--texto); }
.f-panel li a, .f-panel li a:visited { color: var(--texto); }
a.btn-enfasis:link, a.btn-enfasis:visited, a.btn-enfasis:hover { color: var(--sobre-marca); }
a.btn-sec:link, a.btn-sec:visited { color: var(--marca); }
.f-panel h2 { color: var(--texto); font-weight: 700; }

/* ---------- Lista de temas (MessageIndex) ---------- */
#display_head.f-cab p { color: var(--etiqueta); margin: .375rem 0 0; }
#messageindex { background: var(--superficie); border-radius: .75rem; box-shadow: var(--sombra-1); overflow: hidden; margin: 1rem 0; }
#messageindex .title_bar { margin: 0; }
#messageindex #topic_header { display: flex; align-items: center; gap: 1rem; padding: .75rem 1rem; background: var(--superficie); color: var(--etiqueta); border-bottom: 1px solid var(--borde-suave); font-weight: 400; font-size: .8125rem; }
#messageindex #topic_header a { color: var(--etiqueta); }
#topic_container { background: none; }
#topic_container > div { display: flex; align-items: center; gap: 1rem; padding: .75rem 1rem; margin: 0; border: 0; border-bottom: 1px solid var(--borde-suave); border-radius: 0; box-shadow: none; background: var(--superficie); }
#topic_container > div:last-child { border-bottom: 0; }
#topic_container > div:hover { background: var(--tabla-hover); }
#topic_container > div.sticky { background: var(--marca-suave); }
#topic_container > div.locked .message_index_title a { color: var(--etiqueta); }
#messageindex .board_icon { width: 2rem; flex: none; margin: 0; }
#messageindex .info { flex: 1; min-width: 0; padding: 0; margin: 0; }
#messageindex .board_stats { width: 9rem; flex: none; margin: 0; text-align: right; }
#messageindex .lastpost { width: 13rem; flex: none; margin: 0; font-size: .8125rem; color: var(--etiqueta); }
#messageindex .lastpost a { color: var(--marca); }
.message_index_title { font-size: .9375rem; }
.message_index_title a, .message_index_title a:visited { color: var(--texto); font-weight: 700; }
.message_index_title a:hover { color: var(--marca); }
#messageindex .info p.floatleft { float: none; margin: .125rem 0 0; color: var(--etiqueta); font-size: .8125rem; }
#messageindex .info p.floatleft a { color: var(--etiqueta); }
#messageindex .icons { opacity: .7; }
.f-dato { display: block; color: var(--etiqueta); font-size: .8125rem; }
.f-dato b { color: var(--texto); font-size: .9375rem; font-variant-numeric: tabular-nums; }
.topic_pages { font-size: .75rem; }
.new_posts { display: inline-block; padding: 0 .375rem; border-radius: var(--r-chip); background: var(--marca); color: var(--sobre-marca) !important; font-size: .6875rem; font-weight: 700; margin-right: .25rem; }
.pagesection { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: .75rem; margin: 1rem 0; }
.pagesection .buttonlist { float: none; }
@media (max-width: 52rem) {
  #messageindex .lastpost, #messageindex #topic_header .lastpost { display: none; }
  #messageindex .board_stats { width: 6rem; }
}
@media (max-width: 40rem) {
  #messageindex .board_stats, #messageindex #topic_header .board_stats { display: none; }
}
.current_page::before, .current_page::after { content: none; }
.pagelinks .button { height: 2rem; }

/* ---------- Hilo (Display) ---------- */
#display_head.f-cab .display_title { font-size: 1.5rem; margin: 0; }
#display_head .f-chips { margin-top: .625rem; }
#display_head .nextlinks { float: none; display: block; margin-top: 1rem; font-size: .8125rem; }
#forumposts .cat_bar { display: none; }
#forumposts > form > .windowbg, #forumposts .windowbg { margin: 0 0 1rem; padding: 0; overflow: hidden; }
.post_wrapper { display: flex; }
.poster { width: 11rem; flex: none; float: none; margin: 0; padding: 1rem; background: var(--relleno); border-right: 1px solid var(--borde-suave); font-size: .8125rem; color: var(--etiqueta); }
.poster h4, .poster h4 a { font-size: .9375rem; color: var(--texto); margin: 0 0 .25rem; }
.poster li { margin: .125rem 0; }
.poster .avatar img, .poster img.avatar { border-radius: 50%; max-width: 4rem !important; max-height: 4rem !important; }
.postarea { flex: 1; min-width: 0; margin: 0; padding: 1rem 1.25rem; }
.keyinfo { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; margin: 0 0 .75rem; color: var(--etiqueta); }
.keyinfo .postinfo { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; flex: 1; }
.keyinfo .postinfo a.smalltext { color: var(--etiqueta); }
.keyinfo .messageicon { display: none; }
.keyinfo .page_number { order: 2; color: var(--etiqueta); }
.subject_title.subject_hidden { display: none; }
.post .inner { font-size: .9375rem; line-height: 1.65; color: var(--texto); border: 0; padding: 0; }
.f-mejor { box-shadow: var(--sombra-1), inset .1875rem 0 0 var(--positivo) !important; }
.under_message { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem; margin-top: 1rem; padding-top: .5rem; border-top: 1px solid var(--borde-suave); }
.f-resolver { display: inline-flex; align-items: center; gap: .375rem; height: 2rem; padding: 0 .75rem; border-radius: var(--r-ctrl); background: var(--positivo-suave); color: var(--positivo) !important; font-weight: 700; font-size: .8125rem; }
.f-resolver:hover { text-decoration: none; filter: brightness(.97); }
.f-resolver.quitar { background: none; color: var(--etiqueta) !important; font-weight: 400; }
.quickbuttons { display: flex; flex-wrap: wrap; gap: .25rem; margin: 0 0 0 auto; padding: 0; float: none; }
.quickbuttons li a, .quickbuttons li > span { display: inline-flex; align-items: center; gap: .25rem; height: 2rem; padding: 0 .5rem; border-radius: var(--r-ctrl); background: none; color: var(--marca); font-size: .8125rem; border: 0; box-shadow: none; }
.quickbuttons li a:hover { background: var(--hover); text-decoration: none; }
.quickbuttons ul { background: var(--superficie); border-radius: .75rem; box-shadow: var(--sombra-2); }
.signature, .custom_fields_above_signature { border-top: 1px solid var(--borde-suave); color: var(--etiqueta); font-size: .8125rem; }
#quickreply_options, #quickreply .roundframe { background: var(--superficie); }
#quickreply .cat_bar { display: block; }
@media (max-width: 40rem) {
  .post_wrapper { flex-direction: column; }
  .poster { width: auto; border-right: 0; border-bottom: 1px solid var(--borde-suave); display: flex; flex-wrap: wrap; gap: .25rem .75rem; align-items: center; padding: .75rem 1rem; }
  .poster > ul { display: none; }
  .postarea { padding: .875rem 1rem; }
}

/* Botones sin mayúsculas forzadas y desplegables de los botones (avisos del tema, etc.) */
.button, a.button, input[type="submit"], input[type="button"], .buttonlist .button, .quickbuttons li a { text-transform: none; letter-spacing: 0; }
.notify_dropdown { background: var(--superficie); color: var(--texto); border-radius: .75rem; box-shadow: var(--sombra-2); }
.notify_dropdown a, .notify_dropdown span { color: var(--texto); }
/* Encuestas */
#poll .bar, .poll_bar, .bar { background: var(--relleno); border: 0; border-radius: .25rem; }
.bar > span, .poll_bar > span { background: var(--marca); border-radius: .25rem; }
#poll_options dt, #poll_options dd { color: var(--texto); }
/* Ajustes con más prioridad sobre index.css de SMF */
.buttonlist a.button, .buttonlist .button, a.button, .button { background: var(--superficie) !important; color: var(--marca) !important; border: 1px solid var(--borde) !important; opacity: 1; }
.buttonlist a.button:hover, a.button:hover, .button:hover { background: var(--hover) !important; }
.buttonlist a.button.active, a.button.active, .button.active, .buttonlist .button_strip_reply, a.button.you_sure.active { background: var(--marca) !important; color: var(--sobre-marca) !important; border-color: var(--marca) !important; }
.cat_bar, .title_bar, #poll .cat_bar { background: none !important; border: 0 !important; box-shadow: none !important; }
.catbg, .titlebg, h3.catbg, h4.titlebg { background: none !important; color: var(--texto) !important; }
#poll .windowbg, #poll_options { background: var(--superficie); }
.bar { background: var(--relleno) !important; border: 0 !important; }
.bar span { background: var(--marca) !important; color: var(--sobre-marca); }
.postarea .post, .postarea .inner, .post .inner, .postarea .post .inner { background: none !important; border: 0 !important; box-shadow: none !important; padding: 0; margin: 0; }
.postarea .post { margin-top: .25rem; }
.quickbuttons li a, .quickbuttons li > span, .quickbuttons > li { background: none !important; border: 0 !important; box-shadow: none !important; }
.quickbuttons li a:hover { background: var(--hover) !important; }
#forumposts .windowbg.f-mejor { border-left: .25rem solid var(--positivo) !important; }
/* La firma y la barra de moderación van debajo del mensaje, no como tercera columna */
.post_wrapper { flex-wrap: wrap; }
.post_wrapper > .moderatorbar { flex: 0 0 100%; margin: 0; padding: .5rem 1.25rem 1rem calc(11rem + 1.25rem); border-top: 1px solid var(--borde-suave); }
.moderatorbar .signature { border: 0; padding: 0; margin: 0; }
@media (max-width: 40rem) { .post_wrapper > .moderatorbar { padding-left: 1rem; } }
/* Filas de la lista de temas también en el móvil */
#topic_container > div { padding: .75rem 1rem !important; }
#topic_container .info { width: auto !important; }
/* Etiquetas de formularios (registro, perfil, ajustes) legibles en los dos modos */
#main_content_section dt, #main_content_section dt strong, #main_content_section dt label, #main_content_section label, #main_content_section .smalltext { color: var(--texto); }
#main_content_section dd .smalltext, #main_content_section dt .smalltext { color: var(--etiqueta); }
