MediaWiki:Citizen.css: различия между версиями
Страница интерфейса MediaWiki
Дополнительные действия
Admin (обсуждение | вклад) Нет описания правки |
Admin (обсуждение | вклад) Нет описания правки |
||
| Строка 17: | Строка 17: | ||
.ep-note, | .ep-note, | ||
.ep-card__links, | .ep-card__links, | ||
.ep-card__links a { | .ep-card__links a { | ||
font-family: 'Inter', system-ui, sans-serif; | font-family: 'Inter', system-ui, sans-serif; | ||
| Строка 233: | Строка 232: | ||
} | } | ||
/* ---------- | /* ---------- КРИТИЧЕСКИЙ FIX ДЛЯ БЛОКА ССЫЛОК ---------- */ | ||
/* Убираем | /* Убираем ВСЕ обёртки и их фон внутри links-блока */ | ||
.ep-card__links, | .ep-card__links, | ||
.ep- | .ep-card__links p, | ||
.ep-card__links div, | |||
.ep-card__links ul, | |||
.ep-card__links ol, | |||
.ep-card__links li, | |||
.ep-card__links span { | |||
background: transparent !important; | background: transparent !important; | ||
border: 0 !important; | border: 0 !important; | ||
box-shadow: none !important; | box-shadow: none !important; | ||
} | |||
/* Сносим лишние отступы/маркеры */ | |||
.ep-card__links p, | |||
.ep-card__links div, | |||
.ep-card__links ul, | |||
.ep-card__links ol, | |||
.ep-card__links li { | |||
margin: 0 !important; | |||
padding: 0 !important; | padding: 0 !important; | ||
list-style: none !important; | |||
} | } | ||
/* ---------- | /* Превращаем внутренние обёртки в "прозрачные" */ | ||
.ep-card__links > p, | |||
.ep-card__links > div, | |||
.ep-card__links > ul, | |||
.ep-card__links > ol, | |||
.ep-card__links > li, | |||
.ep-card__links p, | |||
.ep-card__links div, | |||
.ep-card__links ul, | |||
.ep-card__links ol, | |||
.ep-card__links li { | |||
display: contents; | |||
} | |||
/* Сам контейнер ссылок — без цветной подложки, ровной сеткой */ | |||
.ep-card__links { | .ep-card__links { | ||
display: | display: grid !important; | ||
grid-template-columns: repeat(auto-fit, minmax(150px, max-content)); | |||
gap: 12px | gap: 12px 14px; | ||
justify-content: start; | |||
align- | align-items: start; | ||
align-content: start; | |||
width: 100%; | width: 100%; | ||
margin-top: | margin-top: 18px; | ||
padding: 0 !important; | |||
position: relative; | position: relative; | ||
z-index: 1; | z-index: 1; | ||
} | } | ||
.ep-card__links | /* Ссылки делаем самостоятельными pill-кнопками */ | ||
display: inline-flex; | .ep-card__links a { | ||
display: inline-flex !important; | |||
align-items: center; | align-items: center; | ||
justify-content: center; | justify-content: center; | ||
| Строка 269: | Строка 295: | ||
border-radius: 999px; | border-radius: 999px; | ||
background: | background: | ||
linear-gradient(180deg, rgba( | linear-gradient(180deg, rgba(249, 242, 228, 0.98), rgba(235, 221, 190, 0.95)) !important; | ||
border: 1px solid rgba( | border: 1px solid rgba(145, 108, 52, 0.18) !important; | ||
color: # | color: #6a4b24 !important; | ||
text-decoration: none !important; | |||
font-weight: 600; | |||
font-size: 15px; | font-size: 15px; | ||
line-height: 1.2; | line-height: 1.2; | ||
white-space: nowrap; | white-space: nowrap; | ||
box-shadow: | box-shadow: | ||
inset 0 1px 0 rgba(255,255,255,0. | inset 0 1px 0 rgba(255,255,255,0.65), | ||
0 3px 8px rgba(0,0,0,0. | 0 3px 8px rgba(0,0,0,0.05) !important; | ||
} | } | ||
.ep-card__links | .ep-card__links a:hover { | ||
color: #2a2117 !important; | |||
color: # | transform: translateY(-1px); | ||
} | } | ||
.ep-card__links span | /* Если в разметке ссылка обёрнута в span — span не должен ломать кнопку */ | ||
.ep-card__links span { | |||
display: contents; | |||
} | } | ||
| Строка 405: | Строка 430: | ||
.ep-panel h2 { | .ep-panel h2 { | ||
font-size: 34px; | font-size: 34px; | ||
} | |||
.ep-card__links { | |||
grid-template-columns: repeat(auto-fit, minmax(145px, max-content)); | |||
gap: 11px 12px; | |||
} | } | ||
} | } | ||
| Строка 476: | Строка 506: | ||
.ep-card__links { | .ep-card__links { | ||
grid-template-columns: repeat(2, minmax(0, max-content)); | |||
gap: 10px 10px; | |||
} | } | ||
.ep-card__links | .ep-card__links a { | ||
min-height: 38px; | min-height: 38px; | ||
padding: 8px 14px; | padding: 8px 14px; | ||
font-size: 14px; | |||
white-space: normal; | white-space: normal; | ||
text-align: center; | text-align: center; | ||
} | } | ||
| Строка 512: | Строка 538: | ||
.ep-card__links { | .ep-card__links { | ||
grid-template-columns: repeat(2, minmax(0, 1fr)); | |||
gap: 9px; | gap: 9px; | ||
} | } | ||
.ep-card__links | .ep-card__links a { | ||
width: 100%; | |||
} | } | ||
} | } | ||
Версия от 23:30, 9 марта 2026
/* Размещённый здесь CSS-код будет загружаться для пользователей, использующих тему оформления Citizen */
/* ===== Ethereal Portal Wiki / Citizen ===== */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Cormorant+Garamond:wght@500;600;700&display=swap');
/* ---------- Typography ---------- */
html, body,
.mw-body,
.citizen-body-container,
.vector-body,
body.skin-citizen,
.mw-parser-output,
.mw-parser-output p,
.mw-parser-output li,
.ep-subtitle,
.ep-card__text,
.ep-note,
.ep-card__links,
.ep-card__links a {
font-family: 'Inter', system-ui, sans-serif;
}
h1, h2, h3, h4,
.ep-title,
.ep-card__title,
.ep-panel h2,
.ep-kicker {
font-family: 'Cormorant Garamond', serif !important;
font-style: normal;
}
/* ---------- Background ---------- */
html,
body {
background: url("/resources/assets/ep-bg.jpg") center top / cover no-repeat fixed !important;
}
body::before {
content: "";
position: fixed;
inset: 0;
z-index: 0;
pointer-events: none;
backdrop-filter: blur(3px);
-webkit-backdrop-filter: blur(3px);
background: rgba(255, 255, 255, 0.08);
}
/* ---------- Base layout cleanup ---------- */
.mw-page-container,
.mw-body,
#content,
.citizen-body-container,
.citizen-page-header,
.citizen-featured-actions,
.main-page-wrapper {
background: transparent !important;
box-shadow: none !important;
border: 0 !important;
backdrop-filter: none !important;
position: relative;
z-index: 1;
}
/* скрываем стандартное содержание справа только на главной */
.page-Main_Page .mw-portlet#p-toc,
.page-Заглавная_страница .mw-portlet#p-toc {
display: none !important;
}
/* ---------- Hero ---------- */
.ep-hero {
padding: 30px 20px 22px;
text-align: center;
position: relative;
z-index: 2;
}
.ep-kicker {
display: inline-block;
padding: 8px 16px;
border-radius: 999px;
background: rgba(246, 235, 214, 0.90);
border: 1px solid rgba(120, 85, 35, 0.18);
color: #866238;
font-size: 14px;
font-weight: 600;
line-height: 1.1;
letter-spacing: 0.10em;
text-transform: uppercase;
margin-bottom: 18px;
box-shadow: 0 8px 18px rgba(0, 0, 0, 0.06);
}
.ep-hero-logo {
width: min(780px, 100%);
aspect-ratio: 780 / 180;
margin: 0 auto 20px;
background: url("/resources/assets/ep-hero.png") center center / contain no-repeat;
}
.ep-title {
margin: 0 0 16px;
font-size: 66px;
line-height: 0.96;
font-weight: 700;
color: #2a2117;
text-shadow: 0 2px 10px rgba(255, 255, 255, 0.18);
}
.ep-subtitle {
max-width: 940px;
margin: 0 auto;
padding: 18px 22px;
font-size: 20px;
line-height: 1.65;
color: rgba(42, 33, 23, 0.84);
background: rgba(255, 249, 239, 0.84);
border: 1px solid rgba(120, 85, 35, 0.14);
border-radius: 18px;
box-shadow: 0 10px 28px rgba(0, 0, 0, 0.08);
}
/* если MediaWiki превратила текст в pre / code / parser-output box */
.ep-subtitle pre,
.ep-card__text pre,
.ep-panel pre,
.ep-subtitle .mw-code,
.ep-card__text .mw-code,
.ep-panel .mw-code {
margin: 0 !important;
padding: 0 !important;
background: transparent !important;
border: 0 !important;
box-shadow: none !important;
overflow: visible !important;
white-space: normal !important;
font: inherit !important;
color: inherit !important;
}
/* ---------- Main grid ---------- */
.ep-grid {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 24px;
margin: 30px 0 18px;
position: relative;
z-index: 2;
}
/* ---------- Cards ---------- */
.ep-card {
position: relative;
padding: 26px 24px 24px;
border-radius: 24px;
background:
linear-gradient(180deg, rgba(255, 253, 248, 0.95), rgba(244, 229, 199, 0.89));
border: 1px solid rgba(132, 95, 42, 0.18);
box-shadow:
0 14px 34px rgba(0, 0, 0, 0.10),
inset 0 1px 0 rgba(255, 255, 255, 0.42);
overflow: hidden;
}
.ep-card::before {
content: "";
position: absolute;
inset: 0;
border-radius: 24px;
pointer-events: none;
background:
radial-gradient(circle at top left, rgba(255,255,255,0.28), transparent 28%),
radial-gradient(circle at bottom right, rgba(188,141,74,0.10), transparent 30%);
}
.ep-card::after {
content: "";
position: absolute;
inset: 10px;
border-radius: 18px;
border: 1px solid rgba(132, 95, 42, 0.08);
pointer-events: none;
}
.ep-card:hover {
box-shadow:
0 18px 40px rgba(0, 0, 0, 0.14),
inset 0 1px 0 rgba(255, 255, 255, 0.42);
}
.ep-card__icon {
font-size: 30px;
line-height: 1;
margin-bottom: 14px;
position: relative;
z-index: 1;
}
.ep-card__title {
margin: 0 0 14px;
font-size: 42px;
line-height: 1.02;
font-weight: 700;
color: #2a2117;
letter-spacing: 0.01em;
position: relative;
z-index: 1;
}
.ep-card__text {
margin: 0 0 18px;
font-size: 18px;
color: rgba(42, 33, 23, 0.80);
line-height: 1.7;
position: relative;
z-index: 1;
overflow: visible !important;
white-space: normal !important;
}
.ep-card__text p {
margin: 0 !important;
}
.ep-card__text,
.ep-subtitle,
.ep-note,
.ep-panel,
.ep-card__links {
overflow: visible !important;
}
/* ---------- КРИТИЧЕСКИЙ FIX ДЛЯ БЛОКА ССЫЛОК ---------- */
/* Убираем ВСЕ обёртки и их фон внутри links-блока */
.ep-card__links,
.ep-card__links p,
.ep-card__links div,
.ep-card__links ul,
.ep-card__links ol,
.ep-card__links li,
.ep-card__links span {
background: transparent !important;
border: 0 !important;
box-shadow: none !important;
}
/* Сносим лишние отступы/маркеры */
.ep-card__links p,
.ep-card__links div,
.ep-card__links ul,
.ep-card__links ol,
.ep-card__links li {
margin: 0 !important;
padding: 0 !important;
list-style: none !important;
}
/* Превращаем внутренние обёртки в "прозрачные" */
.ep-card__links > p,
.ep-card__links > div,
.ep-card__links > ul,
.ep-card__links > ol,
.ep-card__links > li,
.ep-card__links p,
.ep-card__links div,
.ep-card__links ul,
.ep-card__links ol,
.ep-card__links li {
display: contents;
}
/* Сам контейнер ссылок — без цветной подложки, ровной сеткой */
.ep-card__links {
display: grid !important;
grid-template-columns: repeat(auto-fit, minmax(150px, max-content));
gap: 12px 14px;
justify-content: start;
align-items: start;
align-content: start;
width: 100%;
margin-top: 18px;
padding: 0 !important;
position: relative;
z-index: 1;
}
/* Ссылки делаем самостоятельными pill-кнопками */
.ep-card__links a {
display: inline-flex !important;
align-items: center;
justify-content: center;
min-height: 42px;
padding: 9px 18px;
border-radius: 999px;
background:
linear-gradient(180deg, rgba(249, 242, 228, 0.98), rgba(235, 221, 190, 0.95)) !important;
border: 1px solid rgba(145, 108, 52, 0.18) !important;
color: #6a4b24 !important;
text-decoration: none !important;
font-weight: 600;
font-size: 15px;
line-height: 1.2;
white-space: nowrap;
box-shadow:
inset 0 1px 0 rgba(255,255,255,0.65),
0 3px 8px rgba(0,0,0,0.05) !important;
}
.ep-card__links a:hover {
color: #2a2117 !important;
transform: translateY(-1px);
}
/* Если в разметке ссылка обёрнута в span — span не должен ломать кнопку */
.ep-card__links span {
display: contents;
}
/* ---------- Lower section ---------- */
.ep-lower {
display: grid;
grid-template-columns: minmax(0, 1.25fr) minmax(280px, 0.75fr);
gap: 24px;
margin-top: 18px;
align-items: start;
position: relative;
z-index: 2;
}
.ep-panel {
padding: 24px 24px 22px;
border-radius: 22px;
background:
linear-gradient(180deg, rgba(255, 253, 248, 0.92), rgba(244, 229, 199, 0.84));
border: 1px solid rgba(132, 95, 42, 0.18);
box-shadow:
0 12px 28px rgba(0, 0, 0, 0.10),
inset 0 1px 0 rgba(255, 255, 255, 0.38);
}
.ep-panel h2 {
margin: 0 0 14px;
border: 0 !important;
color: #2a2117 !important;
font-size: 40px;
line-height: 1.05;
font-weight: 700;
letter-spacing: 0.01em;
}
.ep-note {
font-size: 17px;
color: rgba(42, 33, 23, 0.74);
line-height: 1.65;
}
.ep-list {
margin: 0;
padding-left: 20px;
}
.ep-list li {
margin: 8px 0;
}
/* ---------- kill unwanted scrollbars on main page ---------- */
.page-Main_Page .mw-parser-output,
.page-Заглавная_страница .mw-parser-output,
.page-Main_Page .mw-parser-output > div,
.page-Заглавная_страница .mw-parser-output > div {
overflow: visible !important;
}
.page-Main_Page pre,
.page-Заглавная_страница pre,
.page-Main_Page .mw-code,
.page-Заглавная_страница .mw-code {
overflow: visible !important;
white-space: normal !important;
word-break: break-word !important;
max-width: 100% !important;
}
/* ---------- Footer ---------- */
#footer,
.mw-footer {
background: rgba(236, 242, 255, 0.84) !important;
backdrop-filter: blur(6px);
-webkit-backdrop-filter: blur(6px);
border-top: 1px solid rgba(120, 85, 35, 0.10);
}
/* ---------- Responsive ---------- */
@media (max-width: 1200px) {
.ep-grid,
.ep-lower {
grid-template-columns: 1fr;
}
}
@media (max-width: 900px) {
.ep-hero-logo {
width: min(560px, 100%);
margin-bottom: 16px;
}
.ep-title {
font-size: 54px;
}
.ep-subtitle {
font-size: 18px;
padding: 16px 18px;
}
.ep-card,
.ep-panel {
padding: 22px 20px;
}
.ep-card__title {
font-size: 36px;
}
.ep-card__text {
font-size: 17px;
}
.ep-panel h2 {
font-size: 34px;
}
.ep-card__links {
grid-template-columns: repeat(auto-fit, minmax(145px, max-content));
gap: 11px 12px;
}
}
@media (max-width: 640px) {
.ep-hero {
padding: 20px 12px 14px;
}
.ep-hero-logo {
width: min(420px, 100%);
margin-bottom: 14px;
}
.ep-kicker {
font-size: 12px;
letter-spacing: 0.08em;
padding: 7px 14px;
}
.ep-title {
font-size: 42px;
line-height: 0.98;
}
.ep-subtitle {
font-size: 16px;
padding: 14px 16px;
}
.ep-grid {
gap: 18px;
margin-top: 24px;
}
.ep-card {
padding: 20px 18px 18px;
border-radius: 20px;
}
.ep-card::after {
inset: 8px;
border-radius: 14px;
}
.ep-card__icon {
font-size: 26px;
margin-bottom: 12px;
}
.ep-card__title {
font-size: 31px;
line-height: 1.05;
margin-bottom: 12px;
}
.ep-card__text {
font-size: 16px;
line-height: 1.65;
margin-bottom: 16px;
}
.ep-panel h2 {
font-size: 29px;
line-height: 1.08;
}
.ep-note {
font-size: 16px;
}
.ep-card__links {
grid-template-columns: repeat(2, minmax(0, max-content));
gap: 10px 10px;
}
.ep-card__links a {
min-height: 38px;
padding: 8px 14px;
font-size: 14px;
white-space: normal;
text-align: center;
}
}
@media (max-width: 480px) {
.ep-hero-logo {
width: min(360px, 100%);
margin-bottom: 12px;
}
.ep-title {
font-size: 36px;
}
.ep-card__title {
font-size: 28px;
}
.ep-panel h2 {
font-size: 27px;
}
.ep-card__links {
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 9px;
}
.ep-card__links a {
width: 100%;
}
}