Ir al contenido

Diferencia entre revisiones de «MediaWiki:Common.css»

De Compendio de la Campaña
 
Sin resumen de edición
Línea 1: Línea 1:
@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@500;700&family=EB+Garamond:ital,wght@0,400;0,600;1,400&display=swap');
/* =========================================================
/* =========================================================
   Common.css — Tema visual "Pergamino de Campaña" (D&D)
   VARIABLES & OVERRIDES GLOBALES DE MEDIAWIKI
  Pegar este contenido en [[MediaWiki:Common.css]]
  o servirlo montado en el skin Vector (ver docker-compose.yml)
   ========================================================= */
   ========================================================= */
:root {
--parchment: #ede0c3;
--parchment-dark: #d9c89e;
--parchment-shadow: #b9a06a;
--ink: #2e2115;
--ink-soft: #4a3b28;
--wine: #6e1423;
--wine-dark: #4a0e18;
--gold: #a6802f;
--gold-bright: #c9a44c;


:root {
/* Forzar Codex / Vector 2022 a usar la paleta */
--pergamino-claro: #f4ecd8;
--background-color-base: var(--parchment) !important;
--pergamino-oscuro: #e8dcc4;
--background-color-interactive-subtle: rgba(166, 128, 47, 0.15) !important;
--tinta: #3b2a1a;
--color-base: var(--ink) !important;
--granate: #8b0000;
--color-base--hover: var(--wine-dark) !important;
--cuero: #6b4423;
--color-progressive: var(--wine) !important;
--dorado: #b8860b;
--color-progressive--hover: var(--wine-dark) !important;
--border-color-base: var(--gold) !important;
}
}


/* ---------- Fondo general y tipografía ---------- */
/* =========================================================
  BASE Y ESTRUCTURA GENERAL
  ========================================================= */
body {
body {
background-color: var(--pergamino-oscuro);
background-color: var(--parchment-dark);
background-image:
background-image:
radial-gradient(circle at top left, rgba(255,255,255,0.15), transparent 60%),
radial-gradient(ellipse at 20% 0%, rgba(255,250,235,0.35), transparent 55%),
linear-gradient(var(--pergamino-claro), var(--pergamino-oscuro));
radial-gradient(ellipse at 80% 100%, rgba(120,90,40,0.25), transparent 60%),
color: var(--tinta);
linear-gradient(160deg, var(--parchment) 0%, var(--parchment-dark) 100%);
font-family: "Palatino Linotype", "Book Antiqua", Georgia, serif;
color: var(--ink);
font-family: 'EB Garamond', Georgia, serif;
font-size: 17px;
line-height: 1.65;
}
 
/* Eliminar márgenes raros y huecos entre contenedores */
.mw-page-container,
.mw-workspace-container {
background: transparent !important;
padding: 0 !important;
max-width: 100% !important;
}
 
.mw-content-container {
margin: 0 !important;
padding: 0 16px 16px 0 !important;
}
 
/* =========================================================
  CABECERA SUPERIOR Y BÚSQUEDA
  ========================================================= */
.vector-header-container,
.mw-header,
.vector-header,
.vector-sticky-header {
background: linear-gradient(180deg, #3a2a1a, #241a10) !important;
border-bottom: 2px solid var(--gold) !important;
color: var(--parchment) !important;
box-shadow: 0 4px 15px rgba(0, 0, 0, 0.4);
}
 
.vector-header a,
.vector-header .cdx-button,
.vector-header .vector-menu-heading,
.vector-sticky-header a {
color: var(--parchment) !important;
}
 
/* Cuadro de texto de búsqueda */
.vector-search-box-input,
.cdx-text-input__input,
#searchInput {
background-color: var(--parchment) !important;
color: var(--ink) !important;
border: 1px solid var(--gold) !important;
font-family: 'EB Garamond', serif !important;
}
 
.vector-search-box-input::placeholder,
.cdx-text-input__input::placeholder {
color: var(--ink-soft) !important;
}
 
/* Botones de acción del buscador */
.cdx-search-input__end-button,
.searchButton {
background-color: var(--wine) !important;
border-color: var(--gold) !important;
color: var(--parchment) !important;
}
 
.cdx-search-input__end-button:hover,
.searchButton:hover {
background-color: var(--wine-dark) !important;
}
 
/* =========================================================
  SIDEBAR / PANEL LATERAL OSCURO COMPLETO
  ========================================================= */
#mw-panel,
.vector-main-menu-container,
.vector-main-menu,
#mw-sidebar,
.vector-pinned-container,
.vector-sidebar-container {
background: #241a10 !important;
border-right: 2px solid var(--gold) !important;
}
 
#mw-panel .portal,
#mw-panel .portal .body,
.vector-main-menu ul,
.vector-main-menu-content {
background: transparent !important;
}
 
#mw-panel a,
.vector-main-menu a,
.vector-main-menu-heading,
#mw-panel .portal h3,
.vector-pinnable-header {
color: var(--parchment-dark) !important;
font-family: 'Cinzel', serif;
}
 
#mw-panel a:hover,
.vector-main-menu a:hover {
color: var(--gold-bright) !important;
text-decoration: none;
}
 
/* =========================================================
  PESTAÑAS DE NAVEGACIÓN (LEER, EDITAR, HISTORIAL)
  ========================================================= */
.vector-menu-tabs-legacy,
.vector-menu-tabs,
.vector-page-toolbar {
background: transparent !important;
}
 
.vector-menu-tabs li,
.vector-tab-noicon {
background: rgba(58, 42, 26, 0.4) !important;
border: 1px solid var(--gold) !important;
margin-right: 2px;
border-radius: 4px 4px 0 0;
}
 
.vector-menu-tabs .selected,
.vector-tab-noicon.selected {
background: var(--parchment) !important;
border-bottom: 1px solid var(--parchment) !important;
border-top: 3px solid var(--wine) !important;
}
 
.vector-menu-tabs li a,
.vector-tab-noicon a {
color: var(--ink) !important;
font-family: 'Cinzel', serif;
font-size: 0.85em;
}
 
.vector-menu-tabs .selected a {
color: var(--wine-dark) !important;
font-weight: 700;
}
}


/* =========================================================
  CUERPO PRINCIPAL DEL ARTÍCULO
  ========================================================= */
#content, .mw-body {
#content, .mw-body {
background-color: var(--pergamino-claro);
background-color: var(--parchment);
border: 3px solid var(--dorado);
border: 1px solid var(--gold);
border-radius: 6px;
outline: 6px double var(--parchment-shadow);
box-shadow: 0 0 18px rgba(60, 30, 10, 0.35) inset, 0 2px 6px rgba(0,0,0,0.3);
outline-offset: -10px;
padding: 1.2em 1.8em;
border-radius: 2px;
box-shadow: 0 8px 30px rgba(30, 20, 5, 0.35);
padding: 2em 2.4em;
margin-left: 12px;
margin-top: 10px;
}
}


/* Tipografía de encabezados */
h1, h2, h3, h4, .firstHeading {
h1, h2, h3, h4, .firstHeading {
font-family: "Cinzel", "Trajan Pro", "Times New Roman", serif;
font-family: 'Cinzel', serif;
color: var(--granate);
font-weight: 700;
border-bottom: 2px solid var(--dorado);
color: var(--wine-dark);
text-shadow: 1px 1px 0 rgba(255,255,255,0.3);
letter-spacing: 0.5px;
letter-spacing: 0.5px;
}
}


a {
.firstHeading {
color: var(--cuero);
font-size: 2em;
border-bottom: 2px solid var(--gold);
padding-bottom: 0.3em;
margin-bottom: 0.6em;
}
 
h2 {
border-bottom: 1px solid var(--gold);
padding-bottom: 0.15em;
}
 
/* Enlaces del contenido */
#content a, .mw-body a {
color: var(--wine);
text-decoration: none;
text-decoration: none;
border-bottom: 1px dotted var(--cuero);
border-bottom: 1px solid rgba(110,20,35,0.35);
}
}
a:hover {
 
color: var(--granate);
#content a:hover, .mw-body a:hover {
color: var(--wine-dark);
border-bottom-color: var(--wine-dark);
}
}


/* Barra lateral y cabecera */
/* Enlaces rojos / inexistentes */
.mw-header, #mw-panel, .vector-header {
#content a.new, .mw-body a.new {
background-color: var(--cuero);
color: #9c2727;
color: var(--pergamino-claro);
border-bottom-color: rgba(156, 39, 39, 0.4);
border-bottom: 3px solid var(--dorado);
}
}


/* Tablas estándar con acabado "manuscrito" */
/* Tablas estándar */
table:not(.infobox):not(.pi-background) {
table:not(.infobox):not(.pi-background) {
background-color: rgba(255,255,255,0.35);
background-color: rgba(255,255,255,0.4);
border: 1px solid var(--cuero);
border: 1px solid var(--gold);
border-collapse: collapse;
}
}
table:not(.infobox) th {
table:not(.infobox) th {
background-color: var(--cuero);
background: linear-gradient(180deg, #7a5a30, #5c4322);
color: var(--pergamino-claro);
color: var(--parchment);
font-family: 'Cinzel', serif;
font-weight: 500;
letter-spacing: 0.3px;
}
 
table:not(.infobox) td, table:not(.infobox) th {
border: 1px solid var(--gold);
padding: 6px 10px;
}
 
blockquote {
font-style: italic;
color: var(--ink-soft);
border-left: 3px solid var(--gold);
padding-left: 1em;
margin-left: 0;
}
}


/* =========================================================
/* =========================================================
   INFOBOXES (PortableInfobox) — Estilo "Hoja de Personaje"
   INFOBOXES — FICHA DE PERSONAJE / MONSTRUO
   ========================================================= */
   ========================================================= */
.portable-infobox {
.portable-infobox {
background: var(--pergamino-claro);
background: var(--parchment);
border: 4px double var(--dorado);
border: 1px solid var(--gold);
border-radius: 4px;
outline: 3px double var(--gold-bright);
box-shadow: 3px 3px 10px rgba(0,0,0,0.4);
outline-offset: -6px;
font-family: "Palatino Linotype", Georgia, serif;
border-radius: 3px;
color: var(--tinta);
box-shadow: 4px 6px 14px rgba(0,0,0,0.35);
font-family: 'EB Garamond', serif;
color: var(--ink);
width: 300px;
width: 300px;
}
}


/* Título principal de la ficha */
.portable-infobox .pi-title {
.portable-infobox .pi-title {
background-color: var(--granate);
background: linear-gradient(135deg, var(--wine), var(--wine-dark));
color: #f4ecd8;
color: #f3e6c8;
font-family: "Cinzel", serif;
font-family: 'Cinzel', serif;
font-size: 1.2em;
font-weight: 700;
font-weight: bold;
font-size: 1.25em;
text-align: center;
text-align: center;
padding: 8px 4px;
padding: 10px 6px;
border-bottom: 3px solid var(--dorado);
border-bottom: 3px solid var(--gold-bright);
text-shadow: 1px 1px 2px rgba(0,0,0,0.6);
text-shadow: 1px 1px 2px rgba(0,0,0,0.5);
}
}


/* Imagen del personaje/monstruo con marco tipo retrato */
.portable-infobox .pi-image {
.portable-infobox .pi-image {
border: 3px solid var(--dorado);
border: 3px solid var(--gold-bright);
margin: 6px auto;
border-radius: 2px;
max-width: 90%;
margin: 8px auto;
max-width: 88%;
box-shadow: 0 2px 8px rgba(0,0,0,0.3);
}
}


/* Cabeceras de sección (ej. "Estadísticas de combate") */
.portable-infobox .pi-header {
.portable-infobox .pi-header {
background-color: var(--cuero);
background: linear-gradient(180deg, #7a5a30, #5c4322);
color: var(--pergamino-claro);
color: var(--parchment);
font-weight: bold;
font-family: 'Cinzel', serif;
font-weight: 500;
text-transform: uppercase;
text-transform: uppercase;
font-size: 0.85em;
font-size: 0.8em;
letter-spacing: 1px;
letter-spacing: 1.2px;
padding: 4px 6px;
padding: 5px 6px;
border-top: 2px solid var(--dorado);
border-top: 1px solid var(--gold-bright);
border-bottom: 2px solid var(--dorado);
border-bottom: 1px solid var(--gold-bright);
}
}


/* Filas de datos (etiqueta + valor) */
.portable-infobox .pi-data {
.portable-infobox .pi-data {
border-bottom: 1px solid var(--pergamino-oscuro);
border-bottom: 1px solid var(--parchment-shadow);
padding: 4px 8px;
padding: 5px 10px;
}
}
.portable-infobox .pi-data-label {
.portable-infobox .pi-data-label {
font-weight: bold;
font-weight: 600;
color: var(--granate);
color: var(--wine-dark);
width: 40%;
width: 45%;
}
}
.portable-infobox .pi-data-value {
.portable-infobox .pi-data-value {
color: var(--tinta);
color: var(--ink);
}
}


/* Grupos destacados: bloques de estadísticas (CA, HP, Desafío, etc.) */
.portable-infobox .pi-group.pi-border-color {
.portable-infobox .pi-group.pi-border-color {
background-color: rgba(184, 134, 11, 0.12);
background-color: rgba(166, 128, 47, 0.12);
border-top: 2px dashed var(--dorado);
border-top: 1px dashed var(--gold);
border-bottom: 2px dashed var(--dorado);
border-bottom: 1px dashed var(--gold);
}
}


/* Pie de ficha / notas */
.portable-infobox .pi-footer {
.portable-infobox .pi-footer {
font-size: 0.75em;
font-size: 0.75em;
text-align: center;
text-align: center;
color: var(--cuero);
color: var(--ink-soft);
font-style: italic;
font-style: italic;
padding: 4px;
padding: 6px;
border-top: 1px solid var(--parchment-shadow);
}
}


/* Estilos específicos aplicables vía <templatestyles> en cada plantilla */
.ficha-personaje .pi-title   { background: linear-gradient(135deg, var(--wine), var(--wine-dark)); }
.ficha-personaje .pi-title { background-color: var(--granate); }
.ficha-monstruo .pi-title     { background: linear-gradient(135deg, #4a2010, #2b1208); }
.ficha-monstruo .pi-title { background-color: #4a2010; }
.ficha-hechizo .pi-title     { background: linear-gradient(135deg, #2f4f4f, #1a2e2e); }
.ficha-hechizo .pi-title   { background-color: #2f4f4f; }
.ficha-localizacion .pi-title { background: linear-gradient(135deg, #5c4322, #3a2a15); }
.ficha-localizacion .pi-title { background-color: var(--cuero); }

Revisión del 01:19 10 sep 2026

@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@500;700&family=EB+Garamond:ital,wght@0,400;0,600;1,400&display=swap');

/* =========================================================
   VARIABLES & OVERRIDES GLOBALES DE MEDIAWIKI
   ========================================================= */
:root {
	--parchment: #ede0c3;
	--parchment-dark: #d9c89e;
	--parchment-shadow: #b9a06a;
	--ink: #2e2115;
	--ink-soft: #4a3b28;
	--wine: #6e1423;
	--wine-dark: #4a0e18;
	--gold: #a6802f;
	--gold-bright: #c9a44c;

	/* Forzar Codex / Vector 2022 a usar la paleta */
	--background-color-base: var(--parchment) !important;
	--background-color-interactive-subtle: rgba(166, 128, 47, 0.15) !important;
	--color-base: var(--ink) !important;
	--color-base--hover: var(--wine-dark) !important;
	--color-progressive: var(--wine) !important;
	--color-progressive--hover: var(--wine-dark) !important;
	--border-color-base: var(--gold) !important;
}

/* =========================================================
   BASE Y ESTRUCTURA GENERAL
   ========================================================= */
body {
	background-color: var(--parchment-dark);
	background-image:
		radial-gradient(ellipse at 20% 0%, rgba(255,250,235,0.35), transparent 55%),
		radial-gradient(ellipse at 80% 100%, rgba(120,90,40,0.25), transparent 60%),
		linear-gradient(160deg, var(--parchment) 0%, var(--parchment-dark) 100%);
	color: var(--ink);
	font-family: 'EB Garamond', Georgia, serif;
	font-size: 17px;
	line-height: 1.65;
}

/* Eliminar márgenes raros y huecos entre contenedores */
.mw-page-container,
.mw-workspace-container {
	background: transparent !important;
	padding: 0 !important;
	max-width: 100% !important;
}

.mw-content-container {
	margin: 0 !important;
	padding: 0 16px 16px 0 !important;
}

/* =========================================================
   CABECERA SUPERIOR Y BÚSQUEDA
   ========================================================= */
.vector-header-container,
.mw-header,
.vector-header,
.vector-sticky-header {
	background: linear-gradient(180deg, #3a2a1a, #241a10) !important;
	border-bottom: 2px solid var(--gold) !important;
	color: var(--parchment) !important;
	box-shadow: 0 4px 15px rgba(0, 0, 0, 0.4);
}

.vector-header a,
.vector-header .cdx-button,
.vector-header .vector-menu-heading,
.vector-sticky-header a {
	color: var(--parchment) !important;
}

/* Cuadro de texto de búsqueda */
.vector-search-box-input,
.cdx-text-input__input,
#searchInput {
	background-color: var(--parchment) !important;
	color: var(--ink) !important;
	border: 1px solid var(--gold) !important;
	font-family: 'EB Garamond', serif !important;
}

.vector-search-box-input::placeholder,
.cdx-text-input__input::placeholder {
	color: var(--ink-soft) !important;
}

/* Botones de acción del buscador */
.cdx-search-input__end-button,
.searchButton {
	background-color: var(--wine) !important;
	border-color: var(--gold) !important;
	color: var(--parchment) !important;
}

.cdx-search-input__end-button:hover,
.searchButton:hover {
	background-color: var(--wine-dark) !important;
}

/* =========================================================
   SIDEBAR / PANEL LATERAL OSCURO COMPLETO
   ========================================================= */
#mw-panel,
.vector-main-menu-container,
.vector-main-menu,
#mw-sidebar,
.vector-pinned-container,
.vector-sidebar-container {
	background: #241a10 !important;
	border-right: 2px solid var(--gold) !important;
}

#mw-panel .portal,
#mw-panel .portal .body,
.vector-main-menu ul,
.vector-main-menu-content {
	background: transparent !important;
}

#mw-panel a,
.vector-main-menu a,
.vector-main-menu-heading,
#mw-panel .portal h3,
.vector-pinnable-header {
	color: var(--parchment-dark) !important;
	font-family: 'Cinzel', serif;
}

#mw-panel a:hover,
.vector-main-menu a:hover {
	color: var(--gold-bright) !important;
	text-decoration: none;
}

/* =========================================================
   PESTAÑAS DE NAVEGACIÓN (LEER, EDITAR, HISTORIAL)
   ========================================================= */
.vector-menu-tabs-legacy,
.vector-menu-tabs,
.vector-page-toolbar {
	background: transparent !important;
}

.vector-menu-tabs li,
.vector-tab-noicon {
	background: rgba(58, 42, 26, 0.4) !important;
	border: 1px solid var(--gold) !important;
	margin-right: 2px;
	border-radius: 4px 4px 0 0;
}

.vector-menu-tabs .selected,
.vector-tab-noicon.selected {
	background: var(--parchment) !important;
	border-bottom: 1px solid var(--parchment) !important;
	border-top: 3px solid var(--wine) !important;
}

.vector-menu-tabs li a,
.vector-tab-noicon a {
	color: var(--ink) !important;
	font-family: 'Cinzel', serif;
	font-size: 0.85em;
}

.vector-menu-tabs .selected a {
	color: var(--wine-dark) !important;
	font-weight: 700;
}

/* =========================================================
   CUERPO PRINCIPAL DEL ARTÍCULO
   ========================================================= */
#content, .mw-body {
	background-color: var(--parchment);
	border: 1px solid var(--gold);
	outline: 6px double var(--parchment-shadow);
	outline-offset: -10px;
	border-radius: 2px;
	box-shadow: 0 8px 30px rgba(30, 20, 5, 0.35);
	padding: 2em 2.4em;
	margin-left: 12px;
	margin-top: 10px;
}

/* Tipografía de encabezados */
h1, h2, h3, h4, .firstHeading {
	font-family: 'Cinzel', serif;
	font-weight: 700;
	color: var(--wine-dark);
	letter-spacing: 0.5px;
}

.firstHeading {
	font-size: 2em;
	border-bottom: 2px solid var(--gold);
	padding-bottom: 0.3em;
	margin-bottom: 0.6em;
}

h2 {
	border-bottom: 1px solid var(--gold);
	padding-bottom: 0.15em;
}

/* Enlaces del contenido */
#content a, .mw-body a {
	color: var(--wine);
	text-decoration: none;
	border-bottom: 1px solid rgba(110,20,35,0.35);
}

#content a:hover, .mw-body a:hover {
	color: var(--wine-dark);
	border-bottom-color: var(--wine-dark);
}

/* Enlaces rojos / inexistentes */
#content a.new, .mw-body a.new {
	color: #9c2727;
	border-bottom-color: rgba(156, 39, 39, 0.4);
}

/* Tablas estándar */
table:not(.infobox):not(.pi-background) {
	background-color: rgba(255,255,255,0.4);
	border: 1px solid var(--gold);
	border-collapse: collapse;
}

table:not(.infobox) th {
	background: linear-gradient(180deg, #7a5a30, #5c4322);
	color: var(--parchment);
	font-family: 'Cinzel', serif;
	font-weight: 500;
	letter-spacing: 0.3px;
}

table:not(.infobox) td, table:not(.infobox) th {
	border: 1px solid var(--gold);
	padding: 6px 10px;
}

blockquote {
	font-style: italic;
	color: var(--ink-soft);
	border-left: 3px solid var(--gold);
	padding-left: 1em;
	margin-left: 0;
}

/* =========================================================
   INFOBOXES — FICHA DE PERSONAJE / MONSTRUO
   ========================================================= */
.portable-infobox {
	background: var(--parchment);
	border: 1px solid var(--gold);
	outline: 3px double var(--gold-bright);
	outline-offset: -6px;
	border-radius: 3px;
	box-shadow: 4px 6px 14px rgba(0,0,0,0.35);
	font-family: 'EB Garamond', serif;
	color: var(--ink);
	width: 300px;
}

.portable-infobox .pi-title {
	background: linear-gradient(135deg, var(--wine), var(--wine-dark));
	color: #f3e6c8;
	font-family: 'Cinzel', serif;
	font-weight: 700;
	font-size: 1.25em;
	text-align: center;
	padding: 10px 6px;
	border-bottom: 3px solid var(--gold-bright);
	text-shadow: 1px 1px 2px rgba(0,0,0,0.5);
}

.portable-infobox .pi-image {
	border: 3px solid var(--gold-bright);
	border-radius: 2px;
	margin: 8px auto;
	max-width: 88%;
	box-shadow: 0 2px 8px rgba(0,0,0,0.3);
}

.portable-infobox .pi-header {
	background: linear-gradient(180deg, #7a5a30, #5c4322);
	color: var(--parchment);
	font-family: 'Cinzel', serif;
	font-weight: 500;
	text-transform: uppercase;
	font-size: 0.8em;
	letter-spacing: 1.2px;
	padding: 5px 6px;
	border-top: 1px solid var(--gold-bright);
	border-bottom: 1px solid var(--gold-bright);
}

.portable-infobox .pi-data {
	border-bottom: 1px solid var(--parchment-shadow);
	padding: 5px 10px;
}

.portable-infobox .pi-data-label {
	font-weight: 600;
	color: var(--wine-dark);
	width: 45%;
}

.portable-infobox .pi-data-value {
	color: var(--ink);
}

.portable-infobox .pi-group.pi-border-color {
	background-color: rgba(166, 128, 47, 0.12);
	border-top: 1px dashed var(--gold);
	border-bottom: 1px dashed var(--gold);
}

.portable-infobox .pi-footer {
	font-size: 0.75em;
	text-align: center;
	color: var(--ink-soft);
	font-style: italic;
	padding: 6px;
	border-top: 1px solid var(--parchment-shadow);
}

.ficha-personaje .pi-title    { background: linear-gradient(135deg, var(--wine), var(--wine-dark)); }
.ficha-monstruo .pi-title     { background: linear-gradient(135deg, #4a2010, #2b1208); }
.ficha-hechizo .pi-title      { background: linear-gradient(135deg, #2f4f4f, #1a2e2e); }
.ficha-localizacion .pi-title { background: linear-gradient(135deg, #5c4322, #3a2a15); }