Common.css: Difference between revisions
From Dune Awakening DB
mNo edit summary |
mNo edit summary |
||
| Line 57: | Line 57: | ||
/* Enhanced Radial Menu CSS with | /* Enhanced Radial Menu CSS with Better Positioning and Popouts */ | ||
/* Logo button styling */ | /* Logo button styling */ | ||
.dune-logo-btn { | .dune-logo-btn { | ||
| Line 111: | Line 111: | ||
left: 50%; | left: 50%; | ||
transform: translate(-50%, -50%) scale(0); | transform: translate(-50%, -50%) scale(0); | ||
width: | width: 400px; | ||
height: | height: 400px; | ||
z-index: 9999; | z-index: 9999; | ||
opacity: 0; | opacity: 0; | ||
visibility: hidden; | visibility: hidden; | ||
transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275); | transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275); | ||
pointer-events: none; | |||
} | } | ||
| Line 129: | Line 125: | ||
opacity: 1; | opacity: 1; | ||
visibility: visible; | visibility: visible; | ||
pointer-events: all; | |||
} | |||
/* Decorative circles for background */ | |||
.dune-radial-background { | |||
position: absolute; | |||
top: 0; | |||
left: 0; | |||
width: 100%; | |||
height: 100%; | |||
pointer-events: none; | |||
} | |||
.dune-radial-circle { | |||
position: absolute; | |||
top: 50%; | |||
left: 50%; | |||
transform: translate(-50%, -50%); | |||
border: 1px solid rgba(227, 187, 122, 0.3); | |||
border-radius: 50%; | |||
} | |||
.dune-radial-circle.outer { | |||
width: 100%; | |||
height: 100%; | |||
} | |||
.dune-radial-circle.middle { | |||
width: 75%; | |||
height: 75%; | |||
} | |||
.dune-radial-circle.inner { | |||
width: 50%; | |||
height: 50%; | |||
} | } | ||
| Line 148: | Line 179: | ||
transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275); | transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275); | ||
opacity: 0; | opacity: 0; | ||
z-index: | z-index: 10; | ||
text-decoration: none; | |||
} | |||
.dune-radial-center.animated { | |||
opacity: 1; | |||
transform: translate(-50%, -50%) scale(1); | |||
} | |||
/* Radial item container and positioning */ | |||
.dune-radial-item-container { | |||
position: absolute; | |||
transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275); | |||
opacity: 0; | |||
transform: scale(0.8); | |||
} | |||
.dune-radial-item-container.animated { | |||
opacity: 1; | |||
transform: scale(1); | |||
} | } | ||
/* Radial item styling */ | /* Radial item styling */ | ||
.dune-radial-item { | .dune-radial-item { | ||
display: flex; | display: flex; | ||
align-items: center; | align-items: center; | ||
justify-content: center; | justify-content: center; | ||
width: 60px; | |||
height: 60px; | |||
background-color: rgba(12, 10, 20, 0.8); | background-color: rgba(12, 10, 20, 0.8); | ||
border: 2px solid #fce7c8; | border: 2px solid #fce7c8; | ||
border-radius: 50%; | border-radius: 50%; | ||
overflow: hidden; | overflow: hidden; | ||
transition: all 0. | transition: all 0.2s ease; | ||
cursor: pointer; | |||
text-decoration: none; | |||
position: relative; | |||
} | |||
/* Text inside radial items */ | |||
.dune-radial-text { | |||
color: #fce7c8; | |||
font-size: 14px; | |||
font-weight: bold; | |||
text-align: center; | |||
text-shadow: 0 1px 3px rgba(0, 0, 0, 0.8); | |||
} | } | ||
/* | /* Selected state for radial items */ | ||
.dune-radial-item. | .dune-radial-item.selected { | ||
border-color: #ffffff; | |||
box-shadow: 0 0 15px rgba(255, 255, 255, 0.5); | |||
transform: scale(1.1); | |||
} | } | ||
| Line 180: | Line 239: | ||
border-color: #E3BB7A; | border-color: #E3BB7A; | ||
box-shadow: 0 0 15px rgba(200, 161, 101, 0.6); | box-shadow: 0 0 15px rgba(200, 161, 101, 0.6); | ||
transform: scale(1.1) | transform: scale(1.1); | ||
} | } | ||
| Line 186: | Line 245: | ||
.dune-radial-item:active, | .dune-radial-item:active, | ||
.dune-radial-center:active { | .dune-radial-center:active { | ||
transform: scale(0.95) | transform: scale(0.95); | ||
} | } | ||
/* PRECISE POSITIONING - Using calculated coordinates */ | /* PRECISE POSITIONING - Using calculated coordinates */ | ||
/* Polar coordinate positioning */ | |||
/* North position */ | /* North position */ | ||
.dune-radial-item.north { | .dune-radial-item-container.north { | ||
top: | top: 10px; | ||
left: | left: 50%; | ||
transform: translateX(-50%) scale(0.8); | |||
} | |||
.dune-radial-item-container.north.animated { | |||
transform: translateX(-50%) scale(1); | |||
} | } | ||
/* Northeast position */ | /* Northeast position */ | ||
.dune-radial-item.northeast { | .dune-radial-item-container.northeast { | ||
top: | top: 25%; | ||
right: 15%; | |||
} | } | ||
/* East position */ | /* East position */ | ||
.dune-radial-item.east { | .dune-radial-item-container.east { | ||
top: | top: 50%; | ||
right: 10px; | |||
transform: translateY(-50%) scale(0.8); | |||
} | |||
.dune-radial-item-container.east.animated { | |||
transform: translateY(-50%) scale(1); | |||
} | } | ||
/* Southeast position */ | /* Southeast position */ | ||
.dune-radial-item.southeast { | .dune-radial-item-container.southeast { | ||
bottom: 25%; | |||
right: 15%; | |||
} | } | ||
/* South position */ | /* South position */ | ||
.dune-radial-item.south { | .dune-radial-item-container.south { | ||
bottom: 10px; | |||
left: | left: 50%; | ||
transform: translateX(-50%) scale(0.8); | |||
} | |||
.dune-radial-item-container.south.animated { | |||
transform: translateX(-50%) scale(1); | |||
} | } | ||
/* Southwest position */ | /* Southwest position */ | ||
.dune-radial-item.southwest { | .dune-radial-item-container.southwest { | ||
bottom: 25%; | |||
left: | left: 15%; | ||
} | } | ||
/* West position */ | /* West position */ | ||
.dune-radial-item.west { | .dune-radial-item-container.west { | ||
top: | top: 50%; | ||
left: | left: 10px; | ||
transform: translateY(-50%) scale(0.8); | |||
} | |||
.dune-radial-item-container.west.animated { | |||
transform: translateY(-50%) scale(1); | |||
} | } | ||
/* Northwest position */ | /* Northwest position */ | ||
.dune-radial-item.northwest { | .dune-radial-item-container.northwest { | ||
top: | top: 25%; | ||
left: | left: 15%; | ||
} | } | ||
| Line 275: | Line 340: | ||
} | } | ||
/* Tooltip positions */ | /* Tooltip positions depend on item position */ | ||
.dune-radial-item.north .dune-radial-tooltip { | .dune-radial-item-container.north .dune-radial-tooltip { | ||
bottom: 100%; | |||
left: 50%; | left: 50%; | ||
transform: translateX(-50%); | transform: translateX(-50%); | ||
margin-bottom: 8px; | |||
} | } | ||
.dune-radial-item.northeast .dune-radial-tooltip { | .dune-radial-item-container.northeast .dune-radial-tooltip, | ||
.dune-radial-item-container.northwest .dune-radial-tooltip { | |||
bottom: 100%; | |||
left: 50%; | |||
transform: translateX(-50%); | |||
margin-bottom: 8px; | |||
} | } | ||
.dune-radial-item.east .dune-radial-tooltip | .dune-radial-item-container.east .dune-radial-tooltip, | ||
.dune-radial-item-container.west .dune-radial-tooltip { | |||
top: 50%; | top: 50%; | ||
transform: translateY(-50%); | transform: translateY(-50%); | ||
margin-left: 8px; | |||
} | |||
.dune-radial-item-container.east .dune-radial-tooltip { | |||
left: 100%; | |||
} | |||
.dune-radial-item-container.west .dune-radial-tooltip { | |||
right: 100%; | |||
} | } | ||
.dune-radial-item.southeast .dune-radial-tooltip { | .dune-radial-item-container.south .dune-radial-tooltip, | ||
.dune-radial-item-container.southeast .dune-radial-tooltip, | |||
.dune-radial-item-container.southwest .dune-radial-tooltip { | |||
top: 100%; | |||
left: 50%; | |||
transform: translateX(-50%); | |||
margin-top: 8px; | |||
} | } | ||
.dune-radial- | .dune-radial-center .dune-radial-tooltip { | ||
bottom: | bottom: 100%; | ||
left: 50%; | left: 50%; | ||
transform: translateX(-50%); | transform: translateX(-50%); | ||
margin-bottom: 8px; | |||
} | } | ||
.dune- | /* Subcategory popout container */ | ||
.dune-subcategory-container { | |||
position: absolute; | |||
width: 200px; | |||
background-color: rgba(12, 10, 20, 0.9); | |||
border: 2px solid #fce7c8; | |||
border-radius: 6px; | |||
z-index: 10001; | |||
opacity: 0; | |||
visibility: hidden; | |||
transform: scale(0.95); | |||
transition: all 0.2s ease; | |||
overflow: hidden; | |||
} | } | ||
.dune- | .dune-subcategory-container.active { | ||
opacity: 1; | |||
visibility: visible; | |||
transform: scale(1); | |||
} | |||
/* Subcategory header */ | |||
.dune-subcategory-header { | |||
background-color: rgba(200, 161, 101, 0.2); | |||
color: #fce7c8; | |||
font-size: 14px; | |||
font-weight: bold; | |||
padding: 8px 12px; | |||
border-bottom: 1px solid rgba(200, 161, 101, 0.3); | |||
} | } | ||
.dune- | /* Subcategory items list */ | ||
.dune-subcategory-items { | |||
padding: 8px 0; | |||
} | } | ||
.dune- | /* Individual subcategory item */ | ||
.dune-subcategory-item { | |||
left: | display: block; | ||
padding: 6px 12px; | |||
color: #fce7c8; | |||
text-decoration: none; | |||
transition: all 0.1s ease; | |||
} | |||
.dune-subcategory-item:hover { | |||
background-color: rgba(200, 161, 101, 0.2); | |||
padding-left: 16px; | |||
} | |||
/* Subcategory item name */ | |||
.dune-subcategory-name { | |||
font-size: 13px; | |||
} | } | ||
/* | /* Subcategory footer */ | ||
.dune- | .dune-subcategory-footer { | ||
padding: 8px 12px; | |||
border-top: 1px solid rgba(200, 161, 101, 0.3); | |||
text-align: center; | |||
border- | |||
} | } | ||
.dune- | /* View all link */ | ||
.dune-subcategory-all { | |||
color: #E3BB7A; | |||
font-size: 12px; | |||
text-decoration: none; | |||
} | } | ||
.dune- | .dune-subcategory-all:hover { | ||
text-decoration: underline; | |||
} | } | ||
| Line 357: | Line 465: | ||
width: 100%; | width: 100%; | ||
height: 100%; | height: 100%; | ||
background-color: rgba(0, 0, 0, 0. | background-color: rgba(0, 0, 0, 0.7); | ||
backdrop-filter: blur(3px); | backdrop-filter: blur(3px); | ||
z-index: 9998; | z-index: 9998; | ||
| Line 398: | Line 506: | ||
.dune-radial-center.animated { | .dune-radial-center.animated { | ||
animation: pulse 2s infinite; | animation: pulse 2s infinite; | ||
} | |||
/* Animation for subcategory items */ | |||
@keyframes fadeInRight { | |||
from { | |||
opacity: 0; | |||
transform: translateX(-10px); | |||
} | |||
to { | |||
opacity: 1; | |||
transform: translateX(0); | |||
} | |||
} | |||
.dune-subcategory-item { | |||
animation: fadeInRight 0.3s forwards; | |||
animation-delay: calc(var(--item-index) * 0.05s); | |||
opacity: 0; | |||
} | } | ||
| Line 417: | Line 543: | ||
} | } | ||
.dune-radial-text { | |||
font-size: 12px; | |||
} | |||
.dune-radial- | |||
} | } | ||
Revision as of 01:42, 7 April 2025
/* CSS placed here will be applied to all skins */
/*--------------------------------------------------------------
# DIRECT HEADER FIXES - ADD TO COMMON.CSS
--------------------------------------------------------------*/
/* Hide the "FROM DUNE AWAKENING DB" tagline */
#tagline, h3#tagline {
display: none !important;
}
/* Reduce padding above the title */
h1.title,
.mw-page-title-main,
h1.firstHeading {
margin-top: 0 !important;
padding-top: 5px !important;
line-height: 1.2 !important;
}
/* Adjust content padding */
#content,
.mw-body,
.mw-content-ltr,
.mw-content-rtl {
padding-top: 10px !important;
margin-top: 0 !important;
}
/* Fix spacing for responsive container */
.responsive-container {
margin-top: 0 !important;
}
/* Adjust page title styling */
h1.title {
font-size: 28px !important;
margin-bottom: 10px !important;
}
/* Fix for page margins */
#p-cactions {
margin-top: 0 !important;
}
/* For smaller screens */
@media screen and (max-width: 768px) {
h1.title,
.mw-page-title-main,
h1.firstHeading {
font-size: 24px !important;
margin-bottom: 8px !important;
}
}
/* Simplified CSS for the radial menu */
/* Enhanced Radial Menu CSS with Better Positioning and Popouts */
/* Logo button styling */
.dune-logo-btn {
display: inline-flex;
align-items: center;
justify-content: center;
margin-right: 15px;
cursor: pointer;
transition: transform 0.2s ease;
}
.dune-logo-btn:hover {
transform: scale(1.1);
}
.dune-logo {
width: 24px;
height: 24px;
}
/* Breadcrumb nav styling */
.dune-breadcrumb-nav {
display: flex;
align-items: center;
margin-bottom: 15px;
font-size: 14px;
background-color: rgba(0, 0, 2, 0.7);
border: 1px solid #fce7c8;
padding: 5px 10px;
border-radius: 3px;
}
.dune-breadcrumb-nav a {
color: #fce7c8;
text-decoration: none;
transition: all 0.2s ease;
}
.dune-breadcrumb-nav a:hover {
color: #E3BB7A;
text-shadow: 0 0 5px rgba(200, 161, 101, 0.4);
}
.dune-breadcrumb-separator {
margin: 0 8px;
color: #BBBBBB;
}
/* Radial menu container */
.dune-radial-menu {
position: fixed;
top: 50%;
left: 50%;
transform: translate(-50%, -50%) scale(0);
width: 400px;
height: 400px;
z-index: 9999;
opacity: 0;
visibility: hidden;
transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
pointer-events: none;
}
/* Show the menu when active */
.dune-radial-menu.active {
transform: translate(-50%, -50%) scale(1);
opacity: 1;
visibility: visible;
pointer-events: all;
}
/* Decorative circles for background */
.dune-radial-background {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
pointer-events: none;
}
.dune-radial-circle {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
border: 1px solid rgba(227, 187, 122, 0.3);
border-radius: 50%;
}
.dune-radial-circle.outer {
width: 100%;
height: 100%;
}
.dune-radial-circle.middle {
width: 75%;
height: 75%;
}
.dune-radial-circle.inner {
width: 50%;
height: 50%;
}
/* Center button styling */
.dune-radial-center {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%) scale(0.8);
width: 70px;
height: 70px;
border-radius: 50%;
background-color: rgba(12, 10, 20, 0.8);
border: 2px solid #fce7c8;
display: flex;
align-items: center;
justify-content: center;
overflow: hidden;
transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
opacity: 0;
z-index: 10;
text-decoration: none;
}
.dune-radial-center.animated {
opacity: 1;
transform: translate(-50%, -50%) scale(1);
}
/* Radial item container and positioning */
.dune-radial-item-container {
position: absolute;
transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
opacity: 0;
transform: scale(0.8);
}
.dune-radial-item-container.animated {
opacity: 1;
transform: scale(1);
}
/* Radial item styling */
.dune-radial-item {
display: flex;
align-items: center;
justify-content: center;
width: 60px;
height: 60px;
background-color: rgba(12, 10, 20, 0.8);
border: 2px solid #fce7c8;
border-radius: 50%;
overflow: hidden;
transition: all 0.2s ease;
cursor: pointer;
text-decoration: none;
position: relative;
}
/* Text inside radial items */
.dune-radial-text {
color: #fce7c8;
font-size: 14px;
font-weight: bold;
text-align: center;
text-shadow: 0 1px 3px rgba(0, 0, 0, 0.8);
}
/* Selected state for radial items */
.dune-radial-item.selected {
border-color: #ffffff;
box-shadow: 0 0 15px rgba(255, 255, 255, 0.5);
transform: scale(1.1);
}
/* Hover effects */
.dune-radial-item:hover,
.dune-radial-center:hover {
border-color: #E3BB7A;
box-shadow: 0 0 15px rgba(200, 161, 101, 0.6);
transform: scale(1.1);
}
/* Active effect for when an item is clicked */
.dune-radial-item:active,
.dune-radial-center:active {
transform: scale(0.95);
}
/* PRECISE POSITIONING - Using calculated coordinates */
/* Polar coordinate positioning */
/* North position */
.dune-radial-item-container.north {
top: 10px;
left: 50%;
transform: translateX(-50%) scale(0.8);
}
.dune-radial-item-container.north.animated {
transform: translateX(-50%) scale(1);
}
/* Northeast position */
.dune-radial-item-container.northeast {
top: 25%;
right: 15%;
}
/* East position */
.dune-radial-item-container.east {
top: 50%;
right: 10px;
transform: translateY(-50%) scale(0.8);
}
.dune-radial-item-container.east.animated {
transform: translateY(-50%) scale(1);
}
/* Southeast position */
.dune-radial-item-container.southeast {
bottom: 25%;
right: 15%;
}
/* South position */
.dune-radial-item-container.south {
bottom: 10px;
left: 50%;
transform: translateX(-50%) scale(0.8);
}
.dune-radial-item-container.south.animated {
transform: translateX(-50%) scale(1);
}
/* Southwest position */
.dune-radial-item-container.southwest {
bottom: 25%;
left: 15%;
}
/* West position */
.dune-radial-item-container.west {
top: 50%;
left: 10px;
transform: translateY(-50%) scale(0.8);
}
.dune-radial-item-container.west.animated {
transform: translateY(-50%) scale(1);
}
/* Northwest position */
.dune-radial-item-container.northwest {
top: 25%;
left: 15%;
}
/* Tooltip styling */
.dune-radial-tooltip {
position: absolute;
background-color: rgba(0, 0, 2, 0.9);
border: 1px solid #fce7c8;
padding: 4px 10px;
border-radius: 4px;
color: #fce7c8;
font-size: 12px;
font-weight: bold;
white-space: nowrap;
opacity: 0;
visibility: hidden;
transition: opacity 0.2s ease, transform 0.2s ease;
pointer-events: none;
z-index: 10002;
transform: translateY(5px);
}
.dune-radial-item:hover .dune-radial-tooltip,
.dune-radial-center:hover .dune-radial-tooltip {
opacity: 1;
visibility: visible;
transform: translateY(0);
}
/* Tooltip positions depend on item position */
.dune-radial-item-container.north .dune-radial-tooltip {
bottom: 100%;
left: 50%;
transform: translateX(-50%);
margin-bottom: 8px;
}
.dune-radial-item-container.northeast .dune-radial-tooltip,
.dune-radial-item-container.northwest .dune-radial-tooltip {
bottom: 100%;
left: 50%;
transform: translateX(-50%);
margin-bottom: 8px;
}
.dune-radial-item-container.east .dune-radial-tooltip,
.dune-radial-item-container.west .dune-radial-tooltip {
top: 50%;
transform: translateY(-50%);
margin-left: 8px;
}
.dune-radial-item-container.east .dune-radial-tooltip {
left: 100%;
}
.dune-radial-item-container.west .dune-radial-tooltip {
right: 100%;
}
.dune-radial-item-container.south .dune-radial-tooltip,
.dune-radial-item-container.southeast .dune-radial-tooltip,
.dune-radial-item-container.southwest .dune-radial-tooltip {
top: 100%;
left: 50%;
transform: translateX(-50%);
margin-top: 8px;
}
.dune-radial-center .dune-radial-tooltip {
bottom: 100%;
left: 50%;
transform: translateX(-50%);
margin-bottom: 8px;
}
/* Subcategory popout container */
.dune-subcategory-container {
position: absolute;
width: 200px;
background-color: rgba(12, 10, 20, 0.9);
border: 2px solid #fce7c8;
border-radius: 6px;
z-index: 10001;
opacity: 0;
visibility: hidden;
transform: scale(0.95);
transition: all 0.2s ease;
overflow: hidden;
}
.dune-subcategory-container.active {
opacity: 1;
visibility: visible;
transform: scale(1);
}
/* Subcategory header */
.dune-subcategory-header {
background-color: rgba(200, 161, 101, 0.2);
color: #fce7c8;
font-size: 14px;
font-weight: bold;
padding: 8px 12px;
border-bottom: 1px solid rgba(200, 161, 101, 0.3);
}
/* Subcategory items list */
.dune-subcategory-items {
padding: 8px 0;
}
/* Individual subcategory item */
.dune-subcategory-item {
display: block;
padding: 6px 12px;
color: #fce7c8;
text-decoration: none;
transition: all 0.1s ease;
}
.dune-subcategory-item:hover {
background-color: rgba(200, 161, 101, 0.2);
padding-left: 16px;
}
/* Subcategory item name */
.dune-subcategory-name {
font-size: 13px;
}
/* Subcategory footer */
.dune-subcategory-footer {
padding: 8px 12px;
border-top: 1px solid rgba(200, 161, 101, 0.3);
text-align: center;
}
/* View all link */
.dune-subcategory-all {
color: #E3BB7A;
font-size: 12px;
text-decoration: none;
}
.dune-subcategory-all:hover {
text-decoration: underline;
}
/* Overlay styling */
.dune-radial-overlay {
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: rgba(0, 0, 0, 0.7);
backdrop-filter: blur(3px);
z-index: 9998;
opacity: 0;
visibility: hidden;
transition: opacity 0.3s ease, visibility 0.3s ease;
}
.dune-radial-overlay.active {
opacity: 1;
visibility: visible;
}
/* Basic header fixes */
h3#tagline {
display: none !important;
}
h1.title,
.mw-page-title-main,
h1.firstHeading {
margin-top: 0 !important;
padding-top: 5px !important;
margin-bottom: 10px !important;
}
/* Add subtle pulsing animation to center button */
@keyframes pulse {
0% {
box-shadow: 0 0 0 0 rgba(200, 161, 101, 0.4);
}
70% {
box-shadow: 0 0 0 10px rgba(200, 161, 101, 0);
}
100% {
box-shadow: 0 0 0 0 rgba(200, 161, 101, 0);
}
}
.dune-radial-center.animated {
animation: pulse 2s infinite;
}
/* Animation for subcategory items */
@keyframes fadeInRight {
from {
opacity: 0;
transform: translateX(-10px);
}
to {
opacity: 1;
transform: translateX(0);
}
}
.dune-subcategory-item {
animation: fadeInRight 0.3s forwards;
animation-delay: calc(var(--item-index) * 0.05s);
opacity: 0;
}
/* Responsive adjustments */
@media (max-width: 640px) {
.dune-radial-menu {
width: 300px;
height: 300px;
}
.dune-radial-item {
width: 50px;
height: 50px;
}
.dune-radial-center {
width: 60px;
height: 60px;
}
.dune-radial-text {
font-size: 12px;
}
}