Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

MediaWiki:Vector.css: Difference between revisions

MediaWiki interface page
No edit summary
Tag: Reverted
No edit summary
 
(7 intermediate revisions by the same user not shown)
Line 1: Line 1:
/*
/*
  * Wizards & Warlords Citizen skin overrides.
  * Wizards & Warlords Vector skin overrides.
  *
  *
  * Common.css owns article and template styling. This file only supplies the
  * This file controls the Vector desktop shell, dark theme, top tabs, sidebar,
  * Citizen colour palette, Citizen shell adjustments, and mobile layout fixes
  * page title, footer, and desktop homepage layout.
  * for shared components that need a different narrow-screen presentation.
*
  * Some article typography remains below as a temporary compatibility copy.
* Common.css now contains lower-specificity shared equivalents; retaining the
* existing Vector selectors keeps the desktop cascade visually unchanged.
  */
  */


Line 12: Line 15:
   Phone: 0-599px; tablet / large phone: 600-899px; small desktop /
   Phone: 0-599px; tablet / large phone: 600-899px; small desktop /
   landscape tablet: 900-1199px; full desktop: 1200px+.
   landscape tablet: 900-1199px; full desktop: 1200px+.
   Citizen is developed directly as the mobile/tablet skin; MobileFrontend is
   Vector remains the desktop skin, but its narrow-window fallback follows the
   not required or assumed by these rules.
   same viewport boundaries as the rest of the project.
   ========================================================================== */
   ========================================================================== */


/* ==========================================================================
/* ==========================================================================
   Citizen Theme And Shared Site Colours
   Theme And Layout Variables
  --------------------------------------------------------------------------
  Change these first when adjusting the overall site width, sidebar width,
  colours, background image, content padding, or logo size.
   ========================================================================== */
   ========================================================================== */
:root {
:root {
/* Wizards & Warlords content tokens used by Common.css. */
--wiz-page-width: 1360px;
--wiz-sidebar-width: 210px;
--wiz-sidebar-left-inset: 8px;
--wiz-sidebar-right-inset: 8px;
--wiz-logo-size: 150px;
--wiz-logo-edge-space: calc((var(--wiz-sidebar-width) - var(--wiz-sidebar-left-inset) - var(--wiz-sidebar-right-inset) - var(--wiz-logo-size)) / 2);
--wiz-sidebar-content-gap: 0px;
--wiz-page-gutter: 24px;
--wiz-content-width: calc(100% - var(--wiz-sidebar-width) - var(--wiz-sidebar-content-gap) - var(--wiz-page-gutter));
--wiz-content-padding: 20px;
--wiz-content-background: #222;
--wiz-content-background: #222;
--wiz-panel-solid-background: #0f0f0f;
--wiz-panel-solid-background: #0f0f0f;
--wiz-panel-background: rgba(15, 15, 15, 0.82);
--wiz-page-background: #111;
--wiz-page-background: #111;
--wiz-background-image: url("/index.php/Special:Redirect/file/background_circle.jpeg");
--wiz-content-border: #ff942d;
--wiz-content-border: #ff942d;
--wiz-text: #d2d2d2;
--wiz-text: #d2d2d2;
--wiz-link: #ff942d;
--wiz-link: #ff942d;
--wiz-heading: #e7e1d4;
--wiz-heading: #e7e1d4;
}


/* Citizen's native palette. Keep the skin aligned with the existing site. */
/* ==========================================================================
--color-primary__h: 28;
  Full Page Background
--color-surface-0: #111;
  --------------------------------------------------------------------------
--color-surface-1: #171717;
  The background image is attached to the whole browser viewport. The image
--color-surface-2: #1f1e1e;
  keeps its aspect ratio and crops instead of stretching or skewing.
--color-surface-3: #252525;
  ========================================================================== */
--color-surface-4: #2c2b2b;
html {
--color-progressive: #ff942d;
min-height: 100%;
--color-progressive--hover: #ffd37a;
background-color: var(--wiz-page-background);
--color-progressive--active: #e57d1d;
background-image: var(--wiz-background-image);
--color-base: #d2d2d2;
background-repeat: no-repeat;
--color-subtle: #b9b3a8;
background-position: center center;
--color-emphasized: #e7e1d4;
background-size: cover;
--color-base-oklch__l: 85%;
background-attachment: fixed;
--color-base-oklch__c: 0;
--color-subtle-oklch__l: 72%;
--color-subtle-oklch__c: 0;
--color-emphasized-oklch__l: 93%;
--color-emphasized-oklch__c: 0;
}
}


/* ==========================================================================
/* ==========================================================================
   Citizen Page Shell
   Centered Wiki Shell And Panel Tint
  --------------------------------------------------------------------------
  The body is the centered 1360px wiki shell. The body::before layer paints
  the transparent sidebar, right gutter, and header tint without stacking
  multiple semi-transparent Vector wrappers on top of each other.
   ========================================================================== */
   ========================================================================== */
.skin-citizen {
body {
background-color: var(--wiz-page-background);
position: relative;
z-index: 0;
width: min(100%, var(--wiz-page-width));
min-height: 100vh;
margin: 0 auto;
background: transparent;
color: var(--wiz-text);
color: var(--wiz-text);
}
}


.skin-citizen .citizen-page-container {
body::before {
background-color: var(--wiz-page-background);
content: "";
position: fixed;
z-index: -1;
top: 0;
left: 50%;
width: min(100%, var(--wiz-page-width));
height: 79px;
transform: translateX(-50%);
pointer-events: none;
background: linear-gradient(
to right,
var(--wiz-panel-background) 0,
var(--wiz-panel-background) calc(var(--wiz-sidebar-width) + var(--wiz-sidebar-content-gap)),
var(--wiz-panel-background) calc(100% - var(--wiz-page-gutter)),
var(--wiz-panel-background) calc(100% - var(--wiz-page-gutter)),
var(--wiz-panel-background) 100%
);
}
 
/* Vector always uses the wide Main Page banner, including when its desktop
  shell is viewed through a narrow browser window. Citizen retains the
  responsive no-background banner swap defined in its own stylesheet. */
.skin-vector .page-banner {
aspect-ratio: auto;
margin-bottom: 24px;
background-image: none;
}
}


.skin-citizen .citizen-header {
.skin-vector .page-banner-desktop {
background-color: var(--color-surface-1);
display: block !important;
border-color: var(--wiz-content-border);
}
}


.skin-citizen .citizen-page-actions,
.skin-vector .page-banner-mobile {
.skin-citizen .citizen-toc {
display: none !important;
--color-surface-1: #171717;
--color-surface-2: #1f1e1e;
}
}


.skin-citizen .mw-body {
/* ==========================================================================
color: var(--wiz-text);
  Vector Wrapper Cleanup
  --------------------------------------------------------------------------
  Vector has several overlapping header/sidebar wrappers. These rules remove
  their default backgrounds, gradients, shadows, and borders so our single
  body::before tint layer is the only panel background.
  ========================================================================== */
#mw-page-base {
background: transparent;
}
}


.skin-citizen .mw-first-heading {
#mw-head-base,
border-bottom: 1px solid var(--wiz-content-border);
#mw-navigation,
color: var(--wiz-heading);
#mw-head {
background: transparent;
background-image: none;
}
}


.skin-citizen .mw-parser-output a:not(.new),
#mw-panel {
.skin-citizen .mw-first-heading a {
background: var(--wiz-panel-background);
color: var(--wiz-link);
background-image: none;
}
}


.skin-citizen .mw-parser-output a:not(.new):hover,
#mw-head {
.skin-citizen .mw-first-heading a:hover {
border-bottom: 0;
color: #ffd37a;
background-image: none;
}
}


/* Citizen applies its own external-link colours after Common.css. Keep links
#mw-head-base {
  in the shared homepage navigation-list component orange and bold. */
border-bottom: 0;
.skin-citizen .mw-parser-output .wizlords-mainpage-link-list a,
box-shadow: none;
.skin-citizen .mw-parser-output .wizlords-mainpage-link-list a:visited,
outline: 0;
.skin-citizen .mw-parser-output .wizlords-mainpage-link-list a.external,
opacity: 1;
.skin-citizen .mw-parser-output .wizlords-mainpage-whatislarp-list a,
.skin-citizen .mw-parser-output .wizlords-mainpage-whatislarp-list a:visited,
.skin-citizen .mw-parser-output .wizlords-mainpage-whatislarp-list a.external {
color: var(--wiz-link);
font-weight: normal;
text-decoration: none;
}
}


.skin-citizen .mw-parser-output .wizlords-mainpage-link-list a:hover,
#mw-head-base::before,
.skin-citizen .mw-parser-output .wizlords-mainpage-link-list a.external:hover,
#mw-head-base::after {
.skin-citizen .mw-parser-output .wizlords-mainpage-whatislarp-list a:hover,
content: none;
.skin-citizen .mw-parser-output .wizlords-mainpage-whatislarp-list a.external:hover {
display: none;
color: #ffd37a;
text-decoration: none;
}
}


/* Keep the footer close to the article; this site has no advertising area. */
/* ==========================================================================
.skin-citizen .citizen-footer {
  Header Navigation Alignment
margin-top: 2rem;
  --------------------------------------------------------------------------
  These align the left page tabs, right action tabs, login links, and search
  box with the content area and right gutter.
  ========================================================================== */
#right-navigation {
border-bottom: 0;
margin-right: var(--wiz-page-gutter);
}
}


.skin-citizen .citizen-footer {
#left-navigation {
color: var(--color-subtle);
border-bottom: 0;
margin-left: calc(var(--wiz-sidebar-width) + var(--wiz-sidebar-content-gap));
}
}


.skin-citizen .citizen-footer a {
#p-personal {
color: var(--wiz-link);
right: var(--wiz-page-gutter);
}
}


.skin-citizen .citizen-footer a:hover {
#p-search {
color: #ffd37a;
margin-right: 0;
}
}


/* ==========================================================================
/* ==========================================================================
   Tables And Media
   Sidebar And Logo
  --------------------------------------------------------------------------
  The sidebar panel is 210px wide. The logo is centered inside the usable
  sidebar area after accounting for the small left/right inset.
   ========================================================================== */
   ========================================================================== */
/* Citizen adds overflow wrappers around wide tables. Let them use the full
#mw-panel {
  article width so existing tables can scroll instead of shrinking the page. */
width: var(--wiz-sidebar-width);
.skin-citizen .citizen-overflow-wrapper {
background: transparent;
color: var(--wiz-text);
}
 
#p-logo {
top: 0;
left: var(--wiz-sidebar-left-inset);
width: calc(var(--wiz-sidebar-width) - var(--wiz-sidebar-left-inset) - var(--wiz-sidebar-right-inset));
height: calc(var(--wiz-logo-size) + var(--wiz-sidebar-left-inset) + var(--wiz-logo-edge-space));
margin: 0;
}
 
#p-logo a {
display: block;
width: 100%;
width: 100%;
max-width: 100%;
height: 100%;
background-position: center calc(var(--wiz-sidebar-left-inset) + var(--wiz-logo-edge-space));
background-size: var(--wiz-logo-size) var(--wiz-logo-size);
}
}


.skin-citizen .mw-parser-output img {
#mw-panel .portal,
max-width: 100%;
#mw-panel .vector-menu-portal {
height: auto;
margin-right: 12px;
}
}


/* ==========================================================================
/* ==========================================================================
   MobileFrontend Collapsible Article Sections
   Content And Footer Shell
   --------------------------------------------------------------------------
   --------------------------------------------------------------------------
   MobileFormatter adds .collapsible-heading and .collapsible-block, then
   The content and footer share the same width and left/right alignment. The
   toggles .open-block on both elements. Keep collapsed headings visually
   content gets the solid dark background; the footer uses the transparent
  quiet and row-like; restore the orange divider only for expanded sections.
   panel tint.
   This is scoped to Citizen + MobileFrontend and does not affect Vector.
   ========================================================================== */
   ========================================================================== */
.skin-citizen.mw-mf .collapsible-heading {
#content.mw-body {
box-sizing: border-box;
box-sizing: border-box;
margin-top: 0;
width: var(--wiz-content-width);
margin-bottom: 6px;
margin-left: calc(var(--wiz-sidebar-width) + var(--wiz-sidebar-content-gap));
padding-top: 12px;
margin-right: var(--wiz-page-gutter);
padding-bottom: 12px;
padding: var(--wiz-content-padding);
border-bottom: 0;
border: 1px solid var(--wiz-content-border);
background-image: none;
background: var(--wiz-content-background);
color: var(--wiz-text);
box-shadow:
calc(-1 * (var(--wiz-sidebar-width) + var(--wiz-sidebar-content-gap))) 0 0 0 var(--wiz-panel-background),
var(--wiz-page-gutter) 0 0 0 var(--wiz-panel-background);
}
 
#footer {
position: relative;
box-sizing: border-box;
width: var(--wiz-content-width);
margin-left: calc(var(--wiz-sidebar-width) + var(--wiz-sidebar-content-gap));
margin-right: var(--wiz-page-gutter);
min-height: 112px;
padding-top: 24px;
padding-bottom: 24px;
background: var(--wiz-panel-background);
color: var(--wiz-text);
box-shadow:
calc(-1 * (var(--wiz-sidebar-width) + var(--wiz-sidebar-content-gap))) 0 0 0 var(--wiz-panel-background),
var(--wiz-page-gutter) 0 0 0 var(--wiz-panel-background);
}
 
#footer-icons {
position: absolute;
top: 50%;
right: 0;
transform: translateY(-50%);
}
}


.skin-citizen.mw-mf .collapsible-heading.open-block {
/* ==========================================================================
margin-bottom: 0;
  Link Colours
padding-bottom: 6px;
  --------------------------------------------------------------------------
border-bottom: 1px solid var(--wiz-content-border, #ff942d);
  Global link colour rules for content, sidebar, header, and footer.
  ========================================================================== */
a,
a:visited,
#mw-panel a,
#mw-head a,
#footer a {
color: var(--wiz-link);
}
}


.skin-citizen.mw-mf .collapsible-block {
a:hover,
margin-top: 0;
#mw-panel a:hover,
padding-top: 0;
#mw-head a:hover,
#footer a:hover {
color: #ffd37a;
}
}


.skin-citizen.mw-mf
#left-navigation a,
.collapsible-heading.open-block
#right-navigation a,
+ .collapsible-block.open-block {
#p-personal a {
margin-top: 12px;
color: var(--wiz-link);
}
}


/* ==========================================================================
/* ==========================================================================
   Citizen Homepage Sections
   Top Tabs And Vector Menu Resets
   --------------------------------------------------------------------------
   --------------------------------------------------------------------------
   Citizen stacks the desktop left/right homepage blocks. Establish explicit
   These rules restyle the Vector page/action tabs. Inactive tabs are
   section spacing so heading margins cannot collapse into large blank bands,
   transparent so they blend into the header. Selected tabs match the content
   centre the introductory copy, and retain the desktop orange divider.
   background and use a small cover strip to hide the bottom border cleanly.
   ========================================================================== */
   ========================================================================== */
.skin-citizen .wizlords-mainpage-left,
#left-navigation li,
.skin-citizen .wizlords-mainpage-right {
#right-navigation li,
display: flow-root;
.vectorTabs li,
.vectorMenu h3 {
background: transparent;
background-image: none;
border: 0;
}
 
#p-namespaces .vector-menu-content,
#p-namespaces .vector-menu-content-list {
margin-left: 0;
padding-left: 0;
}
 
#p-namespaces {
padding-left: 0;
}
 
#left-navigation li::before,
#left-navigation li::after,
#right-navigation li::before,
#right-navigation li::after,
.vectorTabs li::before,
.vectorTabs li::after,
.vectorMenu h3::before,
.vectorMenu h3::after {
background: none;
background-image: none;
border: 0;
box-shadow: none;
content: none;
}
 
#left-navigation li a,
#right-navigation li a,
.vectorTabs li a,
.vectorMenu h3 {
background: transparent;
background-image: none;
border: 0;
border-left: 1px solid var(--wiz-content-border);
border-bottom: 1px solid var(--wiz-content-border);
color: var(--wiz-link);
}
 
#left-navigation li a span,
#right-navigation li a span,
.vectorTabs li a span,
.vectorMenu h3 span {
background: transparent;
background-image: none;
}
 
#left-navigation .vectorTabs,
#right-navigation .vectorTabs,
#left-navigation .vector-menu-tabs,
#right-navigation .vector-menu-tabs,
#left-navigation .vector-menu-tabs-legacy,
#right-navigation .vector-menu-tabs-legacy,
#left-navigation .vectorTabs ul,
#right-navigation .vectorTabs ul,
#left-navigation .vector-menu-tabs ul,
#right-navigation .vector-menu-tabs ul,
#left-navigation .vectorTabs span,
#right-navigation .vectorTabs span,
#left-navigation .vector-menu-tabs span,
#right-navigation .vector-menu-tabs span,
#left-navigation .vectorTabs li,
#right-navigation .vectorTabs li,
#left-navigation .vector-menu-tabs li,
#right-navigation .vector-menu-tabs li,
#left-navigation .vectorTabs li a,
#right-navigation .vectorTabs li a,
#left-navigation .vector-menu-tabs li a,
#right-navigation .vector-menu-tabs li a,
#right-navigation .vectorMenu,
#right-navigation .vectorMenu h3,
#right-navigation .vectorMenu h3 span,
#right-navigation .vector-menu-heading,
#right-navigation .vector-menu-heading span,
#right-navigation .vector-menu-heading-label,
#p-cactions-label,
#p-cactions-label span {
background-image: none !important;
background: transparent;
box-shadow: none;
}
}


.skin-citizen .wizlords-mainpage-left > h2.center,
#left-navigation li:last-child a,
.skin-citizen .wizlords-mainpage-right > h2.center,
#right-navigation li:last-child a {
.skin-citizen .wizlords-mainpage-left > .mw-heading2,
border-right: 1px solid var(--wiz-content-border);
.skin-citizen .wizlords-mainpage-right > .mw-heading2 {
}
 
/* The watch/unwatch star has different Vector sizing, so it is normalised here. */
#ca-watch a,
#ca-unwatch a {
box-sizing: border-box;
box-sizing: border-box;
width: 100%;
width: 32px;
margin: 14px 0 7px;
height: 40px;
padding: 0 0 4px;
padding-top: 16.25px;
border-bottom: 0;
padding-right: 0;
background-image: linear-gradient(
padding-bottom: 0;
to right,
padding-left: 0;
var(--wiz-content-border),
background-position: center center;
var(--wiz-content-border)
line-height: 18px;
);
}
background-repeat: no-repeat;
 
background-position: center bottom;
#ca-watch,
background-size: 65% 1px;
#ca-unwatch {
color: var(--wiz-heading);
height: 40px;
text-align: center;
line-height: 18px;
}
 
#right-navigation li.mw-watchlink.icon {
top: auto;
margin: 0;
padding: 0;
line-height: inherit;
}
}


.skin-citizen .wizlords-mainpage-left > .mw-heading2 h2,
#right-navigation li.mw-watchlink.icon a {
.skin-citizen .wizlords-mainpage-right > .mw-heading2 h2 {
margin: 0;
margin: 0;
line-height: inherit;
}
#ca-watch a span,
#ca-unwatch a span {
position: absolute;
overflow: hidden;
width: 1px;
height: 1px;
clip: rect(1px, 1px, 1px, 1px);
white-space: nowrap;
}
/* Selected tabs visually open into the content area below. */
#left-navigation li.selected a,
#right-navigation li.selected a,
.vectorTabs li.selected a {
position: relative;
z-index: 2;
background: var(--wiz-content-background);
background-image: none;
border-bottom: 1px solid var(--wiz-content-border);
color: var(--wiz-heading);
color: var(--wiz-heading);
text-align: center;
}
}


.skin-citizen .wizlords-mainpage-left > p,
#left-navigation li.selected a::after,
.skin-citizen .wizlords-mainpage-right > p,
#right-navigation li.selected a::after,
.skin-citizen .wizlords-mainpage-left > .center > p,
.vectorTabs li.selected a::after {
.skin-citizen .wizlords-mainpage-right > .center > p {
content: "";
max-width: 760px;
position: absolute;
margin: 6px auto 8px;
bottom: -1px;
text-align: center;
left: 0;
width: 100%;
height: 1px;
background: var(--wiz-content-background);
pointer-events: none;
}
 
/* Shared border colour for the tab row. */
#left-navigation li,
#right-navigation li,
#p-search,
.vectorTabs,
.vectorMenu {
border-color: var(--wiz-content-border);
}
}


/* Give introductory copy a little breathing room before wide homepage cards
#searchInput {
  without increasing spacing in the square-icon sections. */
background: rgba(0, 0, 0, 0.3);
.skin-citizen
border-color: var(--wiz-race-table-border-colour, #4d4d4d);
:is(.wizlords-mainpage-left, .wizlords-mainpage-right)
color: var(--wiz-text);
> .center:has(> .wizlords-wideimagetext-grid)
> p {
margin-bottom: 16px;
}
}


/* Separate homepage lists from the introductory paragraph above them. */
#searchInput::placeholder {
.skin-citizen .wizlords-mainpage-left > ul,
color: #b9b3a8;
.skin-citizen .wizlords-mainpage-right > ul,
.skin-citizen .wizlords-mainpage-left > ol,
.skin-citizen .wizlords-mainpage-right > ol,
.skin-citizen .wizlords-mainpage-left > .center > ul,
.skin-citizen .wizlords-mainpage-right > .center > ul,
.skin-citizen .wizlords-mainpage-left > .center > ol,
.skin-citizen .wizlords-mainpage-right > .center > ol {
margin-top: 14px;
}
}


/* ==========================================================================
/* ==========================================================================
   Citizen Homepage Square Icon Links
   Page Title And Body Content
   --------------------------------------------------------------------------
   --------------------------------------------------------------------------
   The desktop dimensions live in Vector.css, which Citizen does not load.
   The first heading sits inside the content area with its own spacing. On the
   Define a compact four-column version here for the square homepage links.
   main page only, "Main Page" is visually replaced with the wiki title.
  Wide image cards use separate classes and are intentionally unaffected.
   ========================================================================== */
   ========================================================================== */
.skin-citizen .wizlords-mainpage-items,
#firstHeading.firstHeading.mw-first-heading {
.skin-citizen .wizlords-mainpage-left > .center:has(> .wizlords-imagetext),
box-sizing: border-box;
.skin-citizen .wizlords-mainpage-right > .center:has(> .wizlords-imagetext) {
display: block !important;
display: flex;
height: 40px;
flex-wrap: wrap;
margin: 12px 0 8px;
gap: 12px 8px;
padding: 0;
justify-content: center;
border-bottom: 1px solid var(--wiz-content-border);
align-items: start;
color: var(--wiz-heading);
width: 100%;
font-size: 32px;
min-width: 0;
font-weight: normal;
margin-right: auto;
line-height: 40px;
margin-left: auto;
text-align: center;
}
}


/* MediaWiki may place introductory text in the same .center wrapper as the
body.page-Main_Page #firstHeading.firstHeading.mw-first-heading {
  icon links. Keep that text above the grid instead of treating it as an icon
font-size: 0;
  cell. */
.skin-citizen .wizlords-mainpage-left > .center:has(> .wizlords-imagetext) > p,
.skin-citizen .wizlords-mainpage-right > .center:has(> .wizlords-imagetext) > p {
flex: 0 0 100%;
width: 100%;
margin: 0 0 8px;
text-align: center;
}
}


/* MediaWiki sometimes wraps the first block-style icon link in a paragraph.
body.page-Main_Page #firstHeading.firstHeading.mw-first-heading::before {
  Flatten only those icon wrappers so every icon participates in the same
content: "Wizards and Warlords Wiki";
  homepage grid/flex row. Plain text paragraphs keep their normal layout. */
font-size: 32px;
.skin-citizen
:is(.wizlords-mainpage-left, .wizlords-mainpage-right)
> .center
> p:has(.wizlords-imagetext) {
display: contents;
}
}


.skin-citizen .wizlords-imagetext {
#bodyContent {
clear: both;
display: block;
display: block;
flex: 0 0 calc((100% - 24px) / 4);
margin: 0;
padding: 0;
border: 0;
font-size: 14px;
line-height: 1.6;
}
 
/* Normal article lists generated by * and # wikitext. */
#content.mw-body #bodyContent .mw-parser-output > ul,
#content.mw-body #bodyContent .mw-parser-output > ol {
margin: 8px 0 12px 28px;
padding-left: 20px;
text-align: left;
}
 
#content.mw-body #bodyContent .mw-parser-output > ul {
list-style: disc outside;
}
 
#content.mw-body #bodyContent .mw-parser-output ul ul {
margin: 4px 0 6px 22px;
padding-left: 18px;
list-style: disc outside;
}
 
#content.mw-body #bodyContent .mw-parser-output > ol {
list-style: decimal outside;
}
 
#content.mw-body #bodyContent .mw-parser-output > ul > li,
#content.mw-body #bodyContent .mw-parser-output > ol > li {
display: list-item;
margin-bottom: 4px;
}
 
#content.mw-body #bodyContent .mw-parser-output ul ul > li {
display: list-item;
margin-bottom: 3px;
list-style: disc outside;
}
 
#content.mw-body #bodyContent .mw-parser-output li::marker {
color: var(--wiz-text);
}
 
/* ==========================================================================
  Inline Article Table Of Contents
  --------------------------------------------------------------------------
  Style Vector's generated #toc directly so it retains the established floated
  desktop appearance and allows article content to wrap beside it.
  ========================================================================== */
#content.mw-body #bodyContent #toc {
float: right;
clear: right;
box-sizing: border-box;
box-sizing: border-box;
width: calc((100% - 24px) / 4);
width: max-content;
max-width: none;
min-width: 220px;
max-width: 320px;
margin: 0 0 16px 24px;
padding: 16px 24px;
border: 1px solid var(--wiz-content-border);
background: var(--wiz-panel-solid-background);
color: var(--wiz-text);
font-size: 0.95em;
}
 
#content.mw-body #bodyContent #toc:has(.toctogglecheckbox:checked) {
width: fit-content;
min-width: 0;
min-width: 0;
min-height: 0;
padding: 12px 16px;
margin: 0;
}
 
#content.mw-body #bodyContent #toc .toctitle {
margin: 0 0 10px;
color: var(--wiz-text);
text-align: center;
text-align: center;
}
}


.skin-citizen .wizlords-imagetext-image {
#content.mw-body
width: 64px;
#bodyContent
height: 64px;
#toc:has(.toctogglecheckbox:checked)
margin: 0 auto;
.toctitle {
margin: 0;
line-height: 1.4;
}
}


.skin-citizen .wizlords-imagetext-image img {
#content.mw-body #bodyContent #toc .toctitle h2 {
display: block;
display: inline;
width: 64px;
margin: 0;
height: 64px;
padding: 0;
max-width: 100%;
object-fit: contain;
border: 0;
border: 0;
background: transparent;
color: var(--wiz-text);
font-family: inherit;
font-size: 14px;
font-weight: bold;
line-height: 1.4;
}
}


.skin-citizen .wizlords-imagetext-text {
#content.mw-body #bodyContent #toc .toctoggle {
display: flex;
color: var(--wiz-text);
align-items: flex-start;
justify-content: center;
box-sizing: border-box;
width: 100%;
min-width: 0;
min-height: 34px;
height: auto;
margin-top: 4px;
color: var(--wiz-link);
font-size: 12px;
font-size: 12px;
line-height: 1.2;
text-align: center;
overflow-wrap: anywhere;
}
}


.skin-citizen .wizlords-imagetext-text a {
#content.mw-body #bodyContent #toc .toctoggle a {
color: var(--wiz-link);
color: var(--wiz-link);
text-decoration: none;
text-decoration: none;
}
}


.skin-citizen .wizlords-imagetext-text a:hover {
#content.mw-body #bodyContent #toc ul {
color: #ffd37a;
margin: 0;
padding: 0;
list-style: none;
}
 
#content.mw-body #bodyContent #toc li {
display: block;
margin: 0;
padding: 0;
list-style: none;
line-height: 1.35;
}
}


/* MediaWiki can insert paragraph wrappers around block-style homepage cards.
#content.mw-body #bodyContent #toc > ul > li {
  Flatten wrappers that contain a wide card so the card itself participates
padding: 2px 0;
  in the responsive flex layout. */
.skin-citizen
:is(.wizlords-mainpage-left, .wizlords-mainpage-right)
> .center
> p:has(.wizlords-wideimagetext) {
display: contents;
}
}


/* Small-desktop / landscape-tablet Citizen keeps the desktop-style four-slot
#content.mw-body #bodyContent #toc li ul {
  rhythm, but uses larger icons so the wider mobile/tablet skin does not feel
margin: 0 0 0 12px;
  sparse before the full desktop Vector layout takes over. */
padding: 0 0 0 10px;
@media screen and (min-width: 900px) and (max-width: 1199px) {
border-left: 1px dotted var(--wiz-content-border);
.skin-citizen .wizlords-mainpage-items,
}
.skin-citizen .wizlords-mainpage-left > .center:has(> .wizlords-imagetext),
.skin-citizen .wizlords-mainpage-right > .center:has(> .wizlords-imagetext) {
gap: 20px 16px;
}


.skin-citizen .wizlords-imagetext {
#content.mw-body #bodyContent #toc li li {
flex-basis: calc((100% - 48px) / 4);
margin: 0;
width: calc((100% - 48px) / 4);
padding: 2px 0;
}
border-left: 0;
}


.skin-citizen .wizlords-imagetext-image,
#content.mw-body #bodyContent #toc li::marker {
.skin-citizen .wizlords-imagetext-image img {
content: "";
width: clamp(92px, 10vw, 108px);
}
height: clamp(92px, 10vw, 108px);
}


.skin-citizen .wizlords-imagetext-text {
#content.mw-body #bodyContent #toc .tocnumber {
font-size: 13px;
display: none;
}
}
}


/* Full-width Citizen fallback. Normal desktop visitors use Vector, but this
#content.mw-body #bodyContent #toc a {
  keeps Citizen tidy if it is tested manually on a wide screen. */
color: var(--wiz-link);
@media screen and (min-width: 1200px) {
text-decoration: none;
.skin-citizen .wizlords-mainpage-items,
overflow-wrap: anywhere;
.skin-citizen .wizlords-mainpage-left > .center:has(> .wizlords-imagetext),
}
.skin-citizen .wizlords-mainpage-right > .center:has(> .wizlords-imagetext) {
gap: 16px 12px;
}


.skin-citizen .wizlords-imagetext {
#content.mw-body #bodyContent #toc a:hover {
flex-basis: calc((100% - 36px) / 4);
color: #ffd37a;
width: calc((100% - 36px) / 4);
text-decoration: none;
}
}


.skin-citizen .wizlords-imagetext-image,
#content.mw-body #bodyContent #toc .toclevel-3,
.skin-citizen .wizlords-imagetext-image img {
#content.mw-body #bodyContent #toc .toclevel-4,
width: 82px;
#content.mw-body #bodyContent #toc .toclevel-5,
height: 82px;
#content.mw-body #bodyContent #toc .toclevel-6 {
}
display: none !important;
}


.skin-citizen .wizlords-imagetext-text {
/* Article section headings generated by == through ====== wikitext. */
font-size: 13px;
#content.mw-body #bodyContent .mw-heading {
}
box-sizing: border-box;
margin: 20px 0 10px;
padding: 0;
border-bottom: 0;
color: var(--wiz-heading);
text-align: left;
text-decoration: none;
}
}


/* Phone-only wide-card fallback. Tablet receives the four-slot treatment in
#content.mw-body #bodyContent .mw-heading2 {
  the dedicated tablet section below. */
height: 30px;
@media screen and (max-width: 599px) {
margin-top: 21px;
/* Let each phone label use its natural one- or two-line height. Reserving
margin-bottom: 5px;
  two lines for every label creates visible empty space in sections whose
border-bottom: 1px solid var(--wiz-content-border);
  first-row labels all fit on one line, such as Character Creation. */
}
.skin-citizen .wizlords-imagetext-text {
min-height: 0;
}


/* Homepage navigation lists use a centred readable block while individual
#content.mw-body #bodyContent .mw-heading3 {
  bullets remain conventionally left-aligned. */
height: 28px;
.skin-citizen .wizlords-mainpage-link-list,
margin-top: 5px;
.skin-citizen .wizlords-useful-links,
margin-bottom: 10px;
.skin-citizen .wizlords-mainpage-whatislarp-list {
padding-top: 8px;
box-sizing: border-box;
}
width: 100%;
max-width: 320px;
margin-right: auto;
margin-left: auto;
padding-left: 24px;
list-style: disc outside;
text-align: left;
}


/* Match the What is LARP list to the paragraph's phone-width text column.
#content.mw-body #bodyContent .mw-heading4 {
  The padding creates a normal hanging bullet while keeping the bullet
height: 23px;
  edge aligned with the paragraph above. */
margin-top: 4px;
.skin-citizen .wizlords-mainpage-whatislarp-list {
margin-bottom: 10px;
max-width: 100%;
padding-top: 7px;
margin-right: 0;
}
margin-left: 0;
padding-left: 24px;
}


.skin-citizen .wizlords-wideimagetext {
#content.mw-body #bodyContent .mw-heading h2,
max-width: 100%;
#content.mw-body #bodyContent .mw-heading h3,
}
#content.mw-body #bodyContent .mw-heading h4,
#content.mw-body #bodyContent .mw-heading h5,
#content.mw-body #bodyContent .mw-heading h6 {
margin: 0;
padding: 0;
border-bottom: 0;
color: var(--wiz-heading);
text-align: left;
text-decoration: none;
}


.skin-citizen .wizlords-wideimagetext-grid,
#content.mw-body #bodyContent .mw-heading h2 {
.skin-citizen .wizlords-mainpage-left > .center:has(> .wizlords-wideimagetext),
font-weight: normal;
.skin-citizen .wizlords-mainpage-right > .center:has(> .wizlords-wideimagetext) {
}
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: 12px 10px;
width: 100%;
}


.skin-citizen .wizlords-wideimagetext-grid .wizlords-wideimagetext,
#content.mw-body #bodyContent .mw-heading h3,
.skin-citizen .wizlords-mainpage-left > .center .wizlords-wideimagetext,
#content.mw-body #bodyContent .mw-heading h4,
.skin-citizen .wizlords-mainpage-right > .center .wizlords-wideimagetext {
#content.mw-body #bodyContent .mw-heading h5,
flex: 0 0 calc((100% - 10px) / 2);
#content.mw-body #bodyContent .mw-heading h6 {
box-sizing: border-box;
font-weight: bold;
width: calc((100% - 10px) / 2);
}
max-width: none;
margin: 0;
text-align: center;
}


.skin-citizen .wizlords-mainpage-left > .center:has(> .wizlords-wideimagetext) > p,
#content.mw-body #bodyContent > h2:not(.center) {
.skin-citizen .wizlords-mainpage-right > .center:has(> .wizlords-wideimagetext) > p {
box-sizing: border-box;
flex: 0 0 100%;
height: 30px;
width: 100%;
margin: 21px 0 5px;
margin: 0 0 6px;
padding: 0;
}
border-bottom: 1px solid var(--wiz-content-border);
color: var(--wiz-heading);
font-weight: normal;
text-align: left;
text-decoration: none;
}


.skin-citizen .wizlords-wideimagetext-image,
#content.mw-body #bodyContent > h3:not(.center),
.skin-citizen .wizlords-wideimagetext-image img {
#content.mw-body #bodyContent > h4:not(.center),
display: block;
#content.mw-body #bodyContent > h5:not(.center),
width: 100%;
#content.mw-body #bodyContent > h6:not(.center) {
height: auto;
box-sizing: border-box;
aspect-ratio: 2 / 1;
margin: 20px 0 10px;
object-fit: cover;
padding: 0;
border: 0;
border-bottom: 0;
background: transparent;
color: var(--wiz-heading);
}
font-weight: bold;
text-align: left;
text-decoration: none;
}


.skin-citizen .wizlords-wideimagetext-text {
#content.mw-body #bodyContent > h3:not(.center) {
display: flex;
height: 28px;
align-items: flex-start;
margin-top: 5px;
justify-content: center;
padding-top: 8px;
width: 100%;
min-height: 34px;
height: auto;
margin-top: 4px;
font-size: 12px;
line-height: 1.2;
text-align: center;
overflow-wrap: anywhere;
}
}
}


/* ==========================================================================
#content.mw-body #bodyContent > h4:not(.center) {
  Citizen Tablet Homepage
height: 23px;
  --------------------------------------------------------------------------
margin-top: 4px;
  At 600-899px the homepage uses the available width as one broad content
padding-top: 7px;
  column. The square icon groups need one component-specific split inside the
}
  tablet range: 600-799px keeps the stable four-column rhythm, while 800-899px
  has enough room for compact single-row groups. This avoids ugly orphan rows
  such as 5+2 or 6+1.
  ========================================================================== */
@media screen and (min-width: 600px) and (max-width: 899px) {
.skin-citizen .wizlords-mainpage-left,
.skin-citizen .wizlords-mainpage-right {
max-width: 760px;
margin-right: auto;
margin-left: auto;
}


/* Keep tablet landing-page copy in a readable centred column while the
#content.mw-body #bodyContent .mw-heading h2,
  icon and card grids continue using the full 760px section width. */
#content.mw-body #bodyContent > h2:not(.center) {
.skin-citizen .wizlords-mainpage-left > p,
font-size: 24px;
.skin-citizen .wizlords-mainpage-right > p,
line-height: 30px;
.skin-citizen .wizlords-mainpage-left > .center > p,
}
.skin-citizen .wizlords-mainpage-right > .center > p {
max-width: 620px;
margin-right: auto;
margin-left: auto;
text-align: center;
}


.skin-citizen .wizlords-mainpage-link-list,
#content.mw-body #bodyContent .mw-heading h3,
.skin-citizen .wizlords-useful-links,
#content.mw-body #bodyContent > h3:not(.center) {
.skin-citizen .wizlords-mainpage-whatislarp-list {
font-size: 18px;
box-sizing: border-box;
line-height: 24px;
width: 100%;
}
max-width: 500px;
margin-right: auto;
margin-left: auto;
padding-left: 32px;
list-style: disc outside;
text-align: left;
}


/* Use the same 620px reading column as the What is LARP paragraph. */
#content.mw-body #bodyContent .mw-heading h4,
.skin-citizen .wizlords-mainpage-whatislarp-list {
#content.mw-body #bodyContent > h4:not(.center) {
max-width: 620px;
font-size: 14px;
padding-left: 24px;
line-height: 1.6;
}
}


.skin-citizen .wizlords-mainpage-left > h2.center,
#content.mw-body #bodyContent .mw-heading h5,
.skin-citizen .wizlords-mainpage-right > h2.center {
#content.mw-body #bodyContent .mw-heading h6,
margin-top: 14px;
#content.mw-body #bodyContent > h5:not(.center),
margin-bottom: 6px;
#content.mw-body #bodyContent > h6:not(.center) {
}
font-size: 15px;
line-height: 21px;
}


.skin-citizen .wizlords-mainpage-left > p,
#content.mw-body #bodyContent .mw-heading .mw-headline,
.skin-citizen .wizlords-mainpage-right > p {
#content.mw-body #bodyContent > h2:not(.center) .mw-headline,
margin-top: 6px;
#content.mw-body #bodyContent > h3:not(.center) .mw-headline,
margin-bottom: 8px;
#content.mw-body #bodyContent > h4:not(.center) .mw-headline,
}
#content.mw-body #bodyContent > h5:not(.center) .mw-headline,
#content.mw-body #bodyContent > h6:not(.center) .mw-headline,
#content.mw-body #bodyContent .mw-heading a,
#content.mw-body #bodyContent > h2:not(.center) a,
#content.mw-body #bodyContent > h3:not(.center) a,
#content.mw-body #bodyContent > h4:not(.center) a,
#content.mw-body #bodyContent > h5:not(.center) a,
#content.mw-body #bodyContent > h6:not(.center) a {
border-bottom: 0;
color: var(--wiz-heading);
text-decoration: none;
}


.skin-citizen .wizlords-mainpage-items,
#content.mw-body #bodyContent .mw-heading .mw-editsection {
.skin-citizen .wizlords-mainpage-left > .center:has(> .wizlords-imagetext),
color: var(--wiz-link);
.skin-citizen .wizlords-mainpage-right > .center:has(> .wizlords-imagetext) {
font-size: 12px;
display: grid;
line-height: 1;
grid-template-columns: repeat(4, minmax(0, 78px));
text-decoration: none;
gap: 12px 16px;
}
justify-content: center;
justify-items: center;
align-items: start;
}


.skin-citizen .wizlords-mainpage-left > .center:has(> .wizlords-imagetext) > p,
#content.mw-body #bodyContent .mw-heading .mw-editsection a {
.skin-citizen .wizlords-mainpage-right > .center:has(> .wizlords-imagetext) > p {
color: var(--wiz-link);
grid-column: 1 / -1;
text-decoration: none;
width: 100%;
}
margin-bottom: 4px;
}


.skin-citizen .wizlords-imagetext {
/* ==========================================================================
width: 78px;
  Homepage Two-Column Layout
max-width: none;
  --------------------------------------------------------------------------
}
  Homepage sections are arranged as:
  left block, right block, clear; then repeat for each row.
  ========================================================================== */
.wizlords-mainpage-left {
box-sizing: border-box;
float: left;
width: calc(50% - 7.5px);
padding-left: 15px;
padding-right: 15px;
}


.skin-citizen .wizlords-imagetext-image,
.wizlords-mainpage-right {
.skin-citizen .wizlords-imagetext-image img {
box-sizing: border-box;
width: clamp(52px, 7.5vw, 64px);
float: right;
height: clamp(52px, 7.5vw, 64px);
width: calc(50% - 7.5px);
}
padding-left: 15px;
padding-right: 15px;
}


.skin-citizen .wizlords-imagetext-text {
.wizlords-mainpage-clear {
min-height: 30px;
clear: both;
margin-top: 3px;
}
font-size: 12px;
line-height: 1.15;
}


/* Upper tablet widths can cleanly fit seven or eight compact icons in one
/* Homepage section headings. */
  row. Use flex here rather than auto-fit grid: auto-fit can create an
.wizlords-mainpage-left > h2.center,
  empty eighth track for seven-item groups once there is enough width,
.wizlords-mainpage-right > h2.center {
  while flex only lays out real icon items. */
margin: 20px 0 10px;
@media screen and (min-width: 800px) {
padding: 0;
.skin-citizen .wizlords-mainpage-items,
border-bottom: 1px solid var(--wiz-content-border);
.skin-citizen .wizlords-mainpage-left > .center:has(> .wizlords-imagetext),
color: var(--wiz-heading);
.skin-citizen .wizlords-mainpage-right > .center:has(> .wizlords-imagetext) {
font-size: 24px;
display: flex;
font-weight: normal;
flex-wrap: wrap;
line-height: 30px;
gap: 10px 14px;
text-align: center;
justify-content: center;
}
align-items: flex-start;
}


.skin-citizen .wizlords-mainpage-left > .center:has(> .wizlords-imagetext) > p,
.wizlords-mainpage-left > h2.center .mw-headline,
.skin-citizen .wizlords-mainpage-right > .center:has(> .wizlords-imagetext) > p {
.wizlords-mainpage-right > h2.center .mw-headline {
flex: 0 0 100%;
text-decoration: none;
width: 100%;
}
}


.skin-citizen .wizlords-imagetext {
.wizlords-mainpage-left > h2.center a,
flex: 0 0 78px;
.wizlords-mainpage-right > h2.center a {
}
border-bottom: 0;
}
text-decoration: none;
}


/* The homepage markup splits each four-card group into two nested
.wizlords-mainpage-left > .center,
  two-card grids. On tablet, flatten those inner grids into their shared
.wizlords-mainpage-right > .center,
  parent so all four cards can occupy one row. Phone keeps the two grids,
.wizlords-mainpage-items {
  producing the intended 2x2 layout. */
text-align: center;
.skin-citizen
}
:is(.wizlords-mainpage-left, .wizlords-mainpage-right)
> .center:has(> .wizlords-wideimagetext-grid) {
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: 10px 12px;
width: 100%;
}


.skin-citizen
.wizlords-mainpage-left > .center > p,
:is(.wizlords-mainpage-left, .wizlords-mainpage-right)
.wizlords-mainpage-right > .center > p {
> .center:has(> .wizlords-wideimagetext-grid)
margin: 0 0 10px;
> p {
}
flex: 0 0 100%;
width: 100%;
margin: 0 0 16px;
}


.skin-citizen
/* Normal text lists inside homepage blocks. */
:is(.wizlords-mainpage-left, .wizlords-mainpage-right)
.wizlords-mainpage-left > ul,
> .center
.wizlords-mainpage-right > ul,
> .wizlords-wideimagetext-grid {
.wizlords-mainpage-left > .center > ul,
display: contents;
.wizlords-mainpage-right > .center > ul {
}
margin: 8px 0 0 20px;
padding-left: 20px;
list-style: disc inside;
text-align: left;
}


.skin-citizen
.wizlords-mainpage-left > ol,
:is(.wizlords-mainpage-left, .wizlords-mainpage-right)
.wizlords-mainpage-right > ol,
> .center
.wizlords-mainpage-left > .center > ol,
> .wizlords-wideimagetext-grid
.wizlords-mainpage-right > .center > ol {
> .wizlords-wideimagetext {
margin: 8px 0 0 20px;
flex: 0 0 calc((100% - 36px) / 4);
padding-left: 20px;
box-sizing: border-box;
list-style: decimal inside;
width: calc((100% - 36px) / 4);
text-align: left;
max-width: none;
}
margin: 0;
text-align: center;
}


.skin-citizen .wizlords-wideimagetext-image,
.wizlords-mainpage-left li,
.skin-citizen .wizlords-wideimagetext-image img {
.wizlords-mainpage-right li {
display: block;
display: list-item;
width: 100%;
margin-bottom: 6px;
height: auto;
}
aspect-ratio: 2 / 1;
object-fit: cover;
border: 0;
background: transparent;
}


.skin-citizen .wizlords-wideimagetext-text {
.wizlords-mainpage-left li::marker,
display: flex;
.wizlords-mainpage-right li::marker {
align-items: flex-start;
color: var(--wiz-text);
justify-content: center;
width: 100%;
min-height: 34px;
height: auto;
margin-top: 4px;
font-size: 12px;
line-height: 1.2;
text-align: center;
overflow-wrap: anywhere;
}
}
}


/* ==========================================================================
/* ==========================================================================
   Phone And Tablet Table Of Contents
   Homepage Square Image Links
  --------------------------------------------------------------------------
  Used for 100x100 icon links with a fixed-height text label underneath.
   ========================================================================== */
   ========================================================================== */
@media screen and (max-width: 899px) {
.wizlords-imagetext {
.skin-citizen .citizen-page-container {
display: inline-block;
padding-right: max(var(--padding-page, 16px), env(safe-area-inset-right));
box-sizing: border-box;
padding-left: max(var(--padding-page, 16px), env(safe-area-inset-left));
width: 100px;
}
min-height: 122px;
margin: 5px;
vertical-align: top;
text-align: center;
}
 
.wizlords-imagetext-image {
width: 100px;
height: 100px;
}
 
.wizlords-imagetext-image img {
display: block;
width: 100px;
height: 100px;
object-fit: contain;
border: 0;
background: transparent;
}


.skin-citizen .toc-page #toc,
.wizlords-imagetext-text {
.skin-citizen .toc-page .toc {
display: flex;
float: none;
align-items: center;
width: 100%;
justify-content: center;
min-width: 0;
width: 100px;
max-width: none;
height: 40px;
margin: 0 0 18px;
font-size: 14px;
padding: 14px 16px;
line-height: 1.3;
}
text-align: center;
}
}


/* ==========================================================================
/* ==========================================================================
   Phone And Tablet Shared Component Adjustments
   Homepage Wide Image Links
  --------------------------------------------------------------------------
  Used for 200x100 banner-style image links, such as Weekly Battle Games,
  World Lore, and Events.
   ========================================================================== */
   ========================================================================== */
@media screen and (max-width: 899px) {
.wizlords-wideimagetext {
.skin-citizen .wizlords-mainpage-left,
display: inline-block;
.skin-citizen .wizlords-mainpage-right {
box-sizing: border-box;
float: none;
width: 200px;
box-sizing: border-box;
margin: 10px 12px;
width: 100%;
vertical-align: top;
margin-top: 0;
text-align: center;
margin-bottom: 0;
}
padding-right: 0;
 
padding-left: 0;
.wizlords-wideimagetext-grid {
}
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: 10px 24px;
}
 
.wizlords-wideimagetext-grid .wizlords-wideimagetext {
margin: 0;
}
 
.wizlords-wideimagetext-image {
width: 200px;
height: 100px;
}


.skin-citizen .wizlords-mainpage-clear {
.wizlords-wideimagetext-image img {
clear: both;
display: block;
}
width: 200px;
height: 100px;
object-fit: cover;
border: 0;
background: transparent;
}


.skin-citizen .wizlords-race-intro,
.wizlords-wideimagetext-text {
.skin-citizen .wizlords-magic-intro {
display: flex;
align-items: flex-start;
align-items: center;
gap: 16px;
justify-content: center;
}
width: 200px;
height: 40px;
font-size: 14px;
line-height: 1.3;
text-align: center;
}


.skin-citizen .wizlords-race-quote {
/* ==========================================================================
padding-right: 20px;
  Useful Links List
}
  --------------------------------------------------------------------------
  Specific list styling for the external/useful links block.
  ========================================================================== */
.wizlords-useful-links,
.wizlords-mainpage-link-list,
.wizlords-mainpage-whatislarp-list {
margin: 8px 0 0 20px;
padding-left: 20px;
list-style: disc inside;
text-align: left;
}


.skin-citizen .wizlords-culture-grid {
.wizlords-useful-links li,
grid-template-columns: 1fr;
.wizlords-mainpage-link-list li,
}
.wizlords-mainpage-whatislarp-list li {
margin-bottom: 6px;
display: list-item;
list-style: disc inside;
}


.skin-citizen .wizlords-culture-grid .wizlords-culture-card {
.wizlords-useful-links li::marker,
grid-column: auto;
.wizlords-mainpage-link-list li::marker,
}
.wizlords-mainpage-whatislarp-list li::marker {
color: var(--wiz-text);
}


.skin-citizen .wizlords-culture-row-feature {
/* What is LARP includes longer explanatory list items. Align its bullet edge
grid-template-columns: 1fr;
  with the paragraph above instead of using the narrower Useful Links inset. */
gap: 14px;
#content.mw-body
}
#bodyContent
.mw-parser-output
.wizlords-mainpage-right
> ul.wizlords-mainpage-whatislarp-list,
#content.mw-body
#bodyContent
.mw-parser-output
.wizlords-mainpage-left
> ul.wizlords-mainpage-whatislarp-list {
box-sizing: border-box;
width: 100%;
margin: 8px 0 0;
padding-left: 18px;
list-style: disc outside;
text-align: left;
}


.skin-citizen .wizlords-culture-row-icon img {
#content.mw-body
margin: 0 auto;
#bodyContent
}
.mw-parser-output
.wizlords-mainpage-whatislarp-list
> li {
margin-left: 0;
list-style: disc outside;
}


.skin-citizen .wizlords-culture-row-divider {
/* Vector assigns separate colours to external and visited links. Keep the
width: 80%;
  shared homepage navigation-list component consistently orange. */
height: 1px;
#content.mw-body .wizlords-mainpage-link-list a,
margin: 0 auto;
#content.mw-body .wizlords-mainpage-link-list a:visited,
}
#content.mw-body .wizlords-mainpage-link-list a.external,
#content.mw-body .wizlords-mainpage-whatislarp-list a,
#content.mw-body .wizlords-mainpage-whatislarp-list a:visited,
#content.mw-body .wizlords-mainpage-whatislarp-list a.external {
color: var(--wiz-link);
font-weight: normal;
text-decoration: none;
}


.skin-citizen .wizlords-culture-appearance {
#content.mw-body .wizlords-mainpage-link-list a:hover,
width: 100%;
#content.mw-body .wizlords-mainpage-link-list a.external:hover,
}
#content.mw-body .wizlords-mainpage-whatislarp-list a:hover,
#content.mw-body .wizlords-mainpage-whatislarp-list a.external:hover {
color: #ffd37a;
text-decoration: none;
}


.skin-citizen .wizlords-culture-appearance img {
/* Vector's external-link indicator is a separate blue background SVG, so it
width: 100%;
  must be recoloured independently from the anchor text. */
height: auto;
#content.mw-body .wizlords-mainpage-link-list a.external,
aspect-ratio: 300 / 138;
#content.mw-body .wizlords-mainpage-whatislarp-list a.external {
}
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10'%3E%3Cpath fill='%23ff942d' d='M6 1h3v3H8V2.71L4.35 6.35l-.7-.7L7.29 2H6V1z'/%3E%3Cpath fill='%23ff942d' d='M2 2h3v1H3v4h4V5h1v3H2V2z'/%3E%3C/svg%3E");
}


.skin-citizen .wizlords-shared-classes {
#content.mw-body .wizlords-mainpage-link-list a.external:hover,
box-sizing: border-box;
#content.mw-body .wizlords-mainpage-whatislarp-list a.external:hover {
width: 100%;
background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='10' viewBox='0 0 10 10'%3E%3Cpath fill='%23ffd37a' d='M6 1h3v3H8V2.71L4.35 6.35l-.7-.7L7.29 2H6V1z'/%3E%3Cpath fill='%23ffd37a' d='M2 2h3v1H3v4h4V5h1v3H2V2z'/%3E%3C/svg%3E");
min-width: 0;
}
padding-right: 18px;
padding-left: 18px;
}


.skin-citizen .wizlords-shared-classes ul {
/* ==========================================================================
grid-auto-flow: row;
  Narrow Vector Fallback
grid-template-rows: none;
  --------------------------------------------------------------------------
grid-template-columns: 1fr;
  When Vector is manually used below the small-desktop range, remove its
width: auto;
  desktop sidebar, reclaim that space, and stack the homepage columns.
  ========================================================================== */
@media (max-width: 899px) {
:root {
--wiz-sidebar-width: 0px;
--wiz-sidebar-content-gap: 0px;
--wiz-content-width: calc(100% - var(--wiz-page-gutter) - var(--wiz-page-gutter));
--wiz-page-gutter: 12px;
--wiz-content-padding: 14px;
}
}


.skin-citizen .wizlords-class-compare {
#mw-panel,
flex-direction: column;
#p-logo {
display: none !important;
}
}


.skin-citizen .wizlords-class-category-table,
#content.mw-body,
.skin-citizen .wizlords-magic-table {
#footer {
min-width: 0;
margin-inline: var(--wiz-page-gutter);
max-width: 100%;
box-shadow:
calc(-1 * var(--wiz-page-gutter)) 0 0 0 var(--wiz-panel-background),
var(--wiz-page-gutter) 0 0 0 var(--wiz-panel-background);
}
}


.skin-citizen .wizlords-reputation-table.mw-collapsed {
#left-navigation {
width: 100%;
margin-left: var(--wiz-page-gutter);
min-width: 0;
}
}


.skin-citizen .wizlords-page-image.right,
.wizlords-mainpage-left,
.skin-citizen .wizlords-page-image.left {
.wizlords-mainpage-right {
float: none;
float: none;
width: 100%;
width: 100%;
margin: 0 0 18px;
padding-left: 0;
padding-right: 0;
}
}


.skin-citizen .ww-navbox-row {
}
display: block;
}


.skin-citizen .ww-navbox-group {
/* ==========================================================================
width: 100%;
  Final What Is LARP List Alignment
padding: 5px 10px;
  --------------------------------------------------------------------------
border-right: 0;
  Vector and shared article styles both assign margins and padding to direct
border-bottom: 1px solid var(--wiz-content-background);
  article lists. This final component-scoped reset guarantees that the What
text-align: center;
  is LARP bullet edge aligns with the paragraph above, regardless of which
}
  MediaWiki wrapper is present.
  ========================================================================== */
#content.mw-body #bodyContent ul.wizlords-mainpage-whatislarp-list {
box-sizing: border-box !important;
width: 100% !important;
max-width: none !important;
margin: 8px 0 0 !important;
padding-left: 1.15em !important;
list-style: disc outside !important;
text-align: left !important;
}


.skin-citizen .ww-navbox-list {
#content.mw-body #bodyContent ul.wizlords-mainpage-whatislarp-list > li {
padding: 6px 10px;
margin-left: 0 !important;
text-align: center;
padding-left: 0 !important;
}
list-style: disc outside !important;
}
}