MediaWiki:Common.css: Difference between revisions

From Winds Of Valen Wiki
Jump to navigation Jump to search
Fix body background and logo text positioning
Fix layout
 
(32 intermediate revisions by the same user not shown)
Line 49: Line 49:
}
}


/* --- 5. Fix Logo Clipping --- */
/* --- 5. Hide Foreground Logo (Use Background Instead) --- */
#p-logo a {
#p-logo a {
    background-size: contain !important;
     height: 140px !important;
    background-position: center center !important;
     height: 140px !important; /* Optional: shrink if it overlaps */
}
}


Line 60: Line 58:
.page-Main_Page .mw-first-heading {
.page-Main_Page .mw-first-heading {
     display: none !important;
     display: none !important;
}
/* Give all page titles some breathing room from the top border */
.firstHeading {
    padding-top: 15px !important;
}
}
.page-Main_Page .mw-body-content {
.page-Main_Page .mw-body-content {
Line 88: Line 91:
   OSRS NATIVE DOM ARCHITECTURE (Main Page Layout Engine)
   OSRS NATIVE DOM ARCHITECTURE (Main Page Layout Engine)
   ========================================================================== */
   ========================================================================== */


.mainpage-container {
.mainpage-container {
Line 99: Line 103:
     display: grid;
     display: grid;
     grid-template-columns: 1fr 300px;
     grid-template-columns: 1fr 300px;
     gap: 14px;
     gap: 20px;
     align-items: start;
     align-items: start;
}
}
Line 111: Line 115:
.mainpage-header {
.mainpage-header {
     display: flex;
     display: flex;
     gap: 14px;
     gap: 20px;
     margin-bottom: 14px;
     margin-bottom: 20px;
}
}
.header-intro {
.header-intro {
     flex: 1;
     flex: 1;
     background-color: #fcf6e8 !important;
     background: url('/resources/assets/welcomeimage.jpg') center center no-repeat !important;
     border: 1px solid #b3a07d;
    background-size: cover !important;
     padding: 25px;
     border-radius: 8px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.4);
     padding: 30px;
     text-align: center;
     text-align: center;
    position: relative;
    z-index: 1;
    overflow: hidden;
}
.header-intro::before {
    content: "";
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background: linear-gradient(135deg, rgba(20, 15, 10, 0.8) 0%, rgba(40, 25, 15, 0.6) 100%);
    z-index: -1;
}
}
.header-title {
.header-title {
     font-size: 1.6em;
     font-size: 1.8em;
     font-weight: bold;
     font-weight: bold;
     color: #4a3c28;
     color: #ffd700;
     margin-bottom: 8px;
    text-shadow: 0 2px 8px rgba(0,0,0,0.9), 0 0 15px rgba(255, 215, 0, 0.3);
     margin-bottom: 12px;
     line-height: 1.2;
     line-height: 1.2;
}
}
.header-intro p {
.header-intro p {
     font-size: 0.95em;
     font-size: 1.05em;
     color: #5c4e38;
     color: #f1e7d3;
    text-shadow: 0 1px 4px rgba(0,0,0,0.8);
     margin: 0;
     margin: 0;
}
.header-intro p a {
    color: #7dd3fc !important;
    font-weight: bold !important;
    text-decoration: none !important;
    transition: all 0.2s ease;
}
.header-intro p a:hover {
    color: #bae6fd !important;
    text-shadow: 0 0 8px rgba(125, 211, 252, 0.6);
}
}


Line 137: Line 166:
     width: 300px;
     width: 300px;
     flex-shrink: 0;
     flex-shrink: 0;
     background-color: #f1e7d3 !important;
     background: linear-gradient(to bottom, #fcf6e8, #f1e7d3) !important;
     border: 1px solid #b3a07d;
    border-radius: 8px;
    box-shadow: 0 4px 10px rgba(61, 43, 31, 0.15);
     border: 1px solid rgba(179, 160, 125, 0.4);
     padding: 20px 25px;
     padding: 20px 25px;
     box-sizing: border-box;
     box-sizing: border-box;
Line 150: Line 181:
     display: flex;
     display: flex;
     justify-content: space-between;
     justify-content: space-between;
     margin-bottom: 6px;
     margin-bottom: 8px;
     font-size: 0.9em;
     font-size: 0.95em;
     border-bottom: 1px dashed #d1c4ac;
     border-bottom: 1px dashed rgba(179, 160, 125, 0.6);
     padding-bottom: 6px;
     padding-bottom: 8px;
}
}
.header-stats li:last-child {
.header-stats li:last-child {
Line 161: Line 192:
}
}
.header-stats b {
.header-stats b {
     color: #4a3c28;
     color: #611313;
    text-shadow: 0 1px 1px rgba(255, 255, 255, 0.5);
}
}


Line 170: Line 202:


.section-title {
.section-title {
     font-family: 'PT Serif', Georgia, serif;
     font-family: 'Kingthings Petrock', 'PT Serif', serif;
     font-size: 1.15em;
     font-size: 1.6em;
     font-weight: bold;
     font-weight: normal;
     color: #4a3c28;
     color: #3b240b;
     padding: 8px 14px 7px;
    text-align: center;
     border-bottom: 2px solid #b3a07d;
     padding: 0 0 10px 0;
     background-color: #f1e7d3;
    margin: 30px 0 20px 0;
     margin: 0 0 14px 0;
    position: relative;
    background: none;
     border-bottom: none;
}
.section-title::after {
    content: "";
    display: block;
    width: 150px;
    height: 3px;
     background: linear-gradient(90deg, transparent, #b3a07d, transparent);
     margin: 8px auto 0 auto;
}
}


.tile-row {
.tile-row {
     display: grid;
     display: grid;
     gap: 8px;
     gap: 16px;
     margin-bottom: 14px;
     margin-bottom: 20px;
}
}
.updates-row {
.updates-row {
     grid-template-columns: 1fr 1fr;
     grid-template-columns: 1fr 1fr;
     background-color: #fcf6e8;
     background: none;
     border: 1px solid #b3a07d;
     border: none;
    gap: 0;
}
}
.categories-grid {
.categories-grid {
     grid-template-columns: repeat(4, 1fr);
     grid-template-columns: repeat(4, 1fr);
     background-color: #f1e7d3;
     background: none;
     padding: 10px;
     border: none;
     border: 1px solid #b3a07d;
     padding: 0;
}
}


.tile-halves {
.update-card {
     display: flex;
     background: linear-gradient(145deg, #ffffff, #fcf6e8);
     flex-direction: column;
    border-radius: 8px;
     padding: 20px;
    box-shadow: 0 4px 12px rgba(61, 43, 31, 0.1);
    border: 1px solid rgba(179, 160, 125, 0.3);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}
}
 
.update-card:hover {
.update-card {
     transform: translateY(-3px);
     padding: 12px 14px;
     box-shadow: 0 8px 16px rgba(61, 43, 31, 0.15);
     border-right: 1px solid #b3a07d;
}
}
.update-card:last-child { border-right: none; }
.update-header {
.update-header {
     font-family: 'Inter', sans-serif;
     font-family: 'Inter', sans-serif;
     font-size: 0.7em;
     font-size: 0.75em;
     font-weight: 700;
     font-weight: 700;
     text-transform: uppercase;
     text-transform: uppercase;
     color: #5c4e38;
     color: #8c7657;
     letter-spacing: 0.05em;
     letter-spacing: 0.05em;
     margin-bottom: 4px;
     margin-bottom: 8px;
}
}
.update-title {
.update-title {
     font-size: 0.95em;
     font-size: 1.1em;
     font-weight: bold;
     font-weight: bold;
     margin-bottom: 6px;
     margin-bottom: 10px;
     line-height: 1.3;
     line-height: 1.3;
}
}
.update-title a {
.update-title a {
    color: #791a1a !important;
    text-decoration: none;
    transition: color 0.2s ease;
}
.update-title a:hover {
     color: #a61c1c !important;
     color: #a61c1c !important;
     text-decoration: none;
     text-decoration: none;
}
}
.update-title a:hover { text-decoration: underline; }
.update-card p {
    font-size: 0.9em;
    color: #4a3c28;
    line-height: 1.5;
    margin: 0;
}


.categories-grid .tile-halves {
.category-card {
     border: 1px solid #b3a07d;
    background: #ffffff;
     background-color: #ffffff;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 10px rgba(61, 43, 31, 0.1);
     border: 1px solid rgba(179, 160, 125, 0.3);
    transition: all 0.2s ease;
    display: flex;
    flex-direction: column;
}
.category-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 10px 20px rgba(61, 43, 31, 0.15), 0 0 15px rgba(255, 215, 0, 0.15);
     border-color: #b3a07d;
}
}
.tile-top.tile-image {
.tile-top.tile-image {
     background-color: #ffffff !important;
     background: radial-gradient(circle, #ffffff 0%, #f1e7d3 100%) !important;
     height: 110px;
     height: 120px;
     display: flex;
     display: flex;
     align-items: center;
     align-items: center;
     justify-content: center;
     justify-content: center;
     padding: 10px;
     padding: 15px;
     border-bottom: 1px solid #b3a07d;
     border-bottom: 1px solid rgba(179, 160, 125, 0.3);
}
}
.tile-top.tile-image img {
.tile-top.tile-image img {
     max-width: 100%;
     max-width: 80px;
     max-height: 100%;
     max-height: 80px;
     object-fit: contain;
     object-fit: contain;
    filter: drop-shadow(0 4px 6px rgba(0,0,0,0.2));
    transition: transform 0.2s ease;
}
.category-card:hover .tile-top.tile-image img {
    transform: scale(1.05);
}
}
.tile-bottom.link-button {
.tile-bottom.link-button {
     background-color: #fcf6e8 !important;
     background: #fcf6e8 !important;
     padding: 8px 6px;
     padding: 12px 10px;
     text-align: center;
     text-align: center;
     font-size: 0.9em;
     font-size: 1em;
     flex-grow: 1;
     flex-grow: 1;
}
}
.tile-bottom.link-button a {
.tile-bottom.link-button a {
     color: #611313 !important;
     color: #4a3c28 !important;
     font-weight: bold;
     font-weight: bold;
     text-decoration: none !important;
     text-decoration: none !important;
     display: block;
     display: block;
    transition: color 0.2s ease;
}
.category-card:hover .tile-bottom.link-button a {
    color: #791a1a !important;
}
}
.tile-bottom.link-button a:hover { text-decoration: underline !important; }


.popular-grid {
.popular-grid {
     display: grid;
     display: grid;
     grid-template-columns: repeat(3, 1fr);
     grid-template-columns: repeat(3, 1fr);
     gap: 8px;
     gap: 12px;
     background-color: #f1e7d3;
     margin-bottom: 20px;
     padding: 10px;
     background: none;
     border: 1px solid #b3a07d;
     border: none;
     margin-bottom: 14px;
     padding: 0;
}
}
.link-button.dark-button a {
.link-button.dark-button a {
     display: block;
     display: flex;
     background-color: #5c4e38 !important;
    align-items: center;
     color: #ffffff !important;
    justify-content: center;
     background: linear-gradient(to bottom, #4a3c28, #3b240b) !important;
     color: #f1e7d3 !important;
     font-family: 'Inter', sans-serif;
     font-family: 'Inter', sans-serif;
     font-weight: bold;
     font-weight: 600;
     font-size: 0.85em;
     font-size: 0.9em;
     text-align: center;
     text-align: center;
     padding: 12px 6px;
     padding: 14px 10px;
    border-radius: 6px;
     text-decoration: none !important;
     text-decoration: none !important;
     border: 1px solid #3d3324;
     border: 1px solid #231607;
    box-shadow: 0 4px 6px rgba(0,0,0,0.3), inset 0 1px 1px rgba(255,255,255,0.1);
    transition: all 0.2s ease;
    text-shadow: 0 1px 2px rgba(0,0,0,0.8);
}
.link-button.dark-button a:hover {
    background: linear-gradient(to bottom, #5c4e38, #4a3c28) !important;
    transform: translateY(-2px);
    box-shadow: 0 6px 12px rgba(0,0,0,0.4), 0 0 10px rgba(255, 215, 0, 0.2), inset 0 1px 1px rgba(255,255,255,0.2);
    color: #ffffff !important;
}
}
.link-button.dark-button a:hover { background-color: #6e5e44 !important; }


.skills-grid {
.skills-grid {
     display: grid;
     display: grid;
     grid-template-columns: repeat(3, 1fr);
     grid-template-columns: repeat(3, 1fr);
     background-color: #fcf6e8;
     gap: 12px;
     border: 1px solid #b3a07d;
    margin-bottom: 20px;
     padding: 8px 10px;
     background: none;
     margin-bottom: 14px;
     border: none;
     padding: 0;
}
}
.skill-item {
.skill-item {
     padding: 8px 10px;
    background: #ffffff;
     font-size: 0.85em;
    border-radius: 6px;
     border-bottom: 1px solid #b3a07d;
     padding: 10px 14px;
     border-right: 1px solid #b3a07d;
     font-size: 0.95em;
     box-shadow: 0 2px 6px rgba(61, 43, 31, 0.08);
     border: 1px solid rgba(179, 160, 125, 0.4);
     display: flex;
     display: flex;
     align-items: center;
     align-items: center;
     gap: 8px;
     gap: 12px;
    transition: all 0.2s ease;
}
.skill-item img {
    filter: drop-shadow(0 2px 2px rgba(0,0,0,0.15));
}
}
.skill-item:nth-child(3n) { border-right: none; }
.skill-item a {
.skill-item a {
     color: #4a3c28 !important;
     color: #4a3c28 !important;
     font-weight: bold;
     font-weight: bold;
     text-decoration: none;
     text-decoration: none;
    flex-grow: 1;
}
.skill-item:hover {
    transform: translateX(4px);
    box-shadow: 0 4px 8px rgba(61, 43, 31, 0.15);
    border-color: #b3a07d;
}
.skill-item:hover a {
    color: #791a1a !important;
}
}
.skill-item a:hover { color: #611313 !important; text-decoration: underline; }


.discord-widget, .widget-box {
.discord-widget, .widget-box {
     background-color: #f1e7d3;
     background: linear-gradient(to bottom, #fcf6e8, #f1e7d3);
     border: 1px solid #b3a07d;
    border-radius: 8px;
     margin-bottom: 14px;
    box-shadow: 0 4px 10px rgba(61, 43, 31, 0.15);
     border: 1px solid rgba(179, 160, 125, 0.4);
     margin-bottom: 20px;
    overflow: hidden;
}
}


.discord-widget {
.discord-widget {
     background-color: #3b5580 !important;
     background: linear-gradient(135deg, #3b5580, #263854) !important;
     border: 1px solid #263854 !important;
     border: 1px solid #1c2a3d !important;
     color: #ffffff;
     color: #ffffff;
    box-shadow: 0 6px 15px rgba(28, 42, 61, 0.4);
}
.discord-top {
    padding: 16px 20px;
    position: relative;
    overflow: hidden;
}
}
.discord-title {
.discord-title {
     font-family: 'PT Serif', Georgia, serif;
     font-family: 'Inter', sans-serif;
     font-size: 1.15em;
    font-size: 0.9em;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight: bold;
    color: #94a3b8;
    margin-bottom: 10px;
    border: none;
    padding: 0;
}
.discord-server-name {
     font-size: 1.2em;
     font-weight: bold;
     font-weight: bold;
     border-bottom: 1px solid #526e9c;
     margin-bottom: 4px;
     padding: 10px 14px;
}
.discord-join-text {
    font-size: 0.9em;
     color: #cbd5e1;
}
}
.discord-body { padding: 12px 14px; }
.discord-bottom {  
.discord-body p { margin: 0 0 12px 0; font-size: 0.85em; line-height: 1.5; color: #e2e8f0; }
    background: rgba(0,0,0,0.2);
.discord-btn a {
    padding: 12px 20px;
    display: block;
    font-size: 0.8em;
     background-color: #21324d !important;
    text-transform: uppercase;
     color: #ffffff !important;
     letter-spacing: 0.1em;
     color: #94a3b8;
     text-align: center;
     text-align: center;
     padding: 10px;
     border-top: 1px solid rgba(255,255,255,0.1);
    font-family: 'Inter', sans-serif;
}
    font-weight: bold;
.discord-widget:hover .discord-arrow {
    text-decoration: none !important;
     transform: translateX(4px);
     border: 1px solid #141f30;
    border-radius: 2px;
}
}
.discord-btn a:hover { background-color: #17253a !important; }


.widget-title {
.widget-title {
     font-family: 'PT Serif', Georgia, serif;
     font-family: 'Kingthings Petrock', 'PT Serif', serif;
     font-size: 1.15em;
     font-size: 1.3em;
     font-weight: bold;
     font-weight: normal;
     color: #4a3c28;
     color: #3b240b;
     border-bottom: 1px solid #b3a07d;
     border-bottom: 1px solid rgba(179, 160, 125, 0.4);
     padding: 10px 14px;
     padding: 14px 20px;
    background: rgba(255,255,255,0.4);
}
}
.widget-body {
.widget-body {
     padding: 12px 14px;
     padding: 16px 20px;
     font-size: 0.85em;
     font-size: 0.9em;
    background-color: #fcf6e8;
     line-height: 1.6;
     line-height: 1.6;
    background: none;
}
}
.widget-body p { margin: 0 0 8px 0; }
.widget-body p { margin: 0 0 12px 0; color: #4a3c28; }
.plainlist ul {
.plainlist ul {
     list-style: none;
     list-style: none;
Line 365: Line 483:
}
}
.plainlist li {
.plainlist li {
     margin-bottom: 4px;
     margin-bottom: 8px;
    padding-left: 14px;
    position: relative;
}
}
.plainlist li::before {
.plainlist li::before {
     content: "";
     content: "";
     color: #611313;
     position: absolute;
     margin-right: 6px;
    left: 0;
     font-weight: bold;
    top: 8px;
    width: 6px;
     height: 6px;
     background: #b3a07d;
    border-radius: 50%;
}
}
.plainlist a {
.plainlist a {
Line 377: Line 501:
     font-weight: bold;
     font-weight: bold;
     text-decoration: none;
     text-decoration: none;
    transition: color 0.2s ease;
}
}
.plainlist a:hover { text-decoration: underline; }
.plainlist a:hover {  
 
     color: #a61c1c !important;
@media screen and (max-width: 900px) {
     text-decoration: underline;  
     .updates-row, .categories-grid, .popular-grid, .skills-grid {
        grid-template-columns: 1fr;
     }
    .update-card { border-right: none; border-bottom: 1px solid #b3a07d; }
}
}


Line 403: Line 524:
/* Base inactive tab style */
/* Base inactive tab style */
.vector-menu-tabs .vector-menu-content-list > li {
.vector-menu-tabs .vector-menu-content-list > li {
     background-color: #cfc08d !important; /* OSRS inactive tab beige */
     background-color: transparent !important;  
     border: 1px solid #94866d !important;
     border: none !important;
    border-bottom: none !important;
     margin-right: 0 !important;
    border-radius: 3px 3px 0 0;
     margin-right: 4px !important;
     display: inline-block;
     display: inline-block;
     padding: 0 !important;
     padding: 0 !important;
Line 414: Line 533:
/* Active tab style */
/* Active tab style */
.vector-menu-tabs .vector-menu-content-list > li.selected {
.vector-menu-tabs .vector-menu-content-list > li.selected {
     background-color: #f1e7d3 !important; /* Matches #content parchment */
     background-color: #ffffff !important;  
     border: 3px solid #3d2b1f !important;
     border: none !important;
    border-bottom: none !important;
     position: relative;
     position: relative;
     z-index: 2; /* Sit on top of the content border */
     z-index: 2;  
     margin-bottom: -3px; /* Pull it down over the content border */
     margin-bottom: 0;  
}
}


/* Tab link text */
/* Tab link text */
.vector-menu-tabs .vector-menu-content-list > li > a {
.vector-menu-tabs .vector-menu-content-list > li > a {
     color: #4a3c28 !important;
     color: #794900 !important;
     padding: 10px 12px 6px 12px !important;
     padding: 10px 14px !important;
     font-family: 'PT Serif', Georgia, serif;
     font-family: 'Museo Sans', 'PT Serif', sans-serif;
     font-weight: bold;
     font-weight: normal;
     font-size: 0.9em;
     font-size: 0.95em;
     background: transparent !important;
     background: transparent !important;
    height: 40px !important;
    box-sizing: border-box !important;
    display: flex !important;
    align-items: center !important;
}
}


/* Active tab text */
/* Active tab text */
.vector-menu-tabs .vector-menu-content-list > li.selected > a {
.vector-menu-tabs .vector-menu-content-list > li.selected > a {
     color: #000000 !important;
     color: #3b240b !important;
     padding-bottom: 9px !important; /* Extra padding to cover the gap */
}
 
/* --- Right Navigation (Read, Edit, History) Overrides --- */
/* In OSRS, the right tabs are just text links, not white boxes */
#p-views .vector-menu-content-list > li.selected {
     background-color: transparent !important;
    margin-bottom: 0 !important;
    z-index: 2 !important;
}
#p-views .vector-menu-content-list > li.selected > a {
    color: #794900 !important;
}
}


Line 491: Line 623:
}
}


/* Re-apply the specific tab backgrounds we WANT */
/* Hide the Read tab to match OSRS */
.vector-menu-tabs .vector-menu-content-list > li {
#ca-view {
    background-color: #cfc08d !important; /* Inactive tab */
     display: none !important;
}
.vector-menu-tabs .vector-menu-content-list > li.selected {
     background-color: #f1e7d3 !important; /* Active tab */
}
}


Line 512: Line 641:
     color: #4a3c28 !important;
     color: #4a3c28 !important;
     font-weight: bold;
     font-weight: bold;
}
/* --- 11. Cut-off Background & Attach Welcome Box --- */
/* Change body background to repeat-x (horizontal only) so it cuts off,
  and use a solid color for the rest of the page behind the content */
body {
    background-image: none !important;
    background-color: #e1d5be !important; /* Or #e1d5be if they want tan canvas */
}
/* Remove the top padding from #content ONLY on the Main Page so the
  Welcome box slides up and attaches perfectly to the top border */
.page-Main_Page #content {
    padding-top: 0 !important;
}
/* The Welcome Box and Stats Box touch the top border */
.page-Main_Page .mainpage-header {
    margin-top: 0;
}
}
/* --- 12. Remove Vector Text Shadows --- */
/* --- 12. Remove Vector Text Shadows --- */
Line 554: Line 665:
     padding-left: 14px !important;
     padding-left: 14px !important;
     padding-right: 14px !important;
     padding-right: 14px !important;
}
/* --- 14. Logo Subtext --- */
/* Inject text under the logo */
#p-logo::after {
    content: "The Winds of Valen Wiki";
    display: block;
    text-align: center;
    font-family: 'Kingthings Petrock', 'PT Serif', Georgia, serif; /* Using the custom OSRS font! */
    font-size: 1.3em;
    font-weight: normal;
    color: #f1e7d3; /* Parchment color */
    text-shadow: 2px 2px 3px #000000, -1px -1px 2px #000000; /* Strong dark outline to make it readable over backgrounds */
    position: relative;
    top: -35px; /* Pull it up into the logo bounding box so it sits right under the image */
    line-height: 1.2;
    z-index: 10;
}
/* Push the sidebar navigation down slightly to make room for the new text */
#p-navigation {
    margin-top: 10px !important;
}
}
/* --- 15. VisualEditor Toolbar Fixes --- */
/* --- 15. VisualEditor Toolbar Fixes --- */
Line 619: Line 709:
     margin-top: 48px !important; /* Push it down below the beige header bar */
     margin-top: 48px !important; /* Push it down below the beige header bar */
}
}


/* ==========================================================================
/* ==========================================================================
   CLEAN LAYOUT SYSTEM - Rebuilt from scratch to match OSRS Wiki
   BODY & BACKGROUND
    
   ========================================================================== */
  Vector Legacy DOM order:
body {
    #mw-page-base  (empty div, used for background)
    background: #e1d5be;
    #mw-head-base  (empty div, hide it)
    background-image: none;
    #content      (article body)
}
    #mw-navigation
      #mw-head    (tab bar, search, personal tools)
      #mw-panel    (sidebar + logo)


   Goal: banner spans top 160px, sidebar/logo overlaps banner from left,
/* ==========================================================================
        tabs sit at bottom of banner and latch onto content box border,
   LOGO TEXT (sidebar, below logo icon)
        content starts at 160px.
   ========================================================================== */
   ========================================================================== */
 
#p-logo::after {
/* --- Body: solid beige canvas, no image --- */
    content: "The Winds of Valen Wiki";
body {
    display: block;
     background: #e1d5be !important;
    text-align: center;
     background-image: none !important;
    font-family: 'Kingthings Petrock', 'PT Serif', Georgia, serif;
    font-size: 1.1em;
    font-weight: normal;
    color: #f1e7d3;
    text-shadow: 2px 2px 4px #000000, -1px -1px 2px #000000;
    line-height: 1.2;
     padding: 0 6px;
     margin-top: 2px;
}
}


/* --- mw-page-base: this is the banner. Vector Legacy already positions it absolute. --- */
/* ==========================================================================
  BANNER
  #mw-page-base is already position:absolute in Vector Legacy skin.
  We use it as the full-width banner container.
  ========================================================================== */
#mw-page-base {
#mw-page-base {
     position: absolute !important;
     position: absolute !important;
Line 650: Line 748:
     width: 100% !important;
     width: 100% !important;
     height: 160px !important;
     height: 160px !important;
    background: url('/resources/assets/mystical_header.png') center top no-repeat !important;
     background-image: none !important;
     background-size: 100% 160px !important;
     background-color: transparent !important;
     background-color: transparent !important;
     z-index: 0 !important;
     z-index: 0 !important;
Line 657: Line 754:
}
}


/* --- mw-head-base: hide the legacy gradient overlay --- */
/* Hide the redundant head-base gradient overlay */
#mw-head-base {
#mw-head-base {
     display: none !important;
     display: none !important;
Line 663: Line 760:


/* ==========================================================================
/* ==========================================================================
   DESKTOP LAYOUT  (>= 1000px wide)
   DESKTOP LAYOUT  >= 1000px
   ========================================================================== */
   ========================================================================== */
@media screen and (min-width: 1000px) {
@media screen and (min-width: 1000px) {


     /* --- mw-head: the tab bar row ---
     /* Tab bar row: sits at the bottom of the 160px banner */
      Banner = 160px. Tab bar is ~40px tall.
      Position it at top: 120px so tabs sit at the bottom of the banner. */
     #mw-head {
     #mw-head {
         position: absolute !important;
         position: absolute !important;
Line 682: Line 777:
     }
     }


     /* --- Beige bar that runs behind the tabs --- */
     /* Beige bar behind the tabs */
     #mw-head::before {
     #mw-head::before {
         content: "" !important;
         content: "" !important;
Line 696: Line 791:
     }
     }


     /* --- Tab navigation: left side (Main Page, Discussion) --- */
     /* Left nav: Main Page, Discussion tabs */
     #left-navigation {
     #left-navigation {
         position: absolute !important;
         position: absolute !important;
Line 706: Line 801:
     }
     }


     /* --- Tab navigation: right side (Read, Edit, Search) --- */
     /* Right nav: Read, Edit, Search */
     #right-navigation {
     #right-navigation {
         position: absolute !important;
         position: absolute !important;
Line 716: Line 811:
     }
     }


     /* --- Personal tools (Create account / Log in) - top right corner --- */
     /* Personal tools: Create account / Log in ??? top right corner */
     #p-personal {
     #p-personal {
         position: absolute !important;
         position: absolute !important;
         top: -90px !important;
         top: -80px !important;
         right: 10px !important;
         right: 10px !important;
         margin: 0 !important;
         margin: 0 !important;
Line 725: Line 820:
     }
     }
     #p-personal ul {
     #p-personal ul {
         background-color: transparent !important;
         background: rgba(241, 231, 211, 0.95) !important;
         border: none !important;
         border: 1px solid #b3a07d !important;
         padding: 0 !important;
         padding: 6px 12px !important;
        border-radius: 4px;
        box-shadow: 0 2px 4px rgba(0,0,0,0.5);
     }
     }


     /* --- Content box: starts exactly at bottom of banner --- */
     /* Content box: starts at bottom of banner, shifted right of sidebar */
     #content {
     #content {
         position: relative !important;
         position: relative !important;
Line 739: Line 836:
     }
     }


     /* --- Active tab: pulls down 3px to merge with content box top border --- */
     /* Active tab latches onto content box top border (only left tabs) */
     .vector-menu-tabs .vector-menu-content-list > li.selected {
     #left-navigation .vector-menu-tabs .vector-menu-content-list > li.selected {
         margin-bottom: -3px !important;
         margin-bottom: -3px !important;
         z-index: 3 !important;
         z-index: 3 !important;
         position: relative !important;
         position: relative !important;
    }
   
    #right-navigation .vector-menu-tabs .vector-menu-content-list > li.selected {
        margin-bottom: 0 !important;
     }
     }


     /* --- Sidebar panel: sits at top:0 so logo naturally overlaps the banner --- */
     /* Sidebar: starts at top:0 so logo naturally overlaps the banner */
     #mw-panel {
     #mw-panel {
         position: absolute !important;
         position: absolute !important;
Line 754: Line 855:
         padding-top: 0 !important;
         padding-top: 0 !important;
         z-index: 10 !important;
         z-index: 10 !important;
        background: transparent !important;
     }
     }


     /* --- Logo: spans the full banner height (160px) --- */
     /* Logo area: spans full 160px banner height */
     #p-logo {
     #p-logo {
         height: 160px !important;
         height: 160px !important;
         display: flex !important;
         display: block !important;
         align-items: center !important;
         overflow: hidden !important;
        justify-content: center !important;
         padding: 0 !important;
         padding: 0 !important;
         margin: 0 !important;
         margin: 0 !important;
     }
     }
    /* Logo anchor: shows the icon image in top portion, leaves room for text below */
     #p-logo a {
     #p-logo a {
         display: block !important;
         display: block !important;
         width: 100% !important;
         width: 165px !important;
         height: 160px !important;
         height: 110px !important;
         background-position: center center !important;
        background-size: 100px auto !important;
         background-size: contain !important;
         background-position: center 8px !important;
         background-repeat: no-repeat !important;
     }
     }
}
}


/* ==========================================================================
/* ==========================================================================
   MOBILE LAYOUT  (< 1000px wide)
   MOBILE LAYOUT  < 1000px
   ========================================================================== */
   ========================================================================== */
@media screen and (max-width: 999px) {
@media screen and (max-width: 999px) {
     body {
     body {
         background: #e1d5be !important;
         background: #e1d5be !important;
        background-image: none !important;
     }
     }
     #mw-page-base {
     #mw-page-base {
Line 802: Line 907:
     #p-logo {
     #p-logo {
         height: auto !important;
         height: auto !important;
    }
    #p-logo a {
        height: 80px !important;
        background-size: contain !important;
        background-position: center !important;
     }
     }
     .vector-menu-tabs .vector-menu-content-list > li {
     .vector-menu-tabs .vector-menu-content-list > li {
Line 858: Line 968:
.discord-widget-modern:hover .discord-bottom { background-color: #3b45a5; }
.discord-widget-modern:hover .discord-bottom { background-color: #3b45a5; }


/* ==========================================================================
/* Hide Powered by MediaWiki */
  TARGETED FIXES - appended last to win cascade
#footer-poweredbyico { display: none !important; }
  ========================================================================== */


/* 1. Force body to pure beige - override ALL earlier background rules */
/* OSRS Style Wikitables and Infoboxes */
body,
table.infobox, table.wikitable {
html body {
    background-color: #dfd0b6;
     background: #e1d5be !important;
    border: 1px solid #7d6b54;
     background-image: none !important;
    border-collapse: collapse;
     background-color: #e1d5be !important;
    color: #2b2b2b;
}
table.infobox th, table.wikitable th {
    background-color: #cbb493;
    border: 1px solid #7d6b54;
    padding: 6px;
    text-align: center;
}
table.infobox td, table.wikitable td {
    border: 1px solid #7d6b54;
    padding: 6px;
}
table.infobox caption {
     background-color: #cbb493;
    border: 1px solid #7d6b54;
     border-bottom: none;
     padding: 4px;
    font-weight: bold;
}
/* Section Headers */
#content h2 {
    border-bottom: 2px solid #7d6b54;
    font-family: 'PT Serif', Georgia, serif;
    color: #4a3c28;
    margin-top: 1.5em;
    padding-bottom: 2px;
}
#content h3 {
    font-family: 'PT Serif', Georgia, serif;
    color: #4a3c28;
}
}


/* 2. Sidebar navigation link colors - make them visible */
/* --- TOC Styling --- */
#mw-panel a,
#toc, .toc, .mw-parser-output #toc, .mw-parser-output .toc {
#mw-panel .vector-menu-heading-label,
    background-color: #e2d1b4 !important;
.portal h3,
    border: 1px solid #998363 !important;
.mw-portlet h3 {
    padding: 2px !important;
    display: inline-block;
    color: #2b2b2b;
    border-radius: 0;
    margin-bottom: 15px;
}
#toc .toctitle, .toc .toctitle, #toc h2, .toc h2 {
    background-color: #c7b08d !important;
    border-bottom: none !important;
    text-align: center;
    font-family: 'PT Serif', serif !important;
    font-size: 1.1em !important;
    font-weight: bold !important;
    margin: 0 !important;
    padding: 6px 15px !important;
     color: #4a3c28 !important;
     color: #4a3c28 !important;
}
#toc ul, .toc ul {
    list-style-type: none !important;
    padding: 10px 15px !important;
    margin: 0 !important;
    background-color: #e2d1b4 !important;
}
#toc ul ul, .toc ul ul {
    padding-left: 1.5em !important;
    border-left: 1px dotted #a08c6c;
    margin-left: 5px !important;
    padding-top: 5px;
    padding-bottom: 5px;
}
#toc li, .toc li {
    margin-bottom: 4px !important;
    font-size: 0.95em;
    line-height: 1.4;
}
#toc a, .toc a {
    color: #5a3c21 !important;
    text-decoration: none !important;
}
#toc a:hover, .toc a:hover {
    text-decoration: underline !important;
}
/* --- Popups (PagePreviews) Styling --- */
.mwe-popups {
    background-color: transparent !important;
    border: none !important;
    box-shadow: 0 4px 10px rgba(0,0,0,0.6) !important;
}
.mwe-popups .mwe-popups-container {
    background-color: #e2d1b4 !important;
    border: 1px solid #7d6b54 !important;
    border-radius: 4px !important;
    overflow: hidden !important;
}
.mwe-popups .mwe-popups-extract {
    color: #2b2b2b !important;
    font-family: 'Museo Sans', sans-serif !important;
    padding: 15px !important;
    font-size: 0.95em !important;
}
.mwe-popups.mwe-popups-is-tall .mwe-popups-extract {
    padding-top: 10px !important;
}
.mwe-popups .mwe-popups-settings-icon {
    opacity: 0.7 !important;
}
.mwe-popups .mwe-popups-settings-icon:hover {
    opacity: 1 !important;
}
.mwe-popups .mwe-popups-extract::after {
    background-image: linear-gradient(to right, rgba(226, 209, 180, 0), #e2d1b4 50%) !important;
}
.mwe-popups .mwe-popups-extract[dir='ltr']::after {
    background-image: linear-gradient(to right, rgba(226, 209, 180, 0), #e2d1b4 50%) !important;
}
svg.mwe-popups-settings-icon path {
    fill: #2b2b2b !important;
}
/* Discord Widget Clickable Overlay */
.discord-widget {
    position: relative;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.discord-widget:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(28, 42, 61, 0.6);
}
.discord-widget .external {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    z-index: 10;
}
.discord-click-target {
    display: block;
    width: 100%;
    height: 100%;
}
/* Fantasy UI Infobox */
.infobox-fantasy {
    width: 320px;
    float: right;
    clear: right;
    margin-left: 1em;
    margin-bottom: 1em;
    padding: 30px 25px 25px 25px;
    background-image: url('/images/1/13/T_FantasyWarrior_Box_Parchment01.png');
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: center;
    color: #332717;
    font-size: 90%;
    font-family: 'Museo Sans', sans-serif;
    box-sizing: border-box;
    filter: drop-shadow(0 4px 6px rgba(0,0,0,0.3));
}
.infobox-fantasy-header {
    background-image: url('/images/2/24/T_FantasyWarrior_Bar_Horizontal03.png');
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: center;
    color: #fff;
    text-align: center;
    font-family: 'Kingthings Petrock', serif;
    font-size: 150%;
    padding: 12px 10px;
    margin-bottom: 15px;
    margin-top: -10px;
    text-shadow: 1px 1px 2px #000;
}
.infobox-fantasy table {
    width: 100%;
    border-collapse: collapse;
}
.infobox-fantasy th, .infobox-fantasy td {
    padding: 6px 4px;
    border-bottom: 1px solid rgba(125, 107, 84, 0.4);
}
.infobox-fantasy tr:last-child th, .infobox-fantasy tr:last-child td {
    border-bottom: none;
}
.infobox-fantasy th {
    text-align: left;
    font-weight: bold;
    width: 60%;
}
.infobox-fantasy td {
    text-align: right;
}
.stat-icon {
    display: inline-block;
    vertical-align: middle;
    margin-right: 6px;
    width: 22px;
    height: 22px;
}
.quest-details-fantasy {
    background-image: url('/images/f/f2/T_HUD_FantasyWarrior_Box_Large_Parchment01.png');
    background-size: 100% 100%;
    background-repeat: no-repeat;
    padding: 30px;
    margin-bottom: 20px;
    font-family: 'Museo Sans', sans-serif;
    color: #332717;
    filter: drop-shadow(0 4px 6px rgba(0,0,0,0.3));
}
}


/* 3. Logo text: reposition for new 160px tall logo area
.quest-details-fantasy-header {
  Logo icon occupies roughly the top 110px, text goes below it */
    background-image: url('/images/2/24/T_FantasyWarrior_Bar_Horizontal03.png');
#p-logo::after {
    background-size: 100% 100%;
     position: relative !important;
     background-repeat: no-repeat;
     top: auto !important;
     background-position: center;
     display: block !important;
     color: #fff;
     text-align: center !important;
     text-align: center;
    margin-top: -10px !important;
     font-family: 'Kingthings Petrock', serif;
     font-family: 'Kingthings Petrock', 'PT Serif', Georgia, serif !important;
     font-size: 150%;
     font-size: 1.1em !important;
    padding: 12px 10px;
     color: #f1e7d3 !important;
    margin-top: -10px;
     text-shadow: 2px 2px 4px #000, -1px -1px 2px #000 !important;
     margin-bottom: 20px;
     line-height: 1.2 !important;
     text-shadow: 1px 1px 2px #000;
     z-index: 10 !important;
    width: 50%;
    margin-left: auto;
    margin-right: auto;
}
 
 
/* Fix Watch Tab Text Overlap */
#ca-watch a, #ca-unwatch a {
    width: 30px !important;
    padding: 0 !important;
     justify-content: center !important;
}
#ca-watch a span, #ca-unwatch a span {
     display: none !important;
}
}


/* 4. Make sure the logo link fills the full banner height */
/* Fix Personal Tools Position and Overlap */
#p-logo a {
#p-personal {
     display: flex !important;
     position: absolute !important;
     flex-direction: column !important;
     top: -50px !important;
     align-items: center !important;
     right: 10px !important;
     justify-content: flex-start !important;
     z-index: 200 !important;
     height: 160px !important;
     margin: 0 !important;
     background-position: center 10px !important;
}
    background-size: 120px auto !important;
@media screen and (max-width: 1000px) {
    padding-top: 0 !important;
     #p-personal {
        top: -15px !important;
        right: 0 !important;
        transform: scale(0.85);
        transform-origin: top right;
    }
}
}
/* Forced refresh 2 */

Latest revision as of 19:41, 15 July 2026

/* ==========================================================================
   OSRS EXACT REPLICA DESIGN SYSTEM
   ========================================================================== */

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

/* --- 1. Custom Fonts --- */
@font-face {
    font-family: 'Kingthings Petrock';
    src: url('/resources/assets/fonts/Kingthings_Petrock.woff2') format('woff2');
}
@font-face {
    font-family: 'League Spartan';
    src: url('/resources/assets/fonts/LeagueSpartan-Bold.woff2') format('woff2');
}
@font-face {
    font-family: 'Museo Sans';
    src: url('/resources/assets/fonts/MuseoSans-500.woff2') format('woff2');
}
@font-face {
    font-family: 'RuneScape Chat';
    src: url('/resources/assets/fonts/RuneScape-Chat.woff2') format('woff2');
}

/* --- 2. Base Body Override --- */
body {
    background-image: none !important;
    background-color: #e1d5be !important;
    font-family: 'Museo Sans', 'PT Serif', Georgia, serif;
}

/* --- 3. Content Parchment Container --- */
#content {
    background: url('/resources/assets/background_parchment.png') repeat #f1e7d3 !important;
    border: 3px solid #3d2b1f !important;
    border-radius: 4px;
    margin-top: 15px;
}

#mw-content-text {
    background-color: transparent !important;
}

/* --- 4. Header Styling --- */
h1, h2, h3, h4, h5, h6 {
    font-family: 'Kingthings Petrock', serif;
    color: #4a3c28;
    border-bottom: 1px solid #b3a07d; /* Gold trim */
}

/* --- 5. Hide Foreground Logo (Use Background Instead) --- */
#p-logo a {
    height: 140px !important;
}

/* --- 6. Main Page Layout Tweaks --- */
.page-Main_Page #firstHeading,
.page-Main_Page .mw-first-heading {
    display: none !important;
}

/* Give all page titles some breathing room from the top border */
.firstHeading {
    padding-top: 15px !important;
}
.page-Main_Page .mw-body-content {
    padding-top: 0 !important;
}

/* --- 7. Margin Collapse Fix --- */
.mw-parser-output .column-grid > * {
    margin-top: 0;
}
.mw-parser-output .column-grid > *:last-child {
    margin-bottom: 0;
}

/* --- 8. Reader Mode --- */
body.reader-mode-active #mw-panel,
body.reader-mode-active #mw-head {
    display: none;
}
body.reader-mode-active #content {
    margin-left: auto;
    margin-right: auto;
    max-width: 960px;
    padding: 40px;
}

/* ==========================================================================
   OSRS NATIVE DOM ARCHITECTURE (Main Page Layout Engine)
   ========================================================================== */


.mainpage-container {
    max-width: 100%;
    color: #4a3c28;
    box-sizing: border-box;
    font-family: 'PT Serif', Georgia, serif;
}

.mainpage-layout {
    display: grid;
    grid-template-columns: 1fr 300px;
    gap: 20px;
    align-items: start;
}

@media screen and (max-width: 900px) {
    .mainpage-layout {
        grid-template-columns: 1fr;
    }
}

.mainpage-header {
    display: flex;
    gap: 20px;
    margin-bottom: 20px;
}

.header-intro {
    flex: 1;
    background: url('/resources/assets/welcomeimage.jpg') center center no-repeat !important;
    background-size: cover !important;
    border-radius: 8px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.4);
    padding: 30px;
    text-align: center;
    position: relative;
    z-index: 1;
    overflow: hidden;
}
.header-intro::before {
    content: "";
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    background: linear-gradient(135deg, rgba(20, 15, 10, 0.8) 0%, rgba(40, 25, 15, 0.6) 100%);
    z-index: -1;
}
.header-title {
    font-size: 1.8em;
    font-weight: bold;
    color: #ffd700;
    text-shadow: 0 2px 8px rgba(0,0,0,0.9), 0 0 15px rgba(255, 215, 0, 0.3);
    margin-bottom: 12px;
    line-height: 1.2;
}
.header-intro p {
    font-size: 1.05em;
    color: #f1e7d3;
    text-shadow: 0 1px 4px rgba(0,0,0,0.8);
    margin: 0;
}
.header-intro p a {
    color: #7dd3fc !important;
    font-weight: bold !important;
    text-decoration: none !important;
    transition: all 0.2s ease;
}
.header-intro p a:hover {
    color: #bae6fd !important;
    text-shadow: 0 0 8px rgba(125, 211, 252, 0.6);
}

.header-stats {
    width: 300px;
    flex-shrink: 0;
    background: linear-gradient(to bottom, #fcf6e8, #f1e7d3) !important;
    border-radius: 8px;
    box-shadow: 0 4px 10px rgba(61, 43, 31, 0.15);
    border: 1px solid rgba(179, 160, 125, 0.4);
    padding: 20px 25px;
    box-sizing: border-box;
}
.header-stats ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
.header-stats li {
    display: flex;
    justify-content: space-between;
    margin-bottom: 8px;
    font-size: 0.95em;
    border-bottom: 1px dashed rgba(179, 160, 125, 0.6);
    padding-bottom: 8px;
}
.header-stats li:last-child {
    margin-bottom: 0;
    border-bottom: none;
    padding-bottom: 0;
}
.header-stats b {
    color: #611313;
    text-shadow: 0 1px 1px rgba(255, 255, 255, 0.5);
}

@media screen and (max-width: 900px) {
    .mainpage-header { flex-direction: column; }
    .header-stats { width: 100%; }
}

.section-title {
    font-family: 'Kingthings Petrock', 'PT Serif', serif;
    font-size: 1.6em;
    font-weight: normal;
    color: #3b240b;
    text-align: center;
    padding: 0 0 10px 0;
    margin: 30px 0 20px 0;
    position: relative;
    background: none;
    border-bottom: none;
}
.section-title::after {
    content: "";
    display: block;
    width: 150px;
    height: 3px;
    background: linear-gradient(90deg, transparent, #b3a07d, transparent);
    margin: 8px auto 0 auto;
}

.tile-row {
    display: grid;
    gap: 16px;
    margin-bottom: 20px;
}
.updates-row {
    grid-template-columns: 1fr 1fr;
    background: none;
    border: none;
}
.categories-grid {
    grid-template-columns: repeat(4, 1fr);
    background: none;
    border: none;
    padding: 0;
}

.update-card {
    background: linear-gradient(145deg, #ffffff, #fcf6e8);
    border-radius: 8px;
    padding: 20px;
    box-shadow: 0 4px 12px rgba(61, 43, 31, 0.1);
    border: 1px solid rgba(179, 160, 125, 0.3);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.update-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 16px rgba(61, 43, 31, 0.15);
}
.update-header {
    font-family: 'Inter', sans-serif;
    font-size: 0.75em;
    font-weight: 700;
    text-transform: uppercase;
    color: #8c7657;
    letter-spacing: 0.05em;
    margin-bottom: 8px;
}
.update-title {
    font-size: 1.1em;
    font-weight: bold;
    margin-bottom: 10px;
    line-height: 1.3;
}
.update-title a {
    color: #791a1a !important;
    text-decoration: none;
    transition: color 0.2s ease;
}
.update-title a:hover { 
    color: #a61c1c !important;
    text-decoration: none;
}
.update-card p {
    font-size: 0.9em;
    color: #4a3c28;
    line-height: 1.5;
    margin: 0;
}

.category-card {
    background: #ffffff;
    border-radius: 8px;
    overflow: hidden;
    box-shadow: 0 4px 10px rgba(61, 43, 31, 0.1);
    border: 1px solid rgba(179, 160, 125, 0.3);
    transition: all 0.2s ease;
    display: flex;
    flex-direction: column;
}
.category-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 10px 20px rgba(61, 43, 31, 0.15), 0 0 15px rgba(255, 215, 0, 0.15);
    border-color: #b3a07d;
}
.tile-top.tile-image {
    background: radial-gradient(circle, #ffffff 0%, #f1e7d3 100%) !important;
    height: 120px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 15px;
    border-bottom: 1px solid rgba(179, 160, 125, 0.3);
}
.tile-top.tile-image img {
    max-width: 80px;
    max-height: 80px;
    object-fit: contain;
    filter: drop-shadow(0 4px 6px rgba(0,0,0,0.2));
    transition: transform 0.2s ease;
}
.category-card:hover .tile-top.tile-image img {
    transform: scale(1.05);
}
.tile-bottom.link-button {
    background: #fcf6e8 !important;
    padding: 12px 10px;
    text-align: center;
    font-size: 1em;
    flex-grow: 1;
}
.tile-bottom.link-button a {
    color: #4a3c28 !important;
    font-weight: bold;
    text-decoration: none !important;
    display: block;
    transition: color 0.2s ease;
}
.category-card:hover .tile-bottom.link-button a {
    color: #791a1a !important;
}

.popular-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    margin-bottom: 20px;
    background: none;
    border: none;
    padding: 0;
}
.link-button.dark-button a {
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(to bottom, #4a3c28, #3b240b) !important;
    color: #f1e7d3 !important;
    font-family: 'Inter', sans-serif;
    font-weight: 600;
    font-size: 0.9em;
    text-align: center;
    padding: 14px 10px;
    border-radius: 6px;
    text-decoration: none !important;
    border: 1px solid #231607;
    box-shadow: 0 4px 6px rgba(0,0,0,0.3), inset 0 1px 1px rgba(255,255,255,0.1);
    transition: all 0.2s ease;
    text-shadow: 0 1px 2px rgba(0,0,0,0.8);
}
.link-button.dark-button a:hover { 
    background: linear-gradient(to bottom, #5c4e38, #4a3c28) !important;
    transform: translateY(-2px);
    box-shadow: 0 6px 12px rgba(0,0,0,0.4), 0 0 10px rgba(255, 215, 0, 0.2), inset 0 1px 1px rgba(255,255,255,0.2);
    color: #ffffff !important;
}

.skills-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    margin-bottom: 20px;
    background: none;
    border: none;
    padding: 0;
}
.skill-item {
    background: #ffffff;
    border-radius: 6px;
    padding: 10px 14px;
    font-size: 0.95em;
    box-shadow: 0 2px 6px rgba(61, 43, 31, 0.08);
    border: 1px solid rgba(179, 160, 125, 0.4);
    display: flex;
    align-items: center;
    gap: 12px;
    transition: all 0.2s ease;
}
.skill-item img {
    filter: drop-shadow(0 2px 2px rgba(0,0,0,0.15));
}
.skill-item a {
    color: #4a3c28 !important;
    font-weight: bold;
    text-decoration: none;
    flex-grow: 1;
}
.skill-item:hover { 
    transform: translateX(4px);
    box-shadow: 0 4px 8px rgba(61, 43, 31, 0.15);
    border-color: #b3a07d;
}
.skill-item:hover a {
    color: #791a1a !important;
}

.discord-widget, .widget-box {
    background: linear-gradient(to bottom, #fcf6e8, #f1e7d3);
    border-radius: 8px;
    box-shadow: 0 4px 10px rgba(61, 43, 31, 0.15);
    border: 1px solid rgba(179, 160, 125, 0.4);
    margin-bottom: 20px;
    overflow: hidden;
}

.discord-widget {
    background: linear-gradient(135deg, #3b5580, #263854) !important;
    border: 1px solid #1c2a3d !important;
    color: #ffffff;
    box-shadow: 0 6px 15px rgba(28, 42, 61, 0.4);
}
.discord-top {
    padding: 16px 20px;
    position: relative;
    overflow: hidden;
}
.discord-title {
    font-family: 'Inter', sans-serif;
    font-size: 0.9em;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight: bold;
    color: #94a3b8;
    margin-bottom: 10px;
    border: none;
    padding: 0;
}
.discord-server-name {
    font-size: 1.2em;
    font-weight: bold;
    margin-bottom: 4px;
}
.discord-join-text {
    font-size: 0.9em;
    color: #cbd5e1;
}
.discord-bottom { 
    background: rgba(0,0,0,0.2);
    padding: 12px 20px;
    font-size: 0.8em;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: #94a3b8;
    text-align: center;
    border-top: 1px solid rgba(255,255,255,0.1);
}
.discord-widget:hover .discord-arrow {
    transform: translateX(4px);
}

.widget-title {
    font-family: 'Kingthings Petrock', 'PT Serif', serif;
    font-size: 1.3em;
    font-weight: normal;
    color: #3b240b;
    border-bottom: 1px solid rgba(179, 160, 125, 0.4);
    padding: 14px 20px;
    background: rgba(255,255,255,0.4);
}
.widget-body {
    padding: 16px 20px;
    font-size: 0.9em;
    line-height: 1.6;
    background: none;
}
.widget-body p { margin: 0 0 12px 0; color: #4a3c28; }
.plainlist ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
.plainlist li {
    margin-bottom: 8px;
    padding-left: 14px;
    position: relative;
}
.plainlist li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 8px;
    width: 6px;
    height: 6px;
    background: #b3a07d;
    border-radius: 50%;
}
.plainlist a {
    color: #611313 !important;
    font-weight: bold;
    text-decoration: none;
    transition: color 0.2s ease;
}
.plainlist a:hover { 
    color: #a61c1c !important;
    text-decoration: underline; 
}

/* Responsive adjustments for legacy vector */
@media screen and (max-width: 980px) {
    #content { margin: 10px; border-width: 2px; }
}
/* --- 9. Vector Legacy Tabs Styling --- */
/* Remove default Vector tab backgrounds */
.vector-menu-tabs, 
.vector-menu-tabs a, 
.vector-menu-tabs li,
#p-views,
#p-cactions {
    background-image: none !important;
}

/* Base inactive tab style */
.vector-menu-tabs .vector-menu-content-list > li {
    background-color: transparent !important; 
    border: none !important;
    margin-right: 0 !important;
    display: inline-block;
    padding: 0 !important;
}

/* Active tab style */
.vector-menu-tabs .vector-menu-content-list > li.selected {
    background-color: #ffffff !important; 
    border: none !important;
    position: relative;
    z-index: 2; 
    margin-bottom: 0; 
}

/* Tab link text */
.vector-menu-tabs .vector-menu-content-list > li > a {
    color: #794900 !important;
    padding: 10px 14px !important;
    font-family: 'Museo Sans', 'PT Serif', sans-serif;
    font-weight: normal;
    font-size: 0.95em;
    background: transparent !important;
    height: 40px !important;
    box-sizing: border-box !important;
    display: flex !important;
    align-items: center !important;
}

/* Active tab text */
.vector-menu-tabs .vector-menu-content-list > li.selected > a {
    color: #3b240b !important;
}

/* --- Right Navigation (Read, Edit, History) Overrides --- */
/* In OSRS, the right tabs are just text links, not white boxes */
#p-views .vector-menu-content-list > li.selected {
    background-color: transparent !important;
    margin-bottom: 0 !important;
    z-index: 2 !important;
}
#p-views .vector-menu-content-list > li.selected > a {
    color: #794900 !important;
}

/* Remove the top margin on content so tabs touch the border */
#content {
    margin-top: 0 !important;
}

/* Push the whole header/navigation block down so it doesn't overlap the logo */
#mw-head {
    top: 15px !important;
}

/* Style the Search Box to match OSRS */
#p-search {
    margin-top: 4px !important;
    margin-left: 10px !important;
}
#simpleSearch {
    background-color: #efeee6 !important;
    border: 1px solid #94866d !important;
}
/* --- 10. OSRS Full-Width Header Bar --- */
/* Create the continuous beige bar behind the tabs */
#mw-head::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 170px; /* Starts just right of the logo */
    right: 0;
    height: 38px; /* Matches tab height */
    background-color: #d8ccb4; /* Darker parchment */
    border-top: 1px solid #94866d;
    z-index: 0;
}

/* Ensure navigation sits on top of the pseudo-element bar */
#left-navigation, 
#right-navigation {
    position: relative;
    z-index: 1;
}

/* Force transparency on all Vector legacy header backgrounds so the beige bar shows through */
#mw-head-base,
.vector-menu-tabs,
.vector-menu-tabs ul,
.vector-menu-tabs li,
#p-views,
#p-cactions,
#p-search,
#p-personal {
    background-image: none !important;
    background-color: transparent !important;
}

/* Hide the Read tab to match OSRS */
#ca-view {
    display: none !important;
}

/* Personal tools (top right: Create account, Log in) */
#p-personal {
    top: -20px !important; /* Push it up into the mushroom background */
}
#p-personal ul {
    background-color: rgba(241, 231, 211, 0.85); /* Semi-transparent parchment */
    padding: 4px 10px;
    border-radius: 4px;
    border: 1px solid #b3a07d;
}
#p-personal li a {
    color: #4a3c28 !important;
    font-weight: bold;
}
/* --- 12. Remove Vector Text Shadows --- */
/* Legacy Vector adds text-shadows to tabs and personal tools which look like a bad "backstroke" with our new dark text colors */
.vector-menu-tabs .vector-menu-content-list > li > a,
#p-personal li a,
.vector-menu-tabs li a {
    text-shadow: none !important;
}
/* --- 13. Header Bar Padding & Overlap Fixes --- */
/* Increase the height of the beige bar so it has more padding and fully encompasses the tabs and search bar */
#mw-head::before {
    height: 46px !important; 
}

/* Push the search bar down slightly so it's vertically centered in the taller beige bar */
#p-search {
    margin-top: 8px !important; 
    margin-right: 15px !important; /* Give it some breathing room on the right */
}

/* Ensure the tabs have a little extra padding inside so they don't look cramped */
.vector-menu-tabs .vector-menu-content-list > li > a {
    padding-left: 14px !important;
    padding-right: 14px !important;
}
/* --- 15. VisualEditor Toolbar Fixes --- */
/* Prevent the VE toolbar from overlapping the beige header bar by enforcing z-indexes */
#mw-head {
    position: absolute;
    z-index: 100 !important;
}
#mw-head::before {
    z-index: 0 !important;
}
#left-navigation, #right-navigation {
    z-index: 2 !important;
}

/* Style the VisualEditor toolbar to match the OSRS parchment theme */
.ve-init-mw-desktopArticleTarget-toolbar,
.oo-ui-toolbar-bar,
.oo-ui-toolbar {
    background-color: #f1e7d3 !important;
    border-bottom: 2px solid #b3a07d !important;
    border-top: none !important;
    z-index: 90 !important; /* Ensure it tucks UNDER the header tabs/bar if it tries to overlap */
}

/* Add the dark brown top border specifically to the VE toolbar so tabs have something to sit on */
.ve-init-mw-desktopArticleTarget-toolbar {
    border-top: 3px solid #3d2b1f !important;
}

/* Ensure dropdowns and menus in VE are also parchment colored */
.oo-ui-popupWidget-popup, 
.oo-ui-menuSelectWidget {
    background-color: #fcf6e8 !important;
    border: 1px solid #b3a07d !important;
}
/* --- 16. Push VisualEditor Down --- */
/* Remove the z-index that hid the toolbar, and physically push it down so the buttons are visible */
#mw-head {
    z-index: auto !important;
}
.ve-init-mw-desktopArticleTarget-toolbar {
    z-index: 10 !important;
    margin-top: 48px !important; /* Push it down below the beige header bar */
}


/* ==========================================================================
   BODY & BACKGROUND
   ========================================================================== */
body {
    background: #e1d5be;
    background-image: none;
}

/* ==========================================================================
   LOGO TEXT (sidebar, below logo icon)
   ========================================================================== */
#p-logo::after {
    content: "The Winds of Valen Wiki";
    display: block;
    text-align: center;
    font-family: 'Kingthings Petrock', 'PT Serif', Georgia, serif;
    font-size: 1.1em;
    font-weight: normal;
    color: #f1e7d3;
    text-shadow: 2px 2px 4px #000000, -1px -1px 2px #000000;
    line-height: 1.2;
    padding: 0 6px;
    margin-top: 2px;
}

/* ==========================================================================
   BANNER
   #mw-page-base is already position:absolute in Vector Legacy skin.
   We use it as the full-width banner container.
   ========================================================================== */
#mw-page-base {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    height: 160px !important;
    background-image: none !important;
    background-color: transparent !important;
    z-index: 0 !important;
    display: block !important;
}

/* Hide the redundant head-base gradient overlay */
#mw-head-base {
    display: none !important;
}

/* ==========================================================================
   DESKTOP LAYOUT  >= 1000px
   ========================================================================== */
@media screen and (min-width: 1000px) {

    /* Tab bar row: sits at the bottom of the 160px banner */
    #mw-head {
        position: absolute !important;
        top: 120px !important;
        left: 0 !important;
        right: 0 !important;
        height: 40px !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        z-index: 50 !important;
    }

    /* Beige bar behind the tabs */
    #mw-head::before {
        content: "" !important;
        display: block !important;
        position: absolute !important;
        bottom: 0 !important;
        left: 165px !important;
        right: 0 !important;
        height: 40px !important;
        background-color: #d8ccb4 !important;
        border-top: 2px solid #3d2b1f !important;
        z-index: 0 !important;
    }

    /* Left nav: Main Page, Discussion tabs */
    #left-navigation {
        position: absolute !important;
        bottom: 0 !important;
        left: 165px !important;
        margin: 0 !important;
        float: none !important;
        z-index: 2 !important;
    }

    /* Right nav: Read, Edit, Search */
    #right-navigation {
        position: absolute !important;
        bottom: 0 !important;
        right: 0 !important;
        margin: 0 !important;
        float: none !important;
        z-index: 2 !important;
    }

    /* Personal tools: Create account / Log in ??? top right corner */
    #p-personal {
        position: absolute !important;
        top: -80px !important;
        right: 10px !important;
        margin: 0 !important;
        z-index: 200 !important;
    }
    #p-personal ul {
        background: rgba(241, 231, 211, 0.95) !important;
        border: 1px solid #b3a07d !important;
        padding: 6px 12px !important;
        border-radius: 4px;
        box-shadow: 0 2px 4px rgba(0,0,0,0.5);
    }

    /* Content box: starts at bottom of banner, shifted right of sidebar */
    #content {
        position: relative !important;
        z-index: 1 !important;
        margin-top: 160px !important;
        margin-left: 165px !important;
        padding-top: 0 !important;
    }

    /* Active tab latches onto content box top border (only left tabs) */
    #left-navigation .vector-menu-tabs .vector-menu-content-list > li.selected {
        margin-bottom: -3px !important;
        z-index: 3 !important;
        position: relative !important;
    }
    
    #right-navigation .vector-menu-tabs .vector-menu-content-list > li.selected {
        margin-bottom: 0 !important;
    }

    /* Sidebar: starts at top:0 so logo naturally overlaps the banner */
    #mw-panel {
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        width: 165px !important;
        padding-top: 0 !important;
        z-index: 10 !important;
        background: transparent !important;
    }

    /* Logo area: spans full 160px banner height */
    #p-logo {
        height: 160px !important;
        display: block !important;
        overflow: hidden !important;
        padding: 0 !important;
        margin: 0 !important;
    }

    /* Logo anchor: shows the icon image in top portion, leaves room for text below */
    #p-logo a {
        display: block !important;
        width: 165px !important;
        height: 110px !important;
        background-size: 100px auto !important;
        background-position: center 8px !important;
        background-repeat: no-repeat !important;
    }
}

/* ==========================================================================
   MOBILE LAYOUT  < 1000px
   ========================================================================== */
@media screen and (max-width: 999px) {
    body {
        background: #e1d5be !important;
        background-image: none !important;
    }
    #mw-page-base {
        display: none !important;
    }
    #content {
        margin-top: 20px !important;
        margin-left: 10px !important;
        margin-right: 10px !important;
        padding-top: 10px !important;
    }
    #mw-head {
        position: static !important;
        top: auto !important;
    }
    #mw-head::before {
        display: none !important;
    }
    #mw-panel {
        position: static !important;
    }
    #p-logo {
        height: auto !important;
    }
    #p-logo a {
        height: 80px !important;
        background-size: contain !important;
        background-position: center !important;
    }
    .vector-menu-tabs .vector-menu-content-list > li {
        margin-bottom: 2px !important;
    }
}

/* ==========================================================================
   SIDEBAR PORTAL BACKGROUNDS
   ========================================================================== */
div.vector-menu-portal,
#mw-panel div.portal,
.portal,
.mw-portlet {
    background-image: none !important;
    background-color: transparent !important;
}

/* ==========================================================================
   DISCORD WIDGET
   ========================================================================== */
.discord-widget-modern {
    position: relative;
    background-color: #5865F2;
    border-radius: 4px;
    overflow: hidden;
    font-family: 'Inter', sans-serif;
    color: #ffffff;
    margin-bottom: 20px;
    transition: background-color 0.2s ease;
}
.discord-widget-modern a {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    z-index: 10;
    text-decoration: none !important;
}
.discord-click-target { display: block; width: 100%; height: 100%; }
.discord-top { padding: 16px 20px; display: flex; align-items: center; }
.discord-icon {
    width: 45px; height: 35px;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 127.14 96.36" fill="%23ffffff"><path d="M107.7,8.07A105.15,105.15,0,0,0,81.47,0a72.06,72.06,0,0,0-3.36,6.83A97.68,97.68,0,0,0,49,6.83,72.37,72.37,0,0,0,45.64,0,105.89,105.89,0,0,0,19.39,8.09C2.79,32.65-1.71,56.6.54,80.21h0A105.73,105.73,0,0,0,32.71,96.36,77.7,77.7,0,0,0,39.6,85.25a68.42,68.42,0,0,1-10.85-5.18c.91-.66,1.8-1.34,2.66-2a75.57,75.57,0,0,0,64.32,0c.87.71,1.76,1.39,2.66,2a68.68,68.68,0,0,1-10.87,5.19,77,77,0,0,0,6.89,11.1,105.25,105.25,0,0,0,32.19-16.14c0,0,.04-.06.05-.09,2.7-27.14-2.88-51.52-19-72.06ZM42.45,65.69C36.18,65.69,31,60,31,53s5-12.74,11.43-12.74S54,46,53.89,53,48.84,65.69,42.45,65.69Zm42.24,0C78.41,65.69,73.31,60,73.31,53s5-12.74,11.43-12.74S96.2,46,96.09,53,91.04,65.69,84.69,65.69Z"/></svg>');
    background-size: contain; background-repeat: no-repeat; background-position: center;
    margin-right: 15px;
}
.discord-text { flex-grow: 1; }
.discord-server-name { font-weight: 800; font-size: 17px; margin-bottom: 2px; }
.discord-join-text { font-size: 14px; }
.discord-arrow { font-size: 28px; font-weight: bold; margin-left: 10px; line-height: 1; }
.discord-bottom {
    background-color: #4752C4; padding: 10px; text-align: center;
    font-size: 12px; font-weight: 800; letter-spacing: 0.5px;
    transition: background-color 0.2s ease;
}
.discord-widget-modern:hover { background-color: #4752C4; cursor: pointer; }
.discord-widget-modern:hover .discord-bottom { background-color: #3b45a5; }

/* Hide Powered by MediaWiki */
#footer-poweredbyico { display: none !important; }

/* OSRS Style Wikitables and Infoboxes */
table.infobox, table.wikitable {
    background-color: #dfd0b6;
    border: 1px solid #7d6b54;
    border-collapse: collapse;
    color: #2b2b2b;
}
table.infobox th, table.wikitable th {
    background-color: #cbb493;
    border: 1px solid #7d6b54;
    padding: 6px;
    text-align: center;
}
table.infobox td, table.wikitable td {
    border: 1px solid #7d6b54;
    padding: 6px;
}
table.infobox caption {
    background-color: #cbb493;
    border: 1px solid #7d6b54;
    border-bottom: none;
    padding: 4px;
    font-weight: bold;
}
/* Section Headers */
#content h2 {
    border-bottom: 2px solid #7d6b54;
    font-family: 'PT Serif', Georgia, serif;
    color: #4a3c28;
    margin-top: 1.5em;
    padding-bottom: 2px;
}
#content h3 {
    font-family: 'PT Serif', Georgia, serif;
    color: #4a3c28;
}

/* --- TOC Styling --- */
#toc, .toc, .mw-parser-output #toc, .mw-parser-output .toc {
    background-color: #e2d1b4 !important;
    border: 1px solid #998363 !important;
    padding: 2px !important;
    display: inline-block;
    color: #2b2b2b;
    border-radius: 0;
    margin-bottom: 15px;
}
#toc .toctitle, .toc .toctitle, #toc h2, .toc h2 {
    background-color: #c7b08d !important;
    border-bottom: none !important;
    text-align: center;
    font-family: 'PT Serif', serif !important;
    font-size: 1.1em !important;
    font-weight: bold !important;
    margin: 0 !important;
    padding: 6px 15px !important;
    color: #4a3c28 !important;
}
#toc ul, .toc ul {
    list-style-type: none !important;
    padding: 10px 15px !important;
    margin: 0 !important;
    background-color: #e2d1b4 !important;
}
#toc ul ul, .toc ul ul {
    padding-left: 1.5em !important; 
    border-left: 1px dotted #a08c6c;
    margin-left: 5px !important;
    padding-top: 5px;
    padding-bottom: 5px;
}
#toc li, .toc li {
    margin-bottom: 4px !important;
    font-size: 0.95em;
    line-height: 1.4;
}
#toc a, .toc a {
    color: #5a3c21 !important;
    text-decoration: none !important;
}
#toc a:hover, .toc a:hover {
    text-decoration: underline !important;
}

/* --- Popups (PagePreviews) Styling --- */
.mwe-popups {
    background-color: transparent !important;
    border: none !important;
    box-shadow: 0 4px 10px rgba(0,0,0,0.6) !important;
}
.mwe-popups .mwe-popups-container {
    background-color: #e2d1b4 !important;
    border: 1px solid #7d6b54 !important;
    border-radius: 4px !important;
    overflow: hidden !important;
}
.mwe-popups .mwe-popups-extract {
    color: #2b2b2b !important;
    font-family: 'Museo Sans', sans-serif !important;
    padding: 15px !important;
    font-size: 0.95em !important;
}
.mwe-popups.mwe-popups-is-tall .mwe-popups-extract {
    padding-top: 10px !important;
}
.mwe-popups .mwe-popups-settings-icon {
    opacity: 0.7 !important;
}
.mwe-popups .mwe-popups-settings-icon:hover {
    opacity: 1 !important;
}
.mwe-popups .mwe-popups-extract::after {
    background-image: linear-gradient(to right, rgba(226, 209, 180, 0), #e2d1b4 50%) !important;
}
.mwe-popups .mwe-popups-extract[dir='ltr']::after {
    background-image: linear-gradient(to right, rgba(226, 209, 180, 0), #e2d1b4 50%) !important;
}
svg.mwe-popups-settings-icon path {
    fill: #2b2b2b !important;
}

/* Discord Widget Clickable Overlay */
.discord-widget {
    position: relative;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.discord-widget:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(28, 42, 61, 0.6);
}
.discord-widget .external {
    position: absolute;
    top: 0; left: 0; right: 0; bottom: 0;
    z-index: 10;
}
.discord-click-target {
    display: block;
    width: 100%;
    height: 100%;
}
/* Fantasy UI Infobox */
.infobox-fantasy {
    width: 320px;
    float: right;
    clear: right;
    margin-left: 1em;
    margin-bottom: 1em;
    padding: 30px 25px 25px 25px;
    background-image: url('/images/1/13/T_FantasyWarrior_Box_Parchment01.png');
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: center;
    color: #332717;
    font-size: 90%;
    font-family: 'Museo Sans', sans-serif;
    box-sizing: border-box;
    filter: drop-shadow(0 4px 6px rgba(0,0,0,0.3));
}

.infobox-fantasy-header {
    background-image: url('/images/2/24/T_FantasyWarrior_Bar_Horizontal03.png');
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: center;
    color: #fff;
    text-align: center;
    font-family: 'Kingthings Petrock', serif;
    font-size: 150%;
    padding: 12px 10px;
    margin-bottom: 15px;
    margin-top: -10px;
    text-shadow: 1px 1px 2px #000;
}

.infobox-fantasy table {
    width: 100%;
    border-collapse: collapse;
}

.infobox-fantasy th, .infobox-fantasy td {
    padding: 6px 4px;
    border-bottom: 1px solid rgba(125, 107, 84, 0.4);
}

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

.infobox-fantasy th {
    text-align: left;
    font-weight: bold;
    width: 60%;
}

.infobox-fantasy td {
    text-align: right;
}

.stat-icon {
    display: inline-block;
    vertical-align: middle;
    margin-right: 6px;
    width: 22px;
    height: 22px;
}
.quest-details-fantasy {
    background-image: url('/images/f/f2/T_HUD_FantasyWarrior_Box_Large_Parchment01.png');
    background-size: 100% 100%;
    background-repeat: no-repeat;
    padding: 30px;
    margin-bottom: 20px;
    font-family: 'Museo Sans', sans-serif;
    color: #332717;
    filter: drop-shadow(0 4px 6px rgba(0,0,0,0.3));
}

.quest-details-fantasy-header {
    background-image: url('/images/2/24/T_FantasyWarrior_Bar_Horizontal03.png');
    background-size: 100% 100%;
    background-repeat: no-repeat;
    background-position: center;
    color: #fff;
    text-align: center;
    font-family: 'Kingthings Petrock', serif;
    font-size: 150%;
    padding: 12px 10px;
    margin-top: -10px;
    margin-bottom: 20px;
    text-shadow: 1px 1px 2px #000;
    width: 50%;
    margin-left: auto;
    margin-right: auto;
}


/* Fix Watch Tab Text Overlap */
#ca-watch a, #ca-unwatch a {
    width: 30px !important;
    padding: 0 !important;
    justify-content: center !important;
}
#ca-watch a span, #ca-unwatch a span {
    display: none !important;
}

/* Fix Personal Tools Position and Overlap */
#p-personal {
    position: absolute !important;
    top: -50px !important;
    right: 10px !important;
    z-index: 200 !important;
    margin: 0 !important;
}
@media screen and (max-width: 1000px) {
    #p-personal {
        top: -15px !important;
        right: 0 !important;
        transform: scale(0.85);
        transform-origin: top right;
    }
}


/* Forced refresh 2 */