Jump to content

Template:OOOInfoBox/styles.css

From Out of Ore Wiki
/* OOO InfoBox — clean game-wiki style
   Theme safe (light / dark / OS)
   Compatible with MediaWiki TemplateStyles
*/

/* ------------------------------------------------ */
/* BASE BOX                                         */
/* ------------------------------------------------ */

.ooo-infobox {
  width: 300px;
  border: 1px solid #a2a9b1;
  border-radius: 10px;
  border-collapse: separate;
  border-spacing: 0;

  background: var(--background-color-base, #ffffff);
  color: var(--color-base, #202122);

  font-size: 90%;
  overflow: hidden;

  box-shadow: 0 2px 10px rgba(0,0,0,.08);

  float: right;
  clear: right;
  margin: 0 0 1em 1em;
}

/* ------------------------------------------------ */
/* LINKS                                            */
/* ------------------------------------------------ */

.ooo-infobox a { color: var(--color-progressive, #36c); }
.ooo-infobox a:hover { color: var(--color-progressive--hover, #447ff5); }

/* ------------------------------------------------ */
/* TITLE                                            */
/* ------------------------------------------------ */

.ooo-infobox__title {
  text-align: center;
  font-weight: 700;
  font-size: 115%;
  letter-spacing: .3px;

  background: var(--ooo-accent);
  color: #ffffff;

  padding: 12px 10px;

  border-bottom: 1px solid #a2a9b1;
}

/* ------------------------------------------------ */
/* IMAGE                                            */
/* ------------------------------------------------ */

.ooo-infobox__image {
  text-align: center;
  padding: 12px;

  background: var(--background-color-neutral-subtle, #f8f9fa);
}

.ooo-infobox__image img {
  max-width: 100%;
  height: auto;
  border-radius: 6px;
}

/* ------------------------------------------------ */
/* CAPTION                                          */
/* ------------------------------------------------ */

.ooo-infobox__caption {
  text-align: center;
  font-style: italic;
  line-height: 1.35;

  padding: 6px 12px 12px;

  color: var(--color-subtle, #54595d);
  background: var(--background-color-neutral-subtle, #f8f9fa);

  border-bottom: 1px solid #a2a9b1;
}

/* ------------------------------------------------ */
/* TABLE CELLS                                      */
/* ------------------------------------------------ */

.ooo-infobox th,
.ooo-infobox td {
  padding: 8px 12px;
  vertical-align: top;
}

.ooo-infobox th {
  width: 46%;
  font-weight: 600;
  color: var(--color-emphasized, #101418);
}

/* ------------------------------------------------ */
/* ZEBRA ROWS                                       */
/* ------------------------------------------------ */

.ooo-infobox tr:nth-child(even) td,
.ooo-infobox tr:nth-child(even) th {
  background: rgba(0,0,0,.02);
}

/* ------------------------------------------------ */
/* GROUP HEADERS                                    */
/* ------------------------------------------------ */

.ooo-infobox__group th {
  text-align: center;
  font-weight: 700;
  font-size: 95%;
  letter-spacing: .3px;

  padding: 9px 12px;

  background: var(--background-color-neutral-subtle, #f8f9fa);
  color: var(--color-base, #202122);

  border-top: 1px solid #a2a9b1;
  border-bottom: 1px solid #a2a9b1;
}

/* ------------------------------------------------ */
/* MUTED TEXT                                       */
/* ------------------------------------------------ */

.ooo-infobox__muted {
  color: var(--color-subtle, #54595d);
}

/* ------------------------------------------------ */
/* ALIGNMENT OPTIONS                                */
/* ------------------------------------------------ */

.ooo-infobox--left {
  float: left;
  clear: left;
  margin: 0 1em 1em 0;
}

.ooo-infobox--none {
  float: none;
  margin: 0 0 1em 0;
}

.ooo-infobox--center {
  float: none;
  margin: 0 auto 1em;
  display: block;
}

/* ------------------------------------------------ */
/* MOBILE                                           */
/* ------------------------------------------------ */

@media (max-width: 640px) {
  .ooo-infobox,
  .ooo-infobox--left,
  .ooo-infobox--none,
  .ooo-infobox--center {
    float: none;
    margin: 0 0 1em 0;
    width: 100%;
  }
}

/* ------------------------------------------------ */
/* NIGHT MODE (FORCED)                              */
/* ------------------------------------------------ */

@media screen {

html.skin-theme-clientpref-night .ooo-infobox {
  border-color: #3a3a3a;
  background: var(--background-color-base, #1b1b1d);
  color: var(--color-base, #eaecf0);
}

html.skin-theme-clientpref-night .ooo-infobox__title {
  background: var(--ooo-accent);
  color: #ffffff;
}

html.skin-theme-clientpref-night .ooo-infobox__image,
html.skin-theme-clientpref-night .ooo-infobox__caption {
  background: var(--background-color-neutral-subtle, #222325);
}

html.skin-theme-clientpref-night .ooo-infobox__group th {
  background: var(--background-color-neutral, #2a2b2e);
  border-color: #3a3a3a;
}

html.skin-theme-clientpref-night .ooo-infobox th {
  color: var(--color-emphasized, #f1f2f3);
}

html.skin-theme-clientpref-night .ooo-infobox__muted {
  color: var(--color-subtle, #a2a9b1);
}

}

/* ------------------------------------------------ */
/* NIGHT MODE (OS AUTO)                             */
/* ------------------------------------------------ */

@media (prefers-color-scheme: dark) {

html.skin-theme-clientpref-os .ooo-infobox {
  border-color: #3a3a3a;
  background: var(--background-color-base, #1b1b1d);
  color: var(--color-base, #eaecf0);
}

html.skin-theme-clientpref-os .ooo-infobox__title {
  background: var(--ooo-accent);
  color: #ffffff;
}

html.skin-theme-clientpref-os .ooo-infobox__image,
html.skin-theme-clientpref-os .ooo-infobox__caption {
  background: var(--background-color-neutral-subtle, #222325);
}

html.skin-theme-clientpref-os .ooo-infobox__group th {
  background: var(--background-color-neutral, #2a2b2e);
  border-color: #3a3a3a;
}

html.skin-theme-clientpref-os .ooo-infobox th {
  color: var(--color-emphasized, #f1f2f3);
}

html.skin-theme-clientpref-os .ooo-infobox__muted {
  color: var(--color-subtle, #a2a9b1);
}

}