Files
wow-item-generator/wow-item-scaler-web/css/wow-theme.css
2025-09-16 23:15:02 -04:00

772 lines
20 KiB
CSS

/* Araxia Online - Wrath of the Lich King Theme */
:root {
--araxia-primary: #11111f; /* Deep navy from Araxia */
--araxia-text: #f8f8ff; /* Ghost white from Araxia */
--wotlk-ice-blue: #4fc3f7; /* Frost blue accent */
--wotlk-ice-light: #81d4fa; /* Light ice blue */
--wotlk-ice-dark: #0288d1; /* Dark ice blue */
--wotlk-frost: #b3e5fc; /* Frost white-blue */
--wotlk-shadow: #1a237e; /* Deep shadow blue */
--wow-purple: #a335ee; /* Epic purple (unchanged) */
--wow-orange: #ff8000; /* Legendary orange (unchanged) */
--wow-green: #1eff00; /* Uncommon green (unchanged) */
--wow-red: #ff0000; /* Error red (unchanged) */
--wow-bg-dark: var(--araxia-primary);
--wow-bg-panel: #1e1e3f; /* Slightly lighter navy */
--wow-bg-card: #252547; /* Card background - navy tinted */
--wow-border: #4fc3f7; /* Ice blue borders */
--wow-border-primary: var(--wotlk-ice-blue);
--wow-text-primary: var(--araxia-text);
--wow-text-secondary: var(--wotlk-frost);
--wow-text-muted: #7986cb; /* Muted ice blue */
}
/* Background with Araxia/WotLK ice-themed layers and mage imagery */
/* Body and main container for sticky footer */
body.wow-bg {
min-height: 100vh;
display: flex;
flex-direction: column;
background:
/* Frost crystal pattern overlay */
radial-gradient(circle at 25% 25%, rgba(79, 195, 247, 0.06) 0%, transparent 50%),
radial-gradient(circle at 75% 75%, rgba(129, 212, 250, 0.04) 0%, transparent 50%),
radial-gradient(circle at 50% 10%, rgba(26, 35, 126, 0.05) 0%, transparent 60%),
/* CSS-based frost/ice landscape simulation */
radial-gradient(ellipse at 30% 20%, rgba(179, 229, 252, 0.1) 0%, transparent 40%),
radial-gradient(ellipse at 70% 80%, rgba(26, 35, 126, 0.08) 0%, transparent 50%),
/* Mountain/landscape silhouettes */
linear-gradient(180deg,
transparent 0%,
transparent 60%,
rgba(79, 195, 247, 0.05) 65%,
rgba(129, 212, 250, 0.08) 75%,
rgba(17, 17, 31, 0.3) 85%,
rgba(37, 37, 71, 0.6) 100%
),
/* Enhanced CSS frost landscape simulation */
conic-gradient(from 180deg at 20% 30%,
rgba(79, 195, 247, 0.1) 0deg,
rgba(26, 35, 126, 0.05) 60deg,
rgba(179, 229, 252, 0.08) 120deg,
rgba(79, 195, 247, 0.1) 180deg,
rgba(26, 35, 126, 0.05) 240deg,
rgba(179, 229, 252, 0.08) 300deg,
rgba(79, 195, 247, 0.1) 360deg
),
/* Iceberg/mountain silhouette effect */
radial-gradient(ellipse 800px 400px at 30% 100%,
rgba(37, 37, 71, 0.4) 0%,
rgba(79, 195, 247, 0.1) 40%,
transparent 70%
),
radial-gradient(ellipse 600px 300px at 70% 100%,
rgba(26, 35, 126, 0.3) 0%,
rgba(129, 212, 250, 0.08) 50%,
transparent 80%
),
/* Local images with proper sizing and color filtering */
url('images/wotlk-bg1.jpg'),
url('images/wotlk-bg2.jpg'),
url('images/icecrown-bg.jpg'),
/* Theme matching overlay for images */
linear-gradient(45deg,
rgba(17, 17, 31, 0.85) 0%,
rgba(30, 30, 63, 0.88) 25%,
rgba(17, 17, 31, 0.85) 50%,
rgba(37, 37, 71, 0.88) 75%,
rgba(17, 17, 31, 0.85) 100%
),
/* Base Araxia navy gradient */
linear-gradient(135deg, var(--araxia-primary) 0%, #1e1e3f 30%, var(--araxia-primary) 60%, #252547 100%),
/* Ice crystal texture pattern */
repeating-linear-gradient(
30deg,
transparent,
transparent 3px,
rgba(79, 195, 247, 0.015) 3px,
rgba(79, 195, 247, 0.015) 6px
),
repeating-linear-gradient(
-30deg,
transparent,
transparent 3px,
rgba(129, 212, 250, 0.01) 3px,
rgba(129, 212, 250, 0.01) 6px
);
background-attachment: fixed;
background-size:
1000px 1000px,
800px 800px,
600px 600px,
1200px 800px,
800px 600px,
cover,
cover,
cover,
cover,
cover,
/* Image sizing with proper aspect ratio maintenance */
cover,
cover,
cover,
cover,
cover,
6px 6px,
6px 6px;
background-position:
center,
center,
center,
center top,
center bottom,
center,
center,
center,
center,
center,
/* Image positioning for best visual impact */
center center,
left center,
right center,
center,
center,
center,
center;
background-repeat: no-repeat;
color: var(--wow-text-primary);
font-family: 'Cinzel', serif;
position: relative;
/* Color adjustment filter for better theme matching */
filter: hue-rotate(-10deg) saturate(1.1) brightness(0.95);
}
/* Main content area that pushes footer down */
main {
flex: 1;
}
/* Add subtle frost animated effects */
.wow-bg::before {
content: '';
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background:
radial-gradient(circle at 20% 20%, rgba(79, 195, 247, 0.03) 0%, transparent 30%),
radial-gradient(circle at 80% 80%, rgba(129, 212, 250, 0.02) 0%, transparent 40%),
radial-gradient(circle at 60% 60%, rgba(26, 35, 126, 0.02) 0%, transparent 50%);
animation: wow-frost-glow 12s ease-in-out infinite alternate;
pointer-events: none;
z-index: -1;
}
@keyframes wow-frost-glow {
0% { opacity: 0.4; transform: scale(1) rotate(0deg); }
100% { opacity: 0.8; transform: scale(1.03) rotate(0.5deg); }
}
/* Header with Araxia/WotLK ice theme */
.wow-header {
background:
/* Frost border pattern */
linear-gradient(90deg, transparent 0%, rgba(79, 195, 247, 0.15) 20%, rgba(79, 195, 247, 0.25) 50%, rgba(79, 195, 247, 0.15) 80%, transparent 100%),
/* Ice texture */
linear-gradient(180deg, #252547 0%, #1e1e3f 20%, #2a2a52 40%, #1e1e3f 60%, #252547 100%),
/* Crystal-like pattern */
repeating-linear-gradient(45deg, transparent, transparent 1px, rgba(79, 195, 247, 0.03) 1px, rgba(79, 195, 247, 0.03) 2px);
border-image: linear-gradient(90deg, transparent, var(--wotlk-ice-blue), transparent) 1;
position: relative;
overflow: hidden;
}
.wow-header::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 2px;
background: linear-gradient(90deg, transparent, var(--wotlk-ice-blue), transparent);
box-shadow: 0 0 5px rgba(79, 195, 247, 0.4);
}
.wow-header::after {
content: '';
position: absolute;
bottom: 0;
left: 50%;
transform: translateX(-50%);
width: 200px;
height: 3px;
background: linear-gradient(90deg, transparent, var(--wotlk-ice-blue), var(--wotlk-ice-light), var(--wotlk-ice-blue), transparent);
box-shadow: 0 0 15px rgba(79, 195, 247, 0.6);
}
.wow-logo-container {
text-align: center;
}
.araxia-logo {
max-width: 120px;
height: auto;
filter: drop-shadow(0 0 10px rgba(79, 195, 247, 0.4));
transition: all 0.3s ease;
}
.araxia-logo:hover {
filter: drop-shadow(0 0 20px rgba(79, 195, 247, 0.8));
transform: scale(1.05);
}
.wow-server-name {
color: var(--wotlk-ice-light);
font-size: 0.9rem;
font-weight: 600;
text-transform: uppercase;
letter-spacing: 1px;
margin-top: 0.25rem;
text-shadow: 0 0 10px rgba(129, 212, 250, 0.6);
}
.wow-title {
font-family: 'Uncial Antiqua', serif;
color: var(--wotlk-ice-blue);
text-shadow:
2px 2px 4px rgba(0, 0, 0, 0.9),
0 0 20px rgba(79, 195, 247, 0.8),
0 0 40px rgba(129, 212, 250, 0.4);
letter-spacing: 2px;
position: relative;
display: inline-block;
}
.wow-title::before {
content: '❄';
position: absolute;
left: -2rem;
top: 50%;
transform: translateY(-50%);
color: var(--wotlk-ice-light);
font-size: 0.8em;
text-shadow: 0 0 15px rgba(129, 212, 250, 0.9);
animation: wow-ice-pulse 4s ease-in-out infinite;
}
.wow-title::after {
content: '❄';
position: absolute;
right: -2rem;
top: 50%;
transform: translateY(-50%) rotate(45deg);
color: var(--wotlk-ice-light);
font-size: 0.8em;
text-shadow: 0 0 15px rgba(129, 212, 250, 0.9);
animation: wow-ice-pulse 4s ease-in-out infinite reverse;
}
@keyframes wow-ice-pulse {
0%, 100% { opacity: 0.7; transform: translateY(-50%) scale(1) rotate(0deg); }
50% { opacity: 1; transform: translateY(-50%) scale(1.2) rotate(15deg); }
}
.wow-subtitle {
color: var(--wow-text-secondary);
font-style: italic;
margin-top: -5px;
}
/* Panels */
.wow-panel {
background:
/* Ornate corner decorations */
radial-gradient(circle at 0% 0%, rgba(255, 209, 0, 0.1) 0%, transparent 15%),
radial-gradient(circle at 100% 0%, rgba(255, 209, 0, 0.1) 0%, transparent 15%),
radial-gradient(circle at 0% 100%, rgba(255, 209, 0, 0.1) 0%, transparent 15%),
radial-gradient(circle at 100% 100%, rgba(255, 209, 0, 0.1) 0%, transparent 15%),
/* Stone-like texture */
linear-gradient(135deg, rgba(26, 26, 26, 0.95) 0%, rgba(30, 30, 30, 0.98) 50%, rgba(22, 22, 22, 0.95) 100%),
/* Subtle pattern */
repeating-linear-gradient(0deg, transparent, transparent 1px, rgba(255, 255, 255, 0.01) 1px, rgba(255, 255, 255, 0.01) 2px);
border: 2px solid var(--wow-border);
border-radius: 8px;
box-shadow:
0 8px 32px rgba(0, 0, 0, 0.6),
inset 0 1px 0 rgba(255, 209, 0, 0.1),
inset 0 -1px 0 rgba(0, 0, 0, 0.5);
overflow: hidden;
position: relative;
}
.wow-panel::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background:
linear-gradient(45deg, transparent 48%, rgba(255, 209, 0, 0.05) 49%, rgba(255, 209, 0, 0.05) 51%, transparent 52%),
linear-gradient(-45deg, transparent 48%, rgba(255, 209, 0, 0.03) 49%, rgba(255, 209, 0, 0.03) 51%, transparent 52%);
pointer-events: none;
}
.wow-panel-header {
background:
/* Ornate header pattern */
linear-gradient(90deg,
rgba(255, 209, 0, 0.05) 0%,
rgba(255, 209, 0, 0.1) 10%,
rgba(255, 209, 0, 0.08) 50%,
rgba(255, 209, 0, 0.1) 90%,
rgba(255, 209, 0, 0.05) 100%
),
linear-gradient(90deg, var(--wow-bg-card), var(--wow-bg-panel));
border-bottom: 2px solid var(--wow-border-gold);
padding: 1rem 1.5rem;
display: flex;
justify-content: space-between;
align-items: center;
position: relative;
}
.wow-panel-header::before {
content: '';
position: absolute;
top: 50%;
left: 1rem;
transform: translateY(-50%);
width: 8px;
height: 8px;
background: radial-gradient(circle, var(--wow-gold), var(--wow-gold-dark));
border-radius: 50%;
box-shadow: 0 0 8px rgba(255, 209, 0, 0.6);
}
.wow-panel-header::after {
content: '';
position: absolute;
top: 50%;
right: 1rem;
transform: translateY(-50%);
width: 8px;
height: 8px;
background: radial-gradient(circle, var(--wow-gold), var(--wow-gold-dark));
border-radius: 50%;
box-shadow: 0 0 8px rgba(255, 209, 0, 0.6);
}
.wow-panel-content {
padding: 1.5rem;
}
.wow-section-title {
color: var(--wow-gold);
font-family: 'Uncial Antiqua', serif;
text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.8);
}
/* Form Elements */
.wow-input-group {
display: flex;
flex-direction: column;
}
.wow-label {
color: var(--wow-gold);
font-weight: 600;
margin-bottom: 0.5rem;
font-size: 0.9rem;
text-transform: uppercase;
letter-spacing: 1px;
}
.wow-input,
.wow-select {
background: var(--wow-bg-card);
border: 2px solid var(--wow-border);
border-radius: 4px;
padding: 0.75rem;
color: var(--wow-text-primary);
font-family: 'Cinzel', serif;
transition: all 0.3s ease;
}
.wow-input:focus,
.wow-select:focus {
outline: none;
border-color: var(--wow-gold);
box-shadow: 0 0 10px rgba(255, 209, 0, 0.3);
}
.wow-help-text {
color: var(--wow-text-muted);
font-size: 0.8rem;
margin-top: 0.25rem;
font-style: italic;
}
/* Tabs */
.wow-tab-container {
display: flex;
border-bottom: 2px solid var(--wow-border);
margin-bottom: 1rem;
}
.wow-tab {
background: var(--wow-bg-card);
border: 2px solid var(--wow-border);
border-bottom: none;
padding: 0.75rem 1.5rem;
color: var(--wow-text-secondary);
font-family: 'Cinzel', serif;
font-weight: 600;
cursor: pointer;
transition: all 0.3s ease;
margin-right: 2px;
}
.wow-tab:hover {
background: var(--wow-bg-panel);
color: var(--wow-gold);
}
.wow-tab-active {
background: var(--wow-bg-panel);
color: var(--wow-gold);
border-color: var(--wow-border-gold);
position: relative;
}
.wow-tab-active::after {
content: '';
position: absolute;
bottom: -2px;
left: 0;
right: 0;
height: 2px;
background: var(--wow-gold);
}
/* Buttons */
.wow-button {
background: linear-gradient(135deg, var(--wow-bg-card), var(--wow-bg-panel));
border: 2px solid var(--wow-border);
color: var(--wow-text-primary);
padding: 0.75rem 2rem;
border-radius: 4px;
font-family: 'Cinzel', serif;
font-weight: 600;
cursor: pointer;
transition: all 0.3s ease;
position: relative;
overflow: hidden;
}
.wow-button::before {
content: '';
position: absolute;
top: 0;
left: -100%;
width: 100%;
height: 100%;
background: linear-gradient(90deg, transparent, rgba(255, 209, 0, 0.2), transparent);
transition: left 0.5s ease;
}
.wow-button:hover::before {
left: 100%;
}
.wow-button:hover {
border-color: var(--wow-gold);
box-shadow: 0 0 20px rgba(255, 209, 0, 0.3);
transform: translateY(-2px);
}
.wow-button-primary {
background: linear-gradient(135deg, #2a4d6e, #1e3a52);
border-color: var(--wow-blue);
color: var(--wow-text-primary);
}
.wow-button-primary:hover {
border-color: var(--wow-gold);
background: linear-gradient(135deg, #3a5d7e, #2e4a62);
}
.wow-button-secondary {
background: linear-gradient(135deg, #4a2a6e, #3a1e52);
border-color: var(--wow-purple);
}
.wow-button-secondary:hover {
border-color: var(--wow-gold);
background: linear-gradient(135deg, #5a3a7e, #4a2e62);
}
.wow-button-small {
padding: 0.5rem 1rem;
font-size: 0.85rem;
}
.wow-button-text {
position: relative;
z-index: 1;
}
/* Search Results */
.wow-search-results {
background: var(--wow-bg-card);
border: 2px solid var(--wow-border);
border-top: none;
max-height: 200px;
overflow-y: auto;
position: absolute;
width: 100%;
z-index: 10;
border-radius: 0 0 4px 4px;
}
.wow-search-item {
padding: 0.75rem;
cursor: pointer;
border-bottom: 1px solid var(--wow-border);
display: flex;
align-items: center;
gap: 0.75rem;
transition: background 0.2s ease;
}
.wow-search-item:hover {
background: var(--wow-bg-panel);
}
.wow-search-item:last-child {
border-bottom: none;
}
/* Item Cards */
.wow-item-card {
background: var(--wow-bg-card);
border: 2px solid var(--wow-border);
border-radius: 8px;
padding: 1.5rem;
margin-bottom: 1rem;
position: relative;
overflow: hidden;
}
.wow-item-card::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 4px;
background: linear-gradient(90deg, transparent, var(--wow-gold), transparent);
}
.wow-item-epic {
border-color: var(--wow-purple);
}
.wow-item-legendary {
border-color: var(--wow-orange);
}
.wow-item-comparison {
display: grid;
grid-template-columns: 1fr auto 1fr;
gap: 2rem;
align-items: center;
}
.wow-item-before,
.wow-item-after {
text-align: center;
}
.wow-item-arrow {
font-size: 2rem;
color: var(--wow-gold);
text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.8);
}
.wow-item-image {
width: 64px;
height: 64px;
border: 2px solid var(--wow-border);
border-radius: 4px;
margin: 0 auto 1rem;
background: var(--wow-bg-panel);
}
.wow-item-name {
font-weight: 700;
font-size: 1.1rem;
margin-bottom: 0.5rem;
}
.wow-item-stats {
font-size: 0.9rem;
line-height: 1.5;
}
.wow-stat-line {
margin-bottom: 0.25rem;
}
.wow-stat-improved {
color: var(--wow-green);
}
.wow-stat-decreased {
color: var(--wow-red);
}
/* Quality Colors */
.quality-poor { color: #9d9d9d; }
.quality-common { color: #ffffff; }
.quality-uncommon { color: #1eff00; }
.quality-rare { color: #0070dd; }
.quality-epic { color: var(--wow-purple); }
.quality-legendary { color: var(--wow-orange); }
/* Loading Animation */
.wow-loading {
text-align: center;
padding: 3rem;
}
.wow-spinner {
width: 60px;
height: 60px;
border: 4px solid var(--wow-border);
border-top: 4px solid var(--wow-gold);
border-radius: 50%;
animation: wow-spin 1s linear infinite;
margin: 0 auto 1rem;
}
.wow-loading-text {
color: var(--wow-gold);
font-size: 1.1rem;
font-weight: 600;
animation: wow-pulse 1.5s ease-in-out infinite;
}
@keyframes wow-spin {
0% { transform: rotate(0deg); }
100% { transform: rotate(360deg); }
}
@keyframes wow-pulse {
0%, 100% { opacity: 0.7; }
50% { opacity: 1; }
}
/* Footer - always at bottom */
.wow-footer {
background: var(--wow-bg-panel);
border-top: 2px solid var(--wow-border);
margin-top: auto; /* This pushes footer to bottom */
flex-shrink: 0; /* Prevent footer from shrinking */
position: relative;
z-index: 10;
}
.wow-footer::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 2px;
background: linear-gradient(90deg, transparent, var(--wotlk-ice-blue), transparent);
box-shadow: 0 0 10px rgba(79, 195, 247, 0.4);
}
.wow-footer-text {
color: var(--wow-text-muted);
font-size: 0.9rem;
}
/* Frost/ice particle effects */
.wow-bg::after {
content: '';
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-image:
radial-gradient(2px 2px at 20px 30px, rgba(79, 195, 247, 0.4), transparent),
radial-gradient(1px 1px at 40px 70px, rgba(129, 212, 250, 0.3), transparent),
radial-gradient(3px 3px at 90px 40px, rgba(179, 229, 252, 0.3), transparent),
radial-gradient(1px 1px at 130px 80px, rgba(79, 195, 247, 0.4), transparent),
radial-gradient(2px 2px at 160px 30px, rgba(129, 212, 250, 0.25), transparent),
radial-gradient(1px 1px at 180px 60px, rgba(26, 35, 126, 0.3), transparent);
background-repeat: repeat;
background-size: 250px 120px;
animation: wow-frost-particles 25s linear infinite;
pointer-events: none;
z-index: -1;
opacity: 0.7;
}
@keyframes wow-frost-particles {
0% { transform: translateY(0) translateX(0) rotate(0deg); }
100% { transform: translateY(-120px) translateX(30px) rotate(180deg); }
}
/* Enhanced section titles with ice decorative elements */
.wow-section-title::before {
content: '❖';
margin-right: 0.5rem;
color: var(--wotlk-ice-light);
text-shadow: 0 0 15px rgba(129, 212, 250, 0.9);
animation: wow-ice-gem-glow 3s ease-in-out infinite alternate;
}
.wow-section-title::after {
content: '❖';
margin-left: 0.5rem;
color: var(--wotlk-ice-light);
text-shadow: 0 0 15px rgba(129, 212, 250, 0.9);
animation: wow-ice-gem-glow 3s ease-in-out infinite alternate-reverse;
}
@keyframes wow-ice-gem-glow {
0% { opacity: 0.6; transform: scale(1) rotate(0deg); }
100% { opacity: 1; transform: scale(1.3) rotate(45deg); }
}
/* Responsive Design */
@media (max-width: 768px) {
.wow-item-comparison {
grid-template-columns: 1fr;
gap: 1rem;
}
.wow-item-arrow {
transform: rotate(90deg);
font-size: 1.5rem;
}
.wow-tab-container {
flex-direction: column;
}
.wow-tab {
margin-right: 0;
margin-bottom: 2px;
}
.wow-title::before,
.wow-title::after {
display: none; /* Hide sword decorations on mobile */
}
}