@font-face {
font-family: 'AngerStyles';
src: url('https://wiki.cathedralofblades.com/resources/AngerStyles.woff2') format('woff2'),
url('https://wiki.cathedralofblades.com/resources/AngerStyles.woff') format('woff');
font-weight: normal;
font-style: normal;
}
/* Base */
*,
*::before,
*::after {
box-sizing: border-box;
}
body, html {
margin: 0;
padding: 0;
overflow-x: hidden;
width: 100%;
}
/* Clickable container using data-href */
.big-box[data-href],
.small-box[data-href] {
position: relative;
cursor: pointer;
}
.big-box[data-href]::after,
.small-box[data-href]::after {
content: "";
position: absolute;
inset: 0;
z-index: 5;
}
/* Remove MediaWiki navigation and sidebars */
#mw-page-base,
#mw-head-base,
#mw-navigation,
#mw-panel,
#mw-sidebar,
#p-navigation,
#p-tb,
.p-views {
display: none !important;
}
/* Expand content container */
#content, .mw-body, .mw-body-content, #mw-content-text, .mw-main-content {
margin: 0;
padding: 0;
width: 100%;
max-width: none;
}
/* Layout container */
.tiles-row {
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: flex-start;
gap: 2rem;
}
/* BIG BOXES */
.big-box {
width: 250px;
height: 380px;
position: relative;
background-size: cover;
background-position: center;
background-repeat: no-repeat;
border-radius: 12px;
color: #c9a500;
box-shadow: 0 0 10px #00000088;
display: flex;
flex-direction: column;
justify-content: flex-end;
align-items: center;
padding: 10px;
text-align: center;
overflow: hidden;
flex-shrink: 0;
}
/* SMALL BOXES */
.small-box {
width: 250px;
height: 80px;
position: relative;
background-size: cover;
background-position: center 30%;
background-repeat: no-repeat;
border-radius: 4px;
color: #c9a500;
box-shadow: 0 0 10px #00000088;
display: flex;
flex-direction: column;
justify-content: flex-end;
align-items: flex-start;
padding: 10px;
text-align: left;
overflow: hidden;
flex-shrink: 0;
}
/* Hover overlay */
.big-box::before,
.small-box::before {
content: "";
position: absolute;
inset: 0;
background: transparent;
z-index: 1;
transition: background 0.3s ease;
}
.big-box:hover::before,
.small-box:hover::before {
background: rgba(0, 0, 0, 0.4);
}
.big-box .overlay-title,
.small-box .overlay-title,
.big-box .overlay-desc,
.small-box .overlay-desc {
position: relative;
z-index: 2;
}
.big-box .overlay-title {
font-size: 24px;
font-family: 'AngerStyles';
border-bottom: 2px solid #c9a500;
padding-bottom: 2px;
transition: color 0.2s ease, border-color 0.2s ease;
}
.big-box:hover .overlay-title {
color: #c9a500;
border-color: #c9a500;
}
.big-box .overlay-desc {
font-size: 14px;
margin-top: 9px;
color: #e0e0e0;
text-shadow: 1px 1px 3px black;
opacity: 0;
transition: opacity 0.3s ease;
}
.big-box:hover .overlay-desc {
opacity: 1;
}
.small-column {
display: flex;
flex-direction: column;
gap: 1rem;
}
.small-box .overlay-title {
font-size: 20px;
font-family: 'AngerStyles';
border-bottom: 1px solid #c9a500;
padding-bottom: 2px;
transition: color 0.2s ease, border-color 0.2s ease;
}
.small-box .overlay-desc {
font-size: 13px;
margin-top: 6px;
color: #ddd;
text-shadow: 1px 1px 3px black;
opacity: 0;
transition: opacity 0.3s ease;
}
.small-box:hover .overlay-desc {
opacity: 1;
}
/* Background classes (clean, no duplicates) */
.bg-button { background-image: url('https://cathedralofblades.com/wiki/images/e/e0/Menubutton.png'); }
.bg-bhealing { background-image: url('https://cathedralofblades.com/wiki/images/4/49/Healing.jpg'); }
.bg-bstatus { background-image: url('https://cathedralofblades.com/wiki/images/7/72/Status.jpg'); }
.bg-bcostume { background-image: url('https://cathedralofblades.com/wiki/images/5/53/Costume.jpg'); }
.bg-banomaly { background-image: url('https://cathedralofblades.com/wiki/images/7/72/Event.jpg'); }
.bg-benchant { background-image: url('https://cathedralofblades.com/wiki/images/7/73/Enchant.jpg'); }
.bg-bcards { background-image: url('https://cathedralofblades.com/wiki/images/7/70/Cards.jpg'); }
.bg-bcharacters{ background-image: url('https://cathedralofblades.com/wiki/images/4/43/Characters.jpg'); }
.bg-classes { background-image: url('https://cathedralofblades.com/wiki/images/7/7e/Classes.jpg'); }
.bg-bossrelic { background-image: url('https://cathedralofblades.com/wiki/images/5/58/Bossrelic.jpg'); }
.bg-combat { background-image: url('https://cathedralofblades.com/wiki/images/d/d7/Combat.jpg'); }
.bg-elements { background-image: url('https://cathedralofblades.com/wiki/images/7/7d/Elements.jpg'); }
.bg-stigmata { background-image: url('https://cathedralofblades.com/wiki/images/b/b3/Stigmata.jpg'); }
.bg-tools { background-image: url('https://cathedralofblades.com/wiki/images/c/c8/Tool.jpg'); }
.bg-world { background-image: url('https://cathedralofblades.com/wiki/images/5/5c/Worldmap.jpg'); }
.bg-weapons { background-image: url('https://cathedralofblades.com/wiki/images/9/9c/Weapons.jpg'); }
.bg-signets { background-image: url('https://cathedralofblades.com/wiki/images/6/61/Signets.jpg'); }
.bg-quests { background-image: url('https://cathedralofblades.com/wiki/images/9/98/Damarossa.jpg'); }
.bg-maidens { background-image: url('https://cathedralofblades.com/wiki/images/6/61/Sorrow.jpg'); }
.bg-dungeons { background-image: url('https://cathedralofblades.com/wiki/images/d/db/Obscuradungeon.jpg'); }
.bg-rhapsody { background-image: url('https://cathedralofblades.com/wiki/images/4/4a/Rhapsody.jpg'); }
.bg-railways { background-image: url('https://cathedralofblades.com/wiki/images/1/12/Railways.jpg'); }
.bg-abyss { background-image: url('https://cathedralofblades.com/wiki/images/c/c0/Abyss.jpg'); }
.bg-bobscura { background-image: url('https://cathedralofblades.com/wiki/images/a/a1/Obsdungeon.jpg'); }
.bg-bpatch { background-image: url('https://cathedralofblades.com/wiki/images/f/f5/Patch.jpg'); }
.bg-bprogress { background-image: url('https://cathedralofblades.com/wiki/images/f/f4/Progression.jpg'); }
.bg-bpvpinfo { background-image: url('https://cathedralofblades.com/wiki/images/5/52/Pvpinfo.jpg'); }
.bg-bunique { background-image: url('https://cathedralofblades.com/wiki/images/4/4c/Unique.jpg'); }
.bg-bveteran { background-image: url('https://cathedralofblades.com/wiki/images/6/62/Veteran.jpg'); }
.bg-bexplore { background-image: url('https://cathedralofblades.com/wiki/images/8/8f/Exploration.jpg'); }
.bg-bchallenges{ background-image: url('https://cathedralofblades.com/wiki/images/1/19/Challenges.jpg'); }
.bg-bserver { background-image: url('https://cathedralofblades.com/wiki/images/f/ff/Serverprogress.jpg'); }
.bg-bmenu { background-image: url('https://cathedralofblades.com/wiki/images/5/59/Menuinterface.jpg'); }
/* Divider */
.divider-ornamental {
margin: 1px;
}
.divider-ornamental .symbol {
font-size: 28px;
text-shadow: 1px 1px 3px black;
}
.divider-line-only {
height: 2px;
width: 100%;
background: linear-gradient(to right, #c9a500, #886b00, #c9a500);
border-radius: 1px;
}
/* Theme-aware adjustments */
body.skin-citizen[data-theme='light'] .divider-ornamental,
body.skin-citizen[data-theme='dark'] .divider-ornamental,
body.skin-citizen:not([data-theme]) .divider-ornamental {
color: inherit;
background: none;
}
/* Responsive adjustments */
@media screen and (max-width: 768px) {
.tiles-row {
flex-direction: column;
align-items: center;
}
.small-column {
flex-direction: row;
flex-wrap: wrap;
justify-content: center;
gap: 1rem;
}
.small-box,
.big-box {
width: 90%;
max-width: 400px;
height: auto;
}
}
@media screen and (max-width: 600px) {
.responsive-img,
img[alt="season.jpg"],
img[alt="extlinks.jpg"] {
width: 25% !important;
height: auto !important;
}
}
/* Elegant standalone title (no box) */
.luna-title {
font-family:'AngerStyles', serif;
font-size:46px;
line-height:1.1;
color:#e0e0e0;
text-align:center;
margin:28px 0 28px;
position:relative;
text-shadow:0 0 10px #000000cc;
}
/* Gold gradient underline with glow */
.luna-title::after {
content:"";
position:absolute;
left:0; right:0; bottom:-10px;
height:2px;
background:linear-gradient(90deg,rgba(0,0,0,0) 0%, #c9a500 12%, #ffd666 50%, #c9a500 88%, rgba(0,0,0,0) 100%);
box-shadow:0 0 10px #c9a50055;
}
/* Small central diamond ornament on the underline */
.luna-title::before {
content:"";
position:absolute;
left:50%; transform:translateX(-50%) rotate(45deg);
bottom:-14px;
width:10px; height:10px;
background:#ffd666;
box-shadow:0 0 8px #c9a500aa, inset 0 0 2px #c9a500;
border-radius:2px;
}
/* Buttons styled like ornaments under the title */
.luna-buttons {
display: flex;
justify-content: center;
align-items: center;
gap: 10px;
margin-top: 5px;
background: none;
border: none;
padding: 0;
}
.luna-button {
display: inline-block;
position: relative;
font-family:'AngerStyles', serif;
font-size:20px;
width: 250px;
padding:5px 5px;
color:#f5f5f5;
background:rgba(40,40,40,0.75);
border:1px solid #c9a500;
border-radius:6px;
text-align: center;
text-decoration:none;
transition:all 0.25s ease;
text-shadow:0 0 6px #000;
}
.luna-button:hover {
background:rgba(40,40,40,0.95);
color:#ffd666;
box-shadow:0 0 8px #c9a500aa, inset 0 0 4px #000;
}
/* Light blue variant button */
.luna-buttonx {
display: inline-block;
position: relative;
font-family:'AngerStyles', serif;
font-size:20px;
width: 200px;
padding:5px 5px;
color:#e0f7ff;
background:rgba(40,40,40,0.75);
border:1px solid #66ccff;
border-radius:6px;
text-align: center;
text-decoration:none;
transition:all 0.25s ease;
text-shadow:0 0 6px #000;
}
.luna-buttonx:hover {
background:rgba(30,50,70,0.9);
color:#aee9ff;
box-shadow:0 0 8px #66ccffaa, inset 0 0 4px #000;
}
/* subtle underline accent on hover */
.luna-button::after,
.luna-buttonx::after {
content:"";
position:absolute;
left:10%; right:10%;
bottom:6px;
height:1px;
background:linear-gradient(90deg,transparent 0%,#ffd666 50%,transparent 100%);
opacity:0;
transition:opacity 0.3s ease;
}
.luna-button:hover::after,
.luna-buttonx:hover::after {
opacity:1;
}
/* External link icon override */
a.external .luna-button::after,
a.external .luna-buttonx::after {
content: none !important;
}
a.external .luna-button,
a.external .luna-buttonx {
background: transparent !important;
padding-right: inherit !important;
}
/* Discord button (light purple) */
.luna-button-discord {
display: inline-block;
position: relative;
font-family:'AngerStyles', serif;
font-size:20px;
width: 200px;
padding:5px 5px;
color:#f5e6ff;
background:rgba(40,40,40,0.75);
border:1px solid #a066ff;
border-radius:6px;
text-align:center;
text-decoration:none;
transition:all 0.25s ease;
text-shadow:0 0 6px #000;
}
.luna-button-discord:hover {
background:rgba(40,30,60,0.9);
color:#d6b8ff;
box-shadow:0 0 8px #a066ffaa, inset 0 0 4px #000;
}
.luna-button-discord::after {
content:"";
position:absolute;
left:10%; right:10%;
bottom:6px;
height:1px;
background:linear-gradient(90deg,transparent 0%,#a066ff 50%,transparent 100%);
opacity:0;
transition:opacity 0.3s ease;
}
.luna-button-discord:hover::after { opacity:1; }
/* YouTube button (red) */
.luna-button-youtube {
display: inline-block;
position: relative;
font-family:'AngerStyles', serif;
font-size:20px;
width: 200px;
padding:5px 5px;
color:#ffe6e6;
background:rgba(40,40,40,0.75);
border:1px solid #cc3333;
border-radius:6px;
text-align:center;
text-decoration:none;
transition:all 0.25s ease;
text-shadow:0 0 6px #000;
}
.luna-button-youtube:hover {
background:rgba(60,20,20,0.9);
color:#ffaaaa;
box-shadow:0 0 8px #cc3333aa, inset 0 0 4px #000;
}
.luna-button-youtube::after {
content:"";
position:absolute;
left:10%; right:10%;
bottom:6px;
height:1px;
background:linear-gradient(90deg,transparent 0%,#cc3333 50%,transparent 100%);
opacity:0;
transition:opacity 0.3s ease;
}
.luna-button-youtube:hover::after { opacity:1; }
/* Patreon button (green) */
.luna-button-patreon {
display: inline-block;
position: relative;
font-family:'AngerStyles', serif;
font-size:20px;
width: 200px;
padding:5px 5px;
color:#e6ffe6;
background:rgba(40,40,40,0.75);
border:1px solid #33aa55;
border-radius:6px;
text-align:center;
text-decoration:none;
transition:all 0.25s ease;
text-shadow:0 0 6px #000;
}
.luna-button-patreon:hover {
background:rgba(20,50,30,0.9);
color:#aaffcc;
box-shadow:0 0 8px #33aa55aa, inset 0 0 4px #000;
}
.luna-button-patreon::after {
content:"";
position:absolute;
left:10%; right:10%;
bottom:6px;
height:1px;
background:linear-gradient(90deg,transparent 0%,#33aa55 50%,transparent 100%);
opacity:0;
transition:opacity 0.3s ease;
}
.luna-button-patreon:hover::after { opacity:1; }
/* Remove arrows only inside the custom button bar */
.luna-buttons a.external {
background: none !important;
padding-right: 0 !important;
}
.luna-buttons a.external::after {
content: none !important;
}
.luna-buttons {
overflow-x: auto;
justify-content: start;
}