MediaWiki:Common.css

Revision as of 18:17, 28 November 2024 by MarkWD (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

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.
/* CSS placed here will be applied to all skins */

/* TABLE OF COLOR VALUES FOR ALL ELEMENTS */

:root {
    /* General colors */
    --lingo-underline-color: #cccccc;
    --panel-link-hover-color: #62a376;
    --flowing-numbers-color: rgba(255, 255, 255, 0.3);
    --top-box-bg-color: #58846a;
    --top-box-link-color: #F8F9FA;
    --top-box-link-hover-color: #68d62c;
    --top-box-shadow-color: rgba(0, 64, 0, 0.5);
    --section-header-bg-color: #58846a;
    --section-header-text-color: #f5fcf7;
    --header-fx-drop-shadow: #003a13;
    --header-fx-shadow-blur: rgba(0, 40, 0, 0.4);

    /* Day mode colors */
    --colored-box-bg-day: #f1f6f3;
    --colored-box-text-color-day: #202122;
    
    --warning-bg-color-day: #FFFDF4;
    --warning-border-color-day: #d48900;
    --warning-text-color-day: #d48900;

    --signal-bg-color-day: #f4fcff;
    --signal-border-color-day: #0092D4;
    --signal-text-color-day: #0092D4;

    --danger-bg-color-day: #fff4f4;
    --danger-border-color-day: #D40000;
    --danger-text-color-day: #D40000;

    --atheneum-border-color-day: #61a376;
    --atheneum-header-bg-day: #f1f6f3;
    --atheneum-cell-bg-day: #f9f9f9;
    --atheneum-text-color-day: #101418;

    /* Night mode colors */
    --colored-box-bg-night: #1a1f21;
    --colored-box-text-color-night: #eaecf0;

    --warning-bg-color-night: #4d4b47;
    --warning-border-color-night: #b47900;
    --warning-text-color-night: #ffd700;

    --signal-bg-color-night: #1e3a48;
    --signal-border-color-night: #0077b6;
    --signal-text-color-night: #66c2ff;

    --danger-bg-color-night: #4b2828;
    --danger-border-color-night: #b30000;
    --danger-text-color-night: #ff6666;

    --atheneum-border-color-night: #4a6655;
    --atheneum-header-bg-night: #2d3e36;
    --atheneum-cell-bg-night: #3c4946;
    --atheneum-text-color-night: #F8F9FA;
}

/* ------------------------------------------------------------------------- */

/* WORK IN PROGRESS AND HACKS */

/* Hack for "Confirm account requests" extension boxes permanent dark mode */
.mw-confirmaccount-body-0, ul.mw-confirmaccount-body-0, li.mw-confirmaccount-body-0, table.mw-confirmaccount-body-0, li.mw-confirmaccount-type-0, .mw-confirmaccount-msg, .mw-confirmaccount-bar {
    background: #101418 !important;
    color: white !important;
}

#wpNewBio {
    background-color: #101418 !important;
    color: white !important;
}

/* Hack to hide textual form of the logo */
.mw-logo-wordmark {
    display: none;
}

/* Hack to expand the image form of the logo */
.mw-logo-icon {
    transform: scale(2); /* Scales to 2x the original size */
    padding-top: 14px;
    padding-left: 16px;
}

/* HIGHLIGHTED BOX: Main container */
.icannwiki-colored-box-highlighted {
    padding: 0.5em;
    font-size: 1.05em;
    position: relative;
    border-radius: 8px;
    box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.6); /* Drop shadow */
    color: var(--colored-box-text-color-day); /* Default to day */
    background-color: var(--colored-box-bg-day); /* Default to day */
    overflow: hidden;
    margin-bottom: 1em;
    z-index: 1;
}

/* HIGHLIGHTED BOX: Skin-specific themes */
html.skin-theme-clientpref-day .icannwiki-colored-box-highlighted {
    background-color: var(--colored-box-bg-day);
    color: var(--colored-box-text-color-day);
}

html.skin-theme-clientpref-night .icannwiki-colored-box-highlighted {
    background-color: var(--colored-box-bg-night);
    color: var(--colored-box-text-color-night);
}

/* HIGHLIGHTED BOX: Sheen animation */
.icannwiki-colored-box-highlighted::after {
    content: "";
    position: absolute;
    top: 0;
    left: -60%;
    width: 220%;
    height: 100%;
    background: linear-gradient(
        145deg,
        rgba(88, 132, 106, 0) 10%, /* Start fully transparent */
        rgba(88, 132, 106, 0.4) 40%, /* Peak */
        rgba(88, 132, 106, 0) 80% /* End fully transparent */
    );
    animation: subtleSheen 16s ease-in-out infinite;
    opacity: 0.6; /* Balanced visibility for both day and night modes */
    z-index: 1;
    border-radius: 8px;
}

/* HIGHLIGHTED BOX: Animation Keyframes */
@keyframes subtleSheen {
    0% { transform: translateX(-120%); } /* Start earlier off-screen */
    10% { transform: translateX(-90%); } /* Enter sooner */
    50% { transform: translateX(50%); } /* Peak motion slower */
    100% { transform: translateX(120%); } /* Exit smoothly */
}

/* Main campaign box with a left-aligned image box */
.icannwiki-campaign-box {
    display: flex;
    align-items: center;
    padding: 0.5em;
    background-color: #1c1c1f;
    border-radius: 8px;
    color: #e8e8f0;
    margin-bottom: 0.5em;
}

/* Left rectangular box for images */
.icannwiki-campaign-image-box {
    min-width: 60px;
    height: auto;
    background-color: #333333;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0.25em;
    margin-right: 0.5em;
}

/* Placeholder styling for image inside the image-box */
.icannwiki-campaign-image-box img {
    max-width: 100%;
    height: auto;
    border-radius: 4px;
}

/* Main content area */
.icannwiki-campaign-box .content-text {
    flex-grow: 1; /* Ensures content takes up remaining space */
}

/* ------------------------------------------------------------------------- */

/* UI STYLES */

/* Links affected by the Lingo extension */
.mw-lingo-term {
    text-decoration: underline solid var(--lingo-underline-color);
    text-decoration-thickness: 2px;
}

/* Popup generated when user hovers over a link affected by Lingo */
.qtip-content {
	padding: 8px;
	line-height: 125%;
	font-size: 1.25em;
}

/* Navigation panel on the left side of the main interface */
#mw-panel a {
    font-size: 1.10em;
}

#mw-panel a:hover {
    color: var(--panel-link-hover-color);
    text-decoration: none;
}

/* "Replace text" extension box permanent dark mode */
.ext-replacetext-searchoptions {
    background: #101418 !important;
    color: white !important;
}

.ext-replacetext-searchoptions h4
{
    color: white !important;
}

/* ------------------------------------------------------------------------- */

/* MAIN PAGE STYLES */

/* Remove main page header */
body.page-Main_Page.action-view h1.firstHeading, body.page-Main_Page.action-submit h1.firstHeading
{ display: none; }

/* Top box of the main page */
.icannwiki-top-box {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
    gap: 4px;
    background-color: var(--top-box-bg-color);
    background-image: url('images/b/bd/ICANNWiki-Background-2024-A.svg');
    background-size: cover;
    border-radius: 4px;
    margin-bottom: 4px;
    padding: 4px;
    font-size:0.9em}

/* Hide bullet points */
.icannwiki-top-box ul {
    list-style: none;
    list-style-type: none;
}

/* Changes bullet points to a Unicode character */
.icannwiki-top-box ul li:before {
    background-image: url('/images/8/82/1F4CE.png');
    background-size: 32px 32px;
    display: inline-block;
    vertical-align: middle;
    width: 32px; 
    height: 32px;
    content:"";
}

/* Top box's elements styling */
.icannwiki-top-box ul li {
    font-size: 1.0em;
    margin-bottom: 4px; /* Adjusts the spacing between list items */
}

.icannwiki-top-box a {
    color: var(--top-box-link-color);
    font-weight: bold;
    text-decoration: none;
}

.icannwiki-top-box a:hover {
    color: var(--top-box-link-hover-color);
    text-decoration: none;
}

/* Top box's special effects */
.top-box-fx {
    text-shadow: 2px 2px 4px var(--top-box-shadow-color); /* Shadow blur */
}

/* Header for other boxes in the main page */
.icannwiki-section-header {
    background: var(--section-header-bg-color);
    font-family: sans-serif;
    font-weight: bold;
    font-size: 1.1em;
    text-align: left;
    color: var(--section-header-text-color);
    line-height: 1.5; /* Sets vertical text spacing */
    padding: 0.25em; /* Additional spacing */
    padding-left: 0.5em;
    height: auto; /* Allow height to adjust dynamically */
    border-radius: 5px;
}

/* Colored bounding box for text */
.icannwiki-colored-box {
    padding-left: 1%;
    padding-right: 1%;
    font-size: 1.05em;
}

/* .icannwiki-colored-box AUTOMATIC */
@media screen and (prefers-color-scheme: dark) {
    html.skin-theme-clientpref-os .icannwiki-colored-box {
        background-color: var(--colored-box-bg-night);
        color: var(--colored-box-text-color-night);
    }
}

/* .icannwiki-colored-box DAY */
@media screen {
    html.skin-theme-clientpref-day .icannwiki-colored-box {
        background-color: var(--colored-box-bg-day);
        color: var(--colored-box-text-color-day);
    }
}
/* .icannwiki-colored-box NIGHT */
@media screen {
    html.skin-theme-clientpref-night .icannwiki-colored-box {
        background-color: var(--colored-box-bg-night);
        color: var(--colored-box-text-color-night);
    }
}

/* Main page content box: left */
.icannwiki-half-width-left {
    width: 49%;
    float: left;
}

/* Main page content box: right */
.icannwiki-half-width-right {
    width: 49%;
    float: right;
}

/* Sponsors template */
.icannwiki-sponsors {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
    gap: 4px;
    border-radius: 4px;
    margin-bottom: 4px;
    padding: 8px;
    list-style: none;
    padding: 0;
    margin: 0;
    clear: both;
    justify-content: center;
    background: white;
    margin-bottom: 16px;
}

.icannwiki-sponsors li {
    display: flex;
    justify-content: center;
    align-items: center;
    border: 0px;
    border-radius: 4px;
    padding: 8px;
    height: 140px; /* Adjust as needed */
    box-sizing: border-box;
}

.icannwiki-sponsors li:nth-last-child(-n+3) {
    justify-self: center;
}

.icannwiki-sponsors img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.icannwiki-sponsors ul {
    list-style: none;
    list-style-type: none;
}

/* ------------------------------------------------------------------------- */

/* TEMPLATE STYLES */

/* Warning template */
.icannwiki-warning {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    height: auto;
    width: 60%;
    margin: 0 auto;
    padding: 10px;
    background-color: var(--warning-bg-color-day);
    border: 2px solid var(--warning-border-color-day);
    border-left: 16px solid var(--warning-border-color-day);
}

.icannwiki-warning a {
    font-weight: bold;
    color: var(--warning-text-color-day);
}

/* Signaling template */
.icannwiki-signal {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    height: auto;
    width: 60%;
    margin: 0 auto;
    padding: 10px;
    background-color: var(--signal-bg-color-day);
    border: 2px solid var(--signal-border-color-day);
    border-left: 16px solid var(--signal-border-color-day);
}

.icannwiki-signal a {
    font-weight: bold;
    color: var(--signal-text-color-day);
}

/* Danger template */
.icannwiki-danger {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    height: auto;
    width: 60%;
    margin: 0 auto;
    padding: 10px;
    background-color: var(--danger-bg-color-day);
    border: 2px solid var(--danger-border-color-day);
    border-left: 16px solid var(--danger-border-color-day);
}

.icannwiki-danger a {
    font-weight: bold;
    color: var(--danger-text-color-day);
}

/* .icannwiki-warning, .icannwiki-signal, .icannwiki-danger AUTOMATIC */
@media screen and (prefers-color-scheme: dark) {
    html.skin-theme-clientpref-os .icannwiki-warning {
        background-color: var(--warning-bg-color-night);
        border: 2px solid var(--warning-border-color-night);
        border-left: 16px solid var(--warning-border-color-night);
    }
    html.skin-theme-clientpref-os .icannwiki-warning a {
        color: var(--warning-text-color-night);
    }
    html.skin-theme-clientpref-os .icannwiki-signal {
        background-color: var(--signal-bg-color-night);
        border: 2px solid var(--signal-border-color-night);
        border-left: 16px solid var(--signal-border-color-night);
    }
    html.skin-theme-clientpref-os .icannwiki-signal a {
        color: var(--signal-text-color-night);
    }
    html.skin-theme-clientpref-os .icannwiki-danger {
        background-color: var(--danger-bg-color-night);
        border: 2px solid var(--danger-border-color-night);
        border-left: 16px solid var(--danger-border-color-night);
    }
    html.skin-theme-clientpref-os .icannwiki-danger a {
        color: var(--danger-text-color-night);
    }
}
/* .icannwiki-warning, .icannwiki-signal, .icannwiki-danger DAY */
@media screen {
  html.skin-theme-clientpref-day .icannwiki-warning {
      background-color: var(--warning-bg-color-day);
      border: 2px solid var(--warning-border-color-day);
      border-left: 16px solid var(--warning-border-color-day);
  }
  html.skin-theme-clientpref-day .icannwiki-warning a {
      color: var(--warning-text-color-day);
  }
  html.skin-theme-clientpref-day .icannwiki-signal {
      background-color: var(--signal-bg-color-day);
      border: 2px solid var(--signal-border-color-day);
      border-left: 16px solid var(--signal-border-color-day);
  }
  html.skin-theme-clientpref-day .icannwiki-signal a {
      color: var(--signal-text-color-day);
  }
  html.skin-theme-clientpref-day .icannwiki-danger {
      background-color: var(--danger-bg-color-day);
      border: 2px solid var(--danger-border-color-day);
      border-left: 16px solid var(--danger-border-color-day);
  }
  html.skin-theme-clientpref-day .icannwiki-danger a {
      color: var(--danger-text-color-day);
  }
}
/* .icannwiki-warning, .icannwiki-signal, .icannwiki-danger NIGHT */
@media screen {
  html.skin-theme-clientpref-night .icannwiki-warning {
      background-color: var(--warning-bg-color-night);
      border: 2px solid var(--warning-border-color-night);
      border-left: 16px solid var(--warning-border-color-night);
  }
  html.skin-theme-clientpref-night .icannwiki-warning a {
      color: var(--warning-text-color-night);
  }
  html.skin-theme-clientpref-night .icannwiki-signal {
      background-color: var(--signal-bg-color-night);
      border: 2px solid var(--signal-border-color-night);
      border-left: 16px solid var(--signal-border-color-night);
  }
  html.skin-theme-clientpref-night .icannwiki-signal a {
      color: var(--signal-text-color-night);
  }
  html.skin-theme-clientpref-night .icannwiki-danger {
      background-color: var(--danger-bg-color-night);
      border: 2px solid var(--danger-border-color-night);
      border-left: 16px solid var(--danger-border-color-night);
  }
  html.skin-theme-clientpref-night .icannwiki-danger a {
      color: var(--danger-text-color-night);
  }
}

/* Template:People */
.template-people {
    float: right;
    border: 1px solid darkgray;
    max-width: 160px;
    padding: 5px;
    padding-bottom: 10px;
    margin-left: 10px
}

/* ------------------------------------------------------------------------- */

/* INTERNET GOVERNANCE ATHENEUM */

.atheneum-box {
    border-collapse: collapse;
    border: 1px solid var(--atheneum-border-color-day);
}

.atheneum-box th, .atheneum-box td {
    border: 1px solid var(--atheneum-border-color-day);
}

.atheneum-box th {
    background-color: var(--atheneum-header-bg-day);
    color: var(--atheneum-text-color-day);
    text-transform: uppercase;
    padding: 8px;
}

.atheneum-box td {
    background-color: var(--atheneum-cell-bg-day);
    color: var(--atheneum-text-color-day);
    padding: 4px 10px;
}

/* .atheneum-box AUTOMATIC */
@media screen and (prefers-color-scheme: dark) {
    html.skin-theme-clientpref-os .atheneum-box {
        border: 1px solid var(--atheneum-border-color-night);
    }
    html.skin-theme-clientpref-os .atheneum-box th {
        background-color: var(--atheneum-header-bg-night);
        color: var(--atheneum-text-color-night);
    }
    html.skin-theme-clientpref-os .atheneum-box td {
        background-color: var(--atheneum-cell-bg-night);
        color: var(--atheneum-text-color-night);
    }
}
/* .atheneum-box DAY */
@media screen {
  html.skin-theme-clientpref-day .atheneum-box {
      border: 1px solid var(--atheneum-border-color-day);
  }
  html.skin-theme-clientpref-day .atheneum-box th {
      background-color: var(--atheneum-header-bg-day);
      color: var(--atheneum-text-color-day);
  }
  html.skin-theme-clientpref-day .atheneum-box td {
      background-color: var(--atheneum-cell-bg-day);
      color: var(--atheneum-text-color-day);
  }
}
/* .atheneum-box NIGHT */
@media screen {
  html.skin-theme-clientpref-night .atheneum-box {
      border: 1px solid var(--atheneum-border-color-night);
  }
  html.skin-theme-clientpref-night .atheneum-box th {
      background-color: var(--atheneum-header-bg-night);
      color: var(--atheneum-text-color-night);
  }
  html.skin-theme-clientpref-night .atheneum-box td {
      background-color: var(--atheneum-cell-bg-night);
      color: var(--atheneum-text-color-night);
  }
}

/* ------------------------------------------------------------------------- */

/* GENERIC STYLES */

/* Separator (blank) */
.icannwiki-clearfix {
    clear: both;
}

/* Hide bullets on lists */
.no-bullets {
    list-style: none;
    list-style-type: none;
    padding-left: 0;
}

/* Hide second level bullets on lists */
.no-second-level-bullets ul ul {
    list-style: none;
    list-style-type: none;
    padding-left: 0; /* Adjust padding to align with the parent list */
}

.no-second-level-bullets ul ul li {
    padding-left: 0px; /* Adjust padding to maintain alignment if needed */
}

/* Centered text */
.icannwiki-centered {
    text-align: center;
}

/* Justified text */
.icannwiki-justified {
    text-align: justify;
}

/* Bold text */
.icannwiki-bold {
    font-weight: bold;
}

/* Upper case text */
.icannwiki-uppercase {
    text-transform: uppercase;
}

/* Larger text */
.icannwiki-font-large {
    font-size: 1.25em;
}