MediaWiki:Common.css: Difference between revisions
MediaWiki interface page
More actions
No edit summary |
Madammagicka (talk | contribs) No edit summary |
||
| (334 intermediate revisions by 2 users not shown) | |||
| Line 1: | Line 1: | ||
/* ---------- | @import url('https://fonts.cdnfonts.com/css/warsaw-gothic'); | ||
/* ---------- IMAGE-ONLY BUTTONS – 4 PER ROW + TIGHT SPACING ---------- */ | |||
.cat-grid { | .cat-grid { | ||
display: flex; | display: flex; | ||
flex-wrap: wrap; | flex-wrap: wrap; | ||
justify-content: center; | justify-content: center; | ||
gap: | gap: 16px; /* ← CLOSER HORIZONTAL & VERTICAL */ | ||
max-width: 960px; | max-width: 960px; | ||
margin: 30px auto; | margin: 30px auto; | ||
| Line 10: | Line 14: | ||
} | } | ||
/* DIV button – FULL RESET + ROUNDED + ZOOM CONTAINER */ | |||
.cat-button { | .cat-button { | ||
position: relative; | |||
display: inline-block; /* <- REQUIRED for proper shrink-to-content */ | |||
border | line-height: 0 !important; | ||
margin: 0 !important; | |||
background: | padding: 0 !important; | ||
box-shadow: | border: none !important; | ||
transition: | border-radius: 10px !important; | ||
background: none !important; | |||
box-shadow: none !important; | |||
overflow: hidden !important; | |||
transition: transform 0.25s ease; | |||
cursor: pointer; | cursor: pointer; | ||
/* ← MAX 4 PER ROW: 25% width minus gap */ | |||
flex: 0 1 calc(25% - 12px); /* 4 × (25% - gap/4) */ | |||
min-width: 180px; /* prevent too small */ | |||
height: auto; | |||
} | |||
.cat-button p { | |||
margin: 0 !important; | |||
padding: 0 !important; | |||
line-height: 0 !important; | |||
display: contents !important; /* ← removes box but keeps children */ | |||
} | } | ||
/* HOVER: lift */ | |||
.cat-button:hover, | .cat-button:hover, | ||
.cat-button:focus { | .cat-button:focus { | ||
transform: translateY(-4px); | |||
outline: none !important; | |||
} | } | ||
/* IMAGE: zoom inside rounded */ | |||
.cat-button img { | .cat-button img { | ||
width: 100%; | width: 100%; | ||
height: auto; | height: auto; | ||
display: block; | display: block; | ||
border- | margin: 0; | ||
padding: 0; | |||
border: 0; | |||
border-radius: 10px; | |||
transform-origin: 50% 50% !important; /* FULL CENTER */ | |||
vertical-align: center; | |||
transition: transform 0.3s ease; | |||
transform-origin: center center; | |||
object-fit: cover; /* prevents letterboxing */ | |||
box-shadow: inset 0 0 6px rgba(0,0,0,0.07); | |||
} | |||
.cat-button:hover img { | |||
transform: scale(1.08); | |||
} | } | ||
.cat- | /* TEXT OVERLAY: BOLD + CLEAN BLACK OUTLINE */ | ||
.cat-overlay { | |||
position: absolute; | |||
inset: 0; | |||
display: flex; | display: flex; | ||
align-items: center; | align-items: center; | ||
justify-content: center; | justify-content: center; | ||
color: white; | |||
padding: 8px; | |||
font-weight: 700 !important; | |||
font-size: 1.1em; | |||
text-align: center; | |||
pointer-events: none; | |||
background: rgba(0, 0, 0, 0.08); | |||
border-radius: 10px; | |||
transition: background 0.3s ease, text-shadow 0.3s ease; | |||
text-shadow: | |||
-1.2px -1.2px 0 #000, | |||
1.2px -1.2px 0 #000, | |||
-1.2px 1.2px 0 #000, | |||
1.2px 1.2px 0 #000, | |||
-1.2px 0 0 #000, | |||
1.2px 0 0 #000, | |||
0 -1.2px 0 #000, | |||
0 1.2px 0 #000, | |||
0 0 6px rgba(0,0,0,0.6); | |||
} | |||
.cat-button:hover .cat-overlay { | |||
background: transparent; | |||
text-shadow: | |||
-1.5px -1.5px 0 #000, | |||
1.5px -1.5px 0 #000, | |||
-1.5px 1.5px 0 #000, | |||
1.5px 1.5px 0 #000, | |||
-1.5px 0 0 #000, | |||
1.5px 0 0 #000, | |||
0 -1.5px 0 #000, | |||
0 1.5px 0 #000, | |||
0 0 10px rgba(0,0,0,0.7); | |||
} | } | ||
/* | /* RESPONSIVE: 2 per row on tablets, 1 on mobile */ | ||
@media (max-width: 768px) { | @media (max-width: 768px) { | ||
.cat-grid { gap: | .cat-grid { gap: 12px; } /* ← EVEN TIGHTER when stacked */ | ||
.cat-button { flex: 0 1 calc(50% - 8px); } | .cat-button { flex: 0 1 calc(50% - 9px); } /* 2 per row */ | ||
} | |||
@media (max-width: 480px) { | |||
.cat-button { flex: 0 1 100%; } /* 1 per row */ | |||
.cat-overlay { font-size: 1em; } | |||
} | |||
.page-Main_Page .full-bg { | |||
position: absolute; | |||
top: 0; | |||
left: 50%; | |||
transform: translateX(-50%); | |||
max-width: 960px; | |||
height: 100%; | |||
width: 100%; | |||
background: url('/images/3/3c/Indexbg.png') center top/contain no-repeat; | |||
box-shadow: 0 4px 15px rgba(0,0,0,0.1); | |||
z-index: -1; | |||
} | |||
#footer-info-lastmod { | |||
display: none; | |||
} | |||
/* Reusable button style with !important to override theme */ | |||
.wiki-button { | |||
display: inline-block !important; | |||
background: #2d2d2d !important; | |||
padding: 6px 12px !important; | |||
border-radius: 6px !important; | |||
font-size: 90% !important; | |||
font-weight: bold !important; | |||
text-decoration: none !important; | |||
user-select: none !important; | |||
-webkit-user-select: none !important; | |||
-moz-user-select: none !important; | |||
-ms-user-select: none !important; | |||
cursor: pointer !important; | |||
transition: background 0.2s, color 0.2s !important; | |||
} | |||
.wiki-button:hover { | |||
background: #3a3a3a !important; | |||
color: #ffffff !important; | |||
} | |||
/* =========================== | |||
RACE INFOBOX – Citizen Dark Theme | |||
=========================== */ | |||
body.skin-citizen.theme-dark table.infobox, | |||
table.infobox { | |||
float: right; | |||
clear: right; | |||
margin: 0 0 1em 1em; | |||
width: 22em; | |||
background: #1e1f22; | |||
border: 1px solid #3a3d42; | |||
border-collapse: collapse; | |||
color: #e6e6e6; /* Light text for dark backgrounds */ | |||
font-size: 90%; | |||
line-height: 1.3; | |||
} | |||
/* Responsive fix for mobile */ | |||
@media screen and (max-width: 768px) { | |||
body.skin-citizen.theme-dark table.infobox, | |||
table.infobox { | |||
float: none !important; /* remove float */ | |||
clear: none !important; /* remove clear */ | |||
margin: 1em auto; /* center with margin */ | |||
width: 95%; /* nearly full width on small screens */ | |||
} | |||
} | |||
/* Title */ | |||
body.skin-citizen.theme-dark .infobox-title, | |||
.infobox-title { | |||
background: #2a2c31; | |||
border-bottom: 1px solid #3a3d42; | |||
padding: 8px; | |||
text-align: center; | |||
font-size: 125%; | |||
font-weight: bold; | |||
color: #ffffff; | |||
} | |||
/* Section Header */ | |||
body.skin-citizen.theme-dark .infobox-section, | |||
.infobox-section { | |||
background: #2f3238; | |||
color: #f0f0f0; | |||
padding: 6px; | |||
font-weight: bold; | |||
border-top: 1px solid #3a3d42; | |||
border-bottom: 1px solid #3a3d42; | |||
} | |||
/* Label */ | |||
body.skin-citizen.theme-dark .infobox-label, | |||
.infobox-label { | |||
background: #26282d; | |||
color: #cfd2d6; | |||
font-weight: bold; | |||
padding: 4px 6px; | |||
width: 35%; | |||
vertical-align: center; | |||
border-right: 1px solid #3a3d42; | |||
} | |||
/* Data */ | |||
body.skin-citizen.theme-dark .infobox-data, | |||
.infobox-data { | |||
padding: 4px 6px; | |||
vertical-align: center; | |||
color: #e8e8e8; | |||
} | |||
/* Image */ | |||
body.skin-citizen.theme-dark .infobox-image, | |||
.infobox-image { | |||
max-width: 100%; | |||
height: auto; | |||
} | |||
body.skin-citizen.theme-dark .infobox-caption, | |||
.infobox-caption { | |||
color: #bfc2c7; | |||
font-size: 90%; | |||
padding-top: 4px; | |||
} | |||
/* Prevent overlap */ | |||
h2, h3, h4 { | |||
clear: both; | |||
} | |||
/* Top-of-page info box */ | |||
.top-info-box { | |||
border: 1px solid #3a3d42; | |||
background: #1e1f22; | |||
color: #e6e6e6; | |||
padding: 12px 15px; | |||
margin-bottom: 1em; | |||
border-radius: 4px; | |||
font-size: 95%; | |||
} | |||
.top-info-box-title { | |||
font-weight: bold; | |||
font-size: 120%; | |||
margin-bottom: 4px; | |||
color: #ffffff; | |||
} | |||
.top-info-box-icon { | |||
float: left; | |||
font-size: 24px; | |||
margin-right: 10px; | |||
color: #fff; | |||
} | |||
.top-info-box:after { | |||
content: ""; | |||
display: block; | |||
clear: both; | |||
} | |||
/* ======= WARHAMMER FANTASY RACE CARDS ======= */ | |||
/* Page heading */ | |||
.race-page h2 { | |||
text-align: center; | |||
font-size: 0.5em; | |||
font-family: "Warsaw Gothic", serif; | |||
margin-bottom: 50px; | |||
letter-spacing: 3px; | |||
} | |||
/* Page styling */ | |||
.race-page { | |||
font-family: "Cinzel", serif; | |||
padding: 40px; | |||
border: 3px double #ffffff1a; | |||
border-radius: 12px; | |||
box-shadow: 0 0 40px rgba(0,0,0,0.85); | |||
background-color: rgba(9, 13, 19, 0.6); | |||
} | |||
/* Grid layout */ | |||
.race-grid2 { | |||
display: inline-grid; | |||
grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); | |||
justify-items: center; /* centers content inside each cell */ | |||
justify-content: center; /* centers the entire row */ | |||
padding: 20px; | |||
gap: 30px; | |||
} | |||
.race-grid { | |||
display: flex; | |||
flex-wrap: wrap; | |||
justify-content: center; /* centers all rows including last */ | |||
gap: 30px; | |||
padding: 20px; | |||
} | |||
.race-grid > * { | |||
flex: 0 1 260px; /* each card is at least 260px wide */ | |||
} | |||
.race-card { | |||
border: 2px solid #ffffff1a; | |||
border-radius: 12px; | |||
padding: 20px; | |||
width: 260px; | |||
height: 320px; | |||
margin-left: auto; | |||
margin-right: auto; | |||
text-align: center; | |||
box-shadow: inset 0 0 25px rgba(0,0,0,0.7), 0 6px 30px rgba(0,0,0,0.85); | |||
transition: transform 0.25s ease, box-shadow 0.25s ease, filter 0.25s ease; | |||
overflow: visible; | |||
position: relative; | |||
font-size: 1em; | |||
text-shadow: 0 1px 3px #000000aa; | |||
background-size: cover; | |||
background-repeat: no-repeat; | |||
background-blend-mode: multiply; | |||
cursor: pointer; | |||
display: flex; | |||
flex-direction: column; | |||
justify-content: flex-end; | |||
align-items: center; | |||
} | |||
/* Hover effect for all race cards */ | |||
.race-card:hover { | |||
transform: scale(1.05); | |||
box-shadow: inset 0 0 25px rgba(0,0,0,0.7), 0 10px 40px rgba(0,0,0,0.9); | |||
filter: brightness(1.1); | |||
} | |||
/* Race title */ | |||
.race-title { | |||
color: #ffffff; | |||
font-size: 1.8em; | |||
font-family: "Warsaw Gothic", serif; | |||
margin-bottom: 12px; | |||
letter-spacing: 2px; | |||
border-bottom: 2px solid #ffffff; | |||
padding-bottom: 6px; | |||
text-shadow: 4px 4px 6px #000000bb; | |||
} | |||
/* ====== DIFFERENT BACKGROUNDS PER DROPDOWN CATEGORY ====== */ | |||
.race-page.human { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Humancity.jpg'); | |||
background-size: cover; | |||
background-position: center center; | |||
background-repeat: no-repeat; | |||
background-blend-mode: multiply; | |||
} | |||
.race-page.elves { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Elfcity.jpg'); | |||
background-size: cover; | |||
background-position: center center; | |||
background-repeat: no-repeat; | |||
background-blend-mode: multiply; | |||
} | |||
.race-page.dwarfs { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Dwarfcity.jpeg'); | |||
background-size: cover; | |||
background-position: center center; | |||
background-repeat: no-repeat; | |||
background-blend-mode: multiply; | |||
} | |||
.race-page.greenskins { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Orccity.jpeg'); | |||
background-size: cover; | |||
background-position: center center; | |||
background-repeat: no-repeat; | |||
background-blend-mode: multiply; | |||
} | |||
.race-page.monsterous { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Badlands.jpg'); | |||
background-size: cover; | |||
background-position: center center; | |||
background-repeat: no-repeat; | |||
background-blend-mode: multiply; | |||
} | |||
.race-page.afflictions { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Chaosland.jpg'); | |||
background-size: cover; | |||
background-position: center center; | |||
background-repeat: no-repeat; | |||
background-blend-mode: multiply; | |||
} | |||
/* ===== Per-Race Backgrounds (Centered Images) ===== */ | |||
.race-card.high-elves { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Elfart.jpg'); | |||
background-position: 20% 50%; | |||
} | |||
.race-card.wood-elves { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Woodelfart.jpg'); | |||
background-position: 50% 50%; | |||
} | |||
.race-card.bretonnia { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Bretonniaart.jpg'); | |||
background-position: 30% 50%; | |||
} | |||
.race-card.kislev { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Kislevart.jpg'); | |||
background-position: 40% 50%; | |||
} | |||
.race-card.cathay { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Cathayart.jpg'); | |||
background-position: 50% 50%; | |||
} | |||
.race-card.chaos-dwarfs { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Chaosdwarvesart.jpg'); | |||
background-position: 30% 50%; | |||
} | |||
.race-card.beastmen { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Beastmanart.jpg'); | |||
background-position: 50% 50%; | |||
} | |||
.race-card.norsca { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Norscaart.jpg'); | |||
background-position: 50% 50%; | |||
} | |||
.race-card.ogre { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Ogreart.jpg'); | |||
background-position: 20% 50%; | |||
} | |||
.race-card.dwarf { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Dwarfart.jpg'); | |||
background-position: 5% 50%; | |||
} | |||
.race-card.human { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Empreart.jpg'); | |||
background-position: 20% 50%; | |||
} | |||
.race-card.araby { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Arabyart.jpg'); | |||
background-position: 50% 50%; | |||
} | |||
.race-card.druchii { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Druchiiart.jpg'); | |||
background-position: 70% 50%; | |||
} | |||
.race-card.greenskins { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Orcart.jpg'); | |||
background-position: 50% 50%; | |||
} | |||
.race-card.vampire { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Vampireart.jpg'); | |||
background-position: 30% 50%; | |||
} | |||
.race-card.warriorsofchaos { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Warriorsofchaosart.jpg'); | |||
background-position: 20% 50%; | |||
} | |||
.race-card.pirates { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Sartosa.jpg'); | |||
background-position: 20% 50%; | |||
} | |||
.race-card.goblins { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Goblinart.jpg'); | |||
background-position: 20% 50%; | |||
} | |||
/* ===== Per-Career Backgrounds (Centered Images) ===== */ | |||
.race-card.bounty { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Bounty.jpg'); | |||
background-position: 50% 50%; | |||
} | |||
.race-card.artisan { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Artisan.jpg'); | |||
background-position: 50% 50%; | |||
} | |||
.race-card.ritualist { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Ritualist.jpg'); | |||
background-position: 50% 50%; | |||
} | |||
.race-card.quartermaster { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Quartermaster.jpg'); | |||
background-position: 50% 50%; | |||
} | |||
.race-card.engineer { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Engineer.jpg'); | |||
background-position: 50% 50%; | |||
} | |||
/* ===== Per-Class Backgrounds (Centered Images) ===== */ | |||
.race-card.bastion { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Bastion.jpg'); | |||
background-position: 50% 50%; | |||
} | |||
.race-card.berserker { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Beserker.jpg'); | |||
background-position: 50% 50%; | |||
} | |||
.race-card.ranger { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Ranger.jpg'); | |||
background-position: 50% 50%; | |||
} | |||
.race-card.assassin { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Assassin.jpg'); | |||
background-position: 50% 50%; | |||
} | |||
.race-card.pyromancer { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Pyromancer.jpg'); | |||
background-position: 50% 50%; | |||
} | |||
.race-card.cryomancer { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Cryomancer.jpg'); | |||
background-position: 50% 50%; | |||
} | |||
.race-card.healer { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Healer.jpg'); | |||
background-position: 50% 50%; | |||
} | |||
.race-card.necromancer { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Necromancer.jpg'); | |||
background-position: 50% 50%; | |||
} | |||
/* ===== Per-Chaos Backgrounds (Centered Images) ===== */ | |||
.race-card.khorne { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/KhorneArt.png'); | |||
background-position: 50% 50%; | |||
} | |||
.race-card.tzeentch { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/TzeentchArt.jpg'); | |||
background-position: 50% 50%; | |||
} | |||
.race-card.nurgle { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/NurgleArt.png'); | |||
background-position: 50% 50%; | |||
} | |||
.race-card.slaanesh { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/SlaaneshArt.png'); | |||
background-position: 50% 50%; | |||
} | |||
/* ===== Per-Rule Backgrounds (Centered Images) ===== */ | |||
.race-card.charactercreation { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Charactercreation.png'); | |||
background-position: 50% 50%; | |||
} | |||
.race-card.territorywar { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/TerritoryWarsRules.png'); | |||
background-position: 50% 50%; | |||
} | |||
.race-card.pvp { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Pvp.png'); | |||
background-position: 50% 50%; | |||
} | |||
.race-card.building { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Building.png'); | |||
background-position: 50% 50%; | |||
} | |||
.race-card.raiding { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Raiding.png'); | |||
background-position: 50% 50%; | |||
} | |||
.race-card.raiding { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Raiding.png'); | |||
background-position: 50% 50%; | |||
} | |||
.race-card.consequences { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Consequences.png'); | |||
background-position: 50% 50%; | |||
} | |||
.race-card.roleplayrules { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Roleplayrules.png'); | |||
background-position: 50% 50%; | |||
} | |||
/* ===== Per-Guides Backgrounds (Centered Images) ===== */ | |||
/* Background Of Dropdown */ | |||
.race-page.guides{ | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Chaosland.jpg'); | |||
background-size: cover; | |||
background-position: center center; | |||
background-repeat: no-repeat; | |||
background-blend-mode: multiply; | |||
} | |||
.race-card.getting-started { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Getting_Started.jpg'); | |||
background-position: 50% 50%; | |||
} | |||
.race-card.character-creation { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Character_Creation.jpg'); | |||
background-position: 50% 50%; | |||
} | |||
.race-card.general-roleplay { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/General_Roleplay.jpg'); | |||
background-position: 50% 50%; | |||
} | |||
.race-card.principality-territory { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Principality_&_Territory_Guide.jpg'); | |||
background-position: 50% 50%; | |||
} | |||
.race-card.prestige-guide { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Prestige.jpg'); | |||
background-position: 75% 50%; | |||
} | |||
.race-card.new-armor { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/New_Armor.jpg'); | |||
background-position: 50% 50%; | |||
} | |||
.race-card.mechanical-injury { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Mechanical_Injury.jpg'); | |||
background-position: 50% 50%; | |||
} | |||
.race-card.mechanical-healing { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Mechanical_Healing.jpg'); | |||
background-position: 50% 80%; | |||
} | |||
.race-card.antagonistic-roleplay { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Antagonistic_Roleplay.jpg'); | |||
background-position: 50% 50%; | |||
} | |||
.race-card.coalitions-guide { | |||
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Coalitions.jpg'); | |||
background-position: 70% 50%; | |||
} | } | ||
Latest revision as of 17:26, 2 January 2026
@import url('https://fonts.cdnfonts.com/css/warsaw-gothic');
/* ---------- IMAGE-ONLY BUTTONS – 4 PER ROW + TIGHT SPACING ---------- */
.cat-grid {
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: 16px; /* ← CLOSER HORIZONTAL & VERTICAL */
max-width: 960px;
margin: 30px auto;
padding: 0 12px;
}
/* DIV button – FULL RESET + ROUNDED + ZOOM CONTAINER */
.cat-button {
position: relative;
display: inline-block; /* <- REQUIRED for proper shrink-to-content */
line-height: 0 !important;
margin: 0 !important;
padding: 0 !important;
border: none !important;
border-radius: 10px !important;
background: none !important;
box-shadow: none !important;
overflow: hidden !important;
transition: transform 0.25s ease;
cursor: pointer;
/* ← MAX 4 PER ROW: 25% width minus gap */
flex: 0 1 calc(25% - 12px); /* 4 × (25% - gap/4) */
min-width: 180px; /* prevent too small */
height: auto;
}
.cat-button p {
margin: 0 !important;
padding: 0 !important;
line-height: 0 !important;
display: contents !important; /* ← removes box but keeps children */
}
/* HOVER: lift */
.cat-button:hover,
.cat-button:focus {
transform: translateY(-4px);
outline: none !important;
}
/* IMAGE: zoom inside rounded */
.cat-button img {
width: 100%;
height: auto;
display: block;
margin: 0;
padding: 0;
border: 0;
border-radius: 10px;
transform-origin: 50% 50% !important; /* FULL CENTER */
vertical-align: center;
transition: transform 0.3s ease;
transform-origin: center center;
object-fit: cover; /* prevents letterboxing */
box-shadow: inset 0 0 6px rgba(0,0,0,0.07);
}
.cat-button:hover img {
transform: scale(1.08);
}
/* TEXT OVERLAY: BOLD + CLEAN BLACK OUTLINE */
.cat-overlay {
position: absolute;
inset: 0;
display: flex;
align-items: center;
justify-content: center;
color: white;
padding: 8px;
font-weight: 700 !important;
font-size: 1.1em;
text-align: center;
pointer-events: none;
background: rgba(0, 0, 0, 0.08);
border-radius: 10px;
transition: background 0.3s ease, text-shadow 0.3s ease;
text-shadow:
-1.2px -1.2px 0 #000,
1.2px -1.2px 0 #000,
-1.2px 1.2px 0 #000,
1.2px 1.2px 0 #000,
-1.2px 0 0 #000,
1.2px 0 0 #000,
0 -1.2px 0 #000,
0 1.2px 0 #000,
0 0 6px rgba(0,0,0,0.6);
}
.cat-button:hover .cat-overlay {
background: transparent;
text-shadow:
-1.5px -1.5px 0 #000,
1.5px -1.5px 0 #000,
-1.5px 1.5px 0 #000,
1.5px 1.5px 0 #000,
-1.5px 0 0 #000,
1.5px 0 0 #000,
0 -1.5px 0 #000,
0 1.5px 0 #000,
0 0 10px rgba(0,0,0,0.7);
}
/* RESPONSIVE: 2 per row on tablets, 1 on mobile */
@media (max-width: 768px) {
.cat-grid { gap: 12px; } /* ← EVEN TIGHTER when stacked */
.cat-button { flex: 0 1 calc(50% - 9px); } /* 2 per row */
}
@media (max-width: 480px) {
.cat-button { flex: 0 1 100%; } /* 1 per row */
.cat-overlay { font-size: 1em; }
}
.page-Main_Page .full-bg {
position: absolute;
top: 0;
left: 50%;
transform: translateX(-50%);
max-width: 960px;
height: 100%;
width: 100%;
background: url('/images/3/3c/Indexbg.png') center top/contain no-repeat;
box-shadow: 0 4px 15px rgba(0,0,0,0.1);
z-index: -1;
}
#footer-info-lastmod {
display: none;
}
/* Reusable button style with !important to override theme */
.wiki-button {
display: inline-block !important;
background: #2d2d2d !important;
padding: 6px 12px !important;
border-radius: 6px !important;
font-size: 90% !important;
font-weight: bold !important;
text-decoration: none !important;
user-select: none !important;
-webkit-user-select: none !important;
-moz-user-select: none !important;
-ms-user-select: none !important;
cursor: pointer !important;
transition: background 0.2s, color 0.2s !important;
}
.wiki-button:hover {
background: #3a3a3a !important;
color: #ffffff !important;
}
/* ===========================
RACE INFOBOX – Citizen Dark Theme
=========================== */
body.skin-citizen.theme-dark table.infobox,
table.infobox {
float: right;
clear: right;
margin: 0 0 1em 1em;
width: 22em;
background: #1e1f22;
border: 1px solid #3a3d42;
border-collapse: collapse;
color: #e6e6e6; /* Light text for dark backgrounds */
font-size: 90%;
line-height: 1.3;
}
/* Responsive fix for mobile */
@media screen and (max-width: 768px) {
body.skin-citizen.theme-dark table.infobox,
table.infobox {
float: none !important; /* remove float */
clear: none !important; /* remove clear */
margin: 1em auto; /* center with margin */
width: 95%; /* nearly full width on small screens */
}
}
/* Title */
body.skin-citizen.theme-dark .infobox-title,
.infobox-title {
background: #2a2c31;
border-bottom: 1px solid #3a3d42;
padding: 8px;
text-align: center;
font-size: 125%;
font-weight: bold;
color: #ffffff;
}
/* Section Header */
body.skin-citizen.theme-dark .infobox-section,
.infobox-section {
background: #2f3238;
color: #f0f0f0;
padding: 6px;
font-weight: bold;
border-top: 1px solid #3a3d42;
border-bottom: 1px solid #3a3d42;
}
/* Label */
body.skin-citizen.theme-dark .infobox-label,
.infobox-label {
background: #26282d;
color: #cfd2d6;
font-weight: bold;
padding: 4px 6px;
width: 35%;
vertical-align: center;
border-right: 1px solid #3a3d42;
}
/* Data */
body.skin-citizen.theme-dark .infobox-data,
.infobox-data {
padding: 4px 6px;
vertical-align: center;
color: #e8e8e8;
}
/* Image */
body.skin-citizen.theme-dark .infobox-image,
.infobox-image {
max-width: 100%;
height: auto;
}
body.skin-citizen.theme-dark .infobox-caption,
.infobox-caption {
color: #bfc2c7;
font-size: 90%;
padding-top: 4px;
}
/* Prevent overlap */
h2, h3, h4 {
clear: both;
}
/* Top-of-page info box */
.top-info-box {
border: 1px solid #3a3d42;
background: #1e1f22;
color: #e6e6e6;
padding: 12px 15px;
margin-bottom: 1em;
border-radius: 4px;
font-size: 95%;
}
.top-info-box-title {
font-weight: bold;
font-size: 120%;
margin-bottom: 4px;
color: #ffffff;
}
.top-info-box-icon {
float: left;
font-size: 24px;
margin-right: 10px;
color: #fff;
}
.top-info-box:after {
content: "";
display: block;
clear: both;
}
/* ======= WARHAMMER FANTASY RACE CARDS ======= */
/* Page heading */
.race-page h2 {
text-align: center;
font-size: 0.5em;
font-family: "Warsaw Gothic", serif;
margin-bottom: 50px;
letter-spacing: 3px;
}
/* Page styling */
.race-page {
font-family: "Cinzel", serif;
padding: 40px;
border: 3px double #ffffff1a;
border-radius: 12px;
box-shadow: 0 0 40px rgba(0,0,0,0.85);
background-color: rgba(9, 13, 19, 0.6);
}
/* Grid layout */
.race-grid2 {
display: inline-grid;
grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
justify-items: center; /* centers content inside each cell */
justify-content: center; /* centers the entire row */
padding: 20px;
gap: 30px;
}
.race-grid {
display: flex;
flex-wrap: wrap;
justify-content: center; /* centers all rows including last */
gap: 30px;
padding: 20px;
}
.race-grid > * {
flex: 0 1 260px; /* each card is at least 260px wide */
}
.race-card {
border: 2px solid #ffffff1a;
border-radius: 12px;
padding: 20px;
width: 260px;
height: 320px;
margin-left: auto;
margin-right: auto;
text-align: center;
box-shadow: inset 0 0 25px rgba(0,0,0,0.7), 0 6px 30px rgba(0,0,0,0.85);
transition: transform 0.25s ease, box-shadow 0.25s ease, filter 0.25s ease;
overflow: visible;
position: relative;
font-size: 1em;
text-shadow: 0 1px 3px #000000aa;
background-size: cover;
background-repeat: no-repeat;
background-blend-mode: multiply;
cursor: pointer;
display: flex;
flex-direction: column;
justify-content: flex-end;
align-items: center;
}
/* Hover effect for all race cards */
.race-card:hover {
transform: scale(1.05);
box-shadow: inset 0 0 25px rgba(0,0,0,0.7), 0 10px 40px rgba(0,0,0,0.9);
filter: brightness(1.1);
}
/* Race title */
.race-title {
color: #ffffff;
font-size: 1.8em;
font-family: "Warsaw Gothic", serif;
margin-bottom: 12px;
letter-spacing: 2px;
border-bottom: 2px solid #ffffff;
padding-bottom: 6px;
text-shadow: 4px 4px 6px #000000bb;
}
/* ====== DIFFERENT BACKGROUNDS PER DROPDOWN CATEGORY ====== */
.race-page.human {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Humancity.jpg');
background-size: cover;
background-position: center center;
background-repeat: no-repeat;
background-blend-mode: multiply;
}
.race-page.elves {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Elfcity.jpg');
background-size: cover;
background-position: center center;
background-repeat: no-repeat;
background-blend-mode: multiply;
}
.race-page.dwarfs {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Dwarfcity.jpeg');
background-size: cover;
background-position: center center;
background-repeat: no-repeat;
background-blend-mode: multiply;
}
.race-page.greenskins {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Orccity.jpeg');
background-size: cover;
background-position: center center;
background-repeat: no-repeat;
background-blend-mode: multiply;
}
.race-page.monsterous {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Badlands.jpg');
background-size: cover;
background-position: center center;
background-repeat: no-repeat;
background-blend-mode: multiply;
}
.race-page.afflictions {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Chaosland.jpg');
background-size: cover;
background-position: center center;
background-repeat: no-repeat;
background-blend-mode: multiply;
}
/* ===== Per-Race Backgrounds (Centered Images) ===== */
.race-card.high-elves {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Elfart.jpg');
background-position: 20% 50%;
}
.race-card.wood-elves {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Woodelfart.jpg');
background-position: 50% 50%;
}
.race-card.bretonnia {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Bretonniaart.jpg');
background-position: 30% 50%;
}
.race-card.kislev {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Kislevart.jpg');
background-position: 40% 50%;
}
.race-card.cathay {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Cathayart.jpg');
background-position: 50% 50%;
}
.race-card.chaos-dwarfs {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Chaosdwarvesart.jpg');
background-position: 30% 50%;
}
.race-card.beastmen {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Beastmanart.jpg');
background-position: 50% 50%;
}
.race-card.norsca {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Norscaart.jpg');
background-position: 50% 50%;
}
.race-card.ogre {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Ogreart.jpg');
background-position: 20% 50%;
}
.race-card.dwarf {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Dwarfart.jpg');
background-position: 5% 50%;
}
.race-card.human {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Empreart.jpg');
background-position: 20% 50%;
}
.race-card.araby {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Arabyart.jpg');
background-position: 50% 50%;
}
.race-card.druchii {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Druchiiart.jpg');
background-position: 70% 50%;
}
.race-card.greenskins {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Orcart.jpg');
background-position: 50% 50%;
}
.race-card.vampire {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Vampireart.jpg');
background-position: 30% 50%;
}
.race-card.warriorsofchaos {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Warriorsofchaosart.jpg');
background-position: 20% 50%;
}
.race-card.pirates {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Sartosa.jpg');
background-position: 20% 50%;
}
.race-card.goblins {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Goblinart.jpg');
background-position: 20% 50%;
}
/* ===== Per-Career Backgrounds (Centered Images) ===== */
.race-card.bounty {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Bounty.jpg');
background-position: 50% 50%;
}
.race-card.artisan {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Artisan.jpg');
background-position: 50% 50%;
}
.race-card.ritualist {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Ritualist.jpg');
background-position: 50% 50%;
}
.race-card.quartermaster {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Quartermaster.jpg');
background-position: 50% 50%;
}
.race-card.engineer {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Engineer.jpg');
background-position: 50% 50%;
}
/* ===== Per-Class Backgrounds (Centered Images) ===== */
.race-card.bastion {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Bastion.jpg');
background-position: 50% 50%;
}
.race-card.berserker {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Beserker.jpg');
background-position: 50% 50%;
}
.race-card.ranger {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Ranger.jpg');
background-position: 50% 50%;
}
.race-card.assassin {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Assassin.jpg');
background-position: 50% 50%;
}
.race-card.pyromancer {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Pyromancer.jpg');
background-position: 50% 50%;
}
.race-card.cryomancer {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Cryomancer.jpg');
background-position: 50% 50%;
}
.race-card.healer {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Healer.jpg');
background-position: 50% 50%;
}
.race-card.necromancer {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Necromancer.jpg');
background-position: 50% 50%;
}
/* ===== Per-Chaos Backgrounds (Centered Images) ===== */
.race-card.khorne {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/KhorneArt.png');
background-position: 50% 50%;
}
.race-card.tzeentch {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/TzeentchArt.jpg');
background-position: 50% 50%;
}
.race-card.nurgle {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/NurgleArt.png');
background-position: 50% 50%;
}
.race-card.slaanesh {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/SlaaneshArt.png');
background-position: 50% 50%;
}
/* ===== Per-Rule Backgrounds (Centered Images) ===== */
.race-card.charactercreation {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Charactercreation.png');
background-position: 50% 50%;
}
.race-card.territorywar {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/TerritoryWarsRules.png');
background-position: 50% 50%;
}
.race-card.pvp {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Pvp.png');
background-position: 50% 50%;
}
.race-card.building {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Building.png');
background-position: 50% 50%;
}
.race-card.raiding {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Raiding.png');
background-position: 50% 50%;
}
.race-card.raiding {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Raiding.png');
background-position: 50% 50%;
}
.race-card.consequences {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Consequences.png');
background-position: 50% 50%;
}
.race-card.roleplayrules {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Roleplayrules.png');
background-position: 50% 50%;
}
/* ===== Per-Guides Backgrounds (Centered Images) ===== */
/* Background Of Dropdown */
.race-page.guides{
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Chaosland.jpg');
background-size: cover;
background-position: center center;
background-repeat: no-repeat;
background-blend-mode: multiply;
}
.race-card.getting-started {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Getting_Started.jpg');
background-position: 50% 50%;
}
.race-card.character-creation {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Character_Creation.jpg');
background-position: 50% 50%;
}
.race-card.general-roleplay {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/General_Roleplay.jpg');
background-position: 50% 50%;
}
.race-card.principality-territory {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Principality_&_Territory_Guide.jpg');
background-position: 50% 50%;
}
.race-card.prestige-guide {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Prestige.jpg');
background-position: 75% 50%;
}
.race-card.new-armor {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/New_Armor.jpg');
background-position: 50% 50%;
}
.race-card.mechanical-injury {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Mechanical_Injury.jpg');
background-position: 50% 50%;
}
.race-card.mechanical-healing {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Mechanical_Healing.jpg');
background-position: 50% 80%;
}
.race-card.antagonistic-roleplay {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Antagonistic_Roleplay.jpg');
background-position: 50% 50%;
}
.race-card.coalitions-guide {
background-image: url('https://irontide.info/index.php/Special:Redirect/file/Coalitions.jpg');
background-position: 70% 50%;
}