MediaWiki:Pivot.css
From Dune Awakening DB
Note: After publishing, you may have to bypass your browser's cache to see the changes.
- Firefox / Safari: Hold Shift while clicking Reload, or press either Ctrl-F5 or Ctrl-R (⌘-R on a Mac)
- Google Chrome: Press Ctrl-Shift-R (⌘-Shift-R on a Mac)
- Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5.
/**********************************************************
* Enhanced Dune-Themed Pivot Skin (Game-Accurate)
**********************************************************/
/*--------------------------------------------------------------
# 1. CSS VARIABLES
--------------------------------------------------------------*/
:root {
/* Primary colors - matched from game screenshot */
--dune-black: rgba(14, 12, 21, 0.75); /* Semi-transparent base */
--dune-panel-bg: rgba(20, 18, 32, 0.8); /* Panel background with transparency */
--dune-dark: rgba(26, 23, 36, 0.85); /* Dark panels with transparency */
--dune-darker: rgba(12, 10, 20, 0.9); /* Darker elements */
--dune-gold: #C8A165; /* Game-accurate gold */
--dune-gold-hover: #E3BB7A; /* Brighter gold for hover states */
--dune-gold-dark: #A07B40; /* Darker gold for gradients/shadows */
--dune-text: #E0E0E0; /* Standard text */
--dune-title: #E2D3AE; /* Headers/titles */
--dune-inactive: #636363; /* Inactive elements */
/* Accent colors */
--dune-accent-red: #A3413D; /* Red accent from game */
--dune-accent-blue: #3D6B8A; /* Blue accent from game */
/* Opacity variations */
--dune-dark-transparent: rgba(14, 12, 21, 0.8);
--dune-darker-transparent: rgba(12, 10, 20, 0.6);
--dune-gold-transparent: rgba(200, 161, 101, 0.4);
--dune-gold-glow: rgba(200, 161, 101, 0.2);
--dune-gold-intense-glow: rgba(227, 187, 122, 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-thick: 3px;
--border-radius-sm: 2px;
--border-radius-md: 3px;
--border-radius-lg: 4px;
/* 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 8px rgba(200, 161, 101, 0.3);
--shadow-gold-intense: 0 0 12px rgba(227, 187, 122, 0.5);
/* Typography */
--font-stack: "Orbitron", "Rajdhani", "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;
/* UI specific */
--nav-height: 40px;
--border-angle: 30deg;
}
/*--------------------------------------------------------------
# 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 - GAME-STYLED
--------------------------------------------------------------*/
/* Game-like top navigation */
.skin-pivot .navbar {
background: var(--dune-darker) !important;
border: none !important;
height: var(--nav-height);
position: relative;
display: flex;
align-items: center;
justify-content: center;
border-bottom: var(--border-thin) solid var(--dune-gold) !important;
}
.skin-pivot .navbar:before,
.skin-pivot .navbar:after {
content: '';
position: absolute;
height: var(--border-thin);
background-color: var(--dune-gold);
bottom: -1px;
width: 20px;
}
.skin-pivot .navbar:before {
left: 20px;
transform: skewX(var(--border-angle));
}
.skin-pivot .navbar:after {
right: 20px;
transform: skewX(calc(-1 * var(--border-angle)));
}
.skin-pivot .navbar-nav {
display: flex;
justify-content: center;
width: 100%;
}
.skin-pivot .navbar-nav > li {
position: relative;
display: inline-block;
}
.skin-pivot .navbar-nav > li > a {
color: var(--dune-gold) !important;
font-weight: bold !important;
text-transform: uppercase;
letter-spacing: 1px;
padding: 10px 15px;
margin: 0 5px;
position: relative;
text-align: center;
}
.skin-pivot .navbar-nav > li.active > a {
color: var(--dune-gold-hover) !important;
box-shadow: 0 -2px 0 var(--dune-gold-hover) inset;
}
.skin-pivot .navbar-nav > li > a:hover {
color: var(--dune-gold-hover) !important;
text-shadow: 0 0 5px var(--dune-gold-glow);
}
.skin-pivot .navbar-nav > li.active > a:after,
.skin-pivot .navbar-nav > li > a:hover:after {
content: '';
position: absolute;
bottom: 0;
left: 0;
width: 100%;
height: 2px;
background-color: var(--dune-gold);
}
/* Sidebar & Panels - game style */
.skin-pivot #nav,
.skin-pivot #nav-wrapper,
.skin-pivot .nav-content {
background: var(--dune-panel-bg);
border: var(--border-thin) solid var(--dune-gold);
color: var(--dune-text);
border-radius: var(--border-radius-sm);
position: relative;
}
.skin-pivot #nav:before,
.skin-pivot #nav:after,
.skin-pivot #nav-wrapper:before,
.skin-pivot #nav-wrapper:after {
content: '';
position: absolute;
width: 10px;
height: 10px;
border: var(--border-thin) solid var(--dune-gold);
}
.skin-pivot #nav:before,
.skin-pivot #nav-wrapper:before {
top: -1px;
left: -1px;
border-right: none;
border-bottom: none;
}
.skin-pivot #nav:after,
.skin-pivot #nav-wrapper:after {
bottom: -1px;
right: -1px;
border-left: none;
border-top: none;
}
/* List items with game styling */
.skin-pivot .list-group-item {
background: transparent;
border: none;
border-bottom: var(--border-thin) solid rgba(200, 161, 101, 0.3);
color: var(--dune-text);
padding: 8px 10px;
transition: var(--transition-standard);
}
.skin-pivot .list-group-item:last-child {
border-bottom: none;
}
.skin-pivot .list-group-item:hover {
background-color: rgba(200, 161, 101, 0.1);
}
/* Panel Headings - game accurate */
.skin-pivot #nav h3,
.skin-pivot #nav-wrapper h3,
.skin-pivot .panel-heading {
background-color: rgba(200, 161, 101, 0.15);
border-bottom: var(--border-thin) solid var(--dune-gold);
color: var(--dune-gold);
margin: 0;
padding: 8px 12px;
font-weight: bold;
text-transform: uppercase;
letter-spacing: 1px;
font-size: var(--font-size-sm);
position: relative;
display: flex;
align-items: center;
}
.skin-pivot #nav h3:before,
.skin-pivot #nav h3:after,
.skin-pivot #nav-wrapper h3:before,
.skin-pivot #nav-wrapper h3:after,
.skin-pivot .panel-heading:before,
.skin-pivot .panel-heading:after {
content: '';
display: inline-block;
width: 6px;
height: 6px;
background-color: var(--dune-gold);
margin: 0 8px;
}
/* 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: uppercase;
padding-bottom: 5px;
letter-spacing: 0.5px;
}
.skin-pivot h1,
.skin-pivot h3 {
border-bottom: var(--border-thin) solid var(--dune-gold-transparent);
position: relative;
}
.skin-pivot h1:after,
.skin-pivot h3:after {
content: '';
position: absolute;
bottom: -1px;
left: 0;
width: 30px;
height: 3px;
background-color: var(--dune-gold);
}
/* Main headings and first heading - game style */
.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 15px 0;
padding-bottom: 8px;
border-bottom: var(--border-thin) solid var(--dune-gold-transparent);
text-transform: uppercase;
letter-spacing: 1px;
position: relative;
}
.skin-pivot h1.firstHeading:after,
.skin-pivot .page-header h1:after {
content: '';
position: absolute;
bottom: -1px;
left: 0;
width: 50px;
height: 3px;
background: linear-gradient(to right, var(--dune-gold), rgba(200, 161, 101, 0));
}
/* Links site-wide - game style */
.skin-pivot a {
color: var(--dune-gold);
text-decoration: none;
font-weight: bold;
transition: var(--transition-standard);
position: relative;
}
.skin-pivot a:hover {
color: var(--dune-gold-hover);
text-decoration: none;
text-shadow: 0 0 5px rgba(200, 161, 101, 0.4);
}
.skin-pivot a.new,
.skin-pivot a.new:visited {
color: var(--dune-accent-red) !important;
text-decoration: none;
}
.skin-pivot a.new:hover {
color: lighten(var(--dune-accent-red), 15%) !important;
}
/* Journey link text - special styling */
.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;
padding: 2px 8px !important;
border: var(--border-thin) solid rgba(200, 161, 101, 0.4) !important;
border-radius: var(--border-radius-sm) !important;
background-color: rgba(200, 161, 101, 0.1) !important;
}
.skin-pivot a[href*="Journey"]:hover {
box-shadow: 0 0 8px rgba(200, 161, 101, 0.4);
text-shadow: 0 0 5px rgba(200, 161, 101, 0.4);
}
/*--------------------------------------------------------------
# 5. PIVOT NAV OVERRIDES - GAME STYLE
--------------------------------------------------------------*/
.skin-pivot nav.tab-bar.hide-for-print {
background: var(--dune-darker);
border-bottom: var(--border-thin) solid var(--dune-gold);
color: var(--dune-text);
padding: 0;
height: var(--nav-height);
display: flex;
align-items: center;
}
.skin-pivot nav.tab-bar.hide-for-print a {
color: var(--dune-gold);
font-weight: bold;
text-transform: uppercase;
letter-spacing: 0.5px;
}
.skin-pivot nav.tab-bar.hide-for-print a:hover {
color: var(--dune-gold-hover);
text-decoration: none;
}
.skin-pivot nav.tab-bar.hide-for-print .title {
display: flex;
align-items: center;
height: 100%;
}
.skin-pivot nav.tab-bar.hide-for-print .title a {
color: var(--dune-title);
font-size: var(--font-size-lg);
text-transform: uppercase;
letter-spacing: 1px;
padding: 0 15px;
height: 100%;
display: flex;
align-items: center;
border-right: var(--border-thin) solid rgba(200, 161, 101, 0.3);
}
.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;
margin-right: 10px;
}
/* Game-style search box */
.skin-pivot li.has-form {
padding: 0 10px;
}
.skin-pivot li.has-form input[type="search"] {
background: rgba(12, 10, 20, 0.6);
color: var(--dune-text);
border: var(--border-thin) solid var(--dune-gold);
padding: 5px 10px;
width: 100%;
height: 30px;
border-radius: var(--border-radius-sm);
outline: none;
transition: var(--transition-standard);
}
.skin-pivot li.has-form input[type="search"]:focus {
background: rgba(12, 10, 20, 0.8);
border-color: var(--dune-gold-hover);
box-shadow: 0 0 5px rgba(200, 161, 101, 0.3);
}
.skin-pivot li.has-form input[type="search"]::placeholder {
color: rgba(201, 183, 149, 0.6);
}
.skin-pivot label.sidebar {
background-color: transparent;
color: var(--dune-gold);
font-weight: bold;
text-transform: uppercase;
padding: 8px 12px;
margin: 0;
display: block;
border-bottom: var(--border-thin) solid rgba(200, 161, 101, 0.3);
letter-spacing: 0.5px;
font-size: var(--font-size-sm);
}
.skin-pivot li.mw-list-item {
position: relative;
}
.skin-pivot li.mw-list-item:before {
content: '•';
color: var(--dune-gold);
position: absolute;
left: 5px;
top: 7px;
font-size: 12px;
}
.skin-pivot li.mw-list-item a {
color: var(--dune-text);
text-decoration: none;
display: block;
padding: 6px 10px 6px 15px;
font-size: var(--font-size-sm);
border-bottom: var(--border-thin) solid rgba(200, 161, 101, 0.1);
transition: var(--transition-standard);
}
.skin-pivot li.mw-list-item:last-child a {
border-bottom: none;
}
.skin-pivot li.mw-list-item a:hover {
color: var(--dune-gold);
background-color: rgba(200, 161, 101, 0.1);
text-decoration: none;
}
/*--------------------------------------------------------------
# 7. RESPONSIVE LAYOUT - GAME ACCURATE
--------------------------------------------------------------*/
.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 - GAME STYLED
--------------------------------------------------------------*/
/* Base table styles - with transparency */
.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-panel-bg) !important;
border: var(--border-thin) solid var(--dune-gold) !important;
box-shadow: 0 0 8px rgba(0, 0, 0, 0.4) !important;
border-radius: var(--border-radius-sm) !important;
position: relative !important;
overflow: hidden !important;
}
/* Corner accents like in the game */
.skin-pivot table.infobox-dune:before,
.skin-pivot table.infobox-dune:after,
.skin-pivot .game-table:before,
.skin-pivot .game-table:after {
content: '';
position: absolute;
width: 10px;
height: 10px;
z-index: 1;
}
.skin-pivot table.infobox-dune:before,
.skin-pivot .game-table:before {
top: -1px;
left: -1px;
border-top: var(--border-thin) solid var(--dune-gold);
border-left: var(--border-thin) solid var(--dune-gold);
}
.skin-pivot table.infobox-dune:after,
.skin-pivot .game-table:after {
bottom: -1px;
right: -1px;
border-bottom: var(--border-thin) solid var(--dune-gold);
border-right: var(--border-thin) solid var(--dune-gold);
}
/* Table headers */
.skin-pivot table.infobox-dune th,
.skin-pivot .game-table th {
background: linear-gradient(to bottom, rgba(200, 161, 101, 0.2), rgba(200, 161, 101, 0.1)) !important;
color: var(--dune-gold) !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;
position: relative !important;
}
/* Table cells */
.skin-pivot table.infobox-dune td,
.skin-pivot .game-table td {
background-color: rgba(22, 22, 24, 0.4) !important;
color: var(--dune-text) !important;
border: none !important;
border-bottom: var(--border-thin) solid rgba(200, 161, 101, 0.2) !important;
padding: var(--spacing-sm) var(--spacing-md) !important;
vertical-align: middle !important;
line-height: 1.4 !important;
}
/* Alternating row colors */
.skin-pivot .game-table tr:nth-child(even) td {
background-color: rgba(30, 28, 44, 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) !important;
text-shadow: 0 0 3px rgba(200, 161, 101, 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;
color: var(--dune-gold) !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);
position: relative;
}
/* Game-style table header decoration */
.skin-pivot table.infobox-dune thead tr:first-child th:first-child:before,
.skin-pivot .game-table thead tr:first-child th:first-child:before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 8px;
height: 8px;
border-top: var(--border-thin) solid var(--dune-gold);
border-left: var(--border-thin) solid var(--dune-gold);
}
.skin-pivot table.infobox-dune thead tr:first-child th:last-child:after,
.skin-pivot .game-table thead tr:first-child th:last-child:after {
content: '';
position: absolute;
top: 0;
right: 0;
width: 8px;
height: 8px;
border-top: var(--border-thin) solid var(--dune-gold);
border-right: var(--border-thin) solid var(--dune-gold);
}
/*--------------------------------------------------------------
# 9. DUNE CARD COMPONENT - GAME ACCURATE
--------------------------------------------------------------*/
.skin-pivot .dune-card {
position: relative;
background-color: var(--dune-panel-bg) !important;
color: var(--dune-text);
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 var(--dune-gold) !important;
border-radius: var(--border-radius-sm) !important;
box-shadow: 0 0 8px rgba(0, 0, 0, 0.4) !important;
transition: box-shadow 0.3s ease;
overflow: visible !important;
}
/* Game-accurate decorative corners */
.skin-pivot .dune-card:before,
.skin-pivot .dune-card:after,
.skin-pivot .dune-infobox:before,
.skin-pivot .dune-infobox:after,
.skin-pivot .game-panel:before,
.skin-pivot .game-panel:after {
content: '';
position: absolute;
width: 10px;
height: 10px;
z-index: 1;
}
.skin-pivot .dune-card:before,
.skin-pivot .dune-infobox:before,
.skin-pivot .game-panel:before {
top: -1px;
left: -1px;
border-top: var(--border-thin) solid var(--dune-gold);
border-left: var(--border-thin) solid var(--dune-gold);
}
.skin-pivot .dune-card:after,
.skin-pivot .dune-infobox:after,
.skin-pivot .game-panel:after {
bottom: -1px;
right: -1px;
border-bottom: var(--border-thin) solid var(--dune-gold);
border-right: var(--border-thin) solid var(--dune-gold);
}
/* Card decoration placeholder */
.skin-pivot .dune-card-decoration {
display: none;
}
/* Card inner content */
.skin-pivot .dune-card-inner {
position: relative;
z-index: 1;
}
/* Card label - game style */
.skin-pivot .dune-card-label {
color: var(--dune-gold);
font-size: var(--font-size-xs);
text-transform: uppercase;
margin-bottom: var(--spacing-xs);
border-bottom: none;
padding-bottom: var(--spacing-xs);
letter-spacing: 0.8px;
text-shadow: 0 0 5px rgba(200, 161, 101, 0.3);
position: relative;
}
.skin-pivot .dune-card-label:after {
content: '';
position: absolute;
bottom: 0;
left: 0;
width: 30px;
height: 1px;
background-color: var(--dune-gold);
}
/* Card title - game style */
.skin-pivot .dune-card-title {
margin: 10px 0;
font-size: var(--font-size-lg);
color: var(--dune-title);
text-transform: uppercase;
border-bottom: var(--border-thin) solid rgba(200, 161, 101, 0.3);
padding-bottom: var(--spacing-sm);
margin-bottom: var(--spacing-md);
position: relative;
letter-spacing: 0.8px;
display: flex;
align-items: center;
}
.skin-pivot .dune-card-title .icon {
margin-right: 8px;
color: var(--dune-gold);
}
/* Card description */
.skin-pivot .dune-card-description {
font-size: var(--font-size-md);
line-height: 1.4;
background-color: rgba(22, 22, 24, 0.4) !important;
border-radius: var(--border-radius-sm);
border: var(--border-thin) solid rgba(200, 161, 101, 0.2);
padding: var(--spacing-md);
margin-bottom: var(--spacing-md);
display: block !important;
color: var(--dune-text) !important;
position: relative;
}
/* Card image - game style */
.skin-pivot .dune-card-image {
text-align: center;
margin: var(--spacing-md) 0;
position: relative;
padding: 2px;
border: var(--border-thin) solid rgba(200, 161, 101, 0.4);
background-color: rgba(12, 10, 20, 0.8);
}
.skin-pivot .dune-card-image img {
max-width: 100%;
height: auto;
display: block;
margin: 0 auto;
}
/* Card video */
.skin-pivot .dune-card-video {
margin: var(--spacing-md) 0;
border: var(--border-thin) solid rgba(200, 161, 101, 0.4);
padding: 2px;
background-color: rgba(12, 10, 20, 0.8);
position: relative;
}
/*--------------------------------------------------------------
# 10. LOCKED BEHIND COMPONENT - GAME ACCURATE
--------------------------------------------------------------*/
.skin-pivot .dune-card-locked {
margin: var(--spacing-lg) 0 !important;
background-color: rgba(12, 10, 20, 0.6) !important;
border: var(--border-thin) solid var(--dune-gold) !important;
border-radius: var(--border-radius-sm) !important;
padding: var(--spacing-md) !important;
position: relative !important;
text-align: center !important;
}
.skin-pivot .dune-card-locked-label {
color: var(--dune-gold) !important;
font-weight: bold !important;
font-size: var(--font-size-sm) !important;
letter-spacing: 0.8px !important;
margin-bottom: var(--spacing-sm) !important;
border-bottom: var(--border-thin) solid rgba(200, 161, 101, 0.3) !important;
padding-bottom: var(--spacing-xs) !important;
display: flex !important;
align-items: center !important;
justify-content: center !important;
text-transform: uppercase !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-text) !important;
font-weight: normal !important;
padding: var(--spacing-xs) var(--spacing-sm) !important;
background-color: rgba(22, 22, 24, 0.4) !important;
border: var(--border-thin) solid rgba(200, 161, 101, 0.2) !important;
border-radius: var(--border-radius-sm) !important;
display: inline-block !important;
}
.skin-pivot .dune-card-locked-value a {
color: var(--dune-gold) !important;
}
.skin-pivot .locked-behind-header {
background-color: rgba(200, 161, 101, 0.15) !important;
border-bottom: var(--border-thin) solid var(--dune-gold) !important;
padding: var(--spacing-sm) var(--spacing-md) !important;
margin: -12px -12px 12px -12px !important;
position: relative !important;
text-transform: uppercase !important;
font-weight: bold !important;
color: var(--dune-gold) !important;
letter-spacing: 0.8px !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 - GAME ACCURATE
--------------------------------------------------------------*/
.skin-pivot .game-panel {
background: var(--dune-panel-bg);
border: var(--border-thin) solid var(--dune-gold);
border-radius: var(--border-radius-sm);
box-shadow: 0 0 8px rgba(0, 0, 0, 0.4);
margin-bottom: var(--spacing-xl) !important;
position: relative;
padding: var(--spacing-md) !important;
overflow: visible !important;
}
.skin-pivot .game-panel-header {
background-color: rgba(200, 161, 101, 0.15);
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-gold);
letter-spacing: 0.8px;
font-size: var(--font-size-sm);
}
/* Angular design elements for headers */
.skin-pivot .game-panel-header:before,
.skin-pivot .game-panel-header:after {
content: '';
position: absolute;
height: 100%;
width: 15px;
top: 0;
}
.skin-pivot .game-panel-header:before {
left: -15px;
border-top: var(--border-thin) solid var(--dune-gold);
border-bottom: var(--border-thin) solid var(--dune-gold);
clip-path: polygon(0 0, 100% 100%, 100% 0);
}
.skin-pivot .game-panel-header:after {
right: -15px;
border-top: var(--border-thin) solid var(--dune-gold);
border-bottom: var(--border-thin) solid var(--dune-gold);
clip-path: polygon(0 0, 0 100%, 100% 0);
}
.skin-pivot .game-panel-content {
padding: 0 !important;
color: var(--dune-text);
font-size: var(--font-size-sm);
overflow: visible !important;
}
/*--------------------------------------------------------------
# 12. UI ELEMENTS - GAME ACCURATE
--------------------------------------------------------------*/
/* Resource Item - game style */
.skin-pivot .resource {
display: inline-flex !important;
align-items: center !important;
padding: var(--spacing-xs) var(--spacing-sm) !important;
background-color: rgba(12, 10, 20, 0.6);
border: var(--border-thin) solid rgba(200, 161, 101, 0.3);
border-radius: var(--border-radius-sm);
margin: 0 5px 5px 0 !important;
color: var(--dune-text);
position: relative;
}
.skin-pivot .resource:before,
.skin-pivot .resource:after {
content: '';
position: absolute;
width: 4px;
height: 4px;
background-color: var(--dune-gold);
}
.skin-pivot .resource:before {
top: -2px;
left: -2px;
}
.skin-pivot .resource:after {
bottom: -2px;
right: -2px;
}
.skin-pivot .resource .resource-icon {
margin-right: var(--spacing-xs);
color: var(--dune-gold);
}
.skin-pivot .resource .resource-amount {
font-weight: bold;
color: var(--dune-gold);
}
/* Buttons - game style */
.skin-pivot .game-button {
background: linear-gradient(to bottom, var(--dune-gold), var(--dune-gold-dark));
border: var(--border-thin) solid var(--dune-gold);
color: #000;
padding: var(--spacing-sm) var(--spacing-lg);
border-radius: 0;
cursor: pointer;
text-transform: uppercase;
font-size: var(--font-size-sm);
letter-spacing: 0.8px;
font-weight: bold;
transition: var(--transition-standard);
position: relative;
text-align: center;
display: inline-block;
min-width: 120px;
clip-path: polygon(10px 0, 100% 0, 100% calc(100% - 10px), calc(100% - 10px) 100%, 0 100%, 0 10px);
}
.skin-pivot .game-button:hover {
background: linear-gradient(to bottom, var(--dune-gold-hover), var(--dune-gold));
box-shadow: 0 0 10px rgba(200, 161, 101, 0.5);
}
.skin-pivot .game-button:active {
transform: translateY(1px);
}
/* Progress Bar - game style */
.skin-pivot .progress-bar {
height: 8px;
background-color: rgba(12, 10, 20, 0.6);
border: var(--border-thin) solid var(--dune-gold);
border-radius: 0;
overflow: hidden;
margin: 5px 0;
position: relative;
}
.skin-pivot .progress-bar:before,
.skin-pivot .progress-bar:after {
content: '';
position: absolute;
width: 4px;
height: 4px;
background-color: var(--dune-gold);
z-index: 1;
}
.skin-pivot .progress-bar:before {
top: -2px;
left: -2px;
}
.skin-pivot .progress-bar:after {
bottom: -2px;
right: -2px;
}
.skin-pivot .progress-fill {
height: 100%;
background: linear-gradient(to right, var(--dune-gold-dark), var(--dune-gold));
width: 0;
transition: width 0.3s ease;
}
/* Tooltip - game style */
.skin-pivot .tooltip {
position: relative;
display: inline-block;
cursor: help;
}
.skin-pivot .tooltip .tooltip-text {
visibility: hidden;
width: 200px;
background-color: var(--dune-panel-bg);
color: var(--dune-text);
text-align: center;
border: var(--border-thin) solid var(--dune-gold);
border-radius: var(--border-radius-sm);
padding: var(--spacing-sm);
position: absolute;
z-index: 10;
bottom: 125%;
left: 50%;
margin-left: -100px;
opacity: 0;
transition: opacity 0.3s;
box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
font-size: var(--font-size-sm);
}
.skin-pivot .tooltip .tooltip-text:before {
content: '';
position: absolute;
top: 100%;
left: 50%;
margin-left: -8px;
border-width: 8px;
border-style: solid;
border-color: var(--dune-gold) transparent transparent transparent;
}
.skin-pivot .tooltip:hover .tooltip-text {
visibility: visible;
opacity: 1;
}
/* Badge Indicators - game style */
.skin-pivot .badge {
display: inline-block;
padding: 2px 6px;
border-radius: 0;
font-size: var(--font-size-xs);
margin-left: 5px;
text-transform: uppercase;
position: relative;
letter-spacing: 0.5px;
}
.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;
}
/* Badge corner accents */
.skin-pivot .badge:before,
.skin-pivot .badge:after {
content: '';
position: absolute;
width: 3px;
height: 3px;
}
.skin-pivot .badge-functional:before,
.skin-pivot .badge-functional:after {
background-color: #5a9d5a;
}
.skin-pivot .badge-locked:before,
.skin-pivot .badge-locked:after {
background-color: #9d5a5a;
}
.skin-pivot .badge:before {
top: -1px;
left: -1px;
}
.skin-pivot .badge:after {
bottom: -1px;
right: -1px;
}
/* Animation for loading - pulse effect */
@keyframes pulsate {
0%, 100% { opacity: 0.6; }
50% { opacity: 1; }
}
.skin-pivot .loading {
animation: pulsate 1.5s infinite;
}
/* Breadcrumbs - game style */
.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);
font-size: var(--font-size-sm);
}
.skin-pivot .breadcrumb-trail a {
color: var(--dune-text);
transition: var(--transition-standard);
}
.skin-pivot .breadcrumb-trail a:hover {
color: var(--dune-gold);
text-decoration: none;
}
.skin-pivot .breadcrumb-trail .separator {
margin: 0 8px;
color: var(--dune-gold);
}
.skin-pivot .breadcrumb-unavailable {
background-color: rgba(12, 10, 20, 0.6);
border: var(--border-thin) solid var(--dune-gold);
padding: 5px 10px;
margin-bottom: 10px;
color: var(--dune-text);
font-size: var(--font-size-sm);
border-radius: var(--border-radius-sm);
}
/* Misc elements */
.skin-pivot .fromdb {
color: var(--dune-gold);
font-size: var(--font-size-sm);
margin: -5px 0 15px 0;
opacity: 0.7;
font-style: italic;
}
.skin-pivot .video-container {
border: var(--border-thin) solid var(--dune-gold);
overflow: hidden;
margin: 0 0 15px 0 !important;
position: relative;
padding: 2px;
background-color: rgba(12, 10, 20, 0.8);
}
/* 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 - game style */
.skin-pivot .dune-divider {
height: 1px;
background: linear-gradient(to right, transparent, var(--dune-gold), transparent);
margin: 1em 0;
position: relative;
}
.skin-pivot .dune-divider:before,
.skin-pivot .dune-divider:after {
content: '';
position: absolute;
width: 4px;
height: 4px;
background-color: var(--dune-gold);
top: -2px;
}
.skin-pivot .dune-divider:before {
left: calc(50% - 20px);
}
.skin-pivot .dune-divider:after {
right: calc(50% - 20px);
}
/* UI Label - game style */
.skin-pivot .label-ui {
letter-spacing: 1px;
text-transform: uppercase;
color: var(--dune-gold);
font-size: var(--font-size-xs);
margin-bottom: var(--spacing-xs);
text-shadow: 0 0 5px rgba(200, 161, 101, 0.3);
}
/*--------------------------------------------------------------
# 13. INVENTORY UI STYLING - GAME ACCURATE
--------------------------------------------------------------*/
/* Game-accurate inventory grid */
.skin-pivot .inventory-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(75px, 1fr));
gap: 4px;
padding: 5px;
background-color: rgba(12, 10, 20, 0.8);
border: var(--border-thin) solid var(--dune-gold);
position: relative;
}
/* Game-style inventory slot */
.skin-pivot .inventory-slot {
background-color: rgba(22, 22, 24, 0.8);
border: var(--border-thin) solid rgba(200, 161, 101, 0.3);
display: flex;
align-items: center;
justify-content: center;
height: 75px;
width: 75px;
transition: var(--transition-standard);
position: relative;
}
/* Empty slot styling */
.skin-pivot .inventory-slot.empty {
background-image:
linear-gradient(to bottom right, transparent calc(50% - 1px), rgba(200, 161, 101, 0.3), transparent calc(50% + 1px));
}
/* Corner accents for inventory slots */
.skin-pivot .inventory-slot:before,
.skin-pivot .inventory-slot:after {
content: '';
position: absolute;
width: 3px;
height: 3px;
}
.skin-pivot .inventory-slot:before {
top: -1px;
left: -1px;
border-top: var(--border-thin) solid var(--dune-gold);
border-left: var(--border-thin) solid var(--dune-gold);
}
.skin-pivot .inventory-slot:after {
bottom: -1px;
right: -1px;
border-bottom: var(--border-thin) solid var(--dune-gold);
border-right: var(--border-thin) solid var(--dune-gold);
}
.skin-pivot .inventory-slot:hover {
border-color: var(--dune-gold);
box-shadow: 0 0 5px rgba(200, 161, 101, 0.4) inset;
}
/* Item image within slot */
.skin-pivot .inventory-slot img {
max-width: 85%;
max-height: 85%;
}
/* Selected slot styling */
.skin-pivot .dune-selected {
border: var(--border-thin) solid var(--dune-gold) !important;
box-shadow: 0 0 8px rgba(200, 161, 101, 0.5) inset, 0 0 2px var(--dune-gold) !important;
background-color: rgba(200, 161, 101, 0.1) !important;
}
/* Item count/stack indicator */
.skin-pivot .item-count {
position: absolute;
bottom: 2px;
right: 2px;
background-color: rgba(12, 10, 20, 0.8);
color: var(--dune-gold);
font-size: 10px;
padding: 1px 3px;
border-radius: 2px;
border: var(--border-thin) solid rgba(200, 161, 101, 0.5);
min-width: 14px;
text-align: center;
}
/* Item quality/rarity indicator */
.skin-pivot .item-quality {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 3px;
}
.skin-pivot .item-quality.common {
background-color: #a0a0a0;
}
.skin-pivot .item-quality.uncommon {
background-color: #2d862d;
}
.skin-pivot .item-quality.rare {
background-color: #2970c3;
}
.skin-pivot .item-quality.epic {
background-color: #9c43c8;
}
.skin-pivot .item-quality.legendary {
background-color: #cf7a30;
}
/* Section header (e.g. "BACKPACK", "LOADOUT") - game accurate */
.skin-pivot .section-header {
background-color: rgba(12, 10, 20, 0.8);
border: var(--border-thin) solid var(--dune-gold);
color: var(--dune-gold);
padding: 5px 10px;
font-size: var(--font-size-sm);
text-transform: uppercase;
letter-spacing: 1px;
display: flex;
align-items: center;
position: relative;
margin-bottom: 5px;
font-weight: bold;
}
.skin-pivot .section-header:before,
.skin-pivot .section-header:after {
content: '';
position: absolute;
width: 6px;
height: 6px;
border: var(--border-thin) solid var(--dune-gold);
}
.skin-pivot .section-header:before {
top: -3px;
left: -3px;
border-right: none;
border-bottom: none;
}
.skin-pivot .section-header:after {
bottom: -3px;
right: -3px;
border-left: none;
border-top: none;
}
/* Lockbox with game styling */
.skin-pivot .lockbox {
text-align: center !important;
background-color: rgba(12, 10, 20, 0.6) !important;
border: var(--border-thin) solid var(--dune-gold) !important;
padding: var(--spacing-md) !important;
position: relative !important;
border-radius: var(--border-radius-sm) !important;
}
.skin-pivot .lockbox .lockbox-header {
background-color: rgba(200, 161, 101, 0.15) !important;
border-bottom: var(--border-thin) solid var(--dune-gold) !important;
padding: var(--spacing-sm) var(--spacing-md) !important;
margin: -12px -12px 12px -12px !important;
position: relative !important;
text-transform: uppercase !important;
font-weight: bold !important;
color: var(--dune-gold) !important;
letter-spacing: 0.8px !important;
display: flex !important;
align-items: center !important;
justify-content: center !important;
font-size: var(--font-size-sm) !important;
}
/* Character slots - for armor, weapons, etc. */
.skin-pivot .equipment-slot {
background-color: rgba(22, 22, 24, 0.8);
border: var(--border-thin) solid rgba(200, 161, 101, 0.3);
width: 60px;
height: 60px;
display: flex;
align-items: center;
justify-content: center;
margin: 4px;
position: relative;
}
.skin-pivot .equipment-slot:before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-size: 24px 24px;
background-position: center;
background-repeat: no-repeat;
opacity: 0.3;
}
.skin-pivot .equipment-slot.helmet:before {
background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="%23C8A165"><path d="M12 2C8.14 2 5 5.14 5 9c0 2.38 1.19 4.47 3 5.74V17c0 .55.45 1 1 1h6c.55 0 1-.45 1-1v-2.26c1.81-1.27 3-3.36 3-5.74 0-3.86-3.14-7-7-7zm2.85 11.1l-.85.6V16h-4v-2.3l-.85-.6A4.997 4.997 0 0 1 7 9c0-2.76 2.24-5 5-5s5 2.24 5 5c0 1.63-.8 3.16-2.15 4.1z"/></svg>');
}
.skin-pivot .equipment-slot.chest:before {
background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="%23C8A165"><path d="M16 4c0-1.11-.89-2-2-2H8C6.89 2 6 2.89 6 4v16h12V4zm-6 0h4v2h-4V4z"/></svg>');
}
.skin-pivot .equipment-slot.legs:before {
background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="%23C8A165"><path d="M9 6h6v12H9z"/></svg>');
}
.skin-pivot .equipment-slot.boots:before {
background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="%23C8A165"><path d="M5.5 12v8H7v-8H5.5zm11.25 0H15v8h1.75v-8zm-8.25 0h6v8h-6v-8zM7.5 4H9v8H7.5V4zm7.25 0h1.75v8h-1.75V4zm-4.5 0h2.5v8h-2.5V4z"/></svg>');
}
.skin-pivot .equipment-slot.weapon:before {
background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="%23C8A165"><path d="M14.82 2.41c.35.35.35.91 0 1.26L8 10.5V12h1.5l6.8-6.83c.35-.35.91-.35 1.26 0l1.06 1.06c.35.35.35.91 0 1.26L12 13.83 8.91 17h-3.5v-3.5L9 10.15l5.74-5.74c.35-.35.91-.35 1.26 0l-1.18-2z"/></svg>');
}
/* Character model container */
.skin-pivot .character-model {
display: flex;
flex-direction: column;
align-items: center;
padding: 20px;
position: relative;
}
.skin-pivot .character-model img {
max-width: 100%;
height: auto;
}
.skin-pivot .character-name {
color: var(--dune-title);
font-size: var(--font-size-lg);
margin: 10px 0;
text-transform: uppercase;
text-align: center;
}
.skin-pivot .character-faction {
color: var(--dune-gold);
font-size: var(--font-size-sm);
margin-bottom: 15px;
text-align: center;
}
/* Character stats button - game accurate */
.skin-pivot .character-stats-button {
background-color: rgba(163, 65, 61, 0.3);
border: var(--border-thin) solid var(--dune-accent-red);
color: var(--dune-text);
padding: 8px 16px;
font-size: var(--font-size-sm);
text-transform: uppercase;
letter-spacing: 0.8px;
transition: var(--transition-standard);
cursor: pointer;
display: inline-block;
position: relative;
}
.skin-pivot .character-stats-button:hover {
background-color: rgba(163, 65, 61, 0.5);
box-shadow: 0 0 8px rgba(163, 65, 61, 0.4);
}
/* Game-style scroll and navigation buttons */
.skin-pivot .nav-arrow {
background-color: transparent;
border: none;
color: var(--dune-gold);
font-size: 20px;
cursor: pointer;
transition: var(--transition-standard);
width: 24px;
height: 24px;
padding: 0;
margin: 0 5px;
position: relative;
}
.skin-pivot .nav-arrow:hover {
color: var(--dune-gold-hover);
text-shadow: 0 0 5px rgba(200, 161, 101, 0.5);
}
.skin-pivot .nav-arrow.left:before {
content: '◀';
}
.skin-pivot .nav-arrow.right:before {
content: '▶';
}
.skin-pivot .nav-arrow.up:before {
content: '▲';
}
.skin-pivot .nav-arrow.down:before {
content: '▼';
}
/* Experience bar - game style */
.skin-pivot .xp-bar {
height: 6px;
width: 100%;
background-color: rgba(12, 10, 20, 0.6);
border: var(--border-thin) solid var(--dune-gold);
position: relative;
overflow: hidden;
}
.skin-pivot .xp-progress {
height: 100%;
background: linear-gradient(to right, #C8A165, #E3BB7A);
width: 0%;
}
.skin-pivot .xp-level {
position: absolute;
right: 10px;
top: -18px;
background-color: rgba(12, 10, 20, 0.8);
border: var(--border-thin) solid var(--dune-gold);
color: var(--dune-gold);
padding: 2px 6px;
font-size: var(--font-size-xs);
letter-spacing: 0.5px;
}