MediaWiki:Common.css

From Ragnafied Wiki
Revision as of 20:48, 30 September 2025 by Putotine (RID-12) (talk | contribs)

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)
  • Internet Explorer / Edge: Hold Ctrl while clicking Refresh, or press Ctrl-F5
  • Opera: Press Ctrl-F5.
/* --- GLOBAL CONTAINER & COLORS --- */
.ragnawiki-modern {
    max-width: 1200px;
    margin: 20px auto;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
    line-height: 1.5;
}

/* Color Utilities */
.text-primary { color: #3498db !important; font-weight: 700; } /* Blue */
.text-success { color: #2ecc71 !important; font-weight: 700; } /* Green */
.text-danger { color: #e74c3c !important; font-weight: 700; } /* Red */
.text-warning { color: #f39c12 !important; font-weight: 700; } /* Orange */
.text-purple { color: #9b59b6 !important; font-weight: 700; } /* Purple */
.text-muted { color: #7f8c8d !important; font-weight: 700; } /* Gray/Muted */

/* --- HERO SECTION --- */
.wiki-hero {
    background: linear-gradient(135deg, #2c3e50 0%, #34495e 100%); /* Dark Blue Gradient */
    color: white;
    text-align: center;
    padding: 30px 20px;
    margin-bottom: 30px;
    border-radius: 12px;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.3);
}
.wiki-hero-title {
    font-size: 2.8em;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 3px;
    margin-bottom: 5px;
}
.wiki-hero-subtitle {
    font-size: 1.3em;
    font-style: italic;
    opacity: 0.85;
    margin-bottom: 20px;
}
.hero-image img {
    border-radius: 50%;
    border: 6px solid #2ecc71; /* Green Accent Border */
    box-shadow: 0 0 20px rgba(46, 204, 113, 0.6);
    transition: transform 0.3s ease;
}
.hero-image img:hover {
    transform: scale(1.05);
}


/* --- INFO & NAVIGATION GRIDS --- */
.info-grid, .nav-grid {
    display: flex;
    gap: 20px;
    margin-bottom: 30px;
    align-items: stretch; /* Ensure cards in a row are the same height */
}

/* Info Cards */
.info-card {
    flex: 1; /* Both cards take up equal space */
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    overflow: hidden;
    background-color: white;
    display: flex;
    flex-direction: column;
}
.card-header {
    font-size: 1.3em;
    font-weight: 700;
    color: white;
    padding: 12px 15px;
    text-align: left;
}
.server-card .card-header { background-color: #3498db; }
.rates-card .card-header { background-color: #e67e22; }

.card-content {
    padding: 15px;
    flex-grow: 1; /* Allows content to push footer/notes down */
}

/* Compact List Style */
.compact-list {
    display: grid;
    /* Two columns for dense display on large screens */
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 5px 15px;
    margin-bottom: 15px;
}
.list-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 5px 0;
    border-bottom: 1px dashed #ecf0f1;
}
.list-row:last-child {
    border-bottom: none;
}
.list-icon {
    font-size: 1.1em;
    margin-right: 8px;
}
.list-label {
    flex-grow: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.list-value {
    text-align: right;
    margin-left: 10px;
}

/* Notes Box Style */
.notes-box {
    border: 2px solid #f39c12;
    border-radius: 6px;
    background-color: #fffaf0;
    margin-top: 15px;
    overflow: hidden;
}
.notes-title {
    font-weight: 700;
    background-color: #f39c12;
    color: white;
    padding: 8px 10px;
    font-size: 1em;
}
.notes-content {
    padding: 10px;
    font-size: 0.95em;
}
.notes-content ul {
    list-style: disc;
    margin: 0;
    padding-left: 20px;
}


/* --- QUICK NAVIGATION --- */
.section-title {
    font-size: 1.8em;
    font-weight: 700;
    color: #2c3e50;
    padding: 10px 0;
    margin: 20px 0 15px 0;
    border-bottom: 3px solid #3498db;
}

.nav-card {
    flex: 1; /* Three equal columns */
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    overflow: hidden;
    background-color: white;
}
.nav-header {
    font-size: 1.2em;
    font-weight: 700;
    color: white;
    padding: 10px 12px;
    text-align: center;
}
.beginners-nav .nav-header { background-color: #2ecc71; } /* Green */
.features-nav .nav-header { background-color: #e74c3c; } /* Red */
.guides-nav .nav-header { background-color: #9b59b6; } /* Purple */

.nav-content {
    padding: 10px 15px;
}

.nav-item {
    display: flex;
    align-items: center;
    padding: 8px 0;
    border-bottom: 1px dashed #f0f0f0;
}
.nav-item:last-child {
    border-bottom: none;
}
.nav-icon {
    width: 30px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 10px;
}
.nav-icon img {
    border-radius: 3px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}
.nav-text {
    flex-grow: 1;
    font-weight: 500;
}
.nav-text a {
    text-decoration: none;
    color: #34495e;
    transition: color 0.2s;
}
.nav-text a:hover {
    color: #3498db;
    text-decoration: underline;
}
.nav-addon { /* For the TDB tag */
    font-size: 0.8em;
    color: #e74c3c;
    font-weight: 700;
    margin-left: 8px;
    padding: 2px 5px;
    border: 1px solid #e74c3c;
    border-radius: 3px;
}

/* --- RESPONSIVE DESIGN (FOR PHONES/SMALL TABLETS) --- */
@media screen and (max-width: 768px) {
    .ragnawiki-modern {
        margin: 10px;
    }
    .info-grid, .nav-grid {
        flex-direction: column; /* Stack cards vertically */
        gap: 15px;
    }
    .info-card, .nav-card {
        flex: none; /* Disable flex growth */
        width: 100%;
    }
    .wiki-hero-title {
        font-size: 2em;
    }
    .compact-list {
        /* Single column for narrow screens */
        grid-template-columns: 1fr;
    }
}

/* --- ICON STYLING FOR EXTERNAL IMAGES (Add to Common.css) --- */

/* Base style for all icon spans that will hold an external image */
.nav-icon {
    /* Keep the dimensions consistent for all icons */
    width: 24px;
    height: 24px;
    background-size: contain; /* Ensure the image fits within the 24x24 box */
    background-repeat: no-repeat;
    background-position: center center;
    
    /* Ensure internal file images are also styled correctly */
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
    border-radius: 3px;
}

/* Specific background-image definitions for each external icon */
.icon-external-ragna {
    background-image: url('https://ragnafied.net/themes/simple/img/logo.png');
}
.icon-external-greed {
    background-image: url('https://irowiki.org/w/images/0/04/Greed.png');
}
.icon-external-longing {
    background-image: url('https://irowiki.org/w/images/e/e5/Longing_for_Freedom.png');
}
.icon-external-vip {
    background-image: url('https://irowiki.org/w/images/0/0b/I_MystAmp.png');
}
.icon-external-smith {
    background-image: url('https://irowiki.org/w/images/2/20/Smith_Axe.png');
}
.icon-external-4thjob {
    background-image: url('https://static.divine-pride.net/images/skill/5201.png');
}
.icon-external-exceed {
    background-image: url('https://irowiki.org/w/images/a/ae/I_Exceed_Break.png');
}
.icon-external-guard {
    background-image: url('https://irowiki.org/w/images/f/f3/I_Guard.png');
}
.icon-external-trouble {
    background-image: url('https://muhro.eu/flux/data/items/icons/100381.png');
}
.icon-external-illusion {
    background-image: url('https://static.divine-pride.net/images/items/item/25723.png');
}
.icon-external-sage {
    background-image: url('https://irowiki.org/images/db/item/1000103.png');
}
.icon-external-prayer {
    background-image: url('https://irowiki.org/images/db/item/1000405.png');
}
.icon-external-issgard {
    background-image: url('https://irowiki.org/images/db/item/1000608.png');
}
.icon-external-immortal {
    background-image: url('https://muhro.eu/flux/data/items/icons/1001217.png');
}

/* Adjustments for images that are still wikitext (File:) */
.nav-icon File { /* Targeting the image element itself */    width: 24px;    height: 24px;    /* Other styling if needed */}

/* --- Compact List Style (FIXED ALIGNMENT) --- */
.compact-list {
    /* Change from grid to vertical flex to ensure clean vertical stacking and alignment */
    display: flex;
    flex-direction: column;
    gap: 0;
    margin-bottom: 15px;
}

.list-row {
    /* Use Flexbox for all elements in the row */
    display: flex;
    align-items: center; /* Crucial: Vertically center all content (icon, label, value) */
    justify-content: space-between; /* Crucial: Push the label/icon left and the value right */
    padding: 8px 0; /* Good vertical spacing */
    border-bottom: 1px dashed #ecf0f1;
    font-size: 1em;
}
.list-row:last-child {
    border-bottom: none;
}

.list-icon {
    /* Ensures the emoji/icon is small and centered */
    width: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.1em;
    margin-right: 12px; /* Increased space between icon and label */
    flex-shrink: 0; /* Prevents icon from shrinking */
}

.list-label {
    flex-grow: 1; /* Allows the label to take up remaining space and push the value */
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-weight: 500;
}

.list-value {
    flex-shrink: 0; /* Prevents the value text (like 1000x) from being compressed */
    text-align: right;
    margin-left: 15px;
}