Pivot.css: Difference between revisions
From Dune Awakening DB
mNo edit summary |
mNo edit summary Tag: Reverted |
||
| Line 1: | Line 1: | ||
/********************************************************** | /********************************************************** | ||
* Dune-Themed Pivot Skin ( | * Dune-Themed Pivot Skin (Consolidated CSS) | ||
**********************************************************/ | **********************************************************/ | ||
/* 1) RESET | /*-------------------------------------------------------------- | ||
# 1. CSS VARIABLES | |||
--------------------------------------------------------------*/ | |||
:root { | |||
/* Primary colors */ | |||
--dune-black: #000002; | |||
--dune-dark: #1A232F; | |||
--dune-darker: #0f1419; | |||
--dune-graphite: #161618; | |||
--dune-gold: #C47F3A; | |||
--dune-gold-hover: #E28D4F; | |||
--dune-text: #E0E0E0; | |||
--dune-title: #E2D3AE; | |||
/* Opacity variations */ | |||
--dune-dark-transparent: rgba(15, 20, 25, 0.9); | |||
--dune-darker-transparent: rgba(15, 20, 25, 0.6); | |||
--dune-gold-transparent: rgba(196, 127, 58, 0.4); | |||
--dune-gold-glow: rgba(196, 127, 58, 0.2); | |||
--dune-gold-intense-glow: rgba(226, 141, 79, 0.4); | |||
/* Spacing */ | |||
--spacing-xs: 4px; | |||
--spacing-sm: 8px; | |||
--spacing-md: 12px; | |||
--spacing-lg: 16px; | |||
--spacing-xl: 20px; | |||
/* Borders */ | |||
--border-thin: 1px; | |||
--border-medium: 2px; | |||
--border-radius-sm: 3px; | |||
--border-radius-md: 4px; | |||
--border-radius-lg: 6px; | |||
/* Shadows */ | |||
--shadow-subtle: 0 0 8px rgba(0, 0, 0, 0.3); | |||
--shadow-medium: 0 0 10px rgba(0, 0, 0, 0.5); | |||
--shadow-gold: 0 0 15px rgba(196, 127, 58, 0.2); | |||
--shadow-gold-intense: 0 0 20px rgba(226, 141, 79, 0.4); | |||
/* Typography */ | |||
--font-stack: "Orbitron", "Segoe UI", sans-serif; | |||
--font-size-xs: 0.75em; | |||
--font-size-sm: 0.85em; | |||
--font-size-md: 1em; | |||
--font-size-lg: 1.2em; | |||
--font-size-xl: 1.4em; | |||
--font-size-xxl: 1.6em; | |||
/* Transitions */ | |||
--transition-standard: all 0.2s ease; | |||
} | |||
/*-------------------------------------------------------------- | |||
# 2. GLOBAL RESET & BODY | |||
--------------------------------------------------------------*/ | |||
html, body { | html, body { | ||
margin: 0; | margin: 0; | ||
| Line 12: | Line 67: | ||
} | } | ||
body.skin-pivot { | body.skin-pivot { | ||
background: url('https://dunedb.com/images/5/57/DuneDB_Background.jpg') no-repeat center center fixed; | background: url('https://dunedb.com/images/5/57/DuneDB_Background.jpg') no-repeat center center fixed; | ||
background-size: cover; | background-size: cover; | ||
background-attachment: fixed; | background-attachment: fixed; | ||
color: | color: var(--dune-text); | ||
font-family: | font-family: var(--font-stack); | ||
line-height: 1.35; | |||
font-size: 15px; | |||
} | } | ||
/* 3 | /*-------------------------------------------------------------- | ||
# 3. MAIN CONTAINERS & TRANSPARENCY | |||
--------------------------------------------------------------*/ | |||
/* Transparent main containers */ | |||
.skin-pivot #content, | .skin-pivot #content, | ||
.skin-pivot .mw-body, | .skin-pivot .mw-body, | ||
| Line 28: | Line 86: | ||
.skin-pivot .mw-content-rtl { | .skin-pivot .mw-content-rtl { | ||
background: transparent; | background: transparent; | ||
padding: | padding: var(--spacing-lg); | ||
border-radius: | border-radius: var(--border-radius-lg); | ||
margin: 0; | margin: 0; | ||
} | } | ||
/* | /* Force major wrappers to be transparent */ | ||
.skin-pivot .off-canvas-wrap, | .skin-pivot .off-canvas-wrap, | ||
.skin-pivot .docs-wrap, | .skin-pivot .docs-wrap, | ||
| Line 47: | Line 105: | ||
background: transparent !important; | background: transparent !important; | ||
border: none !important; | border: none !important; | ||
overflow: visible !important; | |||
} | } | ||
/* | /* Footer, catlinks, printfooter: also transparent */ | ||
.skin-pivot footer, | .skin-pivot footer, | ||
.skin-pivot .footer, | .skin-pivot .footer, | ||
| Line 62: | Line 121: | ||
background: transparent !important; | background: transparent !important; | ||
border: none !important; | border: none !important; | ||
color: | color: var(--dune-text) !important; | ||
} | } | ||
/** | /* Fix for MediaWiki scrollbars */ | ||
.mw-body-content, | |||
.skin-pivot .mw-body, | |||
.skin-pivot #content, | |||
.skin-pivot #mw-content-text { | |||
overflow: visible !important; | |||
} | |||
/*-------------------------------------------------------------- | |||
# 4. NAVIGATION & HEADINGS | |||
--------------------------------------------------------------*/ | |||
/* Navbars */ | /* Navbars */ | ||
.skin-pivot .navbar, | .skin-pivot .navbar, | ||
.skin-pivot .navbar-default, | .skin-pivot .navbar-default, | ||
.skin-pivot .navbar-inverse { | .skin-pivot .navbar-inverse { | ||
background: | background: var(--dune-dark-transparent) !important; | ||
border: none !important; | border: none !important; | ||
color: | color: var(--dune-text) !important; | ||
} | } | ||
.skin-pivot .navbar-nav > li > a, | .skin-pivot .navbar-nav > li > a, | ||
.skin-pivot .dropdown-menu > li > a { | .skin-pivot .dropdown-menu > li > a { | ||
color: | color: var(--dune-gold) !important; | ||
font-weight: bold !important; | font-weight: bold !important; | ||
text-decoration: none; | text-decoration: none; | ||
} | } | ||
.skin-pivot .navbar-nav > li > a:hover, | .skin-pivot .navbar-nav > li > a:hover, | ||
.skin-pivot .dropdown-menu > li > a:hover { | .skin-pivot .dropdown-menu > li > a:hover { | ||
color: | color: var(--dune-gold-hover) !important; | ||
text-decoration: underline; | text-decoration: underline; | ||
} | } | ||
| Line 95: | Line 163: | ||
.skin-pivot .list-group, | .skin-pivot .list-group, | ||
.skin-pivot .list-group-item { | .skin-pivot .list-group-item { | ||
background: | background: var(--dune-dark-transparent); | ||
border: none; | border: none; | ||
color: | color: var(--dune-text); | ||
} | } | ||
.skin-pivot .list-group-item:hover { | .skin-pivot .list-group-item:hover { | ||
background-color: | background-color: var(--dune-dark); | ||
} | } | ||
| Line 110: | Line 179: | ||
background-color: transparent; | background-color: transparent; | ||
border: none; | border: none; | ||
color: | color: var(--dune-title); | ||
margin: 10px 0 5px; | margin: 10px 0 5px; | ||
font-weight: bold; | font-weight: bold; | ||
| Line 123: | Line 192: | ||
.skin-pivot h5, | .skin-pivot h5, | ||
.skin-pivot h6 { | .skin-pivot h6 { | ||
color: | color: var(--dune-title); | ||
font-weight: bold; | font-weight: bold; | ||
margin-top: 1em; | margin-top: 1em; | ||
| Line 131: | Line 200: | ||
padding-bottom: 5px; | padding-bottom: 5px; | ||
} | } | ||
.skin-pivot h1, | .skin-pivot h1, | ||
.skin-pivot h3 { | .skin-pivot h3 { | ||
border-bottom: | border-bottom: var(--border-medium) solid rgba(255, 255, 255, 0.2); | ||
} | |||
/* Main headings and first heading */ | |||
.skin-pivot h1.firstHeading, | |||
.skin-pivot .page-header h1 { | |||
color: var(--dune-title); | |||
font-size: var(--font-size-xxl); | |||
font-weight: bold; | |||
margin: 0 0 10px 0; | |||
padding-bottom: 5px; | |||
border-bottom: var(--border-medium) solid var(--dune-gold-transparent); | |||
text-transform: uppercase; | |||
} | } | ||
/* Links site-wide */ | /* Links site-wide */ | ||
.skin-pivot a { | .skin-pivot a { | ||
color: | color: var(--dune-gold); | ||
text-decoration: none; | text-decoration: none; | ||
font-weight: bold; | font-weight: bold; | ||
transition: var(--transition-standard); | |||
} | } | ||
.skin-pivot a:hover { | .skin-pivot a:hover { | ||
color: | color: var(--dune-gold-hover); | ||
text-decoration: underline; | text-decoration: underline; | ||
} | } | ||
.skin-pivot a.new, | .skin-pivot a.new, | ||
.skin-pivot a.new:visited { | .skin-pivot a.new:visited { | ||
| Line 151: | Line 236: | ||
text-decoration: underline; | text-decoration: underline; | ||
} | } | ||
.skin-pivot a.new:hover { | .skin-pivot a.new:hover { | ||
color: #DD0000 !important; | color: #DD0000 !important; | ||
} | } | ||
/**** | /* Journey link text */ | ||
.skin-pivot a[href*="Journey"] { | |||
color: var(--dune-gold-hover) !important; | |||
text-decoration: none !important; | |||
font-weight: bold !important; | |||
transition: text-shadow 0.2s ease !important; | |||
display: inline-block !important; | |||
margin: 0 auto !important; | |||
} | |||
/*-------------------------------------------------------------- | |||
# 5. PIVOT NAV OVERRIDES | |||
--------------------------------------------------------------*/ | |||
.skin-pivot nav.tab-bar.hide-for-print { | .skin-pivot nav.tab-bar.hide-for-print { | ||
background: | background: var(--dune-dark-transparent); | ||
border: none; | border: none; | ||
color: | color: var(--dune-text); | ||
padding: 0.5em; | padding: 0.5em; | ||
} | } | ||
.skin-pivot nav.tab-bar.hide-for-print a { | .skin-pivot nav.tab-bar.hide-for-print a { | ||
color: | color: var(--dune-gold); | ||
font-weight: bold; | font-weight: bold; | ||
} | } | ||
.skin-pivot nav.tab-bar.hide-for-print a:hover { | .skin-pivot nav.tab-bar.hide-for-print a:hover { | ||
color: | color: var(--dune-gold-hover); | ||
text-decoration: underline; | text-decoration: underline; | ||
} | } | ||
.skin-pivot nav.tab-bar.hide-for-print .title a { | .skin-pivot nav.tab-bar.hide-for-print .title a { | ||
color: | color: var(--dune-title); | ||
font-size: | font-size: var(--font-size-lg); | ||
text-transform: uppercase; | text-transform: uppercase; | ||
} | } | ||
.skin-pivot #left-nav-aside, | .skin-pivot #left-nav-aside, | ||
.skin-pivot #middle-nav, | .skin-pivot #middle-nav, | ||
.skin-pivot #right-nav-aside { | .skin-pivot #right-nav-aside { | ||
background-color: transparent; | background-color: transparent; | ||
color: | color: var(--dune-text); | ||
} | } | ||
.skin-pivot li.name.logo img { | .skin-pivot li.name.logo img { | ||
max-width: 100%; | max-width: 100%; | ||
| Line 189: | Line 290: | ||
vertical-align: middle; | vertical-align: middle; | ||
} | } | ||
.skin-pivot li.has-form input[type="search"] { | .skin-pivot li.has-form input[type="search"] { | ||
background: rgba(30, 40, 50, 0.8); | background: rgba(30, 40, 50, 0.8); | ||
color: | color: var(--dune-text); | ||
border: | border: var(--border-thin) solid var(--dune-gold); | ||
padding: 0.5em; | padding: 0.5em; | ||
width: 100%; | width: 100%; | ||
} | } | ||
.skin-pivot li.has-form input[type="search"]::placeholder { | .skin-pivot li.has-form input[type="search"]::placeholder { | ||
color: #C9B795; | color: #C9B795; | ||
} | } | ||
.skin-pivot label.sidebar { | .skin-pivot label.sidebar { | ||
background-color: transparent; | background-color: transparent; | ||
color: | color: var(--dune-title); | ||
font-weight: bold; | font-weight: bold; | ||
text-transform: uppercase; | text-transform: uppercase; | ||
padding: 0.5em 0; | padding: 0.5em 0; | ||
display: block; | display: block; | ||
border-bottom: | border-bottom: var(--border-medium) solid rgba(255, 255, 255, 0.2); | ||
margin-bottom: 0.5em; | margin-bottom: 0.5em; | ||
} | } | ||
.skin-pivot li.mw-list-item a { | .skin-pivot li.mw-list-item a { | ||
color: | color: var(--dune-gold); | ||
font-weight: bold; | font-weight: bold; | ||
text-decoration: none; | text-decoration: none; | ||
| Line 216: | Line 321: | ||
padding: 0.25em 0; | padding: 0.25em 0; | ||
} | } | ||
.skin-pivot li.mw-list-item a:hover { | .skin-pivot li.mw-list-item a:hover { | ||
color: | color: var(--dune-gold-hover); | ||
text-decoration: underline; | text-decoration: underline; | ||
} | } | ||
/* | /*-------------------------------------------------------------- | ||
# 6. SIDEBAR/HIDING TOOLS | |||
--------------------------------------------------------------*/ | |||
html body.skin-pivot #p-tb, | html body.skin-pivot #p-tb, | ||
html body.skin-pivot #p-tb + ul, | html body.skin-pivot #p-tb + ul, | ||
| Line 231: | Line 337: | ||
} | } | ||
/* | /*-------------------------------------------------------------- | ||
# 7. RESPONSIVE LAYOUT | |||
--------------------------------------------------------------*/ | |||
.responsive-container { | |||
. | display: flex; | ||
flex-wrap: wrap; | |||
gap: 1.5em !important; | |||
width: 100% | align-items: stretch; | ||
width: 100%; | |||
margin: 1em 0; | |||
box-sizing: border-box; | |||
} | } | ||
. | |||
.responsive-col { | |||
display: flex; | |||
flex-direction: column; | |||
box-sizing: border-box; | |||
width: 100%; | |||
min-width: 350px; | |||
} | } | ||
@media screen and (min-width: 700px) { | |||
.responsive-col { | |||
width: calc(50% - 0.75em) !important; | |||
} | |||
} | } | ||
@media screen and (min-width: 1100px) { | |||
.responsive-col { | |||
width: calc(33.333% - 1em) !important; | |||
} | |||
} | } | ||
.responsive-col .skin-pivot:last-child { | |||
flex: 1 1 auto; | |||
display: flex; | |||
flex-direction: column; | |||
} | } | ||
.responsive-col .skin-pivot:last-child .dune-card { | |||
flex: 1 1 auto; | |||
display: flex; | |||
flex-direction: column; | |||
} | |||
/* | /*-------------------------------------------------------------- | ||
# 8. TABLES (CONSOLIDATED) | |||
--------------------------------------------------------------*/ | |||
/* Base table styles */ | |||
.skin-pivot table.infobox-dune, | .skin-pivot table.infobox-dune, | ||
.skin-pivot .dune- | .skin-pivot .game-table { | ||
. | width: 100% !important; | ||
background- | border-collapse: separate !important; | ||
border-spacing: 0 !important; | |||
margin-bottom: var(--spacing-xl) !important; | |||
table-layout: auto !important; | |||
background-color: var(--dune-black) !important; | |||
border: var(--border-thin) solid #3a3a3a !important; | |||
box-shadow: | |||
0 0 0 1px #3a3a3a, | |||
0 0 0 2px var(--dune-black), | |||
0 0 0 3px var(--dune-gold), | |||
0 0 15px var(--dune-gold-glow) !important; | |||
border-radius: var(--border-radius-md) !important; | |||
background-image: | |||
linear-gradient(rgba(20, 30, 40, 0.1) 1px, transparent 1px), | |||
linear-gradient(90deg, rgba(20, 30, 40, 0.1) 1px, transparent 1px) !important; | |||
background-size: 20px 20px !important; | |||
background-position: -1px -1px !important; | |||
transition: box-shadow 0.3s ease; | |||
} | |||
/* Table hover effect */ | |||
.skin-pivot table.infobox-dune:hover, | |||
.skin-pivot .game-table:hover { | |||
box-shadow: | box-shadow: | ||
0 0 0 1px #3a3a3a, | 0 0 0 1px #3a3a3a, | ||
0 0 0 2px | 0 0 0 2px var(--dune-black), | ||
0 0 0 3px | 0 0 0 3px var(--dune-gold-hover), | ||
0 0 | 0 0 20px var(--dune-gold-intense-glow) !important; | ||
} | |||
border- | |||
/* Table headers */ | |||
.skin-pivot table.infobox-dune th, | |||
.skin-pivot .game-table th { | |||
background: linear-gradient(to bottom, #1A1A1A, #101010) !important; | |||
color: var(--dune-title) !important; | |||
padding: var(--spacing-sm) var(--spacing-md) !important; | |||
text-align: left !important; | |||
font-size: var(--font-size-sm) !important; | |||
text-transform: uppercase !important; | |||
letter-spacing: 0.5px !important; | |||
border-bottom: var(--border-thin) solid var(--dune-gold) !important; | |||
text-shadow: 0 0 5px rgba(226, 141, 79, 0.5) !important; | |||
vertical-align: middle !important; | |||
} | } | ||
/* | /* Table cells */ | ||
.skin-pivot . | .skin-pivot table.infobox-dune td, | ||
.skin-pivot .game-table td { | |||
.skin-pivot | background-color: var(--dune-graphite) !important; | ||
color: var(--dune-title) !important; | |||
border: var(--border-thin) solid #333 !important; | |||
padding: var(--spacing-sm) var(--spacing-md) !important; | |||
vertical-align: middle !important; | |||
line-height: 1.4 !important; | |||
word-wrap: break-word !important; | |||
overflow-wrap: break-word !important; | |||
max-width: 500px !important; | |||
height: | |||
} | } | ||
/* | /* Alternating row colors */ | ||
.skin-pivot . | .skin-pivot .game-table tr:nth-child(even) td { | ||
background-color: rgba(15, 20, 25, 0.4) !important; | |||
} | } | ||
/* | /* Last row no bottom border */ | ||
.skin-pivot . | .skin-pivot .game-table tr:last-child td { | ||
border-bottom: none !important; | |||
border- | |||
} | } | ||
/* | /* Strong text in tables */ | ||
.skin-pivot . | .skin-pivot table.infobox-dune td strong, | ||
.skin-pivot | .skin-pivot .game-table td strong { | ||
color: var(--dune-gold-hover) !important; | |||
text-shadow: 0 0 3px rgba(226, 141, 79, 0.3) !important; | |||
font-weight: bold !important; | |||
} | } | ||
/* Table with icons in first column */ | |||
.skin-pivot . | .skin-pivot table.infobox-dune tr th:first-child { | ||
position: relative !important; | |||
padding-left: 32px !important; | |||
position: | |||
} | } | ||
.skin-pivot . | .skin-pivot table.infobox-dune tr th .icon { | ||
position: absolute !important; | |||
left: var(--spacing-sm) !important; | |||
top: 50% !important; | |||
transform: translateY(-50%) !important; | |||
font-size: 18px !important; | |||
} | } | ||
.skin-pivot . | /* Table container with horizontal scroll when needed */ | ||
.skin-pivot .game-table-container { | |||
width: 100%; | |||
overflow-x: auto; | |||
overflow-y: visible; | |||
margin-bottom: var(--spacing-md); | |||
} | } | ||
/* | /* Two-Column Table (special case) */ | ||
.skin-pivot table.two-column-table { | |||
background-color: var(--dune-dark) !important; | |||
border: none !important; | |||
.skin-pivot table. | width: 100% !important; | ||
table-layout: fixed; | |||
background-color: | |||
} | } | ||
.skin-pivot table.two-column-table th, | |||
.skin-pivot . | .skin-pivot table.two-column-table td { | ||
background-color: var(--dune-dark) !important; | |||
.skin-pivot . | border: none !important; | ||
vertical-align: top; | |||
} | } | ||
.skin-pivot table.two-column-table > tbody > tr > td:first-child { | |||
.skin-pivot table. | border-right: var(--border-medium) solid rgba(255, 255, 255, 0.2) !important; | ||
} | } | ||
@media only screen and (max-width: 600px) { | |||
.skin-pivot . | .skin-pivot table.two-column-table > tbody > tr { | ||
display: flex; | |||
flex-direction: column; | |||
} | |||
.skin-pivot table.two-column-table > tbody > tr > td { | |||
width: 100%; | |||
border: none !important; | |||
} | |||
} | } | ||
/*-------------------------------------------------------------- | |||
# 9. DUNE CARD COMPONENT (CONSOLIDATED) | |||
--------------------------------------------------------------*/ | |||
.skin-pivot .dune-card { | .skin-pivot .dune-card { | ||
overflow: visible; | position: relative; | ||
background-color: var(--dune-black) !important; | |||
color: var(--dune-title); | |||
width: auto !important; | |||
max-width: 100% !important; | |||
padding: var(--spacing-lg) !important; | |||
margin: 0 0 var(--spacing-xl) 0 !important; | |||
border: var(--border-thin) solid #3a3a3a !important; | |||
border-radius: var(--border-radius-md) !important; | |||
box-shadow: | |||
0 0 0 1px #3a3a3a, | |||
0 0 0 2px var(--dune-black), | |||
0 0 0 3px var(--dune-gold), | |||
0 0 15px var(--dune-gold-glow) !important; | |||
background-image: | |||
linear-gradient(rgba(20, 30, 40, 0.1) 1px, transparent 1px), | |||
linear-gradient(90deg, rgba(20, 30, 40, 0.1) 1px, transparent 1px) !important; | |||
background-size: 20px 20px !important; | |||
background-position: -1px -1px !important; | |||
transition: box-shadow 0.3s ease; | |||
overflow: visible !important; | |||
} | } | ||
/* Dune Card hover effect */ | |||
.skin-pivot .dune-card:hover { | |||
box-shadow: | |||
0 0 0 1px #3a3a3a, | |||
0 0 0 2px var(--dune-black), | |||
0 0 0 3px var(--dune-gold-hover), | |||
0 0 20px var(--dune-gold-intense-glow) !important; | |||
} | |||
/* Decorative corner elements (unified styling) */ | |||
.skin-pivot .dune-card::before, | .skin-pivot .dune-card::before, | ||
.skin-pivot .dune-card::after { | .skin-pivot .dune-card::after { | ||
| Line 420: | Line 561: | ||
width: 20px; | width: 20px; | ||
height: 20px; | height: 20px; | ||
border: | border: var(--border-medium) solid var(--dune-gold); | ||
z-index: 1; | z-index: 1; | ||
} | } | ||
| Line 438: | Line 579: | ||
} | } | ||
/* | /* Card decoration placeholder (to maintain compatibility) */ | ||
.skin-pivot .dune-card-decoration { | |||
display: none; | |||
.skin-pivot .dune-card | |||
} | } | ||
/* | /* Card inner content */ | ||
.skin-pivot | .skin-pivot .dune-card-inner { | ||
.dune-card-inner { | |||
position: relative; | position: relative; | ||
z-index: 1; | z-index: 1; | ||
} | } | ||
.dune-card-label { | |||
/* Card label */ | |||
.skin-pivot .dune-card-label { | |||
color: #b6a896; | color: #b6a896; | ||
font-size: | font-size: var(--font-size-xs); | ||
text-transform: uppercase; | text-transform: uppercase; | ||
margin-bottom: | margin-bottom: var(--spacing-xs); | ||
border-bottom: | border-bottom: var(--border-thin) solid #444; | ||
padding-bottom: | padding-bottom: var(--spacing-xs); | ||
} | } | ||
.dune-card-title { | |||
/* Card title */ | |||
.skin-pivot .dune-card-title { | |||
margin: 0; | margin: 0; | ||
font-size: | font-size: var(--font-size-xl); | ||
color: | color: var(--dune-title); | ||
text-transform: uppercase; | text-transform: uppercase; | ||
border-bottom: | border-bottom: var(--border-thin) solid #444; | ||
padding-bottom: | padding-bottom: var(--spacing-xs); | ||
margin-bottom: | margin-bottom: var(--spacing-sm); | ||
position: relative; | |||
} | } | ||
.dune-card-description { | |||
font-size: | /* Card description */ | ||
.skin-pivot .dune-card-description { | |||
font-size: var(--font-size-md); | |||
line-height: 1.4; | line-height: 1.4; | ||
background-color: var(--dune-graphite) !important; | |||
border-radius: var(--border-radius-md); | |||
border: var(--border-thin) solid #444; | |||
padding: var(--spacing-md); | |||
margin-bottom: var(--spacing-md); | |||
display: block !important; | |||
color: var(--dune-title) !important; | |||
} | |||
/* Card image */ | |||
.skin-pivot .dune-card-image { | |||
text-align: center; | |||
margin: var(--spacing-sm) 0; | |||
} | |||
/* Card video */ | |||
.skin-pivot .dune-card-video { | |||
margin: var(--spacing-sm) 0; | |||
border: var(--border-medium) solid var(--dune-title); | |||
border-radius: var(--border-radius-md); | |||
padding: 2px; | |||
background-color: #262626; | background-color: #262626; | ||
} | } | ||
/* | /*-------------------------------------------------------------- | ||
# 10. LOCKED BEHIND COMPONENT | |||
--------------------------------------------------------------*/ | |||
. | .skin-pivot .dune-card-locked { | ||
margin: var(--spacing-lg) 0 !important; | |||
background-color: var(--dune-darker-transparent) !important; | |||
border: var(--border-thin) solid var(--dune-gold) !important; | |||
border-radius: var(--border-radius-md) !important; | |||
padding: var(--spacing-md) !important; | |||
position: relative !important; | |||
text-align: center !important; | |||
} | } | ||
. | |||
.skin-pivot .dune-card-locked-label { | |||
color: var(--dune-title) !important; | |||
font-weight: bold !important; | |||
font-size: var(--font-size-sm) !important; | |||
letter-spacing: 0.5px !important; | |||
margin-bottom: var(--spacing-xs) !important; | |||
border-bottom: var(--border-thin) solid var(--dune-gold-transparent) !important; | |||
padding-bottom: var(--spacing-xs) !important; | |||
display: flex !important; | |||
align-items: center !important; | |||
justify-content: center !important; | |||
} | } | ||
.skin-pivot .dune-card-locked-icon { | |||
display: inline-flex !important; | |||
align-items: center !important; | |||
justify-content: center !important; | |||
width: 18px !important; | |||
height: 18px !important; | |||
margin-right: var(--spacing-xs) !important; | |||
color: var(--dune-gold) !important; | |||
font-size: 16px !important; | |||
} | } | ||
.skin-pivot .dune-card-locked-value { | |||
color: var(--dune-gold-hover) !important; | |||
font-weight: bold !important; | |||
padding: var(--spacing-xs) 0 !important; | |||
} | } | ||
. | |||
.skin-pivot .locked-behind-header { | |||
display: flex; | background-color: rgba(196,127,58,0.2) !important; | ||
border-bottom: var(--border-thin) solid var(--dune-gold) !important; | |||
padding: var(--spacing-sm) var(--spacing-md) !important; | |||
margin: -10px -10px 10px -10px !important; | |||
position: relative !important; | |||
text-transform: uppercase !important; | |||
font-weight: bold !important; | |||
color: var(--dune-title) !important; | |||
letter-spacing: 0.5px !important; | |||
display: flex !important; | |||
align-items: center !important; | |||
justify-content: center !important; | |||
} | } | ||
. | |||
.skin-pivot .locked-behind-header .icon { | |||
margin-right: var(--spacing-xs) !important; | |||
} | } | ||
/* | /*-------------------------------------------------------------- | ||
# 11. GAME PANEL COMPONENT | |||
--------------------------------------------------------------*/ | |||
.skin-pivot .game-panel { | .skin-pivot .game-panel { | ||
background: linear-gradient(to bottom, #1a1a1a, | background: linear-gradient(to bottom, #1a1a1a, var(--dune-dark)); | ||
border: | border: var(--border-thin) solid #364957; | ||
border-radius: | border-radius: var(--border-radius-md); | ||
box-shadow: 0 0 8px rgba(0, 0, 0, 0.3), 0 1px 0 rgba(255, 215, 128, 0.1) inset; | box-shadow: 0 0 8px rgba(0, 0, 0, 0.3), 0 1px 0 rgba(255, 215, 128, 0.1) inset; | ||
margin-bottom: | margin-bottom: var(--spacing-xl) !important; | ||
position: relative; | position: relative; | ||
overflow: | padding: var(--spacing-md) !important; | ||
overflow: visible !important; | |||
} | } | ||
.skin-pivot .game-panel-header { | .skin-pivot .game-panel-header { | ||
background-color: rgba(196,127,58,0.2); | background-color: rgba(196,127,58,0.2); | ||
border-bottom: | border-bottom: var(--border-thin) solid var(--dune-gold); | ||
padding: | padding: var(--spacing-sm) var(--spacing-md); | ||
margin: -12px -12px 12px -12px !important; | |||
position: relative; | position: relative; | ||
text-transform: uppercase; | text-transform: uppercase; | ||
font-weight: bold; | font-weight: bold; | ||
color: | color: var(--dune-title); | ||
letter-spacing: 0.5px; | letter-spacing: 0.5px; | ||
display: flex; | display: flex; | ||
align-items: center; | align-items: center; | ||
} | } | ||
.skin-pivot .game-panel-header::before, | .skin-pivot .game-panel-header::before, | ||
.skin-pivot .game-panel-header::after { | .skin-pivot .game-panel-header::after { | ||
| Line 587: | Line 736: | ||
width: 12px; | width: 12px; | ||
height: 12px; | height: 12px; | ||
border-top: | border-top: var(--border-medium) solid var(--dune-gold); | ||
border-left: | border-left: var(--border-medium) solid var(--dune-gold); | ||
transform: rotate(-45deg); | transform: rotate(-45deg); | ||
margin: 0 12px; | margin: 0 12px; | ||
} | } | ||
.skin-pivot .game-panel-header::after { | .skin-pivot .game-panel-header::after { | ||
transform: rotate(135deg); | transform: rotate(135deg); | ||
} | } | ||
.skin-pivot .game-panel-content { | .skin-pivot .game-panel-content { | ||
padding: | padding: 0 !important; | ||
color: | color: var(--dune-text); | ||
font-size: | font-size: var(--font-size-sm); | ||
overflow: visible !important; | |||
} | } | ||
/* | |||
/*-------------------------------------------------------------- | |||
# 12. UI ELEMENTS | |||
--------------------------------------------------------------*/ | |||
/* Resource Item */ | |||
/* Resource Item | |||
.skin-pivot .resource { | .skin-pivot .resource { | ||
display: inline-flex; | display: inline-flex !important; | ||
align-items: center; | align-items: center !important; | ||
padding: | padding: var(--spacing-xs) var(--spacing-sm) !important; | ||
background-color: | background-color: var(--dune-darker-transparent); | ||
border: | border: var(--border-thin) solid var(--dune-gold-transparent); | ||
border-radius: | border-radius: var(--border-radius-sm); | ||
margin | margin: 0 5px 5px 0 !important; | ||
color: var(--dune-text); | |||
color: | |||
} | } | ||
.skin-pivot .resource .resource-icon { | .skin-pivot .resource .resource-icon { | ||
margin-right: | margin-right: var(--spacing-xs); | ||
} | } | ||
.skin-pivot .resource .resource-amount { | .skin-pivot .resource .resource-amount { | ||
font-weight: bold; | font-weight: bold; | ||
color: | color: var(--dune-gold); | ||
} | } | ||
/* Buttons */ | /* Buttons */ | ||
.skin-pivot .game-button { | .skin-pivot .game-button { | ||
background: linear-gradient(to bottom, | background: linear-gradient(to bottom, var(--dune-gold), #9F6230); | ||
border: | border: var(--border-thin) solid var(--dune-gold); | ||
color: | color: var(--dune-title); | ||
padding: | padding: var(--spacing-sm) var(--spacing-md); | ||
border-radius: | border-radius: var(--border-radius-sm); | ||
cursor: pointer; | cursor: pointer; | ||
text-transform: uppercase; | text-transform: uppercase; | ||
font-size: | font-size: var(--font-size-sm); | ||
letter-spacing: 0.5px; | letter-spacing: 0.5px; | ||
transition: | box-shadow: 0 0 3px var(--dune-gold), inset 0 0 5px #5a3c1d; | ||
transition: var(--transition-standard); | |||
position: relative; | position: relative; | ||
} | } | ||
.skin-pivot .game-button:hover { | .skin-pivot .game-button:hover { | ||
background: linear-gradient(to bottom, | background: linear-gradient(to bottom, var(--dune-gold-hover), #B97233); | ||
box-shadow: 0 0 | box-shadow: 0 0 6px var(--dune-gold-hover), 0 0 12px var(--dune-gold-intense-glow); | ||
} | } | ||
.skin-pivot .game-button:active { | .skin-pivot .game-button:active { | ||
top: 1px; | top: 1px; | ||
} | } | ||
/* Progress Bar */ | /* Progress Bar */ | ||
.skin-pivot .progress-bar { | .skin-pivot .progress-bar { | ||
height: 10px; | height: 10px; | ||
background-color: | background-color: var(--dune-darker-transparent); | ||
border: | border: var(--border-thin) solid var(--dune-gold); | ||
border-radius: | border-radius: var(--border-radius-md); | ||
overflow: hidden; | overflow: hidden; | ||
margin: 5px 0; | margin: 5px 0; | ||
} | } | ||
.skin-pivot .progress-fill { | .skin-pivot .progress-fill { | ||
height: 100%; | height: 100%; | ||
background: linear-gradient(to right, | background: linear-gradient(to right, var(--dune-gold), var(--dune-gold-hover)); | ||
width: 0%; | width: 0%; | ||
transition: width 0.3s ease; | transition: width 0.3s ease; | ||
} | } | ||
/* Tooltip */ | /* Tooltip */ | ||
.skin-pivot .tooltip { | .skin-pivot .tooltip { | ||
| Line 698: | Line 825: | ||
cursor: help; | cursor: help; | ||
} | } | ||
.skin-pivot .tooltip .tooltip-text { | .skin-pivot .tooltip .tooltip-text { | ||
visibility: hidden; | visibility: hidden; | ||
width: 200px; | width: 200px; | ||
background-color: | background-color: var(--dune-dark); | ||
color: | color: var(--dune-text); | ||
text-align: center; | text-align: center; | ||
border: | border: var(--border-thin) solid var(--dune-gold); | ||
border-radius: | border-radius: var(--border-radius-md); | ||
padding: | padding: var(--spacing-sm); | ||
position: absolute; | position: absolute; | ||
z-index: 1; | z-index: 1; | ||
| Line 714: | Line 842: | ||
opacity: 0; | opacity: 0; | ||
transition: opacity 0.3s; | transition: opacity 0.3s; | ||
box-shadow: | box-shadow: var(--shadow-medium); | ||
font-size: | font-size: var(--font-size-sm); | ||
} | } | ||
.skin-pivot .tooltip:hover .tooltip-text { | .skin-pivot .tooltip:hover .tooltip-text { | ||
visibility: visible; | visibility: visible; | ||
opacity: 1; | opacity: 1; | ||
} | } | ||
/* Badge Indicators */ | /* Badge Indicators */ | ||
.skin-pivot .badge { | .skin-pivot .badge { | ||
display: inline-block; | display: inline-block; | ||
padding: 3px 6px; | padding: 3px 6px; | ||
border-radius: | border-radius: var(--border-radius-sm); | ||
font-size: | font-size: var(--font-size-xs); | ||
margin-left: 5px; | margin-left: 5px; | ||
text-transform: uppercase; | text-transform: uppercase; | ||
} | } | ||
.skin-pivot .badge-functional { | .skin-pivot .badge-functional { | ||
background-color: rgba(65, 130, 65, 0.3); | background-color: rgba(65, 130, 65, 0.3); | ||
border: | border: var(--border-thin) solid #5a9d5a; | ||
color: #a3d9a3; | color: #a3d9a3; | ||
} | } | ||
.skin-pivot .badge-locked { | .skin-pivot .badge-locked { | ||
background-color: rgba(130, 65, 65, 0.3); | background-color: rgba(130, 65, 65, 0.3); | ||
border: | border: var(--border-thin) solid #9d5a5a; | ||
color: #d9a3a3; | color: #d9a3a3; | ||
} | } | ||
/* Animation for loading */ | /* Animation for loading */ | ||
@keyframes pulsate { | @keyframes pulsate { | ||
| Line 745: | Line 878: | ||
50% { opacity: 1; } | 50% { opacity: 1; } | ||
} | } | ||
.skin-pivot .loading { | .skin-pivot .loading { | ||
animation: pulsate 1.5s infinite; | animation: pulsate 1.5s infinite; | ||
} | } | ||
/* | /* Breadcrumbs */ | ||
.skin-pivot .breadcrumbs-container, | .skin-pivot .breadcrumbs-container, | ||
.skin-pivot .breadcrumb-trail { | .skin-pivot .breadcrumb-trail { | ||
| Line 759: | Line 891: | ||
padding: 0; | padding: 0; | ||
} | } | ||
.skin-pivot .breadcrumb-trail { | .skin-pivot .breadcrumb-trail { | ||
display: inline-flex; | display: inline-flex; | ||
align-items: center; | align-items: center; | ||
padding: 5px 0; | padding: 5px 0; | ||
color: | color: var(--dune-gold); | ||
} | } | ||
.skin-pivot .breadcrumb-unavailable { | .skin-pivot .breadcrumb-unavailable { | ||
background-color: | background-color: var(--dune-darker-transparent); | ||
border: | border: var(--border-thin) solid var(--dune-gold); | ||
padding: 5px 10px; | padding: 5px 10px; | ||
margin-bottom: 10px; | margin-bottom: 10px; | ||
color: | color: var(--dune-text); | ||
font-size: | font-size: var(--font-size-sm); | ||
} | } | ||
/* Misc elements */ | |||
.skin-pivot .fromdb { | .skin-pivot .fromdb { | ||
color: | color: var(--dune-gold); | ||
font-size: | font-size: var(--font-size-sm); | ||
margin: -5px 0 15px 0; | margin: -5px 0 15px 0; | ||
opacity: 0.7; | opacity: 0.7; | ||
} | } | ||
.skin-pivot .video-container { | .skin-pivot .video-container { | ||
border: | border: var(--border-thin) solid #364957; | ||
border-radius: | border-radius: var(--border-radius-sm); | ||
overflow: hidden; | overflow: hidden; | ||
margin: 0 0 15px 0 !important; | margin: 0 0 15px 0 !important; | ||
border-radius: 4px !important; | |||
overflow: hidden !important; | |||
} | } | ||
/* Special section containers */ | |||
/* | |||
.skin-pivot .schematic-section, | .skin-pivot .schematic-section, | ||
.skin-pivot .crafting-section, | .skin-pivot .crafting-section, | ||
| Line 972: | Line 931: | ||
.skin-pivot .related-buildings-section { | .skin-pivot .related-buildings-section { | ||
padding: 0 10px !important; | padding: 0 10px !important; | ||
margin-bottom: | margin-bottom: var(--spacing-xl) !important; | ||
overflow: visible !important; | |||
overflow: | |||
} | } | ||
/* | /* Utility classes */ | ||
.skin-pivot .clearfix::after { | .skin-pivot .clearfix::after { | ||
content: ""; | content: ""; | ||
| Line 1,072: | Line 942: | ||
} | } | ||
/* | /* Centered container */ | ||
.skin-pivot . | .skin-pivot .dune-container { | ||
max-width: 1080px; | |||
margin: 0 auto; | |||
padding: 0 1em; | |||
} | } | ||
/* | /* Divider */ | ||
. | .skin-pivot .dune-divider { | ||
height: 1px; | |||
background: linear-gradient(to right, transparent, rgba(255,255,255,0.15), transparent); | |||
margin: 1em 0; | |||
} | } | ||
/* UI Label */ | |||
.skin-pivot .label-ui { | |||
letter-spacing: 1.2px; | |||
text-transform: uppercase; | |||
color: var(--dune-gold); | |||
font-size: var(--font-size-xs); | |||
/* | margin-bottom: var(--spacing-xs); | ||
.skin-pivot | |||
text-transform: | |||
font-size: | |||
} | } | ||
/*-------------------------------------------------------------- | |||
# 13. INVENTORY UI STYLING | |||
--------------------------------------------------------------*/ | |||
.skin-pivot .inventory-grid { | .skin-pivot .inventory-grid { | ||
display: grid; | display: grid; | ||
| Line 1,281: | Line 973: | ||
gap: 6px; | gap: 6px; | ||
padding: 10px; | padding: 10px; | ||
background-color: | background-color: var(--dune-darker); | ||
border: | border: var(--border-thin) solid #3a3a3a; | ||
border-radius: | border-radius: var(--border-radius-lg); | ||
box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.5); | box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.5); | ||
} | } | ||
.skin-pivot .inventory-slot { | .skin-pivot .inventory-slot { | ||
background-color: rgba(22, 22, 24, 0.8); | background-color: rgba(22, 22, 24, 0.8); | ||
border: | border: var(--border-thin) solid var(--dune-gold-transparent); | ||
display: flex; | display: flex; | ||
align-items: center; | align-items: center; | ||
| Line 1,298: | Line 989: | ||
transition: box-shadow 0.2s; | transition: box-shadow 0.2s; | ||
font-size: 1.4em; | font-size: 1.4em; | ||
color: | color: var(--dune-title); | ||
} | } | ||
.skin-pivot .inventory-slot:hover { | .skin-pivot .inventory-slot:hover { | ||
box-shadow: 0 0 4px | box-shadow: 0 0 4px var(--dune-gold-hover); | ||
} | } | ||
.skin-pivot .dune-selected { | .skin-pivot .dune-selected { | ||
border: | border: var(--border-medium) solid var(--dune-gold-hover) !important; | ||
box-shadow: 0 0 8px rgba(226, 141, 79, 0.6); | box-shadow: 0 0 8px rgba(226, 141, 79, 0.6); | ||
} | } | ||
/* | /* Special lockbox style */ | ||
.skin-pivot . | .skin-pivot .lockbox { | ||
text-align: center !important; | |||
} | } | ||
.skin-pivot .lockbox .lockbox-header { | |||
.skin-pivot . | background-color: rgba(196,127,58,0.2) !important; | ||
border-bottom: var(--border-thin) solid var(--dune-gold) !important; | |||
background: | padding: var(--spacing-sm) var(--spacing-md) !important; | ||
margin-bottom: var(--spacing-md) !important; | |||
text-transform: uppercase !important; | |||
font-weight: bold !important; | |||
color: var(--dune-title) !important; | |||
letter-spacing: 0.5px !important; | |||
display: flex !important; | |||
align-items: center !important; | |||
justify-content: center !important; | |||
margin-bottom: | |||
text-transform: uppercase; | |||
font- | |||
} | } | ||
Revision as of 00:01, 4 April 2025
/**********************************************************
* Dune-Themed Pivot Skin (Consolidated CSS)
**********************************************************/
/*--------------------------------------------------------------
# 1. CSS VARIABLES
--------------------------------------------------------------*/
:root {
/* Primary colors */
--dune-black: #000002;
--dune-dark: #1A232F;
--dune-darker: #0f1419;
--dune-graphite: #161618;
--dune-gold: #C47F3A;
--dune-gold-hover: #E28D4F;
--dune-text: #E0E0E0;
--dune-title: #E2D3AE;
/* Opacity variations */
--dune-dark-transparent: rgba(15, 20, 25, 0.9);
--dune-darker-transparent: rgba(15, 20, 25, 0.6);
--dune-gold-transparent: rgba(196, 127, 58, 0.4);
--dune-gold-glow: rgba(196, 127, 58, 0.2);
--dune-gold-intense-glow: rgba(226, 141, 79, 0.4);
/* Spacing */
--spacing-xs: 4px;
--spacing-sm: 8px;
--spacing-md: 12px;
--spacing-lg: 16px;
--spacing-xl: 20px;
/* Borders */
--border-thin: 1px;
--border-medium: 2px;
--border-radius-sm: 3px;
--border-radius-md: 4px;
--border-radius-lg: 6px;
/* Shadows */
--shadow-subtle: 0 0 8px rgba(0, 0, 0, 0.3);
--shadow-medium: 0 0 10px rgba(0, 0, 0, 0.5);
--shadow-gold: 0 0 15px rgba(196, 127, 58, 0.2);
--shadow-gold-intense: 0 0 20px rgba(226, 141, 79, 0.4);
/* Typography */
--font-stack: "Orbitron", "Segoe UI", sans-serif;
--font-size-xs: 0.75em;
--font-size-sm: 0.85em;
--font-size-md: 1em;
--font-size-lg: 1.2em;
--font-size-xl: 1.4em;
--font-size-xxl: 1.6em;
/* Transitions */
--transition-standard: all 0.2s ease;
}
/*--------------------------------------------------------------
# 2. GLOBAL RESET & BODY
--------------------------------------------------------------*/
html, body {
margin: 0;
padding: 0;
height: 100%;
min-height: 100%;
}
body.skin-pivot {
background: url('https://dunedb.com/images/5/57/DuneDB_Background.jpg') no-repeat center center fixed;
background-size: cover;
background-attachment: fixed;
color: var(--dune-text);
font-family: var(--font-stack);
line-height: 1.35;
font-size: 15px;
}
/*--------------------------------------------------------------
# 3. MAIN CONTAINERS & TRANSPARENCY
--------------------------------------------------------------*/
/* Transparent main containers */
.skin-pivot #content,
.skin-pivot .mw-body,
.skin-pivot .mw-content-ltr,
.skin-pivot .mw-content-rtl {
background: transparent;
padding: var(--spacing-lg);
border-radius: var(--border-radius-lg);
margin: 0;
}
/* Force major wrappers to be transparent */
.skin-pivot .off-canvas-wrap,
.skin-pivot .docs-wrap,
.skin-pivot .inner-wrap,
.skin-pivot #page-base,
.skin-pivot .page-base,
.skin-pivot #main-section.main-section,
.skin-pivot #page-content,
.skin-pivot .row,
.skin-pivot .columns,
.skin-pivot #sidebar.large-2.medium-3.columns.hide-for-small.hide-for-print,
.skin-pivot .exit-off-canvas {
background: transparent !important;
border: none !important;
overflow: visible !important;
}
/* Footer, catlinks, printfooter: also transparent */
.skin-pivot footer,
.skin-pivot .footer,
.skin-pivot #footer,
.skin-pivot .mw-footer,
.skin-pivot #mw-footer-container,
.skin-pivot #mw-footer,
.skin-pivot #catlinks,
.skin-pivot .catlinks,
.skin-pivot .printfooter,
.skin-pivot #mw-data-after-content {
background: transparent !important;
border: none !important;
color: var(--dune-text) !important;
}
/* Fix for MediaWiki scrollbars */
.mw-body-content,
.skin-pivot .mw-body,
.skin-pivot #content,
.skin-pivot #mw-content-text {
overflow: visible !important;
}
/*--------------------------------------------------------------
# 4. NAVIGATION & HEADINGS
--------------------------------------------------------------*/
/* Navbars */
.skin-pivot .navbar,
.skin-pivot .navbar-default,
.skin-pivot .navbar-inverse {
background: var(--dune-dark-transparent) !important;
border: none !important;
color: var(--dune-text) !important;
}
.skin-pivot .navbar-nav > li > a,
.skin-pivot .dropdown-menu > li > a {
color: var(--dune-gold) !important;
font-weight: bold !important;
text-decoration: none;
}
.skin-pivot .navbar-nav > li > a:hover,
.skin-pivot .dropdown-menu > li > a:hover {
color: var(--dune-gold-hover) !important;
text-decoration: underline;
}
/* Sidebar & Panels */
.skin-pivot #nav,
.skin-pivot #nav-wrapper,
.skin-pivot .nav-content,
.skin-pivot .list-group,
.skin-pivot .list-group-item {
background: var(--dune-dark-transparent);
border: none;
color: var(--dune-text);
}
.skin-pivot .list-group-item:hover {
background-color: var(--dune-dark);
}
/* Sidebar / Panel Headings */
.skin-pivot #nav h3,
.skin-pivot #nav-wrapper h3,
.skin-pivot .panel-heading,
.skin-pivot .nav-content h3 {
background-color: transparent;
border: none;
color: var(--dune-title);
margin: 10px 0 5px;
font-weight: bold;
text-transform: uppercase;
}
/* Main content headings */
.skin-pivot h1,
.skin-pivot h2,
.skin-pivot h3,
.skin-pivot h4,
.skin-pivot h5,
.skin-pivot h6 {
color: var(--dune-title);
font-weight: bold;
margin-top: 1em;
margin-bottom: 0.5em;
border-bottom: none;
text-transform: none;
padding-bottom: 5px;
}
.skin-pivot h1,
.skin-pivot h3 {
border-bottom: var(--border-medium) solid rgba(255, 255, 255, 0.2);
}
/* Main headings and first heading */
.skin-pivot h1.firstHeading,
.skin-pivot .page-header h1 {
color: var(--dune-title);
font-size: var(--font-size-xxl);
font-weight: bold;
margin: 0 0 10px 0;
padding-bottom: 5px;
border-bottom: var(--border-medium) solid var(--dune-gold-transparent);
text-transform: uppercase;
}
/* Links site-wide */
.skin-pivot a {
color: var(--dune-gold);
text-decoration: none;
font-weight: bold;
transition: var(--transition-standard);
}
.skin-pivot a:hover {
color: var(--dune-gold-hover);
text-decoration: underline;
}
.skin-pivot a.new,
.skin-pivot a.new:visited {
color: #BA0000 !important;
text-decoration: underline;
}
.skin-pivot a.new:hover {
color: #DD0000 !important;
}
/* Journey link text */
.skin-pivot a[href*="Journey"] {
color: var(--dune-gold-hover) !important;
text-decoration: none !important;
font-weight: bold !important;
transition: text-shadow 0.2s ease !important;
display: inline-block !important;
margin: 0 auto !important;
}
/*--------------------------------------------------------------
# 5. PIVOT NAV OVERRIDES
--------------------------------------------------------------*/
.skin-pivot nav.tab-bar.hide-for-print {
background: var(--dune-dark-transparent);
border: none;
color: var(--dune-text);
padding: 0.5em;
}
.skin-pivot nav.tab-bar.hide-for-print a {
color: var(--dune-gold);
font-weight: bold;
}
.skin-pivot nav.tab-bar.hide-for-print a:hover {
color: var(--dune-gold-hover);
text-decoration: underline;
}
.skin-pivot nav.tab-bar.hide-for-print .title a {
color: var(--dune-title);
font-size: var(--font-size-lg);
text-transform: uppercase;
}
.skin-pivot #left-nav-aside,
.skin-pivot #middle-nav,
.skin-pivot #right-nav-aside {
background-color: transparent;
color: var(--dune-text);
}
.skin-pivot li.name.logo img {
max-width: 100%;
height: auto;
display: inline-block;
vertical-align: middle;
}
.skin-pivot li.has-form input[type="search"] {
background: rgba(30, 40, 50, 0.8);
color: var(--dune-text);
border: var(--border-thin) solid var(--dune-gold);
padding: 0.5em;
width: 100%;
}
.skin-pivot li.has-form input[type="search"]::placeholder {
color: #C9B795;
}
.skin-pivot label.sidebar {
background-color: transparent;
color: var(--dune-title);
font-weight: bold;
text-transform: uppercase;
padding: 0.5em 0;
display: block;
border-bottom: var(--border-medium) solid rgba(255, 255, 255, 0.2);
margin-bottom: 0.5em;
}
.skin-pivot li.mw-list-item a {
color: var(--dune-gold);
font-weight: bold;
text-decoration: none;
display: block;
padding: 0.25em 0;
}
.skin-pivot li.mw-list-item a:hover {
color: var(--dune-gold-hover);
text-decoration: underline;
}
/*--------------------------------------------------------------
# 6. SIDEBAR/HIDING TOOLS
--------------------------------------------------------------*/
html body.skin-pivot #p-tb,
html body.skin-pivot #p-tb + ul,
html body.skin-pivot #p-tb + li,
li[id^="t-"] {
display: none !important;
}
/*--------------------------------------------------------------
# 7. RESPONSIVE LAYOUT
--------------------------------------------------------------*/
.responsive-container {
display: flex;
flex-wrap: wrap;
gap: 1.5em !important;
align-items: stretch;
width: 100%;
margin: 1em 0;
box-sizing: border-box;
}
.responsive-col {
display: flex;
flex-direction: column;
box-sizing: border-box;
width: 100%;
min-width: 350px;
}
@media screen and (min-width: 700px) {
.responsive-col {
width: calc(50% - 0.75em) !important;
}
}
@media screen and (min-width: 1100px) {
.responsive-col {
width: calc(33.333% - 1em) !important;
}
}
.responsive-col .skin-pivot:last-child {
flex: 1 1 auto;
display: flex;
flex-direction: column;
}
.responsive-col .skin-pivot:last-child .dune-card {
flex: 1 1 auto;
display: flex;
flex-direction: column;
}
/*--------------------------------------------------------------
# 8. TABLES (CONSOLIDATED)
--------------------------------------------------------------*/
/* Base table styles */
.skin-pivot table.infobox-dune,
.skin-pivot .game-table {
width: 100% !important;
border-collapse: separate !important;
border-spacing: 0 !important;
margin-bottom: var(--spacing-xl) !important;
table-layout: auto !important;
background-color: var(--dune-black) !important;
border: var(--border-thin) solid #3a3a3a !important;
box-shadow:
0 0 0 1px #3a3a3a,
0 0 0 2px var(--dune-black),
0 0 0 3px var(--dune-gold),
0 0 15px var(--dune-gold-glow) !important;
border-radius: var(--border-radius-md) !important;
background-image:
linear-gradient(rgba(20, 30, 40, 0.1) 1px, transparent 1px),
linear-gradient(90deg, rgba(20, 30, 40, 0.1) 1px, transparent 1px) !important;
background-size: 20px 20px !important;
background-position: -1px -1px !important;
transition: box-shadow 0.3s ease;
}
/* Table hover effect */
.skin-pivot table.infobox-dune:hover,
.skin-pivot .game-table:hover {
box-shadow:
0 0 0 1px #3a3a3a,
0 0 0 2px var(--dune-black),
0 0 0 3px var(--dune-gold-hover),
0 0 20px var(--dune-gold-intense-glow) !important;
}
/* Table headers */
.skin-pivot table.infobox-dune th,
.skin-pivot .game-table th {
background: linear-gradient(to bottom, #1A1A1A, #101010) !important;
color: var(--dune-title) !important;
padding: var(--spacing-sm) var(--spacing-md) !important;
text-align: left !important;
font-size: var(--font-size-sm) !important;
text-transform: uppercase !important;
letter-spacing: 0.5px !important;
border-bottom: var(--border-thin) solid var(--dune-gold) !important;
text-shadow: 0 0 5px rgba(226, 141, 79, 0.5) !important;
vertical-align: middle !important;
}
/* Table cells */
.skin-pivot table.infobox-dune td,
.skin-pivot .game-table td {
background-color: var(--dune-graphite) !important;
color: var(--dune-title) !important;
border: var(--border-thin) solid #333 !important;
padding: var(--spacing-sm) var(--spacing-md) !important;
vertical-align: middle !important;
line-height: 1.4 !important;
word-wrap: break-word !important;
overflow-wrap: break-word !important;
max-width: 500px !important;
}
/* Alternating row colors */
.skin-pivot .game-table tr:nth-child(even) td {
background-color: rgba(15, 20, 25, 0.4) !important;
}
/* Last row no bottom border */
.skin-pivot .game-table tr:last-child td {
border-bottom: none !important;
}
/* Strong text in tables */
.skin-pivot table.infobox-dune td strong,
.skin-pivot .game-table td strong {
color: var(--dune-gold-hover) !important;
text-shadow: 0 0 3px rgba(226, 141, 79, 0.3) !important;
font-weight: bold !important;
}
/* Table with icons in first column */
.skin-pivot table.infobox-dune tr th:first-child {
position: relative !important;
padding-left: 32px !important;
}
.skin-pivot table.infobox-dune tr th .icon {
position: absolute !important;
left: var(--spacing-sm) !important;
top: 50% !important;
transform: translateY(-50%) !important;
font-size: 18px !important;
}
/* Table container with horizontal scroll when needed */
.skin-pivot .game-table-container {
width: 100%;
overflow-x: auto;
overflow-y: visible;
margin-bottom: var(--spacing-md);
}
/* Two-Column Table (special case) */
.skin-pivot table.two-column-table {
background-color: var(--dune-dark) !important;
border: none !important;
width: 100% !important;
table-layout: fixed;
}
.skin-pivot table.two-column-table th,
.skin-pivot table.two-column-table td {
background-color: var(--dune-dark) !important;
border: none !important;
vertical-align: top;
}
.skin-pivot table.two-column-table > tbody > tr > td:first-child {
border-right: var(--border-medium) solid rgba(255, 255, 255, 0.2) !important;
}
@media only screen and (max-width: 600px) {
.skin-pivot table.two-column-table > tbody > tr {
display: flex;
flex-direction: column;
}
.skin-pivot table.two-column-table > tbody > tr > td {
width: 100%;
border: none !important;
}
}
/*--------------------------------------------------------------
# 9. DUNE CARD COMPONENT (CONSOLIDATED)
--------------------------------------------------------------*/
.skin-pivot .dune-card {
position: relative;
background-color: var(--dune-black) !important;
color: var(--dune-title);
width: auto !important;
max-width: 100% !important;
padding: var(--spacing-lg) !important;
margin: 0 0 var(--spacing-xl) 0 !important;
border: var(--border-thin) solid #3a3a3a !important;
border-radius: var(--border-radius-md) !important;
box-shadow:
0 0 0 1px #3a3a3a,
0 0 0 2px var(--dune-black),
0 0 0 3px var(--dune-gold),
0 0 15px var(--dune-gold-glow) !important;
background-image:
linear-gradient(rgba(20, 30, 40, 0.1) 1px, transparent 1px),
linear-gradient(90deg, rgba(20, 30, 40, 0.1) 1px, transparent 1px) !important;
background-size: 20px 20px !important;
background-position: -1px -1px !important;
transition: box-shadow 0.3s ease;
overflow: visible !important;
}
/* Dune Card hover effect */
.skin-pivot .dune-card:hover {
box-shadow:
0 0 0 1px #3a3a3a,
0 0 0 2px var(--dune-black),
0 0 0 3px var(--dune-gold-hover),
0 0 20px var(--dune-gold-intense-glow) !important;
}
/* Decorative corner elements (unified styling) */
.skin-pivot .dune-card::before,
.skin-pivot .dune-card::after {
content: '';
position: absolute;
width: 20px;
height: 20px;
border: var(--border-medium) solid var(--dune-gold);
z-index: 1;
}
.skin-pivot .dune-card::before {
top: -5px;
left: -5px;
border-right: none;
border-bottom: none;
}
.skin-pivot .dune-card::after {
bottom: -5px;
right: -5px;
border-left: none;
border-top: none;
}
/* Card decoration placeholder (to maintain compatibility) */
.skin-pivot .dune-card-decoration {
display: none;
}
/* Card inner content */
.skin-pivot .dune-card-inner {
position: relative;
z-index: 1;
}
/* Card label */
.skin-pivot .dune-card-label {
color: #b6a896;
font-size: var(--font-size-xs);
text-transform: uppercase;
margin-bottom: var(--spacing-xs);
border-bottom: var(--border-thin) solid #444;
padding-bottom: var(--spacing-xs);
}
/* Card title */
.skin-pivot .dune-card-title {
margin: 0;
font-size: var(--font-size-xl);
color: var(--dune-title);
text-transform: uppercase;
border-bottom: var(--border-thin) solid #444;
padding-bottom: var(--spacing-xs);
margin-bottom: var(--spacing-sm);
position: relative;
}
/* Card description */
.skin-pivot .dune-card-description {
font-size: var(--font-size-md);
line-height: 1.4;
background-color: var(--dune-graphite) !important;
border-radius: var(--border-radius-md);
border: var(--border-thin) solid #444;
padding: var(--spacing-md);
margin-bottom: var(--spacing-md);
display: block !important;
color: var(--dune-title) !important;
}
/* Card image */
.skin-pivot .dune-card-image {
text-align: center;
margin: var(--spacing-sm) 0;
}
/* Card video */
.skin-pivot .dune-card-video {
margin: var(--spacing-sm) 0;
border: var(--border-medium) solid var(--dune-title);
border-radius: var(--border-radius-md);
padding: 2px;
background-color: #262626;
}
/*--------------------------------------------------------------
# 10. LOCKED BEHIND COMPONENT
--------------------------------------------------------------*/
.skin-pivot .dune-card-locked {
margin: var(--spacing-lg) 0 !important;
background-color: var(--dune-darker-transparent) !important;
border: var(--border-thin) solid var(--dune-gold) !important;
border-radius: var(--border-radius-md) !important;
padding: var(--spacing-md) !important;
position: relative !important;
text-align: center !important;
}
.skin-pivot .dune-card-locked-label {
color: var(--dune-title) !important;
font-weight: bold !important;
font-size: var(--font-size-sm) !important;
letter-spacing: 0.5px !important;
margin-bottom: var(--spacing-xs) !important;
border-bottom: var(--border-thin) solid var(--dune-gold-transparent) !important;
padding-bottom: var(--spacing-xs) !important;
display: flex !important;
align-items: center !important;
justify-content: center !important;
}
.skin-pivot .dune-card-locked-icon {
display: inline-flex !important;
align-items: center !important;
justify-content: center !important;
width: 18px !important;
height: 18px !important;
margin-right: var(--spacing-xs) !important;
color: var(--dune-gold) !important;
font-size: 16px !important;
}
.skin-pivot .dune-card-locked-value {
color: var(--dune-gold-hover) !important;
font-weight: bold !important;
padding: var(--spacing-xs) 0 !important;
}
.skin-pivot .locked-behind-header {
background-color: rgba(196,127,58,0.2) !important;
border-bottom: var(--border-thin) solid var(--dune-gold) !important;
padding: var(--spacing-sm) var(--spacing-md) !important;
margin: -10px -10px 10px -10px !important;
position: relative !important;
text-transform: uppercase !important;
font-weight: bold !important;
color: var(--dune-title) !important;
letter-spacing: 0.5px !important;
display: flex !important;
align-items: center !important;
justify-content: center !important;
}
.skin-pivot .locked-behind-header .icon {
margin-right: var(--spacing-xs) !important;
}
/*--------------------------------------------------------------
# 11. GAME PANEL COMPONENT
--------------------------------------------------------------*/
.skin-pivot .game-panel {
background: linear-gradient(to bottom, #1a1a1a, var(--dune-dark));
border: var(--border-thin) solid #364957;
border-radius: var(--border-radius-md);
box-shadow: 0 0 8px rgba(0, 0, 0, 0.3), 0 1px 0 rgba(255, 215, 128, 0.1) inset;
margin-bottom: var(--spacing-xl) !important;
position: relative;
padding: var(--spacing-md) !important;
overflow: visible !important;
}
.skin-pivot .game-panel-header {
background-color: rgba(196,127,58,0.2);
border-bottom: var(--border-thin) solid var(--dune-gold);
padding: var(--spacing-sm) var(--spacing-md);
margin: -12px -12px 12px -12px !important;
position: relative;
text-transform: uppercase;
font-weight: bold;
color: var(--dune-title);
letter-spacing: 0.5px;
display: flex;
align-items: center;
}
.skin-pivot .game-panel-header::before,
.skin-pivot .game-panel-header::after {
content: '';
display: inline-block;
width: 12px;
height: 12px;
border-top: var(--border-medium) solid var(--dune-gold);
border-left: var(--border-medium) solid var(--dune-gold);
transform: rotate(-45deg);
margin: 0 12px;
}
.skin-pivot .game-panel-header::after {
transform: rotate(135deg);
}
.skin-pivot .game-panel-content {
padding: 0 !important;
color: var(--dune-text);
font-size: var(--font-size-sm);
overflow: visible !important;
}
/*--------------------------------------------------------------
# 12. UI ELEMENTS
--------------------------------------------------------------*/
/* Resource Item */
.skin-pivot .resource {
display: inline-flex !important;
align-items: center !important;
padding: var(--spacing-xs) var(--spacing-sm) !important;
background-color: var(--dune-darker-transparent);
border: var(--border-thin) solid var(--dune-gold-transparent);
border-radius: var(--border-radius-sm);
margin: 0 5px 5px 0 !important;
color: var(--dune-text);
}
.skin-pivot .resource .resource-icon {
margin-right: var(--spacing-xs);
}
.skin-pivot .resource .resource-amount {
font-weight: bold;
color: var(--dune-gold);
}
/* Buttons */
.skin-pivot .game-button {
background: linear-gradient(to bottom, var(--dune-gold), #9F6230);
border: var(--border-thin) solid var(--dune-gold);
color: var(--dune-title);
padding: var(--spacing-sm) var(--spacing-md);
border-radius: var(--border-radius-sm);
cursor: pointer;
text-transform: uppercase;
font-size: var(--font-size-sm);
letter-spacing: 0.5px;
box-shadow: 0 0 3px var(--dune-gold), inset 0 0 5px #5a3c1d;
transition: var(--transition-standard);
position: relative;
}
.skin-pivot .game-button:hover {
background: linear-gradient(to bottom, var(--dune-gold-hover), #B97233);
box-shadow: 0 0 6px var(--dune-gold-hover), 0 0 12px var(--dune-gold-intense-glow);
}
.skin-pivot .game-button:active {
top: 1px;
}
/* Progress Bar */
.skin-pivot .progress-bar {
height: 10px;
background-color: var(--dune-darker-transparent);
border: var(--border-thin) solid var(--dune-gold);
border-radius: var(--border-radius-md);
overflow: hidden;
margin: 5px 0;
}
.skin-pivot .progress-fill {
height: 100%;
background: linear-gradient(to right, var(--dune-gold), var(--dune-gold-hover));
width: 0%;
transition: width 0.3s ease;
}
/* Tooltip */
.skin-pivot .tooltip {
position: relative;
display: inline-block;
cursor: help;
}
.skin-pivot .tooltip .tooltip-text {
visibility: hidden;
width: 200px;
background-color: var(--dune-dark);
color: var(--dune-text);
text-align: center;
border: var(--border-thin) solid var(--dune-gold);
border-radius: var(--border-radius-md);
padding: var(--spacing-sm);
position: absolute;
z-index: 1;
bottom: 125%;
left: 50%;
margin-left: -100px;
opacity: 0;
transition: opacity 0.3s;
box-shadow: var(--shadow-medium);
font-size: var(--font-size-sm);
}
.skin-pivot .tooltip:hover .tooltip-text {
visibility: visible;
opacity: 1;
}
/* Badge Indicators */
.skin-pivot .badge {
display: inline-block;
padding: 3px 6px;
border-radius: var(--border-radius-sm);
font-size: var(--font-size-xs);
margin-left: 5px;
text-transform: uppercase;
}
.skin-pivot .badge-functional {
background-color: rgba(65, 130, 65, 0.3);
border: var(--border-thin) solid #5a9d5a;
color: #a3d9a3;
}
.skin-pivot .badge-locked {
background-color: rgba(130, 65, 65, 0.3);
border: var(--border-thin) solid #9d5a5a;
color: #d9a3a3;
}
/* Animation for loading */
@keyframes pulsate {
0%, 100% { opacity: 0.6; }
50% { opacity: 1; }
}
.skin-pivot .loading {
animation: pulsate 1.5s infinite;
}
/* Breadcrumbs */
.skin-pivot .breadcrumbs-container,
.skin-pivot .breadcrumb-trail {
background: transparent;
border: none;
margin: 0;
padding: 0;
}
.skin-pivot .breadcrumb-trail {
display: inline-flex;
align-items: center;
padding: 5px 0;
color: var(--dune-gold);
}
.skin-pivot .breadcrumb-unavailable {
background-color: var(--dune-darker-transparent);
border: var(--border-thin) solid var(--dune-gold);
padding: 5px 10px;
margin-bottom: 10px;
color: var(--dune-text);
font-size: var(--font-size-sm);
}
/* Misc elements */
.skin-pivot .fromdb {
color: var(--dune-gold);
font-size: var(--font-size-sm);
margin: -5px 0 15px 0;
opacity: 0.7;
}
.skin-pivot .video-container {
border: var(--border-thin) solid #364957;
border-radius: var(--border-radius-sm);
overflow: hidden;
margin: 0 0 15px 0 !important;
border-radius: 4px !important;
overflow: hidden !important;
}
/* Special section containers */
.skin-pivot .schematic-section,
.skin-pivot .crafting-section,
.skin-pivot .tutorials-section,
.skin-pivot .related-buildings-section {
padding: 0 10px !important;
margin-bottom: var(--spacing-xl) !important;
overflow: visible !important;
}
/* Utility classes */
.skin-pivot .clearfix::after {
content: "";
clear: both;
display: table;
}
/* Centered container */
.skin-pivot .dune-container {
max-width: 1080px;
margin: 0 auto;
padding: 0 1em;
}
/* Divider */
.skin-pivot .dune-divider {
height: 1px;
background: linear-gradient(to right, transparent, rgba(255,255,255,0.15), transparent);
margin: 1em 0;
}
/* UI Label */
.skin-pivot .label-ui {
letter-spacing: 1.2px;
text-transform: uppercase;
color: var(--dune-gold);
font-size: var(--font-size-xs);
margin-bottom: var(--spacing-xs);
}
/*--------------------------------------------------------------
# 13. INVENTORY UI STYLING
--------------------------------------------------------------*/
.skin-pivot .inventory-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(80px, 1fr));
gap: 6px;
padding: 10px;
background-color: var(--dune-darker);
border: var(--border-thin) solid #3a3a3a;
border-radius: var(--border-radius-lg);
box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.5);
}
.skin-pivot .inventory-slot {
background-color: rgba(22, 22, 24, 0.8);
border: var(--border-thin) solid var(--dune-gold-transparent);
display: flex;
align-items: center;
justify-content: center;
height: 80px;
width: 80px;
transition: box-shadow 0.2s;
font-size: 1.4em;
color: var(--dune-title);
}
.skin-pivot .inventory-slot:hover {
box-shadow: 0 0 4px var(--dune-gold-hover);
}
.skin-pivot .dune-selected {
border: var(--border-medium) solid var(--dune-gold-hover) !important;
box-shadow: 0 0 8px rgba(226, 141, 79, 0.6);
}
/* Special lockbox style */
.skin-pivot .lockbox {
text-align: center !important;
}
.skin-pivot .lockbox .lockbox-header {
background-color: rgba(196,127,58,0.2) !important;
border-bottom: var(--border-thin) solid var(--dune-gold) !important;
padding: var(--spacing-sm) var(--spacing-md) !important;
margin-bottom: var(--spacing-md) !important;
text-transform: uppercase !important;
font-weight: bold !important;
color: var(--dune-title) !important;
letter-spacing: 0.5px !important;
display: flex !important;
align-items: center !important;
justify-content: center !important;
}