MediaWiki:Citizen.css: Difference between revisions
MediaWiki interface page
More actions
Language switcher on subpages; Slave Pits game guide |
No technical notice on game pages |
||
| (8 intermediate revisions by the same user not shown) | |||
| Line 85: | Line 85: | ||
} | } | ||
/* | /* spoilers: a closed box, opened with its Show button */ | ||
.calima-spoiler { | .calima-spoiler { | ||
margin: 0.5em 0 1em; | margin: 0.5em 0 1em; | ||
padding: 0. | padding: 0.45em 0.9em; | ||
border: 1px dashed #c25c00; | border: 1px dashed #c25c00; | ||
border-radius: 0.4em; | border-radius: 0.4em; | ||
} | |||
.calima-spoiler__title { | |||
font-size: 0.9em; | |||
} | |||
.calima-spoiler > .mw-collapsible-toggle { | |||
float: right; | |||
font-size: 0.9em; | font-size: 0.9em; | ||
font-weight: bold; | |||
} | |||
.calima-spoiler > .mw-collapsible-content { | |||
margin-top: 0.6em; | |||
} | } | ||
| Line 121: | Line 131: | ||
} | } | ||
/* | |||
.calima- | /* ================= main page: the calimasaga.com masthead ================= */ | ||
margin: 0 0 1em; | @font-face { | ||
padding: 0.4em | font-family: 'IxatSE'; | ||
border-left: 3px solid var( --color- | src: url('/w/calima/ixat.woff2') format('woff2'); | ||
font-display: swap; | |||
font-size: 0. | } | ||
/* the masthead replaces the page title on the main page and its translations */ | |||
.rootpage-Main_Page .citizen-page-heading { | |||
display: none; | |||
} | |||
.calima-hero { | |||
position: relative; | |||
overflow: hidden; | |||
display: flex; | |||
align-items: center; | |||
min-height: clamp( 220px, 38vh, 380px ); | |||
margin: 0 0 1.5em; | |||
border-radius: var( --border-radius-medium, 0.5rem ); | |||
/* fixed, like the body's forest, so the two line up exactly */ | |||
background: #dfe1e0 url('/w/calima/forest.jpg') center top / cover fixed no-repeat; | |||
} | |||
.calima-hero__scrim { | |||
position: absolute; | |||
inset: 0; | |||
background: linear-gradient( 180deg, rgba( 246, 246, 244, 0.15 ) 0%, rgba( 246, 246, 244, 0.35 ) 55%, rgba( 246, 246, 244, 0.95 ) 100% ); | |||
} | |||
.calima-hero__inner { | |||
position: relative; | |||
z-index: 2; | |||
width: 100%; | |||
padding: 2rem 1rem; | |||
text-align: center; | |||
} | |||
.calima-wordmark { | |||
font-family: 'IxatSE', 'Marcellus', serif; | |||
color: #2a2f34; | |||
line-height: 0.95; | |||
letter-spacing: 0.04em; | |||
font-size: clamp( 2.6rem, 9vw, 6rem ); | |||
text-shadow: 0 2px 18px rgba( 246, 246, 244, 0.9 ); | |||
} | |||
.calima-hero__wiki { | |||
margin-top: 0.3em; | |||
font-family: 'Marcellus', serif; | |||
font-size: clamp( 1rem, 2.4vw, 1.4rem ); | |||
letter-spacing: 0.5em; | |||
text-transform: uppercase; | |||
color: #c25c00; | |||
} | |||
/* Fog from calimasaga.com's fog.css. Only transform and opacity animate | |||
(GPU-composited, cheap on phones); keep durations literal, never var(). */ | |||
.calima-fog--hero { | |||
position: absolute; | |||
inset: 0; | |||
z-index: 1; | |||
overflow: hidden; | |||
pointer-events: none; | |||
opacity: 0.6; | |||
} | |||
.calima-fog--hero span { | |||
position: absolute; | |||
top: -30%; | |||
left: -30%; | |||
width: 160%; | |||
height: 160%; | |||
will-change: transform, opacity; | |||
} | |||
.calima-fog--hero span:nth-child( 1 ) { | |||
background: radial-gradient( ellipse 45% 28% at 34% 40%, rgba( 255, 255, 255, 0.85 ), rgba( 255, 255, 255, 0 ) 70% ); | |||
filter: blur( 24px ); | |||
animation: calima-swirl 39s linear infinite, calima-billow 21s ease-in-out infinite alternate; | |||
} | |||
.calima-fog--hero span:nth-child( 2 ) { | |||
background: radial-gradient( ellipse 55% 24% at 66% 56%, rgba( 255, 255, 255, 0.75 ), rgba( 255, 255, 255, 0 ) 70% ); | |||
filter: blur( 28px ); | |||
animation: calima-swirl 57s linear infinite reverse, calima-billow 27s ease-in-out infinite alternate -9s; | |||
} | |||
.calima-fog--hero span:nth-child( 3 ) { | |||
background: radial-gradient( ellipse 40% 30% at 56% 32%, rgba( 176, 186, 192, 0.55 ), rgba( 176, 186, 192, 0 ) 68% ); | |||
filter: blur( 22px ); | |||
animation: calima-swirl 27s linear infinite, calima-billow 18s ease-in-out infinite alternate -6s; | |||
} | |||
.calima-fog--hero span:nth-child( 4 ) { | |||
background: radial-gradient( ellipse 62% 20% at 42% 64%, rgba( 255, 255, 255, 0.65 ), rgba( 255, 255, 255, 0 ) 72% ); | |||
filter: blur( 32px ); | |||
animation: calima-swirl 48s linear infinite reverse, calima-billow 33s ease-in-out infinite alternate -15s; | |||
} | |||
@keyframes calima-swirl { | |||
0% { transform: rotate( 0deg ) translate3d( -12%, -8%, 0 ) scale( 1 ); } | |||
25% { transform: rotate( 90deg ) translate3d( 9%, -13%, 0 ) scale( 1.22 ); } | |||
50% { transform: rotate( 180deg ) translate3d( 13%, 9%, 0 ) scale( 1.08 ); } | |||
75% { transform: rotate( 270deg ) translate3d( -8%, 12%, 0 ) scale( 1.28 ); } | |||
100% { transform: rotate( 360deg ) translate3d( -12%, -8%, 0 ) scale( 1 ); } | |||
} | |||
@keyframes calima-billow { | |||
0% { opacity: 0.35; } | |||
100% { opacity: 1; } | |||
} | |||
@media ( max-width: 600px ) { | |||
.calima-fog--hero span:nth-child( 2 ), | |||
.calima-fog--hero span:nth-child( 4 ) { | |||
display: none; | |||
} | |||
} | |||
@media ( prefers-reduced-motion: reduce ) { | |||
.calima-fog--hero span { | |||
animation: none; | |||
will-change: auto; | |||
opacity: 0.7; | |||
} | |||
} | |||
/* The World and The Works side by side, in bordered cards */ | |||
.calima-cards { | |||
display: grid; | |||
grid-template-columns: repeat( auto-fit, minmax( 15rem, 1fr ) ); | |||
gap: 1rem; | |||
margin: 1.5em 0 1rem; | |||
} | |||
.calima-card { | |||
padding: 0.9em 1.2em; | |||
border: 1px solid rgba( 60, 66, 72, 0.18 ); | |||
border-top: 3px solid #dd6600; | |||
border-radius: 0.5rem; | |||
background: color-mix( in srgb, var( --color-surface-0 ) 70%, transparent ); | |||
} | |||
.calima-card--wide { | |||
margin-bottom: 1rem; | |||
} | |||
.calima-card__title { | |||
margin-bottom: 0.4em; | |||
font-family: 'Marcellus', serif; | |||
font-size: 1.35em; | |||
color: var( --color-emphasized, #2a2f34 ); | |||
} | |||
.calima-card ul { | |||
margin-top: 0; | |||
} | |||
/* quotes from the games and books */ | |||
.calima-quote { | |||
margin: 1em 0; | |||
padding: 0.4em 1.2em; | |||
border-left: 3px solid #dd6600; | |||
font-family: 'Marcellus', serif; | |||
font-style: italic; | |||
font-size: 1.05em; | |||
line-height: 1.6; | |||
color: var( --color-emphasized, #2a2f34 ); | |||
} | |||
/* a work's key facts, on its hub */ | |||
.calima-facts th { | |||
text-align: left; | |||
white-space: nowrap; | |||
} | |||
/* subject lists on hubs and World pages: "A · B · C" */ | |||
.calima-item { | |||
margin: 0 0.4em; | |||
} | |||
.calima-item:first-child { | |||
margin-left: 0; | |||
} | |||
/* A game's hub: "Playing" over "In this work" on the left, the | |||
"Game reference" on the right at their combined height. One column on | |||
phones, in that order. */ | |||
.calima-hub { | |||
display: grid; | |||
grid-template-columns: minmax( 0, 3fr ) minmax( 0, 2fr ); | |||
grid-template-areas: 'playing ref' 'work ref'; | |||
gap: 1rem; | |||
margin: 1.5em 0 1rem; | |||
} | |||
.calima-hub__playing { grid-area: playing; } | |||
.calima-hub__work { grid-area: work; } | |||
.calima-hub__ref { grid-area: ref; } | |||
@media ( max-width: 720px ) { | |||
.calima-hub { | |||
grid-template-columns: minmax( 0, 1fr ); | |||
grid-template-areas: 'playing' 'work' 'ref'; | |||
} | |||
} | |||
/* a card outside the hub grid (a work without game data) */ | |||
.calima-card.calima-hub__work:only-child, | |||
.mw-parser-output > .calima-hub__work { | |||
margin: 1.5em 0 1rem; | |||
} | |||
.calima-card__sub { | |||
margin: 0.8em 0 0.2em; | |||
font-family: 'Marcellus', serif; | |||
font-size: 1.05em; | |||
color: var( --color-subtle, #565d65 ); | |||
} | |||
.calima-card__sub:first-of-type { | |||
margin-top: 0.2em; | |||
} | |||
/* World pages: subjects as a dictionary, grouped by initial letter */ | |||
.calima-letters { | |||
margin: 1em 0; | |||
font-family: 'Marcellus', serif; | |||
font-size: 1.1em; | |||
word-spacing: 0.4em; | |||
} | |||
.calima-dict { | |||
columns: 3 14rem; | |||
column-gap: 2rem; | |||
} | |||
.calima-dict__group { | |||
break-inside: avoid; | |||
margin-bottom: 1em; | |||
} | |||
.calima-dict__letter { | |||
margin-bottom: 0.2em; | |||
padding-bottom: 0.1em; | |||
border-bottom: 2px solid #dd6600; | |||
font-family: 'Marcellus', serif; | |||
font-size: 1.4em; | |||
color: #c25c00; | |||
scroll-margin-top: 4rem; | |||
} | |||
.calima-dict__item { | |||
padding: 0.1em 0; | |||
} | } | ||
Latest revision as of 01:17, 2 November 2026
/* Calima Saga look for Citizen: slate ink, Calima orange, Marcellus, misty forest. */
@font-face {
font-family: 'Marcellus';
src: url('/w/calima/marcellus-latin.woff2') format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
font-display: swap;
}
@font-face {
font-family: 'Marcellus';
src: url('/w/calima/marcellus-latin-ext.woff2') format('woff2');
unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
font-display: swap;
}
:root {
/* #c25c00, the site's link orange, in OKLCH. Citizen derives every accent from it. */
--color-progressive-oklch__l: 58.99%;
--color-progressive-oklch__c: 0.1538;
--color-progressive-oklch__h: 50.98;
--font-family-citizen-base: 'Marcellus', 'Roboto', serif;
/* Citizen tints every surface with the accent hue; with orange that
reads pink. Keep them near-neutral, like the site's #f6f6f4. */
--color-surface-0-oklch__c: 0.003;
--color-surface-1-oklch__c: 0.004;
--color-surface-2-oklch__c: 0.006;
--color-surface-3-oklch__c: 0.008;
--color-surface-4-oklch__c: 0.01;
}
.skin-theme-clientpref-night {
/* the full orange, for contrast on dark */
--color-progressive-oklch__l: 64.48%;
--color-progressive-oklch__c: 0.1722;
--color-progressive-oklch__h: 49.3;
}
/* forest behind everything, content on a translucent panel (as on calimasaga.com) */
body {
background: #dfe1e0 url('/w/calima/forest.jpg') center top / cover fixed no-repeat;
}
.citizen-page-container {
background: color-mix( in srgb, var( --color-surface-0 ) 93%, transparent );
border-radius: var( --border-radius-medium, 0.5rem );
}
/* Calima orange on the page title rule */
.mw-page-title-main {
font-family: 'Marcellus', serif;
}
.citizen-page-heading {
border-bottom: 2px solid #dd6600;
}
/* language switcher */
.calima-langs {
float: right;
margin: 0 0 1em 1em;
padding: 0.2em 0.8em;
border: 1px solid var( --border-color-base, rgba( 60, 66, 72, 0.2 ) );
border-radius: 999px;
font-size: 0.875em;
}
.calima-langs strong {
color: #dd6600;
}
.calima-langs__missing {
opacity: 0.45;
cursor: help;
}
.calima-intro {
font-size: 1.15em;
border-left: 4px solid #dd6600;
padding: 0.4em 1em;
margin-bottom: 1em;
}
/* "Appears in" box */
.calima-appears {
display: inline-block;
margin: 0 0 1em;
padding: 0.25em 0.8em;
background: rgba( 221, 102, 0, 0.08 );
border-left: 3px solid #dd6600;
font-size: 0.9em;
}
/* spoilers: a closed box, opened with its Show button */
.calima-spoiler {
margin: 0.5em 0 1em;
padding: 0.45em 0.9em;
border: 1px dashed #c25c00;
border-radius: 0.4em;
}
.calima-spoiler__title {
font-size: 0.9em;
}
.calima-spoiler > .mw-collapsible-toggle {
float: right;
font-size: 0.9em;
font-weight: bold;
}
.calima-spoiler > .mw-collapsible-content {
margin-top: 0.6em;
}
/* hub header line: kind, year, link to the product page */
.calima-work {
margin-bottom: 1em;
color: var( --color-subtle, #565d65 );
}
/* the canon rule above every edit box */
.calima-editnotice {
padding: 0.6em 1em;
border-left: 4px solid #dd6600;
background: rgba( 221, 102, 0, 0.08 );
}
/* under each page, for logged-out readers */
.calima-comments-login {
margin-top: 2em;
padding: 0.6em 1em;
border-top: 1px solid var( --border-color-base, rgba( 60, 66, 72, 0.2 ) );
font-size: 0.95em;
}
/* Conversation lives in the comments; CalimaWiki drops the Discussion tab,
but Citizen draws its own copy in the sticky header. */
#ca-talk-sticky-header {
display: none;
}
/* ================= main page: the calimasaga.com masthead ================= */
@font-face {
font-family: 'IxatSE';
src: url('/w/calima/ixat.woff2') format('woff2');
font-display: swap;
}
/* the masthead replaces the page title on the main page and its translations */
.rootpage-Main_Page .citizen-page-heading {
display: none;
}
.calima-hero {
position: relative;
overflow: hidden;
display: flex;
align-items: center;
min-height: clamp( 220px, 38vh, 380px );
margin: 0 0 1.5em;
border-radius: var( --border-radius-medium, 0.5rem );
/* fixed, like the body's forest, so the two line up exactly */
background: #dfe1e0 url('/w/calima/forest.jpg') center top / cover fixed no-repeat;
}
.calima-hero__scrim {
position: absolute;
inset: 0;
background: linear-gradient( 180deg, rgba( 246, 246, 244, 0.15 ) 0%, rgba( 246, 246, 244, 0.35 ) 55%, rgba( 246, 246, 244, 0.95 ) 100% );
}
.calima-hero__inner {
position: relative;
z-index: 2;
width: 100%;
padding: 2rem 1rem;
text-align: center;
}
.calima-wordmark {
font-family: 'IxatSE', 'Marcellus', serif;
color: #2a2f34;
line-height: 0.95;
letter-spacing: 0.04em;
font-size: clamp( 2.6rem, 9vw, 6rem );
text-shadow: 0 2px 18px rgba( 246, 246, 244, 0.9 );
}
.calima-hero__wiki {
margin-top: 0.3em;
font-family: 'Marcellus', serif;
font-size: clamp( 1rem, 2.4vw, 1.4rem );
letter-spacing: 0.5em;
text-transform: uppercase;
color: #c25c00;
}
/* Fog from calimasaga.com's fog.css. Only transform and opacity animate
(GPU-composited, cheap on phones); keep durations literal, never var(). */
.calima-fog--hero {
position: absolute;
inset: 0;
z-index: 1;
overflow: hidden;
pointer-events: none;
opacity: 0.6;
}
.calima-fog--hero span {
position: absolute;
top: -30%;
left: -30%;
width: 160%;
height: 160%;
will-change: transform, opacity;
}
.calima-fog--hero span:nth-child( 1 ) {
background: radial-gradient( ellipse 45% 28% at 34% 40%, rgba( 255, 255, 255, 0.85 ), rgba( 255, 255, 255, 0 ) 70% );
filter: blur( 24px );
animation: calima-swirl 39s linear infinite, calima-billow 21s ease-in-out infinite alternate;
}
.calima-fog--hero span:nth-child( 2 ) {
background: radial-gradient( ellipse 55% 24% at 66% 56%, rgba( 255, 255, 255, 0.75 ), rgba( 255, 255, 255, 0 ) 70% );
filter: blur( 28px );
animation: calima-swirl 57s linear infinite reverse, calima-billow 27s ease-in-out infinite alternate -9s;
}
.calima-fog--hero span:nth-child( 3 ) {
background: radial-gradient( ellipse 40% 30% at 56% 32%, rgba( 176, 186, 192, 0.55 ), rgba( 176, 186, 192, 0 ) 68% );
filter: blur( 22px );
animation: calima-swirl 27s linear infinite, calima-billow 18s ease-in-out infinite alternate -6s;
}
.calima-fog--hero span:nth-child( 4 ) {
background: radial-gradient( ellipse 62% 20% at 42% 64%, rgba( 255, 255, 255, 0.65 ), rgba( 255, 255, 255, 0 ) 72% );
filter: blur( 32px );
animation: calima-swirl 48s linear infinite reverse, calima-billow 33s ease-in-out infinite alternate -15s;
}
@keyframes calima-swirl {
0% { transform: rotate( 0deg ) translate3d( -12%, -8%, 0 ) scale( 1 ); }
25% { transform: rotate( 90deg ) translate3d( 9%, -13%, 0 ) scale( 1.22 ); }
50% { transform: rotate( 180deg ) translate3d( 13%, 9%, 0 ) scale( 1.08 ); }
75% { transform: rotate( 270deg ) translate3d( -8%, 12%, 0 ) scale( 1.28 ); }
100% { transform: rotate( 360deg ) translate3d( -12%, -8%, 0 ) scale( 1 ); }
}
@keyframes calima-billow {
0% { opacity: 0.35; }
100% { opacity: 1; }
}
@media ( max-width: 600px ) {
.calima-fog--hero span:nth-child( 2 ),
.calima-fog--hero span:nth-child( 4 ) {
display: none;
}
}
@media ( prefers-reduced-motion: reduce ) {
.calima-fog--hero span {
animation: none;
will-change: auto;
opacity: 0.7;
}
}
/* The World and The Works side by side, in bordered cards */
.calima-cards {
display: grid;
grid-template-columns: repeat( auto-fit, minmax( 15rem, 1fr ) );
gap: 1rem;
margin: 1.5em 0 1rem;
}
.calima-card {
padding: 0.9em 1.2em;
border: 1px solid rgba( 60, 66, 72, 0.18 );
border-top: 3px solid #dd6600;
border-radius: 0.5rem;
background: color-mix( in srgb, var( --color-surface-0 ) 70%, transparent );
}
.calima-card--wide {
margin-bottom: 1rem;
}
.calima-card__title {
margin-bottom: 0.4em;
font-family: 'Marcellus', serif;
font-size: 1.35em;
color: var( --color-emphasized, #2a2f34 );
}
.calima-card ul {
margin-top: 0;
}
/* quotes from the games and books */
.calima-quote {
margin: 1em 0;
padding: 0.4em 1.2em;
border-left: 3px solid #dd6600;
font-family: 'Marcellus', serif;
font-style: italic;
font-size: 1.05em;
line-height: 1.6;
color: var( --color-emphasized, #2a2f34 );
}
/* a work's key facts, on its hub */
.calima-facts th {
text-align: left;
white-space: nowrap;
}
/* subject lists on hubs and World pages: "A · B · C" */
.calima-item {
margin: 0 0.4em;
}
.calima-item:first-child {
margin-left: 0;
}
/* A game's hub: "Playing" over "In this work" on the left, the
"Game reference" on the right at their combined height. One column on
phones, in that order. */
.calima-hub {
display: grid;
grid-template-columns: minmax( 0, 3fr ) minmax( 0, 2fr );
grid-template-areas: 'playing ref' 'work ref';
gap: 1rem;
margin: 1.5em 0 1rem;
}
.calima-hub__playing { grid-area: playing; }
.calima-hub__work { grid-area: work; }
.calima-hub__ref { grid-area: ref; }
@media ( max-width: 720px ) {
.calima-hub {
grid-template-columns: minmax( 0, 1fr );
grid-template-areas: 'playing' 'work' 'ref';
}
}
/* a card outside the hub grid (a work without game data) */
.calima-card.calima-hub__work:only-child,
.mw-parser-output > .calima-hub__work {
margin: 1.5em 0 1rem;
}
.calima-card__sub {
margin: 0.8em 0 0.2em;
font-family: 'Marcellus', serif;
font-size: 1.05em;
color: var( --color-subtle, #565d65 );
}
.calima-card__sub:first-of-type {
margin-top: 0.2em;
}
/* World pages: subjects as a dictionary, grouped by initial letter */
.calima-letters {
margin: 1em 0;
font-family: 'Marcellus', serif;
font-size: 1.1em;
word-spacing: 0.4em;
}
.calima-dict {
columns: 3 14rem;
column-gap: 2rem;
}
.calima-dict__group {
break-inside: avoid;
margin-bottom: 1em;
}
.calima-dict__letter {
margin-bottom: 0.2em;
padding-bottom: 0.1em;
border-bottom: 2px solid #dd6600;
font-family: 'Marcellus', serif;
font-size: 1.4em;
color: #c25c00;
scroll-margin-top: 4rem;
}
.calima-dict__item {
padding: 0.1em 0;
}