MediaWiki:Common.css: различия между версиями
Страница интерфейса MediaWiki
Дополнительные действия
Mobile redesign |
Mobile redesign |
||
| Строка 1968: | Строка 1968: | ||
.bc-card { | .bc-card { | ||
min-height: 0 !important; | min-height: 0 !important; | ||
} | |||
} | |||
.bc-card-grid, | |||
.bc-section-grid .bc-card-grid { | |||
display: grid !important; | |||
grid-template-columns: repeat(auto-fit, minmax(min(280px, 100%), 1fr)) !important; | |||
gap: 18px !important; | |||
} | |||
.bc-card-grid > p, | |||
.bc-section-grid .bc-card-grid > p { | |||
display: contents !important; | |||
} | |||
.bc-card-grid > a, | |||
.bc-card-grid > p > a { | |||
min-width: 0 !important; | |||
} | |||
@media (max-width: 900px) { | |||
.bc-card-grid, | |||
.bc-section-grid .bc-card-grid { | |||
grid-template-columns: repeat(auto-fit, minmax(min(220px, 100%), 1fr)) !important; | |||
} | |||
} | |||
@media (max-width: 640px) { | |||
.bc-card-grid, | |||
.bc-section-grid .bc-card-grid { | |||
grid-template-columns: 1fr !important; | |||
} | } | ||
} | } | ||
Версия от 02:03, 26 мая 2026
/* BRICSCompass mobile-first redesign */
:root {
--bc-bg: #f5f6f7;
--bc-surface: #ffffff;
--bc-text: #20242a;
--bc-muted: #59636e;
--bc-line: #e7e9ec;
--bc-accent: #e40046;
--bc-accent-dark: #b80037;
--bc-blue: #dceaf5;
--bc-radius: 28px;
}
body.skin-citizen,
.skin-citizen #content {
background: var(--bc-bg);
color: var(--bc-text);
}
.skin-citizen .citizen-header {
background: #ffffff !important;
border-color: var(--bc-line) !important;
box-shadow: 0 8px 28px rgba(22, 28, 36, 0.05);
}
.skin-citizen .citizen-page-actions {
display: none !important;
}
.skin-citizen .mw-body,
.skin-citizen .citizen-body {
max-width: 1480px;
}
.mw-parser-output {
font-size: 18px;
line-height: 1.62;
}
.mw-parser-output h1,
.mw-parser-output h2,
.mw-parser-output h3 {
letter-spacing: 0;
color: var(--bc-text);
}
.mw-parser-output h2 {
font-size: 42px;
line-height: 1.12;
margin-top: 56px;
border-bottom: 0;
}
.bc-shell {
max-width: 1380px;
margin: 0 auto;
padding: 0 28px 56px;
}
.bc-topbar {
display: flex;
align-items: center;
justify-content: space-between;
gap: 24px;
padding: 24px 0 42px;
}
.bc-brand {
display: flex;
align-items: center;
gap: 16px;
font-weight: 800;
font-size: 24px;
}
.bc-mark {
width: 48px;
height: 48px;
border-radius: 14px;
background: linear-gradient(135deg, #2f6f73 0 25%, #a23e48 25% 50%, #e1b24a 50% 75%, #3b5ba5 75%);
}
.bc-actions {
display: flex;
align-items: center;
gap: 12px;
padding: 10px;
border-radius: 999px;
background: #f0f1f3;
}
.bc-pill,
.bc-primary {
display: inline-flex;
align-items: center;
justify-content: center;
min-height: 44px;
padding: 0 22px;
border-radius: 999px;
font-weight: 700;
text-decoration: none;
}
.bc-pill {
color: var(--bc-text);
background: var(--bc-surface);
border: 1px solid #cdd2d7;
}
.bc-primary {
color: #fff !important;
background: var(--bc-accent);
border: 1px solid var(--bc-accent);
}
.bc-hero {
display: grid;
grid-template-columns: minmax(0, 1.05fr) minmax(420px, 0.95fr);
align-items: center;
gap: 58px;
min-height: 650px;
}
.bc-eyebrow {
font-size: 18px;
font-weight: 800;
color: var(--bc-muted);
margin-bottom: 18px;
}
.bc-hero-title {
font-size: clamp(42px, 4.2vw, 74px);
line-height: 1.05;
font-weight: 850;
margin: 0 0 28px;
color: var(--bc-text);
}
.bc-lead {
max-width: 760px;
font-size: 24px;
line-height: 1.45;
color: #161a1f;
margin-bottom: 34px;
}
.bc-search {
display: flex;
align-items: center;
gap: 22px;
max-width: 760px;
padding: 22px;
border-radius: 48px;
background: var(--bc-blue);
}
.bc-bot {
width: 76px;
height: 76px;
border-radius: 24px;
background: #fff;
display: grid;
place-items: center;
font-size: 38px;
}
.bc-search-text {
flex: 1;
min-width: 0;
}
.bc-search-label {
font-size: 18px;
font-weight: 700;
margin-bottom: 10px;
color: #ffffff;
}
.bc-search-box {
background: #fff;
border-radius: 999px;
padding: 14px 22px;
color: #6c7580;
}
.bc-arrow {
width: 62px;
height: 62px;
border-radius: 50%;
background: #2b2f34;
color: #fff;
display: grid;
place-items: center;
font-size: 32px;
}
.bc-tags {
display: flex;
flex-wrap: wrap;
gap: 12px;
margin-top: 24px;
}
.bc-tag {
display: inline-flex;
align-items: center;
min-height: 38px;
padding: 0 18px;
border-radius: 999px;
background: #dceaf5;
font-size: 15px;
color: #25313c;
}
.bc-photo {
position: relative;
border-radius: 34px;
overflow: hidden;
box-shadow: 0 28px 80px rgba(22, 28, 36, 0.13);
background: #fff;
transform: rotate(-1deg);
}
.bc-photo img,
.bc-section-photo img {
display: block;
width: 100%;
height: auto;
}
.bc-photo-caption {
position: absolute;
left: 24px;
right: 24px;
bottom: 24px;
padding: 18px 22px;
border-radius: 22px;
background: rgba(255, 255, 255, 0.92);
font-weight: 750;
}
.bc-section {
padding: 56px 0;
}
.bc-section-grid {
display: grid;
grid-template-columns: minmax(0, 1fr) minmax(360px, 520px);
gap: 56px;
align-items: center;
max-width: 1220px;
margin-right: auto;
margin-left: auto;
}
.bc-section-photo {
border-radius: 32px;
overflow: hidden;
box-shadow: 0 18px 60px rgba(22, 28, 36, 0.12);
min-height: 260px;
background:
linear-gradient(135deg, rgba(29, 95, 159, 0.10), rgba(228, 0, 70, 0.06)),
#fff;
}
.bc-section-photo .mw-broken-media,
.bc-section-photo .new {
display: none !important;
}
.bc-card-grid {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 18px;
margin: 28px 0 18px;
}
.bc-card-grid > p {
display: grid;
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 18px;
margin: 0;
}
.bc-card-grid > p > a {
display: block;
min-width: 0;
text-decoration: none !important;
}
.bc-section-grid .bc-card-grid,
.bc-section-grid .bc-card-grid > p {
grid-template-columns: repeat(2, minmax(220px, 1fr));
}
.bc-card {
display: block;
box-sizing: border-box;
width: 100%;
height: 100%;
min-height: 168px;
padding: 26px;
border-radius: 24px;
background: var(--bc-surface);
border: 1px solid var(--bc-line);
box-shadow: 0 10px 34px rgba(22, 28, 36, 0.06);
text-decoration: none;
}
.bc-section-grid .bc-card {
min-height: 148px;
}
.bc-card strong {
display: block;
font-size: 22px;
line-height: 1.2;
color: var(--bc-text);
margin-bottom: 12px;
}
.bc-card span {
color: var(--bc-muted);
}
.bc-stat-grid {
display: grid;
grid-template-columns: repeat(2, minmax(190px, 1fr));
gap: 18px;
margin: 48px 0;
max-width: 680px;
}
.bc-stat {
min-height: 156px;
padding: 22px 24px;
border-radius: 24px;
background: #fff;
border: 1px solid var(--bc-line);
box-shadow: 0 10px 34px rgba(22, 28, 36, 0.05);
min-width: 0;
}
.bc-stat-value {
display: flex;
align-items: baseline;
gap: 12px;
font-size: clamp(48px, 4vw, 72px);
line-height: 1;
font-weight: 500;
color: var(--bc-text);
white-space: nowrap;
}
.bc-stat-value::before {
content: ">";
display: inline-grid;
place-items: center;
width: 28px;
height: 28px;
border-radius: 8px;
background: var(--bc-accent);
color: #fff;
font-size: 18px;
font-weight: 800;
}
.bc-stat-label {
color: var(--bc-muted);
font-size: 17px;
max-width: 230px;
overflow-wrap: normal;
word-break: normal;
hyphens: none;
margin-top: 12px;
line-height: 1.35;
}
.bc-country-grid {
display: grid;
grid-template-columns: repeat(5, minmax(0, 1fr));
gap: 14px;
margin-top: 28px;
}
.bc-country-grid a {
text-decoration: none;
}
.bc-country {
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px;
box-sizing: border-box;
width: 100%;
min-height: 72px;
padding: 0 20px;
border-radius: 22px;
background: #fff;
border: 1px solid var(--bc-line);
box-shadow: 0 8px 26px rgba(22, 28, 36, 0.05);
color: var(--bc-text);
font-weight: 750;
text-decoration: none;
}
.bc-country::after {
content: "";
display: block;
width: 32px;
height: 32px;
border-radius: 50%;
background: #edf3f8;
background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='32'%20height='32'%20viewBox='0%200%2032%2032'%20fill='none'%3E%3Cpath%20d='M13%2010L19%2016L13%2022'%20stroke='%232f5f9e'%20stroke-width='2.4'%20stroke-linecap='round'%20stroke-linejoin='round'/%3E%3C/svg%3E");
background-position: center;
background-repeat: no-repeat;
flex: 0 0 auto;
}
.wikitable {
width: 100%;
border: 0;
background: transparent;
border-collapse: separate;
border-spacing: 0 10px;
}
.wikitable th {
background: #eef1f4;
border: 0;
border-radius: 14px 14px 0 0;
padding: 14px 16px;
}
.wikitable td {
background: #fff;
border: 0;
border-top: 1px solid var(--bc-line);
border-bottom: 1px solid var(--bc-line);
padding: 14px 16px;
}
.wikitable tr td:first-child {
border-left: 1px solid var(--bc-line);
border-radius: 14px 0 0 14px;
}
.wikitable tr td:last-child {
border-right: 1px solid var(--bc-line);
border-radius: 0 14px 14px 0;
}
.thumb,
.mw-parser-output .thumb {
max-width: 100%;
}
.mw-parser-output img {
max-width: 100%;
height: auto;
}
@media (max-width: 980px) {
.mw-parser-output {
font-size: 16px;
}
.mw-parser-output h2 {
font-size: 32px;
margin-top: 40px;
}
.bc-shell {
padding: 0 18px 42px;
}
.bc-topbar {
padding: 16px 0 28px;
}
.bc-actions {
display: none;
}
.bc-hero,
.bc-section-grid {
grid-template-columns: 1fr;
gap: 28px;
min-height: 0;
}
.bc-hero-title {
font-size: 42px;
}
.bc-lead {
font-size: 19px;
}
.bc-search {
border-radius: 28px;
padding: 16px;
align-items: flex-start;
}
.bc-bot {
width: 54px;
height: 54px;
font-size: 27px;
border-radius: 18px;
}
.bc-arrow {
width: 48px;
height: 48px;
font-size: 24px;
}
.bc-card-grid,
.bc-card-grid > p,
.bc-section-grid .bc-card-grid,
.bc-section-grid .bc-card-grid > p,
.bc-stat-grid {
grid-template-columns: 1fr;
gap: 14px;
}
.bc-country-grid {
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 10px;
}
.bc-country {
min-height: 60px;
padding: 0 14px;
border-radius: 18px;
font-size: 15px;
}
.bc-card {
min-height: 0;
padding: 20px;
border-radius: 20px;
}
.bc-photo {
transform: none;
border-radius: 24px;
}
.wikitable {
display: block;
overflow-x: auto;
white-space: nowrap;
-webkit-overflow-scrolling: touch;
}
}
@media (max-width: 560px) {
.bc-brand {
font-size: 20px;
}
.bc-mark {
width: 40px;
height: 40px;
}
.bc-hero-title {
font-size: 34px;
}
.bc-search {
display: grid;
grid-template-columns: 54px 1fr;
}
.bc-arrow {
display: none;
}
.bc-country-grid {
grid-template-columns: 1fr;
}
.bc-photo-caption {
position: static;
border-radius: 0;
}
}
/* Visual polish and interactive layer */
:root {
--bc-bg: #f3f5f7;
--bc-surface: #ffffff;
--bc-text: #171c24;
--bc-muted: #4f5b68;
--bc-soft: #e8f1f8;
--bc-line: #dfe4ea;
--bc-dark: #090d14;
--bc-dark-2: #101722;
--bc-dark-text: #f7fbff;
--bc-dark-muted: #b8c6d4;
--bc-accent: #e40046;
--bc-blue: #1d5f9f;
--bc-shadow: 0 24px 70px rgba(19, 28, 41, 0.10);
}
html {
scroll-behavior: smooth;
}
body {
overflow-x: hidden;
}
body.skin-citizen,
.skin-citizen #content,
.skin-citizen .mw-body,
.skin-citizen .citizen-body {
background:
radial-gradient(circle at 10% 0%, rgba(29, 95, 159, 0.08), transparent 32rem),
linear-gradient(180deg, #fbfcfd 0%, var(--bc-bg) 48rem);
color: var(--bc-text);
}
.skin-citizen .mw-body,
.skin-citizen .citizen-body {
max-width: 1320px !important;
margin-right: auto !important;
margin-left: auto !important;
}
.skin-citizen .mw-body-header,
.skin-citizen .citizen-body-header,
.skin-citizen .page-heading,
.skin-citizen .prebody,
.skin-citizen #bodyContent {
max-width: 1220px;
margin-right: auto;
margin-left: auto;
}
.skin-citizen .firstHeading,
.skin-citizen .mw-first-heading,
.skin-citizen .page-title,
.skin-citizen .citizen-page-heading h1 {
color: var(--bc-text) !important;
opacity: 1 !important;
text-shadow: none !important;
font-weight: 850 !important;
letter-spacing: 0 !important;
}
.skin-citizen .page-subtitle,
.skin-citizen #siteSub,
.skin-citizen .mw-indicators,
.skin-citizen .catlinks,
.skin-citizen .mw-footer,
.skin-citizen .citizen-page-footer {
color: #263646 !important;
opacity: 1 !important;
}
.skin-citizen .catlinks,
.skin-citizen .page-info,
.skin-citizen .citizen-page-footer,
.skin-citizen .citizen-footer {
color: #263646 !important;
}
.skin-citizen .catlinks a,
.skin-citizen .page-info a,
.skin-citizen .page-info__label,
.skin-citizen .page-info__text,
.skin-citizen .citizen-page-footer a,
.skin-citizen .citizen-footer a,
.skin-citizen #footer-info-lastmod,
.skin-citizen #footer-info-lastmod a {
color: #244f83 !important;
opacity: 1 !important;
}
.skin-citizen .page-info__label,
.skin-citizen .catlinks > div > a {
font-weight: 750;
}
body.skin-citizen .citizen-page-footer,
body.skin-citizen .citizen-page-footer *,
body.skin-citizen .catlinks,
body.skin-citizen .catlinks *,
body.skin-citizen .page-info,
body.skin-citizen .page-info *,
body.skin-citizen #footer-info-lastmod,
body.skin-citizen #footer-info-lastmod * {
color: #08213c !important;
opacity: 1 !important;
-webkit-text-fill-color: #08213c !important;
}
body.skin-citizen .catlinks a,
body.skin-citizen .page-info a,
body.skin-citizen .citizen-page-footer a {
color: #003f7d !important;
-webkit-text-fill-color: #003f7d !important;
text-decoration-color: rgba(0, 63, 125, 0.42) !important;
}
.mw-parser-output,
.mw-parser-output p,
.mw-parser-output li,
.mw-parser-output td {
color: var(--bc-text);
}
.mw-parser-output a {
color: #174f91;
text-decoration-thickness: 0.08em;
text-underline-offset: 0.16em;
}
.mw-parser-output a:hover,
.skin-citizen .catlinks a:hover,
.skin-citizen .page-info a:hover,
.skin-citizen .citizen-page-footer a:hover,
.skin-citizen .citizen-footer a:hover {
color: #0d3768 !important;
}
.mw-parser-output h1,
.mw-parser-output h2,
.mw-parser-output h3 {
color: var(--bc-text) !important;
}
.bc-shell {
max-width: 1220px;
margin: 0 auto;
padding: 0 24px 76px;
box-sizing: border-box;
}
.bc-stage {
position: relative;
isolation: isolate;
margin: 16px 0 48px;
padding: 0;
max-width: 100%;
overflow: hidden;
}
.bc-topbar {
position: relative;
z-index: 3;
padding: 18px 0 34px;
}
.bc-actions {
background: rgba(255, 255, 255, 0.74);
border: 1px solid rgba(223, 228, 234, 0.85);
box-shadow: 0 14px 42px rgba(20, 30, 43, 0.07);
backdrop-filter: blur(18px);
}
.bc-pill,
.bc-primary,
.bc-tag {
transition: transform 180ms ease, box-shadow 180ms ease, background-color 180ms ease, border-color 180ms ease;
}
.bc-pill:hover,
.bc-primary:hover,
.bc-tag:hover {
transform: translateY(-2px);
}
.bc-hero {
position: relative;
z-index: 1;
align-items: center;
min-height: 620px;
padding: 18px 0 34px;
min-width: 0;
max-width: 100%;
}
.bc-hero::before {
content: "";
position: absolute;
inset: -36px -48px 18%;
z-index: -2;
border-radius: 44px;
background: linear-gradient(135deg, rgba(255,255,255,0.72), rgba(232,241,248,0.68));
border: 1px solid rgba(255,255,255,0.68);
box-shadow: inset 0 1px 0 rgba(255,255,255,0.7);
}
#bc-particles {
position: absolute;
inset: -24px -32px 8%;
z-index: -1;
pointer-events: none;
opacity: 0.92;
}
.bc-hero-copy {
max-width: 620px;
min-width: 0;
}
.bc-eyebrow {
color: #364556;
font-weight: 850;
}
.bc-hero-title {
color: #151a22;
text-wrap: balance;
}
.bc-lead {
color: #1d2732;
max-width: 620px;
}
.bc-search {
position: relative;
overflow: hidden;
box-shadow: 0 18px 42px rgba(29, 95, 159, 0.12);
box-sizing: border-box;
max-width: 100%;
}
.bc-search::after {
content: "";
position: absolute;
inset: 0;
border: 1px solid rgba(255,255,255,0.72);
border-radius: inherit;
pointer-events: none;
}
.bc-search-input {
box-sizing: border-box;
width: 100%;
min-width: 0;
border: 0;
outline: 0;
background: #fff;
color: var(--bc-text);
border-radius: 999px;
padding: 14px 22px;
font: inherit;
font-size: 16px;
box-shadow: inset 0 0 0 1px transparent;
}
.bc-search-input:focus {
box-shadow: inset 0 0 0 2px rgba(29, 95, 159, 0.28);
}
.bc-tag {
border: 0;
cursor: pointer;
font: inherit;
font-size: 15px;
color: #203142;
user-select: none;
}
.bc-tag.is-active {
background: #203142;
color: #fff;
}
.bc-photo {
transform: none;
box-shadow: var(--bc-shadow);
}
.bc-photo::after,
.bc-section-photo::after {
content: "";
position: absolute;
inset: 0;
border-radius: inherit;
box-shadow: inset 0 0 0 1px rgba(255,255,255,0.35);
pointer-events: none;
}
.bc-photo img,
.bc-section-photo img {
aspect-ratio: 16 / 9;
object-fit: cover;
}
.bc-photo-caption {
color: #17202b;
background: rgba(255, 255, 255, 0.9);
box-shadow: 0 14px 34px rgba(15, 23, 42, 0.10);
backdrop-filter: blur(12px);
}
.bc-section,
.bc-section-grid,
.bc-dark-band {
position: relative;
margin: 42px 0;
}
.bc-section-main {
padding: 68px 0 28px;
}
.bc-card-grid {
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 18px;
}
.bc-card-grid a,
.bc-stat-grid a,
.bc-country-grid a {
text-decoration: none !important;
}
.bc-card,
.bc-stat,
.bc-country {
box-shadow: 0 16px 48px rgba(19, 28, 41, 0.08);
transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease, background-color 180ms ease;
}
.bc-card:hover,
.bc-stat:hover,
.bc-country:hover,
.bc-card.is-match,
.bc-country.is-match {
transform: translateY(-4px);
border-color: rgba(29, 95, 159, 0.38);
box-shadow: 0 24px 68px rgba(19, 28, 41, 0.13);
}
.bc-card.is-dim,
.bc-country.is-dim {
opacity: 0.38;
}
.bc-stat {
display: flex;
flex-direction: column;
justify-content: center;
min-height: 164px;
}
.bc-stat-value::before {
border-radius: 999px;
background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='28'%20height='28'%20viewBox='0%200%2028%2028'%20fill='none'%3E%3Cpath%20d='M11%208L17%2014L11%2020'%20stroke='white'%20stroke-width='2.4'%20stroke-linecap='round'%20stroke-linejoin='round'/%3E%3C/svg%3E");
background-position: center;
background-repeat: no-repeat;
color: transparent;
}
.bc-data-section {
align-items: center;
margin-top: 72px;
margin-bottom: 72px;
}
.bc-section-photo {
position: relative;
background: #fff;
box-shadow: var(--bc-shadow);
}
.bc-dark-band {
display: grid;
grid-template-columns: minmax(0, 0.85fr) minmax(460px, 1.15fr);
gap: 44px;
align-items: center;
overflow: hidden;
padding: 54px;
border-radius: 36px;
background:
radial-gradient(circle at 88% 18%, rgba(228, 0, 70, 0.32), transparent 18rem),
radial-gradient(circle at 12% 92%, rgba(29, 95, 159, 0.34), transparent 20rem),
linear-gradient(135deg, var(--bc-dark), var(--bc-dark-2));
color: var(--bc-dark-text);
box-shadow: 0 28px 90px rgba(8, 12, 20, 0.24);
}
.bc-dark-band::before {
content: "";
position: absolute;
inset: 0;
background-image: linear-gradient(rgba(255,255,255,0.045) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.045) 1px, transparent 1px);
background-size: 36px 36px;
mask-image: linear-gradient(90deg, transparent, #000 20%, #000 80%, transparent);
pointer-events: none;
}
.bc-dark-title {
position: relative;
z-index: 1;
max-width: 520px;
color: #fff;
font-size: clamp(34px, 4vw, 58px);
line-height: 1.04;
font-weight: 850;
text-wrap: balance;
}
.bc-dark-text {
position: relative;
z-index: 1;
max-width: 620px;
margin-top: 22px;
color: var(--bc-dark-muted);
font-size: 20px;
line-height: 1.55;
}
.bc-route-grid {
position: relative;
z-index: 1;
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 14px;
}
.bc-route-item {
min-height: 132px;
padding: 22px;
border-radius: 24px;
background: rgba(255, 255, 255, 0.08);
border: 1px solid rgba(255, 255, 255, 0.14);
box-shadow: inset 0 1px 0 rgba(255,255,255,0.12);
backdrop-filter: blur(10px);
}
.bc-route-item span {
display: inline-flex;
margin-bottom: 18px;
color: #ff9fbd;
font-size: 14px;
font-weight: 850;
}
.bc-route-item strong {
display: block;
color: #fff;
font-size: 22px;
line-height: 1.1;
}
.bc-route-item em {
display: block;
margin-top: 10px;
color: var(--bc-dark-muted);
font-style: normal;
font-size: 15px;
line-height: 1.35;
}
.bc-country-section {
padding-top: 38px;
}
.bc-country-grid {
grid-template-columns: repeat(5, minmax(150px, 1fr));
}
.bc-country {
color: #111822;
background: rgba(255,255,255,0.92);
}
@keyframes bcFadeUp {
from {
opacity: 0;
transform: translateY(18px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
.bc-ready .bc-card,
.bc-ready .bc-stat,
.bc-ready .bc-country,
.bc-ready .bc-route-item {
animation: bcFadeUp 520ms ease both;
}
.bc-ready .bc-card:nth-child(2),
.bc-ready .bc-stat:nth-child(2),
.bc-ready .bc-country-grid > div:nth-child(2),
.bc-ready .bc-route-item:nth-child(2) {
animation-delay: 60ms;
}
.bc-ready .bc-card:nth-child(3),
.bc-ready .bc-stat:nth-child(3),
.bc-ready .bc-country-grid > div:nth-child(3),
.bc-ready .bc-route-item:nth-child(3) {
animation-delay: 120ms;
}
.bc-ready .bc-card:nth-child(4),
.bc-ready .bc-stat:nth-child(4),
.bc-ready .bc-country-grid > div:nth-child(4),
.bc-ready .bc-route-item:nth-child(4) {
animation-delay: 180ms;
}
@media (prefers-reduced-motion: reduce) {
* {
animation-duration: 0.01ms !important;
animation-iteration-count: 1 !important;
scroll-behavior: auto !important;
transition-duration: 0.01ms !important;
}
}
@media (max-width: 1080px) {
.bc-shell {
max-width: 920px;
}
.bc-card-grid,
.bc-card-grid > p,
.bc-section-grid .bc-card-grid,
.bc-section-grid .bc-card-grid > p,
.bc-country-grid {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
.bc-dark-band {
grid-template-columns: 1fr;
}
}
@media (max-width: 680px) {
.citizen-page-container,
.skin-citizen .mw-body,
.skin-citizen .citizen-body,
.skin-citizen #bodyContent,
.skin-citizen .mw-body-content,
.skin-citizen .mw-parser-output {
width: 100% !important;
max-width: 100vw !important;
min-width: 0 !important;
overflow-x: hidden !important;
}
.skin-citizen .mw-body,
.skin-citizen .citizen-body {
max-width: 100% !important;
}
.bc-shell {
width: 100%;
max-width: 100%;
padding: 0 18px 64px;
}
.bc-stage {
margin-top: 0;
}
.bc-hero::before,
#bc-particles {
inset: -16px -18px 12%;
border-radius: 28px;
}
.bc-hero {
padding-top: 6px;
min-height: 0;
grid-template-columns: minmax(0, 1fr);
}
.bc-hero-copy,
.bc-photo,
.bc-section,
.bc-section-grid,
.bc-dark-band {
width: 100%;
max-width: calc(100vw - 68px);
}
.bc-hero-title {
font-size: clamp(34px, 11vw, 44px);
max-width: calc(100vw - 68px);
overflow-wrap: anywhere;
}
.bc-lead {
font-size: 18px;
line-height: 1.5;
}
.bc-search {
grid-template-columns: 54px 1fr;
gap: 14px;
width: 100%;
max-width: calc(100vw - 68px);
box-sizing: border-box;
}
.bc-search-text {
min-width: 0;
}
.bc-search-input {
padding: 13px 18px;
font-size: 15px;
}
.bc-card-grid,
.bc-card-grid > p,
.bc-section-grid .bc-card-grid,
.bc-section-grid .bc-card-grid > p,
.bc-country-grid,
.bc-route-grid {
grid-template-columns: 1fr;
}
.bc-dark-band {
padding: 30px 22px;
border-radius: 26px;
}
.bc-dark-title {
font-size: 32px;
}
.bc-dark-text {
font-size: 17px;
}
}
/* Final responsive theme pass */
:root,
html.skin-theme-clientpref-day {
color-scheme: light;
--bc-page: #f6f8fb;
--bc-page-2: #eef3f8;
--bc-surface: #ffffff;
--bc-surface-2: #f8fbfd;
--bc-text: #101720;
--bc-muted: #4d5b68;
--bc-soft: #e7f0f7;
--bc-line: #d9e1ea;
--bc-accent: #e40046;
--bc-accent-dark: #b80037;
--bc-link: #14578f;
--bc-link-hover: #083f70;
--bc-focus: #2b6f9f;
--bc-shadow: 0 18px 52px rgba(20, 31, 46, 0.10);
--bc-shadow-soft: 0 8px 26px rgba(20, 31, 46, 0.07);
}
html.skin-theme-clientpref-night,
html.skin-theme-clientpref-os body.skin-citizen-theme-dark,
html.skin-theme-clientpref-os[data-theme="dark"] {
color-scheme: dark;
--bc-page: #0d131a;
--bc-page-2: #121c26;
--bc-surface: #17212c;
--bc-surface-2: #1d2935;
--bc-text: #eef5fb;
--bc-muted: #b3c1cf;
--bc-soft: #243646;
--bc-line: #314252;
--bc-accent: #ff477b;
--bc-accent-dark: #f0165e;
--bc-link: #8cc8ff;
--bc-link-hover: #b9dcff;
--bc-focus: #79bee9;
--bc-shadow: 0 22px 58px rgba(0, 0, 0, 0.30);
--bc-shadow-soft: 0 10px 30px rgba(0, 0, 0, 0.24);
}
body.skin-citizen,
.skin-citizen #content,
.skin-citizen .mw-body,
.skin-citizen .citizen-body {
background:
radial-gradient(circle at 12% -4rem, color-mix(in srgb, var(--bc-focus) 12%, transparent), transparent 34rem),
linear-gradient(180deg, var(--bc-page) 0%, var(--bc-page-2) 100%) !important;
color: var(--bc-text) !important;
}
.skin-citizen .mw-body,
.skin-citizen .citizen-body,
.skin-citizen #bodyContent,
.skin-citizen .mw-body-content {
box-sizing: border-box;
width: 100%;
max-width: 1280px !important;
min-width: 0 !important;
}
.skin-citizen .citizen-header,
.skin-citizen .citizen-page-header {
background: color-mix(in srgb, var(--bc-surface) 92%, transparent) !important;
border-color: var(--bc-line) !important;
box-shadow: var(--bc-shadow-soft);
}
.skin-citizen .mw-parser-output {
font-size: clamp(16px, 1vw, 18px);
line-height: 1.58;
}
.skin-citizen .mw-parser-output,
.skin-citizen .mw-parser-output p,
.skin-citizen .mw-parser-output li,
.skin-citizen .mw-parser-output td,
.skin-citizen .mw-parser-output th {
color: var(--bc-text) !important;
}
.skin-citizen .mw-parser-output a,
.skin-citizen .catlinks a,
.skin-citizen .page-info a,
.skin-citizen .citizen-page-footer a,
.skin-citizen .citizen-footer a {
color: var(--bc-link) !important;
text-decoration-color: color-mix(in srgb, var(--bc-link) 42%, transparent) !important;
}
.skin-citizen .mw-parser-output a:hover,
.skin-citizen .catlinks a:hover,
.skin-citizen .page-info a:hover,
.skin-citizen .citizen-page-footer a:hover,
.skin-citizen .citizen-footer a:hover {
color: var(--bc-link-hover) !important;
}
.bc-shell {
width: min(100%, 1220px);
max-width: none;
padding: 0 clamp(16px, 3vw, 28px) 72px;
}
.bc-stage {
margin: 0 0 clamp(36px, 6vw, 68px);
overflow: visible;
}
.bc-topbar {
padding: clamp(16px, 2vw, 24px) 0 clamp(28px, 4vw, 44px);
}
.bc-brand {
color: var(--bc-text);
}
.bc-mark {
border-radius: 12px;
box-shadow: 0 10px 24px rgba(20, 31, 46, 0.12);
}
.bc-actions {
background: color-mix(in srgb, var(--bc-surface) 88%, transparent);
border-color: var(--bc-line);
}
.bc-pill,
.bc-primary {
min-height: 42px;
padding: 0 18px;
border-radius: 999px;
white-space: nowrap;
}
.bc-pill {
background: var(--bc-surface);
border-color: var(--bc-line);
color: var(--bc-text) !important;
}
.bc-primary {
background: var(--bc-accent);
border-color: var(--bc-accent);
color: #fff !important;
}
.bc-hero {
grid-template-columns: minmax(0, 1fr) minmax(340px, 0.78fr);
gap: clamp(28px, 5vw, 64px);
min-height: clamp(500px, 60vh, 640px);
padding: clamp(18px, 3vw, 36px) 0;
}
.bc-hero::before {
inset: -24px -28px 8%;
border-radius: 30px;
background:
linear-gradient(135deg, color-mix(in srgb, var(--bc-surface) 78%, transparent), color-mix(in srgb, var(--bc-soft) 68%, transparent));
border-color: color-mix(in srgb, var(--bc-line) 72%, transparent);
}
#bc-particles {
inset: -18px -22px 8%;
opacity: 0.78;
}
.bc-hero-copy {
max-width: 680px;
}
.bc-eyebrow {
color: var(--bc-muted);
font-size: clamp(14px, 1.3vw, 18px);
letter-spacing: 0.01em;
text-transform: uppercase;
}
.bc-hero-title {
max-width: 760px;
color: var(--bc-text) !important;
font-size: clamp(38px, 5vw, 60px);
line-height: 1.04;
overflow-wrap: anywhere;
}
.bc-lead {
color: var(--bc-muted);
font-size: clamp(18px, 2vw, 23px);
line-height: 1.46;
}
.bc-search {
display: grid;
grid-template-columns: auto minmax(0, 1fr) auto;
background: var(--bc-soft);
border: 1px solid var(--bc-line);
border-radius: 24px;
padding: 16px;
box-shadow: var(--bc-shadow-soft);
}
.bc-bot {
width: 56px;
height: 56px;
border-radius: 16px;
background: var(--bc-surface);
color: var(--bc-accent);
font-size: 28px;
}
.bc-search-label {
color: var(--bc-text);
font-size: 15px;
margin-bottom: 8px;
}
.bc-search-box,
.bc-search-input {
background: var(--bc-surface);
color: var(--bc-muted);
border: 1px solid var(--bc-line);
}
.bc-search-input {
color: var(--bc-text);
}
.bc-arrow {
width: 52px;
height: 52px;
background: var(--bc-text);
color: var(--bc-page);
}
.bc-tag {
background: var(--bc-soft);
border: 1px solid var(--bc-line);
color: var(--bc-text);
}
.bc-tag.is-active {
background: var(--bc-text);
color: var(--bc-page);
}
.bc-photo,
.bc-section-photo {
border-radius: 22px;
background:
linear-gradient(135deg, color-mix(in srgb, var(--bc-soft) 72%, transparent), color-mix(in srgb, var(--bc-surface) 86%, transparent)),
var(--bc-surface);
border: 1px solid var(--bc-line);
box-shadow: var(--bc-shadow);
}
.bc-photo img,
.bc-section-photo img {
aspect-ratio: 16 / 10;
object-fit: cover;
object-position: center;
}
.bc-photo-caption {
left: 18px;
right: 18px;
bottom: 18px;
padding: 14px 16px;
border-radius: 16px;
background: color-mix(in srgb, var(--bc-surface) 91%, transparent);
color: var(--bc-text);
}
.bc-section,
.bc-section-grid,
.bc-dark-band {
margin: clamp(34px, 5vw, 64px) 0;
}
.bc-section-main {
padding: clamp(34px, 5vw, 60px) 0 18px;
}
.bc-card-grid,
.bc-card-grid > p {
grid-template-columns: repeat(3, minmax(0, 1fr));
gap: 16px;
}
.bc-card,
.bc-stat,
.bc-country {
background: var(--bc-surface);
border: 1px solid var(--bc-line);
box-shadow: var(--bc-shadow-soft);
color: var(--bc-text);
}
.bc-card {
min-height: 148px;
padding: 22px;
border-radius: 18px;
}
.bc-card strong {
color: var(--bc-text);
font-size: clamp(18px, 1.8vw, 22px);
}
.bc-card span,
.bc-stat-label {
color: var(--bc-muted);
}
.bc-stat-grid {
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 16px;
max-width: 620px;
margin: 34px 0;
}
.bc-stat {
min-height: 132px;
padding: 20px;
border-radius: 18px;
}
.bc-stat-value {
color: var(--bc-text);
font-size: clamp(44px, 5vw, 68px);
gap: 10px;
}
.bc-stat-value::before {
width: 32px;
height: 32px;
flex: 0 0 32px;
background-color: var(--bc-accent);
}
.bc-country-grid {
grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
gap: 14px;
}
.bc-country {
min-height: 76px;
padding: 0 18px;
border-radius: 18px;
}
.bc-country::after {
background-color: var(--bc-soft);
}
.bc-dark-band {
grid-template-columns: minmax(0, 0.95fr) minmax(320px, 1.05fr);
padding: clamp(28px, 4vw, 48px);
border-radius: 24px;
background:
radial-gradient(circle at 85% 10%, rgba(228, 0, 70, 0.24), transparent 16rem),
radial-gradient(circle at 14% 90%, rgba(43, 111, 159, 0.28), transparent 18rem),
linear-gradient(135deg, #08111a, #142130);
}
.bc-route-item {
border-radius: 18px;
}
.wikitable {
color: var(--bc-text);
}
.wikitable th {
background: var(--bc-soft);
color: var(--bc-text);
}
.wikitable td {
background: var(--bc-surface);
border-color: var(--bc-line);
}
.skin-citizen .catlinks,
.skin-citizen .page-info,
.skin-citizen .citizen-page-footer,
.skin-citizen .citizen-footer {
max-width: 1220px;
margin-right: auto;
margin-left: auto;
color: var(--bc-muted) !important;
-webkit-text-fill-color: currentColor !important;
}
.skin-citizen .catlinks {
margin-top: 44px;
padding: 18px 20px;
border: 1px solid var(--bc-line);
border-radius: 16px;
background: var(--bc-surface);
box-shadow: var(--bc-shadow-soft);
}
.skin-citizen .mw-parser-output > p:empty,
.skin-citizen .mw-parser-output > div:empty {
display: none;
}
.skin-citizen .oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background: var(--bc-text) !important;
border-color: var(--bc-text) !important;
color: var(--bc-page) !important;
border-radius: 8px !important;
box-shadow: none !important;
}
@media (prefers-color-scheme: dark) {
html.skin-theme-clientpref-os {
color-scheme: dark;
--bc-page: #0d131a;
--bc-page-2: #121c26;
--bc-surface: #17212c;
--bc-surface-2: #1d2935;
--bc-text: #eef5fb;
--bc-muted: #b3c1cf;
--bc-soft: #243646;
--bc-line: #314252;
--bc-accent: #ff477b;
--bc-accent-dark: #f0165e;
--bc-link: #8cc8ff;
--bc-link-hover: #b9dcff;
--bc-focus: #79bee9;
--bc-shadow: 0 22px 58px rgba(0, 0, 0, 0.30);
--bc-shadow-soft: 0 10px 30px rgba(0, 0, 0, 0.24);
}
}
@media (max-width: 1080px) {
.bc-hero,
.bc-section-grid,
.bc-dark-band {
grid-template-columns: 1fr;
}
.bc-card-grid,
.bc-card-grid > p,
.bc-section-grid .bc-card-grid,
.bc-section-grid .bc-card-grid > p {
grid-template-columns: repeat(2, minmax(0, 1fr));
}
}
@media (max-width: 720px) {
.skin-citizen .mw-body,
.skin-citizen .citizen-body,
.skin-citizen #bodyContent,
.skin-citizen .mw-body-content,
.skin-citizen .mw-parser-output {
max-width: 100% !important;
overflow-x: clip !important;
}
.bc-shell {
padding: 0 16px 56px;
}
.bc-stage {
margin-bottom: 36px;
}
.bc-topbar {
align-items: flex-start;
padding-top: 14px;
}
.bc-actions {
display: flex;
width: 100%;
overflow-x: auto;
padding: 8px;
}
.bc-topbar {
flex-direction: column;
gap: 14px;
}
.bc-hero {
min-height: 0;
padding: 12px 0 20px;
}
.bc-hero::before {
inset: -10px -10px 4%;
border-radius: 22px;
}
#bc-particles {
inset: -8px -10px 8%;
}
.bc-hero-title {
font-size: clamp(34px, 12vw, 48px);
line-height: 1.02;
}
.bc-lead {
font-size: 17px;
}
.bc-search {
grid-template-columns: 44px minmax(0, 1fr);
gap: 12px;
padding: 12px;
border-radius: 18px;
}
.bc-bot {
width: 44px;
height: 44px;
border-radius: 12px;
font-size: 22px;
}
.bc-arrow {
display: none;
}
.bc-card-grid,
.bc-card-grid > p,
.bc-section-grid .bc-card-grid,
.bc-section-grid .bc-card-grid > p,
.bc-stat-grid,
.bc-route-grid {
grid-template-columns: 1fr;
}
.bc-card,
.bc-stat,
.bc-country {
border-radius: 16px;
}
.bc-photo,
.bc-section-photo {
border-radius: 18px;
}
.bc-photo-caption {
position: static;
border-radius: 0;
box-shadow: none;
}
.bc-dark-band {
padding: 26px 18px;
}
.bc-dark-title {
font-size: clamp(30px, 9vw, 38px);
}
.bc-dark-text {
font-size: 16px;
}
}
@media (max-width: 420px) {
.bc-shell {
padding-right: 12px;
padding-left: 12px;
}
.bc-brand {
font-size: 18px;
}
.bc-mark {
width: 38px;
height: 38px;
}
.bc-pill,
.bc-primary {
min-height: 38px;
padding: 0 14px;
font-size: 14px;
}
.bc-country-grid {
grid-template-columns: 1fr;
}
}
/* Repair pass: content-width grids, readable dark footer, working hero controls */
.bc-hero::before {
background: transparent !important;
border-color: transparent !important;
box-shadow: none !important;
}
#bc-particles {
inset: -22px !important;
opacity: 0.55 !important;
mask-image: radial-gradient(ellipse at center, #000 0%, #000 48%, transparent 82%);
-webkit-mask-image: radial-gradient(ellipse at center, #000 0%, #000 48%, transparent 82%);
transition: opacity 240ms ease;
}
.bc-card-grid,
.bc-card-grid > p,
.bc-section-grid .bc-card-grid,
.bc-section-grid .bc-card-grid > p {
display: grid !important;
grid-template-columns: repeat(auto-fit, minmax(min(260px, 100%), 1fr)) !important;
gap: 18px !important;
align-items: stretch;
}
.bc-card {
min-height: 150px !important;
padding: 24px !important;
border-radius: 18px !important;
overflow-wrap: normal !important;
word-break: normal !important;
hyphens: none !important;
}
.bc-card strong,
.bc-card span,
.bc-stat-label,
.bc-country {
overflow-wrap: normal !important;
word-break: normal !important;
hyphens: none !important;
}
.bc-card strong {
font-size: clamp(20px, 1.7vw, 24px) !important;
line-height: 1.18 !important;
}
.bc-card span {
display: block;
font-size: clamp(15px, 1.1vw, 17px);
line-height: 1.48;
}
.bc-search {
background: color-mix(in srgb, var(--bc-soft) 82%, transparent) !important;
border-color: color-mix(in srgb, var(--bc-line) 82%, transparent) !important;
}
.bc-search-label {
color: var(--bc-text) !important;
}
.bc-search-input {
font-weight: 650;
letter-spacing: 0;
}
.bc-search-input::placeholder {
color: color-mix(in srgb, var(--bc-muted) 82%, transparent);
opacity: 1;
}
.bc-arrow {
border: 0;
cursor: pointer;
transition: transform 160ms ease, background-color 160ms ease, box-shadow 160ms ease;
}
.bc-arrow:hover,
.bc-arrow:focus-visible {
transform: translateY(-1px);
background: var(--bc-accent);
box-shadow: 0 12px 26px color-mix(in srgb, var(--bc-accent) 28%, transparent);
outline: 0;
}
body.skin-citizen .catlinks,
body.skin-citizen .catlinks *,
body.skin-citizen .page-info,
body.skin-citizen .page-info *,
body.skin-citizen .citizen-page-footer,
body.skin-citizen .citizen-page-footer *,
body.skin-citizen #footer-info-lastmod,
body.skin-citizen #footer-info-lastmod * {
color: var(--bc-muted) !important;
-webkit-text-fill-color: var(--bc-muted) !important;
opacity: 1 !important;
}
body.skin-citizen .catlinks a,
body.skin-citizen .page-info a,
body.skin-citizen .citizen-page-footer a,
body.skin-citizen #footer-info-lastmod a {
color: var(--bc-link) !important;
-webkit-text-fill-color: var(--bc-link) !important;
}
body.skin-citizen .catlinks {
width: fit-content;
max-width: min(100%, 1220px);
}
body.skin-citizen .oo-ui-buttonElement-framed.oo-ui-widget-enabled > .oo-ui-buttonElement-button {
background: transparent !important;
border-color: var(--bc-link) !important;
color: var(--bc-link) !important;
-webkit-text-fill-color: var(--bc-link) !important;
}
@media (max-width: 860px) {
.bc-card-grid,
.bc-card-grid > p,
.bc-section-grid .bc-card-grid,
.bc-section-grid .bc-card-grid > p {
grid-template-columns: 1fr !important;
}
.bc-card {
min-height: 0 !important;
}
}
.bc-card-grid,
.bc-section-grid .bc-card-grid {
display: grid !important;
grid-template-columns: repeat(auto-fit, minmax(min(280px, 100%), 1fr)) !important;
gap: 18px !important;
}
.bc-card-grid > p,
.bc-section-grid .bc-card-grid > p {
display: contents !important;
}
.bc-card-grid > a,
.bc-card-grid > p > a {
min-width: 0 !important;
}
@media (max-width: 900px) {
.bc-card-grid,
.bc-section-grid .bc-card-grid {
grid-template-columns: repeat(auto-fit, minmax(min(220px, 100%), 1fr)) !important;
}
}
@media (max-width: 640px) {
.bc-card-grid,
.bc-section-grid .bc-card-grid {
grid-template-columns: 1fr !important;
}
}